Объединение 3CX Phone System с Asterisk (FreePBX)
В этой статье мы расскажем, как объединить системы 3CX Phone System v14 и Asterisk FreePBX v13. Будем исходить из того, что обе системы находятся в одной локальной сети. Если у вас возникнут вопросы или пожелания по улучшению интеграции, вы можете задать их в специальном разделе нашего форума.
Настройка 3CX Phone System
В 3CX Management Console добавьте новый транк 3CX в разделе Bridges — Add Bridge.
Параметры 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 создайте исходящий транк со следующими параметрами:
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
И входящий транк:
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.
Если вы сделаете захват трафика утилитой Wireshark, SIP запрос INVITE должен иметь примерно такой вид.
Параметры запроса
- 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
Дополнительная информация