Hi, William!
Make sure you call rtpengine_manage() in branch route, not in the
request route, otherwise all the changes will be inherited throughout
all the branches further created.
Best regards,
Răzvan
On 6/9/20 7:04 AM, William Jin wrote:
Below is a short config example.
route {
...
setflag(CallFWD);
rtpengine_manage(); #say the first call attempt need rtpengine
t_on_failure("handle_failure");
r_relay();
...
}
failure_route[handle_failure] {
...
if (isflagset(CallFWD)){route(handle_callfwd);}
...
}
route[handle_callfwd]{
...
xlog("L_INFO","RB=$rb(application/sdp)");
if (t_relay()){
xlog("L_INFO","Stateful relay done. RB=$rb(application/sdp)");
}
...
}
Looks like the t_relay in the handle_callfwd will inherit the SDP info
that rtpengine_manage entered in the first attempt.
Also, another interesting fact is that the SDP info is added while the
t_relay is called. Looks like the t_relay is using its data in memory
and re-write the SDP. the $rb(application/sdp) is not changed until
the t_relay is called.
How can I, for example, remove the rtpengine related SDP for the
second INVITE generated by the failure_route?
I tried rtpengine_delete() in handle_callfwd or rtpengine_manage() in
the failure_route which suppose to do rtpengine_delete also, but they
don't work as expected.
Thanks in advance.
--
Regards,
William Jin
------------------------------------------------------------------------
*From:* Users <[email protected]> on behalf of William
Jin <[email protected]>
*Sent:* Tuesday, 9 June 2020 9:09 AM
*To:* OpenSIPS users mailling list <[email protected]>
*Subject:* [OpenSIPS-Users] question about rtpengine_manage() in
failure_route
Hi All
May I know how can I rewrite the SDP (rtpengine) in the failure route?
The scenario is we use rtpengine_manage() in the first call attempt,
if it fails, it uses failure_route, however, we want to change the SDP
info.
For example, the call's first attempt is to an ipv6 UAC, when failed,
we try ipv4 UAC. We need to change the rtpengine address-family to IP4
so the c= line can follow with an IPv4 address.
We tried to use rtpengine_manage("address-family=IP4"), but looks like
the SDP still not changed.
Does anyone have any idea about this? Or is there any other way to
achieve this?
--
Regards,
William Jin
_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users