> Fetch clean Markdown by appending `.md` to any page URL under https://signalwire.com/docs or requesting it with the HTTP header `Accept: text/markdown`. The root index at https://signalwire.com/docs/llms.txt lists the available documentation indexes. # RoomSessionDevice A RoomSessionDevice represents a device (such as a microphone or a camera) that is at some point in its lifetime part of a [RoomSession](/docs/browser-sdk/v3/js/reference/video/room-session). You can obtain a RoomSessionDevice from the [RoomSession](/docs/browser-sdk/v3/js/reference/video/room-session) methods [addCamera](/docs/browser-sdk/v3/js/reference/video/room-session/add-camera), [addMicrophone](/docs/browser-sdk/v3/js/reference/video/room-session/add-microphone), and [addDevice](/docs/browser-sdk/v3/js/reference/video/room-session/add-device). ## Properties **`active`** `boolean` Whether the connection is currently active. --- **`cameraId`** `string | null` The id of the video device, or null if not available. --- **`cameraLabel`** `string | null` The label of the video device, or null if not available. --- **`localAudioTrack`** `MediaStreamTrack | null` Provides access to the local audio [MediaStreamTrack](https://developer.mozilla.org/en-US/docs/Web/API/MediaStreamTrack). --- **`localStream`** `MediaStream | undefined` Provides access to the local [MediaStream](https://developer.mozilla.org/en-US/docs/Web/API/MediaStream). --- **`localVideoTrack`** `MediaStreamTrack | null` Provides access to the local video [MediaStreamTrack](https://developer.mozilla.org/en-US/docs/Web/API/MediaStreamTrack). --- **`memberId`** `string` The id of the current member within the room. --- **`microphoneId`** `string | null` The id of the audio input device, or null if not available. --- **`microphoneLabel`** `string | null` The label of the audio input device, or null if not available. --- **`remoteStream`** `MediaStream | undefined` Provides access to the remote [MediaStream](https://developer.mozilla.org/en-US/docs/Web/API/MediaStream). --- **`roomId`** `string` The unique identifier for the room. --- **`roomSessionId`** `string` The unique identifier for the room session. --- ## Methods #### [join](/docs/browser-sdk/v3/js/reference/video/room-session-device/join) Join the room session #### [leave](/docs/browser-sdk/v3/js/reference/video/room-session-device/leave) Leave the room session #### [audioMute](/docs/browser-sdk/v3/js/reference/video/room-session-device/audio-mute) Mute the microphone #### [audioUnmute](/docs/browser-sdk/v3/js/reference/video/room-session-device/audio-unmute) Unmute the microphone #### [videoMute](/docs/browser-sdk/v3/js/reference/video/room-session-device/video-mute) Mute the video #### [videoUnmute](/docs/browser-sdk/v3/js/reference/video/room-session-device/video-unmute) Unmute the video #### [updateCamera](/docs/browser-sdk/v3/js/reference/video/room-session-device/update-camera) Switch to a different camera #### [updateMicrophone](/docs/browser-sdk/v3/js/reference/video/room-session-device/update-microphone) Switch to a different microphone #### [setInputVolume](/docs/browser-sdk/v3/js/reference/video/room-session-device/set-input-volume) Set the input volume level #### [setInputSensitivity](/docs/browser-sdk/v3/js/reference/video/room-session-device/set-input-sensitivity) Set the input sensitivity level #### [\~\~setMicrophoneVolume\~\~](/docs/browser-sdk/v3/js/reference/video/room-session-device/set-microphone-volume) *Set microphone volume (deprecated)* ## Docs - [audioMute](https://signalwire.com/docs/browser-sdk/v3/js/reference/video/room-session-device/audio-mute.md): audioMute method for the RoomSessionDevice class. - [audioUnmute](https://signalwire.com/docs/browser-sdk/v3/js/reference/video/room-session-device/audio-unmute.md): audioUnmute method for the RoomSessionDevice class. - [join](https://signalwire.com/docs/browser-sdk/v3/js/reference/video/room-session-device/join.md): join method for the RoomSessionDevice class. - [leave](https://signalwire.com/docs/browser-sdk/v3/js/reference/video/room-session-device/leave.md): leave method for the RoomSessionDevice class. - [setInputSensitivity](https://signalwire.com/docs/browser-sdk/v3/js/reference/video/room-session-device/set-input-sensitivity.md): setInputSensitivity method for the RoomSessionDevice class. - [setInputVolume](https://signalwire.com/docs/browser-sdk/v3/js/reference/video/room-session-device/set-input-volume.md): setInputVolume method for the RoomSessionDevice class. - [setMicrophoneVolume](https://signalwire.com/docs/browser-sdk/v3/js/reference/video/room-session-device/set-microphone-volume.md): setMicrophoneVolume method for the RoomSessionDevice class. - [updateCamera](https://signalwire.com/docs/browser-sdk/v3/js/reference/video/room-session-device/update-camera.md): updateCamera method for the RoomSessionDevice class. - [updateMicrophone](https://signalwire.com/docs/browser-sdk/v3/js/reference/video/room-session-device/update-microphone.md): updateMicrophone method for the RoomSessionDevice class. - [videoMute](https://signalwire.com/docs/browser-sdk/v3/js/reference/video/room-session-device/video-mute.md): videoMute method for the RoomSessionDevice class. - [videoUnmute](https://signalwire.com/docs/browser-sdk/v3/js/reference/video/room-session-device/video-unmute.md): videoUnmute method for the RoomSessionDevice class.