Dialogic Dialogic Global Call IP IP Phone User Manual


 
311
Dialogic Corporation
4.25.1 Enabling Call Transfer
The call transfer supplementary service is a feature that must be enabled at the time the gc_Start( )
function is called. Both H.450.2 and SIP call transfer services are enabled at the same time. If the
application tries to use one of the six IP call transfer functions when call transfer was not enabled,
the function call fails with an IPERR_SUP_SERV_DISABLED indication.
The mandatory INIT_IP_VIRTBOARD( ) function populates the IP_VIRTBOARD structure
with default values. The default value of the sup_serv_mask field in the initialized structure
disables the call transfer service for both H.323 and SIP protocols. The default sup_serv_mask field
value must therefore be overridden with the value IP_SUP_SERV_CALL_XFER for each IPT
board device on which call transfer is to be enabled. The following code snippet provides an
example for two virtual boards:
.
.
INIT_IPCCLIB_START_DATA(&ipcclibstart, 2, ip_virtboard);
INIT_IP_VIRTBOARD(&ip_virtboard[0]);
INIT_IP_VIRTBOARD(&ip_virtboard[1]);
ip_virtboard[0].sup_serv_mask = IP_SUP_SERV_CALL_XFER; /* override supp services default */
ip_virtboard[1].sup_serv_mask = IP_SUP_SERV_CALL_XFER; /* override supp services default */
.
.
Note: Features that are enabled or configured via the IP_VIRTBOARD structure cannot be disabled or
reconfigured once the library has been started. All items set in this data structure take effect when
the gc_Start( ) function is called and remain in effect until gc_Stop( ) is called when the
application exits.
4.25.2 Dialogic
®
Global Call API Line Devices for Call Transfer
The Dialogic
®
Global Call API IP architecture is designed so that each RTP transcoder at all times
is streaming (xmit and rcv) with only one other endpoint. In order to support call transfers, two
Global Call line devices are required at some or all of the endpoints. And because all involved call
handles must be on the same stack instance, the following limitations are imposed on call transfers:
When performing an attended call transfer at party A, both the consultation line device and the
transferring line device must be on the same virtual board.
When performing a call transfer (either attended or unattended) at party B, both the
transferring line device and the transferred line device must be on the same virtual board.
When performing an attended call transfer at party C, both the consultation line device and the
transferred-to line device must be on the same virtual board.
To support blind call transfer, two Dialogic
®
Global Call API line devices are required at the
transferred (party B) endpoint, one for the primary call with the transferring (party A) endpoint and
a second to initiate the transferred call to the transferred-to (party C) endpoint. See Figure 57.