<HTML><BODY><div>
<div>Hi Henning,</div>

<div> </div>

<div>Yes I used it. But мy mistake was I called function «ts_store» before «t_on_branch»</div>

<div>Now, I’ve corrected it and everything is ok!</div>

<div> </div>

<div>Thank you so much for help!</div>

<div> <br>
 </div>

<blockquote style="border-left:1px solid #0857A6; margin:10px; padding:0 0 0 10px;">Вторник, 19 ноября 2019, 17:15 +03:00 от Henning Westerholt <hw@skalatan.de>:<br>
 
<div id="">
<div class="js-helper js-readmsg-msg">
<style type="text/css">
</style>
<div>
<div id="style_15741729190931420461_BODY">
<div class="class_1574248133">
<div class="WordSection1_mailru_css_attribute_postfix">
<p class="MsoNormal_mailru_css_attribute_postfix"><span style="mso-fareast-language:EN-US">Hello Oleg,</span></p>

<p class="MsoNormal_mailru_css_attribute_postfix"><span style="mso-fareast-language:EN-US"> </span></p>

<p class="MsoNormal_mailru_css_attribute_postfix"><span lang="EN-GB" style="mso-fareast-language:EN-US">quick question – do you already tried to setup a branch_route to interact with the branch?</span></p>

<p class="MsoNormal_mailru_css_attribute_postfix"><span lang="EN-GB" style="mso-fareast-language:EN-US"> </span></p>

<p class="MsoNormal_mailru_css_attribute_postfix"><span lang="EN-GB" style="mso-fareast-language:EN-US">t_on_branch(“MANAGE_BRANCH”);</span></p>

<p class="MsoNormal_mailru_css_attribute_postfix"><span lang="EN-GB" style="mso-fareast-language:EN-US">…</span></p>

<p class="MsoNormal_mailru_css_attribute_postfix"><span lang="EN-GB" style="mso-fareast-language:EN-US">branch_route[MANAGE_BRANCH] { …}</span></p>

<p class="MsoNormal_mailru_css_attribute_postfix"><span lang="EN-GB" style="mso-fareast-language:EN-US"> </span></p>

<p class="MsoNormal_mailru_css_attribute_postfix"><span lang="EN-GB" style="mso-fareast-language:EN-US">Cheers,</span></p>

<p class="MsoNormal_mailru_css_attribute_postfix"><span lang="EN-GB" style="mso-fareast-language:EN-US"> </span></p>

<p class="MsoNormal_mailru_css_attribute_postfix"><span lang="EN-GB" style="mso-fareast-language:EN-US">Henning</span></p>

<p class="MsoNormal_mailru_css_attribute_postfix"><span lang="EN-GB" style="mso-fareast-language:EN-US"> </span></p>

<div>
<p class="MsoNormal_mailru_css_attribute_postfix"><span lang="EN-GB" style="mso-fareast-language:EN-US">-- </span></p>

<p class="MsoNormal_mailru_css_attribute_postfix"><span lang="EN-GB" style="mso-fareast-language:EN-US">Henning Westerholt – </span><span style="mso-fareast-language:EN-US"><a href="https://skalatan.de/blog/" rel="noopener noreferrer" target="_blank"><span lang="EN-GB" style="color:#0563C1">https://skalatan.de/blog/</span></a></span></p>

<p class="MsoNormal_mailru_css_attribute_postfix"><span lang="EN-GB" style="mso-fareast-language:EN-US">Kamailio services – </span><span style="mso-fareast-language:EN-US"><a href="https://gilawa.com/" rel="noopener noreferrer" target="_blank"><span lang="EN-GB" style="color:#0563C1">https://gilawa.com</span></a></span><span style="mso-fareast-language:EN-US"> </span></p>

<p class="MsoNormal_mailru_css_attribute_postfix"><span lang="EN-GB">Kamailio Merchandising – </span><a href="https://skalatan.de/merchandising" rel="noopener noreferrer" target="_blank"><span lang="EN-GB" style="color:#0563C1">https://skalatan.de/merchandising</span></a></p>
</div>

