Dialogic Dialogic Global Call IP IP Phone User Manual


 
80 Dialogic
®
Global Call IP Technology Guide — November 2007
Dialogic Corporation
IP Call Scenarios
3.3.3.2 Successful Transfer with Notification of Ringing
Figure 26 illustrates a scenario where party B notifies party A that the transfer has completed as
soon as party C responds to the INVITE with a 100 Trying or 180 Ringing. The Call Control
Library at Party A disconnects the primary call with party B after the notification and the
application then must tear down the call using gc_DropCall( ) and gc_ReleaseCallEx( ).
Figure 26. Successful SIP Unattended Call Transfer, Party A Notified with Ringing
A
(Transferring,
Transferor)
App
A
(Transferring,
Transferor)
IP CCLib
B
(Transferred,
Transferee)
App
B
(Transferred,
Transferee)
IP CCLib
C
(Transferred To,
Transfer Target)
App
C
(Transferred To,
Transfer Target)
IP CCLib
GCEV_OFFERED(CRNt)
IPEC_IncomingTransfer
(optional)
gc_DropCall(CRNp)
GCEV_
DROPCALL(CRNp)
gc_ReleaseCallEx
(CRNp)
GCEV_
RELEASECALL
(CRNp)
GCEV_ALERTING
(CRNt) (optional)
GCEV_PROCEEDING
(CRNt) (optional)
GCEV_PROCEEDING
(CRNt) (optional)
GCEV_REQ_
XFER(CRNp)
Pre condition: Primary call between A and B is connected (not shown).
GCEV_DIALING
(CRNt)
GCEV_
DISCONNECTED
(CRNp)
GCEV_
DISCONNECTED
(CRNp)
GCEV_
DROPCALL(CRNp)
gc_ReleaseCallEx
(CRNp)
GCEV_
RELEASECALL
(CRNp)
KEY:
CRNp - primary call
CRNt - transferred call
202 Accepted
GCEV_ACCEPT_
XFER(CRNp)
GCEV_
INVOKE_XFER_
ACCEPTED(CRNp)
(optional)
GCEV_INVOKE_
XFER(CRNp)
BYE
BYE
200 OK
200 OK
NOTIFY(180 Ringing)
Subscription-State = active
400 Bad Request
GCEV_XFER_CMPLT
(CRNp)
100 Trying from Party C
is not Notified to Party A
REFER
gc_MakeCall
(CRNt, CRNp)
gc_InvokeXfer
(CRNp)
INVITE
gc_CallAck(CRNt) (optional)
100 Trying (optional)
GCEV_
ANSWERED(CRNt)
gc_AnswerCall(CRNt)
ACK
200 OK
gc_DropCall(CRNp)
Transferred call between B and C is connected.
Primary call between A and B dropped and released
Post condition:
NOTIFY(100 Trying)
Subscription-State=active; expires=300
200 OK
180 Ringing (optional)
NOTIFY(200 OK)
Subscription-State = terminated
200 OK
GCEV_CONNECTED
(CRNt)
gc_AcceptXfer(CRNp)