> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.telekesher.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.telekesher.dev/_mcp/server.

# RoomMember

A `RoomMember` represents one session in one room. Its `uuid` is the
corresponding `Session.session_uuid`.

## Methods

* [List room members](api:voice-api:GET/api/v1/rooms/\{room_id}/members)
* [Add a room member](api:voice-api:POST/api/v1/rooms/\{room_id}/members)
* [Get room member details](api:voice-api:GET/api/v1/rooms/\{room_id}/members/\{uuid})
* [Remove a room member](api:voice-api:DELETE/api/v1/rooms/\{room_id}/members/\{uuid})
* [Mute a room member](api:voice-api:POST/v1/sessions/\{uuid}/room/mute)
* [Unmute a room member](api:voice-api:POST/v1/sessions/\{uuid}/room/unmute)
* [Set room-member volume](api:voice-api:POST/v1/sessions/\{uuid}/room/volume)

The `room.member.voice_activity_changed` webhook delivers voice-activity
transitions.

## Join state

New members join unmuted when `muted` is omitted or false. Send `"muted": true`
when a member must join muted.

## Resource representation

### The RoomMember resource

```json
{
  "muted": true,
  "uuid": "string"
}
```

## Properties

### Schema (`RoomMember`)

```yaml
components:
  schemas:
    RoomMember:
      type: object
      properties:
        muted:
          type: boolean
          description: Whether the member is currently muted in the room.
        uuid:
          type: string
          description: Session UUID of the member.
      required:
        - muted
        - uuid
      title: RoomMember
```