[SR-Users] calling failure_route
David Villasmil
david.villasmil.work at gmail.com
Fri May 6 13:32:31 CEST 2022
Hello guys,
I ended up doing:
route[DISPATCH] {
# round robin dispatching on gateways group '1'
if(!ds_select_dst("1", "4")) {
send_reply("404", "No destination");
exit;
}
if(!is_ip($(du{s.rm,sip:}{re.subst,/:.*//})) && !dns_query("$du", "xyz"))
{
xlog("L_DBG", "--- SCRIPT: Marking $du as Inactive/NotProbing!\n");
ds_mark_dst("ip");
route(DISPATCH);
}
route(RELAY);
}
This will do a dns_query only if $du is not a valid ip address, and if the
resolution fails, will mark the destination as INACTIVE and try again with
the same route.
Hope this makes sense.
Regards,
David Villasmil
email: david.villasmil.work at gmail.com
phone: +34669448337
On Fri, May 6, 2022 at 8:50 AM Daniel-Constantin Mierla <miconda at gmail.com>
wrote:
> Hello,
>
> you can put the group of actions inside a route block and then execute
> that route block from failure_route and other locations in your config.
>
> Cheers,
> Daniel
> On 05.05.22 19:50, David Villasmil wrote:
>
> Hello guys,
>
> Is it possible to call a failure_route like a normal route?
>
> i.e.:
>
> {
> t_on_failure("myroute");
> }
> ...
>
> route("myroute");
>
> failure_route[myroute] {
> ...
> }
>
> Let me explain:
>
> I have this scenario where a DNS name may get deleted and a dns resolution
> will fail. There's no pinging to that gateway so i need to:
>
> - skip that gateway when dispatching to the setid
> - detect whether the domain is up and available
>
> And failover to the next gateway.
>
> I don't know of any other way so on the DISPATCH route, I'm doing:
>
> route[DISPATCH] {
> # round robin dispatching on gateways group '1'
> if(!ds_select_dst("1", "4")) {
> send_reply("404", "No destination");
> exit;
> }
> xlog("L_DBG", "--- SCRIPT: going to <$ru> via <$du>\n");
> if(dns_query("$du", "xyz")) {
> t_on_failure("RTF_DISPATCH");
> route(RELAY);
> } else {
> route(RTF_DISPATCH);
> }
> exit;
> }
>
> to try to resolve and if it fails, it will just go to the failover route.
>
>
> makes sense?
>
>
> Regards,
>
> David Villasmil
> email: david.villasmil.work at gmail.com
> phone: +34669448337
>
> __________________________________________________________
> Kamailio - Users Mailing List - Non Commercial Discussions
> * sr-users at lists.kamailio.org
> Important: keep the mailing list in the recipients, do not reply only to the sender!
> Edit mailing list options or unsubscribe:
> * https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
> --
> Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
> Kamailio Advanced Training - Online
> * https://www.asipto.com/sw/kamailio-advanced-training-online/
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20220506/ed979524/attachment.htm>
More information about the sr-users
mailing list