Объединение 3CX Phone System с Asterisk (FreePBX)

В этой статье мы расскажем, как объединить системы 3CX Phone System v14 и Asterisk FreePBX v13. Будем исходить из того, что обе системы находятся в одной локальной сети. Если у вас возникнут вопросы или пожелания по улучшению интеграции, вы можете задать их в специальном разделе нашего форума.

Настройка 3CX Phone System


В 3CX Management Console добавьте новый транк 3CX в разделе Bridges — Add Bridge.

0d12bd1077b09dc5721b5fa03404150a.png

Параметры 3CX транка


  • Virtual extension number — оставьте значение, присвоенное системой, либо укажите другое  5-значное число Bridge ID. Зафиксируйте Bridge ID и не меняйте его, т.к. он используется в дальнейшем.
  • Name of Bridge — назовите транк, как вам удобно. Обычно название отображает направление вызовов, например, To-Asterisk.
  • Type of 3CX Bridge – установите тип транка Master.
  • Outbound rule prefix to reach remote 3CX PBX — если вы хотите использовать префикс для вызовов, идущих в систему Asterisk, укажите его. Однако мы рекомендуем заранее определить номерной план таким образом, чтобы пользователи делали прямой набор, т.е. без префиксов. В этом случае префикс указывать (и набирать) не нужно.
  • Authentication Password — система автоматически генерирует сложный 8-ми символьный пароль Bridge Password. Зафиксируйте Bridge Password и не меняйте его, т.к. он используется в дальнейшем.
  • Assigned Codecs — голосовые кодеки, используемые для этого транка. По умолчанию установлен кодекGSM-FR, однако вы можете добавить другие кодеки и определить их приоритет. Обратите внимание, что добавленные вами кодеки должны поддерживаться и со стороны Asterisk. Мы рекомендуем использовать широкополосный кодек G722 и назначить ему высший приоритет, чтобы система пыталась его использовать прежде других.


Остальные параметры: Allow tunneled connection, Publish information, Receive information, Supports Re-Invite, Support Replaces, PBX Delivers Audio оставьте по умолчанию.
После нажатия кнопки Next появится интерфейс создания исходящего правила на Asterisk. Настройка исходящих правил подробна рассмотрена здесь.

Настройка Asterisk


В системе Asterisk создайте исходящий транк со следующими параметрами:

573eb9d8967179b77ac32f158f8b028a.png

Outgoing — Trunk name: 3CX Bridge Outgoing

Outgoing — PEER Details:

host=[3CX IP]

port=[3CX SIP Port]

username=[3CX Bridge ID]

fromuser=[3CX Bridge ID]

secret=[3CX Bridge Password]

sendrpid=yes

qualify=yes

type=peer

И входящий транк:

ca2ee904f5d6b5b96f4eebbba16a4c64.png

Incoming — USER Details:

host=[3CX IP]

port=[3CX SIP Port]

type=peer

trustrpid=yes

context=from-trunk

Incoming — Register String:

[3CX Bridge ID]:[3CX Bridge Password]@[3CX IP]:[3CX SIP Port]/[3CX Bridge ID]

Параметры транка


  • 3CX Bridge ID — Виртуальный добавочный номер, который был установлен при создании транка 3CX.
  • 3CX Bridge Password — Пароль виртуального добавочного номера, который был установлен при создании транка 3CX.
  • 3CX IP — IP адрес или FQDN имя сервера 3CX, к которому подключается сервер Asterisk.
  • 3CX SIP Port — SIP порт сервера 3CX. Если у вас обычная (т.е. не облачная) инсталляция 3CX, SIP порт по умолчанию 5060. Изменить SIP порт можно в интерфейсе управления 3CX в разделе Settings — Network — Ports.


В системе Asterisk необходимо также создать входящий и исходящий маршрут, определяющий маршрутизацию вызовов с / на 3CX Phone System. Для этого обратитесь к документации FreePBX. 

Тестирование интеграции


Если настройка транков выполнена правильно, транк 3CX на Asterisk должен иметь статус Registered в консоли управления в разделе System Status — Ports/Trunks.

8f911dae325735dfef40b083edfe26a9.png

Если вы сделаете захват трафика утилитой Wireshark, SIP запрос INVITE должен иметь примерно такой вид.

d5f1efabe639e117e7f9931fb73e93f8.png

Параметры запроса


  • 101 — набранный с Asterisk на 3CX номер
  • 10003 — виртуальный добавочный номер транка
  • John Smith и 100 — Display Name и Caller ID пользователя Asterisk
  • 10.172.1.25:5061 — IP адрес и SIP порт Asterisk
  • 192.168.9.206:5060 — IP адрес и SIP порт  3CX Phone System


Дополнительная информация


© Habrahabr.ru