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@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@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@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@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@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@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@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@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@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@45.249.123.97 >> From: 7777sip:7777@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-;rport=6107 >> Call-ID: db4777505114995c >> CSeq: 1 INVITE >> Contact: sip:7777@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@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@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@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@gmail.com> wrote: >>>>> >>>>>> Input Please!! >>>>>> >>>>>> On Thu, Aug 3, 2017 at 5:08 PM, Logeshwaran G < >>>>>> logeshwarangs@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@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@lists.kamailio.org >>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users >>>>>>>> >>>>>>> >>>>>>> >>>>>> _______________________________________________ >>>>>> Kamailio (SER) - Users Mailing List >>>>>> sr-users@lists.kamailio.org >>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users >>>>>> >>>>> >>>>> _______________________________________________ >>>>> Kamailio (SER) - Users Mailing List >>>>> sr-users@lists.kamailio.org >>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users >>>>> >>>>> >>>> >>>> _______________________________________________ >>>> Kamailio (SER) - Users Mailing List >>>> sr-users@lists.kamailio.org >>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users >>>> >>>> >>> >>> _______________________________________________ >>> Kamailio (SER) - Users Mailing List >>> sr-users@lists.kamailio.org >>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users >>> >>> >> >> _______________________________________________ >> Kamailio (SER) - Users Mailing List >> sr-users@lists.kamailio.org >> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users >> >> > > _______________________________________________ > Kamailio (SER) - Users Mailing List > sr-users@lists.kamailio.org > https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users > >
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users