<!DOCTYPE html><html><head><title></title><style type="text/css">p.MsoNormal,p.MsoNoSpacing{margin:0}</style></head><body><div>Hi Aqs,<br></div><div>Thanks for the reply. <br></div><div>Without the append_branch() the headers are set but the rewritehostport() doesn't work and the request is re-sent to the PSTN gateway.<br></div><div><br></div><div>On Mon, 17 Dec 2018, at 3:51 PM, Aqs Younas wrote:<br></div><blockquote type="cite" id="fastmail-quoted"><div><div dir="auto">Remove append_branch().<br></div></div><div><div><br></div><div class="fastmail-quoted-gmail_quote"><div dir="ltr">On Mon, 17 Dec 2018 at 6:08 AM, Boden Garman <<a href="mailto:bpgarman@fastmail.fm">bpgarman@fastmail.fm</a>> wrote:<br></div><blockquote style="margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0.8ex;border-left-color:rgb(204, 204, 204);border-left-style:solid;border-left-width:1px;padding-left:1ex;" class="fastmail-quoted-gmail_quote"><div><u></u><br></div><div><div>Hi list,<br></div><div><br></div><div>I'm trying to play an announcement for my users when my PSTN gateway responds with a 404 Not Found (Reason: Q.850;cause=3), indicating a wrong number. I'm a bit lost and would appreciate any advice.<br></div><div><br></div><div>What I am seeing is two parallel SIP invites, one to my announcement server (hooray!) and one to the PSTN gateway again (which I don't want). How do I stop the original branch from starting again? <br></div><div><br></div><div>I've tried changing the order of rewritehostport and append_branch without any difference. I've also tried to use t_relay() instead of the RELAY route.<br></div><div><br></div><div>I'm using Kamailio 5.1 and have modified the deafult kamailio.cfg<br></div><div><br></div><div>Thanks!<br></div><div>Boden<br></div><div><br></div><div>I think this is the relevant parts of the config:<br></div><div><br></div><div># PSTN GW routing<br></div><div>route[PSTN] {<br></div><div>         [PSTN regex logic omitted]<br></div><div><br></div><div>        # classify as an outbound call<br></div><div>        set_dlg_profile("outbound_calls");<br></div><div><br></div><div>        # select a PSTN gateway from the dispatcher<br></div><div>        if (!ds_select_dst("66", "8")) {<br></div><div>                send_reply("404", "No destination");<br></div><div>                exit;<br></div><div>        }<br></div><div><br></div><div>        # failover if the selected PSTN gateway is down<br></div><div>        t_on_failure("RTF_DISPATCH");<br></div><div><br></div><div>        route(RELAY);<br></div><div>        exit;<br></div><div>}<br></div><div><br></div><div><br></div><div># Try next destinations in failure route<br></div><div>failure_route[RTF_DISPATCH] {<br></div><div>        xlog("inside RTF_DISPATCH");<br></div><div>        if (t_is_canceled()) {<br></div><div>                exit;<br></div><div>        }<br></div><div><br></div><div>        # wrong number from PSTN<br></div><div>        if (t_check_status("404")) {<br></div><div>                append_branch();<br></div><div>                append_hf("X-Application: announcement\r\n");<br></div><div>                append_hf("X-Announcement-Playback: wrong-number\r\n");<br></div><div>                route(TO_ANNOUNCEMENT);<br></div><div>                exit;<br></div><div>        }<br></div><div><br></div><div>        # next DST - only for 500 or local timeout<br></div><div>        if (t_check_status("500") or (t_branch_timeout() and !t_branch_replied())) {<br></div><div>                xlog("selecting next destination");<br></div><div>                if (ds_next_dst()) {<br></div><div>                        t_on_failure("RTF_DISPATCH");<br></div><div>                        route(RELAY);<br></div><div>                        exit;<br></div><div>                }<br></div><div>        }<br></div><div>}<br></div><div><br></div><div><br></div><div># Routing to announcement server<br></div><div>route[TO_ANNOUNCEMENT] {<br></div><div>        if (!is_method("INVITE")) {<br></div><div>                return;<br></div><div>        }<br></div><div>        rewritehostport('ANNOUNCEMENT_SERVER:5060');<br></div><div>        route(RELAY);<br></div><div>        exit;<br></div><div>}<br></div></div><div>_______________________________________________<br></div><div> Kamailio (SER) - Users Mailing List<br></div><div> <a href="mailto:sr-users@lists.kamailio.org">sr-users@lists.kamailio.org</a><br></div><div> <a rel="noreferrer" href="https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users">https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users</a><br></div></blockquote></div></div><div>_______________________________________________<br></div><div>Kamailio (SER) - Users Mailing List<br></div><div>sr-users@lists.kamailio.org<br></div><div>https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users<br></div><div><br></div></blockquote><div><br></div></body></html>