Инструменты пользователя

Инструменты сайта


faq:specific_provider

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
faq:specific_provider [2019/02/13 15:16]
Портнова Татьяна [Второй способ]
faq:specific_provider [2020/04/05 15:09] (текущий)
Строка 4: Строка 4:
  
 ===== Постановка задачи ===== ===== Постановка задачи =====
-В Askozia 6 (//​Телефония -> Сотрудники//​) настроены следующие учетные записи сотрудников:​\\ ​+В MikoPBX ​(//​Телефония -> Сотрудники//​) настроены следующие учетные записи сотрудников:​\\ ​
 {{ :​faq:​2018-10-02_122750.png |}}\\ \\  {{ :​faq:​2018-10-02_122750.png |}}\\ \\ 
  
-В Askozia 6 настроены **два провайдера** от поставщика услуг связи Zadarma (//​Маршрутизация -> Провайдеры телефонии//​):​\\ ​+В MikoPBX ​настроены **два провайдера** от поставщика услуг связи Zadarma (//​Маршрутизация -> Провайдеры телефонии//​):​\\ ​
 {{ :​faq:​2018-10-02_122916.png |}}\\ \\  {{ :​faq:​2018-10-02_122916.png |}}\\ \\ 
  
Строка 26: Строка 26:
 {{ :​faq:​2018-10-02_160947.png |}} {{ :​faq:​2018-10-02_160947.png |}}
  
-Реализовать эту задачу можно двумя способами в Askozia:\\ +Реализовать эту задачу можно двумя способами в MikoPBX:\\ 
   - Абоненты 201 и 202 всегда на телефоне будут добавлять определенные префиксы перед набираемым номером,​ т.е. если они хотят позвонить на номер 74952293042,​ они перед этим номером добавляют префикс 1 или 2, например 174952293042\\ \\    - Абоненты 201 и 202 всегда на телефоне будут добавлять определенные префиксы перед набираемым номером,​ т.е. если они хотят позвонить на номер 74952293042,​ они перед этим номером добавляют префикс 1 или 2, например 174952293042\\ \\ 
   - Абоненты 201 и 202 **не набирают** специальные префиксы,​ за них это действие выполняет сама АТС.   - Абоненты 201 и 202 **не набирают** специальные префиксы,​ за них это действие выполняет сама АТС.
Строка 41: Строка 41:
 1. Добавляем **исходящие правила** для первого и второго провайдера Zadarma, как описано в [[faq:​specific_provider#​первый_способ|первом способе]]. Настройки все идентичны. \\ \\  1. Добавляем **исходящие правила** для первого и второго провайдера Zadarma, как описано в [[faq:​specific_provider#​первый_способ|первом способе]]. Настройки все идентичны. \\ \\ 
 2. В разделе **Маршрутизация** -> **Провайдеры телефонии** добавьте третью учетную запись провайдера со следующими данными:​\\ ​ 2. В разделе **Маршрутизация** -> **Провайдеры телефонии** добавьте третью учетную запись провайдера со следующими данными:​\\ ​
-{{ :​faq:​2019-02-13_181408.png |}}\\ +{{ :​faq:​2019-02-15_125523.png |}}\\ 
 {{ :​faq:​2019-02-13_181148.png |}}\\  {{ :​faq:​2019-02-13_181148.png |}}\\ 
 {{ :​faq:​2019-02-13_181159.png |}}\\  {{ :​faq:​2019-02-13_181159.png |}}\\ 
 3. Сохраните учетную запись и в адресной строке скопируйте ID данного провайдера.\\ ​ 3. Сохраните учетную запись и в адресной строке скопируйте ID данного провайдера.\\ ​
-{{ :​faq:​2019-02-13_181234.png |}} +{{ :​faq:​2019-02-15_125753.png |}} 
-4. Переходим в раздел **Система** -> **Кастомизация системных файлов**. Открываем для редактирования конфигурационный файл **extensions.conf**. \\ {{ :​faq:​2018-10-02_123824.png |}}\\  ​+4. Добавьте **исходящее правило** для созданного провайдера. Все звонки по умолчанию мы будем направлять через данного провайдера,​ поэтому будьте внимательны при создании исходящего шаблона. Звонки через провайдеров Zadarma можно осуществлять на номера,​ начинающиеся с 7, поэтому наш шаблон принимает вид:\\  
 +{{ :​faq:​2019-02-15_125539.png |}}\\  
 +5. Обратите внимание,​ **приоритет** исходящего правила для провайдера **Route** должен быть ниже всех!\\  
 +{{ :​faq:​2019-02-15_130304.png |}}\\  
 +6. Переходим в раздел **Система** -> **Кастомизация системных файлов**. Открываем для редактирования конфигурационный файл **extensions.conf**. \\ {{ :​faq:​2018-10-02_123824.png |}}\\  ​
 Выбираем режим "​**Добавлять в конец файла**"​. \\ {{ :​faq:​2018-10-02_123857.png |}}\\ \\  Выбираем режим "​**Добавлять в конец файла**"​. \\ {{ :​faq:​2018-10-02_123857.png |}}\\ \\ 
-5. В окне редактирования вставляем следующие строки:​\\ ​+7. В окне редактирования вставляем следующие строки:​\\ ​
  
 <​code>​ <​code>​
 +[globals](+)
 +MIKO_PREFIX_NUMBER_201=1;​ Префикс для внутреннего номера 201
 +MIKO_PREFIX_NUMBER_202=2;​ Префикс для внутреннего номера 202
 +
 [SIP-PROVIDER-3B7181D15C7C6079BE3DF5D97A8558B4-outgoing-custom] [SIP-PROVIDER-3B7181D15C7C6079BE3DF5D97A8558B4-outgoing-custom]
 exten => _.!,​1,​ExecIf($[ "​${PREFIX_NUMBER}x"​ != "​x"​ ]?return) exten => _.!,​1,​ExecIf($[ "​${PREFIX_NUMBER}x"​ != "​x"​ ]?return)
 +    same => n,ExecIf($[ "​${MIKO_PREFIX_NUMBER}x"​ == "​x"​ ]?​Set(MIKO_PREFIX_NUMBER=${MIKO_PREFIX_NUMBER_${CHANNEL(peername)}}))
     same => n,​Set(PREFIX_NUMBER=${MIKO_PREFIX_NUMBER})     same => n,​Set(PREFIX_NUMBER=${MIKO_PREFIX_NUMBER})
     same => n,ExecIf($[ "​${MIKO_PREFIX_NUMBER}x"​ != "​x"​ ]?​Goto(outgoing,​${MIKO_PREFIX_NUMBER}${EXTEN},​4))     same => n,ExecIf($[ "​${MIKO_PREFIX_NUMBER}x"​ != "​x"​ ]?​Goto(outgoing,​${MIKO_PREFIX_NUMBER}${EXTEN},​4))
     same => n,return     same => n,return
 +    ​
 +[all_peers-custom]
 +include => internal-custom
 +
 +[internal-custom]
 +exten => _.!,​1,​NoOp(Start custom context)
 +    same => n,ExecIf($[ "​${MIKO_PREFIX_NUMBER}x"​ == "​x"​ ]?​Set(MIKO_PREFIX_NUMBER=${MIKO_PREFIX_NUMBER_${FROM_PEER}}))
 +    same => n,Return()
 </​code>​ </​code>​
  
 +В выше приведенном фрагменте кода Вам необходимо составить правильное наименование контекста.\\ ​
 +Формат создаваемого контекста:​\\ ​
 +<​code>​
 +[ID-ПРОВАЙДЕРА-outgoing-custom]
 +</​code>​
 +  * **ID-ПРОВАЙДЕРА** - значение,​ которое вы сохранили на третьем шаге, описанном в данном способе. В нашем примере это **SIP-PROVIDER-3B7181D15C7C6079BE3DF5D97A8558B4**. ​
 +
 +Ниже красным цветом выделен фрагмент,​ который Вам необходимо изменить.\\ ​
 {{ :​faq:​2019-02-13_181603.png |}}\\  {{ :​faq:​2019-02-13_181603.png |}}\\ 
-Все исходящие звонки должны проходить через контекст **miko-peers-custom**. Перед набираемым исходящим номером **${EXTEN}** всегда должен добавляться префикс **${MIKO_PREFIX_NUMBER}**. Следовательно нам осталось для каждой учетной записи (201 и 202) указать префикс **${MIKO_PREFIX_NUMBER}**,​ которая должна добавлять АТС перед звонком на номер. Для 201 учетной записи - это префикс 1, для 202 учетной записи - префикс 2. \\ \\ +
 **Сохраняем** изменения и возвращаемся обратно к списку конфигурационных файлов.\\ \\  **Сохраняем** изменения и возвращаемся обратно к списку конфигурационных файлов.\\ \\ 
-4. Переходим в раздел **Телефония** -> **Сотрудники**. Для сотрудника с 201 номером переходим к расширенным настройкам.\\ {{ :​faq:​2019-02-07_153719.png |}}\\  + 
-В поле **Дополнительные параметры SIP учетки** добавляем следующие строки:​\\  +Таким образом для 201 и 202 учетных записей мы задали префиксы. Все исходящие звонки теперь будут проходить через ​требуемого провайдера.\\ \\  
-<​code>​ + 
-context=miko-peers-custom +==== Маршрут "По умолчанию" ==== 
-setvar=MIKO_PREFIX_NUMBER=1 +В ряде случаевпри описании входящих маршрутов необходимо направить вызов не на внутренний номер, а на мобильный ​номер ​сотрудника. В этом случае необходимо описать "Префикс ​по умолчанию",​ иначе могу возникнуть проблемы с обработкой таких ​вызовов.  
-</​code>​\\  + 
-{{ :​faq:​2019-02-07_172128.png |}}\\  +При ​маршрутизации по DID номеру:
-Таким образом для 201 учетной записи мы задали префикс ​1. Все исходящие звонки теперь будут проходить через ​первого провайдера.\\ \\  +
-5. Аналогичные действия ​выполняем ​для учетной записи с внутренним номером 202. В поле ​**Дополнительные параметры ​SIP учетки** добавляем следующие строки:\\ +
 <​code>​ <​code>​
-context=miko-peers-custom +[public-direct-dial-custom] 
-setvar=MIKO_PREFIX_NUMBER=2 +exten => _.!,​1,​NoOp(Start custom context) 
-</​code>​\\  +    same => n,​Set(__MIKO_PREFIX_NUMBER=2
-Таким образом ​для 202 учетной записи мы задали префикс 2. Все исходящие звонки теперь будут проходить через второго провайдера.\\ \\ +    same => n,Return() 
 +</​code> ​  
 + 
 +Для **каждого** провайдера следует ​также описать контекст
 +<​code>​  
 +[ID-ПРОВАЙДЕРА-incoming] 
 +exten => _.!,​1,​NoOp(Start custom context) 
 +    same => n,​Set(__MIKO_PREFIX_NUMBER=2) 
 +    same => n,Return()  
 +</​code>​  
 На этом настройка завершена! На этом настройка завершена!
 +
 +[[faq:​|Обратно к инструкциям]]
faq/specific_provider.1550071000.txt.gz · Последние изменения: 2019/06/11 13:06 (внешнее изменение)