[sr-dev] Fwd: Create multiple profiles using dialog module
Daniel-Constantin Mierla
miconda at gmail.com
Mon Jun 9 17:13:16 CEST 2014
Hello,
On 09/06/14 16:54, Carlos Ruiz Díaz wrote:
> Hi Rahul,
>
> /if($var(client1)!="null") /should be /if($var(client1)!="$null")/
even in the last IF, the double-quotes have to be removed around "$null"
-- just compare with $null, because doublequotes there enforces a static
string.
Cheers,
Daniel
> /. /You are doing a string comparison with the string value "/null/".
>
> Also make sure the dialog matching is correct: append these event
> routes to your config file:
>
> /event_route[dialog:start] {/
> /Â Â Â Â xlog("Dialog started");/
> /}/
> /
> /
> /event_route[dialog:end] {/
> /Â Â Â Â xlog("Dialog ended");/
> /}/
> /
> /
> /event_route[dialog:failed] {/
> /Â Â Â Â xlog("Dialog failed");/
> /}/
>
> You should see a "dialog started" and "dialog ended" for every
> successful call.
>
> Please do those modifications and see what happens.
>
> Regards,
> CarlosÂ
>
>
>
>
> On Mon, Jun 9, 2014 at 6:55 AM, Rahul MathuR <rahul.ultimate at gmail.com
> <mailto:rahul.ultimate at gmail.com>> wrote:
>
> Hello Carlos,
> Â
> Were you able to look at my configuration file ?
> Â
> Â
> Thanks !
>
>
> On Fri, Jun 6, 2014 at 5:04 AM, Carlos Ruiz DÃaz
> <carlos.ruizdiaz at gmail.com <mailto:carlos.ruizdiaz at gmail.com>> wrote:
>
> Hi Rahul,
>
> sorry, I couldn't find time to do it. I will take a look
> tomorrow, or most possibly during the weekend.
>
> Regards,
> Carlos
>
>
> On Thu, Jun 5, 2014 at 8:28 PM, Rahul MathuR
> <rahul.ultimate at gmail.com <mailto:rahul.ultimate at gmail.com>>
> wrote:
>
> Hello Carlos,
>
> Did you get a chance to look at the attached configuration
> file ?
>
>
> Warm Regds,
> Rahul Mathur
>
>
> On Thu, Jun 5, 2014 at 2:46 PM, Rahul MathuR
> <rahul.ultimate at gmail.com
> <mailto:rahul.ultimate at gmail.com>> wrote:
>
> Hi Carlos,
> Â
> Please find attached the configuration file which I am
> using.
> Kindly refer route[CNXCC] where I have tried to put
> the channel limitation per SIP Server.
> Â
> Â
> Thanks !
>
>
> On Wed, Jun 4, 2014 at 3:07 PM, Carlos Ruiz DÃaz
> <carlos.ruizdiaz at gmail.com
> <mailto:carlos.ruizdiaz at gmail.com>> wrote:
>
> Can you share your configuration file?
>
>
> On Wed, Jun 4, 2014 at 1:03 AM, Rahul MathuR
> <rahul.ultimate at gmail.com
> <mailto:rahul.ultimate at gmail.com>> wrote:
>
> HI Carlos,
> Â
> Thanks for reply.
> Â
> In my case the key is SIP Server IP. My
> kamailio Proxy is connected to many sip server
> IPs say 5. I want to limit maximum channels
> per sip server ip. So I set max channels per
> sip server ip as
> cnxcc_set_max_channels("$var(client1)",
> "$var(max_chan)"); and my $var(client1) =
> "10.97.116.36"; is one of 5 sip servers
> connected to Kamalio.
> Â
> Now I use your cnxcc_get_channel_count("$rd",
> "$var(count1)")) value(count1)Â to compare to
> the max_limit of the channels allowed for this
> sip server. Psuedo Variable $rd is coming
> correctly that is same as sips erver
> IP[$var(client1)].
> But the problem is that
> cnxcc_get_channel_count("$rd",
> "$var(count1)"))Â is always setting the value
> 1 in $var(count1) variable even though there
> are more calls runnning than what was set to
> be max_chan (which was 100 in my case).
> Â
> Any pointers to achieve this matter ?
> Â
> Â
> Â Â
>
>
> On Tue, Jun 3, 2014 at 2:18 PM, Carlos Ruiz
> DÃaz <carlos.ruizdiaz at gmail.com
> <mailto:carlos.ruizdiaz at gmail.com>> wrote:
>
> Hi Rahul,
>
> I don't understand your example. In that
> case, you are always using "10.97.116.36"
> as key, meaning that all calls will be
> hanging from same root.
>
> If you want to use the request-uri domain
> part, use $rd, not the full $ru. This will
> of course lead to 1 call being reported
> always, since request-URIs tend to be
> different from each other.
>
> Regards,
> Carlos
>
> Â
>
>
> On Tue, Jun 3, 2014 at 7:01 AM, Rahul
> MathuR <rahul.ultimate at gmail.com
> <mailto:rahul.ultimate at gmail.com>> wrote:
>
> Hi Carlos,
> Â
> Sorry for coming late on this one.
> Â
> the ruri value in my example is
> '10.97.116.36'
> and i have tried to configure kamailio
> to only cater 100 simultaneous calls
> on this SIP Server (10.97.116.36),
> after that it is to send 403.
> Â
> Below is the sample logic from
> kamailio.cfg
> ***********************************************************************************************************************
> Â #Below lines to show an example of
> how I am maintaining the business for
> Concurrent Call Restriction
> Â route[CNXCC]
> Â {
> Â
> Â Â Â Â Â Â Â Â Â
> $var(client1)Â Â Â Â Â Â Â Â Â Â =
> "10.97.116.36";
> Â Â $var(max_chan)Â Â = 100;
> Â #!ifdef CNXCC_CHANNEL
> Â Â Â Â Â Â Â Â Â xlog("L_INFO",
> "Setting up channel based credit
> control");
> Â
> Â Â Â Â Â Â Â Â Â $var(max_chan1) = 0;
> Â Â Â Â Â Â Â Â Â $var(retcode)Â Â =
> cnxcc_set_max_channels("$var(client1)",Â
> "$var(max_chan)");
> Â
> Â Â Â Â Â Â Â Â Â if ($var(retcode) ==
> -1) {
> Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
> xlog("Error setting up credit control");
> Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â return;
> Â Â Â Â Â Â Â Â Â }
> Â
> Â Â Â Â Â Â Â Â Â $var(count1)Â Â Â Â
> = -1;
> Â
> Â Â Â Â Â Â Â Â Â if
> (!cnxcc_get_channel_count("$rd",
> "$var(count1)")) {
> Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
> xlog("Error getting customer's channel
> count");
> Â Â Â Â Â Â Â Â Â }
> Â Â Â Â Â Â Â Â Â xlog("RAHUL : CNXCC
> ROUTE: $var(client1) has $var(count1)
> call(s)");
> Â Â Â Â Â Â Â Â Â xlog("L_INFO",
> "CNXCC ROUTE: $var(client1) has
> $var(count1)Â call(s)");
>
> Â
> Â Â Â Â Â Â Â Â Â if ($var(count1) ==
> $var(max_chan1)) {
> Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
> xlog("Too many channels for customer");
> Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
> sl_send_reply(403, "Forbidden");
> Â
> Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â exit;
> Â Â Â Â Â Â Â Â Â }
> Â #!endif
> ******************************************************************************************************************************************************
> Â
> Now the problem that I am facing is
> that with multiple UACs (all with same
> ruri - 10.97.116.36) dialing some pstn
> numbers, the value of "count1" remains
> 1 for all cases. Hence, my purpose is
> defeated because the restriction is
> not being laid and more than
> 'max_chan' no. of callers are able to
> make the call.
> Â
> Could you please help me achieve this
> goal.
> Â
> Thanks !
> Â
>
>
> On Sat, May 17, 2014 at 2:22 AM,
> Carlos Ruiz DÃaz
> <carlos.ruizdiaz at gmail.com
> <mailto:carlos.ruizdiaz at gmail.com>> wrote:
>
> max_chan is equal to zero? You
> should put a positive value in
> here in order to make sense the
> function call.Â
>
> Also, you are using for one call
> the ID "x.y.z.a", and for the
> other one $rd. Both should be the
> same for calls that suppose to be
> organized in the same group.
>
> Please take a look at the docs.
>
>
> On Fri, May 16, 2014 at 7:52 PM,
> Rahul MathuR
> <rahul.ultimate at gmail.com
> <mailto:rahul.ultimate at gmail.com>>
> wrote:
>
> Further, from the logs it
> seems that
> cnxcc_set_max_channels is
> returning -1 and I have no
> idea why it is failing.
>
>
> On Sat, May 17, 2014 at 5:48
> AM, Rahul MathuR
> <rahul.ultimate at gmail.com
> <mailto:rahul.ultimate at gmail.com>>
> wrote:
>
> Hello Carlos,
>
> Many thanks for your help.
> I followed the steps you
> mentioned for CNXCC. But
> even after making the max.
> calls to 0, I am still
> able to connect the call.
> Below is the excerpt from
> kamailio.cfg
>
> request_route { Â Â Â Â
> setflag(DLG_FLAG); Â Â Â Â
> # per request initial
> checks    Â
> route(REQINIT); Â Â Â Â
> # NAT detection    Â
> route(NATDETECT);
> .
> .
> .
>
> Â Â Â Â if
> (is_method("INVITE")) {
> Â Â Â Â Â Â Â Â
> route(CNXCC);
> Â Â Â Â }
> }
>
> #Below lines added by
> Rahul for Concurrent Call
> Restriction
> route[CNXCC]
> {
>
> Â Â Â Â $var(client1) Â
> Â Â Â Â = "x.y.z.a";
>
> #!ifdef CNXCC_CHANNEL Â
> Â Â Â Â xlog("L_INFO",
> "Setting up channel based
> credit control");
>
> Â Â Â Â $var(max_chan1) = 0;
> Â Â Â Â $var(retcode) Â
> =
> cnxcc_set_max_channels("$var(client1)",
> "$var(max_chan)");
>
> Â Â Â Â if
> ($var(retcode) == -1) {
> Â Â Â Â Â Â Â Â
> xlog("Error setting up
> credit control");
> Â Â Â Â Â Â Â Â return;
> Â Â Â Â }
>
> Â Â Â Â $var(count1) Â
> Â = -1;
>
> Â Â Â Â if
> (!cnxcc_get_channel_count("$rd",
> "$var(count1)")) {
> Â Â Â Â Â Â Â Â
> xlog("Error getting
> customer's channel count");
> Â Â Â Â }
> Â Â Â Â xlog("RAHUL :
> CNXCC ROUTE: $var(client)
> has $var(count) call(s)");
> Â Â Â Â xlog("L_INFO",
> "CNXCC ROUTE: $var(client)
> has $var(count) call(s)");
>
> Â Â Â Â if
> ($var(count1) ==
> $var(max_chan1)) {
> Â Â Â Â Â Â Â Â
> xlog("Too many channels
> for customer");
> Â Â Â Â Â Â Â Â
> sl_send_reply(403,
> "Forbidden");
>
> Â Â Â Â Â Â Â Â #if
> (!cnxcc_terminate_all("$var(client)"))
> {
> Â Â Â Â Â Â Â Â # Â
> Â Â xlog("Error
> terminating customer's
> calls");
> Â Â Â Â Â Â Â Â #}
>
> Â Â Â Â Â Â Â Â exit;
> Â Â Â Â }
> #!endif
>
>
> Could you please guide me
> where am I doing wrong ?
>
>
> On Sat, May 17, 2014 at
> 3:01 AM, Carlos Ruiz DÃaz
> <carlos.ruizdiaz at gmail.com
> <mailto:carlos.ruizdiaz at gmail.com>>
> wrote:
>
> Any pseudo variable
> should work.Â
>
> I don't exactly know
> how your business
> work, but I'd suggest
> that instead of using
> from header domain,
> use the domain part of
> the request-uri, $rd.
>
> Regards,
> Carlos
>
>
> On Fri, May 16, 2014
> at 4:28 PM, Rahul
> MathuR
> <rahul.ultimate at gmail.com
> <mailto:rahul.ultimate at gmail.com>>
> wrote:
>
> Thank you very
> much Carlos !
>
> One last thing,
> can I use $fd inÂ
> cnxcc_set_max_channels
> as below -Â
> cnxcc_set_max_channels("$fd",
> "$var(max_chan)");
> to restrict the
> simultaneous calls
> hitting a
> particular domain ?
>
>
>
>
> On Sat, May 17,
> 2014 at 2:03 AM,
> Carlos Ruiz DÃaz
> <carlos.ruizdiaz at gmail.com
> <mailto:carlos.ruizdiaz at gmail.com>>
> wrote:
>
> Create a
> profile [1],
> and count the
> number of
> calls of that
> profile [2].
>
> Alternatively,
> you can use
> cnxcc module [3].
>
> [1]
> http://kamailio.org/docs/modules/stable/modules/dialog.html#idp1919576
>
> [2]
> http://kamailio.org/docs/modules/stable/modules/dialog.html#idp1964064
> [3]Â
> http://kamailio.org/docs/modules/stable/modules/cnxcc.html#idp132608
>
>
> On Fri, May
> 16, 2014 at
> 3:28 PM, Rahul
> MathuR
> <rahul.ultimate at gmail.com
> <mailto:rahul.ultimate at gmail.com>>
> wrote:
>
> /Hello,/
>
> /Please accept my apologies for asking a simple question - Is there any example which shows how can I create the dialog profile//value based on the SIP domain or SIP Server IP (IP like- 112.23.134.5). I// need to control many SIP Server IPs with limited channels to each with my// Kamailio Proxy./
>
> /I am a
> newbie to
> kamailio
> world./
> /
> /
> /--
> Warm Regds.
> MathuRahul/
>
>
>
> _______________________________________________
> sr-dev
> mailing list
> sr-dev at lists.sip-router.org
> <mailto:sr-dev at lists.sip-router.org>
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
>
>
>
> --
> Carlos
> http://caruizdiaz.com
> http://ngvoice.com
> +52 55 3048
> 3303
> <tel:%2B52%2055%203048%203303>
>
> _______________________________________________
> sr-dev mailing
> list
> sr-dev at lists.sip-router.org
> <mailto:sr-dev at lists.sip-router.org>
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
>
>
>
> --
> Warm Regds.
> MathuRahul
>
> _______________________________________________
> sr-dev mailing list
> sr-dev at lists.sip-router.org
> <mailto:sr-dev at lists.sip-router.org>
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
>
>
>
> --
> Carlos
> http://caruizdiaz.com
> http://ngvoice.com
> +52 55 3048 3303
> <tel:%2B52%2055%203048%203303>
>
> _______________________________________________
> sr-dev mailing list
> sr-dev at lists.sip-router.org
> <mailto:sr-dev at lists.sip-router.org>
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
>
>
>
> --
> Warm Regds.
> MathuRahul
>
>
>
>
> --
> Warm Regds.
> MathuRahul
>
> _______________________________________________
> sr-dev mailing list
> sr-dev at lists.sip-router.org
> <mailto:sr-dev at lists.sip-router.org>
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
>
>
>
> --
> Carlos
> http://caruizdiaz.com
> http://ngvoice.com
> +52 55 3048 3303
> <tel:%2B52%2055%203048%203303>
>
> _______________________________________________
> sr-dev mailing list
> sr-dev at lists.sip-router.org
> <mailto:sr-dev at lists.sip-router.org>
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
>
>
>
> --
> Warm Regds.
> MathuRahul
>
> _______________________________________________
> sr-dev mailing list
> sr-dev at lists.sip-router.org
> <mailto:sr-dev at lists.sip-router.org>
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
>
>
>
> --
> Carlos
> http://caruizdiaz.com
> http://ngvoice.com
> +52 55 3048 3303
> <tel:%2B52%2055%203048%203303>
>
> _______________________________________________
> sr-dev mailing list
> sr-dev at lists.sip-router.org
> <mailto:sr-dev at lists.sip-router.org>
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
>
>
>
> --
> Warm Regds.
> MathuRahul
>
> _______________________________________________
> sr-dev mailing list
> sr-dev at lists.sip-router.org
> <mailto:sr-dev at lists.sip-router.org>
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
>
>
>
> --
> Carlos
> http://caruizdiaz.com
> http://ngvoice.com
> +52 55 3048 3303 <tel:%2B52%2055%203048%203303>
>
> _______________________________________________
> sr-dev mailing list
> sr-dev at lists.sip-router.org
> <mailto:sr-dev at lists.sip-router.org>
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
>
>
>
> --
> Warm Regds.
> MathuRahul
>
>
>
>
> --
> Warm Regds.
> MathuRahul
>
> _______________________________________________
> sr-dev mailing list
> sr-dev at lists.sip-router.org
> <mailto:sr-dev at lists.sip-router.org>
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
>
>
>
> --
> Carlos
> http://caruizdiaz.com
> http://ngvoice.com
> +52 55 3048 3303 <tel:%2B52%2055%203048%203303>
>
> _______________________________________________
> sr-dev mailing list
> sr-dev at lists.sip-router.org <mailto:sr-dev at lists.sip-router.org>
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
>
>
>
> --
> Warm Regds.
> MathuRahul
>
> _______________________________________________
> sr-dev mailing list
> sr-dev at lists.sip-router.org <mailto:sr-dev at lists.sip-router.org>
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
>
>
>
> --
> Carlos
> http://caruizdiaz.com
> http://ngvoice.com
> +52 55 3048 3303
>
>
> _______________________________________________
> sr-dev mailing list
> sr-dev at lists.sip-router.org
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
--
Daniel-Constantin Mierla - http://www.asipto.com
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-dev/attachments/20140609/503feb8c/attachment-0001.html>
More information about the sr-dev
mailing list