<h4 dir="auto">Pre-Submission Checklist</h4>



<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Commit message has the format required by CONTRIBUTING guide</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Commits are split per component (core, individual modules, libs, utils, ...)</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Each component has a single commit (if not, squash them into one commit)</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> No commits to README files for modules (changes must be done to docbook files<br>
in <code>doc/</code> subfolder, the README file is autogenerated)</li>
</ul>
<h4 dir="auto">Type Of Change</h4>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Small bug fix (non-breaking change which fixes an issue)</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> New feature (non-breaking change which adds new functionality)</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Breaking change (fix or feature that would change existing functionality)</li>
</ul>
<h4 dir="auto">Checklist:</h4>

<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> PR should be backported to stable branches</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Tested changes locally</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Related to issue #XXXX (replace XXXX with an open issue number)</li>
</ul>
<h4 dir="auto">Description</h4>
<p dir="auto">Two separate commits per component: TSILO and TM.<br>
Important, this implementation has been tested internally and is in use by us already.<br>
Contributions to both TSILO and TM are made so, that they save full back-compatibility and do not affect existing implementation.</p>
<hr>
<p dir="auto">TSILO: Add support of a lookup and branch creating by contact</p>
<p dir="auto">Improvement of the TSILO module, which allows to run a lookup using the provided RURI,<br>
but only to create a new branch for the Contact, which is set in the currently processed REGISTER.<br>
Or optionally a Contact URI value given as a parameter to the function.<br>
If the Contact URI for a lookup, is given as a parameter,<br>
it is possible to provide it as a pseudo-variable.</p>
<p dir="auto">Hence it is now possible to append new branch(es) for only UAC(s)<br>
getting REGISTERED at the moment of calling 'ts_append_by_contact()'.</p>
<p dir="auto">Previously it was only possible to call 'ts_append()' and create new branches<br>
for all previously present location records (for this specific URI), which was in some circumstsances undersired.</p>
<p dir="auto">New script functions introduced:</p>
<ul dir="auto">
<li>ts_append_by_contact(table, ruri [, contact])</li>
</ul>
<p dir="auto">New module functions introduced:</p>
<ul dir="auto">
<li>w_ts_append_by_contact2() / ki_ts_append_by_contact()</li>
<li>w_ts_append_by_contact3 / ki_ts_append_by_contact_uri()</li>
<li>ts_append_by_contact() / ts_append_by_contact_to()</li>
</ul>
<p dir="auto">Backwards compatibility is saved, the new functionality is not overlapping with<br>
the previously existing implementation, hence it only acts when the new script function<br>
ts_append_by_contact() is used.</p>
<p dir="auto">The documentation has been updated accordingly.</p>
<hr>
<p dir="auto">TM: API improvement, new function introduced: t_append_branch_by_contact()</p>
<p dir="auto">New module functions introduced:</p>
<ul dir="auto">
<li>t_append_branch_by_contact()</li>
</ul>
<p dir="auto">This commit introduces a possibility of TM's API to append a branch<br>
based on specific location (Contact's URI).</p>
<p dir="auto">Indeed the 't_append_branch_by_contact()' is a corrected copy of<br>
the 't_append_branches()', which instead takes Contact as a parameter<br>
of str type and takes care to append a branch only for it.</p>
<p dir="auto">The separate function has been introduced, in order to save full<br>
back-compatibility, and not affect existing implementation.</p>

<hr>

<h4>You can view, comment on, or merge this pull request online at:</h4>
<p>  <a href='https://github.com/kamailio/kamailio/pull/2931'>https://github.com/kamailio/kamailio/pull/2931</a></p>

<h4>Commit Summary</h4>
<ul>
  <li><a href="https://github.com/kamailio/kamailio/pull/2931/commits/6bdb1dbdd9726b1b45c09dcc7a8611c94cbde5f2">tsilo: Add support of a lookup and branch creating by contact</a></li>
  <li><a href="https://github.com/kamailio/kamailio/pull/2931/commits/7d0f21edde6a816a75fd0453f50e8421b750b6bb">tm: API improvement, new function introduced: t_append_branch_by_contact()</a></li>
</ul>

<h4 style="display: inline-block">File Changes </h4> <p style="display: inline-block">(<a href="https://github.com/kamailio/kamailio/pull/2931/files">9 files</a>)</p>
<ul>
  <li>
    <strong>M</strong>
    <a href="https://github.com/kamailio/kamailio/pull/2931/files#diff-effdb0ad49793d50c31f81d1041a5113d43ba70190d126d9ebbb42974a1fe8f5">src/modules/tm/t_append_branches.c</a>
    (206)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/kamailio/kamailio/pull/2931/files#diff-cde8cde38ab686ea0fbf094d2e5413448da260bdd19c435599414087464842f5">src/modules/tm/t_append_branches.h</a>
    (4)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/kamailio/kamailio/pull/2931/files#diff-ca973340a7e8e3a3453d8196ef2a063ccc18128798b5098e1b88c1d3bc79b0cc">src/modules/tm/tm_load.c</a>
    (1)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/kamailio/kamailio/pull/2931/files#diff-8a105449f4160542cd3a64e2cdb6ea8ecc37016d5bcc6f7118f3d5caf16fa6e7">src/modules/tm/tm_load.h</a>
    (1)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/kamailio/kamailio/pull/2931/files#diff-03ead9261fdb2e66dd9fd61917414e3b3b8b0b116a600df82b5ea3ff5f1487e8">src/modules/tsilo/doc/tsilo.xml</a>
    (5)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/kamailio/kamailio/pull/2931/files#diff-d08914a1490d9d3644df4d486f762e6f7ef1b77767b474861ab9c7cfc727bdde">src/modules/tsilo/doc/tsilo_admin.xml</a>
    (54)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/kamailio/kamailio/pull/2931/files#diff-7c58491ba6f22f14c9dfdb75ff2430425340c30e1f2f17bb33388410359c85a2">src/modules/tsilo/ts_append.c</a>
    (116)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/kamailio/kamailio/pull/2931/files#diff-14ef86c84d3db6f704a3c9563f0c7be43301ca02db04bad86c88b6dac74ca8a5">src/modules/tsilo/ts_append.h</a>
    (2)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/kamailio/kamailio/pull/2931/files#diff-d4f044cee08620cb71c133ed1b3216cf41e759495d419b35bafded6ecd06649f">src/modules/tsilo/tsilo.c</a>
    (269)
  </li>
</ul>

<h4>Patch Links:</h4>
<ul>
  <li><a href='https://github.com/kamailio/kamailio/pull/2931.patch'>https://github.com/kamailio/kamailio/pull/2931.patch</a></li>
  <li><a href='https://github.com/kamailio/kamailio/pull/2931.diff'>https://github.com/kamailio/kamailio/pull/2931.diff</a></li>
</ul>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/kamailio/kamailio/pull/2931">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/ABO7UZLELDANMP5RKDMECWDULU5YFANCNFSM5H5GTKZQ">unsubscribe</a>.<br />Triage notifications on the go with GitHub Mobile for <a href="https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675">iOS</a> or <a href="https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub">Android</a>.
<img src="https://github.com/notifications/beacon/ABO7UZN6BP4CYLYIQQM4KA3ULU5YFA5CNFSM5H5GTKZ2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4PVWOBSQ.gif" height="1" width="1" alt="" /></p>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/kamailio/kamailio/pull/2931",
"url": "https://github.com/kamailio/kamailio/pull/2931",
"name": "View Pull Request"
},
"description": "View this Pull Request on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>