> For a complete index of all SignalWire documentation pages, fetch https://signalwire.com/docs/llms.txt

# CallParticipant

> Base participant interface for call participants Defines the full public contract for participant objects exposed by Call

Base participant interface for call participants
Defines the full public contract for participant objects exposed by Call

## **Extended by**

* [`CallSelfParticipant`](/docs/browser-sdk/v4/reference/interfaces/call-self-participant)

## **Properties**

User-address ID, if this participant is a known user.

Observable of user-address ID, if this participant is a known user.

Whether this participant's audio is muted.

Observable of whether this participant's audio is muted.

Whether automatic gain control is enabled on this participant's microphone.

Observable of whether automatic gain control is enabled on this participant's microphone.

Whether this participant is deafened (does not receive other participants' audio).

Observable of whether this participant is deafened (does not receive other participants' audio).

Whether noise suppression is enabled on this participant's microphone.

Observable of whether noise suppression is enabled on this participant's microphone.

Whether echo cancellation is enabled on this participant's microphone.

Observable of whether echo cancellation is enabled on this participant's microphone.

Whether this participant has their hand raised.

Observable of whether this participant has their hand raised.

Unique participant ID, assigned by the media server.

Microphone input sensitivity, or `undefined` if not adjustable.

Observable of microphone input sensitivity, or `undefined` if not adjustable.

Microphone input volume, or `undefined` if not adjustable.

Observable of microphone input volume, or `undefined` if not adjustable.

Whether this participant is an audience member rather than an active participant.

Whether the media server currently detects voice activity from this participant.

Observable of whether the media server currently detects voice activity from this participant.

Whether low-bitrate mode is enabled for this participant.

Observable of whether low-bitrate mode is enabled for this participant.

Arbitrary metadata bag for this participant, if any.

Observable of the call-level metadata bag.

Display name of this participant.

Observable of display name of this participant.

ID of the media node hosting this participant.

Observable of the media node ID currently hosting the call.

Whether noise suppression is enabled on this participant's microphone.

Observable of whether noise suppression is enabled on this participant's microphone.

Speaker output volume for this participant, or `undefined` if not adjustable.

Observable of speaker output volume for this participant, or `undefined` if not adjustable.

Current layout position of this participant, or `undefined` if not yet placed. See [`LayoutLayer`](/docs/browser-sdk/v4/reference/interfaces/layout-layer).

Observable of current layout position of this participant, or `undefined` if not yet placed. See [`LayoutLayer`](/docs/browser-sdk/v4/reference/interfaces/layout-layer).

User ID associated with this participant, if known.

Observable of user ID associated with this participant, if known.

Participant type (e.g. `member`, `audience`).

Observable of participant type (e.g. `member`, `audience`).

Whether this participant's video is muted.

Observable of whether this participant's video is muted.

Whether this participant is currently visible in the layout.

Observable of whether this participant is currently visible in the layout.

## **Methods**

### end()

```ts
end(): Promise<void>
```

#### Returns

`Promise<void>`

***

### mute()

```ts
mute(): Promise<void>
```

#### Returns

`Promise<void>`

***

### muteVideo()

```ts
muteVideo(): Promise<void>
```

#### Returns

`Promise<void>`

***

### remove()

```ts
remove(): Promise<void>
```

#### Returns

`Promise<void>`

***

### setAudioInputSensitivity()

```ts
setAudioInputSensitivity(value): Promise<void>
```

#### Parameters

New value for the property being set.

#### Returns

`Promise<void>`

***

### setAudioInputVolume()

```ts
setAudioInputVolume(value): Promise<void>
```

#### Parameters

New value for the property being set.

#### Returns

`Promise<void>`

***

### setAudioOutputVolume()

```ts
setAudioOutputVolume(value): Promise<void>
```

#### Parameters

New value for the property being set.

#### Returns

`Promise<void>`

***

### setMeta()

```ts
setMeta(meta): Promise<void>
```

#### Parameters

Arbitrary metadata bag for this participant, if any.

#### Returns

`Promise<void>`

***

### setPosition()

```ts
setPosition(value): Promise<void>
```

#### Parameters

New value for the property being set. See [`VideoPosition`](/docs/browser-sdk/v4/reference/type-aliases/video-position).

#### Returns

`Promise<void>`

***

### toggleAudioInputAutoGain()

```ts
toggleAudioInputAutoGain(): Promise<void>
```

#### Returns

`Promise<void>`

***

### toggleDeaf()

```ts
toggleDeaf(): Promise<void>
```

#### Returns

`Promise<void>`

***

### toggleEchoCancellation()

```ts
toggleEchoCancellation(): Promise<void>
```

#### Returns

`Promise<void>`

***

### toggleHandraise()

```ts
toggleHandraise(): Promise<void>
```

#### Returns

`Promise<void>`

***

### toggleLowbitrate()

```ts
toggleLowbitrate(): Promise<void>
```

#### Returns

`Promise<void>`

***

### toggleMute()

```ts
toggleMute(): Promise<void>
```

#### Returns

`Promise<void>`

***

### toggleMuteVideo()

```ts
toggleMuteVideo(): Promise<void>
```

#### Returns

`Promise<void>`

***

### toggleNoiseSuppression()

```ts
toggleNoiseSuppression(): Promise<void>
```

#### Returns

`Promise<void>`

***

### unmute()

```ts
unmute(): Promise<void>
```

#### Returns

`Promise<void>`

***

### unmuteVideo()

```ts
unmuteVideo(): Promise<void>
```

#### Returns

`Promise<void>`

***

### updateMeta()

```ts
updateMeta(meta): Promise<void>
```

#### Parameters

Arbitrary metadata bag for this participant, if any.

#### Returns

`Promise<void>`