Information about the streams on nodes monitored can be obtained from backend server with REST API
Current streams information
Current streams information can be obtained with REST API query /api/stream/list
https://hostname:8090/api/stream/list { "node":"", "mediaId":"", "name":"", "publisher":"", "status":"" }
Where:
- node – node identifier (mandatory)
- mediaId – mediasession identifier
- name – streeam name
- publisher - publisher identifier (for streams played)
- status – stream status (PENDING, PUBLISHING, PLAYING, UNPUBLISHED, STOPPED, FAILED)
Response data are obtained from current metrics cache.
The response contains the following fields
[ { "mediaId": "ba3b3950-8060-11e9-90b4-df338db69136", "name": "test", "publisher": null, "age": 413, "status": "PUBLISHING", "VIDEO_SYNC": 3767942629345, "AUDIO_SYNC": 3767942629304, "VIDEO_NACK": 81, "METRIC_RESOURCE": 0, "AUDIO_RATE": 28560, "STREAM_RESOURCE": 0, "AUDIO_LOST": 184, "VIDEO_CODEC": 119, "HEADER_RESOURCE": 0, "VIDEO_PLI": 1, "VIDEO_RATE": 619904, "AUDIO_CODEC": 111, "VIDEO_WIDTH": 320, "VIDEO_HEIGHT": 240, "VIDEO_FPS": 17, "KEEP_ALIVE": 0 } ]
Where
- name – stream name
- status – stream status
- mediaId – stream mediasession identifier
- age – cache record age in milliseconds
- publisher - publisher identifier (for streams played)
Response also contains current instantaneous metric values from cache
Stream history
Stream history information can be obtained with REST API query /api/stream/history
https://hostname:8090/api/stream/history { "node":"", "mediaId":"", "name":"", "publisher":"", "status":"" }
Where:
- node – node identifier
- mediaId – mediasession identifier
- name – streeam name
- publisher - publisher identifier (for streams played)
- status – stream status (PENDING, PUBLISHING, PLAYING, UNPUBLISHED, STOPPED, FAILED)
If node Id is set, the response will contain this node stream history information only. If Id is not set, the response will contain all the streams history on backend server corresponding other query criteria.
The response contains the following fields
[ { "id": 16, "name": "test", "status": "PUBLISHING", "mediaId": "010934f0-0766-11e9-a950-59983a9de3c8", "createDate": 1545647031908, "endDate": null, "publisher": 0, "subscribers": [], "node": 15 } ]
Where:
- id - stream identifier in backend server database
- name – stream name
- status – stream status
- mediaId – stream mediasession identifier
- createDate – stream creation date
- endDate – stream termination date
- publisher - publisher identifier (for streams played)
- subscribers - subscriber identifiers list (for streams published)
- node – node identifier in backend server database