[SR-Users] DIALPLAN Module: doubts about regular expression usage
Stefano Bertuola
stefano.bertuola at gmail.com
Wed Oct 10 10:00:56 CEST 2018
Hi Patrick.
Thanks for your replay.
I also verified an issue with *dialplan.translate* command in *kamcmd*.
Running a live test it is working.
mysql> select * from dialplan;
+----+------+----+----------+--------------+-----------+--------------+----------+-------+
| id | dpid | pr | match_op | match_exp | match_len | subst_exp |
repl_exp | attrs |
+----+------+----+----------+--------------+-----------+--------------+----------+-------+
| 1 | 1 | 1 | 1 | ^(\+39)(.*)$ | 0 | ^(\+39)(.*)$ | \2
| 1 |
+----+------+----+----------+--------------+-----------+--------------+----------+-------+
NOTICE: <script>: +3912345|Before Dialplan
NOTICE: <script>: 12345|After Dialplan
Br. Stefano
On Wed, Oct 10, 2018 at 6:50 AM Patrick Wakano <pwakano at gmail.com> wrote:
> Hi Stefano,
> I have similar rules in my dialplan and they work.
> However the kamcmd dialplan.translate command also fails for me (Kamailio
> 5.0.4), but I guess it is a problem with the command itself and not with
> the translation done by the dp_translate(), because for real calls it does
> work!
>
> Patrick Wakano
>
> On Wed, 10 Oct 2018 at 02:21, Stefano Bertuola <stefano.bertuola at gmail.com>
> wrote:
>
>> Hi Experts.
>>
>> I did some tests with DIALPLAN module and I have some doubts about how to
>> define the regular expressions in the database.
>>
>> For example, using the start character '^' (beginning of the string), it
>> looks not working:
>>
>> kamcmd> dialplan.dump 1
>> {
>> DPID: 1
>> ENTRIES: {
>> ENTRY: {
>> PRIO: 1
>> MATCHOP: 2
>> MATCHEXP: ^(\+39)(.*)$
>> MATCHLEN: 0
>> SUBSTEXP: ^(\+39)(.*)$
>> REPLEXP: \2
>> ATTRS: 1
>> }
>> }
>> }
>> kamcmd> dialplan.translate 1 "+39123456"
>> error: 500 - No translation
>>
>>
>> Removing it, it works... but not as desired:
>>
>> kamcmd> dialplan.dump 1
>> {
>> DPID: 1
>> ENTRIES: {
>> ENTRY: {
>> PRIO: 1
>> MATCHOP: 1
>> MATCHEXP: (\+39)(.*)$
>> MATCHLEN: 0
>> SUBSTEXP: (\+39)(.*)$
>> REPLEXP: \2
>> ATTRS: 1
>> }
>> }
>> }
>> kamcmd> dialplan.translate 1 "+39123456"
>> {
>> Output: 123456"
>> Attributes: 1
>> }
>> kamcmd> dialplan.translate 1 "xxxxxxx+39123456"
>> {
>> Output: 123456"
>> Attributes: 1
>> }
>>
>>
>> Can someone help me understand how the regular expression should be used
>> in DIALPLAN, please?
>>
>> Br. Stefano
>> _______________________________________________
>> 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/20181010/f9cb2b84/attachment.html>
More information about the sr-users
mailing list