Hello, On 21/02/16 04:20, Juha Heinanen wrote: > when a ua that has registered over tcp has lost its connection to sip > proxy, t_relay() succeeds and branch failure route is executed: > > Feb 21 05:07:26 lohi /usr/bin/sip-proxy[20528]: INFO: ********** entering > branch_route [CONTACT_BRANCH] > Feb 21 05:07:26 lohi /usr/bin/sip-proxy[20528]: INFO: ********** activating > t_on_branch_failure("contact)" > Feb 21 05:07:26 lohi /usr/bin/sip-proxy[20528]: INFO: Routing INVITE > <sip:jh-0x16737a0@192.98.102.10:44186;transport=tcp> to contact via > <sip:192.98.102.10:51297;transport=tcp> > Feb 21 05:07:26 lohi /usr/bin/sip-proxy[20528]: WARNING: tm [t_fwd.c:1543]: > t_send_branch(): ERROR: t_send_branch: sending request on branch 0 failed > Feb 21 05:07:26 lohi /usr/bin/sip-proxy[20528]: INFO: ********* t_relay > success > Feb 21 05:07:31 lohi /usr/bin/sip-proxy[20480]: INFO: ********** entering > tm:branch-failure:contact > > but when a ua that has registered over websocket over tcp has lost is > connection to sip proxy, t_relay() fails and branch failure route is not > executed: > > Feb 21 05:08:26 lohi /usr/bin/sip-proxy[20523]: INFO: ********** entering > branch_route [CONTACT_BRANCH] > Feb 21 05:08:26 lohi /usr/bin/sip-proxy[20523]: INFO: ********** activating > t_on_branch_failure("contact)" > Feb 21 05:08:26 lohi /usr/bin/sip-proxy[20523]: INFO: Routing INVITE > <sip:an41pa6p@ggjdptrk9jm0.invalid;transport=ws> to contact via > <sip:192.98.102.10:39057;transport=ws> > Feb 21 05:08:26 lohi /usr/bin/sip-proxy[20523]: WARNING: <core> > [msg_translator.c:2756]: via_builder(): TCP/TLS connection (id: 0) for > WebSocket could not be found > Feb 21 05:08:26 lohi /usr/bin/sip-proxy[20523]: ERROR: <core> > [msg_translator.c:1974]: build_req_buf_from_sip_req(): could not create Via > header > Feb 21 05:08:26 lohi /usr/bin/sip-proxy[20523]: ERROR: tm [t_fwd.c:462]: > prepare_new_uac(): could not build request > Feb 21 05:08:26 lohi /usr/bin/sip-proxy[20523]: ERROR: tm [t_fwd.c:1712]: > t_forward_nonack(): ERROR: t_forward_nonack: failure to add branches > Feb 21 05:08:26 lohi /usr/bin/sip-proxy[20523]: INFO: ********* t_relay > failure > > in the latter case, is there some means to get access to the failing > branch in order to be able to unregister it, delete its rtpengine > session, etc? > > why can't kamailio behave the same way no matter if pure tcp connection > or one using websocket protocol over tcp connection fails? wobsocket management and communication is done in the websocket module, which probably does different type of processing. Making it like the pure tcp would be probably good.
The tcp connection id is anyhow associated with the registration/location record, usrloc module can cleanup them if the connection is no longer active. Also, there is now an event route executed when the tcp connection is closed, so it should happen for the websocket connections as well. Regards, Daniel -- Daniel-Constantin Mierla http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda Kamailio Advanced Training, Berlin, March 7-9, 2016 - http://www.asipto.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