Документация

Пользовательские голосовые провайдеры

Версия v2.3.1 · Обновлено

Пользовательские голосовые провайдеры#

IncidentRelay может загружать пользовательские голосовые провайдеры на Python для self-hosted установок.

Голосовой провайдер — это Python-модуль, который умеет совершать телефонный вызов через API конкретного провайдера: Mango, Voximplant, Zadarma, шлюз Asterisk, внутреннюю PBX или любой другой сервис.

Самому IncidentRelay не нужно знать специфические детали API провайдера. Он загружает ваш модуль провайдера и взаимодействует с ним через стабильный провайдерский API.

Поддерживаемые возможности#

Провайдерский API рассчитан на:

  • Вызовы с синтезом речи (text-to-speech)
  • Отслеживание идентификатора вызова провайдера
  • Колбэки статуса вызова
  • Колбэки нажатия кнопок DTMF
  • Действия ACK / Resolve с телефонной клавиатуры
  • Опциональный опрос статуса вызова

Структура каталогов#

Каталог пользовательских провайдеров по умолчанию:

/usr/local/lib/incidentrelay/voice_providers

Пример:

/usr/local/lib/incidentrelay/voice_providers/
├── README.md
├── mango.py
├── zadarma.py
└── internal_pbx.py

Право на запись в этот каталог должно быть только у администраторов сервера, поскольку файлы провайдеров — это исполняемый Python-код.

Рекомендуемые права доступа:

sudo mkdir -p /usr/local/lib/incidentrelay/voice_providers
sudo chown root:root /usr/local/lib/incidentrelay/voice_providers
sudo chmod 755 /usr/local/lib/incidentrelay/voice_providers

Разделы документации#

Примеры#

Примеры файлов провайдеров хранятся в:

examples/voice_providers/

Рекомендуемая точка старта:

examples/voice_providers/example_http.py