2017-04-10 1 views
0

Ich sende SIP-Anfragen an Twilio SIP-Trunk, mit Node.js und Kirm/Sip-Modul, ich versuche, den Anruf nach dem Empfang von '180 Klingeln' Antwort zu stornieren.SIP CANCEL-Anfrage wird nie 200 Abbrechen der Antwort

Das Problem ist, dass die [CANCEL] SIP-Anfrage gesendet wird, aber der Server antwortet nie mit dem Status ‚200 Abbrechen‘, wie es sollte, anstatt es mit einem TCP [ACK] antwortet und der Anruf bleibt klingeln ..

Die Cancel-Anforderung ist eine Kopie der Einladungsanforderung, hat jedoch die Methode und die CSec-Methode geändert.

INVITE-Anfrage:

INVITE sip:[email protected] SIP/2.0 
From: <sip:[email protected]>;tag=168502 
To: <sip:[email protected]> 
Call-ID: 284466 
CSeq: 969240 INVITE 
Content-Type: application/sdp 
Contact: <sip:[email protected]> 
Via: SIP/2.0/TCP 192.168.61.4:61244;branch=z9hG4bK847573 
Content-Length: 363 
Proxy-Authorization: Digest realm="sip.twilio.com",username="test",nonce="XXXX",uri="sip:[email protected]",nc=00000001,cnonce="XXXXXXX",qop=auth,opaque="XXXXXXX",response="XXXXXXX" 

v=0 
o=- 3700480907 3700480907 IN IP4 192.168.61.4 
s=pjmedia 
b=AS:84 
t=0 0 
a=X-nat:0 
m=audio 4012 RTP/AVP 123 8 0 101 
c=IN IP4 192.168.61.4 
b=TIAS:64000 
a=rtcp:4013 IN IP4 192.168.61.4 
a=sendrecv 
a=rtpmap:123 opus/48000/2 
a=fmtp:123 maxplaybackrate=16000 
a=rtpmap:8 PCMA/8000 
a=rtpmap:0 PCMU/8000 
a=rtpmap:101 telephone-event/8000 
a=fmtp:101 0-16 

Anfrage abbrechen:

CANCEL sip:[email protected] SIP/2.0 
CSeq: 969240 CANCEL 
Call-ID: 284466 
From: <sip:[email protected]>;tag=168502 
To: <sip:[email protected]> 
Via: SIP/2.0/TCP 192.168.61.4:61244;branch=z9hG4bK847573 
Content-Length: 0 

Also irgendwelche Ideen?

Dank

+0

Ihr CANCEL sieht einwandfrei aus. Ist das die eigentliche Nachricht? Ich nehme an, dass es in INVITE keinen Routenheader gibt. Wenn es tatsächlich INVITE ist, dann kopiere auch auf CANCEL. – Sudhansu

Antwort

2

Wenn 180 sollte Ringing To-Tag-Empfang eingestellt werden. Suchen Sie in 180 Ringing To Header. Etwas wie "To:; Tag = 9273782374" wird erwartet.

Sie müssen die CANCEL-Anfrage mit INVITE-Transaktion übereinstimmen, so dass das Tag in der CANCEL-Anforderung gesetzt werden sollte.

CANCEL sip:[email protected] SIP/2.0 
CSeq: 969240 CANCEL 
Call-ID: 284466 
From: <sip:[email protected]>;tag=168502 
To: <sip:[email protected]>;tag=missingToTag 
Via: SIP/2.0/TCP 192.168.61.4:61244;branch=z9hG4bK847573 
Content-Length: 0 
+0

Vielen Dank für die Antwort, ich kopierte Tag aus Antwort Klingeln, jetzt, um wie folgt aussieht: 'An: ; tag = 09200453_6772d868_d8b44d32-4e1b -4175-ace9-487bbf2a27f6' Aber immer noch nicht die Annullierung Antwort erhalten – amamdouh

+0

Es tut mir leid. Die Antwort zu taggen sieht schlecht aus. Ich fühle mich wie die CANCEL-Anfrage, die Sie gesendet haben, war in Ordnung. Das Problem muss woanders liegen. Bitte schauen Sie auf Seite 52 von rfc: https://www.ietf.org/rfc/rfc3261.txt – user3760296