Have you listed the profile via kamctl or kamcmd? The commands are in
the readme:
Is the afferent profile listing any dialog?
Cheers,
Daniel
On 8/23/13 2:50 PM, Gertjan Wolzak wrote:
Hello Carlos,
I have been looking at your module, can't wait to work with it,
especially the prepaid part.
But as this system is in production, can't just start experimenting,
want to.... But cant.
So just have to wait for some tips on the cli....
But thanks.
Rgds,
Gertjan
*From:*sr-users-bounces@lists.sip-router.org
[mailto:sr-users-bounces@lists.sip-router.org] *On Behalf Of *Carlos
Ruiz Díaz
*Sent:* vrijdag 23 augustus 2013 14:37
*To:* Kamailio (SER) - Users Mailing List
*Subject:* Re: [SR-Users] hanging active dialog...
I don't know what exactly happened in your case but if you don't have
time to investigate you can try cnxcc module [1] channel control to
achieve the same goal.
Take a look at the sample configuration file located in [2]
xlog("L_INFO", "Setting up channel based credit control")/;/
$var(max_chan) *=* 2;
$var(retcode) = cnxcc_set_max_channels("$var(client)",
"$var(max_chan)");
if ($var(retcode) *=*= -1) {
xlog("Error setting up credit control");
return;
}
$var(count) *=* -1;
if (!cnxcc_get_channel_count("$var(client)",
"$var(count)")) {
xlog("Error getting customer's channel count")/;/
}
xlog("L_INFO", "CNXCC ROUTE: $var(client) has $var(count)
call(s)")/;/
if ($var(retcode) < -1) {
xlog("Too many channels for customer")/;/
sl_send_reply(403, "Forbidden")/;/
if (!cnxcc_terminate_all("$var(client)")) {
xlog("Error terminating customer's
calls")/;/
}
exit/;/
}
[
1]http://kamailio.org/docs/modules/devel/modules/cnxcc.html
[
2]https://github.com/caruizdiaz/cnxcc/blob/master/example/kamailio-cnxcc.cfg
Regards,
Carlos
On Fri, Aug 23, 2013 at 5:16 AM, Gertjan Wolzak <g.wolzak(a)foize.com
<mailto:g.wolzak@foize.com>> wrote:
Goodmorning All,
I use the following route to check for concurrent calls by the same
user, if a concurrent call is tried it is not allowed.
route[CONCURRENT]
{
xlog("SCRIPT: Conccurrent call check");
if(!get_profile_size("caller","$fu","$avp(nrcalls)"))
{
sl_send_reply("403", "Call not matching profile");
exit;
}
xlog("SCRIPT: caller value for $fu is $avp(nrcalls)");
if($avp(nrcalls)>= 1)
{
sl_send_reply("403", "Active calls limit exceeded");
exit;
}
dlg_manage();
if(!set_dlg_profile("caller","$fu"))
{
sl_send_reply("500", "No new channels in this
profile");
exit;
}
xlog("SCRIPT: caller value for $fu is now $avp(nrcalls)");
}
Now I had a situation where a user could not call because the
get_profile_size for this user gave the value 1. So another call was
not allowed.
But the user did not have a call active. As no dialogs were active,
checked that.
I assume there can be a lot of reasons why this happens, also I want
to use the "I don't want to know the cause" method to solve this.
So I looked at the dialog module documentation, to see if I can just
clear the profile size for this specific user.
I wanted to use the profile_list_dlgs(8.6) to get the dialog details,
then the dlg_terminate_dlg(8.4) to, you guessed it, terminate that dialog.
But it's not clear to me how I can give those commands....
Is there a way to give those commands on the cli, if so can someone
please write down some examples...
Would be really appreciated.
Rgds,
Gertjan
_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users(a)lists.sip-router.org <mailto:sr-users@lists.sip-router.org>
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
--
Carlos
http://caruizdiaz.com
+595981146623
_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users(a)lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users