<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Hi Bogdan<br>
<br>
I find a solution but I'm not sure this is a good one.<br>
When the callee sends BYE, it is handled as a request and dlg_onreq()
is called.<br>
In dlg_onreq(), teh code checks if there is a tag in To header. If this
is the case the messaged is not handled:<br>
<br>
void dlg_onreq(struct cell* t, int type, struct tmcb_params *param)<br>
{<br>
&nbsp;&nbsp;&nbsp; ...<br>
&nbsp;&nbsp;&nbsp; s = get_to(req)-&gt;tag_value;<br>
&nbsp;&nbsp;&nbsp; if (s.s!=0 &amp;&amp; s.len!=0)<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return;<br>
&nbsp;&nbsp;&nbsp; ...<br>
}<br>
<br>
I propose to modify as follow:<br>
<br>
void dlg_onreq(struct cell* t, int type, struct tmcb_params *param)<br>
{<br>
&nbsp;&nbsp;&nbsp; ...<br>
&nbsp;&nbsp;&nbsp; s = get_to(req)-&gt;tag_value;<br>
&nbsp;&nbsp;&nbsp; if (s.s!=0 &amp;&amp; s.len!=0)<br>
&nbsp;&nbsp;&nbsp; {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; <b>dlg_onroute(req, 0, 0);</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&lt;-------------------------------------<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return;<br>
&nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; ...<br>
}<br>
<br>
The dlg_onroute() function will handle the BYE message.<br>
<br>
What do you think?<br>
<br>
Regards,<br>
Michel.<br>
<br>
<br>
Michel Bensoussan wrote:
<blockquote cite="mid45FD0588.8010507@extricom.com" type="cite">Hi
Bogdan
  <br>
  <br>
This is what I'm doing.
  <br>
  <br>
As you can see in the INVITE message:
  <br>
  <br>
&nbsp;&nbsp; Request-Line: INVITE <a class="moz-txt-link-abbreviated" href="mailto:sip:101@192.168.13.8:5060">sip:101@192.168.13.8:5060</a> SIP/2.0
  <br>
&nbsp;&nbsp; Message Header
  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Record-Route:
&lt;sip:192.168.13.86;lr=on;ftag=DB9D128321CC9C57E8B5;did=9f2.26ab69c5&gt;
  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ......
  <br>
  <br>
The BYE from callee pass through the proxy, but there is no
Record-Route header and the function loose_route() returns false.
  <br>
dlg_onroute() in called only when there is record-route. As defined in
dialog.c:mod_init(), line 240, dlg_onroute() is registered as RR
callback.
  <br>
How can I callback dlg_onroute in case there is no RR?
  <br>
  <br>
Regards,
  <br>
Michel.
  <br>
  <br>
Bogdan-Andrei Iancu wrote:
  <br>
  <blockquote type="cite">Hi Michel,
    <br>
    <br>
if you do record_route() also for the calls going outside your domain,
the BYE from callee should pass through your proxy.
    <br>
    <br>
regards,
    <br>
bogdan
    <br>
    <br>
Michel Bensoussan wrote:
    <br>
    <blockquote type="cite">Hello
      <br>
      <br>
The dialog module checks SIP messages only if the OpenSER in on
record-route header in function dlg_onroute().
      <br>
When the callee in registered on another SIP Server and the callee
sends BYE, the OpenSER is not on record-route header. In this case, the
dialog module doesn't detect end of call.
      <br>
Is there a way to callback the dlg_onroute() function not only in case
of record-route?
      <br>
      <br>
The configuration is as following:
      <br>
- Tel 101 registered to 192.168.13.8 (siproxd) (URI: <a class="moz-txt-link-abbreviated" href="mailto:101@192.168.13.8">101@192.168.13.8</a>)
(IP: 192.168.13.101)
      <br>
- Tel 155 registered to 192.168.13.86 (OpenSER) (URI:
<a class="moz-txt-link-abbreviated" href="mailto:155@192.168.13.86">155@192.168.13.86</a>) (IP: 192.168.13.155)
      <br>
- 155 is the caller and 101 is the callee.
      <br>
      <br>
Attached, message capture (ethereal) when the callee (101) terminate
the call.
      <br>
      <br>
Thanks.
      <br>
      <br>
Regards,
      <br>
Michel.
      <br>
      <br>
      <br>
------------------------------------------------------------------------
      <br>
      <br>
_______________________________________________
      <br>
Users mailing list
      <br>
<a class="moz-txt-link-abbreviated" href="mailto:Users@openser.org">Users@openser.org</a>
      <br>
<a class="moz-txt-link-freetext" href="http://openser.org/cgi-bin/mailman/listinfo/users">http://openser.org/cgi-bin/mailman/listinfo/users</a>
      <br>
&nbsp; </blockquote>
    <br>
    <br>
    <br>
  </blockquote>
  <br>
_______________________________________________
  <br>
Users mailing list
  <br>
<a class="moz-txt-link-abbreviated" href="mailto:Users@openser.org">Users@openser.org</a>
  <br>
<a class="moz-txt-link-freetext" href="http://openser.org/cgi-bin/mailman/listinfo/users">http://openser.org/cgi-bin/mailman/listinfo/users</a>
  <br>
  <br>
  <br>
</blockquote>
</body>
</html>