Intel 05-2409-003 Manual Do Utilizador

Página de 154
94
Global Call API for HMP on Windows Programming Guide — August 2006
Call Control
The Global Call API functions provided for FTE are: 
gc_Extension( ) 
provides a generic interface extensible for technology-specific features 
gc_GetUserInfo( ) (for E1, T1 and ISDN technologies only) 
retrieves technology-specific user information for the specified line device 
gc_SetUserInfo( ) 
permits technology-specific user information to be defined for the specified line device or call 
Note:
The gc_SetUserInfo( ) function is not supported for a board device. 
7.4.2
Technology-Specific Feature Access
The gc_Extension( ) function provides a single common interface to access various technology-
specific features supported by underlying call control libraries. 
This Global Call function utilizes an extension function identifier (ext_id) to specify the feature. 
The associated technology’s Global Call Technology Guide for each call control library lists all the 
supported extension function identifiers (ext_id values) and the associated features that are 
accessible via the gc_Extension( ) function (if any). 
By specifying the associated parameter identifiers (also described in the associated technology’s 
Global Call Technology Guide), and either the target line device or a specific call, those features 
unique to the subject technology may be utilized entirely using the Global Call API. Without FTE 
support, a Global Call application requiring this feature support would also have to be written to 
the specific call control API in addition to the Global Call API. 
For example, in an ISDN platform the application may use the gc_Extension( ) function to set D or 
B channel states. As the concept of B and D channels is ISDN specific and inherently foreign to 
other protocols, without FTE support, the application would have to link directly with the ISDN 
call control library then call the required ISDN library functions cc_SetBChanState( ) or 
cc_SetDChanState( )
The gc_Extension( ) function may be supported in either asynchronous mode, synchronous mode 
or both depending on the call control library. 
If the gc_Extension( ) function is supported and called in synchronous mode, the relevant 
information parameters returned in the GC_PARM_BLK buffer must be processed or copied prior 
to the next Global Call function call. The reason for this is that the GC_PARM_BLK buffer will be 
deallocated within Global Call in a subsequent function call. 
If the gc_Extension( ) function is supported and called in asynchronous mode, relevant 
information may be returned via the call control library via GCEV_EXTENSIONCMPLT 
termination event and its referenced extension block structure, EXTENSIONEVTBLK. The 
EXTENSIONEVTBLK structure contains technology-specific information and is referenced via 
the extevtdatap pointer in the METAEVENT structure associated with the 
GCEV_EXTENSIONCMPLT event. See the Global Call API Library Reference for more 
information about these structures.