
Работа коннектора AsterX основана на взаимодействии с АТС через управляющий интерфейс AMI (Asterisk Manager Interface), соответственно, возможна интеграция Битрикс24 с любой SIP АТС, работающей на Asterisk
Программные АТС:
Аппаратные решения на Asterisk с поддержкой AMI (зависит от моделей)
Требования к инфраструктуре и сети:

sudo su
cd /opt
git clone https://github.com/estvita/asterx.git
cd asterx
python3 -m venv .venv
chown asterisk:asterisk -R /opt/asterx
source .venv/bin/activate
pip install -r requirements/local_sql.txt
nano config.ini
В конфигурационный файл config.ini вписать следующие данные:
[asterisk]
pbx_id=XXXXXX
host=localhost
username=asterx
secret=secret
где:
Запустить в тестовом режиме
python main.py
После авторизации коннектора на нашем сервере в базу коннектора будут переданы ключи и базовые настройки.
К одному порталу Битрикс24 можно подключить несколько серверов телефонии.
Настройки для конкретного портала осуществляются непосредственно в интерфейсе Битрикс24 в приложении AsterX и применяются одновременно ко всем привязанным к порталу серверам телефонии

Коннектор, в свою очередь, отправит на сервер список контекстов, из которых в настройках АТС в интерфейсе битрикс24 нужно выбрать внешние, внутренние и игнорируемые.
Список контекстов содержит по одной учетке для каждого контекста, которые коннектор обнаружил на вашей АТС - это сделано для удобства сопоставления.
Важно помнить, что во входящем или исходящем звонке участвует два контекста, соответственно, в настройках должно быть как минимум по одному для внешней и внутренней линии.
Например, ваш транк (подключение к провайдеру) находится в контексте from-pstn, а внутренние номера в контексте from-internal (это стандартные контексты для FreePBX), то для from-pstn нужно выбрать "внешний", а для from-internal "внутренний".

Для исключения звонков из статистики нужно выбрать пункт "Исключить". Например, вам нужно исключить входящие звонки на определенный номер, который вам предоставляет провайдер. Для этого в настройках этого транка измените контекст, например, на from-XXXXXXX (где XXXXXXX - номер). После применения настроек на стороне АТС (не забудьте скорректировать диалплан под новый контекст), перезапустите коннектор AsterX, чтобы он передал информацию о новом контексте в приложение. Далее откройте приложение в интерфейсе Битрикс24 и присвойте контексту from-XXXXXXX значение "Исключить".
Звонки между номерами, относящимися к внутренним контекстам будут исключаться из статистики автоматически. То есть если у вас два контекста для внутренних номеров from-managers и from-office и в настройках приложения вы присвоили им значение "внутренний", то звонки между этим номерами не будут передаваться в Битрикс24. Так же это касается звонков между номерами одного контекста, помеченного в приложении как "внутренний" (напр., from-internal).
Для сопоставления звонков между пользователями битрикс24 и АТС в настройках пользователей телефонии каждому необходимо присвоить номер, которым он пользуется в АТС и, для того чтобы работал набор номера по клику, в качестве номера по умолчанию установить приложение AsterX
После любых изменений с настройками пользователей в списке АТС в интерфейсе приложения необходимо нажать "Обновить" - будет пересоздана локальная база пользователей в коннекторе

Для автоматического запуска коннектора используйте Systemd
# /etc/systemd/system
[Unit]
Description=gulin.kz: Asterx Connector
After=network.target asterisk.service
Wants=asterisk.service
[Service]
User=asterisk
WorkingDirectory=/opt/asterx
Environment="PATH=/opt/asterx/.venv/bin"
ExecStart=/opt/asterx/.venv/bin/python main.py
Restart=always
RestartSec=10s
[Install]
WantedBy=multi-user.target
Для отладки процесса настройки подключения в коннекторе можно включить подробное логирвание (по умолчанию в файл bitrix.log записываются только системные сообщения и критические ошибки)
Для включения подробного логирования добавьте в config.ini параметр logging в секцию app. В результате конфигурационный файл будет выглядеть так:
[app]
logging = 1
[asterisk]
pbx_id=XXXXXX
username=asterx
secret=secret
Доступные значения параметра logging:
ВНИМАНИЕ! При большом количестве звонков лог файл будет быстро увеличивать свой объем. Не забудьте настроить Logrotate или любым другим способом контролируйте объем файла.
Для сверки количества переданных в Битрикс24 звонков откройте раздел "Разработчикам" > "Статистика" (https://crm.bitrix24.com/devops/statistic/)
В фильтре в поле "Приложение" выберите "gulin.kz: AsterX" - и примените фильтр, в результате должно получится примерно так:

При корректной работе коннектора количество событий telephony.externalcall.register и telephony.externalcall.finish должно совпадать в период отсутствия звонков (нерабочее время). Во время работы колл-центра количество зарегистрированных звонков может превышать количество завершённых звонков.
Обновлено: 04.02.2026 08:44