[SR-Users] Issue in Dialplan Module

Logeshwaran G logeshwarangs at gmail.com
Wed Aug 9 12:07:47 CEST 2017


I am not Sure how to take the debug logs,

I have enabled
#!ifdef WITH_DEBUG
# ----- debugger params -----
modparam("debugger", "cfgtrace", 1)
modparam("debugger", "log_level_name", "exec")
modparam("debugger", "mod_facility", "core=LOG_LOCAL0")

I am not sure where these logs will be stored and how to take those logs.



Thanks & Kind Regards,
Logeshwaran G

On Wed, Aug 9, 2017 at 1:34 PM, Logeshwaran G <logeshwarangs at gmail.com>
wrote:

> I have given the below query,
>
> INSERT INTO dialplan(id, dpid, pr, match_op, match_exp, match_len,
> subst_exp, repl_exp, attrs) VALUES (1, "1", "1", 1, "^000[0-9]+$ ", 0,
> "^000([0-9]+)$", "\1", " ");
>
> But the Rule is tking as "1"
>
> ======
> dpid: 1
> pr: 1
> match_op: 1
> match_exp: ^000[0-9]+$
> match_len: 0
> subst_exp: ^000([0-9]+)$
> repl_exp: \1   (instead of this, it is taking as "1")
> attrs:
>
>
>
> Thanks & Kind Regards,
> Logeshwaran G
>
> On Wed, Aug 9, 2017 at 12:59 AM, Joel Serrano <joel at gogii.net> wrote:
>
>> Hi,
>>
>> The 'subst_exp' is incorrect, it should be "\1" instead of "1" (note the
>> backslash).
>>
>> Send the debug logs when you have them.
>>
>> J.
>>
>> On Mon, Aug 7, 2017 at 11:56 PM, Logeshwaran G <logeshwarangs at gmail.com>
>> wrote:
>>
>>> Please find the below rules I am using:
>>>
>>> +----+------+----+----------+--------------+-----------+----
>>> -----------+----------+-------+
>>> | id | dpid | pr | match_op | match_exp    | match_len | subst_exp     |
>>> repl_exp | attrs |
>>> +----+------+----+----------+--------------+-----------+----
>>> -----------+----------+-------+
>>> |  1 |    1 |  1 |        1 | ^000[0-9]+$  |         0 | ^000([0-9]+)$ |
>>> 1        |       |
>>>
>>>
>>> Correct me If I am Wrong,
>>>
>>> I will enable the logs and send you for the clarity.
>>>
>>> On Mon, Aug 7, 2017 at 7:11 PM, Joel Serrano <joel at gogii.net> wrote:
>>>
>>>> Hi,
>>>>
>>>> I don't see the problem...
>>>>
>>>> checked with online tester and the regex looks OK:
>>>>
>>>> [image: Inline image 1]
>>>>
>>>>
>>>>
>>>> Can you enable debug logs and try again, then send the logs?
>>>>
>>>>
>>>> On Sun, Aug 6, 2017 at 11:19 PM, Logeshwaran G <logeshwarangs at gmail.com
>>>> > wrote:
>>>>
>>>>> I mean to say by applying the Rule mentioned from Joel is also not
>>>>> worked.
>>>>>
>>>>>
>>>>> Rules:
>>>>> ======
>>>>> dpid: 1
>>>>> pr: 1
>>>>> match_op: 1
>>>>> match_exp: ^000[0-9]+$  <<<<<<< This will trigger a match on any
>>>>> number that will start with three zeros.
>>>>> match_len: 0
>>>>> subst_exp: ^000([0-9]+)$  <<<<<<< If the match_exp is found, then
>>>>> create a group with the desired part of the number, in this case,
>>>>> everything after the three zeros.
>>>>> repl_exp: \1   <<<<<<< \1 is a back reference to group 1, in this
>>>>> case the number you selected in subst_exp, without the three zeros.
>>>>> attrs:
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Mon, Aug 7, 2017 at 11:43 AM, Logeshwaran G <
>>>>> logeshwarangs at gmail.com> wrote:
>>>>>
>>>>>> Please find the below output
>>>>>>
>>>>>>  5(12951) ERROR: <script>: R-URI User: 000919629897172
>>>>>>  5(12951) ERROR: <script>: R-URI User: 000919629897172
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Mon, Aug 7, 2017 at 11:10 AM, Joel Serrano <joel at gogii.net> wrote:
>>>>>>
>>>>>>> Can you add logging and post results?
>>>>>>>
>>>>>>>  if (is_method("INVITE")) {
>>>>>>>                xlog("R-URI User: $rU\n");
>>>>>>>                dp_translate("1", "$rU/$rU");
>>>>>>>                xlog("R-URI User: $rU\n");
>>>>>>> }
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Sun, Aug 6, 2017 at 10:05 PM, Logeshwaran G <
>>>>>>> logeshwarangs at gmail.com> wrote:
>>>>>>>
>>>>>>>> I am using the below function:
>>>>>>>>
>>>>>>>>  if (is_method("INVITE")) {
>>>>>>>>
>>>>>>>>                dp_translate("1", "$rU/$rU");
>>>>>>>> }
>>>>>>>>
>>>>>>>>
>>>>>>>> On Sat, Aug 5, 2017 at 9:19 PM, Joel Serrano <joel at gogii.net>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> Can you post your block of config related to dialplan module from
>>>>>>>>> kamailio.cfg?
>>>>>>>>>
>>>>>>>>> Also, how are you calling the dp_* functions?
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Fri, Aug 4, 2017 at 10:34 PM, Logeshwaran G <
>>>>>>>>> logeshwarangs at gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> Thanks a lot for the Detailed Explanation.
>>>>>>>>>>
>>>>>>>>>> I am Beginner to Kamailio, As per Your Suggestion I have used the
>>>>>>>>>> below Rule:
>>>>>>>>>>
>>>>>>>>>> Rules:
>>>>>>>>>> ======
>>>>>>>>>> dpid: 1
>>>>>>>>>> pr: 1
>>>>>>>>>> match_op: 1
>>>>>>>>>> match_exp: ^000[0-9]+$  <<<<<<< This will trigger a match on any
>>>>>>>>>> number that will start with three zeros.
>>>>>>>>>> match_len: 0
>>>>>>>>>> subst_exp: ^000([0-9]+)$  <<<<<<< If the match_exp is found,
>>>>>>>>>> then create a group with the desired part of the number, in this case,
>>>>>>>>>> everything after the three zeros.
>>>>>>>>>> repl_exp: \1   <<<<<<< \1 is a back reference to group 1, in
>>>>>>>>>> this case the number you selected in subst_exp, without the three zeros.
>>>>>>>>>> attrs:
>>>>>>>>>>
>>>>>>>>>> But the First three Digit is not Removed. Please find the below
>>>>>>>>>> log:
>>>>>>>>>>
>>>>>>>>>>  5(16152) INFO: <script>: Request : INVITE
>>>>>>>>>> sip:000919629897172 at 209.95.52.97 SIP/2.0
>>>>>>>>>> Record-Route: <sip:209.95.52.97;lr>
>>>>>>>>>> Record-Route: <sip:209.95.52.97;lr>
>>>>>>>>>> To: <sip:000919629897172 at 45.249.123.97>
>>>>>>>>>> From: 7777<sip:7777 at 45.249.123.97>;tag=501aa976
>>>>>>>>>> Via: SIP/2.0/UDP 209.95.52.97;branch=z9hG4bK0d3
>>>>>>>>>> 6.636d0921d672f2d0bdb3fc87c52a3caa.0
>>>>>>>>>> Via: SIP/2.0/UDP 209.95.52.97;rport=5060;branch
>>>>>>>>>> =z9hG4bK0d36.4d76f923bd5cc7d64297898058440098.0
>>>>>>>>>> Via: SIP/2.0/UDP 45.249.123.97:6107;received=45
>>>>>>>>>> .249.123.97;branch=z9hG4bK-d87543-1054953376-1--d87543-;rpor
>>>>>>>>>> t=6107
>>>>>>>>>> Call-ID: db4777505114995c
>>>>>>>>>> CSeq: 1 INVITE
>>>>>>>>>> Contact: <sip:7777 at 45.249.123.97:6107>
>>>>>>>>>> Max-Forwards: 68
>>>>>>>>>> Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE,
>>>>>>>>>> SUBSCRIBE, INFO
>>>>>>>>>> Content-Type: application/sdp
>>>>>>>>>> User-Agent: eyeBeam release 3004t stamp 16741
>>>>>>>>>> Content-Length: 191
>>>>>>>>>>
>>>>>>>>>> v=0
>>>>>>>>>> o=- 355180136 355180140 IN IP4 45.249.123.97
>>>>>>>>>> s=eyeBeam
>>>>>>>>>> c=IN IP4 45.249.123.97
>>>>>>>>>> t=0 0
>>>>>>>>>> m=audio 31444 RTP/AVP 18 0 8 101
>>>>>>>>>> a=fmtp:101 0-15
>>>>>>>>>> a=rtpmap:101 telephone-event/8000
>>>>>>>>>> a=sendrecv
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Sat, Aug 5, 2017 at 10:30 AM, Joel Serrano <joel at gogii.net>
>>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>>> Ok, so clearly you have not tried what Daniel suggested...
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> *IN a regexp ^ matches the beginning of the line/string, and $
>>>>>>>>>>> matchesthe end. So "^000$" only matches exactly "000" and not
>>>>>>>>>>> "000xxxx"Remove the $ to match strings begining with 000.*
>>>>>>>>>>>
>>>>>>>>>>> Rules:
>>>>>>>>>>> ======
>>>>>>>>>>> dpid: 1
>>>>>>>>>>> pr: 1
>>>>>>>>>>> match_op: 1
>>>>>>>>>>> match_exp: ^000$
>>>>>>>>>>> match_len: 0
>>>>>>>>>>> subst_exp: ^0000$
>>>>>>>>>>> repl_exp:
>>>>>>>>>>> attrs:
>>>>>>>>>>>
>>>>>>>>>>> Can you see you still have the $ char at the end of match_exp
>>>>>>>>>>> and subst_exp?
>>>>>>>>>>>
>>>>>>>>>>> To begin with, do you know how regular expressions work?
>>>>>>>>>>> Because that is the first thing you need to know to correctly use the
>>>>>>>>>>> dialplan module.
>>>>>>>>>>>
>>>>>>>>>>> That said you need a match expression, a substitute expression,
>>>>>>>>>>> and a replace expression...
>>>>>>>>>>>
>>>>>>>>>>> Try with:
>>>>>>>>>>>
>>>>>>>>>>> Rules:
>>>>>>>>>>> ======
>>>>>>>>>>> dpid: 1
>>>>>>>>>>> pr: 1
>>>>>>>>>>> match_op: 1
>>>>>>>>>>> match_exp: ^000[0-9]+$  <<<<<<< This will trigger a match on
>>>>>>>>>>> any number that will start with three zeros.
>>>>>>>>>>> match_len: 0
>>>>>>>>>>> subst_exp: ^000([0-9]+)$  <<<<<<< If the match_exp is found,
>>>>>>>>>>> then create a group with the desired part of the number, in this case,
>>>>>>>>>>> everything after the three zeros.
>>>>>>>>>>> repl_exp: \1   <<<<<<< \1 is a back reference to group 1, in
>>>>>>>>>>> this case the number you selected in subst_exp, without the three zeros.
>>>>>>>>>>> attrs:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> What isn't clear to me is that 91 you are talking about in your
>>>>>>>>>>> email, you might have to exclude/include that in your regex.
>>>>>>>>>>>
>>>>>>>>>>> Have a look at https://www.kamailio.org/do
>>>>>>>>>>> cs/modules/devel/modules/dialplan.html#dialplan.installation
>>>>>>>>>>>
>>>>>>>>>>> You have a couple examples that might make it more clear.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Let me know if it helps.
>>>>>>>>>>>
>>>>>>>>>>> Joel.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Fri, Aug 4, 2017 at 9:18 PM, Logeshwaran G <
>>>>>>>>>>> logeshwarangs at gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Yes I have Tried, please find below the Rules I have applied
>>>>>>>>>>>> and the Result:
>>>>>>>>>>>>
>>>>>>>>>>>> Rules:
>>>>>>>>>>>> ======
>>>>>>>>>>>> dpid: 1
>>>>>>>>>>>> pr: 1
>>>>>>>>>>>> match_op: 1
>>>>>>>>>>>> match_exp: ^000$
>>>>>>>>>>>> match_len: 0
>>>>>>>>>>>> subst_exp: ^0000$
>>>>>>>>>>>> repl_exp:
>>>>>>>>>>>> attrs:
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> I am Calling to the number 00091xxxxxxxxxx , But its saying as
>>>>>>>>>>>> Too many Hops.
>>>>>>>>>>>>
>>>>>>>>>>>> Its only looking for 000, Its not taking the 91xxxxxxxxxx
>>>>>>>>>>>> numbers, If I call 000 only its replacing with the given number in the Rule
>>>>>>>>>>>> table.
>>>>>>>>>>>>
>>>>>>>>>>>> I need to Remove only the first 3 digits, and the other numbers
>>>>>>>>>>>> should go to the call.
>>>>>>>>>>>>
>>>>>>>>>>>> For Example If I am calling 00091xxxxxxxxx, It should remove
>>>>>>>>>>>> the first 3 digits 000 and 91xxxxxxxxx call should be place.
>>>>>>>>>>>>
>>>>>>>>>>>> Please Guide me for removing the first three digits alone and
>>>>>>>>>>>> other numbers should takes place.
>>>>>>>>>>>>
>>>>>>>>>>>> On Fri, Aug 4, 2017 at 6:43 PM, Joel Serrano <joel at gogii.net>
>>>>>>>>>>>> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> Have you tried what Daniel suggested?
>>>>>>>>>>>>>
>>>>>>>>>>>>> Share the results of the tests and we can go from there.
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Thu, Aug 3, 2017 at 21:34 Logeshwaran G <
>>>>>>>>>>>>> logeshwarangs at gmail.com> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Input Please!!
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Thu, Aug 3, 2017 at 5:08 PM, Logeshwaran G <
>>>>>>>>>>>>>> logeshwarangs at gmail.com> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Thanks a lot!
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> But for my scenario,
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> If I am Dialling 000919999999999, need to remove the first
>>>>>>>>>>>>>>> three digits 000, so the call should go to 919999999999.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> I am stucked to create the rule for the above scenario,
>>>>>>>>>>>>>>> Kindly help me for the same.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Kind Regards,
>>>>>>>>>>>>>>> Logeshwaran
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Thu, Aug 3, 2017 at 4:48 PM, Daniel Tryba <
>>>>>>>>>>>>>>> d.tryba at pocos.nl> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On Thu, Aug 03, 2017 at 04:00:45PM +0530, Logeshwaran G
>>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>> >
>>>>>>>>>>>>>>>> > +----+------+----+----------+-
>>>>>>>>>>>>>>>> ----------+-----------+-----------+----------+-------+
>>>>>>>>>>>>>>>> > | id | dpid | pr | match_op | match_exp | match_len |
>>>>>>>>>>>>>>>> subst_exp | repl_exp
>>>>>>>>>>>>>>>> > | attrs |
>>>>>>>>>>>>>>>> > +----+------+----+----------+-
>>>>>>>>>>>>>>>> ----------+-----------+-----------+----------+-------+
>>>>>>>>>>>>>>>> > |  1 |    1 |  1 |        1 | ^000$     |         0 |
>>>>>>>>>>>>>>>> ^000$     |
>>>>>>>>>>>>>>>> > |       | 111
>>>>>>>>>>>>>>>> > +----+------+----+----------+-
>>>>>>>>>>>>>>>> ----------+-----------+-----------+----------+-------+
>>>>>>>>>>>>>>>> >
>>>>>>>>>>>>>>>> > The above rule replacing only the 000, If we Dial 000xxxx
>>>>>>>>>>>>>>>> its omitting,
>>>>>>>>>>>>>>>> > While Dialing 000 its replacing that with 111.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> IN a regexp ^ matches the beginning of the line/string, and
>>>>>>>>>>>>>>>> $ matches
>>>>>>>>>>>>>>>> the end.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> So "^000$" only matches exactly "000" and not "000xxxx"
>>>>>>>>>>>>>>>> Remove the $ to match strings begining with 000.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>>>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>>>>>>>>>> https://lists.kamailio.org/cgi
>>>>>>>>>>>>>>>> -bin/mailman/listinfo/sr-users
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>> sr-users at lists.kamailio.org
>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Kamailio (SER) - Users Mailing List
>>>>> sr-users at lists.kamailio.org
>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> Kamailio (SER) - Users Mailing List
>>>> sr-users at lists.kamailio.org
>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>
>>>>
>>>
>>> _______________________________________________
>>> Kamailio (SER) - Users Mailing List
>>> sr-users at lists.kamailio.org
>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>
>>>
>>
>> _______________________________________________
>> Kamailio (SER) - Users Mailing List
>> sr-users at lists.kamailio.org
>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20170809/ab21d04a/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.png
Type: image/png
Size: 266703 bytes
Desc: not available
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20170809/ab21d04a/attachment.png>


More information about the sr-users mailing list