<p>The id and description columns are complementary in the database, they must not be loaded in the memory. The id is auto-increment and present in many tables only for provisioning purposes outside of kamailio usage and definitely not for dispatcher needs. Some database backends such as mongodb or berkleydb don't have id column, or it is a string.</p>
<p>I am also not convinced this addition brings any benefits. It is a lot of code for just a little purpose. If you want the status of a destination address, then you can add a functions specific for that - a function that takes an IP address as parameter and sets the value of the state in a variable.</p>
<p>The patch here clones the all dispatcher destinations structure, with all attributes, in xavps.</p>
<p>Moreover, there is an option right now to get all the destinations and their state in a json, via jsnorpcs:</p>
<ul>
<li><a href="https://www.kamailio.org/docs/modules/stable/modules/jsonrpcs.html#jsonrpcs.f.jsonrpc_exec">https://www.kamailio.org/docs/modules/stable/modules/jsonrpcs.html#jsonrpcs.f.jsonrpc_exec</a></li>
</ul>
<p>The you can use jansson module to access the attributes or the state field for destinations.</p>
<p>Ultimately, if you really need this cloning in xavps, maybe it is time to add a new module in top of dispatcher, with dispatcher exposing some inter-module api to access its structure. Otherwise I really want to keep dispatcher as lightweight as possible, its purpose is to be very slim/fast/scalable to fit well also in embedded devices .</p>

<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/1166#issuecomment-311378521">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/AF36ZZusKDSnYBtVtdiJc_TATxwSoZz_ks5sIROSgaJpZM4OEkis">mute the thread</a>.<img alt="" height="1" src="https://github.com/notifications/beacon/AF36ZUlA7HdDOOS1MJdi826MwMd4CiWYks5sIROSgaJpZM4OEkis.gif" width="1" /></p>
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
  <link itemprop="url" href="https://github.com/kamailio/kamailio/pull/1166#issuecomment-311378521"></link>
  <meta itemprop="name" content="View Pull Request"></meta>
</div>
<meta itemprop="description" content="View this Pull Request on GitHub"></meta>
</div>

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/kamailio/kamailio","title":"kamailio/kamailio","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/kamailio/kamailio"}},"updates":{"snippets":[{"icon":"PERSON","message":"@miconda in #1166: The id and description columns are complementary in the database, they must not be loaded in the memory. The id is auto-increment and present in many tables only for provisioning purposes outside of kamailio usage and definitely not for dispatcher needs. Some database backends such as mongodb or berkleydb don't have id column, or it is a string.\r\n\r\nI am also not convinced this addition brings any benefits. It is a lot of code for just a little purpose. If you want the status of a destination address, then you can add a functions specific for that - a function that takes an IP address as parameter and sets the value of the state in a variable.\r\n\r\nThe patch here clones the all dispatcher destinations structure, with all attributes, in xavps.\r\n\r\nMoreover, there is an option right now to get all the destinations and their state in a json, via jsnorpcs:\r\n\r\n  * https://www.kamailio.org/docs/modules/stable/modules/jsonrpcs.html#jsonrpcs.f.jsonrpc_exec\r\n\r\nThe you can use jansson module to access the attributes or the state field for destinations.\r\n\r\nUltimately, if you really need this cloning in xavps, maybe it is time to add a new module in top of dispatcher, with dispatcher exposing some inter-module api to access its structure. Otherwise I really want to keep dispatcher as lightweight as possible, its purpose is to be very slim/fast/scalable to fit well also in embedded devices ."}],"action":{"name":"View Pull Request","url":"https://github.com/kamailio/kamailio/pull/1166#issuecomment-311378521"}}}</script>