Dialogic Dialogic Global Call IP IP Phone User Manual


 
398 Dialogic
®
Global Call IP Technology Guide — November 2007
Dialogic Corporation
gc_AcceptModifyCall( ) — accept proposed modification of call characteristics
request. In this case, the library sends a 488 Not Acceptable Here response to the remote party to
terminate the re-INVITE, and generates a GCEV_REJECT_MODIFY_CALL event to notify the
application.
Note: When accepting a codec change, the local endpoint’s properties are updated immediately when the
application calls this function; all outgoing packets use the new codec, and only incoming packets
that use the new codec will be accepted. This may produce a perceptible artifact (for example, a
click or a brief silence) until the remote endpoint receives the 200 OK response and changes its
codec.
Third Party Call Control (3PCC) Mode
An incoming re-INVITE request generally contains an SDP offer that includes one or more session
attributes that are different from those which were negotiated in the original INVITE dialog. A
third party call control application must extract the SDP from the metaevent associated with the
GCEV_REQ_MODIFY_CALL event as an IPSET_SDP/IPPARM_SDP_OFFER parameter (see
Section 5.2.2.2, “IPSET_SDP Parameter Set Identifier”, on page 345). The application must then
parse and analyze the SDP offer to determine whether it is acceptable.
If the SDP offer is acceptable, the third party call control application must construct an appropriate
SDP answer, then insert that answer into the GC_PARM_BLK referenced by parmblkp as an
IPSET_SDP/IPPARM_SDP_ANSWER parameter element.
Termination Events
GCEV_ ACCEPT_MODIFY_CALL
Successful termination event. Indicates that the 200OK response was successfully sent, and an
ACK reply has been received. In 1PCC mode, this event also indicates that the requested call
attribute change(s) has been performed locally.
GCEV_ACCEPT_MODIFY_CALL_FAIL
Unsuccessful termination event. Indicates that the signaling of the modification acceptance
response has failed. This could be caused by a failure in the message transport, a failure in the
attempt to change the call attribute, or the expiration of a response timer for the request. The
re-INVITE transaction is still in progress and the application may make another attempt to
respond via a new call to gc_AcceptModifyCall( ) or gc_RejectModifyCall( ). In 1PCC
mode, no modifications to the existing dialog or media session are performed and the current
state remains as it was prior to the incoming modification request.
GCEV_REJECT_MODIFY_CALL
Unsuccessful termination event. Indicates that the capabilities the application intended to
signal in the SDP answer do not match any of the capabilities that were received in the SDP
offer. This event implies that a 488 Not Acceptable Here final response was sent to the remote
UA and that an ACK has been received, meaning that the re-INVITE dialog is terminated. In
1PCC mode, no modifications to the existing dialog or media session are performed and the
current state remains as it was prior to the incoming modification request.
Cautions
This function is only supported when the value IP_T38_MANUAL_MODIFY_MODE has
been set for the IPSET_CONFIG / IPPARM_OPERATING_MODE parameter using the