Hello all,<br><br>I&#39;ve questions &#39;bout the redirect/forward with 30x requests.<br><br>Actually, it does not work, it seems the uac redirect module doesn&#39; t use the new contact for the new invite.<br><br>simple schema : pstn gw -&gt; kamailio -&gt; linksys -&gt; call forward unconditionnal to another pstn number -&gt; kamailio -&gt; gw pstn<br>

<br>the 302 as seen with ngrep tool :<br><br>#SIP/2.0 302 Moved Temporarily.<br>#To: &lt;sip:B@sip_proxy;user=phone&gt;;tag=91515579fff6b8d1i0.<br>#From: &lt;sip:A@pstn_gw1;user=phone&gt;;tag=16627-UI-00020cf3-54eea92c4.<br>

#Call-ID: 16627-RO-00020cf2-4186e9762@pstn_gw1.<br>#CSeq: 81990 INVITE.<br>#Via: SIP/2.0/UDP sip_proxy;branch=z9hG4bK0f0c.22989b87.1.<br>#Via: SIP/2.0/UDP pstn_gw1:5060;rport=5060;received=ip_pstn_gw1;branch=z9hG4bK-25EA-243F3.<br>

#Record-Route: &lt;sip:sip_proxy;lr=on;ftag=16627-UI-00020cf3-54eea92c4;did=f65.bcc44f06&gt;.<br>#Contact: &lt;sip:C@sip_proxy&gt;.<br>#Diversion: &quot;B&quot; &lt;sip:B@sip_proxy&gt;;reason=unconditional.<br>#Server: Linksys/SPA942-6.1.3(a).<br>

<br>DBG:uac_redirect:shmcontact2dset: adding contact &lt;sip:C@sip_proxy&gt; <br>dest set : Contact: sip:B@ip_B, &lt;sip:C@sip_proxy&gt;;q=0.01<br>contact $ct: &lt;sip:pstn_gw1:5060&gt;<br><br>the second pstn gateway received a request to B, and not C (so it creates a loop through pstn ...).<br>

<br>in my config :<br><br>loadmodule &quot;uac.so&quot;<br>modparam(&quot;uac&quot;, &quot;rr_store_param&quot;, &quot;vsf&quot;)<br>modparam(&quot;uac&quot;, &quot;from_restore_mode&quot;, &quot;auto&quot;)<br><br>loadmodule &quot;uac_redirect.so&quot;<br>

modparam(&quot;uac_redirect&quot;, &quot;default_filter&quot;, &quot;accept&quot;)<br>modparam(&quot;uac_redirect&quot;,&quot;bflags&quot;, 1)<br><br>loadmodule &quot;diversion.so&quot;<br><br>failure_route[2]<br>{<br>        setdebug(4);<br>

<br>        if (t_check_status(&quot;301|302&quot;))<br>        {<br>                route(26)     # acc fwd<br>                $avp(s:acc_status) = &quot;cfu&quot;;<br><br>                if (!get_redirects(&quot;2:1&quot;))<br>

                {<br>                        xlog(&quot;L_NOTICE&quot;, &quot;failed to extract contact info from 30x header&quot;);<br>                        route(10);      # stop rtp<br>                        t_reply(&quot;480&quot;, &quot;Temporarily Unavailable&quot;);<br>

                        exit;<br>                }<br><br>                # flag 3xx status, open a new branch and back to find the new callee<br>                setflag(28);<br>                append_branch();<br>                t_on_branch(&quot;1&quot;);<br>

                route(3);     # search the new callee<br>                setdebug();<br>                exit;<br>        }<br><br>        t_on_branch(&quot;1&quot;);<br>        setdebug();<br>        route(3);       # find callee <br>

        route(12);      # local outbound<br>        route(10);      # stop rtp<br>}<br><br>I&#39;m using lcr module to route calls, kamailio v. 1.5.3.<br><br>I&#39;ve another question, is the 30x always considered as a failure_route ?<br>

<br>Any help and/or explanations about the tricks would be really appreciated ... thanks,<br><br clear="all">--<br>Samuel MULLER<br><a href="mailto:sml@l33.fr">sml@l33.fr</a><br>