<div dir="ltr">Hello,<div><br></div><div>After having thought this through a bit I have some thoughts I'd like to share.</div><div><br></div><div>In this case where the rtp profile is RTP/AVP Asterisk accepts and handles the call normally. If a webrtc client calls a sip client, or even another webrtc client, rtpengine is needed to step in (in my setup most of the clients would indeed be webrtc, but some of them might be sip). I think it would be better to use RTP/SAVPF throughout the process if both clients are webrtc (or otherwise speak RTP/SAVPF), but currently there is no way to accomplish this? </div>
<div><br></div><div>Is it possible to configure Asterisk to only accept the RTP/SAVPF profile, and send 488 to all others? If it's not possible to force Asterisk to ignore rtp profiles (thus allowing the sdp be handled by rtpengine entirely), I'd prefer to use RTP/SAVPF or RTP/SAVP in the communication between Kamailio and Asterisk servers and use rtpengine to bridge to RTP/AVP and RTP/AVPF only if the client cannot speak securely. </div>
<div><br></div><div>I'd very much like to hear opinions and thoughts on these. </div><div><br></div><div>cheers,</div><div>Olli</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div></div><div class="gmail_extra">
<br><br><div class="gmail_quote">2014-08-13 20:39 GMT+03:00 Olli Heiskanen <span dir="ltr"><<a href="mailto:ohjelmistoarkkitehti@gmail.com" target="_blank">ohjelmistoarkkitehti@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><br><div>Aaa now I understood better, thanks! </div><div><br></div><div>That's the instruction I used originally to write my Kamailio config, but I wasn't sure on how the sdp was supposed to be altered at which places in the whole SIP flow. I was thinking the original INVITE with the original sdp would go all the way to the receiving client, which return 488, which Kamailio would pick up and use rtpengine to alter the sdp at that point. </div>

<div><br></div><div>So I'll need to alter the sdp every time before sending it to the Asterisk servers altogether and so avoid all the hassle I've been having with Asterisk.</div><div><br></div><div>cheers,</div>
<div>
Olli</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-08-13 20:07 GMT+03:00 Paul Belanger <span dir="ltr"><<a href="mailto:paul.belanger@polybeacon.com" target="_blank">paul.belanger@polybeacon.com</a>></span>:<div>
<div class="h5"><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>On Wed, Aug 13, 2014 at 4:35 AM, Olli Heiskanen<br>
<<a href="mailto:ohjelmistoarkkitehti@gmail.com" target="_blank">ohjelmistoarkkitehti@gmail.com</a>> wrote:<br>
> Hi,<br>
><br>
> Wow, thanks Paul, realizing the problem makes a lot of sense.<br>
><br>
> So I setup Kamailio as a peer, but if I disable chan_sip module completely,<br>
> I can't do it in sip.conf like I'd otherwise assume to do. I tried to<br>
> rebuild Asterisk without chan_sip, but I guess that's not quite the way to<br>
> go? Asterisk stopped sending back any sip messages so either there is a<br>
> configuration means on how to do this or I'm doing something wrong with my<br>
> current setup. My next thought was to compile Asterisk normally and set<br>
> rtcachefriends to no, that did not work either, when dialing the cli stated:<br>
> app_dial.c:2437 dial_exec_full: Unable to create channel of type 'SIP'<br>
> (cause 20 - Subscriber absent)<br>
> which I guess says Asterisk does not know where to send the message.<br>
><br>
> The inner workings of Asterisk is a bit beyond me, if you don't mind giving<br>
> advice on how to proceed I'd be most grateful.<br>
><br>
</div>I think you are still mis-understanding me.  I'll try to be clearer.<br>
<br>
>From the POV of asterisk, you do still need chan_sip, however the only<br>
peer asterisk needs to be away of it Kamailio.  All other peers will<br>
be stored within kamailio.  This was the reason for my comment about<br>
realtime sip, you don't need it.<br>
<br>
Then, within kamailio, you'll need to invoke rtpengine using<br>
(rtpproxy-ng with kamailio 4.1) to rewrite the sdp for the invite to<br>
asterisk.  You'll use the rtpproxy_offer and rtp_answer functions to<br>
remove ICE when calls originate from webrtc clients.  Since you are<br>
not using a websocket in asterisk, it will just be a SIP over udp, the<br>
need for ICE and SAVPF is not needed.<br>
<br>
What you are trying to do is pretty complicated, it took me about 2<br>
weeks to get everything setup properly.  There is good information[1]<br>
on the web, you just need to google for it.<br>
<br>
[1] <a href="http://www.slideshare.net/crocodilertc/webrtc-websockets" target="_blank">http://www.slideshare.net/crocodilertc/webrtc-websockets</a><br>
<div><div><br>
--<br>
Paul Belanger | PolyBeacon, Inc.<br>
Jabber: <a href="mailto:paul.belanger@polybeacon.com" target="_blank">paul.belanger@polybeacon.com</a> | IRC: pabelanger (Freenode)<br>
Github: <a href="https://github.com/pabelanger" target="_blank">https://github.com/pabelanger</a> | Twitter: <a href="https://twitter.com/pabelanger" target="_blank">https://twitter.com/pabelanger</a><br>
<br>
--<br>
_____________________________________________________________________<br>
-- Bandwidth and Colocation Provided by <a href="http://www.api-digital.com" target="_blank">http://www.api-digital.com</a> --<br>
New to Asterisk? Join us for a live introductory webinar every Thurs:<br>
               <a href="http://www.asterisk.org/hello" target="_blank">http://www.asterisk.org/hello</a><br>
<br>
asterisk-users mailing list<br>
To UNSUBSCRIBE or update options visit:<br>
   <a href="http://lists.digium.com/mailman/listinfo/asterisk-users" target="_blank">http://lists.digium.com/mailman/listinfo/asterisk-users</a><br>
</div></div></blockquote></div></div></div><br></div>
</blockquote></div><br></div>