Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
faq:connectats2 [2019/01/25 06:56] Мальцев Иван |
faq:connectats2 [2022/11/15 13:52] (текущий) Портнов Алексей [Статусы абонентов] |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== Объединение двух Askozia PBX ====== | + | ====== Объединение двух MikoPBX ====== |
[[:faq|Обратно к перечню инструкций]]\\ \\ | [[:faq|Обратно к перечню инструкций]]\\ \\ | ||
Компания call-центра имеет два офиса в **Москве** и **Санкт-Петербурге**.\\ | Компания call-центра имеет два офиса в **Москве** и **Санкт-Петербурге**.\\ | ||
- | В каждом офисе используется **Askozia PBX**:\\ | + | В каждом офисе используется **MikoPBX**:\\ |
* **АТС Москва** - //172.16.32.226// - все внутренние номера сотрудников назначены по шаблону **2ХХ** | * **АТС Москва** - //172.16.32.226// - все внутренние номера сотрудников назначены по шаблону **2ХХ** | ||
* **АТС Петербург** - //172.16.32.227// - все внутренние номера сотрудников назначены по шаблону **3ХХ**\\ | * **АТС Петербург** - //172.16.32.227// - все внутренние номера сотрудников назначены по шаблону **3ХХ**\\ | ||
Строка 11: | Строка 11: | ||
Схематично маршрутизация вызовов представлена на рисунке.\\ | Схематично маршрутизация вызовов представлена на рисунке.\\ | ||
{{:faq:topology.png |}} | {{:faq:topology.png |}} | ||
+ | |||
+ | ===== Провайдеры телефонии ===== | ||
- | Для каждой АТС необходимо добавить учетную запись провайдера. Для её создания необходимо перейти в **Маршрутизация** -> **Провайдеры телефонии**.\\ | + | Для каждой АТС необходимо добавить учетную запись провайдера. Для её создания необходимо перейти в **Маршрутизация** -> **Провайдеры телефонии**.\\ |
- | ===== Настройка провайдера Санкт-Петербург для АТС Москвы ===== | + | Создайте провайдеров и заполните параметры подключения как на скриншоте ниже: |
- | 1. Введем IP адрес **АТС Москва** //172.16.32.226// в браузере и добавим новую **SIP** учетную запись провайдера. К этой учетной записи будет подключаться АТС из Петербурга.\\ | + | {{ :faq:providers_msk_piter.jpg |}} |
+ | <note warning>**Идентификатор провайдера появится в адресной строке только после записи провайдера**. Временно в поле "**Логин**" укажите производное значение. После записи провайдера можно его скорректировать. </note> | ||
- | {{ :faq:provider_peterb_1.png |}} | + | В "**Расширенные настройки**" - "**Переопределение SIP заголовка "From"**" - установите влаг "Отключить использование поля **fromuser**" |
- | **Логин** на этом этапе укажем произвольный. **Пароль** придумаем и введем сложный, аналогичный пароль позже укажем в настройках провайдера на АТС Петербурга. С этим паролем АТС Москвы будет регистрироваться на АТС Петербурга, и наоборот АТС Петербурга на АТС Москвы. В качестве **хоста** указываем IP адрес АТС Петербурга.\\ \\ | + | В "**Расширенные настройки**" - "**Дополнительные параметры**" следует прописать: |
- | 2. На вкладке **Настройки регистрации** выключаем поле **From User**.\\ | + | <code>[endpoint] |
- | {{ :faq:2018-018-17_105416.png |}}\\ \\ | + | set_var=IGNORE_TIME=1 |
- | Если АТС Петербурга должна иметь возможность подключаться с разных IP, т.е. она **не имеет** постоянного IP адреса, то в дополнительные параметры добавляем\\ <code>host=dynamic</code>\\ | + | |
- | {{ :faq:2018-08-17_161442.png |}}\\ \\ | + | |
- | //Сохраняем настройки//.\\ \\ | + | |
- | + | ||
- | 3. Настраиваем маршрутизацию **исходящих** вызовов для провайдера "Офис Санкт-Петербург". | + | |
- | + | ||
- | Для настройки исходящих звонков на другую АТС воспользуется расширенными возможностями АТС: создадим приложение диалплана asterisk, которое будет направлять вызовы на номера **3XX** через провайдера "Офис Санкт-Петербург". | + | |
- | Перейдем в раздел **Модули - Приложения диалпланов**, добавим новое приложение: | + | |
- | + | ||
- | {{ :faq:outbound_to_piter_1.png |}} | + | |
- | + | ||
- | В поле **Номер для вызова приложения** укажем шаблон внутренних номеров АТС Петербурга **3XX**, **Тип кода** укажем **Диалплан Asterisk**. На вкладке "Программный код", добавим код обработки вызова: | + | |
- | + | ||
- | <code> | + | |
- | 1, NoOP(Call to another PBX) | + | |
- | n, Set(PROVIDER_NAME=SIP-PROVIDER-6563F7F05D9485985E5858EDABDD9A28) | + | |
- | n, Dial(SIP/${PROVIDER_NAME}/${EXTEN},600,tkTeKM(dial_answer)b(dial_create_chan,s,1)) | + | |
</code> | </code> | ||
- | //Сохраняем настройки//. | + | Эта опция отключит функционал "**Нерабочее время**" для всех входящих через этого провайдера. |
+ | {{ :faq:mikopbx_nastroĭka_sip_provaĭdera.png |}} | ||
- | Во второй строке кода нам необходимо указать идентификатор провайдера "Офис Санкт-Петербург". Переходим в учетку провайдера, в адресной строке браузера копируем идентификатор провайдера: | + | <note important>**IGNORE_TIME** - опция будет доступна в 2022.02.103+</note> |
+ | ===== Исходящая маршрутизация ===== | ||
- | {{ :faq:provider_peterb_id_3.png |}} | + | Необходимо перейти в **Маршрутизация** -> **Исходящие маршруты**. Опишите исходящие маршруты как в скриншоте ниже: |
+ | {{ :faq:out_rout_piter_jpg_out_rout_msk_jpg_i_prov.jpg |}} | ||
- | Вернемся к приложению для исходящих звонков, укажем верный идентификатор провайдера во второй строке: | + | ===== Входящая маршрутизация ===== |
- | {{ :faq:outbound_to_piter_2.png |}} | + | Добавим **для каждой АТС одинаковое приложение диалплана**, которое будет переадресовывать звонки на внутренние номера . В разделе **Модули - Приложения диалпланов** добавим новое приложение: |
- | + | {{ :faq:dialplan_income_app.jpg |}} | |
- | Для того, чтобы задействовать созданное приложение, перейдем в раздел **Система - Кастомизация системных файлов**, найдем файл **extensions.conf**, отредактируем файл: | + | |
- | + | ||
- | {{ :faq:outbound_to_piter_3.png |}} | + | |
- | + | ||
- | **Режим** выберем **Добавлять в конец файла**: | + | |
- | + | ||
- | {{ :faq:outbound_to_piter_4.png |}} | + | |
- | + | ||
- | В поле редактирования добавим код: | + | |
- | + | ||
- | <code> | + | |
- | [internal](+) | + | |
- | exten => _3XX,1,Goto(applications,${EXTEN},1) | + | |
- | </code> | + | |
- | + | ||
- | + | ||
- | 4. Настраиваем маршрутизацию **входящих** вызовов для провайдера "Офис Санкт-Петербург". | + | |
- | + | ||
- | Добавим приложение диалплана, которое будет переадресовывать звонки на номера по шаблону 2XX в контекст внутренних номеров. В разделе **Модули - Приложения диалпланов** добавим новое приложение: | + | |
- | + | ||
- | {{ :faq:inbound_from_piter_3.png |}} | + | |
**Номер для вызова приложения** укажем произвольный уникальный номер, **Тип кода** выберем **Диалплан Asterisk**. Перейдем на закладку **Программный код** и добавим код обработки звонка: | **Номер для вызова приложения** укажем произвольный уникальный номер, **Тип кода** выберем **Диалплан Asterisk**. Перейдем на закладку **Программный код** и добавим код обработки звонка: | ||
Строка 81: | Строка 49: | ||
</code> | </code> | ||
- | Создадим входящий маршрут для звонков из Петербурга. Перейдем в раздел **Маршрутизация - Входящие маршруты**, добавим новое правило: | + | Создадим входящий маршрут для каждой АТС. Перейдем в раздел **Маршрутизация - Входящие маршруты**, добавим новое правило: |
- | {{ :faq:inbound_from_piter_5.png |}} | + | {{ :faq:income_msk_piter_rout.jpg |}} |
- | **Провайдер** укажем "Офис Санкт-Петербург", **Дополнительный номер(DID)** - шаблон номеров **2XX**, в разделе переадресации вызова направим звонки на ранее созданное приложение. | + | ===== Переадресация ===== |
+ | <note important>В целях безопасности, переадресация на "**Внешние**" номера телефонов запрещена! </note> | ||
- | ===== Настройка провайдера Офис Москва для АТС Петербурга ===== | + | Чтобы снять ограничение, добавьте через раздел [[:custom-files|Кастомизация системных файлов]] в конец файла **extensions.conf** следующий текст: |
- | 1. Введем IP адрес **АТС Петербурга** //172.16.32.227// в браузере и добавим новую **SIP** учетную запись провайдера. К этой учетной записи будет подключаться АТС из Москвы.\\ | + | |
- | {{ :faq:provider_msk_1.png |}} | + | <code>[internal-transfer](+) |
+ | exten => _2XX,1,Set(__ISTRANSFER=transfer_) | ||
+ | same => n,Goto(outgoing,${EXTEN},1) | ||
+ | </code> | ||
+ | Это разрешит переадресацию на 2XX номера. | ||
- | **Логин** на этом этапе укажем произвольный. **Пароль** введем тот, что был указан в настройках провайдера на АТС Москвы. В качестве **хоста** указываем IP адрес АТС Москвы.\\ \\ | + | На второй АТС, чтобы разрешить переадресацию на 3XX номера |
- | 2. На вкладке **Настройки регистрации** выключаем поле **From User**.\\ | + | добавьте через раздел [[:custom-files|Кастомизация системных файлов]] в конец файла **extensions.conf** следующий текст |
- | {{ :faq:2018-018-17_105416.png |}}\\ \\ | + | |
- | Если АТС Москвы должна иметь возможность подключаться с разных IP, т.е. она **не имеет** постоянного IP адреса, то в дополнительные параметры добавляем\\ <code>host=dynamic</code>\\ | + | |
- | {{ :faq:2018-08-17_161442.png |}}\\ \\ | + | |
- | //Сохраняем настройки//.\\ \\ | + | |
- | 3. Настраиваем маршрутизацию **исходящих** вызовов для провайдера "Офис Москва". | + | <code>[internal-transfer](+) |
- | + | exten => _3XX,1,Set(__ISTRANSFER=transfer_) | |
- | Создадим приложение диалплана asterisk, которое будет направлять вызовы на номера **2XX** через провайдера "Офис Москва". Перейдем в раздел **Модули - Приложения диалпланов**, добавим новое приложение: | + | same => n,Goto(outgoing,${EXTEN},1) |
- | + | ||
- | {{ :faq:outbound_to_msk_1.png |}} | + | |
- | + | ||
- | В поле **Номер для вызова приложения** укажем шаблон внутренних номеров АТС Москвы **2XX**, **Тип кода** укажем **Диалплан Asterisk**. На вкладке "Программный код", добавим код обработки вызова: | + | |
- | + | ||
- | <code> | + | |
- | 1, NoOP(Call to another PBX) | + | |
- | n, Set(PROVIDER_NAME=SIP-PROVIDER-8FA99B4A0BF00883220717AEFE067673) | + | |
- | n, Dial(SIP/${PROVIDER_NAME}/${EXTEN},600,tkTeKM(dial_answer)b(dial_create_chan,s,1)) | + | |
</code> | </code> | ||
- | //Сохраняем настройки//. | ||
- | Во второй строке кода нам необходимо указать идентификатор провайдера "Офис Москва". Переходим в учетку провайдера, в адресной строке браузера копируем идентификатор провайдера: | + | ===== Статусы абонентов ===== |
- | {{ :faq:provider_msk_id_3.png |}} | + | В некоторых случаях, абонентам одной АТС потребуется знать статусы абонентов другой станции. |
- | Вернемся к приложению для исходящих звонков, укажем верный идентификатор провайдера во второй строке: | + | К примеру при использовании: |
+ | * **BLF** на телефонных аппаратах | ||
+ | * "Панель телефонии для 1С" | ||
- | {{ :faq:outbound_to_msk_2.png |}} | + | Для настройки статусов потребуется: |
+ | - Добавьте **на первой АТС** через раздел [[:custom-files|Кастомизация системных файлов]] в конец файла **extensions.conf** следующий текст: <code>[internal-hints] | ||
+ | exten => 301,hint,PJSIP/301 | ||
+ | exten => 303,hint,PJSIP/303 | ||
+ | exten => 302,hint,PJSIP/302 | ||
+ | </code> | ||
+ | - Для **каждой АТС** добавьте через раздел [[:custom-files|Кастомизация системных файлов]] в конец файла **pjsip.conf** <code> | ||
+ | [<ID-Провайдера-Текщуей-АТС>-devicestate] | ||
+ | type=outbound-publish | ||
+ | server_uri=sip:<ID-Провайдера-Текщуей-АТС>@<ID-Провайдера-Другой-АТС>:<SIP-Порт-Другой-АТС> | ||
+ | event=asterisk-devicestate | ||
+ | |||
+ | [<ID-Провайдера-Текщуей-АТС>] | ||
+ | type=asterisk-publication | ||
+ | devicestate_publish=<ID-Провайдера-Текщуей-АТС>-devicestate | ||
+ | device_state=yes | ||
- | Для того, чтобы задействовать созданное приложение, перейдем в раздел **Система - Кастомизация системных файлов**, найдем файл **extensions.conf**, отредактируем файл: | + | [<ID-Провайдера-Текщуей-АТС>] |
- | + | type=inbound-publication | |
- | {{ :faq:outbound_to_msk_3.png |}} | + | event_asterisk-devicestate=<ID-Провайдера-Текщуей-АТС> |
- | + | </code> | |
- | **Режим** выберем **Добавлять в конец файла**: | + | <note tip>Замените теги **<ID-Провайдера-Текщуей-АТС>**, **<ID-Провайдера-Другой-АТС>**, **<SIP-Порт-Другой-АТС>** на свои значения |
- | + | </note> | |
- | {{ :faq:outbound_to_msk_4.png |}} | + | - Добавьте **на второй АТС** через раздел [[:custom-files|Кастомизация системных файлов]] в конец файла **extensions.conf** следующий текст: <code>[internal-hints] |
- | + | exten => 201,hint,PJSIP/201 | |
- | В поле редактирования добавим код: | + | exten => 203,hint,PJSIP/203 |
- | + | exten => 202,hint,PJSIP/202 | |
- | <code> | + | |
- | [internal](+) | + | |
- | exten => _2XX,1,Goto(applications,${EXTEN},1) | + | |
</code> | </code> | ||
- | 4. Настраиваем маршрутизацию **входящих** вызовов для провайдера "Офис Москва". | + | <note tip>Пример также можно посмотреть в [[https://wiki.asterisk.org/wiki/display/AST/Exchanging+Device+and+Mailbox+State+Using+PJSIP | официальной документации]] asterisk </note> |
- | Добавим приложение диалплана, которое будет переадресовывать звонки на номера по шаблону 3XX в контекст внутренних номеров. В разделе **Модули - Приложения диалпланов** добавим новое приложение: | + | ===== Одинаковые номера на АТС ===== |
- | {{ :faq:inbound_from_msk_3.png |}} | + | В идеале, на каждой АТС должен быть свой диапазон номеров SIP и они не должны пересекаться. Но на практике, возможно и наложение. В этом случае можно столкнуться с проблемой звонка с одной АТС на другую, вызов может обрываться. |
- | **Номер для вызова приложения** укажем произвольный уникальный номер, **Тип кода** выберем **Диалплан Asterisk**. Перейдем на закладку **Программный код** и добавим код обработки звонка: | + | Проблему можно обойти, **на каждой АТС** следует добавить через раздел [[:custom-files|Кастомизация системных файлов]] в конец файла **extensions.conf** следующую логику: |
<code> | <code> | ||
- | 1, GoTo(internal,${FROM_DID},1) | + | [ID_PROVIDER-outgoing-custom] |
- | n, Hangup() | + | ; При исходящем в caller ID добавляем префикс "_" (нижнее подчеркивание) |
+ | exten => _X!,1,Set(CALLERID(num)=_${CALLERID(num)}) | ||
+ | same => n,return | ||
+ | |||
+ | [ID_PROVIDER-incoming-custom] | ||
+ | ; При входящем удаляем префикс, для корректного отображения callerid | ||
+ | exten => _[0-9*#+]!,1,Set(CALLERID(num)=${CALLERID(num)=:1}) | ||
+ | same => n,return | ||
</code> | </code> | ||
- | Создадим входящий маршрут для звонков из Москвы. Перейдем в раздел **Маршрутизация - Входящие маршруты**, добавим новое правило: | + | <note important>**ID_PROVIDER** - это идентификатор провайдера текущей АТС, подсмотреть можно в адресной строке браузера.</note> |
- | {{ :faq:inbound_from_msk_5.png |}} | ||
- | **Провайдер** укажем "Офис Москва", **Дополнительный номер(DID)** - шаблон номеров **3XX**, в разделе переадресации вызова направим звонки на ранее созданное приложение. | ||
- | ===== Соединяем две АТС ===== | ||
- | 1. Для **АТС Москва**(//172.16.32.226//) откройте снова учетную запись провайдера "Офис Санкт-Петербург".\\ \\ | ||
- | В строке навигации браузера вы увидите имя учетной записи, в нашем примере **SIP-PROVIDER-6563F7F05D9485985E5858EDABDD9A28**. Скопируйте данное имя.\\ | ||
- | {{ :faq:provider_peterb_id_3.png |}}\\ | ||
- | 2. Для **АТС Петербург**(//172.16.32.227//) откройте учетную запись провайдера "Офис Москва".\\ | ||
- | В поле **Логин** вставьте имя учетной записи (//SIP-PROVIDER-6563F7F05D9485985E5858EDABDD9A28//). Сохраните примененные настройки.\\ \\ | ||
- | {{ :faq:provider_msk_2.png |}}\\ \\ | ||
- | Таким образом мы установили связь **АТС Петербург-> АТС Москва**. Теперь выполним те же действия только для установления связи **АТС Москва -> АТС Петербург**, и тогда мы соединим наши две станции.\\ \\ | ||
- | 3. Для **АТС Петербург**(//172.16.32.227//) откройте снова учетную запись провайдера "Офис Москва".\\ \\ | + | ===== Итоги ===== |
- | В строке навигации браузера вы увидите имя учетной записи, в нашем примере **SIP-PROVIDER-8FA99B4A0BF00883220717AEFE067673**. Скопируйте данное имя.\\ \\ | + | |
- | {{ :faq:provider_msk_id_3.png |}}\\ \\ | + | |
- | 4. Для **АТС Москва**(//172.16.32.226//) откройте учетную запись провайдера "Офис Санкт-Петербург".\\ | ||
- | В поле **Логин** вставьте имя учетной записи (//SIP-PROVIDER-8FA99B4A0BF00883220717AEFE067673//). Сохраните примененные настройки.\\ \\ | ||
- | {{ :faq:provider_peterb_2.png |}}\\ \\ | ||
Таким образом мы соединили две АТС! Подтверждением успешного подключения двух станций служит зеленый индикатор напротив учетной записи провайдера.\\ \\ | Таким образом мы соединили две АТС! Подтверждением успешного подключения двух станций служит зеленый индикатор напротив учетной записи провайдера.\\ \\ | ||
Для **АТС Москва**(//172.16.32.226//):\\ | Для **АТС Москва**(//172.16.32.226//):\\ | ||
Строка 186: | Строка 151: | ||
[[:faq|Обратно к перечню инструкций]] | [[:faq|Обратно к перечню инструкций]] | ||
- | |||
- |