24 Global Call API for HMP on Windows Programming Guide — August 2006
Product Description
group of resources using a single device identifier. Certain features, such as Feature Transparency
and Extension (FTE), Real Time Configuration Management (RTCM), and Global Call Service
Request (GCSR) operate on a basic entity called a Global Call target object. Target objects are
identified by a target type and a target ID.
The following topics provide more detailed information:
Line Device Identifier
Call Reference Number
Object Identifiers and Resource Sharing Across Processes
Target Objects
1.5.1 Line Device Identifier
A Line Device Identifier (LDID) is a unique logical number assigned to a specific resource (for
example, a time slot) or a group of resources within a process by the Global Call library. Minimally,
the LDID number will represent a network resource. For example, both a network resource and a
voice resource are needed to process an R2 MFC dialing function. Using Global Call, a single
LDID number is used by the application (or thread) to represent this combination of resources for
call control.
An LDID number is assigned to represent a physical device(s) or logical device(s) that will handle
a call, such as a network interface resource, when the gc_OpenEx() function is called. This
identification number assignment remains valid until the gc_Close( ) function is called to close the
line device.
When an event arrives, the application (or thread) can retrieve the LDID number associated with
the event by using the linedev field of the associated METAEVENT structure. The LDID is
retrieved using the gc_GetMetaEvent() or the gc_GetMetaE ventEx( ) function.
1.5.2 Call Reference Number
A Call Reference Number (CRN) is a means of identifying a call on a specific line device. A CRN
is created by the Global Call library when a call is requested by the application, thread or network.
With the CRN approach, the application (or thread) can access and control the call without any
reference to a specific physical port or line device. CRNs are assigned to both inbound and
outbound calls:
Inbound calls
The CRN is assigned via the gc_WaitCall( ) function. For more information on
gc_WaitCall( ), see the Global Call API Library Reference.
Outbound calls
The CRN is assigned via the gc_MakeCall( ) function. For more information on this function,
see the Global Call API Library Reference.
This CRN has a single LDID associated with it, for example, the line device on which the call was
made. However, a single line device may have multiple CRNs associated with it (that is, more than