Ok,<br><br>you got the easiest way ... :)<br>thanks !<br><br>I used this one :<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # callee is behind an ipbx (avp ipbx) ?<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (is_avp_set(&quot;$avp(s:callee_ipbx)&quot;))<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xlog(&quot;L_INFO&quot;, &quot;-&gt; user is behind an ipbx ($avp(s:callee_ipbx)), set flag ipbx and rewrite request-uri&quot;);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; setflag(14);&nbsp;&nbsp;&nbsp; # flag IPBX<br><br>=&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; subst_user(&#39;/(.*)/$avp(s:callee_ipbx)/&#39;);<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xlog(&quot;L_INFO&quot;, &quot;-&gt; verif: to-uri = $tu , request-uri = $ru&quot;);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br><br>in the debug, result is the same :<br>Nov&nbsp; 6 11:32:32 ser0 kamailio[6616]: -&gt; user is behind an ipbx (spa9000), set flag ipbx and rewrite request-uri<br>Nov&nbsp; 6 11:32:32 ser0 kamailio[6616]: -&gt; verif: to-uri = <a href="mailto:sip%3A0123452001@sip.720.fr">sip:0123452001@sip.720.fr</a> , request-uri = <a href="mailto:sip%3Aspa9000@sip.720.fr">sip:spa9000@sip.720.fr</a><br>
<br>you remember to me that the pseudo-variable $rU is R/W too ...<br><br>many thanks !<br><br>.Sam.<br><br><br><br><div class="gmail_quote">On Wed, Nov 5, 2008 at 6:43 PM, Daniel-Constantin Mierla <span dir="ltr">&lt;<a href="mailto:miconda@gmail.com">miconda@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hello,<br>
<br>
if you want to set the R-URI username with the value from the avp, then use:<br>
<br>
$rU = $avp(s:callee_ipbx);<br>
<br>
Cheers,<br>
Daniel<div><div></div><div class="Wj3C7c"><br>
<br>
<br>
On 11/05/08 14:16, Samuel Muller wrote:<br>
</div></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div><div></div><div class="Wj3C7c">
Hello all,<br>
<br>
I&#39;ve a little question :<br>
I got a username in an AVP by avp_load_radius, and I would rewrite the uri with it.<br>
<br>
The objectives is to replace the r-uri by an ipbx uri, then forward the call to it by a new branch (to not loose the phone number requested).<br>
in this case : &nbsp;0123452000 is behind a spa9000. The user 0123452000 has an AVP called &quot;ipbx&quot;, that i&#39;m using to do some groups and permissions (plus the rewrite).<br>
<br>
actually, it does not work, i tried many ways :<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;# load radius attributes of the callee<br>
 &nbsp; &nbsp; &nbsp; &nbsp;if (!avp_load_radius(&quot;callee&quot;))<br>
 &nbsp; &nbsp; &nbsp; &nbsp;{<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;xlog(&quot;L_INFO&quot;,&quot;-&gt; user unknown in radius usr db : $ru&quot;);<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;route(15); &nbsp; &nbsp; &nbsp;# route PSTN<br>
 &nbsp; &nbsp; &nbsp; &nbsp;}<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;# verify the AVPs we got (caller and callee)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;xlog(&quot;L_INFO&quot;, &quot; -AVP------------------------------------- &quot;);<br>
 &nbsp; &nbsp; &nbsp; &nbsp;avp_print();<br>
 &nbsp; &nbsp; &nbsp; &nbsp;xlog(&quot;L_INFO&quot;, &quot; ----------------------------------------- &quot;);<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;# callee is behind an ipbx (avp ipbx) ?<br>
 &nbsp; &nbsp; &nbsp; &nbsp;if (is_avp_set(&quot;$avp(s:callee_ipbx)&quot;))<br>
 &nbsp; &nbsp; &nbsp; &nbsp;{<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;xlog(&quot;L_INFO&quot;, &quot;-&gt; callee is behind an ipbx : $avp(s:callee_ipbx)&quot;);<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;setflag(14); &nbsp; &nbsp;# flag IPBX<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#subst_user(&#39;/$rU$/$avp(s:callee_ipbx)/&#39;);<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#rewriteuri(&quot;sip:$avp(s:callee_ipbx)@$rd&quot;**);<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;rewriteuser($avp(s:callee_ipbx));<br>
 &nbsp; &nbsp; &nbsp; &nbsp;}<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;# callee in usrloc ?<br>
 &nbsp; &nbsp; &nbsp; &nbsp;if (lookup(&quot;location&quot;))<br>
 &nbsp; &nbsp; &nbsp; &nbsp;{<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;append_hf(&quot;P-hint: usrloc applied\r\n&quot;);<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;xlog(&quot;L_INFO&quot;,&quot;-&gt; registered user called : $tu&quot;);<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;route(7); &nbsp; &nbsp; &nbsp; # route FORWARD<br>
 &nbsp; &nbsp; &nbsp; &nbsp;}<br>
 &nbsp; &nbsp; &nbsp; &nbsp;else<br>
 &nbsp; &nbsp; &nbsp; &nbsp;{<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;xlog(&quot;L_INFO&quot;,&quot;-&gt; 480: local user not found in usrloc : $tu&quot;);<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sl_send_reply(&quot;480&quot;,&quot;Temporarily Unavailable&quot;);<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;drop;<br>
 &nbsp; &nbsp; &nbsp; &nbsp;}<br>
