...
В тестовом интерфейсе Streamer пользователь отправляет видеопоток на WCS сервер.
Image Added
При нажатии кнопки Start, интерфейс вызывает функцию stream.publish(), которая начинает трансляцию.
Пошаговая схема начала публикации и вызова REST-метода publishStream:
- На стороне клиента вызывается stream.publish()
- WCS обращается к локальному web-серверу по адресу httpадресу http://localhost:90918081/publishStream
- WCS получает от локального web-сервера ответ 200 OK
- WCS отправляет клиенту событие StreamStatusEvent, status = PUBLISHING
Image Added
Окончательным результатом будет отображение статуса PUBLISHING на web-странице:
Image Added
При этом вызов метода /publishStream (шаг 2) при разборе HTTP-протокола в Wireshark, выглядит так:
Request | Response |
---|
Code Block |
---|
| POST /EchoApp/publishStream HTTP/1.1
Accept: application/json, application/*+json
Content-Type: application/json;charset=UTF-8
User-Agent: Java/1.8.0_45
Host: localhost:8081
Connection: keep-alive
Content-Length: 3622
{
"nodeId":"H4gfHeULtX6ddGGUWwZxhUNyqZHUFH8j@192.168.1.59",
"appKey":"defaultApp",
"sessionId":"/ |
|
1.1 200 OKServer: Apache192.168.1.38:52791/192.168.1.59:8443",
"mediaSessionId":"87c5ff20-fb59-11e6-812c-1b28ccb49323",
"name":"84cac22c",
"published":true,
"hasVideo":true,
"hasAudio":true,
"status":"PENDING",
"record":false,
"width":0,
"height":0,
"bitrate":0,
"quality":0,
"mediaProvider":"WebRTC"
} |
| Code Block |
---|
| HTTP/1.1 200 OK
Server: Apache-Coyote/1.1 |
|
application application/json;charset=UTF-8 |
|
chunked Sat, 25 Feb 2017 05:51:11 GMT
{
Sat, 25 Feb 2017 05:51:11 GMT
{
"nodeId":"H4gfHeULtX6ddGGUWwZxhUNyqZHUFH8j@192.168.1.59", |
|
"sessionId":"/192.168.1.38:52791/192.168.1.59:8443", |
|
"mediaSessionId":"87c5ff20-fb59-11e6-812c-1b28ccb49323", |
|
}