On 2/11/10 8:53 PM, Alex Balashov wrote:
>= 4xx reply.
better said: >=300 reply
On 02/11/2010 02:52 PM, Sven Schulz wrote:
> Hello,
>
> Ive been testing Kamailio 3.0 and drouting. In the documentation it
> states (Section 1.5 Routing Rule Processing) “The module will execute
> serial forking for each address in chain. The next address in chain is
> used only if the previously has failed.”
I think it is a bit too much said. You have to do some scripting, in
this way:
- first build the list of available destinations by calling do_routing(...)
- that will set first destination in R-URI and the rest will be kept in
avp list
- before forwarding with t_relay() arm a failure_route
- the failure_route is executed only when the forwarded invite is
replied with >=300 code
- if failure route is triggered, call next_routing() (maybe you need to
call append_branch() afterward as well)
- re-arm the failure route and forward again
- repeat until next_routing() is false (no more destinations available)
>
> What exactly defines a failure? Does it use ping or OPTIONS to determine
> if a GW is busy or down?
I haven't looked at drouting for this option, last time I got into that
code several weeks ago it wasn't no way to detect gw states. But
dispatcher, lcr and probably carrierroute modules use options to detect
availability of gateways.
Maybe if you can describe what you want to achieve, we can give some
hints what is best to use.
Hope it helps,
Daniel
Id like to
know exactly how drouting figures
this out.
Sven Schulz
Penn State University
Telecommunications and Network Services
814.865.6116
sip:sven@psu.edu
_______________________________________________
Kamailio (OpenSER) - Users mailing list
Users(a)lists.kamailio.org
http://lists.kamailio.org/cgi-bin/mailman/listinfo/users
http://lists.openser-project.org/cgi-bin/mailman/listinfo/users
--
Daniel-Constantin Mierla
SIP Server Professional Solutions
*
http://www.asipto.com/