As I have got 4 different answers (thanks!) I will paste them all down there.
Em qua., 5 de mai. de 2021 às 18:44, Eliphas Levy Theodoro
<eliphas(a)gmail.com> escreveu:
I am trying to config one kamailio as reverse proxy for a bunch of internal (no internet
address) separate asterisk sip
instances (per domain). The kamailio server would be the only with the valid IP address,
so would use rtpengine to
force to be in the media path.
Like this scenario:
https://opensips.org/pipermail/users/2020-August/043610.html
I have used as starting point this very basic config:
https://blog.voipxswitch.com/2015/03/27/kamailio-basic-sip-proxy-all-reques…
Basically just added rtpproxy support, and voilà, inter-SIP is working, media always
passing into the proxy.
The problem: I would have WebRTC phones connecting too. I tried setting WSS up in
kamailio, and asterisk (pjsip)
wouldn't know how to send the message to the proxy: on register it has trasnport=wss
in the contact: header, looks
like it is confusing the asterisk.
So, I resort for the wisdom of the list :) What would be the good-best-path to take here,
hack the header, or put the
webphones registering directly on the asterisks (with a nginx reverse proxy maybe)?
[..]
Daniel-Constantin Mierla miconda(a)gmail.com por
lists.kamailio.org
06:26 (há 8 horas)
if both endpoints can do webrtc srtp, then it works with rtpproxy to do srtp packet
forwarding for nat traversal or networks bridging.
Yes, when a pair of softphones (ok) and softphones (not yet) exchange
signalling alright in that scenario, I will start on transcoding...
Wojtko, Daniel daniel.wojtko(a)rittec.de por
lists.kamailio.org 05:32
(há 8 horas)
afaik rtpproxy doesn't support WebRTC but
rtpengine does
As Daniel said above, I reckon that rtpproxy would work when
transcoding/translating sip/webrtc is not needed. But first, need to
pass signalling at least :)
Yuriy Gorlichenko ovoshlook(a)gmail.com por
lists.kamailio.org 05:55 (há 8 horas)
If you looking for examples: you can use this one
https://github.com/havfo/WEBRTC-to-SIP as starting point
anyway, the Path mentioned by Alex is the best approach.
I tried that one but could not figure most of it out... I think I
borked it. Tried only changing $du to asterisk instead of doing
register locally and got the same results (and lots of rtpengine
chattiness) too, so I am using now a very simple config to make
finding the signalling problem easier.
Alex Balashov abalashov(a)evaristesys.com por
lists.kamailio.org 03:26 (há 10 horas)
It sounds like you are in need of the Path extension:
That was one of the modifications I have made, found out later that
the problem is PJSIP not handling Path: anyway:
https://community.asterisk.org/t/pjsip-path-module-issues/88046
https://issues.asterisk.org/jira/browse/ASTERISK-28211
So I have changed back to the older chan_sip interface, problem
solved, that one worked with Path: header. Now asterisk sends the
invite back to kamailio!
Now, the basic signalling of webphone -> kamailio -> asterisk ->
kamailio -> otherphone is stopping on kamailio itself, it is sending
the packet via UDP like asterisk was, instead of using the socket.
This is how the webphone contact looks like:
<sip:cakrtk0i@192.0.2.210;transport=wss>
Kamailio (and asterisk before Path: worked) invites
UDP:192.0.2.210:5060, instead of the "local" websocket, and of course
never succeeding.
I tried save()ing the register locally, but I am sure I am doing it wrong.
if someone wants to look at the actual test config, I pasted it:
https://pastebin.com/RuXniDTU
Cheers,
--
Eliphas