a=rtpmap:0 pcmu/8000/1 a=rtpmap:8 pcma/8000/1
(12) 事件12:SoftX3000给SIP PhoneA回200OK响应表示其发过来的INVITE请求已经被成功接受、处理,并且将SIP PhoneB的会话描述传送给SIP PhoneA。 SIP/2.0 200 OK
From:
Call-ID: call-973598097-16@191.169.150.101 Via: SIP/2.0/UDP191.169.150.101
Contact:
Content-Type: application/sdp v=0
o=HuaweiSoftX3000 1073741834 1073741834 INIP4 191.169.200.61 s=SipCall
c=IN IP4 191.169.150.100 t=0 0
m=audio 8766 RTP/AVP 0 8 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000
(13) 事件13:SIP PhoneA发ACK消息给SoftX3000,证实已经收到SoftX3000对于INVITE请求的最终响应。
ACK sip:1001@191.169.200.61:5061;transport=UDPSIP/2.0 Contact: sip:1000@191.169.150.101
From:
Accept-Language: en
User-Agent: Pingtel/1.2.7 (VxWorks) Via: SIP/2.0/UDP191.169.150.101 Content-Length: 0
(14) 事件14:SoftX3000发ACK消息给SIP PhoneB,证实已经收到SIP PhoneB对于INVITE请求的最终响应。
此时,主被叫双方都知道了对方的会话描述,启动通话。 ACK sip:1001@191.169.150.100SIP/2.0
From:
Call-ID:1746ac508a14feaaccb35e4a35ea1768@sx3000
Via: SIP/2.0/UDP191.169.200.61:5061;branch=z9hG4bK44cfc1f25 Max-Forwards: 70
Content-Length: 0
(15) 事件15:SIP PhoneA挂机,发BYE消息给SoftX3000,请求结束本次会话。 BYE sip:1001@191.169.200.61:5061;transport=UDPSIP/2.0 From: sip:1000@191.169.200.61;tag=1c12674 To: sip:1001@191.169.200.61;tag=e110e016 Call-Id: call-973598097-16@191.169.150.101 Cseq: 4 BYE
Accept-Language: en
Supported: sip-cc,sip-cc-01, timer User-Agent: Pingtel/1.2.7 (VxWorks) Via: SIP/2.0/UDP191.169.150.101 Content-Length: 0
(16) 事件16:SoftX3000给SIP PhoneA回487响应,表明请求终止。 SIP/2.0 487 Request Terminated
From:
Call-ID: call-973598097-16@191.169.150.101 Via: SIP/2.0/UDP191.169.150.101 Content-Length: 0
(17) 事件17:SoftX3000收到SIP PhoneA发过来的BYE消息,知道A已挂机,给SIP PhoneB发BYE请求,请求结束本次会话。 BYE sip:1001@191.169.150.100SIP/2.0
From:
Call-ID:1746ac508a14feaaccb35e4a35ea1768@sx3000
Via: SIP/2.0/UDP191.169.200.61:5061;branch=z9hG4bKf5dbf00dd Max-Forwards: 70 Content-Length: 0
(18) 事件18:SIP PhoneB挂机,给SoftX3000反馈200OK响应,表明已经成功结束会话。 SIP/2.0 200 OK
From:
Call-Id:1746ac508a14feaaccb35e4a35ea1768@sx3000 Cseq: 2 BYE
Via: SIP/2.0/UDP191.169.200.61:5061;branch=z9hG4bKf5dbf00dd Contact: sip:1001@191.169.150.100
Allow: INVITE, ACK, CANCEL, BYE, REFER,OPTIONS, NOTIFY User-Agent: Pingtel/1.0.0 (VxWorks) CONTENT-LENGTH: 0
3.3.3 成功的SIP中继呼叫流程
不同SoftX3000之间采用SIP协议进行互通,SIP中继的成功呼叫流程应用实例如图3-7所示。 在下面的实例中,我们基于以下约定:
l SoftX3000A的IP地址为191.169.1.112; l SoftX3000B的IP地址为191.169.1.110;
l SoftX3000A控制的SIP PhoneA的电话号码为66600003; l SoftX3000B控制的SIP PhoneB的电话号码为5550045; l SIP PhoneA为主叫、SIP PhoneB为被叫,被叫先挂机。 图3-7 SIP中继呼叫流程示例
(1) 事件1:SoftX3000A控制的SIP PhoneA摘机,拨打SoftX3000B控制的SIP PhoneB。SoftX3000A向SoftX3000B发INVITE消息,邀请SoftX3000B加入会话。SoftX3000A还通过INVITE消息的会话描述,将自身的IP地址:191.169.200.61,SIP PhoneA的IP地址:191.169.200.101、端口号:30014、支持的静荷类型、静荷类型对应的编码等信息传送给SoftX3000B。 INVITE sip:5550045@191.169.100.50SIP/2.0
From:
Call-ID:9e62b921769c9ae546ed4329a3c04182@sx3000
Via: SIP/2.0/UDP191.169.200.61:5061;branch=z9hG4bKff661c627 Contact:
Allow:INVITE,ACK,CANCEL,OPTIONS,BYE,REGISTER,PRACK,INFO,UPDATE,SUBSCRIBE,NOTIFY,MESSAGE,REFER
Content-Length: 184
Content-Type: application/sdp v=0
o=HuaweiSoftX3000 1073741831 1073741831 INIP4 191.169.200.61 s=SipCall
c=IN IP4 191.169.200.101 t=0 0
m=audio 30014 RTP/AVP 8 0 a=rtpmap:8 PCMA/8000 a=rtpmap:0 PCMU/8000
(2) 事件2:SoftX3000B给SoftX3000A回100Trying表示已经接收到请求消息,正在对其进行处理。
SIP/2.0 100 Trying
From:
Call-ID:9e62b921769c9ae546ed4329a3c04182@sx3000
Via: SIP/2.0/UDP191.169.200.61:5061;branch=z9hG4bKff661c627 Content-Length: 0
(3) 事件3:SoftX3000B给SoftX3000A回180Ringing响应通知SoftX3000A SIPPhoneB已振铃。
SIP/2.0 180 Ringing
From:
Call-ID:9e62b921769c9ae546ed4329a3c04182@sx3000
Via: SIP/2.0/UDP191.169.200.61:5061;branch=z9hG4bKff661c627 Contact:
(4) 事件4:SoftX3000B给SoftX3000A回200OK响应表示其发过来的INVITE请求已经被成功接受、处理。并且通过该消息将自身的IP地址:191.169.100.50,SIP PhoneB的IP地址:191.169.100.71、端口号:40000、支持的静荷类型、静荷类型对应的编码等信息传送给SoftX3000A。 SIP/2.0 200 OK
From:
Call-ID:9e62b921769c9ae546ed4329a3c04182@sx3000
Via: SIP/2.0/UDP191.169.200.61:5061;branch=z9hG4bKff661c627 Contact:
Content-Type: application/sdp v=0
o=HuaweiSoftX3000 1073741826 1073741826 INIP4 191.169.100.50 s=SipCall
c=IN IP4 191.169.100.71 t=0 0
m=audio 40000 RTP/AVP 0 a=rtpmap:0 PCMU/8000
(5) 事件5:SoftX3000A发ACK消息给SoftX3000B,证实已经收到SoftX3000B对于INVITE请求的最终响应。
ACK sip:5550045@191.169.100.50:5061;transport=udpSIP/2.0 From:
Call-ID: 9e62b921769c9ae546ed4329a3c04182@sx3000
Via: SIP/2.0/UDP191.169.200.61:5061;branch=z9hG4bK7d4f55f15 Max-Forwards: 70 Content-Length: 0
(6) 事件6:SIP PhoneB挂机,SoftX3000B发BYE请求消息给SoftX3000A,请求结束本次会话。
BYE sip:66600003@191.169.200.61:5061SIP/2.0 From: