Перейти к содержанию

CDN REST hooks

Описание

В сборках WCS до 5.3.398, одно и то же REST hook приложение defaultApp использовалось и для публикации/проигрывания WebRTC потоков на одном сервере, так и для передачи WebRTC потоков между узлами CDN. Начиная со сборки 5.3.398, для WebRTC потоков внутри CDN используется отдельное REST hook приложение cdnApp

03:11:58,847 INFO            RestClient - API-ASYNC-pool-2-thread-8 SEND REST OBJECT ==>
URL:http://localhost:8081/apps/CdnApp/connect
OBJECT:
{
  "custom" : {
    "aclAuth" : "a5504bfd-c4ab-4c19-bc18-6eed885d4389"
  },
  "nodeId" : "f02vkq9PbK9A8MrBnKatCK9clLbHbPyR@192.168.1.39",
  "appKey" : "cdnApp",
  "sessionId" : "/192.168.1.64/192.168.1.39-Pci4P605",
  "status" : "NEW",
  "keepAlive" : false,
  "mediaProviders" : [ "WebRTC" ]
}

Это позволяет реализовать авторизацию пользователей только для публикации входящих и просмотра исходящих потоков, не затрагивая внутренние потоки CDN.

Warning

Необходимо добавить приложение cdnApp при обновлении WCS с предыдущей сборки

Настройка

По умолчанию, к WebRTC потокам внутри CDN применяется REST hook приложение cdnApp

cdn_app_name=cdnApp

Это поведение можно вернуть к тому, что было принято по умолчанию в предыдущих сборках

cdn_app_name=defaultApp

Данный параметр влияет на часть маршрута, ближайшую к текущему узлу CDN. Например, если на Edge сервере выставлена настройка cdn_app_name=defaultApp, данный Edge сервер просит Origin или Transcoder использовать defaultApp для соединений и захват потоков с этих серверов на данный Edge. Таким образом, если для авторизации WebRTC стриминга внутри CDN применяется собственный бэкенд, предпочнительно указать собственное REST hook приложение на всех серверах в CDN.

Добавление REST hook приложения при обновлении WCS с предыдущей сборки

После обновления WCS до сборки 5.3.398, если новая сборка устанавливается поверх старой, cdnApp должно быть добавлено в список REST hook приложений при помощи CLI:

add app CdnApp cdnApp "http://localhost:8081/apps/CdnApp"
add app-rest-method -a cdnApp