<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Hello,<br>
<br>
<div class="moz-cite-prefix">On 6/12/12 11:49 AM, SamyGo wrote:<br>
</div>
<blockquote
cite="mid:CAJUJwtghKv08GM1jpESz7545YNBaMRMGFX+5HnYVzVKfMhTX3w@mail.gmail.com"
type="cite">Yes, I saw the event routes in new version and that
seems relevant. Yes deleting entries from hash table is definitely
logical but what about hash entries for calls which are in-call
for like 4~10 hours !! will hashtable delete those entries ! <br>
</blockquote>
auto-expire was designed for this purpose, but, iirc, you said you
don't want to use it, any reason?<br>
<blockquote
cite="mid:CAJUJwtghKv08GM1jpESz7545YNBaMRMGFX+5HnYVzVKfMhTX3w@mail.gmail.com"
type="cite">
<div>
<br>
</div>
<div>So I was thinking that I definitely need a mechanism in my
hash table entries to refresh which enteries have corresponding
active calls (dialogs) and which entries should be deleted as no
call for them is found ! <br>
</div>
</blockquote>
<br>
You can correlate by call-id/dialog id the hash table content and
the list of active dialogs from dialog module -- you will have to
write some code for it.<br>
<br>
<blockquote
cite="mid:CAJUJwtghKv08GM1jpESz7545YNBaMRMGFX+5HnYVzVKfMhTX3w@mail.gmail.com"
type="cite">
<div>I simply can't depend on the expiry time of hased entries -
that will render the logic useless. Think of an entry which
shouldn't be in the table , an new call for that destination
comes in and Kamailio will think that (due to useless entry in
h-table) destination is in call and lets not send him any more
calls !!</div>
</blockquote>
<br>
This is only when BYE is missing, which with old version of dialog
was more or less the same -- dialog will look like being active
until dialog timeout is triggered (if auto-exipre and dialog timout
are the same value, then practically both modules will remove the
data associated with that call at the same time). With newest
version 3.3, dialog can do options keepalives, practically able to
detect if a call is down, then the event route is triggered and you
can delete from htable as well.<br>
<br>
Cheers,<br>
Daniel<br>
<blockquote
cite="mid:CAJUJwtghKv08GM1jpESz7545YNBaMRMGFX+5HnYVzVKfMhTX3w@mail.gmail.com"
type="cite">
<div><br>
</div>
<div><br>
<br>
<div class="gmail_quote">On Tue, Jun 12, 2012 at 2:36 PM,
Daniel-Constantin Mierla <span dir="ltr"><<a
moz-do-not-send="true" href="mailto:miconda@gmail.com"
target="_blank">miconda@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000"> Hello,
<div class="im"><br>
<br>
<div>On 6/7/12 1:34 PM, SamyGo wrote:<br>
</div>
<blockquote type="cite">
<div>Hi,</div>
<div><br>
</div>
sure, I'll give that debug messages a try tonight,
Also I was thinking of alternative approach and like
you said, you are using htable. If I've to use that
htable entry manually how do I make sure that any call
data gets only deleted/erased after the call hangsup
!? i.e I don't want the htable entry to get expired
and removed automatically for a call length greater
than 3 hours !!</blockquote>
<br>
</div>
the call ends when the BYE is coming through, so at that
time you can delete from htable -- if the BYE is missing,
then the htable auto-expire will clean it (like dialog
auto-expires will do it for dlg case).<br>
<br>
Just as side note, in 3.3.0, dialog module exports events
routes executed when a call is started or ended, so you
can do easier operations related to this events (e.g., no
matter dialog is ended by a bye or timeout, you will get a
specific event route executed), see:<br>
* <a moz-do-not-send="true"
href="http://kamailio.org/docs/modules/3.3.x/modules_k/dialog.html#id2556156"
target="_blank">http://kamailio.org/docs/modules/3.3.x/modules_k/dialog.html#id2556156</a><br>
<br>
Cheers,<br>
Daniel
<div>
<div class="h5"><br>
<blockquote type="cite">
<div> <br>
</div>
<div>Thanks alot,</div>
<div>Sammy</div>
<div><br>
<br>
<div class="gmail_quote">On Thu, Jun 7, 2012 at
4:17 PM, Daniel-Constantin Mierla <span
dir="ltr"><<a moz-do-not-send="true"
href="mailto:miconda@gmail.com"
target="_blank">miconda@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0
0 0 .8ex;border-left:1px #ccc
solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000"> Hello,<br>
<br>
do you get any hints about what happens if
you run with debug=3? When dialog is deleted
from database, is any other query sent to
delete the dialog vars? This features was
not used by me so far, still relying on
htable for my needs of such cases.<br>
<br>
You can send the logs here for
troubleshooting.<br>
<br>
Cheers,<br>
Daniel
<div>
<div><br>
<br>
<div>On 6/6/12 6:45 PM, SamyGo wrote:<br>
</div>
<blockquote type="cite">Hi Sir,
<div>I've used the funcation as you
informed. <i>$dlg_var(incall) =
$fU; </i> It do insert my desired
value into the dialog_var table but
it don't gets deleted on call hangup
!</div>
<div><br>
</div>
<div>I'm executing this code in my
ON_REPLY route:</div>
<div><br>
</div>
<div>
<div><font face="courier new,
monospace">onreply_route[REPLY_ONE]
{</font></div>
<div><font face="courier new,
monospace">
xdbg("incoming reply\n");</font></div>
</div>
<div><font face="courier new,
monospace">if(is_method("BYE"))</font></div>
<div>
<div><font face="courier new,
monospace"> {</font></div>
<div><font face="courier new,
monospace"> </font><span
style="font-family:'courier
new',monospace">
unset_dlg_profile("incall","$fU");</span></div>
<div><font face="courier new,
monospace">
dlg_resetflag("4");</font></div>
<div><font face="courier new,
monospace"> }</font></div>
<div>....</div>
<div><br>
</div>
<div><br>
</div>
<div>Still I can't seem to erase the
values :(</div>
<div><br>
</div>
<div>Please suggest.</div>
<div><br>
</div>
<div>Best Regards,</div>
<div>Sammy G.</div>
<div><br>
</div>
<br>
<div class="gmail_quote">On Mon, Jun
4, 2012 at 12:41 PM, SamyGo <span
dir="ltr"><<a
moz-do-not-send="true"
href="mailto:govoiper@gmail.com"
target="_blank">govoiper@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote"
style="margin:0 0 0
.8ex;border-left:1px #ccc
solid;padding-left:1ex">Thanks,
<div><br>
<div>The reason why I didn't
scroll down to it was
because it was not listed
under the functions list.
Thanks for this. I'll give
it a try. </div>
<div>Next question is, will
the values stored in this
dialog_vars be matched if I
execute the function <i>is_in_profile("my-profile")
?</i></div>
<div><br>
</div>
<div>The problem with the
alternative approach ,what I
think, could be that I'd
have to make sure that the
required KVPs are stored in
my hashtable for the length
of the call active.</div>
<div>I'd definitely not want
my configurations file to
behave abnormally if the
hastable entry value gets
expired meanwhile the
corresponding call is still
active.</div>
<div><br>
</div>
<div>Also Sir, I posted a
previous email regarding the
values not getting expired
from "dialog" table even
after the BYE !</div>
<div><br>
</div>
<div>Thanks again,</div>
<div>Regards,</div>
<div>Sammy G.</div>
<div>
<div>
<div><br>
</div>
<div><br>
<div class="gmail_quote">On
Mon, Jun 4, 2012 at
12:02 PM,
Daniel-Constantin
Mierla <span
dir="ltr"><<a
moz-do-not-send="true"
href="mailto:miconda@gmail.com" target="_blank">miconda@gmail.com</a>></span>
wrote:<br>
<blockquote
class="gmail_quote"
style="margin:0 0 0
.8ex;border-left:1px
#ccc
solid;padding-left:1ex">
<div
bgcolor="#FFFFFF"
text="#000000">
Hello,<br>
<br>
to store in a
value in a
dialog_var record,
you have to set a
PV for it:<br>
<br>
<a
moz-do-not-send="true"
href="http://kamailio.org/docs/modules/stable/modules_k/dialog.html#id2555403"
target="_blank">http://kamailio.org/docs/modules/stable/modules_k/dialog.html#id2555403</a><br>
<br>
Alternative, you
can use hashtable
with a key
composed from
dialog id (or
callid) and some
other string to
identify your
value.<br>
<br>
Cheers,<br>
Daniel
<div>
<div><br>
<br>
<div>On 6/2/12
9:47 AM,
SamyGo wrote:<br>
</div>
</div>
</div>
<blockquote
type="cite">
<div>
<div>Hello
<div><br>
</div>
<div><br>
</div>
<div>I've two
problems
regarding
dialog module-
used for
profiling
users that are
in-a-call.</div>
<div><br>
</div>
<div>My
topology is
quiet simple.</div>
<div><br>
</div>
<div>
<div><br>
SIP-USER-71141---->Kamailio------------->Asterisk[AGI]||</div>
<div>CALLEE<-----------------Kamailio<--------------------------------||</div>
<br>
</div>
<div><br>
</div>
<div>1- I wish
to store my
custom SIP
header value
in profiles.</div>
<div><br>
</div>
<div>I'm
having trouble
in figuring
out on how to
use
Dialog_vars
table in my
kamailio
server. I'm
using dialog
module to
profile SIP
users that are
in call or
making a call.
It works well
and the dialog
maintains an
entry when the
call is
established.
Now, the
difficult part
is that I want
my custom
header to be
inserted into
either dialog
table or
dialog_vars
table such
that when I do
a query "<b>is_in_profile("$avp(my_value)")</b>"
it returns me
a result.</div>
<div><br>
</div>
<div><br>
</div>
<div>2-
Alternative to
1, I can log
A,B leg
separately but
it doesn't
erase all data
on call
hangup.</div>
<div><br>
</div>
<div>Asterisk
AGI changes
the caller-id
of SIP-USERA
such that if
it was 71141
it would be
something like
"007" on its
way out to
destination
via kamailio.
Now, at this
point in
kamailio when
the call is
answered by
destination
the dialog
module saves
the call data
with values
corresponding
to "007" and
not "71141".</div>
<div>I have to
disable the <span
style="background-color:rgb(254,254,238)">"dialog", "detect_spirals" in
order to count
this one call
as two
separate
entities BUT
problem occurs
when on hangup
the B-Leg gets
erased from
the table but
the A-leg
remains in DB
for as long as
infinity.</span></div>
<div><span
style="background-color:rgb(254,254,238)"><br>
</span></div>
<div><span
style="background-color:rgb(254,254,238)">Please
help me in
this. </span></div>
<div><span
style="background-color:rgb(254,254,238)">Let
me know if
more details
are required
from me.</span></div>
<div><span
style="background-color:rgb(254,254,238)"><br>
</span></div>
<div><span
style="background-color:rgb(254,254,238)">Regards,</span></div>
<div><span
style="background-color:rgb(254,254,238)">Sammy
G.</span></div>
<br>
<fieldset></fieldset>
<br>
</div>
</div>
<pre>_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
<a moz-do-not-send="true" href="mailto:sr-users@lists.sip-router.org" target="_blank">sr-users@lists.sip-router.org</a>
<a moz-do-not-send="true" href="http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users" target="_blank">http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users</a><span><font color="#888888">
</font></span></pre>
<span><font
color="#888888">
</font></span></blockquote>
<span><font
color="#888888">
<br>
<pre cols="72">--
Daniel-Constantin Mierla - <a moz-do-not-send="true" href="http://www.asipto.com" target="_blank">http://www.asipto.com</a>
<a moz-do-not-send="true" href="http://twitter.com/#%21/miconda" target="_blank">http://twitter.com/#!/miconda</a> - <a moz-do-not-send="true" href="http://www.linkedin.com/in/miconda" target="_blank">http://www.linkedin.com/in/miconda</a>
Kamailio Advanced Training, Seattle, USA, Sep 23-26, 2012 - <a moz-do-not-send="true" href="http://asipto.com/u/katu" target="_blank">http://asipto.com/u/katu</a>
Kamailio Practical Workshop, Netherlands, Sep 10-12, 2012 - <a moz-do-not-send="true" href="http://asipto.com/u/kpw" target="_blank">http://asipto.com/u/kpw</a></pre>
<br>
<br>
</font></span></div>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
<pre cols="72">--
Daniel-Constantin Mierla - <a moz-do-not-send="true" href="http://www.asipto.com" target="_blank">http://www.asipto.com</a>
<a moz-do-not-send="true" href="http://twitter.com/#%21/miconda" target="_blank">http://twitter.com/#!/miconda</a> - <a moz-do-not-send="true" href="http://www.linkedin.com/in/miconda" target="_blank">http://www.linkedin.com/in/miconda</a>
Kamailio Advanced Training, Seattle, USA, Sep 23-26, 2012 - <a moz-do-not-send="true" href="http://asipto.com/u/katu" target="_blank">http://asipto.com/u/katu</a>
Kamailio Practical Workshop, Netherlands, Sep 10-12, 2012 - <a moz-do-not-send="true" href="http://asipto.com/u/kpw" target="_blank">http://asipto.com/u/kpw</a></pre>
<br>
<br>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
<pre cols="72">--
Daniel-Constantin Mierla - <a moz-do-not-send="true" href="http://www.asipto.com" target="_blank">http://www.asipto.com</a>
<a moz-do-not-send="true" href="http://twitter.com/#%21/miconda" target="_blank">http://twitter.com/#!/miconda</a> - <a moz-do-not-send="true" href="http://www.linkedin.com/in/miconda" target="_blank">http://www.linkedin.com/in/miconda</a>
Kamailio Advanced Training, Seattle, USA, Sep 23-26, 2012 - <a moz-do-not-send="true" href="http://asipto.com/u/katu" target="_blank">http://asipto.com/u/katu</a>
Kamailio Practical Workshop, Netherlands, Sep 10-12, 2012 - <a moz-do-not-send="true" href="http://asipto.com/u/kpw" target="_blank">http://asipto.com/u/kpw</a></pre>
<br>
<br>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
Daniel-Constantin Mierla - <a class="moz-txt-link-freetext" href="http://www.asipto.com">http://www.asipto.com</a>
<a class="moz-txt-link-freetext" href="http://twitter.com/#!/miconda">http://twitter.com/#!/miconda</a> - <a class="moz-txt-link-freetext" href="http://www.linkedin.com/in/miconda">http://www.linkedin.com/in/miconda</a>
Kamailio Advanced Training, Seattle, USA, Sep 23-26, 2012 - <a class="moz-txt-link-freetext" href="http://asipto.com/u/katu">http://asipto.com/u/katu</a>
Kamailio Practical Workshop, Netherlands, Sep 10-12, 2012 - <a class="moz-txt-link-freetext" href="http://asipto.com/u/kpw">http://asipto.com/u/kpw</a></pre>
<br>
<br>
</body>
</html>