Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Рассмотрим работу REST-метода на примере метода /publishStream.

В тестовом интерфейсе Streamer пользователь отправляет видеопоток на WCS сервер.

 


При нажатии кнопки Start, интерфейс вызывает функцию stream.publish(), которая начинает трансляцию.

Пошаговая схема начала публикации и вызова REST-метода publishStream:

  1. На стороне клиента вызывается stream.publish()
  2. WCS обращается к локальному web-серверу по адресу http://localhost:9091/publishStream
  3. WCS получает от локального web-сервера ответ 200 OK
  4. WCS отправляет клиенту событие StreamStatusEvent, status = PUBLISHING


 

Окончательным результатом будет отображение статуса PUBLISHING на web-странице:

 


При этом вызов метода /publishStream (шаг 2) при разборе HTTP-протокола в Wireshark, выглядит так:

Request

Response


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:9091
Connection: keep-alive
Content-Length: 3622

{ 
 "nodeId":"H4gfHeULtX6ddGGUWwZxhUNyqZHUFH8j@192.168.1.59",
 "appKey":"defaultApp",
 "sessionId":"/192.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"
}


HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Content-Type: application/json;charset=UTF-8
Transfer-Encoding: chunked
Date: Sat, 25 Feb 2017 05:51:11 GMT


{ 
 "nodeId":"H4gfHeULtX6ddGGUWwZxhUNyqZHUFH8j@192.168.1.59",
 "appKey":"defaultApp",
 "sessionId":"/192.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"
}
  • No labels