Skip to main content

How to assign spots automatically

The default layout setting is auto. When you define users in your request, Eyeson automatically fills any empty spots in the video stream with participants who have active cameras.

To manipulate and set a specific layout, you'll need two key pieces of information:

  • The access_key for the video call
  • The user_id of participants you want to reposition

You can set these either when initiating a video call via the API or when adding participants to an active call. Alternatively, you can extract these values from a running call using EyesonJS or the observer.

In the example below, the first participant is positioned in the second spot of a layout named four.

export ACCESS_KEY=123...
export USER_ID1=123...

curl -X POST \
-d "users[]=" \
-d "users[]=$USER_ID1" \
-d "users[]=" \
-d "users[]=" \
-d "layout=auto" \
-d "name=four" \
"https://api.eyeson.team/rooms/$ACCESS_KEY/layout"

For the sake of clarity, there is a background image with the numbered video spots blended in.

Result for a position request Figure 1. The result may look like this.

Also four additional participants are added to the video call session after the layout change. You can see in Figure 2 the video stream spots are filled with active participants although in the request the options had no values. Because this layout has only four spots the excess participants are not blended in.

One participant only on the participant list because layout is set to four Figure 2. To visualise the invisible participant, here is an image of the same set up with an UI.