For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Log inSign up
Support
ReferenceGuidesClick-to-Call
ReferenceGuidesClick-to-Call
  • Core
    • Overview
  • SignalWire Client
    • Overview
    • Notifications
    • Client
    • Utility functions
  • Video
    • Overview
    • LocalOverlay
    • RoomSession
      • Events
        • addCamera
        • addDevice
        • addMicrophone
        • audioMute
        • audioUnmute
        • createScreenShareObject
        • deaf
        • deleteMemberMeta
        • deleteMeta
        • demote
        • destroy
        • getLayouts
        • getMemberMeta
        • getMembers
        • getMeta
        • getPlaybacks
        • getRecordings
        • getStreams
        • hangupAll
        • hideVideoMuted
        • join
        • leave
        • lock
        • off
        • on
        • once
        • play
        • promote
        • removeAllListeners
        • removeAllMembers
        • removeMember
        • sendDigits
        • setHideVideoMuted
        • setInputSensitivity
        • setInputVolume
        • setLayout
        • setLocalStream
        • setMemberMeta
        • setMemberPosition
        • setMeta
        • setOutputVolume
        • setPositions
        • setPrioritizeHandraise
        • setRaisedHand
        • showVideoMuted
        • startRecording
        • startScreenShare
        • startStream
        • undeaf
        • unlock
        • updateCamera
        • updateMemberMeta
        • updateMeta
        • updateMicrophone
        • updateSpeaker
        • videoMute
        • videoUnmute
    • RoomSessionDevice
    • RoomSessionPlayback
    • RoomSessionRecording
    • RoomSessionScreenShare
    • RoomSessionStream
    • RoomDevice
    • RoomScreenShare
  • Chat
    • Overview
    • Client
    • ChatMember
    • ChatMemberEntity
    • ChatMessage
    • ChatMessageEntity
  • PubSub
    • Overview
    • Client
    • PubSubMessage
  • WebRTC
    • Overview
LogoLogoSignalWire Docs
Log inSign up
Support
On this page
  • promote
VideoRoomSessionMethods

promote

|View as Markdown|Open in Claude|
Was this page helpful?
Edit this page
Previous

removeAllListeners

Next
Built with

promote

  • promote(params): Promise<void>

Promotes a participant from “audience” to “member”. See join and demote.

Parameters

params
object

Object containing the parameters of the method.

memberId
string

Id of the audience participant to promote.

joinAudioMuted
boolean

Force the member’s audio to be muted right after the promotion.

joinVideoMuted
boolean

Force the member’s video to be muted right after the promotion.

mediaAllowed
"all" | "audio-only" | "video-only"

Specifies the media that the client will be allowed to send. A member participant can always receive all media.

meta
Record<string, unknown toc={true}>

Metadata to assign to the member.

permissions
string[]

List of permissions to grant when the Audience participant will become a Member.

Returns

Promise<void>

Permissions

  • room.member.promote

You need to specify the permissions when creating the Video Room Token on the server side.

Example

1await roomSession.promote({
2 memberId: "de550c0c-3fac-4efd-b06f-b5b8614b8966",
3 mediaAllowed: "all",
4 permissions: [
5 "room.self.audio_mute",
6 "room.self.audio_unmute",
7 "room.self.video_mute",
8 "room.self.video_unmute",
9 "room.list_available_layouts",
10 ],
11});