I've started adding sip_trace to my kamailios, and mostly have it working, but cannot figure out how to capture the outgoing calls from uac_reg.
I had to add:
reply_route { sip_trace(); }
onsend_route { sip_trace(); }
to capture those packets. What *_route {} does uac_reg target for its outgoing packets?
I read uac_reg.[ch], and see that it uses the t_request method from tm's struct tm_binds. And that the methods are defined via a call to load_tm_api(), and that t_request defaults to the request() function in tm/uac.c.
But I don't see from that which route chunk it uses.
-JimC
James,
I'm not sure there's any way to intercept endogenously generated specialty requests (like uac_reg requests) in route script. If there is, it would only be in something relatively low-level like the onsend_route.
uacreg may use TM callbacks internally to catch responses, but that doesn't mean it exposes them into route script hooks. I have never seen or heard of such a mechanism.
-- Alex
On 02/20/2016 04:24 PM, James Cloos wrote:
I've started adding sip_trace to my kamailios, and mostly have it working, but cannot figure out how to capture the outgoing calls from uac_reg.
I had to add:
reply_route { sip_trace(); }
onsend_route { sip_trace(); }
to capture those packets. What *_route {} does uac_reg target for its outgoing packets?
I read uac_reg.[ch], and see that it uses the t_request method from tm's struct tm_binds. And that the methods are defined via a call to load_tm_api(), and that t_request defaults to the request() function in tm/uac.c.
But I don't see from that which route chunk it uses.
-JimC
If your process is also acting as a SIP proxy, you may wish to consider preloading route headers into the UAC-generated message and sending the packets to the proxy port (where they would go through request_route as any other proxied request, and via onreply/failure routes for responses).
It does add overhead but the simplicity may be worth it for you.
Armen On Feb 20, 2016 1:27 PM, "Alex Balashov" abalashov@evaristesys.com wrote:
James,
I'm not sure there's any way to intercept endogenously generated specialty requests (like uac_reg requests) in route script. If there is, it would only be in something relatively low-level like the onsend_route.
uacreg may use TM callbacks internally to catch responses, but that doesn't mean it exposes them into route script hooks. I have never seen or heard of such a mechanism.
-- Alex
On 02/20/2016 04:24 PM, James Cloos wrote:
I've started adding sip_trace to my kamailios, and mostly have it
working, but cannot figure out how to capture the outgoing calls from uac_reg.
I had to add:
reply_route { sip_trace(); }
onsend_route { sip_trace(); }
to capture those packets. What *_route {} does uac_reg target for its outgoing packets?
I read uac_reg.[ch], and see that it uses the t_request method from tm's struct tm_binds. And that the methods are defined via a call to load_tm_api(), and that t_request defaults to the request() function in tm/uac.c.
But I don't see from that which route chunk it uses.
-JimC
-- Alex Balashov | Principal | Evariste Systems LLC 303 Perimeter Center North, Suite 300 Atlanta, GA 30346 United States
Tel: +1-800-250-5920 (toll-free) / +1-678-954-0671 (direct) Web: http://www.evaristesys.com/, http://www.csrpswitch.com/
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
On 02/22/2016 02:28 PM, Armen Babikyan wrote:
If your process is also acting as a SIP proxy, you may wish to consider preloading route headers into the UAC-generated message and sending the packets to the proxy port (where they would go through request_route as any other proxied request, and via onreply/failure routes for responses).
It does add overhead but the simplicity may be worth it for you.
That's a wise suggestion!