<br>
and in the debugs log :<br>
<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: &nbsp;-ROUTE--INBOUND--------------------------<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: DBG:avp_radius:load_avp_user: rc_auth Success<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: DBG:avp_radius:load_avp_user: AVP &#39;callee_asserted_id&#39;/0=&#39;0123452000&#39;/0 has been added<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: DBG:avp_radius:load_avp_user: AVP &#39;callee_ipbx&#39;/0=&#39;spa9000&#39;/0 has been added<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: &nbsp;-AVP-------------------------------------<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: INFO:avpops:ops_print_avp: p=0x7fb3d7e5cfe8, flags=0x0003<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: INFO:avpops:ops_print_avp: ^I^I^Iname=&lt;callee_ipbx&gt;<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: INFO:avpops:ops_print_avp: ^I^I^Ival_str=&lt;spa9000 / 7&gt;<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: INFO:avpops:ops_print_avp: p=0x7fb3d7e5cf88, flags=0x0003<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: INFO:avpops:ops_print_avp: ^I^I^Iname=&lt;callee_asserted_id&gt;<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: INFO:avpops:ops_print_avp: ^I^I^Ival_str=&lt;0123452000 / 10&gt;<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: INFO:avpops:ops_print_avp: p=0x7fb3d7e5ced8, flags=0x0003<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: INFO:avpops:ops_print_avp: ^I^I^Iname=&lt;caller_asserted_id&gt;<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: INFO:avpops:ops_print_avp: ^I^I^Ival_str=&lt;0123451011 / 10&gt;<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: INFO:avpops:ops_print_avp: p=0x7fb3d7e5ce38, flags=0x0003<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: &nbsp;-----------------------------------------<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: -&gt; callee is behind an ipbx : spa9000<br></div></div>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: DBG:registrar:lookup: &#39;$avp(<a href="mailto:s@sip.720.fr" target="_blank">s@sip.720.fr</a> &lt;mailto:<a href="mailto:s@sip.720.fr" target="_blank">s@sip.720.fr</a>&gt;&#39; Not found in usrloc<br>

Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: -&gt; 480: local user not found in usrloc : <a href="mailto:sip%3A0123452000@sip.720.fr" target="_blank">sip:0123452000@sip.720.fr</a> &lt;mailto:<a href="mailto:sip%253A0123452000@sip.720.fr" target="_blank">sip%3A0123452000@sip.720.fr</a>&gt;<div class="Ih2E3d">
<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: DBG:core:parse_headers: flags=ffffffffffffffff<br></div>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: DBG:core:check_via_address: params <a href="http://77.246.81.162" target="_blank">77.246.81.162</a> &lt;<a href="http://77.246.81.162" target="_blank">http://77.246.81.162</a>&gt;, <a href="http://192.168.0.134" target="_blank">192.168.0.134</a> &lt;<a href="http://192.168.0.134" target="_blank">http://192.168.0.134</a>&gt;, 0<div class="Ih2E3d">
<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: DBG:core:destroy_avp_list: destroying list 0x7fb3d7e5d040<br>
Nov &nbsp;5 13:04:51 ser0 kamailio[2930]: DBG:core:receive_msg: cleaning up<br>
<br>
<br>
-&gt; But, if I did it by :<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;if (uri =~ &quot;^sip:012345200{1}&quot;)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;{<br></div>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;rewriteuri(&quot;<a href="mailto:sip%3Aspa9000@sip.720.fr" target="_blank">sip:spa9000@sip.720.fr</a> &lt;mailto:<a href="mailto:sip%253Aspa9000@sip.720.fr" target="_blank">sip%3Aspa9000@sip.720.fr</a>&gt;&quot;);<div class="Ih2E3d">
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;}<br>
 &nbsp; &nbsp; &nbsp; &nbsp;if (lookup(&quot;location&quot;))<br>
 &nbsp; &nbsp; &nbsp; &nbsp;{<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;append_hf(&quot;P-hint: usrloc applied\r\n&quot;);<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;xlog(&quot;L_INFO&quot;,&quot;-&gt; registered user called : $tu&quot;);<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;route(7); &nbsp; &nbsp; &nbsp; # route FORWARD<br>
 &nbsp; &nbsp; &nbsp; &nbsp;}<br>
<br>
it works great, and the call is ok (the ipbx forward correctly the request the phone behind him).<br>
<br>
<br>
Anyone has an idea ? thanks in advance !<br>
<br>
<br>
-- <br>
Samuel MULLER<br>
<br></div>
------------------------------------------------------------------------<div class="Ih2E3d"><br>
<br>
_______________________________________________<br>
Users mailing list<br>
<a href="mailto:Users@lists.kamailio.org" target="_blank">Users@lists.kamailio.org</a><br>
<a href="http://lists.kamailio.org/cgi-bin/mailman/listinfo/users" target="_blank">http://lists.kamailio.org/cgi-bin/mailman/listinfo/users</a><br>
 &nbsp;<br>
</div></blockquote><font color="#888888">
<br>
-- <br>
Daniel-Constantin Mierla<br>
<a href="http://www.asipto.com" target="_blank">http://www.asipto.com</a><br>
<br>
</font></blockquote></div><br><br clear="all"><br>-- <br>Samuel MULLER<br>Ingénieur Reseaux &amp; Telecom<br>720 DEGRES<br>+33 (0)663 128 505<br><a href="mailto:sml@720.fr">sml@720.fr</a><br>