====== Выбор провайдера при переадресации на мобильный ======
[[faq:|Обратно к инструкциям]]
**Задача**: На АТС заведено несколько провайдеров А,Б,В,Г... \\ Вызов поступает на MikoPBX через провайдера А. \\ При наборе мобильного номера сотрудника вызов должен также идти через провайдера А. \\ \\
**Провайдер должен поддерживать более одного одновременного вызова.**
- Перейдите в раздел **Система** -> **Кастомизация системных файлов** {{ :providers:many_hosts:2019-02-04_173507.png |}}
- Откройте для редактирования конфигурационный файл **extensions.conf**. Установите режим "**Добавлять в конец файла**"
- В черное окно добавьте следующий фрагмент кода:[all-outgoing-custom]
exten => _[0-9*#+a-zA-Z][0-9*#+a-zA-Z]!,1,NoOp(-)
same => n,NoOp("${PROVIDER_ID}" --- "${ONLY_THIS_PROVIDER}")
same => n,Set(NEED_RETURN=${UNDEFINED})
same => n,ExecIf($["${ONLY_THIS_PROVIDER}x" == "x"]?return)
same => n,ExecIf($["${PROVIDER_ID}" != "${ONLY_THIS_PROVIDER}"]?Set(NEED_RETURN=1))
same => n,ExecIf($["${PROVIDER_ID}" != "${ONLY_THIS_PROVIDER}"]?Set(ROUTFOUND=${UNDEFINED}))
same => n,Return()
[add-trim-prefix-clid-custom]
exten => _[0-9*#+a-zA-Z][0-9*#+a-zA-Z]!,1,NoOp(start check blacklist)
same => n,ExecIf($["${CHANNEL(channeltype)}" == "PJSIP" ]?Set(__ONLY_THIS_PROVIDER=${CHANNEL(endpoint)}))
same => n,Return()
- Сохраните изменения
- Для каждого провайдера необходимо описать [[:outbound-routes|исходящий маршрут]]
- Заполните для сотрудников мобильные номера [[:extensions|см. документацию]]
- Ограничьте использование исходящих маршрутов для пользователей, используйте модуль "**[[:module-users-groups|Группы пользователей]]**"
- Теперь если выходящий вызов направить на мобильный сотрудника, к примеру через [[:ivr-menu|IVR меню]], то вызов будет направлен через того же провайдера, через которого пришел
ВНИМАНИЕ: Инструкции актуальны только для MikoPBX **2022.2.96**+
[[faq:|Обратно к инструкциям]]