<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=iso-8859-7"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
@font-face
        {font-family:"Microsoft Sans Serif";
        panose-1:2 11 6 4 2 2 2 2 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;}
span.EmailStyle20
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:#595959;}
span.EmailStyle21
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:#595959;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link="#0563C1" vlink="#954F72"><div class=WordSection1><p class=MsoNormal><span style='color:#595959'>Hello Bogdan<o:p></o:p></span></p><p class=MsoNormal><span style='color:#595959'><o:p> </o:p></span></p><p class=MsoNormal><span style='color:#595959'>Thank you very much for the reply.<o:p></o:p></span></p><p class=MsoNormal><span style='color:#595959'><o:p> </o:p></span></p><p class=MsoNormal><span style='color:#595959'>So what I am doing now is the following<o:p></o:p></span></p><p class=MsoNormal><span style='color:#595959'><o:p> </o:p></span></p><p class=MsoNormal><span style='color:#595959'>if(is_method("INVITE") && !has_totag())<o:p></o:p></span></p><p class=MsoNormal><span style='color:#595959'>{<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>………<o:p></o:p></span></p><p class=MsoNormal style='text-indent:36.0pt'><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>if (has_body("application/sdp"))<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>          {<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>                      if (rtpengine_offer("$avp(rtpflags)"))<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>                                t_on_reply("REPLY_ANSWER");<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>          }<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>          else<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>          {<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>                      t_on_reply("REPLY_OFFER");<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>           }<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>…..<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>}<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>And what you suggest is to do it like that?<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'><o:p> </o:p></span></p><p class=MsoNormal><span style='color:#595959'>if(is_method("INVITE") && !has_totag())<o:p></o:p></span></p><p class=MsoNormal><span style='color:#595959'>{<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>………<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>            t_on_branch("1");<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>…..<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>}<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>branch_route[1]<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>{<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>….<o:p></o:p></span></p><p class=MsoNormal style='text-indent:36.0pt'><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>if (has_body("application/sdp"))<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>          {<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>                      if (rtpengine_offer("$avp(rtpflags)"))<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>                                t_on_reply("REPLY_ANSWER");<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>          }<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>          else<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>          {<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>                      t_on_reply("REPLY_OFFER");<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>           }<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>…..<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>}<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>branch_route[2]<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>{<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>….<o:p></o:p></span></p><p class=MsoNormal style='text-indent:36.0pt'><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>if (has_body("application/sdp"))<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>          {<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>                      if (rtpengine_offer("$avp(rtpflags)"))<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>                                t_on_reply("REPLY_ANSWER");<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>          }<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>          else<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>          {<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>                      t_on_reply("REPLY_OFFER");<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>           }<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>…..<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>}<o:p></o:p></span></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>failure_route[failure]<o:p></o:p></p><p class=MsoNormal>{<o:p></o:p></p><p class=MsoNormal>        if (t_check_status("(301)|(302)"))<o:p></o:p></p><p class=MsoNormal>        {<o:p></o:p></p><p class=MsoNormal>                get_redirects("1:1");<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>                uac_replace_from("","$tu");<o:p></o:p></p><p class=MsoNormal>                uac_replace_to("","$ru");<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>                if (!ds_select_dst("1", "0"))<o:p></o:p></p><p class=MsoNormal>                {<o:p></o:p></p><p class=MsoNormal>                        send_reply("500","Unable to route");<o:p></o:p></p><p class=MsoNormal>                        exit;<o:p></o:p></p><p class=MsoNormal>                }<o:p></o:p></p><p class=MsoNormal>                <span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'>t_on_branch("2");</span><o:p></o:p></p><p class=MsoNormal>                t_relay();<o:p></o:p></p><p class=MsoNormal>  <o:p></o:p></p><p class=MsoNormal>      }<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>        rtpengine_delete();<o:p></o:p></p><p class=MsoNormal>}<o:p></o:p></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Microsoft Sans Serif",sans-serif;color:#5F5F5F;letter-spacing:1.1pt;mso-fareast-language:EL'><o:p> </o:p></span></p><p class=MsoNormal><span style='color:#595959'><o:p> </o:p></span></p><p class=MsoNormal><span style='color:#595959'><o:p> </o:p></span></p><p class=MsoNormal><span style='color:#595959'>Best regards<o:p></o:p></span></p><p class=MsoNormal><span style='color:#595959'><o:p> </o:p></span></p><p class=MsoNormal><span style='color:#595959'><o:p> </o:p></span></p><p class=MsoNormal><span style='color:#595959'><o:p> </o:p></span></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b>From:</b> Bogdan-Andrei Iancu <bogdan@opensips.org> <br><b>Sent:</b> Τετάρτη, 6 Οκτωβρίου 2021 10:55<br><b>To:</b> apsaras@microbase.gr; OpenSIPS users mailling list <users@lists.opensips.org><br><b>Subject:</b> Re: [OpenSIPS-Users] Handling SDP on 302 request with mhome<o:p></o:p></p></div></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><span style='font-family:"Courier New"'>Hi Antonis,<br><br>I guess you should move the enagaing of the rtpengine (for the INVITE time) in the branch route, so it can do different SDP settings according to the destination of that branch.<br><br>How you do it now will set the SDP in INVITE only in relation to the first branch (so WAN) and reuse it for the next branches too.<br><br>Best regards,<br><br></span><o:p></o:p></p><pre>Bogdan-Andrei Iancu<o:p></o:p></pre><pre><o:p> </o:p></pre><pre>OpenSIPS Founder and Developer<o:p></o:p></pre><pre>  <a href="https://www.opensips-solutions.com">https://www.opensips-solutions.com</a><o:p></o:p></pre><pre>OpenSIPS eBootcamp 2021 <o:p></o:p></pre><pre>  <a href="https://opensips.org/training/OpenSIPS_eBootcamp_2021/">https://opensips.org/training/OpenSIPS_eBootcamp_2021/</a><o:p></o:p></pre><div><p class=MsoNormal>On 9/27/21 3:48 AM, Antonis Psaras wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><p class=MsoNormal><span style='color:#595959'>Hello Team</span><o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>I have an OpenSIPs with multi home (WAN / LAN) connected to an Asterisk (LAN). The problem I have is the following.<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>A call is coming from Asterisk to OpenSIPs LAN interface for a user registered on OpenSIPs. That user has call forwarding enabled and OpenSIPs receives a 302. <o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>That request is handled as follows<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>failure_route[failure]<o:p></o:p></p><p class=MsoNormal>{<o:p></o:p></p><p class=MsoNormal>        if (t_check_status("(301)|(302)"))<o:p></o:p></p><p class=MsoNormal>        {<o:p></o:p></p><p class=MsoNormal>                get_redirects("1:1");<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>                uac_replace_from("","$tu");<o:p></o:p></p><p class=MsoNormal>                uac_replace_to("","$ru");<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>                if (!ds_select_dst("1", "0"))<o:p></o:p></p><p class=MsoNormal>                {<o:p></o:p></p><p class=MsoNormal>                        send_reply("500","Unable to route");<o:p></o:p></p><p class=MsoNormal>                        exit;<o:p></o:p></p><p class=MsoNormal>                }<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>                t_relay();<o:p></o:p></p><p class=MsoNormal>  <o:p></o:p></p><p class=MsoNormal>      }<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>        rtpengine_delete();<o:p></o:p></p><p class=MsoNormal>}<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>A new INVITE is generated from OpenSIPs towards Asterisk but SDP negotiated is the initial (OpenSIPs to Client) with the WAN IP.<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>Is there a way to correct that?<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>Thank you in advance for your support.<o:p></o:p></p><p class=MsoNormal><br><br><o:p></o:p></p><pre>_______________________________________________<o:p></o:p></pre><pre>Users mailing list<o:p></o:p></pre><pre><a href="mailto:Users@lists.opensips.org">Users@lists.opensips.org</a><o:p></o:p></pre><pre><a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a><o:p></o:p></pre></blockquote><p class=MsoNormal><o:p> </o:p></p></div></body></html>