Forward participant or MCU stream
Any active meeting participant's stream can be forwarded or even the MCU One View stream. This is also known as the AI Adapter.
The forward stream feature can only be activated with the API key.
The API URL must contain the ROOM_ID
in contrast to ACCESS_KEY
in other API calls.
FORWARD_ID
MUST be unique for each forward!
The same source can be forwarded multiple times, but each must have its own FORWARD_ID
.
Option | Description |
---|---|
source | Forwards single video stream of a source (webcam, ipcam, drone, etc.) |
mcu | Forwards entire video stream of the meeting |
playback | Forwards single stream of a public video file |
The forward stream feature can only be activated with the API key.
Forward source
The API URL must contain the ROOM_ID
in contrast to ACCESS_KEY
in other API calls. FORWARD_ID
must be unique for each forward!
POST /rooms/`ROOM_ID`/forward/source
HEADERS Authorization
RESPONSES 201 CREATED, 400 BAD REQUEST, 401 UNAUTHORIZED, 404 NOT FOUND
REQUIRED forward_id, user_id, type, url
Req/Res Example: Forward Room
You can get the required values for USER_ID
, ROOM_ID
by requesting the current room details here.
curl -X POST \
-H "Authorization: $API_KEY" \
-d "forward_id=$FORWARD_ID" \
-d "user_id=$USER_ID" \
-d "type=audio,video" \
-d "url=${https://example.com/whip}" \
"https://api.eyeson.team/rooms/$ROOM_ID/forward/source"
201
As soon as the source is disconnected, its forward will automatically stop. To catch the disconnection cases you can use the Eyeson Observer's participant_update
and playback_update
. They can give you insight when a source drops from the call and returns again.
forward_id
Type: String
(required)
Custom, unique identifier for forwarding. Also used for ending the process.
user_id
Type: String
(required)
Custom identifier for participants or video sources, such as ipcams, drones, etc.
It is possible to forward one user_id
to multiple endpoints.
When there is only one forward you can also use the value of the user_id
as forward_id
.
type
Type: String
or Array<String>
(required)
Controls which channels are forwarded.
Value | Description |
---|---|
audio | Forwards the audio channel of a user mic/audio source |
video | Forwards the video channel of a user webcam/video source |
audio,video | Forwards both channels of a source |
url
Type: URL
(required)
The endpoint address.
Forward MCU One View
POST /rooms/`ROOM_ID`/forward/mcu
HEADERS Authorization
RESPONSES 201 CREATED, 400 BAD REQUEST, 401 UNAUTHORIZED, 404 NOT FOUND
REQUIRED forward_id, type, url
forward_id
Type: String
(required)
Custom, unique identifier for forwarding. Also used for ending the process.
type
Type: String
or Array<String>
(required)
Controls which channels are forwarded.
Value | Description |
---|---|
audio | Forwards the audio channel of the meeting |
video | Forwards the video channel of the meeting |
audio,video | Forwards both channels of the meeting |
url
Type: URL
(required)
The endpoint address.
Forward playback
POST /rooms/`ROOM_ID`/forward/playback
HEADERS Authorization
RESPONSES 201 CREATED, 400 BAD REQUEST, 401 UNAUTHORIZED, 404 NOT FOUND
REQUIRED forward_id, play_id, type, url
forward_id
Type: String
(required)
Custom, unique identifier for forwarding. Also used for ending the process.
play_id
Type: String
(required)
Custom identifier for playbacks. More about playbacks here.
type
Type: String
or Array<String>
(required)
Controls which channels are forwarded.
Value | Description |
---|---|
audio | Forwards the audio channel of the playback |
video | Forwards the video channel of the playback |
audio,video | Forwards both channels of the playback |
url
Type: URL
(required)
The endpoint address.
End forward
DELETE /rooms/`ROOM_ID`/forward/`FORWARD_ID`
HEADERS Authorization
RESPONSES 200 OK, 400 BAD REQUEST, 401 UNAUTHORIZED, 404 NOT FOUND
Req/Res Example: End Forward
curl -X DELETE \
-H "Authorization: $API_KEY" \
"https://api.eyeson.team/rooms/$ROOM_ID/forward/$FORWARD_ID"
200