столкнулся со следующей проблемой:
При звонке с wephone на софтфон все проходит безукоризненно.
При звонке с софтфона на webphone сигнализация SIP проходит без проблем, но при поднятии трубки на цуизрщту вываливается 603 "failed to get local sdp".
На пире с софтфоном выставлено шифрование (это обязательное условие. так как на него могут цепляться и пользователи webphone)
Голосовой траффик должен ходить по srtp.
Вот INVITE в котором я отсылаю данные при звонке:
Код: Выделить всё
Reliably Transmitting (NAT) to 1.1.1.1.1:22596:
INVITE sip:1061@df7jal23ls0d.invalid;rtcweb-breaker=yes;transport=ws SIP/2.0
Via: SIP/2.0/WS 2.2.2.2:5060;branch=z9hG4bK5d6845a4;rport
Max-Forwards: 70
From: "New User" <sip:1060@2.2.2.2>;tag=as07bcc9b2
To: <sip:1061@df7jal23ls0d.invalid;rtcweb-breaker=yes;transport=ws>
Contact: <sip:1060@2.2.2.2:5060;transport=WS>
Call-ID: 654bc8580334ada51c6cd2d75b83f46a@162.209.101.19:5060
CSeq: 102 INVITE
User-Agent: Asterisk PBX 11.7.0-rc1
Date: Mon, 18 Nov 2013 11:59:17 GMT
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH
Supported: replaces, timer
Content-Type: application/sdp
Content-Length: 1083
v=0
o=root 327695973 327695973 IN IP4 2.2.2.2
s=Asterisk PBX 11.7.0-rc1
c=IN IP4 2.2.2.2
t=0 0
m=audio 16460 UDP/TLS/RTP/SAVP 0 3 8 101
a=rtpmap:0 PCMU/8000
a=rtpmap:3 GSM/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=silenceSupp:off - - - -
a=ptime:20
a=ice-ufrag:32c9e6db46a817e61ddb57ff5662dcdd
a=ice-pwd:340e63ed4158b8dc6655a51968eb2392
a=candidate:Ha2d16513 1 UDP 2130706431 2.2.2.2 16460 typ host
a=candidate:Hab0006b 1 UDP 2130706431 10.176.0.107 16460 typ host
a=candidate:Hc0a8a808 1 UDP 2130706431 192.168.168.8 16460 typ host
a=candidate:Sa2d16513 1 UDP 1694498815 2.2.2.2 16460 typ srflx
a=candidate:Ha2d16513 2 UDP 2130706430 2.2.2.2 16461 typ host
a=candidate:Hab0006b 2 UDP 2130706430 10.176.0.107 16461 typ host
a=candidate:Hc0a8a808 2 UDP 2130706430 192.168.168.8 16461 typ host
a=candidate:Sa2d16513 2 UDP 1694498814 2.2.2.2 16460 typ srflx
a=connection:new
a=setup:active
a=fingerprint:SHA-1 12:D1:5C:DF:16:6A:54:2D:8E:B0:51:3B:6E:CC:F7:4E:2B:0B:08:2B
a=sendrecv
Как видно srtp отрабатвает:
Код: Выделить всё
a=fingerprint:SHA-1 12:D1:5C:DF:16:6A:54:2D:8E:B0:51:3B:6E:CC:F7:4E:2B:0B:08:2B
Код: Выделить всё
<--- SIP read from WS:1.1.1.1:22596 --->
SIP/2.0 180 Ringing
Via: SIP/2.0/WS 2.2.2.2:5060;rport=5060;branch=z9hG4bK5d6845a4
From: "New User"<sip:1060@2.2.2.2>;tag=as07bcc9b2
To: <sip:1061@df7jal23ls0d.invalid;rtcweb-breaker=yes;transport=ws>;tag=NfQp0QFtldX32ZlHqLGA
Contact: <sip:1061@df7jal23ls0d.invalid;transport=ws>
Call-ID: 654bc8580334ada51c6cd2d75b83f46a@2.2.2.2:5060
CSeq: 102 INVITE
Content-Length: 0
Allow: ACK, BYE, CANCEL, INVITE, MESSAGE, NOTIFY, OPTIONS, PRACK, REFER, UPDATE
<------------->
--- (9 headers 0 lines) ---
list_route: hop: <sip:1061@df7jal23ls0d.invalid;transport=ws>
-- SIP/1061-00000015 is ringing
<--- SIP read from WS:1.1.1.1:22596 --->
SIP/2.0 603 Failed to get local SDP
Via: SIP/2.0/WS 2.2.2.2:5060;rport=5060;branch=z9hG4bK5d6845a4
From: "New User"<sip:1060@2.2.2.2>;tag=as07bcc9b2
To: <sip:1061@df7jal23ls0d.invalid;rtcweb-breaker=yes;transport=ws>;tag=NfQp0QFtldX32ZlHqLGA
Call-ID: 654bc8580334ada51c6cd2d75b83f46a@2.2.2.2:5060
CSeq: 102 INVITE
Content-Length: 0
Reason: SIP; cause=603; text="Failed to get local SDP"
<------------->
--- (8 headers 0 lines) ---
-- Got SIP response 603 "Failed to get local SDP" back from 1.1.1.1:22596
set_destination: Parsing <sip:1061@df7jal23ls0d.invalid;transport=ws> for address/port to send to
set_destination: URI is for WebSocket, we can't set destination
Transmitting (NAT) to 1.1.1.1:22596:
ACK sip:1061@df7jal23ls0d.invalid;transport=ws SIP/2.0
Via: SIP/2.0/WS 2.2.2.2>;:5060;branch=z9hG4bK5d6845a4;rport
Max-Forwards: 70
From: "New User" <sip:1060@2.2.2.2>;tag=as07bcc9b2
To: <sip:1061@df7jal23ls0d.invalid;rtcweb-breaker=yes;transport=ws>;tag=NfQp0QFtldX32ZlHqLGA
Contact: <sip:1060@2.2.2.2:5060;transport=WS>
Call-ID: 654bc8580334ada51c6cd2d75b83f46a@12.2.2.2:5060
CSeq: 102 ACK
User-Agent: Asterisk PBX 11.7.0-rc1
Content-Length: 0
URI is for WebSocket, we can't set destination
То есть. если я звоню с обычного tcp сокета на websocket то соединение не установится потому, что asterisk не умеет транслировать из обдго сокета в другой?