[OpenSIPS-Users] rtp port changed in REPLY's SDP after announcement
Bogdan-Andrei Iancu
bogdan at opensips.org
Wed Nov 22 10:14:38 EST 2017
Hi Marco,
If I understand correctly, you *NEED* to do get different SDP's in the 2
INVITE branches as the first branch going to the media server needs to
have a private IP, while the second branch going to the calle needs to
have a public IP, right ?
Regards,
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
http://www.opensips-solutions.com
On 11/21/2017 12:49 PM, Marco Hierl wrote:
>
> Hi Bogdan,
>
> no, he did not say anything yet, but I expect that it is paragraph 3.2:
>
> “A UAS cannot send a new offer in the reliable
>
> provisional response, so the UPDATE method is the only method for a
>
> UAS to update an early session.”
>
> (I’m not quite sure if this really fits to our situation, because the
> UAS itself changed.)
>
> According to your suggestion:
>
> I used “rtpengine_offer(external *internal*…” to adjust the SDP the
> first time. So I get an internal IP in the INVITE to the announcement.
> And this will be seen in the 2^nd INVITE to the callee if I do NOT
> make “rtpengine_offer(external *external*…” to the INVITE to the
> callee. But the callee has public IP and I need to use the external
> interface.
>
> Thanks for your help!
>
> Marco
>
> *Von:*Bogdan-Andrei Iancu [mailto:bogdan at opensips.org]
> *Gesendet:* Dienstag, 21. November 2017 11:10
> *An:* OpenSIPS users mailling list; Marco Hierl
> *Betreff:* Re: [OpenSIPS-Users] rtp port changed in REPLY's SDP after
> announcement
>
> Hello Marco,
>
> Did the interconnection partner mentioned the chapter/paragraph in
> RFC6337 where the restriction on the port is mentioned (I was not able
> to find it on a quick scan) ? it is the first time I hear about
> anything like this.
>
> Now, if you use rtpproxy (I do not know about rtpengine) on your side
> and you do rtpproxy_offer only once (when getting the call from the
> carrier) , you can do rtpproxy_answer multiple time (during the serial
> forking). In this case, the RTP IP:port towards the carrier will never
> change, but the RTP callee leg will be changed.
>
> Best regards,
>
> Bogdan-Andrei Iancu
> OpenSIPS Founder and Developer
> http://www.opensips-solutions.com
>
> On 11/21/2017 11:07 AM, Marco Hierl wrote:
>
> Dear all,
>
> I want to play an early announcement before connecting a call. The
> announcement can be heard by the caller, but the callee can't hear
> the caller after the call is connected!
>
> To be more precise:
>
> The openSIPS proxy receives a call from an external
> interconnection partner (public IP on external interface) and
> sends it on to an announcement server (private IP on internal
> interface).
>
> After REPLY 183 the announcement starts and the caller can hear
> the announcement. It finishes with REPLY603 that comes to the
> openSIPS failure route. Some stuff is done (e.g. changing R-URI),
>
> a new t_relay will be done and an INVITE is send to the callee
> (public IP on external interface). The callee sends 200ok, it's
> forwarded to the caller, that sends ACK like usual.
>
> But the caller does not send RTP to the IP/PORT indicated in the
> 200OK.
>
> The interconnection partner said that the problem is, that the RTP
> port in REPLY 183 is different to that in REPLY200 (not allowed,
> see RFC6337). (just to mention: the to-tag is different too)
>
> I'm using openSIPS 2.3 and in order to overcome the issue with
> internal and external addresses and also to keep the rtp streams
> I'm using rtpengine 5.4 (on a different machine)
>
> Is the change of the RTP Port allowed in this way? If not, what I
> can do better? Or is it a fault from rtp-engine, should it keep
> the first port?
>
> Any help is very appreciated!
>
> I tried to make a picture... maybe it helps a bit to understand
> what I was not able to explain above...
>
> No From To Message
>
> 1 external ownProxy Request: INVITE sip:+49xxx at us.de;user=phone
>
> 2 ownProxy external Status: 100 Giving a try
>
> rtpengine_offer(external
> internal replace-session-connection ICE=remove trust-address
> replace-origin)
>
> 3 to announcement
> server Request: INVITE sip:ANNC at mediaserver:5060;user=phone |
>
> 4 from announcement server Status: 100 Trying |
>
> 5 from announcement server Status: 183
> Session Progress |
>
> o=root
> 1135152900 1135152900 IN IP4 mediaserver
>
> m=audio 13788 RTP/AVP 8 101
>
> rtpengine_answer(internal external replace-session-connection
> ICE=remove trust-address replace-origin)
>
> 6 ownProxy external Status: 183 Session Progress
>
> o=root 1135152900
> 1135152900 IN IP4 ownProxy
>
> m=audio 23024 RTP/AVP 8 101
>
> < ========== ANNOUNCEMENT ========= >
>
> 7 from announcement server Status: 603 Declined
>
> openSIPS failure route
>
> and
> rtpengine_offer(external external replace-session-connection
> ICE=remove trust-address replace-origin)
>
> and new t_relay
>
> 8 to callee Request: INVITE
> sip:bob at externalcarrier:5060;user=phone
>
> 9 from callee Status: 100 Trying
>
> 10 from callee Status: 200 OK
>
> o=-
> 239036129 823630844 IN IP4 10.0.203.7
>
> m=audio 1044 RTP/AVP 8 101
>
> rtpengine_answer(external external
> replace-session-connection ICE=remove trust-address replace-origin)
>
> 11 ownProxy external Status: 200 OK
>
> o=- 239036129 823630844 IN IP4 ownProxy
>
> m=audio 23056 RTP/AVP 8 101
>
> < ========== RTP from B to A is ok, A send NO RTP to B
> ========= >
>
> 12 external ownProxy Request: ACK sip:ownProxy;did=5db.a2833e17
>
> 13 external ownProxy Request: BYE sip:ownProxy;did=5db.a2833e17
>
> 14 ownProxy external Status: 200 OK
>
> version: opensips 2.3.0 (x86_64/linux)
>
> flags: STATS: On, DISABLE_NAGLE, USE_MCAST, SHM_MMAP, PKG_MALLOC,
> F_MALLOC, FAST_LOCK-ADAPTIVE_WAIT
>
> ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN
> 16, MAX_URI_SIZE 1024, BUF_SIZE 65535
>
> poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
>
> git revision: fe0ebcb45
>
> main.c compiled on 09:02:02 Sep 14 2017 with gcc 6.3.0
>
> rtpengine version 5.4.0.0+0~mr5.4.0.0 git-master-a9d55c6
>
> Thanks and best regards!!!
>
> Marco
>
>
>
>
> _______________________________________________
>
> Users mailing list
>
> Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20171122/232b7872/attachment-0001.html>
More information about the Users
mailing list