<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<font face="monospace">Hi,<br>
<br>
Try using a local_route{} and do tracing also from there.<br>
<br>
Regards,<br>
</font>
<pre class="moz-signature" cols="72">Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
<a class="moz-txt-link-freetext" href="https://www.opensips-solutions.com">https://www.opensips-solutions.com</a>
<a class="moz-txt-link-freetext" href="https://www.siphub.com">https://www.siphub.com</a></pre>
<div class="moz-cite-prefix">On 17.12.2025 08:01, Sasmita Panda via
Users wrote:<br>
</div>
<blockquote type="cite"
cite="mid:CALf-Q479tOqmAyc3zfuGF4-ySKb3W9oKKVaozrnHbmoEqXT51Q@mail.gmail.com">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div dir="ltr">
<div>Hi All , </div>
<div><br>
</div>
<div>I have implemented one openisps b2b config with
event_datagram and mi_datagram module . Openisps receives the
INvite and publishes the data in the event socket and another
app listens to that and answers the call . </div>
<div><br>
</div>
<div>I am trying to capture the call flow with the tracer and
hep module to see the data in Homer GUI . I am not able to
capture the BYE message when opensips is generating the BYE .
If its receiving BYE that is getting capture although . </div>
<div><br>
</div>
<div>Below is my config : </div>
<div><br>
</div>
<div><br>
</div>
<div>####### Global Parameters #########<br>
<br>
log_level=5<br>
xlog_level=2<br>
stderror_enabled=yes<br>
syslog_enabled=yes<br>
syslog_facility=LOG_LOCAL0<br>
udp_workers=tcpworker<br>
tcp_workers=tcpworker<br>
<br>
socket=udp:private-ip:5070<br>
socket=tcp:private-ip:5070<br>
####### Modules Section ########<br>
<br>
socket=hep_tcp:private-ip:6061<br>
socket=hep_udp:private-ip:6062<br>
<br>
<br>
#set module path<br>
mpath="/usr/lib/x86_64-linux-gnu/opensips/modules/"<br>
<br>
loadmodule "tm.so"<br>
loadmodule "rr.so"<br>
loadmodule "sipmsgops.so"<br>
loadmodule "signaling.so"<br>
loadmodule "cfgutils.so"<br>
loadmodule "mi_fifo.so"<br>
loadmodule "proto_tcp.so"<br>
loadmodule "proto_udp.so"<br>
loadmodule "sl.so"<br>
loadmodule "event_datagram.so"<br>
loadmodule "mi_datagram.so"<br>
loadmodule "b2b_entities.so"<br>
<br>
#loadmodule "dialog.so"<br>
<br>
modparam("mi_fifo", "fifo_name", "/tmp/opensips_fifo")<br>
<br>
modparam("tm", "fr_timeout", 2)<br>
modparam("tm", "fr_inv_timeout", 3)<br>
modparam("tm", "restart_fr_on_each_reply", 0)<br>
modparam("tm", "onreply_avp_mode", 1)<br>
<br>
loadmodule "mi_http.so"<br>
loadmodule "httpd.so"<br>
<br>
<br>
modparam("httpd", "ip", "private-ip")<br>
modparam("httpd", "port", 8000)<br>
<br>
modparam("mi_datagram", "socket_name", "udp:private-ip:8002")<br>
<br>
<br>
modparam("b2b_entities", "script_req_route",
"b2b_request_route")<br>
<br>
modparam("b2b_entities", "script_reply_route",
"b2b_reply_trace")<br>
<br>
## modules for homer<br>
#loadmodule "sipcapture.so"<br>
loadmodule "tracer.so"<br>
loadmodule "proto_hep.so"<br>
loadmodule "proto_tcp.so"<br>
<br>
<br>
modparam("proto_hep", "hep_async", 1)<br>
#modparam("proto_hep", "homer5_on", 1)<br>
modparam("proto_hep", "hep_capture_id", 1)<br>
<br>
modparam("proto_hep", "hep_id","[hep_dst]
homer-domain:homer-port; transport=udp; version=3")<br>
<br>
modparam("tracer", "trace_on", 1)<br>
modparam("tracer", "trace_id", "[tid]uri=hep:hep_dst")<br>
<br>
<br>
####### Routing Logic ########<br>
<br>
route {<br>
<br>
<br>
#route(to_homer);<br>
#$var(trace_id) = "tid";<br>
<br>
<br>
if (!is_method("INVITE") || has_totag()) {<br>
send_reply(405, "Method not allowed!\n");<br>
exit;<br>
}<br>
<br>
if (is_method("INVITE") && !has_totag()) {<br>
trace("tid", "t");<br>
}<br>
<br>
ua_session_server_init($var(b2b_key), "drbh");<br>
xlog("Started new call for $var(b2b_key)\n");<br>
exit;<br>
}<br>
<br>
route[b2b_request_route] {<br>
# This route is called specifically for B2B internal
requests like BYE<br>
trace("tid", "t", "sip|xlog");<br>
<br>
# Arm a specific reply route for the 200 OK of this BYE<br>
if (is_method("BYE")) {<br>
t_on_reply("trace_bye_reply");<br>
}<br>
}<br>
<br>
onreply_route[trace_bye_reply] {<br>
# This will capture the 200 OK for the BYE<br>
trace("tid", "m", "sip|xlog");<br>
}<br>
<br>
route[b2b_reply_trace] {<br>
# Trace the 180, 200 OK, etc.<br>
# This replaces your failing onreply_route logic<br>
trace("tid", "t", "sip|xlog");<br>
}<br>
<br>
</div>
<div>I know I may be missing a very basic thing . But I have
tried so many options and it's still not working . Please help
. </div>
<div><br>
</div>
<div>
<div dir="ltr" class="gmail_signature"
data-smartmail="gmail_signature">
<div dir="ltr">
<div>
<div dir="ltr"><b><i>Thanks & Regards</i></b>
<div><i>Sasmita Panda</i></div>
<div><i>Senior Network Testing and Software Engineer</i></div>
<div><i>3CLogic , ph:07827611765</i></div>
</div>
</div>
</div>
</div>
</div>
</div>
<br>
<fieldset class="moz-mime-attachment-header"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
Users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Users@lists.opensips.org">Users@lists.opensips.org</a>
<a class="moz-txt-link-freetext" href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a>
</pre>
</blockquote>
<br>
</body>
</html>