所以我在我的一些自定义 VOIP 应用程序中使用 JAIN-SIP API 进行呼叫设置,我遇到了一个困扰我好几天的问题:我不能用 BYE 消息挂断电话。更准确地说,我不断收到来自被调用者的 481 Call/Transaction Does Not Exist 响应代码。我不明白为什么。
下面是被调用方的堆栈服务器日志。如果需要,我可以为您提供源代码和调试日志,但请注意源代码很长。
<!-- Use the Trace Viewer in src/tools/tracesviewer to view this trace
Here are the stack configuration properties
javax.sip.IP_ADDRESS= 192.168.1.103
javax.sip.STACK_NAME= vm.nist
javax.sip.ROUTER_PATH= null
javax.sip.OUTBOUND_PROXY= null
-->
<message
from="192.168.1.103:51060"
to="5.9.109.239:5060"
time="1355272841980"
isSender="true"
transactionId="z9hg4bk-cf90a986-d7f9-44a9-bd63-efb74ecc36e9"
callId="f8270729014d0c5b17c759f60ea6510f@192.168.1.103"
firstLine="REGISTER sip:test14.d@talk-place.com SIP/2.0"
>
<![CDATA[REGISTER sip:test14.d@talk-place.com SIP/2.0
Call-ID: f8270729014d0c5b17c759f60ea6510f@192.168.1.103
CSeq: 366 REGISTER
From: "Test14d" <sip:test14.d@talk-place.com>;tag=18faf7d44db09f903ff5895b78787911
To: "Test14d" <sip:test14.d@talk-place.com>
Via: SIP/2.0/UDP 212.200.115.198:51060;rport;branch=z9hG4bK-cf90a986-d7f9-44a9-bd63-efb74ecc36e9
Max-Forwards: 70
Contact: <sip:test14.d@212.200.115.198:51060;transport=udp>
Allow: INVITE,ACK,BYE,MESSAGE
User-Agent: Talk-Place
Content-Length: 0
]]>
</message>
<message
from="5.9.109.239:5060"
to="192.168.1.103:51060"
time="1355272842063"
isSender="false"
transactionId="z9hg4bk-cf90a986-d7f9-44a9-bd63-efb74ecc36e9"
callId="f8270729014d0c5b17c759f60ea6510f@192.168.1.103"
firstLine="SIP/2.0 401 Unauthorized"
>
<![CDATA[SIP/2.0 401 Unauthorized
Call-ID: f8270729014d0c5b17c759f60ea6510f@192.168.1.103
CSeq: 366 REGISTER
From: "Test14d" <sip:test14.d@talk-place.com>;tag=18faf7d44db09f903ff5895b78787911
To: "Test14d" <sip:test14.d@talk-place.com>;tag=b27e1a1d33761e85846fc98f5f3a7e58.6828
Via: SIP/2.0/UDP 192.168.1.103:51060;rport=51060;branch=z9hG4bK-cf90a986-d7f9-44a9-bd63-efb74ecc36e9
WWW-Authenticate: Digest nonce="UMfTtVDH0okwmWYROC4r29415DGDKaqM",realm="talk-place.com"
Server: kamailio (3.3.2 (x86_64/linux))
Content-Length: 0
]]>
</message>
<message
from="192.168.1.103:51060"
to="5.9.109.239:5060"
time="1355272842069"
isSender="true"
transactionId="z9hg4bk-cf90a986-d7f9-44a9-bd63-efb74ecc36e9"
callId="f8270729014d0c5b17c759f60ea6510f@192.168.1.103"
firstLine="REGISTER sip:test14.d@talk-place.com SIP/2.0"
>
<![CDATA[REGISTER sip:test14.d@talk-place.com SIP/2.0
Call-ID: f8270729014d0c5b17c759f60ea6510f@192.168.1.103
CSeq: 367 REGISTER
From: "Test14d" <sip:test14.d@talk-place.com>;tag=18faf7d44db09f903ff5895b78787911
To: "Test14d" <sip:test14.d@talk-place.com>
Via: SIP/2.0/UDP 212.200.115.198:51060;rport;branch=z9hG4bK-cf90a986-d7f9-44a9-bd63-efb74ecc36e9
Max-Forwards: 70
Contact: <sip:test14.d@212.200.115.198:51060;transport=udp>
Allow: INVITE,ACK,BYE,MESSAGE
User-Agent: Talk-Place
Authorization: Digest response="ec655ebc2eb8685de4fb7d739f3f0acf",username="test14.d",nonce="UMfTtVDH0okwmWYROC4r29415DGDKaqM",realm="talk-place.com",uri="sip:test14.d@talk-place.com",algorithm=MD5
Content-Length: 0
]]>
</message>
<message
from="5.9.109.239:5060"
to="192.168.1.103:51060"
time="1355272842118"
isSender="false"
transactionId="z9hg4bk-cf90a986-d7f9-44a9-bd63-efb74ecc36e9"
callId="f8270729014d0c5b17c759f60ea6510f@192.168.1.103"
firstLine="SIP/2.0 200 OK"
>
<![CDATA[SIP/2.0 200 OK
Call-ID: f8270729014d0c5b17c759f60ea6510f@192.168.1.103
CSeq: 367 REGISTER
From: "Test14d" <sip:test14.d@talk-place.com>;tag=18faf7d44db09f903ff5895b78787911
To: "Test14d" <sip:test14.d@talk-place.com>;tag=b27e1a1d33761e85846fc98f5f3a7e58.6828
Via: SIP/2.0/UDP 192.168.1.103:51060;rport=51060;branch=z9hG4bK-cf90a986-d7f9-44a9-bd63-efb74ecc36e9
Contact: <sip:test14.d@192.168.1.103:51060;transport=udp>;expires=3600
Server: kamailio (3.3.2 (x86_64/linux))
Content-Length: 0
]]>
</message>
<message
from="5.9.109.239:5060"
to="192.168.1.103:51060"
time="1355272852008"
isSender="false"
transactionId="z9hg4bkbd3c.62eea493.0"
callId="2b10b9f3880ef078cb20cd9ae7075591@10.86.183.204"
firstLine="INVITE sip:test14.d@192.168.1.103:51060;transport=udp SIP/2.0"
>
<![CDATA[INVITE sip:test14.d@192.168.1.103:51060;transport=udp SIP/2.0
Record-Route: <sip:5.9.109.239;lr=on>
Call-ID: 2b10b9f3880ef078cb20cd9ae7075591@10.86.183.204
CSeq: 116 INVITE
From: "test14.f" <sip:test14.f@talk-place.com>;tag=32f8bc24842d02d1357bd2345c542659
To: "test14.d" <sip:test14.d@talk-place.com>
Via: SIP/2.0/UDP 5.9.109.239;branch=z9hG4bKbd3c.62eea493.0,SIP/2.0/UDP 77.243.22.4:36238;rport=36238;branch=z9hG4bK-f7a17df9-2242-4785-80cd-25993986008b
Max-Forwards: 69
Contact: <sip:test14.f@77.243.22.4:36238;transport=udp>
Allow: INVITE,ACK,BYE,CANCEL,OPTIONS,PRACK,REFER,NOTIFY,SUBSCRIBE,INFO,MESSAGE
User-Agent: Talk-Place
Content-Type: application/sdp
Content-Length: 206
]]>
</message>
<message
from="192.168.1.103:51060"
to="5.9.109.239:5060"
time="1355272852027"
isSender="true"
transactionId="z9hg4bkbd3c.62eea493.0"
callId="2b10b9f3880ef078cb20cd9ae7075591@10.86.183.204"
firstLine="SIP/2.0 100 Trying"
>
<![CDATA[SIP/2.0 100 Trying
Call-ID: 2b10b9f3880ef078cb20cd9ae7075591@10.86.183.204
CSeq: 116 INVITE
From: "test14.f" <sip:test14.f@talk-place.com>;tag=32f8bc24842d02d1357bd2345c542659
To: "test14.d" <sip:test14.d@talk-place.com>
Via: SIP/2.0/UDP 5.9.109.239;branch=z9hG4bKbd3c.62eea493.0,SIP/2.0/UDP 77.243.22.4:36238;rport=36238;branch=z9hG4bK-f7a17df9-2242-4785-80cd-25993986008b
Content-Length: 0
]]>
</message>
<message
from="192.168.1.103:51060"
to="5.9.109.239:5060"
time="1355272854032"
isSender="true"
transactionId="z9hg4bkbd3c.62eea493.0"
callId="2b10b9f3880ef078cb20cd9ae7075591@10.86.183.204"
firstLine="SIP/2.0 180 Ringing"
>
<![CDATA[SIP/2.0 180 Ringing
Call-ID: 2b10b9f3880ef078cb20cd9ae7075591@10.86.183.204
CSeq: 116 INVITE
From: "test14.f" <sip:test14.f@talk-place.com>;tag=32f8bc24842d02d1357bd2345c542659
To: "test14.d" <sip:test14.d@talk-place.com>;tag=18faf7d44db09f903ff5895b78787911
Via: SIP/2.0/UDP 5.9.109.239;branch=z9hG4bKbd3c.62eea493.0,SIP/2.0/UDP 77.243.22.4:36238;rport=36238;branch=z9hG4bK-f7a17df9-2242-4785-80cd-25993986008b
Contact: <sip:test14.d@212.200.115.198;transport=udp>
Content-Length: 0
]]>
</message>
<message
from="192.168.1.103:51060"
to="5.9.109.239:5060"
time="1355272856037"
isSender="true"
transactionId="z9hg4bkbd3c.62eea493.0"
callId="2b10b9f3880ef078cb20cd9ae7075591@10.86.183.204"
firstLine="SIP/2.0 200 OK"
>
<![CDATA[SIP/2.0 200 OK
Record-Route: <sip:5.9.109.239;lr=on>
Call-ID: 2b10b9f3880ef078cb20cd9ae7075591@10.86.183.204
CSeq: 116 INVITE
From: "test14.f" <sip:test14.f@talk-place.com>;tag=32f8bc24842d02d1357bd2345c542659
To: "test14.d" <sip:test14.d@talk-place.com>;tag=18faf7d44db09f903ff5895b78787911
Via: SIP/2.0/UDP 5.9.109.239;branch=z9hG4bKbd3c.62eea493.0,SIP/2.0/UDP 77.243.22.4:36238;rport=36238;branch=z9hG4bK-f7a17df9-2242-4785-80cd-25993986008b
Contact: <sip:test14.d@212.200.115.198;transport=udp>
Content-Type: application/sdp
Content-Length: 218
]]>
</message>
<message
from="5.9.109.239:5060"
to="192.168.1.103:51060"
time="1355272856327"
isSender="false"
transactionId="z9hg4bkcydzigwkx"
callId="2b10b9f3880ef078cb20cd9ae7075591@10.86.183.204"
firstLine="ACK sip:test14.d@192.168.1.103:51060;transport=udp SIP/2.0"
>
<![CDATA[ACK sip:test14.d@192.168.1.103:51060;transport=udp SIP/2.0
Call-ID: 2b10b9f3880ef078cb20cd9ae7075591@10.86.183.204
CSeq: 117 ACK
From: "test14.f" <sip:test14.f@talk-place.com>;tag=32f8bc24842d02d1357bd2345c542659
To: "test14.d" <sip:test14.d@talk-place.com>
Via: SIP/2.0/UDP 5.9.109.239;branch=z9hG4bKcydzigwkX,SIP/2.0/UDP 77.243.22.4:36238;rport=36238;branch=z9hG4bK-f7a17df9-2242-4785-80cd-25993986008b
Max-Forwards: 69
Allow: INVITE,ACK,BYE,CANCEL,OPTIONS,PRACK,REFER,NOTIFY,SUBSCRIBE,INFO,MESSAGE
User-Agent: Talk-Place
Content-Length: 0
]]>
</message>
<message
from="192.168.1.103:51060"
to="5.9.109.239:5060"
time="1355272856339"
isSender="true"
transactionId="z9hg4bkcydzigwkx"
callId="2b10b9f3880ef078cb20cd9ae7075591@10.86.183.204"
firstLine="SIP/2.0 200 OK"
>
<![CDATA[SIP/2.0 200 OK
Call-ID: 2b10b9f3880ef078cb20cd9ae7075591@10.86.183.204
CSeq: 117 ACK
From: "test14.f" <sip:test14.f@talk-place.com>;tag=32f8bc24842d02d1357bd2345c542659
To: "test14.d" <sip:test14.d@talk-place.com>
Via: SIP/2.0/UDP 5.9.109.239;branch=z9hG4bKcydzigwkX,SIP/2.0/UDP 77.243.22.4:36238;rport=36238;branch=z9hG4bK-f7a17df9-2242-4785-80cd-25993986008b
Content-Length: 0
]]>
</message>
<message
from="5.9.109.239:5060"
to="192.168.1.103:51060"
time="1355272856728"
isSender="false"
transactionId="z9hg4bk9e3c.74261c85.0"
callId="2b10b9f3880ef078cb20cd9ae7075591@10.86.183.204"
firstLine="BYE sip:test14.d@192.168.1.103:51060;transport=udp SIP/2.0"
>
<![CDATA[BYE sip:test14.d@192.168.1.103:51060;transport=udp SIP/2.0
Call-ID: 2b10b9f3880ef078cb20cd9ae7075591@10.86.183.204
CSeq: 119 BYE
From: "test14.f" <sip:test14.f@talk-place.com>;tag=32f8bc24842d02d1357bd2345c542659
To: "test14.d" <sip:test14.d@talk-place.com>
Via: SIP/2.0/UDP 5.9.109.239;branch=z9hG4bK9e3c.74261c85.0,SIP/2.0/UDP 77.243.22.4:36238;rport=36238;branch=z9hG4bK-f7a17df9-2242-4785-80cd-25993986008b
Max-Forwards: 69
Allow: INVITE,ACK,BYE,CANCEL,OPTIONS,PRACK,REFER,NOTIFY,SUBSCRIBE,INFO,MESSAGE
User-Agent: Talk-Place
Content-Length: 0
]]>
</message>
<message
from="192.168.1.103:51060"
to="5.9.109.239:5060"
time="1355272856738"
isSender="true"
transactionId="z9hg4bk9e3c.74261c85.0"
callId="2b10b9f3880ef078cb20cd9ae7075591@10.86.183.204"
firstLine="SIP/2.0 481 Call leg/Transaction does not exist"
>
<![CDATA[SIP/2.0 481 Call leg/Transaction does not exist
Call-ID: 2b10b9f3880ef078cb20cd9ae7075591@10.86.183.204
CSeq: 119 BYE
From: "test14.f" <sip:test14.f@talk-place.com>;tag=32f8bc24842d02d1357bd2345c542659
To: "test14.d" <sip:test14.d@talk-place.com>
Via: SIP/2.0/UDP 5.9.109.239;branch=z9hG4bK9e3c.74261c85.0,SIP/2.0/UDP 77.243.22.4:36238;rport=36238;branch=z9hG4bK-f7a17df9-2242-4785-80cd-25993986008b
Server: vm.nist
Content-Length: 0
]]>
</message>