Table of Contents |
---|
Общие сведения
Для интеграции с back-end сервером WCS использует REST / HTTP вызовы, которые мы называем REST Methods.
Таким образом, вы предоставляете WCS-серверу API на ваших скриптах, на которое WCS будет отправлять данные о коннектах, звонках, видеопотоках, и т.д.
REST-методы могут быть использованы для следующих целей:
- Аутентификация коннектов к серверу по токену или по паролю
- Получение в реальном времени информации о коннектах, дисконнектах, начале и завершении потоков, звонков, и т.д.
- Переопределение данных, переданных с клиента. Например можно переопределить и скрыть реальное имя потока или направление звонка.
- Реализация кастомного сигналинга с передачей данных через Websockets, например рассылка текстового сообщения в чате всем подключенным клиентам
REST-методы должны быть реализованы в виде простых HTTP / HTTPS - скриптов, которые работают с JSON в теле HTTP-запроса и отдают JSON в теле HTTP ответов.
Request
...
Protocol
...
HTTP / HTTPS
...
URL
...
http://path/method или https://path/method
...
Method
...
POST
...
Content-Type
...
application/json
...
Body
...
JSON
Response
В ответ WCS должен получить стандартный HTTP ответ с телом JSON
...
status
...
200
...
Reason phrase
...
OK
...
Body
...
JSON
Отключение REST методов
По умолчанию, обработка REST методов включена. Для отключения необходимо установить в файле flashphoner.properties следующий параметр
Code Block | ||||
---|---|---|---|---|
| ||||
disable_rest_requests=true |
Обработка задержек при ответе back-end сервера
При больших нагрузках возможны задержки ответов back-end сервера на запросы WCS. Контролировать максимальную длительность таких задержек можно при помощи настройки в файле flashphoner.properties
Code Block | ||||
---|---|---|---|---|
| ||||
rest_request_timeout=15 |
По умолчанию, максимальная длительность задержки ответа back-end сервера установлена в 15 секунд. Если в течение этого времени ответ не был получен, в логе сервера будет зафиксировано исключение
Code Block | ||||
---|---|---|---|---|
| ||||
09:05:17,012 ERROR RestClient - API-ASYNC-pool-12-thread-2 Got exception in REST
java.net.SocketTimeoutException: Read timed out |
Ошибка будет обработана в соответствии с настройкой restClientConfig.
Рекомендуется задавать максимальную длительность задержки при ответе сервера в пределах от 1 до 60 секунд. Значение
Code Block | ||||
---|---|---|---|---|
| ||||
rest_request_timeout=0 |
полностью отключает контроль задержки.
Include Page | ||||
---|---|---|---|---|
|