[sr-dev] git:master: modules/tm: Added branch_failure event route to tm documentation
Hugh Waite
hugh.waite at crocodile-rcs.com
Fri Apr 5 17:34:06 CEST 2013
Hi Olle,
On 05/04/2013 14:53, Olle E. Johansson wrote:
>> modules/tm: Added branch_failure event route to tm documentation
> Thank you for adding this route!
You're welcome!
> Formatting issue: I don't like the event route doc to come after the module API. We usually have the API docs as the last item.
That is easily fixed.
> Architecture/documentation issues:
>
> - Is it really an event route - or does it work as the other T_ON_FAILURE?
>
> - Would it be better to enable a route with t_on_branch_failure(ROUTE_NAME) ?
>
> - What's the architectural difference between an event_route and the other routes triggered by TM?
This branch-failure route has been implemented as an event route after
discussion with Daniel. (See
http://lists.kamailio.org/pipermail/sr-dev/2013-March/019191.html).
As a result, you cannot specify multiple named routes and enable them
with a t_on_branch_failure() function. There can only be one route and
it is enabled when it is defined.
> - Can I do everything I can do in FAILURE_ROUTE in this event route?
No. This event_route uses a new route type (a new BRANCH_FAILURE_ROUTE
flag internally) which means functions and PVs are limited to ones that
have this flag set. So far, I have enabled the functions that are
required to enable outbound flow retries.
Since this route is run in a very similar way to the failure_route, it
is likely that most functions that work in a FAILURE_ROUTE will also
work in a BRANCH_FAILURE_ROUTE just by enabling the flag, but it is a
matter of whether they are appropriate for this route.
> - How do I retarget and retransmit a request? The transaction i still open so I can't use t_relay like in failure route, or?
I wrote this with the intention of enabling outbound flow retries. This
is done by running t_next_contact_flow() and t_relay(), just like you
would in a failure_route. This creates a new branch and prevents the
failure_route from being run for this response.
> Many questions... :-)
Peter and I will be coming up with an kamailio.cfg that enables outbound
which will provide a working example, but if you can suggest further
details for the README that will help users understand, I will add them.
Regards,
Hugh
--
Hugh Waite
Principal Design Engineer
Crocodile RCS Ltd.
More information about the sr-dev
mailing list