REST-метод | Параметры | Возвращаемый тип | Ошибки | Описание |
---|---|---|---|---|
SIP как RTMP | ||||
/call/startup | callId callee rtmpStream rtmpUrl hasAudio hasVideo sipLogin sipAuthenticationName sipPassword sipDomain sipOutboundProxy sipPort appKey sipRegisterRequired toStream visibleName | void | 409 - Conflict 500 - Internal error | Делает вызов на SIP. Если указан rtmpUrl, то медиа трафик, полученный со стороны SIP, отправляется на указанный rtmpUrl. Если указан toStream, то для отправки медиа трафика, полученного со стороны SIP, можно использовать метод /push/startup, чтобы создать транспондер для указанного имени потока. Если уже есть звонок с таким callId или rtmpUrl, возвращает 409 Conflict. |
/call/find_all | void | List<Call> | 404 - Call not found | Получить список всех SIP-звонков |
/call/find | callId callee rtmpUrl status | List<Call> | 404 - Call not found 500 - Internal error | Получить список звонков, найденных по фильтру |
/call/terminate | callId | void | 404 - Call not found 500 - Internal error | Сбросить SIP-звонок |
/call/send_dtmf | callId dtmf type | void | 404 - Call not found 500 - Internal error | Отправить DTMF внутри SIP-звонка |
/call/inject_sound | callId fileName | void | 404 - Call not found/File not found 500 - Internal error | Вставить аудио из указанного файла |
/call/inject_stream/startup | callId streamName | void | 404 - Call not found/File not found 500 - Internal error | Перенаправление потока в SIP вызов |
/call/inject_stream/terminate | callId | void | 404 - Call not found 500 - Internal error | Завершить перенаправление потока в SIP вызов |
RTSP | ||||
/rtsp/find | uri status | List<RtspAgent> | 404 - RTSP not found | Поиск RTSP-сессии по фильтру |
/rtsp/find_all | void | List<RtspAgent> | 404 - RTSP not found | Получить все RTSP-сессии |
/rtsp/terminate | uri | void | 404 - RTSP not found 500 - Internal error | Остановить RTSP-сессию |
/rtsp/startup | uri | void | 409 - Already in use 500 - Internal error | Создать RTSP-сессию |
Потоковое вещание | ||||
/stream/find_all | void | List<Stream> | 404 -Streams not found | Найти все потоки |
/stream/find | appKey name mediaSessionId sessionId status published | List<Stream> | 404 - Stream not found 500 - Internal error | Найти потоки по фильтру |
/stream/terminate | name mediaSessionId List<mediaSessionId> status published | void | 404 - Stream not found | Завершить работу потока или потоков, соответствующих указанным параметрам |
/stream/snapshot | streamName | <Base64 data> | 404 - Stream not found | Снять превью указанного потока |
/stream/startRecording | mediaSessionId config: <Config> | void | 404 - Stream not found 500 - Internal error | Начать запись потока в указанной медиасессии |
/stream/stopRecording | mediaSessionId | void | 404 - Recorder not found 500 - Internal error | Завершить запись потока в указанной медиасессии |
/stream/event/send | streamName payload | void | 404 - Stream not found 500 - Internal error | Отправить данные всем подписчикам потока |
Данные | ||||
/data/send | nodeId sessionId operationId payload | void | 500 - Internal error | Отправить данные подключенному клиенту |
Соединение | ||||
/connection/terminate | sessionId | void | 404 - No such connection 500 - Internal error | Выполнить дисконнект клиента |
/connection/find_all | void | List<Connection> | 404 - No connections found | Получить список всех коннектов к серверу |
/connection/find | appKey sessionId clientVersion clientType protocol | 404 - No connections found | Найти коннекты по фильтру | |
Републикация как RTMP | ||||
/push/startup | streamName rtmpUrl options | Transponder | 400 - Bad request 409 - Conflict 500 - Internal error | Создает транспондер, который подписывается на указанный поток и отправляет медиа трафик на указанный rtmpUrl. Имя потока, указанное в запросе, может быть именем уже публикуемого потока или именем зарезервированным при создании SIP-звонка (для отправки медиа трафика, полученного со стороны SIP). Параметр options может быть использован, чтобы выключить аудио или вставить аудио из файла при создании транспондера. Например, - "options": {"action": "mute"} - "options": {"action": "sound_on", "soundFile": "sound.wav", "loop": true} Если транспондер для такого потока и rtmpUrl уже существует, возвращает 409 Conflict. Если rtmpUrl не указан, или указан неверно и не может быть найден по DNS, возвращает 400 Bad request |
/push/find | streamName rtmpUrl | List<Transponder> | 404 - Transponder not found | Найти транспондеры по фильтру |
/push/find_all | void | List<Transponder> | 404 - Transponder not found | Найти все транспондеры |
/push/terminate | mediaSessionId | void | 404 - Transponder not found 409 - Conflict 500 - Internal error | Завершить работу транспондера |
/push/mute | mediaSessionId | void | 404 - Transponder not found 409 - Conflict 500 - Internal error | Выключить аудио |
/push/unmute | mediaSessionId | void | 404 - Transponder not found 409 - Conflict 500 - Internal error | Включить аудио |
/push/sound_on | mediaSessionId soundFile loop | void | 404 - Transponder not found 404 - No such file 500 - Internal error | Вставить аудио из RIFF WAV файла из директории /usr/local/FlashphonerWebCallServer/media/ на WCS-сервере |
/push/sound_off | mediaSessionId | void | 404 - Transponder not found 500 - Internal error | Завершить вставку аудио из файла |
Извлечение RTMP-потока | ||||
/pull/rtmp/pull | uri record | void | 409 - Conflict 500 - Internal error | Извлечь RTMP-поток по указанному URL |
/pull/rtmp/find_all | void | List<RtmpAgent> | 404 - Not found | Найти все извлеченные RTMP-потоки |
/pull/rtmp/terminate | uri | void | 404 - Not found | Завершить работу извлеченного RTMP-потока |
Микшер | ||||
/mixer/startup | uri localStreamName hasVideo hasAudio background watermark mixerLayoutClass | void | 409 - Conflict 500 - Internal error | Создает микшер, для которого публикуется поток с указанным именем |
/mixer/add | uri remoteStreamName | void | 404 - Mixer not found/Stream not found 409 - Conflict 500 - Internal error | Добавить RTMP-поток в микшер |
/mixer/remove | uri remoteStreamName | void | 404 - Mixer not found/Stream not found | Убрать RTMP-поток из микшера |
/mixer/find_all | void | List<Mixer> | 404 - Not found | Найти все микшеры |
/mixer/terminate | uri | void | 404 - Not found | Завершить работу микшера |
/mixer/setAudioVideo | uri streams audioLevel videoMuted | void | 400 - Bad request 404 - Not found 500 - Internal error | Заглушить/возобновить видео или изменить уровень громкости аудио входного потока микшера |
/mixer/test/start | feedingStreams | void | 404 - Not found 500 - Internal error | Запустить нагрузочный тест микшера |
/mixer/test/stop | void | void | 404 - Not found 500 - Internal error | Остановить нагрузочный тест микшера |
/mixer/test/get_start_example | void | <MixerTest> | Получить пример объекта, передаваемого на вход методу /mixer/test/start | |
Извлечение/ретрансляция потока по WebRTC с другого WCS сервера | ||||
/pull/pull | uri localStreamName remoteStreamName | void | 409 - Conflict 500 - Internal error | Извлечь WebRTC-поток по указанному URL |
/pull/push | uri localStreamName remoteStreamName localMediaSessionId | void | 409 - Conflict 500 - Internal error | Транслировать WebRTC-поток по указанному URL |
/pull/find_all | void | List<PullAgent> | 404 - Not found | Найти все извлеченные WebRTC-потоки |
/pull/terminate | uri localMediaSessionId remoteMediaSessionId localStreamName remoteStreamName status | void | 404 - Not found | Завершить извлеченный WebRTC-поток |
Управление логированием | ||||
/logger/enable_client_log | sessionId logLevel | void | 404 - Session not found | Включить указанный уровень клиентского лога в заданной сессии |
/logger/disable_client_log | sessionId | void | 404 - Session not found | Полностью отключить клиентский лог в заданной сессии |
CDN | ||||
/cdn/show_nodes | void | List<CDNNodes> | Показать состояние узлов CDN | |
/cdn/show_state | void | <processingState> | Показать состояние узла CDN, которому направлен запрос | |
/cdn/enforce_state | state | void | 400 – Ivalid state | Принудительно изменить состояние узла |
/cdn/show_routes | void | List<CDNRoute> | 404 - Not found | Показать список маршрутов CDN |
/cdn/stream/show_routes | streamName | <CDNStreamRoute> | 400 - Bad request 404 - Not found | Показать маршрут CDN для воспроизведения заданного потока |
/cdn/stream/access_list/add | name keys | void | 400 - Bad request 404 - Stream not found 500 – Internal Server Error | Добавить ключи в список контроля доступа к потоку |
/cdn/stream/access_list/remove | name keys | void | 400 - Bad request 404 - ACL not found/Stream not found 500 – Internal Server Error | Удалить ключи из списка контроля доступа к потоку |
/cdn/stream/access_list/delete | name | void | 400 - Bad request 404 - Stream not found 500 – Internal Server Error | Очистить список контроля доступа к потоку |
/cdn/stream/access_list/print | name | List<key> | 400 - Bad request 404 - ACL not found 500 – Internal Server Error | Показать список контроля доступа к потоку |
/cdn/profile/add | name profile:<profile> | void | 400 - Bad Request 500 – Internal Server Error | Добавить профиль транскодинга |
/cdn/profile/modify | name profile:<profile> | void | 400 - Bad Request 404 - Not Found 500 – Internal Server Error | Изменить профиль транскодинга |
/cdn/profile/print | void | List<profile> | 404 - Not Found | Получить список профилей транскодирования |
/cdn/profile/remove | name | void | 400 - Bad Request 404 - Not Found 500 – Internal Server Error | Удалить профиль транскодирования |
/cdn/remove_node | nodeId | void | 400 - Bad request 404 - Node not found 500 – Internal Server Error | Удалить узел из CDN |
Запись трансляции | ||||
/recorder/startup | mediaSessionId | void | 404 - Stream not found 500 - Internal error | Начать запись потока в указанной медиасессии |
/recorder/terminate | mediaSessionId | void | 404 - Recorder not found 500 - Internal error | Завершить запись потока в указанной медиасессии |
/recorder/find_all | void | List<Recorder> | 404 - Recorders not found | Найти записываемые сессии |
Запись нескольких потоков в один файл | ||||
/multipleRecorder/startup | uri | void | 409 - Conflict 500 - Internal error | Запустить рекордер для записи нескольких потоков |
/multipleRecorder/add | uri | void | 404 - Not found 409 - Conflict 500 - Internal error | Добавить в рекордер поток из указанной медиасессии |
/multipleRecorder/find_all | void | List<MultipleRecorder> | 404 - Not found | Найти все рекордеры |
/multipleRecorder/remove | uri mediaSessionId | void | 404 - Not found 500 - Internal error | Удалить поток из рекордера |
/multipleRecorder/terminate | uri | void | 404 - Not found 409 - Bad uri format 500 - Internal error | Остановить рекордер |
Управление транскодером | ||||
/transcoder/startup | uri | void | 404 - Stream not found 409 - Conflict 500 - Internal error | Создать транскодер с указанными параметрами для заданного потока |
/transcoder/find | uri | List<Transcoder> | 404 – Transcoders not found | Найти транскодер по указанным критериям |
/transcoder/find_all | void | List<Transcoder> | 404 – Transcoders not found | Найти все транскодеры |
/transcoder/terminate | uri remoteStreamName localStreamName status | void | 404 - Transcoder not found | Остановить транскодер с выходным потоком, подходящим под указанные критерии |
Управление транскодером, версия 2 | ||||
/transcoder2/startup | uri | void | 400 - Bad request 404 - Stream not found 409 - Conflict 500 - Internal error | Создать транскодер с указанными параметрами для заданного потока |
/transcoder2/find | uri | List<Transcoder> | 404 – Transcoders not found | Найти транскодер по указанным критериям |
/transcoder2/find_all | void | List<Transcoder> | 404 – Transcoders not found | Найти все транскодеры |
/transcoder2/terminate | uri remoteStreamName localStreamName status | void | 404 - Transcoder not found | Остановить транскодер с выходным потоком, подходящим под указанные критерии |
VOD | ||||
/vod/startup | uri | void | 409 - Conflict 500 - Internal error | Создать VOD live трансляцию из локального файла или файла в сетевом хранилище |
/vod/find | uri | List<VOD> | 404 – VODs not found | Найти VOD трансляцию по указанным критериям |
/vod/find_all | void | List<VOD> | 404 – VODs not found | Найти все VOD трансляции |
/vod/terminate | uri | void | 404 - VOD not found | Остановить VOD трансляцию, подходящую под указанные критерии |
HLS | ||||
/hls/startup | name | void | 404 - Stream not found 500 - Internal error | Запустить HLS нарезку указанного потока |
/hls/find_all | void | List<HLS> | 404 – Not found | Найти все потоки, для которых есть HLS нарезки |
/hls/terminate | name | void | 404 – Not found 500 - Internal error | Завершить или перезапустить HLS нарезку указанного потока |
SFU | ||||
/sfu/stats | roomName | List<Participant> | 400 - Bad request 404 - Not found 500 - Internal error | Показать текущую статистику комнаты |
MPEG-TS | ||||
/mpegts/startup | localStreamName timeout maxTimestampDiff | MPEG-TS | 409 - Conflict 500 - Internal error | Начать публикацию MPEG-TS потока |
/mpegts/find_all | void | List<MPEG-TS> | 404 – Not found 500 - Internal error | Найти все опубликованные MPEG-TS потоки |
/mpegts/terminate | localStreamName uri | void | 404 – Not found 500 - Internal error | Завершить MPEG-TS поток |
Overview
Content Tools