[OpenSIPS-Users] multi-leg accounting in case of redirect
Bogdan-Andrei Iancu
bogdan at voice-system.ro
Wed Sep 3 12:23:24 CEST 2008
Hi Ruchir,
Well, was a long discussion, but I'm glad it finally worked out for you :)
Regards,
Bogdan
Ruchir wrote:
> Hi Bogdan,
>
> That works! Thank you very much for your help.
>
> On Thu, Aug 21, 2008 at 5:07 PM, Bogdan-Andrei Iancu
> <bogdan at voice-system.ro <mailto:bogdan at voice-system.ro>> wrote:
>
> I would suggest the following scenario:
> - use onreply_route to get the type of diversion ; be sure to
> enable the onreply_avp_mode
> (http://www.opensips.org/html/tm.html#id2560594)
> - set the actual src/dst for the new set in failure route when
> you create the new branch; the AVPs you set in onreply_route will
> be visible here.
>
> Regards,
> Bogdan
>
> Ruchir wrote:
>
>
> Oh I see. Then how we can get correct leg source, leg
> destination
> & forwarding reason?
>
>
> On Thu, Aug 21, 2008 at 3:50 PM, Bogdan-Andrei Iancu
> <bogdan at voice-system.ro <mailto:bogdan at voice-system.ro>
> <mailto:bogdan at voice-system.ro
> <mailto:bogdan at voice-system.ro>>> wrote:
>
> Hi Ruchir,
>
> I see in the onreply_route you get the diversion type
> (src_user_reply).
> Also you try to populate the src avp, but as in
> onreply_route
> a reply is processed, the $rU will not work - there is
> no RURI
> in a reply.
>
> Regards,
> Bogdan
>
> Ruchir wrote:
>
> I'm populating it from onreply route. Below is my
> onreply
> route.
> if($hdr(Diversion)!=null)
> {
> avp_delete("$avp(s:src_user_reply)");
> $avp(s:src_user_reply) = $hdr(Diversion);
> xlog("Client call forwarding to
> $avp(s:src_user_reply)\n ");
> avp_subst("$avp(s:src_user_reply)",
> "/(.*)<sip:(.*)@(.*)>;reason=(.*)/\4/");
> $avp(s:src) = $rU;
> switch($avp(s:src_user_reply))
> {
> case "unconditional":
> $avp(s:call_type) = "cwfd";
> break;
> case "user-busy":
> $avp(s:call_type) = "cwfdbusy";
> break;
> case "no-answer":
> $avp(s:call_type) = "cwfdnoanswer";
> break;
> default:
> log("no forwarding\n");
> }
> xlog("FORWARDING REASON: $avp(s:call_type)
> \n ");
>
> }
>
>
>
>
More information about the Users
mailing list