Страница 1 из 2

Регулярные выражения преобразования вызываемого номера

Добавлено: Вт апр 04, 2017 12:39 pm
Игорь
В документации описан сабж. Транки и тарификацмя в биллинге по Е-164
Надо отрезать '+', добавлять к шестизначным год города с семеркой, убирать выход на межгород и менять 8-ку на 7-ку. Сделал:

$conf{VOIP_NUMBER_EXPR} = '+/;^[2-79]([0-9]{5})$/74732$number;^810/;^8/7';

НЕ РАБОТАЕТ.

Что сделал не так?

Re: Регулярные выражения преобразования вызываемого номера

Добавлено: Чт апр 06, 2017 7:20 am
Игорь
Итоговая строка у меня $conf{VOIP_NUMBER_EXPR} = '^\+7/7;^810/;^8/7;^(2[0-9]{5})$/74732$number';
В ней работает все кроме заменить +7 на 7
и совсем не работает конструкция $number
На последнюю выходит ошибка:
# Executing group from file /etc/raddb/sites-enabled/abills_default
+group Perl {
DBD::mysql::st execute failed: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '
)
ORDER BY 2 DESC LIMIT 1' at line 6 at /usr/abills/libexec/../Abills/mysql/main.pm line 281.

Re: Регулярные выражения преобразования вызываемого номера

Добавлено: Чт апр 06, 2017 7:33 am
Игорь
А набор с "+" как я понял , он вообще не пропускает...

Re: Регулярные выражения преобразования вызываемого номера

Добавлено: Чт апр 06, 2017 2:07 pm
~AsmodeuS~
Игорь писал(а):Итоговая строка у меня $conf{VOIP_NUMBER_EXPR} = '^\+7/7;^810/;^8/7;^(2[0-9]{5})$/74732$number';
В ней работает все кроме заменить +7 на 7
и совсем не работает конструкция $number
На последнюю выходит ошибка:
# Executing group from file /etc/raddb/sites-enabled/abills_default
+group Perl {
DBD::mysql::st execute failed: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '
)
ORDER BY 2 DESC LIMIT 1' at line 6 at /usr/abills/libexec/../Abills/mysql/main.pm line 281.

тут нужно проверить /tmp/sql_errors

Re: Регулярные выражения преобразования вызываемого номера

Добавлено: Чт апр 06, 2017 5:42 pm
Игорь
Там только много-много ошибок
bill.tags' doesn't exist

А в логе радиуса есть немного:
Tue Apr 4 11:33:25 2017 : Error: rlm_perl: perl_embed:: module = /usr/abills/libexec/rlm_perl.pl , func = authenticate exit status= Quantifier follows nothing in regex; marked by <-- HERE in m/+ <-- HERE / at /usr/abills/libexec/../Abills/mysql/Voip_aaa.pm line 168.
Thu Apr 6 09:14:29 2017 : Error: rlm_perl: perl_embed:: module = /usr/abills/libexec/rlm_perl.pl , func = authenticate exit status= Unmatched ( in regex; marked by <-- HERE in m/( <-- HERE ^[2-79]([0-9]{5})/ at /usr/abills/libexec/../Abills/mysql/Voip_aaa.pm line 168.

Re: Регулярные выражения преобразования вызываемого номера

Добавлено: Пт апр 07, 2017 8:16 am
Игорь
В логе мускуля тишина.

В выводе радиуса:
Found Auth-Type = Perl
# Executing group from file /etc/raddb/sites-enabled/abills_default
+group Perl {
DBD::mysql::st execute failed: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')
ORDER BY 2 DESC LIMIT 1' at line 6 at /usr/abills/libexec/../Abills/mysql/main.pm line 281.

Что делать???

Re: Регулярные выражения преобразования вызываемого номера

Добавлено: Пт апр 07, 2017 8:58 am
~AsmodeuS~
Игорь писал(а):Там только много-много ошибок
bill.tags' doesn't exist

А в логе радиуса есть немного:
Tue Apr 4 11:33:25 2017 : Error: rlm_perl: perl_embed:: module = /usr/abills/libexec/rlm_perl.pl , func = authenticate exit status= Quantifier follows nothing in regex; marked by <-- HERE in m/+ <-- HERE / at /usr/abills/libexec/../Abills/mysql/Voip_aaa.pm line 168.
Thu Apr 6 09:14:29 2017 : Error: rlm_perl: perl_embed:: module = /usr/abills/libexec/rlm_perl.pl , func = authenticate exit status= Unmatched ( in regex; marked by <-- HERE in m/( <-- HERE ^[2-79]([0-9]{5})/ at /usr/abills/libexec/../Abills/mysql/Voip_aaa.pm line 168.

perl -v

Re: Регулярные выражения преобразования вызываемого номера

Добавлено: Пт апр 07, 2017 8:59 am
~AsmodeuS~
Игорь писал(а):В логе мускуля тишина.

В выводе радиуса:
Found Auth-Type = Perl
# Executing group from file /etc/raddb/sites-enabled/abills_default
+group Perl {
DBD::mysql::st execute failed: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')
ORDER BY 2 DESC LIMIT 1' at line 6 at /usr/abills/libexec/../Abills/mysql/main.pm line 281.

Что делать???
сразу поле получения ошибки сделайте tail /tmp/sql_errors

Re: Регулярные выражения преобразования вызываемого номера

Добавлено: Пт апр 07, 2017 5:20 pm
Игорь
После того, как победил ".tags' doesn't exist", стер этот файл.
Теперь он пустой. Нет там ошибок.

Re: Регулярные выражения преобразования вызываемого номера

Добавлено: Пт апр 07, 2017 8:50 pm
Игорь
Зато в радиус лог сыпится:
Fri Apr 7 20:21:07 2017 : Error: rlm_perl: perl_embed:: module = /usr/abills/libexec/rlm_perl.pl , func = authenticate exit status= Can't locate object method "prepare" via package "Abills::SQL" at /usr/abills/libexec/../Abills/mysql/main.pm line 263.
Fri Apr 7 20:21:07 2017 : Error: rlm_perl: perl_embed:: module = /usr/abills/libexec/rlm_perl.pl , func = post_auth exit status= Can't locate object method "do" via package "Abills::SQL" at /usr/abills/libexec/../Abills/mysql/main.pm line 257.

Re: Регулярные выражения преобразования вызываемого номера

Добавлено: Пт апр 07, 2017 9:29 pm
Игорь
переставил DBD, предыдущих ошибок пока не наблюдаю.
Остались только:
DBD::mysql::st execute failed: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')

Re: Регулярные выражения преобразования вызываемого номера

Добавлено: Сб апр 08, 2017 7:24 am
~AsmodeuS~
Игорь писал(а):переставил DBD, предыдущих ошибок пока не наблюдаю.
Остались только:
DBD::mysql::st execute failed: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')

сразу поле получения ошибки сделайте tail /tmp/sql_errors

Re: Регулярные выражения преобразования вызываемого номера

Добавлено: Вс апр 09, 2017 10:48 am
Игорь
tail /tmp/sql_errors


Пусто там.

Re: Регулярные выражения преобразования вызываемого номера

Добавлено: Пн апр 10, 2017 9:54 am
~AsmodeuS~
а тут ?

/usr/abills/var/log/sql_errors

Re: Регулярные выражения преобразования вызываемого номера

Добавлено: Сб апр 15, 2017 10:25 pm
~AsmodeuS~
поправлено