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 <logeshwara...@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: 7777<sip:7777@45.249.123.97>;tag=501aa976 > Via: SIP/2.0/UDP 209.95.52.97;branch=z9hG4bK0d36. > 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 <j...@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/docs/modules/devel/modules/dialp >> lan.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 <logeshwara...@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 <j...@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 <logeshwara...@gmail.com> >>>> wrote: >>>> >>>>> Input Please!! >>>>> >>>>> On Thu, Aug 3, 2017 at 5:08 PM, Logeshwaran G <logeshwara...@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.tr...@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