<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>Hello,<br>
</p>
<div class="moz-cite-prefix">On 22.11.18 13:10, David EscartÃn
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:010b25c2-d3b8-c974-8cf1-79ccae356940@bts.io">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<p>hello Daniel</p>
<pre>Yes. it's how you say, i see records for a dialog once it's connected.
I did not check with another DB driver, but i guess it would be the same. I will try anycase if you think it worths it.
However, we would be looking for a scenario where the dialogs are stored at the DB just when created (dlg_manage) or when the intial invite is processed.
We would like to track them in early state, so if there is a switchover to another kamailio instance or a kamailio instance reset, a reply for example could be processed in the same dialog context, so we could apply the proper
features to it (rtpengine answer, custom dlg_var assigned during the initial invite treatment, etc).
This would be really useful in case a switchover for example to avoid OWA issues in our environment.
Do you think that could be feasible?</pre>
</blockquote>
<p>it is open source, so sure it is feasible. But as it was designed
in the first place, the module is writing the dialog record on
200ok for initial INVITE. I have some items related to dialog in
my todo list for quite some time (unique id refactoring, removing
dependence on tm module, ...), but I am not sure when I get to
them, hopefully in couple of months, before development for 5.3
release series ends.</p>
<p>All the best,<br>
Daniel</p>
<p><br>
</p>
<blockquote type="cite"
cite="mid:010b25c2-d3b8-c974-8cf1-79ccae356940@bts.io">
<pre>
best regards
david
</pre>
<div class="moz-cite-prefix">On 20/11/18 16:16, Daniel-Constantin
Mierla wrote:<br>
</div>
<blockquote type="cite"
cite="mid:c5690267-1a1f-3a5c-6147-38f9165bae57@gmail.com">
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8">
<p>Hello,</p>
<p>iirc, dialog module is writing to database when the call is
answered, before there should be no record in database for
that call.</p>
<p>Do you experience something different?</p>
<p>In other words, if you tried with mysql, is something
different in the behaviour for writing to storage when
comparing with using db_redis?<br>
</p>
<p>Cheers,<br>
Daniel<br>
</p>
<div class="moz-cite-prefix">On 19.11.18 10:53, David EscartÃn
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:fbe98744-6fbe-b136-b846-b946308fa515@bts.io">
<meta http-equiv="content-type" content="text/html;
charset=UTF-8">
<p>hello all</p>
<pre>using version 5.2.0-rc0 of kamailio, we are trying to track the dialogs of dialog module using db_redis module with this setup
#!define DBURL_DIALOG "redis://127.0.0.1:6390/7"
# ----- dialog params -----
modparam("dialog", "db_url", DBURL_DIALOG)
modparam("dialog", "enable_stats", 1)
modparam("dialog", "hash_size", 16384)
modparam("dialog", "dlg_flag", 31)
modparam("dialog", "dlg_match_mode", 1)
modparam("dialog", "db_mode", 1)
modparam("dialog", "timer_procs", 1)
modparam("dialog", "db_update_period", 1)
# ----- db_redis params -----
modparam("db_redis", "schema_path", "/usr/local/kamailio/share/kamailio/db_redis/kamailio")
modparam("db_redis", "keys", "dialog=entry:hash_entry,hash_id,callid")
modparam("db_redis", "keys", "dialog_vars=entry:hash_entry,hash_id,dialog_key,dialog_value")
and we see it works and if a kamailio instance resets in the middle of a dialog it recovers all the dlg_vars and values because we have the db_skip_load to 0 in dialog module.
But we have noticed that the redis is being written with the information of the dlg_var assigned until that moment when we get a provisional response with SDP, and we dom see a set on the redis with the dialog entry and id untill call is connected.
Nov 16 13:22:55 proxy-1 /usr/local/kamailio/sbin/kamailio[22424]: INFO: Call-ID <a class="moz-txt-link-abbreviated" href="mailto:1-1511@9.7.8.1" moz-do-not-send="true">1-1511@9.7.8.1</a>: Status 180
Nov 16 13:22:55 proxy-1 /usr/local/kamailio/sbin/kamailio[22424]: WARNING: db_redis [redis_dbase.c:1489]: db_redis_perform_update(): performing full table scan on table 'dialog' while performing update
Nov 16 13:22:55 proxy-1 /usr/local/kamailio/sbin/kamailio[22424]: WARNING: db_redis [redis_dbase.c:1492]: db_redis_perform_update(): scan key 0 is 'hash_entry'
Nov 16 13:22:55 proxy-1 /usr/local/kamailio/sbin/kamailio[22424]: WARNING: db_redis [redis_dbase.c:1492]: db_redis_perform_update(): scan key 1 is 'hash_id'
on the redis (we only see hmset for dialog_vars key)
1542374575.721816 [7 127.0.0.1:56858] "HMSET" <a class="moz-txt-link-rfc2396E" href="mailto:dialog_vars:entry::13725:16494:_uac_funew:sip:1231215423@voda.interconnect.manxtelecom.im" moz-do-not-send="true">"dialog_vars:entry::13725:16494:_uac_funew:sip:1231215423@voda.interconnect.manxtelecom.im"</a> "hash_entry" "13725" "hash_id" "16494" "dialog_key" "_uac_funew" "dialog_value" <a class="moz-txt-link-rfc2396E" href="mailto:sip:1231215423@voda.interconnect.manxtelecom.im" moz-do-not-send="true">"sip:1231215423@voda.interconnect.manxtelecom.im"</a>
1542374575.722001 [7 127.0.0.1:56858] "HMSET" <a class="moz-txt-link-rfc2396E" href="mailto:dialog_vars:entry::13725:16494:_uac_fu:sip:anonymous@voda.interconnect.manxtelecom.im" moz-do-not-send="true">"dialog_vars:entry::13725:16494:_uac_fu:sip:anonymous@voda.interconnect.manxtelecom.im"</a> "hash_entry" "13725" "hash_id" "16494" "dialog_key" "_uac_fu" "dialog_value" <a class="moz-txt-link-rfc2396E" href="mailto:sip:anonymous@voda.interconnect.manxtelecom.im" moz-do-not-send="true">"sip:anonymous@voda.interconnect.manxtelecom.im"</a>
....
</pre>
<pre>Nov 16 13:23:05 proxy-1 /usr/local/kamailio/sbin/kamailio[22425]: INFO: Call-ID <a class="moz-txt-link-abbreviated" href="mailto:1-1511@9.7.8.1" moz-do-not-send="true">1-1511@9.7.8.1</a>: Status 200
Nov 16 13:23:05 proxy-1 /usr/local/kamailio/sbin/kamailio[22425]: WARNING: db_redis [redis_dbase.c:1489]: db_redis_perform_update(): performing full table scan on table 'dialog_vars' while performing update
Nov 16 13:23:05 proxy-1 /usr/local/kamailio/sbin/kamailio[22425]: WARNING: db_redis [redis_dbase.c:1492]: db_redis_perform_update(): scan key 0 is 'hash_entry'
Nov 16 13:23:05 proxy-1 /usr/local/kamailio/sbin/kamailio[22425]: WARNING: db_redis [redis_dbase.c:1492]: db_redis_perform_update(): scan key 1 is 'hash_id'
Nov 16 13:23:05 proxy-1 /usr/local/kamailio/sbin/kamailio[22425]: WARNING: db_redis [redis_dbase.c:1492]: db_redis_perform_update(): scan key 2 is 'dialog_key'
Nov 16 13:23:05 proxy-1 /usr/local/kamailio/sbin/kamailio[22426]: WARNING: db_redis [redis_dbase.c:1489]: db_redis_perform_update(): performing full table scan on table 'dialog' while performing update
Nov 16 13:23:05 proxy-1 /usr/local/kamailio/sbin/kamailio[22426]: WARNING: db_redis [redis_dbase.c:1492]: db_redis_perform_update(): scan key 0 is 'hash_entry'
Nov 16 13:23:05 proxy-1 /usr/local/kamailio/sbin/kamailio[22426]: WARNING: db_redis [redis_dbase.c:1492]: db_redis_perform_update(): scan key 1 is 'hash_id'
Nov 16 13:23:05 proxy-1 /usr/local/kamailio/sbin/kamailio[22426]: WARNING: db_redis [redis_dbase.c:1489]: db_redis_perform_update(): performing full table scan on table 'dialog' while performing update
Nov 16 13:23:05 proxy-1 /usr/local/kamailio/sbin/kamailio[22426]: WARNING: db_redis [redis_dbase.c:1492]: db_redis_perform_update(): scan key 0 is 'hash_entry'
Nov 16 13:23:05 proxy-1 /usr/local/kamailio/sbin/kamailio[22426]: WARNING: db_redis [redis_dbase.c:1492]: db_redis_perform_update(): scan key 1 is 'hash_id'
Nov 16 13:23:05 proxy-1 /usr/local/kamailio/sbin/kamailio[22426]: INFO: Call-ID <a class="moz-txt-link-abbreviated" href="mailto:1-1511@9.7.8.1" moz-do-not-send="true">1-1511@9.7.8.1</a>: ACK received in A-Leg
on the redis
1542374585.810520 [7 127.0.0.1:56882] "SCAN" "0" "MATCH" "dialog:entry::*" "COUNT" "1000"
1542374585.810672 [7 127.0.0.1:56882] "EXISTS" <a class="moz-txt-link-rfc2396E" href="mailto:dialog:entry::13725:16494:1-1511@9.7.8.1" moz-do-not-send="true">"dialog:entry::13725:16494:1-1511@9.7.8.1"</a>
1542374585.810683 [7 127.0.0.1:56882] "HMGET" <a class="moz-txt-link-rfc2396E" href="mailto:dialog:entry::13725:16494:1-1511@9.7.8.1" moz-do-not-send="true">"dialog:entry::13725:16494:1-1511@9.7.8.1"</a> "hash_entry" "hash_id"
1542374585.810776 [7 127.0.0.1:56882] "HMSET" <a class="moz-txt-link-rfc2396E" href="mailto:dialog:entry::13725:16494:1-1511@9.7.8.1" moz-do-not-send="true">"dialog:entry::13725:16494:1-1511@9.7.8.1"</a> "state" "4" "timeout" "1542377585" "caller_cseq" "1" "callee_cseq" "0" "caller_contact" <a class="moz-txt-link-rfc2396E" href="mailto:sip:0000123456@9.7.8.1:5084" moz-do-not-send="true">"sip:0000123456@9.7.8.1:5084"</a> "callee_contact" <a class="moz-txt-link-rfc2396E" href="mailto:sip:50622959898@9.70.1.52:5060;transport=udp" moz-do-not-send="true">"sip:50622959898@9.70.1.52:5060;transport=udp"</a>
1542374585.810899 [7 127.0.0.1:56882] "SCAN" "0" "MATCH" "dialog:entry::*" "COUNT" "1000"
1542374585.810969 [7 127.0.0.1:56882] "EXISTS" <a class="moz-txt-link-rfc2396E" href="mailto:dialog:entry::13725:16494:1-1511@9.7.8.1" moz-do-not-send="true">"dialog:entry::13725:16494:1-1511@9.7.8.1"</a>
1542374585.810977 [7 127.0.0.1:56882] "HMGET" <a class="moz-txt-link-rfc2396E" href="mailto:dialog:entry::13725:16494:1-1511@9.7.8.1" moz-do-not-send="true">"dialog:entry::13725:16494:1-1511@9.7.8.1"</a> "hash_entry" "hash_id"
1542374585.811059 [7 127.0.0.1:56882] "HMSET" <a class="moz-txt-link-rfc2396E" href="mailto:dialog:entry::13725:16494:1-1511@9.7.8.1" moz-do-not-send="true">"dialog:entry::13725:16494:1-1511@9.7.8.1"</a> "state" "4" "timeout" "1542377585" "caller_cseq" "1" "callee_cseq" "0" "caller_contact" <a class="moz-txt-link-rfc2396E" href="mailto:sip:0000123456@9.7.8.1:5084" moz-do-not-send="true">"sip:0000123456@9.7.8.1:5084"</a> "callee_contact" <a class="moz-txt-link-rfc2396E" href="mailto:sip:50622959898@9.70.1.52:5060;transport=udp" moz-do-not-send="true">"sip:50622959898@9.70.1.52:5060;transport=udp"</a>
i don't see a redis set order to update the dialog entry key before the 200OK is received, to create and update state 1, etc. when created with dlg_manage command
could you please check if we might be missing something?
thanks a lot and regards
david
</pre>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
Kamailio (SER) - Users Mailing List
<a class="moz-txt-link-abbreviated" href="mailto:sr-users@lists.kamailio.org" moz-do-not-send="true">sr-users@lists.kamailio.org</a>
<a class="moz-txt-link-freetext" href="https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users" moz-do-not-send="true">https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users</a>
</pre>
</blockquote>
<pre class="moz-signature" cols="72">--
Daniel-Constantin Mierla -- <a class="moz-txt-link-abbreviated" href="http://www.asipto.com" moz-do-not-send="true">www.asipto.com</a>
<a class="moz-txt-link-abbreviated" href="http://www.twitter.com/miconda" moz-do-not-send="true">www.twitter.com/miconda</a> -- <a class="moz-txt-link-abbreviated" href="http://www.linkedin.com/in/miconda" moz-do-not-send="true">www.linkedin.com/in/miconda</a>
Kamailio World Conference -- <a class="moz-txt-link-abbreviated" href="http://www.kamailioworld.com" moz-do-not-send="true">www.kamailioworld.com</a>
Kamailio Advanced Training, Nov 12-14, 2018, in Berlin -- <a class="moz-txt-link-abbreviated" href="http://www.asipto.com" moz-do-not-send="true">www.asipto.com</a></pre>
</blockquote>
</blockquote>
<pre class="moz-signature" cols="72">--
Daniel-Constantin Mierla -- <a class="moz-txt-link-abbreviated" href="http://www.asipto.com">www.asipto.com</a>
<a class="moz-txt-link-abbreviated" href="http://www.twitter.com/miconda">www.twitter.com/miconda</a> -- <a class="moz-txt-link-abbreviated" href="http://www.linkedin.com/in/miconda">www.linkedin.com/in/miconda</a>
Kamailio World Conference -- <a class="moz-txt-link-abbreviated" href="http://www.kamailioworld.com">www.kamailioworld.com</a>
Kamailio Advanced Training, Nov 12-14, 2018, in Berlin -- <a class="moz-txt-link-abbreviated" href="http://www.asipto.com">www.asipto.com</a></pre>
</body>
</html>