Замена номеров

Замена номеров - процесс замещения набранного или звонящего ID по определенным правилам.
Правила замены конфигурируются на пирах (см. Типы пиров) и должны быть в формате Regex шаблонов.

Замена номеров при маршрутизации

Замена номеров производится автоматически в процессе Маршрутизации (более подробно о логике работы смотрите в разделе Маршрутизация звонков).
При этом конфигурировать что-либо дополнительно в Обработчике вызовов не требуется.

Замена номеров входящего звонка

При автоматической замене номеров при маршрутизации входящего звонка используется следующая логика.

В случае, если на входящем пире сконфигурирована Замена номеров, система пытается заменить номера (звонящий ID или набранный ID) в соответствии с правилами.
После замены система использует полученные замененные номера для маршрутизации по кода направления и Биллинга.
Обычно замена номеров используется для обрезания технических префиксов, чтою привести номера в формат E.164 для корректного биллинга.

Если правила сконфигурированы таким образом, что замену не удается произвести, то маршрутизация прекращается.
Вы можете использовать это свойство для пропускания лишь определенных наборов набранных или звонящих ID.
Если же вы хотите заменыть определенные номера, а остальные пропускать без изменения, вам нужно в конце списка установить wildcard замену .* -> &.
Более подробно эта замена рассмотрена в разделе Regex шаблоны.

Если же правила замены не сконфигурированы, то считается что маршрутизация будет продолжаться без замены номеров.

Замена номеров исходящего звонка

При автоматической замене номеров для исходящего звонка при построении таблицы маршрутизации используется следующая логика.

В случае, если на исходящем пире сконфигурирована Замена номеров, система пытается заменить номера (звонящий ID или набранный ID) в соответствии с правилами.
После замены система использует полученные замененные номера для генерации исходящего вызова.
Обычно замена номеров используется для добавления технических префиксов к номерам E.164.

Если правила сконфигурированы таким образом, что замену не удается произвести, то маршрут на данного пира не включается в таблицу маршрутизации.
Вы можете использовать это свойство для пропускания лишь определенных наборов набранных или звонящих ID на терминирующего пира.
Если же вы хотите заменыть определенные номера, а остальные пропускать без изменения, вам нужно в конце списка установить wildcard замену .* -> &.
Более подробно эта замена рассмотрена в разделе Regex шаблоны.

Если же правила замены не сконфигурированы, то считается что генерация исходящего вызова будет продолжаться без замены номеров.

Замена номеров без маршрутизации

Если при обработке вызова не используется система автоматической Маршрутизации, а обработка происходит по сконфигурированному вручную Обработчику вызовов, в котором напрямую вызываются исходящие пиры через элемент Набрать, и вы хотите, чтоб номера заменялись по сконфигурированным правилам из настроек пира (например, Шаблоны замены номеров), то потребуется дополнительно активировать эту функцию.

Свежая версия Smartswitch

Требуется дополнительно включить в элементе Набрать опцию Настройки -> заменить ID звонящего/набранного.
Никаких дополнительных настроек не требуется.

Более старые версии Smartswitch

Эта часть иструкции для более старых версий Smartswitch, где нет опции Настройки -> заменить ID звонящего/набранного в элементе Набрать.

Необходимо воспользоваться приложением Заменить, добавив вызов этого приложения в обработчике вызовов.
Приложение Заменить может использоваться совместно с инструкцией Смена А-номера из обработчика вызовов.

Биллинг.

Для того чтоб номера попадали в биллинг в правильном формате, при замене номеров через обработчик вызовов через вызов приложения Заменить требуется конфигурировать, какие именно номера сохранятся в биллинге.
Реальные набранные/звонящие номера всегда попадают в CDR (поля реальный звонящий ID и реально набранный ID в Детальном отчете по звонкам).
Набранные/звонящие номера, по которым выполняется биллинг (поля звонящий ID и набранный ID в Детальном отчете по звонкам) по умолчанию устанавливаются в те же значения, что реальные.
Для того, чтоб заменить их, воспользуйтесь функцией CDR и приложением Установить.
Добавьте в элемент Установить такие значения:

имя значение
CDR(__CALLER_ID)
А номер
CDR(__CALLEE_ID)
Б номер

Здесь, А и Б номера - номера, по которым будет сделан биллинг и которые запишутся в поля звонящий ID и набранный ID в Детальном отчете по звонкам.
Вставьте этот код перед вызовом Набрать в любом месте обработки вызова.
Двойное подчеркивание нужно для того, чтоб переменная перенеслась на исходящий вызов и было записано в исходящий CDR.

English translation