<p class="MsoNormal_mailru_css_attribute_postfix"><span style="mso-fareast-language:EN-US"> </span></p>

<div class="mail-quote-collapse">
<div>
<div style="border-top:solid #e1e1e1 1.0pt; border:none; padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal_mailru_css_attribute_postfix" style="margin-left:35.4pt"><span data-email="sr-users-bounces@lists.kamailio.org" data-name="sr-users" data-quote-id="1690318340275807884" data-timestamp="1574104860" data-type="sender"><b>From:</b> sr-users <<a href="/compose?To=sr%2dusers%2dbounces@lists.kamailio.org">sr-users-bounces@lists.kamailio.org</a>> <b>On Behalf Of </b>Oleg Podguyko<br>
<b>Sent:</b> Monday, November 18, 2019 10:21 PM<br>
<b>To:</b> <a href="/compose?To=sr%2dusers@lists.kamailio.org">sr-users@lists.kamailio.org</a><br>
<b>Subject:</b> [SR-Users] How to intercept an INVITE after (ts_append)</span></p>
</div>
</div>

<div data-quote-id="1690318340275807884" data-type="body">
<p class="MsoNormal_mailru_css_attribute_postfix" style="margin-left:35.4pt"> </p>

<div>
<div>
<div>
<p class="MsoNormal_mailru_css_attribute_postfix" style="margin-left:35.4pt">Hello everybody!<br>
 <br>
Kamailio works as a Registrar. Additionally, rtpengine is deployed next to it. Using rtpgngine module I proxy media stream via rtpengine(rtpengine_manage()). I change SDP.  SiP2SIP calls work fine. Now I would like to have possibility to "wake up" sip-clients(at the android and ios phones) which are usually not on-line via push notification. Trying to use TSILO module. <br>
 <br>
# User location service<br>
route[LOCATION] {<br>
    lookup("location"); <br>
    $var(rc) = $rc;<br>
    if (is_method("INVITE")) <br>
    {<br>
        if (t_newtran()) <br>
        {<br>
            ts_store(); # if it a new transuction ,it will be store for some time.<br>
        }<br>
    }<br>
    switch ($var(rc)) <br>
    {<br>
    case  1:<br>
         route(RELAY);<br>
         break; <br>
    case -1:<br>
         break;<br>
    case -3:<br>
         send_reply("404", "Not Found");<br>
         exit;<br>
    case -2:<br>
         send_reply("405", "Method Not Allowed");<br>
         exit;<br>
    }<br>
}</p>
</div>

<div>
<p class="MsoNormal_mailru_css_attribute_postfix" style="margin-left:35.4pt"><br>
# Handle SIP registrations<br>
route[REGISTRAR] {<br>
    if (!is_method("REGISTER")) return;<br>
    if (!save("location")) <br>
    {<br>
        sl_reply_error();<br>
    }<br>
    ts_append("location", "$tu"); # if transuction for this sip-client is exist. The invite will be send. <br>
    exit;<br>
}</p>
</div>

<div>
<p class="MsoNormal_mailru_css_attribute_postfix" style="margin-left:35.4pt"><br>
If the client is not registered at the kamailio during the call. Then such calls are stored through the "ts_store" function for some time. And if during this time the client send register, kamailio  will be sent INVITE to it. But I have the problem. Such calls after "wake up"go through a special branch route that I don't know how to intercept. As a result, I can't change SDP(using rtpengite_manage commands) and rtp stream do not proxy via rtpengine… and call failed.</p>
</div>

<div>
<p class="MsoNormal_mailru_css_attribute_postfix" style="margin-left:35.4pt"> </p>
</div>

<div>
<p class="MsoNormal_mailru_css_attribute_postfix" style="margin-left:35.4pt">/usr/sbin/kamailio[9957]: exec: {1 2 REGISTER JxPcA9D1hIJ8PmkcnOvI7g..} *** cfgtrace:request_route=[REGISTRAR] c=[/etc/kamailio/kamailio.cfg] l=428 a=26 n=ts_append<br>
/usr/sbin/kamailio[9957]: DEBUG: {1 2 REGISTER JxPcA9D1hIJ8PmkcnOvI7g..} tsilo [ts_append.c:72]: ts_append(): transaction 36343:92182831 found for 777777777, going to append branches<br>
/usr/sbin/kamailio[9957]: DEBUG: {1 2 REGISTER JxPcA9D1hIJ8PmkcnOvI7g..} tm [t_lookup.c:1629]: t_lookup_ident_filter(): transaction found<br>
/usr/sbin/kamailio[9957]: DEBUG: {1 2 REGISTER JxPcA9D1hIJ8PmkcnOvI7g..} registrar [lookup.c:255]: lookup_helper(): contact for [777777777] found by address<br>
/usr/sbin/kamailio[9957]: DEBUG: {1 2 REGISTER JxPcA9D1hIJ8PmkcnOvI7g..} registrar [lookup.c:456]: lookup_helper(): instance is<br>
/usr/sbin/kamailio[9957]: DEBUG: {1 2 REGISTER JxPcA9D1hIJ8PmkcnOvI7g..} tm [t_append_branches.c:77]: t_append_branches(): transaction 36343:92182831 in status 0<br>
/usr/sbin/kamailio[9957]: DEBUG: {1 2 REGISTER JxPcA9D1hIJ8PmkcnOvI7g..} tm [t_append_branches.c:99]: t_append_branches(): Call uvAzTGsEV9N2ReDjmWoo8A..: 0 (1) outgoing branches<br>
/usr/sbin/kamailio[9957]: DEBUG: {1 2 REGISTER JxPcA9D1hIJ8PmkcnOvI7g..} tm [t_append_branches.c:126]: t_append_branches(): Current uri <a rel="noopener noreferrer"> sip:77777777@95.165.146.181:63618;transport=TCP;rinstance=8b1865b95767b7ba</a><br>
/usr/sbin/kamailio[9957]: DEBUG: {1 2 REGISTER JxPcA9D1hIJ8PmkcnOvI7g..} <core> [core/msg_translator.c:2933]: create_via_hf(): id added: <;i=1>, rcv proto=2<br>
/usr/sbin/kamailio[9957]: DEBUG: {1 2 REGISTER JxPcA9D1hIJ8PmkcnOvI7g..} tm [t_append_branches.c:149]: t_append_branches(): added branch [<a rel="noopener noreferrer">sip:777777777@95.165.146.181:63618;transport=TCP;rinstance=8b1865b95767b7ba</a>] with ruid [uloc-5dd2faa0-26e5-1]<br>
/usr/sbin/kamailio[9957]: DEBUG: {1 2 REGISTER JxPcA9D1hIJ8PmkcnOvI7g..} tm [t_append_branches.c:163]: t_append_branches(): Call uvAzTGsEV9N2ReDjmWoo8A..: 0 (0) outgoing branches after clear_branches()<br>
/usr/sbin/kamailio[9957]: DEBUG: {1 2 REGISTER JxPcA9D1hIJ8PmkcnOvI7g..} <core> [core/tcp_main.c:2238]: tcpconn_send_put(): send from reader (9957 (22)), reusing fd<br>
/usr/sbin/kamailio[9957]: DEBUG: {1 2 REGISTER JxPcA9D1hIJ8PmkcnOvI7g..} <core> [core/tcp_main.c:2473]: tcpconn_do_send(): sending...<br>
 </p>
</div>
</div>

<div>
<p class="MsoNormal_mailru_css_attribute_postfix" style="margin-left:35.4pt"> </p>
</div>

<div>
<p class="MsoNormal_mailru_css_attribute_postfix" style="margin-left:35.4pt"> </p>
</div>

<div>
<div>
<div>
<p class="MsoNormal_mailru_css_attribute_postfix" style="margin-left:35.4pt">--</p>
</div>

<div>
<p class="MsoNormal_mailru_css_attribute_postfix" style="margin-left:35.4pt">Oleg Podguyko</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
 

<div> </div>

<div data-signature-widget="container">
<div data-signature-widget="content">
<div>--<br>
Олег Подгуйко</div>
</div>
</div>

<div> </div>
</div>
</BODY></HTML>