Top.Mail.Ru

Нормализация входящего номера

При подключении к MikoPBX более одного провайдера может сложится ситуация, что номер телефона клиентов поступает в различном формате:

  • В 7ти значном виде - 2293042
  • Через «+», к пример +79257184444
  • Через «8», к примеру 89257184444

Появляется необходимость привести все к одному формату.

1. Перейдите в раздел МаршрутизацияПровайдеры телефонии. Откройте для редактирования учетную запись провайдера для редактирования. Скопируйте в адресной строке ID провайдера, через которого абоненты звонят Вам в компанию. Обращаем Ваше внимание, что в нашем примере используется единственный провайдер Zadarma. Если у Вас настроено подключение нескольких провайдеров, то ниже описанные действия необходимо выполнить для каждого провайдера.

В нашем примере ID провайдера принимает вид: SIP-PROVIDER-B63EE3497989BF6597FF8C9DEC77EB49.

Cgt2019-02-05_105038.png

2. Перейдите в раздел СистемаКастомизация системных файлов.

kxB2019-02-04_173507.png

3. Откройте для редактирования конфигурационный файл extensions.conf. Установите режим «Добавлять в конец файла».

4. В черное окно добавьте следующий фрагмент кода:

[SIP-PROVIDER-B63EE3497989BF6597FF8C9DEC77EB49-incoming-custom]
exten => _.!,1,NoOp(---)
    ; Отсекаем плюс
    same => n,Set(CALLERID(num)=${REPLACE(CALLERID(num),"+")})
    ; Для 11ти значного номера отсекаем первую цифру и добавляем 7
    same => n,ExecIf($[ ${LEN(${CALLERID(num)})} == 11 ]?Set(CALLERID(num)=7${CALLERID(num):1}))
    ; Для 7ми значного номера добавляем код страны 7 и код города 495
    same => n,ExecIf($[ ${LEN(${CALLERID(num)})} == 7 ]?Set(CALLERID(num)=7495${CALLERID(num)}))
    same => n,return

В выше приведенном фрагменте кода Вам необходимо составить правильное наименование контекста.
Формат создаваемого контекста:

[ID-ПРОВАЙДЕРА-incoming-custom]
  • ID-ПРОВАЙДЕРА - значение, которое вы сохранили на первом шаге данной инструкции. В нашем примере это SIP-PROVIDER-B63EE3497989BF6597FF8C9DEC77EB49.

Ниже красным цветом выделен фрагмент, который Вам необходимо изменить.

HqC2019-02-08_164259.png

Обращаем Ваше внимание, если у Вас в MikoPBX подключено несколько провайдеров, выше описанный фрагмент кода нужно составить для каждого провайдера, учитывая уникальность ID каждого из провайдеров.