Hello everyone,

I'm currently trying to make WebRTC-to-SIP calls. My setup is: WebRTC → WSS → 
Kamailio → UDP → Asterisk, using rtpengine. I have a route named GET_ICE that 
is called in onreply_route.
Everything else works: SIP-to-SIP calls and WebRTC messaging are fine. Only 
WebRTC-to-SIP calls have audio issues. I've tested many different ICE flags, 
but without success. In my testing I think I've managed to get audio to 
kamailio but not to webrtc, but decided to rollback to start to get help.

In my PJSIP configuration, I allow these codecs:
allow=g722,ulaw,vp9,vp8,h264

My Kamailio code:
route[GET_ICE] {
    if ( $proto == "wss" ) {
        if (is_ip_rfc1918("$si")) {
            $dlg_var(ice) = " ";
        } else {
            $dlg_var(ice) = " ICE=remove RTP ";

        }
    } else {
        $dlg_var(ice) = "ICE=FORCE";
    }
}

route[BUILD_RTPENGINE_PARAMETER] {
    route(SET_RTP_DIRECTION);   # returns $dlg_var(rtp_direction)
    if ( is_method("INVITE") ) {
        route(GET_ICE);             # returns $dlg_var(ice)
    }

    xlog("L_WARN", "[BUILD_RTPENGINE_PARAMETER] > $dlg_var(rtp_direction)\n");
    $var(rtp_param) = "replace-origin replace-session-connection " + 
$dlg_var(ice) + " " + $dlg_var(rtp_direction);
    xlog("L_WARN", "[RTPENGINE]: Method $rm status $rs protocol: 
$dlg_var(call_type) -> $dlg_var(rtp_direction) -> [$dlg_var(ice)]\n");
    xlog("L_WARN", "[RTPENGINE]: Param: [$var(rtp_param)]\n");
    rtpengine_manage($var(rtp_param));
}

My logs:

 3(47) WARNING: <script>: [REPLY] 1xx or 2xx received
 3(47) WARNING: <script>: [SET_RTP_DIRECTION] -> reply from internal = 
direction=internal direction=external
 3(47) WARNING: <script>: [BUILD_RTPENGINE_PARAMETER] > direction=internal 
direction=external
 3(47) WARNING: <script>: [RTPENGINE]: Method INVITE status 200 protocol: 
<null> -> direction=internal direction=external -> []
 3(47) WARNING: <script>: [RTPENGINE]: Param: [replace-origin 
replace-session-connection  direction=internal direction=external]
[1758217893.108564] INFO: [ID="m7e648isjm9n96ti62k9"]: [control] Received 
command 'answer' from 10.5.0.8:42938
[1758217893.108583] INFO: [ID="m7e648isjm9n96ti62k9"]: [core] 
replace-session-connection flag encountered, but not supported anymore.
[1758217893.108998] WARNING: [ID="m7e648isjm9n96ti62k9" 
tag="f03487ad-0be2-49d5-9452-289c407db828" index="1"]: [core] ICE restart 
detected, but reset not allowed at this point
[1758217893.109379] INFO: [ID="m7e648isjm9n96ti62k9"]: [control] Replying to 
'answer' from 10.5.0.8:42938 (elapsed time 0.000804 sec)
[1758217893.109411] INFO: [ID="m7e648isjm9n96ti62k9" 
tag="f03487ad-0be2-49d5-9452-289c407db828" index="1" port="14656"]: [ice] ICE 
negotiated: peer for component 1 is 10.5.0.2:28384
[1758217893.109418] INFO: [ID="m7e648isjm9n96ti62k9" 
tag="f03487ad-0be2-49d5-9452-289c407db828" index="1" port="14656"]: [ice] ICE 
negotiated: local interface 10.5.0.8

[1758217893.208990] INFO: [ID="m7e648isjm9n96ti62k9" 
tag="f03487ad-0be2-49d5-9452-289c407db828" index="1" port="14656"]: [ice] ICE 
negotiated: peer for component 1 is 10.5.0.2:28384
[1758217893.209036] INFO: [ID="m7e648isjm9n96ti62k9" 
tag="f03487ad-0be2-49d5-9452-289c407db828" index="1" port="14656"]: [ice] ICE 
negotiated: local interface 10.5.0.8
[1758217894.111112] INFO: [ID="m7e648isjm9n96ti62k9" 
tag="f03487ad-0be2-49d5-9452-289c407db828" index="1" port="14656"]: [crypto] 
DTLS: Peer certificate accepted
[1758217894.112292] INFO: [ID="m7e648isjm9n96ti62k9" 
tag="f03487ad-0be2-49d5-9452-289c407db828" index="1" port="14656"]: [crypto] 
DTLS-SRTP successfully negotiated using AES_CM_128_HMAC_SHA1_80
[1758217894.112341] INFO: [ID="m7e648isjm9n96ti62k9" 
tag="f03487ad-0be2-49d5-9452-289c407db828" index="1" port="14656"]: [crypto] 
DTLS-SRTP successfully negotiated using AES_CM_128_HMAC_SHA1_80  
[1758217896.299109] INFO: [ID="m7e648isjm9n96ti62k9" 
tag="f03487ad-0be2-49d5-9452-289c407db828" index="1" port="14656"]: [core] 
Confirmed peer address as 10.5.0.2:28384
[1758217896.299174] ERR: [ID="m7e648isjm9n96ti62k9" 
tag="f03487ad-0be2-49d5-9452-289c407db828" index="1" port="14656"]: [srtp] SRTP 
output wanted, but no crypto suite was negotiated
[1758217901.298677] ERR: [ID="m7e648isjm9n96ti62k9" 
tag="f03487ad-0be2-49d5-9452-289c407db828" index="1" port="14656"]: [rtcp] 
SRTCP output wanted, but no crypto suite was negotiated

[1758217930.743494] INFO: [ID="483961fa065a4df9b5f76059c8a1a3e3"]: [core] 
Closing call due to timeout
[1758217930.743636] INFO: [ID="483961fa065a4df9b5f76059c8a1a3e3"]: [core] Final 
packet stats:
[1758217930.743651] INFO: [ID="483961fa065a4df9b5f76059c8a1a3e3"]: [core] --- 
Tag '2bad2cacef0945b1a506a198aeb4ae01', created 1:00 ago for branch ''
[1758217930.743659] INFO: [ID="483961fa065a4df9b5f76059c8a1a3e3"]: [core] 
------ Media #1 (audio over RTP/AVP) using unknown codec
[1758217930.743670] INFO: [ID="483961fa065a4df9b5f76059c8a1a3e3"]: [core] 
--------- Port        10.5.0.8:15028 <>    172.31.208.1:4000 , SSRC 0, in 0 p, 
0 b, 0 e, 60 ts, out 0 p, 0 b, 0 e        
[1758217930.743677] INFO: [ID="483961fa065a4df9b5f76059c8a1a3e3"]: [core] 
--------- Port        10.5.0.8:15029 <>    172.31.208.1:4001  (RTCP), SSRC 0, 
in 0 p, 0 b, 0 e, 60 ts, out 0 p, 0 b, 0 e 
[1758217930.743683] INFO: [ID="483961fa065a4df9b5f76059c8a1a3e3"]: [core] --- 
Tag '88cf8c49-cdfc-475e-8075-a3ce0a36ecca', created 1:00 ago for branch ''
[1758217930.743687] INFO: [ID="483961fa065a4df9b5f76059c8a1a3e3"]: [core] 
------ Media #1 (audio over RTP/AVP) using unknown codec
[1758217930.743693] INFO: [ID="483961fa065a4df9b5f76059c8a1a3e3"]: [core] 
--------- Port        10.5.0.8:17956 <>        10.5.0.2:64570, SSRC 0, in 0 p, 
0 b, 0 e, 60 ts, out 0 p, 0 b, 0 e        
[1758217930.743699] INFO: [ID="483961fa065a4df9b5f76059c8a1a3e3"]: [core] 
--------- Port        10.5.0.8:17957 <>        10.5.0.2:64571 (RTCP), SSRC 0, 
in 0 p, 0 b, 0 e, 60 ts, out 0 p, 0 b, 0 e 

Thank you.
__________________________________________________________
Kamailio - Users Mailing List - Non Commercial Discussions -- 
[email protected]
To unsubscribe send an email to [email protected]
Important: keep the mailing list in the recipients, do not reply only to the 
sender!

Reply via email to