Функционал доступен при наличии лицензии SMG-API.
Функционал доступен только для SMG-3016 и SMG-2016.
Введение
Назначение
Данная документация описывает использование HTTP API шлюза SMG для реализации сценария Click-to-Call — инициирования вызова между абонентами через внешний сервис.
Предварительная настройка
Перед началом работы необходимо выполнить следующие шаги:
1. Настроить API сервер шлюза
- Убедиться, что API сервер включён и настроены интерфейсы событий вызовов и системы
API → Сервер
При включении интерфейса событий вызовов автоматически открывается дополнительный фиксированный порт 3999, который используется для управления вызовом.
- Порт, указанный в WEB-интерфейсе, используется только для защищённого (TLS) подключения в рамках интеграции с Битрикс24 (Приложение Х) и в данной документации не рассматривается
- Для работы click-to-call используется порт 3999
Порт 3999 используется для click-to-call и не может быть изменён.
2. Получение токена авторизации
API ключ
API → Ключи
- Используется значение ключа напрямую как токен
API аккаунт
Аккаунт должен иметь:
- доступ к событиям вызовов
API → Аккаунты
Авторизация происходит по имени пользователя и паролю
curl -X POST http://<IP>:3999/api/v1/login \
-H "Content-Type: application/json" \
-d '{"login":"<login>","password":"<password>"}'
Ответ:
{"status":"ok","version":"v1","payload":{"token":"Y3CupaVwSpDcmK83kxzSlymZhEIeib"}}
SIP абонент
Абонент должен иметь:
- включённый доступ к API
- заданный пароль
Абоненты → SIP абоненты
Авторизация происходит по номеру абонента и паролю
curl -X POST http://<IP>:3999/api/v1/login \
-H "Content-Type: application/json" \
-d '{"login":"<number>","password":"<password>"}'
Ответ:
{"status":"ok","version":"v1","payload":{"token":"UjovsML3mIAzIs66zevqnQGElCjwrU"}}
Токены API аккаунта и SIP-абонента истекают через 20 минут неактивности. API ключ не имеет ограничения по времени действия.
Click-to-Call
Описание
Метод инициирует установление двухстороннего вызова:
- Сначала выполняется вызов абонента cdpn
- После получения сигнала 100 Trying инициируется вызов cgpn
- После ответа обоих абонентов устанавливается соединение
Параметры запроса
| Параметр | Описание |
|---|---|
| from_number | номер инициирующего абонента (cgpn) |
| to_number | номер вызываемого абонента (cdpn) |
Запрос:
curl -X POST "http://<IP>:3999/api/v1/service/call/make_call" \
-H "accept: application/json" \
-H "Authorization: Bearer UjovsML3mIAzIs66zevqnQGElCjwrU" \
-H "Content-Type: application/json" \
-d '[
{
"_name": "in",
"_content": [
{
"_name": "request",
"_content": [
{
"_name": "make_call",
"_attributes": {
"to_number": "<cdpn>",
"from_number": "<cgpn>"
}
}
]
}
]
}
]'
Ответ:
ok |
Особенности
- API не возвращает структурированный JSON-ответ
- Ответ всегда представляет собой строку ok
API предназначено для инициирования вызовов без возможности отслеживания их состояния.



