Figure 6.7 Mid-call signaling example using INFO
There are two ways of implementing third-party control. The first uses a
controller that receives the SIPINVITErequest, answers it, then proxies the
INVITEto a third party. The controller then stays in the signaling path, swap-
ping SDP from one leg to another, and transparently controlling the call. The
second way uses the REFERmethod [15] to initiate the third-party control.
In the example of Figure 6.8, A and B establish a session. A then refers B to
initiate a session with C using a REFERrequest. A then terminates the session
with B, while B establishes a new session with C.
The REFERrequest in Message 6 has the following form:
REFER sip:[email protected] SIP/2.0
Via: SIP/2.0/TCP pc.there.com:5060;branch=z9hG4bK765d
To: User B <sip:[email protected]>
From: User A <sip:[email protected]>
Call-ID: [email protected]
CSeq: 2 REFER
Refer-To: <sip:[email protected]>
Referred-By: <sip:[email protected]>
Content-Length: 0
PSTN User
1 IAM
Gateway PSTN User
7 ACK
2 INVITE
3 IAM
4 ANM
5 200 OK
6 ANM
PCM Voice RTP Media PCM Voice
9 INFO
8 USR
10 USR
11 200 OK
Gateway
SIP Overview 119