Dialogic Dialogic Global Call IP IP Phone User Manual


 
118 Dialogic
®
Global Call IP Technology Guide — November 2007
Dialogic Corporation
IP-Specific Operations
gc_MakeCall( ) sets the specified H.245 mode for the new call only.
When the application specifies that the H.245 channel is optional, channel establishment proceeds
normally with the exchange of MSD and TCS messages and acknowledgements after the library
has generated a GCEV_CONNECTED event to the application (assuming that the remote endpoint
accepts fast start setup). The application can optionally receive notification of the status of H.245
channel establishment by means of a maskable Global Call extension event. This notification is
recommended if the application will require the H.245 channel for any purpose (for example, T.38
fax mode or UII Alphanumeric messages) because an attempt to use the H.245 channel when the
channel was not successfully established produces a GCEV_TASKFAIL.
In order to be notified of the completion of H.245 channel establishment (successful or failed), the
application must register to receive the corresponding Global Call extension event type. The
application must call the gc_SetConfigData( ) function, passing it a pointer to a GC_PARM_BLK
that contains the following parameter:
IPSET_EXTENSIONEVT_MSK
GCACT_ADDMSK (or GCACT_SETMSK)
EXTENSIONEVT_SIGNALING_STATUS
When the application has registered for this event type and the H.245 channel establishment fails,
the Dialogic
®
Global Call API library generates an unsolicited GCEV_EXTENSION event with
the extension ID IPEXTID_IPPROTOCOL_STATE. The parameter block associated with this
event will contain the following parameter element:
IPSET_IPPROTOCOL_STATE
IPPARM_EST_CONTROL_FAILED
The application may also call gc_ResultInfo( ) in this case to retrieve additional information about
the cause of the channel establishment failure. The error cause codes that may be returned include:
IPEC_H245EstChannelFailure_TransportError
IPEC_H245EstChannelFailure_RemoreReject
IPEC_H245EstChannelFailure_TCSError
IPEC_H245EstChannelFailure_MSDError
If the application is using fast start setup mode with optional H.245 channel and the channel
establishment fails, and the application then attempts an operation that requires the H.245 channel
(for example, sending UII Alphanumeric characters), the library generates a GCEV_TASKFAIL
event. The application may call gc_ResultInfo( ) to retrieve one of the error cause codes listed
above.
4.2.4 SIP Call Setup Modes
Unlike H.323, the SIP protocol does not define a “fast start” connection mode. In SIP, the exchange
of media capabilities is accomplished via an offer/answer exchange using Session Description
Protocol (SDP). This SPD offer/answer exchange can be initiated by either the local or the remote
party, and the SDP information can be embedded in any of the request or response messages that
are exchanged when establishing a SIP dialog. Normal practice is to include the SDP offer in the
INVITE message that initiates a SIP dialog, which corresponds to a “fast start” connection mode.