...
WCS может выступать в качестве WebRTC-SIP шлюза. При этом аудио- и видеопоток SIP-звонка, произведенного через WCS, может быть захвачен и воспроизведен в браузере, либо ретранслирован на другой сервер.
Типичный сценарий использования
- Между WCS и SIP-устройством (SIP MCU, сервер конференций или SIP-софтфон) установлен видеозвонок
- WCS получает аудио и видео данные с этого SIP-устройства
- Полученный аудио и видео трафик WCS-сервер перенаправляет на RTMP-сервер или другое устройство, способное принять и обработать RTMP-поток
Поддерживаемые протоколы
...
- RTMP
- SIP
Поддерживаемые кодеки на SIP
...
- Видеокодеки: H.264, VP8
- Аудиокодеки: G.711, Speex
Поддерживаемые кодеки на RTMP
...
- Видеокодеки: H.264
- Аудиокодеки: AAC, G.711, Speex
...
REST-методы и статусы ответа
REST-метод | Пример тела REST-запроса | Пример тела REST-ответа | Статусы ответа | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
/call/startup |
| 200 - Звонок принят на обработку 409 - Конфликт с существующим RTMP URL | ||||||||||||||||||||||
/call/find |
or
|
| 200 - звонок найден 404 - звонок с указанными параметрами не найден | |||||||||||||||||||||
/call/find_all |
| 200 - звонки найдены 404 - звонков не найдено | ||||||||||||||||||||||
/call/terminate |
| 200 - звонок прерван 404 - звонок не найден | ||||||||||||||||||||||
/call/send_dtmf |
| 200 - DTMF отправлен 404 - звонок не найден | ||||||||||||||||||||||
/call/inject_stream |
| 200 - аудиопоток добавлен к звонку 404 - звонок не найден |
Параметры
Имя параметра | Описание | Пример |
---|---|---|
callId | SIP Call ID - уникальный идентификатор в виде строки | Xq2tlLcX89tTjaji |
callee | SIP callee - вызываемый абонент | 10001 |
toStream | Имя потока на WCS-сервере, в который транслируется звонок | call_stream1 |
rtmpUrl | RTMP URL - адрес RTMP-сервера | rtmp://rtmp-server.flashphoner.com:1935/live Здесь live - имя RTMP-приложения. В RTMP URL также могут быть указаны instance name и строка запроса, например rtmp://rtmp-server.flashphoner.com:1935/live/_definst_?param1=value1¶m2=value2 |
rtmpStream | Название RTMP-потока на RTMP-сервере | streamName2 |
hasAudio | Если true, SDP будет иметь 'sendrecv' параметр в аудио части. Если false, то 'recvonly'. | true |
hasVideo | Если true, SDP будет иметь 'sendrecv' параметр в видео части. Если false, то 'recvonly'. | true |
status | Статус звонка на WCS-сервере | ESTABLISHED |
Полный список статусов доступен здесь (см CallStatusEvent). | ||
sipStatus | Ассоциированный SIP-статус | 200 |
rtmpStreamStatus | Статус RTMP-потока | RTMP_STREAM_ACTIVE RTMP_STREAM_WAIT - RTMP-поток инициализируется RTMP_STREAM_ACTIVE - RTMP-поток проинициализирован и соединение установлено RTMP_CONNECTION_LOST - RTMP-соединение было потеряно RTMP_CONNECTION_FAILED - RTMP-соединение не было установлено |
caller | SIP caller - вызывающий абонент | |
visibleName | Отображаемое имя вызывающего абонента | |
mediaProvider | НЕ ИСПОЛЬЗУЕТСЯ | НЕ ИСПОЛЬЗУЕТСЯ |
SDP параметры recvonly и sendrecv
...
Этот адрес может быть изменен через WCS CLI. См. описание интерфейса командной строки, чтобы получить больше информации об управлении приложениями WCS.
...