Skip to main content

Meeting Methods

See Join a meeting to initialize a room instance.

Mute devices

Control audio and video device states by passing true to mute or false to unmute.

meeting.mute(.video, true)
meeting.mute(.audio, true)

Mute all participants

meeting.muteAll()

Set streaming camera

Use .back to select the rear camera or .front to select the front-facing camera.

meeting.camera = .front

Send a chat message

For details on messages see the REST API reference

meeting.send(chat: String)

Send a custom message

For details on messages see the REST API reference

meeting.send(custom: String)

Start/Stop recording

meeting.startRecording()
meeting.stopRecording()

Set a new layout

Use the named layout as String from the table in the REST API reference

meeting.setLayout("auto")

Take a snapshot

meeting.snapshot()

Start/Stop a playback

meeting.startPlayback(id: String, audio: Bool, replace userId: String, url: URL, name: String, loopCount: Int)
meeting.stopPlayback(id: String)

Start/Update/Stop a broadcast

meeting.startBroadcast(streamUrl: URL, playerUrl: URL)
meeting.updateBroadcast(playerUrl: URL)
meeting.stopBroadcast()

Set/Remove a background/foreground layer

meeting.addLayer(image: UIImage, index: 1) // Set a foreground from local image
meeting.addLayer(url: URL, index: -1) // Set a background from URL
meeting.removeLayer(index: 1) // Remove certain layer

Kick a user

meeting.kick(user: "USER_ID")

Lock meeting room

meeting.lock()

Leave meeting

meeting.leave()

Gathering connection stats

Use the stats() method to collect detailed connection performance metrics. The method provides comprehensive information about network conditions, audio and video quality, and other technical parameters. For a complete list of available metrics and their meanings, see the reference on stats.

meeting.stats() { stats in
// evaluate stats
}