Dialogic IP Phone 05-2239-009 User Manual
82
Dialogic
®
Global Call IP Technology Guide — November 2007
Dialogic Corporation
IP Call Scenarios
Figure 28. Successful SIP Unattended Call Transfer, Party A Clears Primary Call prior to
Transfer Completion
Figure 29 illustrates a scenario in which party B drops the primary call with party A after accepting
the transfer request and issuing INVITE to party C, but before receiving any response from party C.
In this scenario, party B does notify party A, but this notification only signifies that party B has
acted on the transfer request and not that the transfer has actually completed.
the transfer request and issuing INVITE to party C, but before receiving any response from party C.
In this scenario, party B does notify party A, but this notification only signifies that party B has
acted on the transfer request and not that the transfer has actually completed.
A
(Transferring,
Transferor)
App
A
(Transferring,
Transferor)
IP CCLib
B
(Transferred,
Transferee)
App
B
(Transferred,
Transferee)
IP CCLib
C
(Transferred To,
Transfer Target)
Transfer Target)
App
C
(Transferred To,
Transfer Target)
Transfer Target)
IP CCLib
Primary call is dropped and released.
Transferred call is connected.
Transferred call is connected.
gc_DropCall(CRNp)
GCEV_DROPCALL
(CRNp)
gc_ReleaseCallEx
(CRNp)
GCEV_
RELEASECALL
(CRNp)
GCEV_REQ_
XFER(CRNp)
XFER(CRNp)
Precondition: Primary call between A and B is connected (not shown).
GCEV_DIALING
(CRNt)
GCEV_DROPCALL
(CRNp)
gc_ReleaseCallEx
(CRNp)
GCEV_RELEASECALL
(CRNp)
202 Accepted
GCEV_ACCEPT_
XFER(CRNp)
GCEV_
INVOKE_XFER_
ACCEPTED(CRNp)
NOTIFY(100 Trying)
Subscription-State=active; expires=300
BYE
200 OK
200 OK
GCEV_XFER_FAIL
(CRNp)
REFER
gc_InvokeXfer
(CRNp)
INVITE
GCEV_ANSWERED
(CRNt)
gc_AnswerCall(CRNt)
ACK
200 OK
gc_DropCall(CRNp)
GCEV_CONNECTED
(CRNt)
Post Condition:
GCEV_OFFERED
(CRNt)
Cause = IPEC_SIPReasonStatusBYE
gc_MakeCall(CRNt)
No primary CRN
available
available
GCEV_
DISCONNECTED
(CRNp)
Unlike the H450.2 CCLIB
implementation, Party A will not
receive invoke xfer termination
event if Party A drops primary call
early because there is no way
of knowing if invoke transfer
succeeds or fails.
gc_AcceptXfer(CRNp)