[**Red5 Pro WebRTC SDK v15.2.0**](../README.md)

***

[Red5 Pro WebRTC SDK](../globals.md) / LiveSeekClient

# Class: LiveSeekClient

WHEP-based Subscriber with Live Seek support.

## Extends

- [`WHEPClient`](WHEPClient.md)

## Constructors

### Constructor

> **new LiveSeekClient**(`url?`, `element?`, `additionalOptions?`): `LiveSeekClient`

Constructor for the WHEP-based Subscriber with Live Seek support.

#### Parameters

##### url?

`string`

Optional WHEP endpoint URL for the live stream.

##### element?

`HTMLMediaElement`

Optional HTMLMediaElement to use for live stream playback.

##### additionalOptions?

[`LiveSeekConfigType`](../type-aliases/LiveSeekConfigType.md)

Optional LiveSeekConfigType to use for configuration.

#### Returns

`LiveSeekClient`

#### Overrides

[`WHEPClient`](WHEPClient.md).[`constructor`](WHEPClient.md#constructor)

## Accessors

### options

#### Get Signature

> **get** **options**(): `undefined` \| [`RTCWhepSubscriberConfigType`](../type-aliases/RTCWhepSubscriberConfigType.md)

Get the options for the WHEP-based Subscriber.

##### Returns

`undefined` \| [`RTCWhepSubscriberConfigType`](../type-aliases/RTCWhepSubscriberConfigType.md)

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`options`](WHEPClient.md#options)

## Methods

### callServer()

> **callServer**(`methodName`, `args`): `Promise`\<`any`\>

Call a method on the Red5 Pro Server over the message transport (DataChannel).

#### Parameters

##### methodName

`string`

The method name to call.

##### args

`any`

The arguments to call the method with.

#### Returns

`Promise`\<`any`\>

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`callServer`](WHEPClient.md#callserver)

***

### disableStandby()

> **disableStandby**(): `void`

Disable standby mode for the WHEP-based Subscriber. This will signal to the server to resume audio and video.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`disableStandby`](WHEPClient.md#disablestandby)

***

### emit()

> **emit**(`type`, `data`): `void`

Emit an event on the WHEP-based Subscriber.

#### Parameters

##### type

`string`

The type of event to emit.

##### data

`any`

The data to emit.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`emit`](WHEPClient.md#emit)

***

### enableStandby()

> **enableStandby**(): `void`

Enable standby mode for the WHEP-based Subscriber. This will signal to the server to hold back audio and video.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`enableStandby`](WHEPClient.md#enablestandby)

***

### getDataChannel()

> **getDataChannel**(): `undefined` \| `RTCDataChannel`

Get the data channel for the WHEP-based Subscriber.

#### Returns

`undefined` \| `RTCDataChannel`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`getDataChannel`](WHEPClient.md#getdatachannel)

***

### getMediaStream()

> **getMediaStream**(): `undefined` \| `MediaStream`

Get the media stream being played back by the subscriber.

#### Returns

`undefined` \| `MediaStream`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`getMediaStream`](WHEPClient.md#getmediastream)

***

### getMessageTransport()

> **getMessageTransport**(): `undefined` \| `MessageTransport`

Get the message transport for the WHEP-based Subscriber.

#### Returns

`undefined` \| `MessageTransport`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`getMessageTransport`](WHEPClient.md#getmessagetransport)

***

### getOptions()

> **getOptions**(): `undefined` \| [`RTCWhepSubscriberConfigType`](../type-aliases/RTCWhepSubscriberConfigType.md)

Get the options for the WHEP-based Subscriber.

#### Returns

`undefined` \| [`RTCWhepSubscriberConfigType`](../type-aliases/RTCWhepSubscriberConfigType.md)

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`getOptions`](WHEPClient.md#getoptions)

***

### getPeerConnection()

> **getPeerConnection**(): `undefined` \| `RTCPeerConnection`

Get the peer connection for the WHEP-based Subscriber.

#### Returns

`undefined` \| `RTCPeerConnection`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`getPeerConnection`](WHEPClient.md#getpeerconnection)

***

### getPlayer()

> **getPlayer**(): `undefined` \| `HTMLMediaElement`

Get the media element for the WHEP-based Subscriber.

#### Returns

`undefined` \| `HTMLMediaElement`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`getPlayer`](WHEPClient.md#getplayer)

***

### getPubNubClient()

> **getPubNubClient**(): `undefined` \| [`PubNubClient`](PubNubClient.md)

Get the PubNub client for the WHEP-based Subscriber.

#### Returns

`undefined` \| [`PubNubClient`](PubNubClient.md)

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`getPubNubClient`](WHEPClient.md#getpubnubclient)

***

### getType()

> **getType**(): `string`

Get the type of the WHEP-based Subscriber (RTC).

#### Returns

`string`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`getType`](WHEPClient.md#gettype)

***

### getVolume()

> **getVolume**(): `number`

Get the volume of the media being delivered to the subscriber.

#### Returns

`number`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`getVolume`](WHEPClient.md#getvolume)

***

### init()

> **init**(`options`): `Promise`\<[`WHEPClient`](WHEPClient.md)\>

Initialize the WHEP-based Subscriber with Live Seek support.

#### Parameters

##### options

[`LiveSeekConfigType`](../type-aliases/LiveSeekConfigType.md)

LiveSeekConfigType to use for configuration.

#### Returns

`Promise`\<[`WHEPClient`](WHEPClient.md)\>

#### Overrides

[`WHEPClient`](WHEPClient.md).[`init`](WHEPClient.md#init)

***

### monitorStats()

> **monitorStats**(`stats?`, `renegotiationPolicy?`): [`WHEPClient`](WHEPClient.md)

Monitor the statistics of the media being delivered to the subscriber over the underlying RTCPeerConnection.

#### Parameters

##### stats?

[`StatsConfig`](../type-aliases/StatsConfig.md)

The statistics configuration.

##### renegotiationPolicy?

`RenegotiationPolicyType`

The renegotiation policy configuration.

#### Returns

[`WHEPClient`](WHEPClient.md)

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`monitorStats`](WHEPClient.md#monitorstats)

***

### mute()

> **mute**(): `void`

Mute the audio playback on the media being delivered to the subscriber.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`mute`](WHEPClient.md#mute)

***

### muteAudio()

> **muteAudio**(): `void`

Mute the audio being delivered to the subscriber.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`muteAudio`](WHEPClient.md#muteaudio)

***

### muteVideo()

> **muteVideo**(): `void`

Mute the video being delivered to the subscriber.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`muteVideo`](WHEPClient.md#mutevideo)

***

### off()

> **off**(`type`, `fn`): `void`

Remove an event listener from the WHEP-based Subscriber.

#### Parameters

##### type

`string`

The type of event to listen for.

##### fn

(`event`) => `void`

The function to call when the event is triggered.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`off`](WHEPClient.md#off)

***

### on()

> **on**(`type`, `fn`): `void`

Add an event listener to the WHEP-based Subscriber.

#### Parameters

##### type

`string`

The type of event to listen for.

##### fn

(`event`) => `void`

The function to call when the event is triggered.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`on`](WHEPClient.md#on)

***

### pause()

> **pause**(): `void`

Pause the media being delivered to the subscriber.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`pause`](WHEPClient.md#pause)

***

### play()

> **play**(): `void`

Play the media being delivered to the subscriber.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`play`](WHEPClient.md#play)

***

### resume()

> **resume**(): `void`

Resume the media being delivered to the subscriber.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`resume`](WHEPClient.md#resume)

***

### seekTo()

> **seekTo**(`time`): `void`

Seek to a specific time in the media being delivered to the subscriber.

#### Parameters

##### time

`number`

The time to seek to.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`seekTo`](WHEPClient.md#seekto)

***

### send()

> **send**(`methodName`, `data`): `undefined` \| `Promise`\<`boolean`\>

Send a message to the Red5 Pro Server over the message transport (DataChannel).

#### Parameters

##### methodName

`string`

The method name to send.

##### data

`any`

The data to send.

#### Returns

`undefined` \| `Promise`\<`boolean`\>

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`send`](WHEPClient.md#send)

***

### sendLog()

> **sendLog**(`level`, `message`): `void`

Send a log message to the Red5 Pro Server over the message transport (DataChannel).

#### Parameters

##### level

`string`

The level of the log message.

##### message

`any`

The message to send.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`sendLog`](WHEPClient.md#sendlog)

***

### sendPubNub()

> **sendPubNub**(`channel`, `message`): `Promise`\<`boolean`\>

Send a message to the PubNub channel.

#### Parameters

##### channel

`string`

The channel to send the message to.

##### message

`any`

The message to send.

#### Returns

`Promise`\<`boolean`\>

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`sendPubNub`](WHEPClient.md#sendpubnub)

***

### setVolume()

> **setVolume**(`value`): `void`

Set the volume of the media being delivered to the subscriber.

#### Parameters

##### value

`number`

The volume to set.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`setVolume`](WHEPClient.md#setvolume)

***

### stop()

> **stop**(): `void`

Stop the media being delivered to the subscriber.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`stop`](WHEPClient.md#stop)

***

### subscribe()

> **subscribe**(): `Promise`\<[`WHEPClient`](WHEPClient.md)\>

Subscribe to the WHEP-based Subscriber.

#### Returns

`Promise`\<[`WHEPClient`](WHEPClient.md)\>

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`subscribe`](WHEPClient.md#subscribe)

***

### subscribePubNub()

> **subscribePubNub**(`channel`, `options`): `Promise`\<`boolean`\>

Subscribe to a PubNub channel.

#### Parameters

##### channel

`string`

The channel to subscribe to.

##### options

`any`

The options to use for subscription.

#### Returns

`Promise`\<`boolean`\>

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`subscribePubNub`](WHEPClient.md#subscribepubnub)

***

### toggleFullScreen()

> **toggleFullScreen**(): `void`

Toggle the full screen mode of the media being delivered to the subscriber.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`toggleFullScreen`](WHEPClient.md#togglefullscreen)

***

### trigger()

> **trigger**(`event`): `void`

Trigger an event on the WHEP-based Subscriber.

#### Parameters

##### event

[`Event`](Event.md)

The event to trigger.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`trigger`](WHEPClient.md#trigger)

***

### unmonitorStats()

> **unmonitorStats**(): [`WHEPClient`](WHEPClient.md)

Unmonitor the statistics of the media being delivered to the subscriber over the underlying RTCPeerConnection.

#### Returns

[`WHEPClient`](WHEPClient.md)

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`unmonitorStats`](WHEPClient.md#unmonitorstats)

***

### unmute()

> **unmute**(): `void`

Unmute the audio playback on the media being delivered to the subscriber.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`unmute`](WHEPClient.md#unmute)

***

### unmuteAudio()

> **unmuteAudio**(): `void`

Unmute the audio being delivered to the subscriber.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`unmuteAudio`](WHEPClient.md#unmuteaudio)

***

### unmuteVideo()

> **unmuteVideo**(): `void`

Unmute the video being delivered to the subscriber.

#### Returns

`void`

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`unmuteVideo`](WHEPClient.md#unmutevideo)

***

### unsubscribe()

> **unsubscribe**(`internal`): `Promise`\<`void`\>

Unsubscribe from the WHEP-based Subscriber.

#### Parameters

##### internal

`boolean` = `false`

Optional boolean to indicate if the unsubscribe is internal.

#### Returns

`Promise`\<`void`\>

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`unsubscribe`](WHEPClient.md#unsubscribe)

***

### unsubscribePubNub()

> **unsubscribePubNub**(`channel`): `Promise`\<`boolean`\>

Unsubscribe from a PubNub channel.

#### Parameters

##### channel

`string`

The channel to unsubscribe from.

#### Returns

`Promise`\<`boolean`\>

#### Inherited from

[`WHEPClient`](WHEPClient.md).[`unsubscribePubNub`](WHEPClient.md#unsubscribepubnub)
