On 01/16/2012 09:11 PM, JR Richardson wrote:
So my question; what is the difference between a drop; and exit; within the on_reply route
Remember that an onreply_route is a callback that allows you to intercept a reply, but the reply is forwarded by default afterward (if using stateful forwarding). This is different from a request route, where it's up to you to marshal everything, and to explicitly forward the message.
Thus, exiting an onreply_route has null effect. It doesn't do anything to stop the reply from being forwarded, because forwarding is the behaviour--the onreply_route is just a hook. In contrast, 'drop' explicitly drops the message and prevents further forwarding of the reply from taking place.
This is different than in a request route, where exiting precludes any forwarding action, because forwarding action must be taken explicitly -- e.g. t_relay().
-- Alex Balashov - Principal
Aaaah, concise explanation, once again, thanks for turning on the light bulb Alex.
JR
Hi,
Sorry, it was my mistake in the sample.
in the FAQ we have fixed this issue :-) http://code.google.com/p/homer/wiki/FAQ
*Q: I use HEP and see kamailio replying with 100 Trying, 200 OK. Why is that?*
A: The messages have been replied to by onreply_route; To disable replies, adjust your kamailio.cfg as follows:
onreply_route{ sip_capture(); drop; }
Wbr, Alexandr
1/17/2012 2:37 PM, JR Richardson wrote:
On 01/16/2012 09:11 PM, JR Richardson wrote:
So my question; what is the difference between a drop; and exit; within the on_reply route
Remember that an onreply_route is a callback that allows you to intercept a reply, but the reply is forwarded by default afterward (if using stateful forwarding). This is different from a request route, where it's up to you to marshal everything, and to explicitly forward the message.
Thus, exiting an onreply_route has null effect. It doesn't do anything to stop the reply from being forwarded, because forwarding is the behaviour--the onreply_route is just a hook. In contrast, 'drop' explicitly drops the message and prevents further forwarding of the reply from taking place.
This is different than in a request route, where exiting precludes any forwarding action, because forwarding action must be taken explicitly -- e.g. t_relay().
-- Alex Balashov - Principal
Aaaah, concise explanation, once again, thanks for turning on the light bulb Alex.
JR
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users