Настройка префикса (sip)

Выбираем, обсуждаем, ремонтируем
speexz
Сообщения: 4
Зарегистрирован: 19 май 2016, 21:54

Сообщение speexz » 19 май 2016, 22:07

Здравствуйте. В последних версиях прошивки заметил новую возможность в настройках sip телефонии - "Настройка префикса". Я так понял, данная возможность позволяет применять правило замены префикса в набранном номере на другой префикс. Проблема в том, что нигде не нашёл описание этой возможности. По умолчанию, установлено следующее правило "(>810)x.", но интуитивно не могу понять, что оно делает. В моей ситуации, нужно чтобы при звонке номер менялся с 8xxxxxxxxxx на 0xxxxxxxxxx

speexz
Сообщения: 4
Зарегистрирован: 19 май 2016, 21:54

Сообщение speexz » 06 июн 2016, 22:08

up

Аватара пользователя
Zyxmon
Администратор
Сообщения: 1911
Зарегистрирован: 09 авг 2015, 15:33

Сообщение Zyxmon » 07 июн 2016, 07:33

speexz, Вы бы указывали железо, о котором пишите.

speexz
Сообщения: 4
Зарегистрирован: 19 май 2016, 21:54

Сообщение speexz » 07 июн 2016, 20:36

Zyxmon писал(а):Источник цитаты speexz, Вы бы указывали железо, о котором пишите.

Здравствуйте. Роутер - Zyxel VOX. Прошивка: v2.05(AAGN.0)C4

Аватара пользователя
Zyxmon
Администратор
Сообщения: 1911
Зарегистрирован: 09 авг 2015, 15:33

Сообщение Zyxmon » 08 июн 2016, 00:45

speexz, напишите вопрос поддержке http://sd.zyxel.ru
Если ответ будет интересен другим, напишите тут.

speexz
Сообщения: 4
Зарегистрирован: 19 май 2016, 21:54

Сообщение speexz » 26 июн 2016, 17:17

Мне ответили в техподдержке, только я не понял про digit maps, а точнее можно ли с помощью него изменять исходящий номер.
Для исходящих звонков такое изменение настроить нельзя.



Префикс в настройках SIP нужен не для исходящих звонков, а для входящих вызовов, чтобы телефоны могли корректно отображать Caller ID и совершать обратные вызовы.
Например, для провайдера Youmagic:



При поступлении вызова телефон покажет номер вызывающего абонента. Если на вызов не ответить, то в журнале телефона останется запись с номером. Но, если позвонить по этому номеру, то никуда не дозвонишься, потому что входящие номера маркируются в международном формате, например 74951234567 (из России). При этом набор номера в Youmagic происходит через восьмерку: 84955428920. Если перед передачей Caller ID телефону заменить код с 7 на 8, то абонент сможет перезвонить по пропущенному вызову.





Само правило задается в круглых скобках.

Символ '>' означает, что символ перед знаком нужно заменить на символ(ы) после него.



В этом случае нужно правило: (7>8)x.

Т.е. в номере инициатора звонка будет заменяться префикс 7 на 8.

x — означает любую цифру от 0 до 9


. — предыдущий элемент может повторяться сколько угодно раз (в том числе и ноль раз).



Cинтаксис настройки Prefix аналогичен правилам DigitMap (см. БЗ-4462).


Правила работают по принципу маски, то есть соответствующий указанной в правиле маске номер будет модифицирован согласно этому правилу.
Например, по информации входящего звонка номер вызывающего абонента 84951234567. Пусть указано правило (8>+7)495xxxxxxx. Оно действует для строки данного номера и на телефонном аппарате после обработки будет отображен номер вызывающего абонента +74951234567.

Можно использовать следующие символы.

| — разделитель правил

[] — условие наличия в строке номера любых символов, соответствующих результату выражения внутри

. — предыдущий символ последовательно может быть повторен любое количество раз

() — ограничение выражения, составляющего действия над строкой символов для описания действия можно использовать:

> — символы слева заменяются на символы справа

- — интервал

, — перечисление, например [0,2,6-9] означает "0, или 2, или любое другое число из 6, 7, 8, 9"

x — любая цифра
Внимание! Круглые скобки учтутся только в начале строчки правила.




Дополнительные примеры:




(7>8107)[3-9]x. — вместо 7 вставляем 8107.
Чтобы входяшие вызов попал под правило, следующая цифра после префикса должна быть от 3 до 9. Дальше может быть любое количество любых цифр.



([78]495>)x. — здесь префиксы 7495, 8495 удаляются из всех номеров, если они были.



(0[1-4]>112) — все экстренные номера 01, 02, 03, 04 заменяем на 112.



(>810)x. — префикс по умолчанию. К любому входящему номеру добавляется 810.



(7>8)[3-9]xxxxxxxxx — меняем 7 на 8 в начале номера, только если имеем полностью валидный 11-значный российский номер.




(00>+)x. — этим правилом будут заменены символы 00 на + перед любым набором, и номер 0071234567890 превратится в +71234567890.


Тут мне написали, что правила для исходящих звонков (см. digit maps) такие же, как и для входящих. В инете я видел, что для digit maps применяются другие правила: вместо символа > используются символы R:
If you don’t want the “8” to be dialed but do need it to generate dial tone in the room, you can use a replacement
mapping using the special character “R” to replace one string with a different string by using the expression:
Rstring1Rstring2R to replace string1 with string2.  In this example we would change the digit map as shown next:
[2‐9]11|0T|011xxx.T|[0‐1][2‐9]xxxxxxxxx|R8RR,[2‐9]xxxxxxT|[2‐9]xx.T (6)
In this example the digit 8 is replaced with an empty string which causes only the remaining 7 digits to be dialed as
the “8” is not sent to the PBX.  

Текущий стандарт Digit Maps в прошивке - RFC3435. В стандарте вообще ничего не увидел про замену префиска в правиле digit maps. Ладно, так уж и быть, через 0 будем набирать.


Вернуться в «Маршрутизаторы, точки доступа, сетевые карты»

Кто сейчас на конференции

Всего 0 посетителей :: 0 зарегистрированных, 0 скрытых и 0 гостей (основано на активности пользователей за последние 5 минут)
Больше всего посетителей (162) здесь было 16 ноя 2019, 18:33

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей