<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<font face="monospace">Hi Denys and A Happy New Year,<br>
<br>
Let me check the pcap you PM'ed me.<br>
<br>
Best 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>
OpenSIPS eBootcamp 2021
<a class="moz-txt-link-freetext" href="https://opensips.org/training/OpenSIPS_eBootcamp_2021/">https://opensips.org/training/OpenSIPS_eBootcamp_2021/</a></pre>
<div class="moz-cite-prefix">On 12/22/21 10:18 AM, Denys Pozniak
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:CA+x3AxokCwQRvj06DS851AbrKmqstEEsUFm6d4LPaZtyv3hbFA@mail.gmail.com">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div dir="ltr">Hello!
<div><br>
</div>
<div>Yes, that's right, the documentation did not indicate that
TH should generate different Call-IDs for different incoming
branches...<br>
</div>
<div><br>
</div>
<div>But now there is still an open question about the work of
the B2B module. It just generates separate Call-IDs, but does
not forward the SIP CANCEL message (I will share the trace in
a private message).<br>
</div>
<div><br>
</div>
<div>Happy upcoming holidays!<br>
</div>
<div><br>
</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">вт, 21 дек. 2021 г. в 17:28,
Bogdan-Andrei Iancu <<a href="mailto:bogdan@opensips.org"
moz-do-not-send="true">bogdan@opensips.org</a>>:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div> <font face="monospace">Hi Denys,<br>
<br>
Doing TH with dialog does not provide you with different
call-ids for each branch. The TH (or changing) is done
between in (caller) and out (callee) sides. There is no
doc stating that each branch will get a different Call-ID
(I hope :D).<br>
<br>
Best regards,<br>
</font>
<pre cols="72">Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
<a href="https://www.opensips-solutions.com" target="_blank" moz-do-not-send="true">https://www.opensips-solutions.com</a>
OpenSIPS eBootcamp 2021
<a href="https://opensips.org/training/OpenSIPS_eBootcamp_2021/" target="_blank" moz-do-not-send="true">https://opensips.org/training/OpenSIPS_eBootcamp_2021/</a></pre>
<div>On 12/14/21 2:13 PM, Denys Pozniak wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">Hello!
<div><br>
</div>
<div>Bogdan,</div>
<div>I tested the combination of dialog + TH modules and
found out that this also does not work correctly if
the incoming call was forked.</div>
<div>Outgoing legs have the same Call-ID and tag,
although I would expect them to be different.<br>
</div>
<div><br>
</div>
<div>The configuration is exactly the same as in the
Documentation/Tutorials-Topology-Hiding</div>
<div>[root@f-proxy opensips]$ opensips -V<br>
version: opensips 3.2.3 (x86_64/linux)<br>
</div>
<div><br>
</div>
<div><br>
</div>
<div>ср, 6 окт. 2021 г. в 12:18, Bogdan-Andrei Iancu
<<a href="mailto:bogdan@opensips.org"
target="_blank" moz-do-not-send="true">bogdan@opensips.org</a>>:<br>
</div>
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px
0px 0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<div> <font face="monospace">Hi Denys,<br>
<br>
Before diving into the B2B dark corners, I would
strongly suggest to use OpenSIPS with dialog +
topology hiding modules, rather than B2B. The
B2B is not so friendly with parallel forking.<br>
<br>
And as time as you only need TH, dialog + TH is
be best way to do it.<br>
<br>
Best regards,<br>
</font>
<pre cols="72">Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
<a href="https://www.opensips-solutions.com" target="_blank" moz-do-not-send="true">https://www.opensips-solutions.com</a>
OpenSIPS eBootcamp 2021
<a href="https://opensips.org/training/OpenSIPS_eBootcamp_2021/" target="_blank" moz-do-not-send="true">https://opensips.org/training/OpenSIPS_eBootcamp_2021/</a></pre>
<div>On 9/7/21 2:14 PM, Denys Pozniak wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">Adding a scheme of the current
call-flow scenario maybe it is not completely
clear from the previous message:
<div><br>
</div>
<div>FreeSWITCH --(1-call)--> Fork Proxy
--(N-branches)--> SEMS --(N-calls)-->
Edge Proxy ----> N-devices<br>
<div><br>
</div>
</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">вт, 7 сент.
2021 г. в 12:57, Denys Pozniak <<a
href="mailto:denys.pozniak@gmail.com"
target="_blank" moz-do-not-send="true">denys.pozniak@gmail.com</a>>:<br>
</div>
<blockquote class="gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<div dir="ltr">Hello!
<div><br>
</div>
<div>Our service delivery logic is as
follows:<br>
Each user has an internal extension,
under which there are several devices
with their own identifier.<br>
With an incoming call to such a
subscriber, FreeSWITCH adds custom SIP
headers with these device identifiers.<br>
Further on these fields the superior
Proxy forks legs and then these legs
pass through the Sems to become
completely separate calls.<br>
<br>
Now there is a task to replace Sems with
OpenSIPS.<br>
</div>
<div>The script below works fine, but only
if the incoming calls are not forked<br>
</div>
<div><br>
</div>
<div><i>####### Routing Logic ########<br>
<br>
route{<br>
<br>
if (is_method("INVITE") &&
!has_totag()) {<br>
b2b_init_request("top
hiding");<br>
exit;<br>
}<br>
}<br>
<br>
route[b2b_logic_request] {<br>
b2b_pass_request();<br>
exit;<br>
}</i><br>
<br>
<div>If there is a fork with an answer
on some device, then OpenSIPS does not
forward the SIP CANCEL (Reason:
SIP;cause=200;text="Call completed
elsewhere") to the rest and these
devices keep ringing until timeout
(Reason:
SIP;cause=480;text="NO_ANSWER")<br>
</div>
<div>Please help understand the nature
of this behavior.<br>
</div>
<div><br>
</div>
<div>version: opensips 3.2.2
(x86_64/linux)<br>
</div>
<div><br>
</div>
<div><b>Incoming SIP INVITE:</b><br>
2021/09/07 11:38:30.737456 <a
href="http://192.168.27.84:5060"
target="_blank"
moz-do-not-send="true">192.168.27.84:5060</a>
-> <a
href="http://192.168.27.84:5080"
target="_blank"
moz-do-not-send="true">192.168.27.84:5080</a><br>
INVITE <a moz-do-not-send="true">sip:qq2s92mnbrda@192.168.27.126:5060;transport=udp</a>
SIP/2.0<br>
Record-Route: <a
moz-do-not-send="true"><sip:192.168.27.84;lr=on;ftag=3a8gNpgZQ89pj;did=8b.4a4;vst=AAAAAEcYQ0JfBhUaEEoOFQAAAAAAAAAAAAAJBjY-></a><br>
Record-Route: <a
moz-do-not-send="true"><sip:192.168.27.126;lr=on;did=8b01.a1d4></a><br>
Via: SIP/2.0/UDP
192.168.27.84;branch=z9hG4bKcc18.ec9a363ccc70d07691e11293d160cca6.1<br>
Via: SIP/2.0/UDP
192.168.27.126;branch=z9hG4bKcc18.accd8d8bac35ac66a172f6ce173c9a34.0<br>
Via: SIP/2.0/UDP
192.168.27.123;received=192.168.27.123;rport=5060;branch=z9hG4bKavcjKF58g9D1e<br>
Max-Forwards: 66<br>
From: "VOIP" <<a
href="mailto:sip%3A5009@192.168.27.123"
target="_blank"
moz-do-not-send="true">sip:5009@192.168.27.123</a>>;tag=3a8gNpgZQ89pj<br>
To: <<a
href="mailto:sip%3Aqq2s92mnbrda@192.168.27.84"
target="_blank"
moz-do-not-send="true">sip:qq2s92mnbrda@192.168.27.84</a>><br>
Call-ID:
33e8140a-8a62-123a-e1ba-001dd8b71cb2<br>
CSeq: 40949963 INVITE<br>
Contact: <<a
href="http://sip:mod_sofia@192.168.27.123:5060"
target="_blank"
moz-do-not-send="true">sip:mod_sofia@192.168.27.123:5060</a>><br>
Supported: timer, path, replaces<br>
Allow-Events: talk, hold, conference,
refer<br>
Privacy: none<br>
Content-Type: application/sdp<br>
Content-Disposition: session<br>
<br>
<b>Outgoing SIP INVITE:</b><br>
2021/09/07 11:38:30.737938 <a
href="http://192.168.27.84:5080"
target="_blank"
moz-do-not-send="true">192.168.27.84:5080</a>
-> <a
href="http://192.168.27.126:5060"
target="_blank"
moz-do-not-send="true">192.168.27.126:5060</a><br>
INVITE <a moz-do-not-send="true">sip:qq2s92mnbrda@192.168.27.126:5060;transport=udp</a>
SIP/2.0<br>
Via: SIP/2.0/UDP
192.168.27.84:5080;branch=z9hG4bK6ddf.d88b07f2.0<br>
To: <a
href="http://sip:qq2s92mnbrda@192.168.27.126:5060"
target="_blank"
moz-do-not-send="true">sip:qq2s92mnbrda@192.168.27.126:5060</a><br>
From: "VOIP" <<a
href="mailto:sip%3A5009@192.168.27.123"
target="_blank"
moz-do-not-send="true">sip:5009@192.168.27.123</a>>;tag=94fd20254e546fee730f360cf9860800<br>
CSeq: 40949964 INVITE<br>
Call-ID: B2B.331.6374211.1631007510<br>
Max-Forwards: 70<br>
Content-Length: 486<br>
User-Agent: OpenSIPS (3.2.2
(x86_64/linux))<br>
Content-Type: application/sdp<br>
Supported: timer, path, replaces<br>
P-Asserted-Identity: " VOIP" <<a
href="mailto:sip%3A5009@192.168.27.123"
target="_blank"
moz-do-not-send="true">sip:5009@192.168.27.123</a>><br>
Privacy: none<br>
Content-Disposition: session<br>
X-Call-ID:
33e8140a-8a62-123a-e1ba-001dd8b71cb2<br>
Contact: <<a
href="http://sip:5009@192.168.27.84:5080"
target="_blank"
moz-do-not-send="true">sip:5009@192.168.27.84:5080</a>><br>
<br>
<b>Incoming SIP CANCEL:</b><br>
2021/09/07 11:38:33.593381 <a
href="http://192.168.27.84:5060"
target="_blank"
moz-do-not-send="true">192.168.27.84:5060</a>
-> <a
href="http://192.168.27.84:5080"
target="_blank"
moz-do-not-send="true">192.168.27.84:5080</a><br>
CANCEL <a moz-do-not-send="true">sip:qq2s92mnbrda@192.168.27.126:5060;transport=udp</a>
SIP/2.0<br>
Via: SIP/2.0/UDP
192.168.27.84;branch=z9hG4bKcc18.ec9a363ccc70d07691e11293d160cca6.1<br>
Max-Forwards: 66<br>
From: "VOIP" <<a
href="mailto:sip%3A5009@192.168.27.123"
target="_blank"
moz-do-not-send="true">sip:5009@192.168.27.123</a>>;tag=3a8gNpgZQ89pj<br>
To: <<a
href="mailto:sip%3Aqq2s92mnbrda@192.168.27.84"
target="_blank"
moz-do-not-send="true">sip:qq2s92mnbrda@192.168.27.84</a>><br>
Call-ID:
33e8140a-8a62-123a-e1ba-001dd8b71cb2<br>
CSeq: 40949963 CANCEL<br>
Content-Length: 0<br>
Reason: SIP;cause=200;text="Call
completed elsewhere"<br>
<br>
<b>Outgoing SIP CANCEL by timeout
(with 27 sec delay):</b><br>
2021/09/07 11:39:01.100888 <a
href="http://192.168.27.84:5080"
target="_blank"
moz-do-not-send="true">192.168.27.84:5080</a>
-> <a
href="http://192.168.27.126:5060"
target="_blank"
moz-do-not-send="true">192.168.27.126:5060</a><br>
CANCEL <a moz-do-not-send="true">sip:qq2s92mnbrda@192.168.27.126:5060;transport=udp</a>
SIP/2.0<br>
Via: SIP/2.0/UDP
192.168.27.84:5080;branch=z9hG4bK6ddf.d88b07f2.0<br>
From: "VOIP" <<a
href="mailto:sip%3A5009@192.168.27.123"
target="_blank"
moz-do-not-send="true">sip:5009@192.168.27.123</a>>;tag=94fd20254e546fee730f360cf9860800<br>
Call-ID: B2B.331.6374211.1631007510<br>
To: <a
href="http://sip:qq2s92mnbrda@192.168.27.126:5060"
target="_blank"
moz-do-not-send="true">sip:qq2s92mnbrda@192.168.27.126:5060</a><br>
CSeq: 40949964 CANCEL<br>
Max-Forwards: 70<br>
Reason: SIP;cause=480;text="NO_ANSWER"<br>
User-Agent: OpenSIPS (3.2.2
(x86_64/linux))<br>
Content-Length: 0<br>
</div>
<div><br>
</div>
<div><br>
</div>
<div><br>
</div>
-- <br>
<div dir="ltr">
<div dir="ltr"><br>
<div>
<div>BR,</div>
<div>Denys Pozniak<br>
</div>
<div><br>
</div>
<div><br>
</div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
<br clear="all">
<div><br>
</div>
-- <br>
<div dir="ltr">
<div dir="ltr"><br>
<div>
<div>BR,</div>
<div>Denys Pozniak<br>
</div>
<div><br>
</div>
<div><br>
</div>
</div>
</div>
</div>
<br>
<fieldset></fieldset>
<pre>_______________________________________________
Users mailing list
<a href="mailto:Users@lists.opensips.org" target="_blank" moz-do-not-send="true">Users@lists.opensips.org</a>
<a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" target="_blank" moz-do-not-send="true">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a>
</pre>
</blockquote>
<br>
</div>
</blockquote>
</div>
</div>
<br clear="all">
<div><br>
</div>
-- <br>
<div dir="ltr">
<div dir="ltr"><br>
<div>
<div>BR,</div>
<div>Denys Pozniak<br>
</div>
<div><br>
</div>
<div><br>
</div>
</div>
</div>
</div>
</blockquote>
<br>
</div>
</blockquote>
</div>
<br clear="all">
<div><br>
</div>
-- <br>
<div dir="ltr" class="gmail_signature">
<div dir="ltr"><br>
<div>
<div>BR,</div>
<div>Denys Pozniak<br>
</div>
<div><br>
</div>
<div><br>
</div>
</div>
</div>
</div>
</blockquote>
<br>
</body>
</html>