2、INVITE消息
1)头字段填写说明
必选头域如下:
Call-id
Contact
CSeq
From
To
Max-Forwards
Via
Supported
Allow
常用可选头域:
Accept
Authorization
Content-length
Content-type
Record-Route
Route
Require
Proxy-Authorization
Proxy-require
P-asserted-identity
P-prefered-identity
Privacy
2)非鉴权INVITE消息实例
在这个实例中,笔者在本机(192.168.2.161)上使用BOL注册了17899998888号码,呼叫01062230001号码时发送INVITE消息给服务器(192.168.2.89)的软交换,发送INVITE消息参考如下:
1)头字段填写说明
必选头域如下:
Call-id
Contact
CSeq
From
To
Max-Forwards
Via
Supported
Allow
常用可选头域:
Accept
Authorization
Content-length
Content-type
Record-Route
Route
Require
Proxy-Authorization
Proxy-require
P-asserted-identity
P-prefered-identity
Privacy
2)非鉴权INVITE消息实例
在这个实例中,笔者在本机(192.168.2.161)上使用BOL注册了17899998888号码,呼叫01062230001号码时发送INVITE消息给服务器(192.168.2.89)的软交换,发送INVITE消息参考如下:
INVITE sip:
01062230001
@192
.
168.2
.
89
SIP
/
2.0
Via: SIP / 2.0 / UDP 192.168 . 2.161 : 9545
Max - Forwards: 70
From : "Administrator" < sip: 17899998888 @192 . 168.2 . 89 > ;tag = 2dc6e1000081463ba14f7db4e50b8643;epid = d6b5434cef
To : < sip: 01062230001 @192 . 168.2 . 89 >
Call - ID: 31e72e80d5b04f52aba6cb8be8f3c0c0 @192 . 168.2 . 161
CSeq: 1 INVITE
Contact: < sip: 192.168 . 2.161 : 9545 >
User - Agent: RTC / 1.2
Content - Type: application / sdp
Content - Length: 691
v = 0
o =- 0 0 IN IP4 192.168 . 2.161
s = session
c =IN IP4 192.168 . 2.161
b = CT: 1000
t = 0 0
m = audio 56284 RTP / AVP 97 111 112 6 0 8 4 5 3 101
k = base64:fGmazgf5GXZfJxZ27G9A7rxA4B7KX0pHrjYELKphPog
a = rtpmap: 97 red / 8000
a = rtpmap: 111 SIREN / 16000
a = fmtp: 111 bitrate = 16000
a = rtpmap: 112 G7221 / 16000
a = fmtp: 112 bitrate = 24000
a = rtpmap: 6 DVI4 / 16000
a = rtpmap: 0 PCMU / 8000
a = rtpmap: 8 PCMA / 8000
a = rtpmap: 4 G723 / 8000
a = rtpmap: 5 DVI4 / 8000
a = rtpmap: 3 GSM / 8000
a = rtpmap: 101 telephone - event / 8000
a = fmtp: 101 0 - 16
a = encryption:optional
m = video 61432 RTP / AVP 34 31
k = base64:W5uTU8sIQjJVPWyRF31GZouVwAHFtE1cAmblK + mvDdI
a = recvonly
a = rtpmap: 34 H263 / 90000
a = rtpmap: 31 H261 / 90000
a = encryption:optional
其中m行表示支持的媒体编码,其中“m=audio 56284 RTP/AVP 97 111 112 6 0 8 4 5 3 101”指明了几种支持的音频媒体类型,“m=video 61432 RTP/AVP 34 31”指明了几种支持的视频媒体类型。软交换服务器(192.168.2.89)接收到INVITE消息后,即刻发送了100 trying消息,如下所示:
Via: SIP / 2.0 / UDP 192.168 . 2.161 : 9545
Max - Forwards: 70
From : "Administrator" < sip: 17899998888 @192 . 168.2 . 89 > ;tag = 2dc6e1000081463ba14f7db4e50b8643;epid = d6b5434cef
To : < sip: 01062230001 @192 . 168.2 . 89 >
Call - ID: 31e72e80d5b04f52aba6cb8be8f3c0c0 @192 . 168.2 . 161
CSeq: 1 INVITE
Contact: < sip: 192.168 . 2.161 : 9545 >
User - Agent: RTC / 1.2
Content - Type: application / sdp
Content - Length: 691
v = 0
o =- 0 0 IN IP4 192.168 . 2.161
s = session
c =IN IP4 192.168 . 2.161
b = CT: 1000
t = 0 0
m = audio 56284 RTP / AVP 97 111 112 6 0 8 4 5 3 101
k = base64:fGmazgf5GXZfJxZ27G9A7rxA4B7KX0pHrjYELKphPog
a = rtpmap: 97 red / 8000
a = rtpmap: 111 SIREN / 16000
a = fmtp: 111 bitrate = 16000
a = rtpmap: 112 G7221 / 16000
a = fmtp: 112 bitrate = 24000
a = rtpmap: 6 DVI4 / 16000
a = rtpmap: 0 PCMU / 8000
a = rtpmap: 8 PCMA / 8000
a = rtpmap: 4 G723 / 8000
a = rtpmap: 5 DVI4 / 8000
a = rtpmap: 3 GSM / 8000
a = rtpmap: 101 telephone - event / 8000
a = fmtp: 101 0 - 16
a = encryption:optional
m = video 61432 RTP / AVP 34 31
k = base64:W5uTU8sIQjJVPWyRF31GZouVwAHFtE1cAmblK + mvDdI
a = recvonly
a = rtpmap: 34 H263 / 90000
a = rtpmap: 31 H261 / 90000
a = encryption:optional
SIP
/
2.0
100
Trying
Via: SIP / 2.0 / UDP 192.168 . 2.161 : 9545
From : "Administrator" < sip: 17899998888 @192 . 168.2 . 89 > ;tag = 2dc6e1000081463ba14f7db4e50b8643;epid = d6b5434cef
To : < sip: 01062230001 @192 . 168.2 . 89 >
Call - ID: 31e72e80d5b04f52aba6cb8be8f3c0c0 @192 . 168.2 . 161
CSeq: 1 INVITE
Content - Length: 0
软交换服务器(192.168.2.89)查找被叫号码消息,并发送INVITE消息给被叫的地址,接收到被叫的100 trying消息,而后接收到180 Ringing消息,软交换服务器给主叫方也发送180 Ringing消息,告知被叫已振铃,发送消息如下:(第一行可不关注,是笔者公司的底层打出的消息):
Via: SIP / 2.0 / UDP 192.168 . 2.161 : 9545
From : "Administrator" < sip: 17899998888 @192 . 168.2 . 89 > ;tag = 2dc6e1000081463ba14f7db4e50b8643;epid = d6b5434cef
To : < sip: 01062230001 @192 . 168.2 . 89 >
Call - ID: 31e72e80d5b04f52aba6cb8be8f3c0c0 @192 . 168.2 . 161
CSeq: 1 INVITE
Content - Length: 0
[
16:15:59
]
===
SIPTransaction Send SIP message (
455
bytes)
to
192.168
.
2.161
:
9545
SIP / 2.0 180 Ringing
Via: SIP / 2.0 / UDP 192.168 . 2.161 : 9545
From : "Administrator" < sip: 17899998888 @192 . 168.2 . 89 > ;tag = 2dc6e1000081463ba14f7db4e50b8643;epid = d6b5434cef
To : < sip: 01062230001 @192 . 168.2 . 89 > ;tag =- 006773 - 7d10081ef45af150
Call - ID: 31e72e80d5b04f52aba6cb8be8f3c0c0 @192 . 168.2 . 161
CSeq: 1 INVITE
Allow: INVITE,ACK,OPTIONS,BYE,CANCEL,REGISTER,INFO, UPDATE ,PRACK,REFER,SUBSCRIBE,NOTIFY,MESSAGE
Contact: < sip: 192.168 . 2.89 : 14010 >
Content - Length: 0
软交换服务器(192.168.2.89)接收到被叫的INVITE消息的200 OK消息,给主叫方也发送200 OK消息,消息参考如下:
SIP / 2.0 180 Ringing
Via: SIP / 2.0 / UDP 192.168 . 2.161 : 9545
From : "Administrator" < sip: 17899998888 @192 . 168.2 . 89 > ;tag = 2dc6e1000081463ba14f7db4e50b8643;epid = d6b5434cef
To : < sip: 01062230001 @192 . 168.2 . 89 > ;tag =- 006773 - 7d10081ef45af150
Call - ID: 31e72e80d5b04f52aba6cb8be8f3c0c0 @192 . 168.2 . 161
CSeq: 1 INVITE
Allow: INVITE,ACK,OPTIONS,BYE,CANCEL,REGISTER,INFO, UPDATE ,PRACK,REFER,SUBSCRIBE,NOTIFY,MESSAGE
Contact: < sip: 192.168 . 2.89 : 14010 >
Content - Length: 0
SIP
/
2.0
200
OK
Via: SIP / 2.0 / UDP 192.168 . 2.89 : 14010 ;branch = z9hG4bK -- 50c44f35
From : < sip: 17899998888 @192 . 168.2 . 89 > ;tag =- 002221 - d749165cdfed2151
To : < sip: 01062230001 @192 . 168.2 . 89 > ;tag = 6b3e0000bf5c0000
Call - ID: fdfa416f8779a8701af1086b07879a65 @192 . 168.2 . 89
CSeq: 1 INVITE
Contact: < sip: 192.168 . 2.161 : 5060 >
Content - Type: application / sdp
Allow: INVITE,ACK,OPTIONS,BYE,CANCEL, UPDATE ,PRACK,REFER,SUBSCRIBE,NOTIFY,MESSAGE
Content - Length: 118
v = 0
o =- 1 1 IN IP4 192.168 . 2.161
s =-
t = 0 0
m = audio 19194 RTP / AVP 8
c =IN IP4 192.168 . 2.161
a = rtpmap: 8 PCMA / 8000
3)签权INVITE消息实例
Via: SIP / 2.0 / UDP 192.168 . 2.89 : 14010 ;branch = z9hG4bK -- 50c44f35
From : < sip: 17899998888 @192 . 168.2 . 89 > ;tag =- 002221 - d749165cdfed2151
To : < sip: 01062230001 @192 . 168.2 . 89 > ;tag = 6b3e0000bf5c0000
Call - ID: fdfa416f8779a8701af1086b07879a65 @192 . 168.2 . 89
CSeq: 1 INVITE
Contact: < sip: 192.168 . 2.161 : 5060 >
Content - Type: application / sdp
Allow: INVITE,ACK,OPTIONS,BYE,CANCEL, UPDATE ,PRACK,REFER,SUBSCRIBE,NOTIFY,MESSAGE
Content - Length: 118
v = 0
o =- 1 1 IN IP4 192.168 . 2.161
s =-
t = 0 0
m = audio 19194 RTP / AVP 8
c =IN IP4 192.168 . 2.161
a = rtpmap: 8 PCMA / 8000