Web App 3 v35
Custom Iframes
We are introducing Custom Iframes.
Visual Elements
Button
ParticipantActionsbuttons have a new optionalparticipantIDsarray property that dictates which participants should render this button. All participants will render the button if the property is leftundefined.Here is an example of how one could approach adding a mute/unmute video action button.
let muteVideoActionBtn;
let unmuteVideoActionBtn;
plugin.events.participants.add(({participants}) => {
const mutedParticipants = participants
.filter(p => p.isCameraMuted)
.map(p => p.identity);
const unmutedParticipants = participants
.filter(p => !p.isCameraMuted)
.map(p => p.identity);
if (muteVideoAction) {
muteVideoActionBtn.update({..., participantIDs: unmutedParticipants})
} else {
muteVideoActionBtn = plugin.ui.addButton({..., participantIDs: unmutedParticipants})
}
if (unmuteVideoAction) {
unmuteVideoActionBtn.update({..., participantIDs: mutedParticipants})
} else {
unmuteVideoActionBtn = plugin.ui.addButton({..., participantIDs: mutedParticipants})
}
});
Events
Adds
rawDatato participant and ConferenceStatus events. This is the object coming from the event stream as-is, without being normalizedAdds
overlayText,isConjoinedproperties to participant