This is a good repo to use as a reference: https://github.com/havfo/WEBRTC-to-SIP
On Fri, 19 Sept 2025 at 11:11, Rajneesh Soni via sr-users < [email protected]> wrote: > Hi, > > you need to put different config for webrtc -> sip and from sip -> webrtc > > e.g. > ``` > if ($proto =~ "ws") { # web --> SIP > $xavp(r=>$T_branch_idx) = $xavp(r=>$T_branch_idx) + " rtcp-mux=demux > DTLS=off ICE=remove RTP/AVPF"; > } else { # SIP --> web > $xavp(r=>$T_branch_idx) = $xavp(r=>$T_branch_idx) + " rtcp-mux-offer > generate-mid DTLS-reverse SDES-off ICE=force RTP/SAVPF"; > } > ``` > Regards > Rajneesh > > > On Fri, Sep 19, 2025 at 12:52 AM Yuriy G via sr-users < > [email protected]> wrote: > >> You have to deal with rtp profiles: >> >> >> *> RTP/AVP, RTP/SAVP, UDP/TLS/RTP/SAVP, RTP/AVPF, RTP/SAVPF, >> UDP/TLS/RTP/SAVPF* >> Take a look closer to documentation: >> https://kamailio.org/docs/modules/6.0.x/modules/rtpengine.html#rtpengine.f.rtpengine_offer >> >> чт, 18 сент. 2025 г. в 20:35, Fernando Lopes via sr-users < >> [email protected]>: >> >>> 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! >>> >> __________________________________________________________ >> 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! >> > __________________________________________________________ > 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! >
__________________________________________________________ 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!
