From 8af1d58ccd62976ded6a1de030126680eb7058be Mon Sep 17 00:00:00 2001 From: nirav Date: Mon, 6 Apr 2026 18:50:06 +0545 Subject: [PATCH 1/4] add v4 beta docs (WIP) --- fern/docs.yml | 4 +- .../pages/v4/reference/classes/Address.md | 726 ++++++ .../v4/reference/classes/CallCreateError.md | 40 + .../v4/reference/classes/ClientPreferences.md | 682 ++++++ .../reference/classes/CollectionFetchError.md | 37 + .../v4/reference/classes/DPoPInitError.md | 36 + .../v4/reference/classes/DeviceTokenError.md | 36 + .../classes/EmbedTokenCredentialProvider.md | 88 + .../classes/InvalidCredentialsError.md | 36 + .../v4/reference/classes/MediaTrackError.md | 39 + .../v4/reference/classes/MessageParseError.md | 35 + .../pages/v4/reference/classes/Participant.md | 1587 ++++++++++++ .../v4/reference/classes/SelfCapabilities.md | 632 +++++ .../v4/reference/classes/SelfParticipant.md | 2128 +++++++++++++++++ .../pages/v4/reference/classes/SignalWire.md | 1166 +++++++++ .../classes/StaticCredentialProvider.md | 54 + .../pages/v4/reference/classes/Subscriber.md | 350 +++ .../v4/reference/classes/TokenRefreshError.md | 36 + .../v4/reference/classes/UnexpectedError.md | 36 + .../v4/reference/classes/VertoPongError.md | 35 + .../pages/v4/reference/classes/WebRTCCall.md | 1913 +++++++++++++++ .../v4/reference/functions/embeddableCall.md | 21 + .../pages/v4/reference/functions/getLogger.md | 9 + .../reference/functions/isSelfParticipant.md | 17 + .../pages/v4/reference/functions/setLogger.md | 15 + .../browser-sdk/pages/v4/reference/index.md | 107 + .../v4/reference/interfaces/AddressHistory.md | 28 + .../interfaces/AuthenticateContext.md | 14 + .../pages/v4/reference/interfaces/Call.md | 321 +++ .../v4/reference/interfaces/CallAddress.md | 33 + .../interfaces/CallCapabilitiesState.md | 19 + .../v4/reference/interfaces/CallError.md | 17 + .../v4/reference/interfaces/CallOptions.md | 32 + .../reference/interfaces/CallParticipant.md | 335 +++ .../interfaces/CallSelfParticipant.md | 495 ++++ .../v4/reference/interfaces/CallState.md | 65 + .../interfaces/CredentialProvider.md | 50 + .../reference/interfaces/DeviceController.md | 180 ++ .../v4/reference/interfaces/DialOptions.md | 22 + .../v4/reference/interfaces/Directory.md | 107 + .../interfaces/JSONRPCErrorResponse.md | 12 + .../v4/reference/interfaces/JSONRPCRequest.md | 18 + .../interfaces/JSONRPCSuccessResponse.md | 18 + .../v4/reference/interfaces/LayoutLayer.md | 19 + .../reference/interfaces/MediaDirections.md | 12 + .../v4/reference/interfaces/MediaOptions.md | 23 + .../interfaces/MemberCapabilities.md | 21 + .../reference/interfaces/NodeSocketAdapter.md | 44 + .../reference/interfaces/OnOffCapability.md | 13 + .../reference/interfaces/PendingRPCOptions.md | 10 + .../v4/reference/interfaces/SATClaims.md | 14 + .../v4/reference/interfaces/SDKCredential.md | 15 + .../v4/reference/interfaces/SessionState.md | 58 + .../reference/interfaces/SignalWireOptions.md | 18 + .../pages/v4/reference/interfaces/Storage.md | 63 + .../v4/reference/interfaces/TextMessage.md | 26 + .../reference/interfaces/TransferOptions.md | 9 + .../reference/interfaces/WebRTCApiProvider.md | 33 + .../interfaces/WebRTCMediaDevices.md | 96 + .../reference/type-aliases/CallErrorKind.md | 14 + .../v4/reference/type-aliases/CallStatus.md | 7 + .../reference/type-aliases/ExecuteMethod.md | 26 + .../reference/type-aliases/JSONRPCResponse.md | 11 + .../reference/type-aliases/MediaDirection.md | 7 + .../reference/type-aliases/VideoPosition.md | 14 + .../type-aliases/WebSocketAdapter.md | 18 + .../components/sw-audio-level.md | 30 + .../components/sw-call-controls.md | 33 + .../components/sw-call-media.md | 27 + .../components/sw-call-status.md | 13 + .../components/sw-call-widget.md | 44 + .../components/sw-click-to-call.md | 24 + .../components/sw-device-selector.md | 30 + .../web-components/components/sw-dialpad.md | 23 + .../web-components/components/sw-directory.md | 20 + .../components/sw-local-camera.md | 10 + .../components/sw-participant-controls.md | 26 + .../components/sw-participants.md | 24 + .../components/sw-self-media.md | 9 + .../context/TranscriptController.md | 39 + .../v4/web-components/context/call-context.md | 16 + .../context/transcript-context.md | 21 + .../pages/v4/web-components/introduction.mdx | 54 + .../pages/v4/web-components/ui/one-layout.md | 38 + .../web-components/ui/responsive-container.md | 13 + .../v4/web-components/ui/sw-ctrl-button.md | 51 + .../v4/web-components/ui/sw-ctrl-dropup.md | 32 + .../v4/web-components/ui/sw-ctrl-toggle.md | 32 + .../pages/v4/web-components/ui/sw-modal.md | 24 + .../pages/v4/web-components/ui/sw-prompt.md | 31 + .../web-components/ui/sw-transcript-view.md | 23 + fern/products/browser-sdk/versions/v4.yml | 14 + .../platform/pages/getting-started.mdx | 4 +- 93 files changed, 12904 insertions(+), 3 deletions(-) create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/CallCreateError.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/CollectionFetchError.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/DPoPInitError.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/DeviceTokenError.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/EmbedTokenCredentialProvider.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/InvalidCredentialsError.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/MediaTrackError.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/MessageParseError.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/StaticCredentialProvider.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Subscriber.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/TokenRefreshError.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/UnexpectedError.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/VertoPongError.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/functions/embeddableCall.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/functions/getLogger.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/functions/isSelfParticipant.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/functions/setLogger.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/index.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/AddressHistory.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/AuthenticateContext.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/Call.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/CallAddress.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/CallCapabilitiesState.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/CallError.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/CallOptions.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/CallParticipant.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/CallSelfParticipant.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/CallState.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/CredentialProvider.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/DeviceController.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/DialOptions.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/Directory.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/JSONRPCErrorResponse.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/JSONRPCRequest.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/JSONRPCSuccessResponse.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/LayoutLayer.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/MediaDirections.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/MediaOptions.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/MemberCapabilities.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/NodeSocketAdapter.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/OnOffCapability.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/PendingRPCOptions.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/SATClaims.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/SDKCredential.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/SessionState.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/SignalWireOptions.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/Storage.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/TextMessage.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/TransferOptions.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/WebRTCApiProvider.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/WebRTCMediaDevices.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/type-aliases/CallErrorKind.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/type-aliases/CallStatus.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/type-aliases/ExecuteMethod.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/type-aliases/JSONRPCResponse.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/type-aliases/MediaDirection.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/type-aliases/VideoPosition.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/type-aliases/WebSocketAdapter.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/components/sw-audio-level.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/components/sw-call-controls.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/components/sw-call-media.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/components/sw-call-status.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/components/sw-call-widget.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/components/sw-click-to-call.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/components/sw-device-selector.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/components/sw-dialpad.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/components/sw-directory.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/components/sw-local-camera.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/components/sw-participant-controls.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/components/sw-participants.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/components/sw-self-media.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/context/TranscriptController.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/context/call-context.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/context/transcript-context.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/introduction.mdx create mode 100644 fern/products/browser-sdk/pages/v4/web-components/ui/one-layout.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/ui/responsive-container.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-button.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-dropup.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-toggle.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/ui/sw-modal.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/ui/sw-prompt.md create mode 100644 fern/products/browser-sdk/pages/v4/web-components/ui/sw-transcript-view.md create mode 100644 fern/products/browser-sdk/versions/v4.yml diff --git a/fern/docs.yml b/fern/docs.yml index e22f681da..f2fd47c7b 100644 --- a/fern/docs.yml +++ b/fern/docs.yml @@ -78,6 +78,9 @@ products: icon: fa-regular fa-browser subtitle: Build voice, video and chat applications for the browser versions: + - display-name: v4 + path: products/browser-sdk/versions/v4.yml + availability: beta - display-name: v3 path: products/browser-sdk/versions/latest.yml availability: stable @@ -185,7 +188,6 @@ css: - brand-overrides.css - styles.css - check: rules: no-circular-redirects: error diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address.md new file mode 100644 index 000000000..4770af585 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address.md @@ -0,0 +1,726 @@ +# Class: Address + +Defined in: [core/entities/Address.ts:31](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L31) + +Represents a contact or room in the directory. + +Provides identity metadata, conversation history, text messaging, +and activity state for an address entry. + +## Extends + +- `Destroyable` + +## Constructors + +### Constructor + +> **new Address**(`addressId`, `conversationManager`, `addressProvider`): `Address` + +Defined in: [core/entities/Address.ts:67](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L67) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `addressId` | `string` | +| `conversationManager` | `ConversationsProvider` | +| `addressProvider` | `AddressProvider`\<`Address`\> | + +#### Returns + +`Address` + +#### Overrides + +`Destroyable.constructor` + +## Properties + +| Property | Modifier | Type | Default value | Description | Inherited from | Defined in | +| ------ | ------ | ------ | ------ | ------ | ------ | ------ | +| `_destroyed$` | `protected` | `Subject`\<`void`\> | `undefined` | - | `Destroyable._destroyed$` | [behaviors/Destroyable.ts:17](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L17) | +| `history$` | `public` | `Observable`\<`EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`AddressHistory`](../interfaces/AddressHistory.md)\<`Address`\>\> \| `undefined`\> | `undefined` | Observable of call history for this address. Lazily loads conversation data. | - | [core/entities/Address.ts:49](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L49) | +| `subjects` | `protected` | `Subject`\<`unknown`\>[] | `[]` | - | `Destroyable.subjects` | [behaviors/Destroyable.ts:16](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L16) | +| `subscriptions` | `protected` | `Subscription`[] | `[]` | - | `Destroyable.subscriptions` | [behaviors/Destroyable.ts:15](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L15) | +| `textMessages$` | `public` | `Observable`\<`EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`TextMessage`](../interfaces/TextMessage.md)\<`Address`\>\> \| `undefined`\> | `undefined` | Observable of text messages for this address. Lazily loads conversation data. | - | [core/entities/Address.ts:43](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L43) | + +## Accessors + +### $ + +#### Get Signature + +> **get** **$**(): `Observable`\<`this`\> + +Defined in: [behaviors/Destroyable.ts:100](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L100) + +##### Returns + +`Observable`\<`this`\> + +#### Inherited from + +`Destroyable.$` + +*** + +### activity + +#### Get Signature + +> **get** **activity**(): [`CallState`](../interfaces/CallState.md)[] + +Defined in: [core/entities/Address.ts:346](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L346) + +Active call states for this address. + +##### Throws + +Requires presence support. + +##### Returns + +[`CallState`](../interfaces/CallState.md)[] + +*** + +### activity$ + +#### Get Signature + +> **get** **activity$**(): `Observable`\<[`CallState`](../interfaces/CallState.md)[]\> + +Defined in: [core/entities/Address.ts:340](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L340) + +Observable of active call states for this address. + +##### Throws + +Requires presence support. + +##### Returns + +`Observable`\<[`CallState`](../interfaces/CallState.md)[]\> + +*** + +### channels + +#### Get Signature + +> **get** **channels**(): `object` + +Defined in: [core/entities/Address.ts:229](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L229) + +Available communication channels. + +##### Returns + +`object` + +###### audio? + +> `optional` **audio?**: `string` + +###### messaging? + +> `optional` **messaging?**: `string` + +###### video? + +> `optional` **video?**: `string` + +*** + +### channels$ + +#### Get Signature + +> **get** **channels$**(): `Observable`\<\{ `audio?`: `string`; `messaging?`: `string`; `video?`: `string`; \}\> + +Defined in: [core/entities/Address.ts:213](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L213) + +Observable of available communication channels (audio, video, messaging). + +##### Returns + +`Observable`\<\{ `audio?`: `string`; `messaging?`: `string`; `video?`: `string`; \}\> + +*** + +### coverUrl + +#### Get Signature + +> **get** **coverUrl**(): `string` \| `undefined` + +Defined in: [core/entities/Address.ts:165](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L165) + +Cover image URL. + +##### Returns + +`string` \| `undefined` + +*** + +### coverUrl$ + +#### Get Signature + +> **get** **coverUrl$**(): `Observable`\<`string` \| `undefined`\> + +Defined in: [core/entities/Address.ts:153](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L153) + +Observable of the cover image URL. + +##### Returns + +`Observable`\<`string` \| `undefined`\> + +*** + +### createdAt + +#### Get Signature + +> **get** **createdAt**(): `string` + +Defined in: [core/entities/Address.ts:102](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L102) + +ISO timestamp of when the address was created. + +##### Returns + +`string` + +*** + +### defaultChannel + +#### Get Signature + +> **get** **defaultChannel**(): `string` \| `undefined` + +Defined in: [core/entities/Address.ts:110](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L110) + +Default communication channel URI (video for rooms, audio otherwise). + +##### Returns + +`string` \| `undefined` + +*** + +### destroyed$ + +#### Get Signature + +> **get** **destroyed$**(): `Observable`\<`void`\> + +Defined in: [behaviors/Destroyable.ts:112](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L112) + +Observable that emits when the instance is destroyed + +##### Returns + +`Observable`\<`void`\> + +#### Inherited from + +`Destroyable.destroyed$` + +*** + +### displayName + +#### Get Signature + +> **get** **displayName**(): `string` + +Defined in: [core/entities/Address.ts:126](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L126) + +Human-readable display name. + +##### Returns + +`string` + +*** + +### displayName$ + +#### Get Signature + +> **get** **displayName$**(): `Observable`\<`string`\> + +Defined in: [core/entities/Address.ts:115](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L115) + +Observable of the human-readable display name. + +##### Returns + +`Observable`\<`string`\> + +*** + +### history + +#### Get Signature + +> **get** **history**(): `EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`AddressHistory`](../interfaces/AddressHistory.md)\<`Address`\>\> \| `undefined` + +Defined in: [core/entities/Address.ts:314](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L314) + +Collection of call history entries for this address, with pagination support. + +Returns `undefined` until [history$](#history) has been subscribed to (lazy-loaded). +Filters to `'log'` subtype messages including kind, status, start/end times. + +##### See + +[history$](#history) to trigger lazy loading. + +##### Returns + +`EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`AddressHistory`](../interfaces/AddressHistory.md)\<`Address`\>\> \| `undefined` + +*** + +### id + +#### Get Signature + +> **get** **id**(): `string` + +Defined in: [core/entities/Address.ts:90](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L90) + +Unique address identifier. + +##### Returns + +`string` + +*** + +### locked + +#### Get Signature + +> **get** **locked**(): `boolean` + +Defined in: [core/entities/Address.ts:241](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L241) + +Whether the address (room) is locked. + +##### Returns + +`boolean` + +*** + +### locked$ + +#### Get Signature + +> **get** **locked$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Address.ts:249](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L249) + +Observable indicating whether the address (room) is locked. + +##### Returns + +`Observable`\<`boolean`\> + +*** + +### name + +#### Get Signature + +> **get** **name**(): `string` + +Defined in: [core/entities/Address.ts:94](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L94) + +Address name (resource identifier). + +##### Returns + +`string` + +*** + +### previewUrl + +#### Get Signature + +> **get** **previewUrl**(): `string` \| `undefined` + +Defined in: [core/entities/Address.ts:145](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L145) + +Preview image URL. + +##### Returns + +`string` \| `undefined` + +*** + +### previewUrl$ + +#### Get Signature + +> **get** **previewUrl$**(): `Observable`\<`string` \| `undefined`\> + +Defined in: [core/entities/Address.ts:134](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L134) + +Observable of the preview image URL. + +##### Returns + +`Observable`\<`string` \| `undefined`\> + +*** + +### resourceId + +#### Get Signature + +> **get** **resourceId**(): `string` + +Defined in: [core/entities/Address.ts:185](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L185) + +Underlying resource ID. + +##### Returns + +`string` + +*** + +### resourceId$ + +#### Get Signature + +> **get** **resourceId$**(): `Observable`\<`string`\> + +Defined in: [core/entities/Address.ts:173](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L173) + +Observable of the underlying resource ID. + +##### Returns + +`Observable`\<`string`\> + +*** + +### textMessage + +#### Get Signature + +> **get** **textMessage**(): `EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`TextMessage`](../interfaces/TextMessage.md)\<`Address`\>\> \| `undefined` + +Defined in: [core/entities/Address.ts:283](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L283) + +Collection of text messages for this address, with pagination support. + +Returns `undefined` until [textMessages$](#textmessages) has been subscribed to (lazy-loaded). +Filters to `'chat'` subtype messages from the conversation. + +##### See + + - [textMessages$](#textmessages) to trigger lazy loading. + - [sendText](#sendtext) to send a new message. + +##### Returns + +`EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`TextMessage`](../interfaces/TextMessage.md)\<`Address`\>\> \| `undefined` + +*** + +### type + +#### Get Signature + +> **get** **type**(): `ResourceType` + +Defined in: [core/entities/Address.ts:205](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L205) + +Resource type (e.g. `'room'`, `'subscriber'`). + +##### Returns + +`ResourceType` + +*** + +### type$ + +#### Get Signature + +> **get** **type$**(): `Observable`\<`ResourceType`\> + +Defined in: [core/entities/Address.ts:193](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L193) + +Observable of the resource type (e.g. `'room'`, `'subscriber'`). + +##### Returns + +`Observable`\<`ResourceType`\> + +## Methods + +### cachedObservable() + +> `protected` **cachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:28](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L28) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `factory` | () => `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.cachedObservable` + +*** + +### createBehaviorSubject() + +> `protected` **createBehaviorSubject**\<`T`\>(`initialValue`): `BehaviorSubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:94](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L94) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `initialValue` | `T` | + +#### Returns + +`BehaviorSubject`\<`T`\> + +#### Inherited from + +`Destroyable.createBehaviorSubject` + +*** + +### createReplaySubject() + +> `protected` **createReplaySubject**\<`T`\>(`bufferSize?`, `windowTime?`): `ReplaySubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:88](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L88) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `bufferSize?` | `number` | +| `windowTime?` | `number` | + +#### Returns + +`ReplaySubject`\<`T`\> + +#### Inherited from + +`Destroyable.createReplaySubject` + +*** + +### createSubject() + +> `protected` **createSubject**\<`T`\>(): `Subject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:82](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L82) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Returns + +`Subject`\<`T`\> + +#### Inherited from + +`Destroyable.createSubject` + +*** + +### deferEmission() + +> `protected` **deferEmission**\<`T`\>(`observable`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:70](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L70) + +Wraps an observable so emissions are deferred to the microtask queue. + +Use ONLY for public-facing getters that expose a subject via +`.asObservable()` without going through `cachedObservable`. + +Do NOT use for observables consumed internally by the SDK. + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `observable` | `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.deferEmission` + +*** + +### destroy() + +> **destroy**(): `void` + +Defined in: [behaviors/Destroyable.ts:20](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L20) + +#### Returns + +`void` + +#### Inherited from + +`Destroyable.destroy` + +*** + +### publicCachedObservable() + +> `protected` **publicCachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:51](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L51) + +Like `cachedObservable`, but defers emissions to the microtask queue +via `observeOn(asapScheduler)`. + +Use ONLY for public-facing observable getters that external consumers +subscribe to. Prevents a class of bugs where `BehaviorSubject` or +`ReplaySubject` replays synchronously during `subscribe()`, before +the subscription variable is assigned in the caller's scope. + +Do NOT use for observables consumed internally by the SDK — internal +code using `subscribeTo()`, `firstValueFrom()`, or `withLatestFrom()` +depends on synchronous emission delivery. + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `factory` | () => `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.publicCachedObservable` + +*** + +### sendText() + +> **sendText**(`text`): `Promise`\<`void`\> + +Defined in: [core/entities/Address.ts:270](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L270) + +Sends a text message to this address. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `text` | `string` | The message text to send. | + +#### Returns + +`Promise`\<`void`\> + +#### Example + +```ts +await address.sendText('Hello!'); +``` + +*** + +### subscribeTo() + +> `protected` **subscribeTo**\<`T`\>(`observable`, `observerOrNext`): `void` + +Defined in: [behaviors/Destroyable.ts:74](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L74) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `observable` | `Observable`\<`T`\> | +| `observerOrNext` | `Partial`\<`Observer`\<`T`\>\> \| ((`value`) => `void`) \| `undefined` | + +#### Returns + +`void` + +#### Inherited from + +`Destroyable.subscribeTo` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/CallCreateError.md b/fern/products/browser-sdk/pages/v4/reference/classes/CallCreateError.md new file mode 100644 index 000000000..ca955ff9f --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/CallCreateError.md @@ -0,0 +1,40 @@ +# Class: CallCreateError + +Defined in: [core/errors.ts:264](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L264) + +## Extends + +- `Error` + +## Constructors + +### Constructor + +> **new CallCreateError**(`message`, `error?`, `direction?`, `options?`): `CallCreateError` + +Defined in: [core/errors.ts:265](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L265) + +#### Parameters + +| Parameter | Type | Default value | +| ------ | ------ | ------ | +| `message` | `string` | `undefined` | +| `error` | `unknown` | `null` | +| `direction` | `"inbound"` \| `"outbound"` | `'outbound'` | +| `options?` | `ErrorOptions` | `undefined` | + +#### Returns + +`CallCreateError` + +#### Overrides + +`Error.constructor` + +## Properties + +| Property | Modifier | Type | Default value | Inherited from | Defined in | +| ------ | ------ | ------ | ------ | ------ | ------ | +| `direction` | `public` | `"inbound"` \| `"outbound"` | `'outbound'` | - | [core/errors.ts:268](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L268) | +| `error` | `public` | `unknown` | `null` | - | [core/errors.ts:267](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L267) | +| `message` | `public` | `string` | `undefined` | `Error.message` | [core/errors.ts:266](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L266) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences.md new file mode 100644 index 000000000..7fa561604 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences.md @@ -0,0 +1,682 @@ +# Class: ClientPreferences + +Defined in: [containers/PreferencesContainer.ts:220](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L220) + +Public preferences API for configuring SDK behavior. + +Exposed as [SignalWire.preferences](SignalWire.md#preferences). All timeout values +are in seconds when accessed through this class. + +When [enableSavePreferences](#enablesavepreferences) is called, preferences are +automatically loaded from storage and synced back on every change. + +## Constructors + +### Constructor + +> **new ClientPreferences**(): `ClientPreferences` + +#### Returns + +`ClientPreferences` + +## Accessors + +### connectionTimeout + +#### Get Signature + +> **get** **connectionTimeout**(): `number` + +Defined in: [containers/PreferencesContainer.ts:233](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L233) + +WebSocket connection timeout in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **connectionTimeout**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:236](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L236) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` + +*** + +### deviceDebounceTime + +#### Get Signature + +> **get** **deviceDebounceTime**(): `number` + +Defined in: [containers/PreferencesContainer.ts:336](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L336) + +Debounce time for device change events, in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **deviceDebounceTime**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:339](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L339) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` + +*** + +### devicePollingInterval + +#### Get Signature + +> **get** **devicePollingInterval**(): `number` + +Defined in: [containers/PreferencesContainer.ts:345](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L345) + +Polling interval for device enumeration, in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **devicePollingInterval**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:348](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L348) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` + +*** + +### disableUdpIceServers + +#### Get Signature + +> **get** **disableUdpIceServers**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:354](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L354) + +Whether to filter out UDP-based ICE servers. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **disableUdpIceServers**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:357](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L357) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` + +*** + +### iceCandidateTimeout + +#### Get Signature + +> **get** **iceCandidateTimeout**(): `number` + +Defined in: [containers/PreferencesContainer.ts:372](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L372) + +Timeout for individual ICE candidate gathering, in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **iceCandidateTimeout**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:375](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L375) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` + +*** + +### iceGatheringTimeout + +#### Get Signature + +> **get** **iceGatheringTimeout**(): `number` + +Defined in: [containers/PreferencesContainer.ts:381](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L381) + +Timeout for the entire ICE gathering phase, in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **iceGatheringTimeout**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:384](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L384) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` + +*** + +### iceServers + +#### Get Signature + +> **get** **iceServers**(): `RTCIceServer`[] \| `undefined` + +Defined in: [containers/PreferencesContainer.ts:390](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L390) + +Custom ICE servers for TURN/STUN configuration. + +##### Returns + +`RTCIceServer`[] \| `undefined` + +#### Set Signature + +> **set** **iceServers**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:393](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L393) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `RTCIceServer`[] \| `undefined` | + +##### Returns + +`void` + +*** + +### inputAudioConstraints + +#### Get Signature + +> **get** **inputAudioConstraints**(): `MediaTrackConstraints` \| `undefined` + +Defined in: [containers/PreferencesContainer.ts:320](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L320) + +Default audio input track constraints. + +##### Returns + +`MediaTrackConstraints` \| `undefined` + +#### Set Signature + +> **set** **inputAudioConstraints**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:323](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L323) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `MediaTrackConstraints` \| `undefined` | + +##### Returns + +`void` + +*** + +### inputVideoConstraints + +#### Get Signature + +> **get** **inputVideoConstraints**(): `MediaTrackConstraints` \| `undefined` + +Defined in: [containers/PreferencesContainer.ts:328](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L328) + +Default video input track constraints. + +##### Returns + +`MediaTrackConstraints` \| `undefined` + +#### Set Signature + +> **set** **inputVideoConstraints**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:331](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L331) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `MediaTrackConstraints` \| `undefined` | + +##### Returns + +`void` + +*** + +### preferredAudioInput + +#### Get Signature + +> **get** **preferredAudioInput**(): `MediaDeviceInfo` \| `null` + +Defined in: [containers/PreferencesContainer.ts:296](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L296) + +Preferred audio input device for new calls. + +##### Returns + +`MediaDeviceInfo` \| `null` + +#### Set Signature + +> **set** **preferredAudioInput**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:299](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L299) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `MediaDeviceInfo` \| `null` | + +##### Returns + +`void` + +*** + +### preferredAudioOutput + +#### Get Signature + +> **get** **preferredAudioOutput**(): `MediaDeviceInfo` \| `null` + +Defined in: [containers/PreferencesContainer.ts:304](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L304) + +Preferred audio output device for new calls. + +##### Returns + +`MediaDeviceInfo` \| `null` + +#### Set Signature + +> **set** **preferredAudioOutput**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:307](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L307) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `MediaDeviceInfo` \| `null` | + +##### Returns + +`void` + +*** + +### preferredVideoInput + +#### Get Signature + +> **get** **preferredVideoInput**(): `MediaDeviceInfo` \| `null` + +Defined in: [containers/PreferencesContainer.ts:312](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L312) + +Preferred video input device for new calls. + +##### Returns + +`MediaDeviceInfo` \| `null` + +#### Set Signature + +> **set** **preferredVideoInput**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:315](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L315) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `MediaDeviceInfo` \| `null` | + +##### Returns + +`void` + +*** + +### receiveAudio + +#### Get Signature + +> **get** **receiveAudio**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:287](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L287) + +Whether to receive remote audio by default. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **receiveAudio**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:290](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L290) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` + +*** + +### receiveVideo + +#### Get Signature + +> **get** **receiveVideo**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:278](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L278) + +Whether to receive remote video by default. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **receiveVideo**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:281](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L281) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` + +*** + +### reconnectCallsTimeout + +#### Get Signature + +> **get** **reconnectCallsTimeout**(): `number` + +Defined in: [containers/PreferencesContainer.ts:242](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L242) + +Timeout for reconnecting to previously attached calls, in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **reconnectCallsTimeout**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:245](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L245) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` + +*** + +### reconnectDelayMax + +#### Get Signature + +> **get** **reconnectDelayMax**(): `number` + +Defined in: [containers/PreferencesContainer.ts:260](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L260) + +Maximum reconnection backoff delay in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **reconnectDelayMax**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:263](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L263) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` + +*** + +### reconnectDelayMin + +#### Get Signature + +> **get** **reconnectDelayMin**(): `number` + +Defined in: [containers/PreferencesContainer.ts:251](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L251) + +Minimum reconnection backoff delay in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **reconnectDelayMin**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:254](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L254) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` + +*** + +### relayHost + +#### Get Signature + +> **get** **relayHost**(): `string` + +Defined in: [containers/PreferencesContainer.ts:269](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L269) + +Custom relay host URL. Empty string uses the default. + +##### Returns + +`string` + +#### Set Signature + +> **set** **relayHost**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:272](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L272) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `string` | + +##### Returns + +`void` + +*** + +### relayOnly + +#### Get Signature + +> **get** **relayOnly**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:363](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L363) + +Whether to force TURN relay-only ICE candidates. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **relayOnly**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:366](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L366) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` + +*** + +### userVariables + +#### Get Signature + +> **get** **userVariables**(): `Record`\<`string`, `unknown`\> + +Defined in: [containers/PreferencesContainer.ts:399](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L399) + +Custom user variables attached to calls. + +##### Returns + +`Record`\<`string`, `unknown`\> + +#### Set Signature + +> **set** **userVariables**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:402](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L402) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `Record`\<`string`, `unknown`\> | + +##### Returns + +`void` + +## Methods + +### enableSavePreferences() + +> **enableSavePreferences**(`storage`): `void` + +Defined in: [containers/PreferencesContainer.ts:227](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L227) + +Enables persistence of preferences to storage. +Loads any previously saved preferences and syncs future changes. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `storage` | `StorageManager` | + +#### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/CollectionFetchError.md b/fern/products/browser-sdk/pages/v4/reference/classes/CollectionFetchError.md new file mode 100644 index 000000000..372b05594 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/CollectionFetchError.md @@ -0,0 +1,37 @@ +# Class: CollectionFetchError + +Defined in: [core/errors.ts:357](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L357) + +## Extends + +- `Error` + +## Constructors + +### Constructor + +> **new CollectionFetchError**(`operation`, `originalError`): `CollectionFetchError` + +Defined in: [core/errors.ts:358](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L358) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `operation` | `string` | +| `originalError` | `unknown` | + +#### Returns + +`CollectionFetchError` + +#### Overrides + +`Error.constructor` + +## Properties + +| Property | Modifier | Type | Defined in | +| ------ | ------ | ------ | ------ | +| `operation` | `public` | `string` | [core/errors.ts:359](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L359) | +| `originalError` | `public` | `unknown` | [core/errors.ts:360](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L360) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/DPoPInitError.md b/fern/products/browser-sdk/pages/v4/reference/classes/DPoPInitError.md new file mode 100644 index 000000000..062ecd936 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/DPoPInitError.md @@ -0,0 +1,36 @@ +# Class: DPoPInitError + +Defined in: [core/errors.ts:386](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L386) + +## Extends + +- `Error` + +## Constructors + +### Constructor + +> **new DPoPInitError**(`originalError`, `message?`): `DPoPInitError` + +Defined in: [core/errors.ts:387](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L387) + +#### Parameters + +| Parameter | Type | Default value | +| ------ | ------ | ------ | +| `originalError` | `unknown` | `undefined` | +| `message` | `string` | `'Failed to initialize DPoP key pair'` | + +#### Returns + +`DPoPInitError` + +#### Overrides + +`Error.constructor` + +## Properties + +| Property | Modifier | Type | Defined in | +| ------ | ------ | ------ | ------ | +| `originalError` | `public` | `unknown` | [core/errors.ts:388](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L388) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/DeviceTokenError.md b/fern/products/browser-sdk/pages/v4/reference/classes/DeviceTokenError.md new file mode 100644 index 000000000..d294f483b --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/DeviceTokenError.md @@ -0,0 +1,36 @@ +# Class: DeviceTokenError + +Defined in: [core/errors.ts:398](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L398) + +## Extends + +- `Error` + +## Constructors + +### Constructor + +> **new DeviceTokenError**(`message`, `originalError?`): `DeviceTokenError` + +Defined in: [core/errors.ts:399](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L399) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `message` | `string` | +| `originalError?` | `unknown` | + +#### Returns + +`DeviceTokenError` + +#### Overrides + +`Error.constructor` + +## Properties + +| Property | Modifier | Type | Defined in | +| ------ | ------ | ------ | ------ | +| `originalError?` | `public` | `unknown` | [core/errors.ts:401](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L401) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/EmbedTokenCredentialProvider.md b/fern/products/browser-sdk/pages/v4/reference/classes/EmbedTokenCredentialProvider.md new file mode 100644 index 000000000..f158998ff --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/EmbedTokenCredentialProvider.md @@ -0,0 +1,88 @@ +# Class: EmbedTokenCredentialProvider + +Defined in: [dependencies/EmbedTokenCredentialProvider.ts:9](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/EmbedTokenCredentialProvider.ts#L9) + +Credential provider that exchanges an embed token for a SAT via the host's token endpoint. + +## Implements + +- [`CredentialProvider`](../interfaces/CredentialProvider.md) + +## Constructors + +### Constructor + +> **new EmbedTokenCredentialProvider**(`host`, `embedToken`): `EmbedTokenCredentialProvider` + +Defined in: [dependencies/EmbedTokenCredentialProvider.ts:10](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/EmbedTokenCredentialProvider.ts#L10) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `host` | `string` | +| `embedToken` | `string` | + +#### Returns + +`EmbedTokenCredentialProvider` + +## Methods + +### authenticate() + +> **authenticate**(): `Promise`\<\{ `expiry_at`: `number`; `token`: `string`; \}\> + +Defined in: [dependencies/EmbedTokenCredentialProvider.ts:52](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/EmbedTokenCredentialProvider.ts#L52) + +Obtains the initial credentials. Called once during client initialization. + +Implementor responsibilities: +- Resolve with a valid [SDKCredential](../interfaces/SDKCredential.md) on success. +- Reject (throw) on failure — this will cause client initialization to fail. +- When `context.fingerprint` is provided, forward it to the server-side token + endpoint with `scope: "sat:refresh"` to enable automatic token refresh. + +SDK behavior: +- Awaits this method before establishing the WebSocket connection. +- On rejection, propagates the error to the caller of `SignalWire()`. + +#### Returns + +`Promise`\<\{ `expiry_at`: `number`; `token`: `string`; \}\> + +#### Implementation of + +[`CredentialProvider`](../interfaces/CredentialProvider.md).[`authenticate`](../interfaces/CredentialProvider.md#authenticate) + +*** + +### refresh() + +> **refresh**(): `Promise`\<\{ `expiry_at`: `number`; `token`: `string`; \}\> + +Defined in: [dependencies/EmbedTokenCredentialProvider.ts:58](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/EmbedTokenCredentialProvider.ts#L58) + +Obtains fresh credentials before the current ones expire. Optional. + +Implementor responsibilities: +- Resolve with a new [SDKCredential](../interfaces/SDKCredential.md) containing an updated `token` (or `authorizationState`) and `expiry_at`. +- Reject (throw) if refresh is not possible — the SDK will stop the refresh schedule. + +SDK behavior: +- Only called when `expiry_at` was set on the previous credential. +- Scheduled automatically before expiry; implementors do not need to manage timing. +- On rejection, the refresh schedule stops and the session continues with the + current credentials until they expire. +- When not provided and the SAT includes a `sat:refresh` scope, the SDK + automatically refreshes via Client Bound SAT (DPoP) without developer intervention. +- When not provided and no refresh scope is present, the SDK uses the initial + credentials for the entire session lifetime. + +#### Returns + +`Promise`\<\{ `expiry_at`: `number`; `token`: `string`; \}\> + +#### Implementation of + +[`CredentialProvider`](../interfaces/CredentialProvider.md).[`refresh`](../interfaces/CredentialProvider.md#refresh) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/InvalidCredentialsError.md b/fern/products/browser-sdk/pages/v4/reference/classes/InvalidCredentialsError.md new file mode 100644 index 000000000..d661a611b --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/InvalidCredentialsError.md @@ -0,0 +1,36 @@ +# Class: InvalidCredentialsError + +Defined in: [core/errors.ts:31](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L31) + +## Extends + +- `Error` + +## Constructors + +### Constructor + +> **new InvalidCredentialsError**(`reason?`, `options?`): `InvalidCredentialsError` + +Defined in: [core/errors.ts:32](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L32) + +#### Parameters + +| Parameter | Type | Default value | +| ------ | ------ | ------ | +| `reason` | `string` | `'Invalid Credentials'` | +| `options?` | `ErrorOptions` | `undefined` | + +#### Returns + +`InvalidCredentialsError` + +#### Overrides + +`Error.constructor` + +## Properties + +| Property | Modifier | Type | Default value | Defined in | +| ------ | ------ | ------ | ------ | ------ | +| `reason` | `public` | `string` | `'Invalid Credentials'` | [core/errors.ts:33](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L33) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/MediaTrackError.md b/fern/products/browser-sdk/pages/v4/reference/classes/MediaTrackError.md new file mode 100644 index 000000000..78afc9b4e --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/MediaTrackError.md @@ -0,0 +1,39 @@ +# Class: MediaTrackError + +Defined in: [core/errors.ts:369](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L369) + +## Extends + +- `Error` + +## Constructors + +### Constructor + +> **new MediaTrackError**(`operation`, `kind`, `originalError`): `MediaTrackError` + +Defined in: [core/errors.ts:370](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L370) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `operation` | `string` | +| `kind` | `string` | +| `originalError` | `unknown` | + +#### Returns + +`MediaTrackError` + +#### Overrides + +`Error.constructor` + +## Properties + +| Property | Modifier | Type | Defined in | +| ------ | ------ | ------ | ------ | +| `kind` | `public` | `string` | [core/errors.ts:372](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L372) | +| `operation` | `public` | `string` | [core/errors.ts:371](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L371) | +| `originalError` | `public` | `unknown` | [core/errors.ts:373](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L373) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/MessageParseError.md b/fern/products/browser-sdk/pages/v4/reference/classes/MessageParseError.md new file mode 100644 index 000000000..82a6bd663 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/MessageParseError.md @@ -0,0 +1,35 @@ +# Class: MessageParseError + +Defined in: [core/errors.ts:348](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L348) + +## Extends + +- `Error` + +## Constructors + +### Constructor + +> **new MessageParseError**(`originalError`): `MessageParseError` + +Defined in: [core/errors.ts:349](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L349) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `originalError` | `unknown` | + +#### Returns + +`MessageParseError` + +#### Overrides + +`Error.constructor` + +## Properties + +| Property | Modifier | Type | Defined in | +| ------ | ------ | ------ | ------ | +| `originalError` | `public` | `unknown` | [core/errors.ts:349](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L349) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant.md new file mode 100644 index 000000000..53aeb5856 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant.md @@ -0,0 +1,1587 @@ +# Class: Participant + +Defined in: [core/entities/Participant.ts:45](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L45) + +Represents a participant in a call. + +Provides observable state (audio/video mute, hand raise, volume, etc.) +and control methods for the participant. See [SelfParticipant](SelfParticipant.md) for +the local participant with additional device control. + +## Extends + +- `Destroyable` + +## Extended by + +- [`SelfParticipant`](SelfParticipant.md) + +## Implements + +- [`CallParticipant`](../interfaces/CallParticipant.md) + +## Constructors + +### Constructor + +> **new Participant**(`id`, `executeMethod`, `deviceController`): `Participant` + +Defined in: [core/entities/Participant.ts:49](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L49) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `id` | `string` | +| `executeMethod` | [`ExecuteMethod`](../type-aliases/ExecuteMethod.md) | +| `deviceController` | [`DeviceController`](../interfaces/DeviceController.md) | + +#### Returns + +`Participant` + +#### Overrides + +`Destroyable.constructor` + +## Properties + +| Property | Modifier | Type | Default value | Description | Inherited from | Defined in | +| ------ | ------ | ------ | ------ | ------ | ------ | ------ | +| `_destroyed$` | `protected` | `Subject`\<`void`\> | `undefined` | - | `Destroyable._destroyed$` | [behaviors/Destroyable.ts:17](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L17) | +| `deviceController` | `protected` | [`DeviceController`](../interfaces/DeviceController.md) | `undefined` | - | - | [core/entities/Participant.ts:52](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L52) | +| `executeMethod` | `protected` | [`ExecuteMethod`](../type-aliases/ExecuteMethod.md) | `undefined` | - | - | [core/entities/Participant.ts:51](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L51) | +| `id` | `readonly` | `string` | `undefined` | Unique member ID of this participant. | - | [core/entities/Participant.ts:47](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L47) | +| `subjects` | `protected` | `Subject`\<`unknown`\>[] | `[]` | - | `Destroyable.subjects` | [behaviors/Destroyable.ts:16](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L16) | +| `subscriptions` | `protected` | `Subscription`[] | `[]` | - | `Destroyable.subscriptions` | [behaviors/Destroyable.ts:15](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L15) | + +## Accessors + +### $ + +#### Get Signature + +> **get** **$**(): `Observable`\<`this`\> + +Defined in: [behaviors/Destroyable.ts:100](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L100) + +##### Returns + +`Observable`\<`this`\> + +#### Inherited from + +`Destroyable.$` + +*** + +### addressId + +#### Get Signature + +> **get** **addressId**(): `string` \| `undefined` + +Defined in: [core/entities/Participant.ts:394](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L394) + +Address ID of this participant, or `undefined` if not available. + +##### Returns + +`string` \| `undefined` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`addressId`](../interfaces/CallParticipant.md#addressid) + +*** + +### addressId$ + +#### Get Signature + +> **get** **addressId$**(): `Observable`\<`string`\> + +Defined in: [core/entities/Participant.ts:250](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L250) + +Observable of the participant's address ID. + +##### Returns + +`Observable`\<`string`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`addressId$`](../interfaces/CallParticipant.md#addressid-1) + +*** + +### audioMuted + +#### Get Signature + +> **get** **audioMuted**(): `boolean` + +Defined in: [core/entities/Participant.ts:329](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L329) + +Whether the participant's audio is muted. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`audioMuted`](../interfaces/CallParticipant.md#audiomuted) + +*** + +### audioMuted$ + +#### Get Signature + +> **get** **audioMuted$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:107](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L107) + +Observable indicating whether the participant's audio is muted. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`audioMuted$`](../interfaces/CallParticipant.md#audiomuted-1) + +*** + +### autoGain + +#### Get Signature + +> **get** **autoGain**(): `boolean` + +Defined in: [core/entities/Participant.ts:364](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L364) + +Whether automatic gain control is enabled. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`autoGain`](../interfaces/CallParticipant.md#autogain) + +*** + +### autoGain$ + +#### Get Signature + +> **get** **autoGain$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:184](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L184) + +Observable indicating whether auto-gain control is enabled. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`autoGain$`](../interfaces/CallParticipant.md#autogain-1) + +*** + +### deaf + +#### Get Signature + +> **get** **deaf**(): `boolean` + +Defined in: [core/entities/Participant.ts:339](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L339) + +Whether the participant is deafened (incoming audio muted). + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`deaf`](../interfaces/CallParticipant.md#deaf) + +*** + +### deaf$ + +#### Get Signature + +> **get** **deaf$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:129](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L129) + +Observable indicating whether the participant is deafened. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`deaf$`](../interfaces/CallParticipant.md#deaf-1) + +*** + +### denoise + +#### Get Signature + +> **get** **denoise**(): `boolean` + +Defined in: [core/entities/Participant.ts:379](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L379) + +Whether noise reduction (denoise) is active. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`denoise`](../interfaces/CallParticipant.md#denoise) + +*** + +### denoise$ + +#### Get Signature + +> **get** **denoise$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:217](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L217) + +Observable indicating whether noise reduction is active. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`denoise$`](../interfaces/CallParticipant.md#denoise-1) + +*** + +### destroyed$ + +#### Get Signature + +> **get** **destroyed$**(): `Observable`\<`void`\> + +Defined in: [behaviors/Destroyable.ts:112](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L112) + +Observable that emits when the instance is destroyed + +##### Returns + +`Observable`\<`void`\> + +#### Inherited from + +`Destroyable.destroyed$` + +*** + +### echoCancellation + +#### Get Signature + +> **get** **echoCancellation**(): `boolean` + +Defined in: [core/entities/Participant.ts:359](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L359) + +Whether echo cancellation is enabled. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`echoCancellation`](../interfaces/CallParticipant.md#echocancellation) + +*** + +### echoCancellation$ + +#### Get Signature + +> **get** **echoCancellation$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:173](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L173) + +Observable indicating whether echo cancellation is enabled. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`echoCancellation$`](../interfaces/CallParticipant.md#echocancellation-1) + +*** + +### handraised + +#### Get Signature + +> **get** **handraised**(): `boolean` + +Defined in: [core/entities/Participant.ts:319](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L319) + +Whether the participant has raised their hand. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`handraised`](../interfaces/CallParticipant.md#handraised) + +*** + +### handraised$ + +#### Get Signature + +> **get** **handraised$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:85](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L85) + +Observable indicating whether the participant has raised their hand. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`handraised$`](../interfaces/CallParticipant.md#handraised-1) + +*** + +### inputSensitivity + +#### Get Signature + +> **get** **inputSensitivity**(): `number` \| `undefined` + +Defined in: [core/entities/Participant.ts:354](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L354) + +Current microphone input sensitivity level, or `undefined` if not set. + +##### Returns + +`number` \| `undefined` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`inputSensitivity`](../interfaces/CallParticipant.md#inputsensitivity) + +*** + +### inputSensitivity$ + +#### Get Signature + +> **get** **inputSensitivity$**(): `Observable`\<`number`\> + +Defined in: [core/entities/Participant.ts:162](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L162) + +Observable of the microphone input sensitivity level. + +##### Returns + +`Observable`\<`number`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`inputSensitivity$`](../interfaces/CallParticipant.md#inputsensitivity-1) + +*** + +### inputVolume + +#### Get Signature + +> **get** **inputVolume**(): `number` \| `undefined` + +Defined in: [core/entities/Participant.ts:344](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L344) + +Current microphone input volume level, or `undefined` if not set. + +##### Returns + +`number` \| `undefined` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`inputVolume`](../interfaces/CallParticipant.md#inputvolume) + +*** + +### inputVolume$ + +#### Get Signature + +> **get** **inputVolume$**(): `Observable`\<`number`\> + +Defined in: [core/entities/Participant.ts:140](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L140) + +Observable of the participant's microphone input volume. + +##### Returns + +`Observable`\<`number`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`inputVolume$`](../interfaces/CallParticipant.md#inputvolume-1) + +*** + +### isAudience + +#### Get Signature + +> **get** **isAudience**(): `boolean` + +Defined in: [core/entities/Participant.ts:304](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L304) + +Whether the participant is an audience member (view-only). + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`isAudience`](../interfaces/CallParticipant.md#isaudience) + +*** + +### isTalking + +#### Get Signature + +> **get** **isTalking**(): `boolean` + +Defined in: [core/entities/Participant.ts:283](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L283) + +Whether the participant is currently speaking. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`isTalking`](../interfaces/CallParticipant.md#istalking) + +*** + +### isTalking$ + +#### Get Signature + +> **get** **isTalking$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:272](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L272) + +Observable indicating whether the participant is currently speaking. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`isTalking$`](../interfaces/CallParticipant.md#istalking-1) + +*** + +### lowbitrate + +#### Get Signature + +> **get** **lowbitrate**(): `boolean` + +Defined in: [core/entities/Participant.ts:374](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L374) + +Whether low-bitrate mode is active. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`lowbitrate`](../interfaces/CallParticipant.md#lowbitrate) + +*** + +### lowbitrate$ + +#### Get Signature + +> **get** **lowbitrate$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:206](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L206) + +Observable indicating whether low-bitrate mode is active. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`lowbitrate$`](../interfaces/CallParticipant.md#lowbitrate-1) + +*** + +### meta + +#### Get Signature + +> **get** **meta**(): `Record`\<`string`, `unknown`\> \| `undefined` + +Defined in: [core/entities/Participant.ts:384](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L384) + +Custom metadata for this participant, or `undefined` if not set. + +##### Returns + +`Record`\<`string`, `unknown`\> \| `undefined` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`meta`](../interfaces/CallParticipant.md#meta) + +*** + +### meta$ + +#### Get Signature + +> **get** **meta$**(): `Observable`\<`Record`\<`string`, `unknown`\>\> + +Defined in: [core/entities/Participant.ts:228](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L228) + +Observable of custom metadata for this participant. + +##### Returns + +`Observable`\<`Record`\<`string`, `unknown`\>\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`meta$`](../interfaces/CallParticipant.md#meta-1) + +*** + +### name + +#### Get Signature + +> **get** **name**(): `string` \| `undefined` + +Defined in: [core/entities/Participant.ts:309](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L309) + +Display name of this participant. + +##### Returns + +`string` \| `undefined` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`name`](../interfaces/CallParticipant.md#name) + +*** + +### name$ + +#### Get Signature + +> **get** **name$**(): `Observable`\<`string`\> + +Defined in: [core/entities/Participant.ts:63](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L63) + +Observable of the participant's display name. + +##### Returns + +`Observable`\<`string`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`name$`](../interfaces/CallParticipant.md#name-1) + +*** + +### nodeId + +#### Get Signature + +> **get** **nodeId**(): `string` \| `undefined` + +Defined in: [core/entities/Participant.ts:399](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L399) + +Server node ID for this participant, or `undefined` if not available. + +##### Returns + +`string` \| `undefined` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`nodeId`](../interfaces/CallParticipant.md#nodeid) + +*** + +### nodeId$ + +#### Get Signature + +> **get** **nodeId$**(): `Observable`\<`string`\> + +Defined in: [core/entities/Participant.ts:261](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L261) + +Observable of the server node ID for this participant. + +##### Returns + +`Observable`\<`string`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`nodeId$`](../interfaces/CallParticipant.md#nodeid-1) + +*** + +### noiseSuppression + +#### Get Signature + +> **get** **noiseSuppression**(): `boolean` + +Defined in: [core/entities/Participant.ts:369](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L369) + +Whether noise suppression is enabled. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`noiseSuppression`](../interfaces/CallParticipant.md#noisesuppression) + +*** + +### noiseSuppression$ + +#### Get Signature + +> **get** **noiseSuppression$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:195](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L195) + +Observable indicating whether noise suppression is enabled. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`noiseSuppression$`](../interfaces/CallParticipant.md#noisesuppression-1) + +*** + +### outputVolume + +#### Get Signature + +> **get** **outputVolume**(): `number` \| `undefined` + +Defined in: [core/entities/Participant.ts:349](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L349) + +Current speaker output volume level, or `undefined` if not set. + +##### Returns + +`number` \| `undefined` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`outputVolume`](../interfaces/CallParticipant.md#outputvolume) + +*** + +### outputVolume$ + +#### Get Signature + +> **get** **outputVolume$**(): `Observable`\<`number`\> + +Defined in: [core/entities/Participant.ts:151](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L151) + +Observable of the participant's speaker output volume. + +##### Returns + +`Observable`\<`number`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`outputVolume$`](../interfaces/CallParticipant.md#outputvolume-1) + +*** + +### position + +#### Get Signature + +> **get** **position**(): [`LayoutLayer`](../interfaces/LayoutLayer.md) \| `undefined` + +Defined in: [core/entities/Participant.ts:299](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L299) + +Current layout position. + +##### Returns + +[`LayoutLayer`](../interfaces/LayoutLayer.md) \| `undefined` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`position`](../interfaces/CallParticipant.md#position) + +*** + +### position$ + +#### Get Signature + +> **get** **position$**(): `Observable`\<[`LayoutLayer`](../interfaces/LayoutLayer.md) \| `undefined`\> + +Defined in: [core/entities/Participant.ts:288](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L288) + +Observable of the participant's layout position. + +##### Returns + +`Observable`\<[`LayoutLayer`](../interfaces/LayoutLayer.md) \| `undefined`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`position$`](../interfaces/CallParticipant.md#position-1) + +*** + +### subscriberId + +#### Get Signature + +> **get** **subscriberId**(): `string` \| `undefined` + +Defined in: [core/entities/Participant.ts:389](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L389) + +Subscriber ID of this participant, or `undefined` if not available. + +##### Returns + +`string` \| `undefined` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`subscriberId`](../interfaces/CallParticipant.md#subscriberid) + +*** + +### subscriberId$ + +#### Get Signature + +> **get** **subscriberId$**(): `Observable`\<`string`\> + +Defined in: [core/entities/Participant.ts:239](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L239) + +Observable of the participant's subscriber ID. + +##### Returns + +`Observable`\<`string`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`subscriberId$`](../interfaces/CallParticipant.md#subscriberid-1) + +*** + +### type + +#### Get Signature + +> **get** **type**(): `string` \| `undefined` + +Defined in: [core/entities/Participant.ts:314](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L314) + +Participant type (e.g. `'member'`, `'screen'`). + +##### Returns + +`string` \| `undefined` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`type`](../interfaces/CallParticipant.md#type) + +*** + +### type$ + +#### Get Signature + +> **get** **type$**(): `Observable`\<`string`\> + +Defined in: [core/entities/Participant.ts:74](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L74) + +Observable of the participant type (e.g. `'member'`, `'screen'`). + +##### Returns + +`Observable`\<`string`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`type$`](../interfaces/CallParticipant.md#type-1) + +*** + +### videoMuted + +#### Get Signature + +> **get** **videoMuted**(): `boolean` + +Defined in: [core/entities/Participant.ts:334](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L334) + +Whether the participant's video is muted. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`videoMuted`](../interfaces/CallParticipant.md#videomuted) + +*** + +### videoMuted$ + +#### Get Signature + +> **get** **videoMuted$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:118](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L118) + +Observable indicating whether the participant's video is muted. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`videoMuted$`](../interfaces/CallParticipant.md#videomuted-1) + +*** + +### visible + +#### Get Signature + +> **get** **visible**(): `boolean` + +Defined in: [core/entities/Participant.ts:324](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L324) + +Whether the participant is visible in the layout. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`visible`](../interfaces/CallParticipant.md#visible) + +*** + +### visible$ + +#### Get Signature + +> **get** **visible$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:96](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L96) + +Observable indicating whether the participant is visible in the layout. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`visible$`](../interfaces/CallParticipant.md#visible-1) + +## Methods + +### cachedObservable() + +> `protected` **cachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:28](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L28) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `factory` | () => `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.cachedObservable` + +*** + +### createBehaviorSubject() + +> `protected` **createBehaviorSubject**\<`T`\>(`initialValue`): `BehaviorSubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:94](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L94) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `initialValue` | `T` | + +#### Returns + +`BehaviorSubject`\<`T`\> + +#### Inherited from + +`Destroyable.createBehaviorSubject` + +*** + +### createReplaySubject() + +> `protected` **createReplaySubject**\<`T`\>(`bufferSize?`, `windowTime?`): `ReplaySubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:88](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L88) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `bufferSize?` | `number` | +| `windowTime?` | `number` | + +#### Returns + +`ReplaySubject`\<`T`\> + +#### Inherited from + +`Destroyable.createReplaySubject` + +*** + +### createSubject() + +> `protected` **createSubject**\<`T`\>(): `Subject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:82](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L82) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Returns + +`Subject`\<`T`\> + +#### Inherited from + +`Destroyable.createSubject` + +*** + +### deferEmission() + +> `protected` **deferEmission**\<`T`\>(`observable`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:70](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L70) + +Wraps an observable so emissions are deferred to the microtask queue. + +Use ONLY for public-facing getters that expose a subject via +`.asObservable()` without going through `cachedObservable`. + +Do NOT use for observables consumed internally by the SDK. + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `observable` | `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.deferEmission` + +*** + +### destroy() + +> **destroy**(): `void` + +Defined in: [core/entities/Participant.ts:558](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L558) + +Destroys the participant, releasing all subscriptions and references. + +#### Returns + +`void` + +#### Overrides + +`Destroyable.destroy` + +*** + +### end() + +> **end**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:532](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L532) + +Ends the call for this participant. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`end`](../interfaces/CallParticipant.md#end) + +*** + +### mute() + +> **mute**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:421](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L421) + +Mutes the participant's audio. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`mute`](../interfaces/CallParticipant.md#mute) + +*** + +### muteVideo() + +> **muteVideo**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:436](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L436) + +Mutes the participant's video. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`muteVideo`](../interfaces/CallParticipant.md#mutevideo) + +*** + +### publicCachedObservable() + +> `protected` **publicCachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:51](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L51) + +Like `cachedObservable`, but defers emissions to the microtask queue +via `observeOn(asapScheduler)`. + +Use ONLY for public-facing observable getters that external consumers +subscribe to. Prevents a class of bugs where `BehaviorSubject` or +`ReplaySubject` replays synchronously during `subscribe()`, before +the subscription variable is assigned in the caller's scope. + +Do NOT use for observables consumed internally by the SDK — internal +code using `subscribeTo()`, `firstValueFrom()`, or `withLatestFrom()` +depends on synchronous emission delivery. + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `factory` | () => `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.publicCachedObservable` + +*** + +### remove() + +> **remove**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:521](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L521) + +Removes this participant from the call. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`remove`](../interfaces/CallParticipant.md#remove) + +*** + +### setAudioInputSensitivity() + +> **setAudioInputSensitivity**(`value`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:484](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L484) + +Sets the microphone input sensitivity level. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`setAudioInputSensitivity`](../interfaces/CallParticipant.md#setaudioinputsensitivity) + +*** + +### setAudioInputVolume() + +> **setAudioInputVolume**(`value`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:494](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L494) + +Sets the microphone input volume level. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `value` | `number` | Volume level (0-100). | + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`setAudioInputVolume`](../interfaces/CallParticipant.md#setaudioinputvolume) + +*** + +### setAudioOutputVolume() + +> **setAudioOutputVolume**(`value`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:504](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L504) + +Sets the speaker output volume level. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `value` | `number` | Volume level (0-100). | + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`setAudioOutputVolume`](../interfaces/CallParticipant.md#setaudiooutputvolume) + +*** + +### setMeta() + +> **setMeta**(`_meta`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:542](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L542) + +Replaces custom metadata for this participant. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `_meta` | `Record`\<`string`, `unknown`\> | Metadata object to set. | + +#### Returns + +`Promise`\<`void`\> + +#### Throws + +Not yet implemented. + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`setMeta`](../interfaces/CallParticipant.md#setmeta) + +*** + +### setPosition() + +> **setPosition**(`value`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:514](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L514) + +Sets the participant's position in the video layout. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `value` | [`VideoPosition`](../type-aliases/VideoPosition.md) | The [VideoPosition](../type-aliases/VideoPosition.md) to assign (e.g. `'auto'`, `'reserved-0'`). | + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`setPosition`](../interfaces/CallParticipant.md#setposition) + +*** + +### subscribeTo() + +> `protected` **subscribeTo**\<`T`\>(`observable`, `observerOrNext`): `void` + +Defined in: [behaviors/Destroyable.ts:74](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L74) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `observable` | `Observable`\<`T`\> | +| `observerOrNext` | `Partial`\<`Observer`\<`T`\>\> \| ((`value`) => `void`) \| `undefined` | + +#### Returns + +`void` + +#### Inherited from + +`Destroyable.subscribeTo` + +*** + +### toggleAudioInputAutoGain() + +> **toggleAudioInputAutoGain**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:460](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L460) + +Toggles automatic gain control on the audio input. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`toggleAudioInputAutoGain`](../interfaces/CallParticipant.md#toggleaudioinputautogain) + +*** + +### toggleDeaf() + +> **toggleDeaf**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:409](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L409) + +Toggles the deafened state (mutes/unmutes incoming audio). + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`toggleDeaf`](../interfaces/CallParticipant.md#toggledeaf) + +*** + +### toggleEchoCancellation() + +> **toggleEchoCancellation**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:451](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L451) + +Toggles echo cancellation on the audio input. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`toggleEchoCancellation`](../interfaces/CallParticipant.md#toggleechocancellation) + +*** + +### toggleHandraise() + +> **toggleHandraise**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:416](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L416) + +Toggles the hand-raised state. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`toggleHandraise`](../interfaces/CallParticipant.md#togglehandraise) + +*** + +### toggleLowbitrate() + +> **toggleLowbitrate**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:478](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L478) + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`toggleLowbitrate`](../interfaces/CallParticipant.md#togglelowbitrate) + +*** + +### toggleMute() + +> **toggleMute**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:431](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L431) + +Toggles the participant's audio mute state. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`toggleMute`](../interfaces/CallParticipant.md#togglemute) + +*** + +### toggleMuteVideo() + +> **toggleMuteVideo**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:446](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L446) + +Toggles the participant's video mute state. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`toggleMuteVideo`](../interfaces/CallParticipant.md#togglemutevideo) + +*** + +### toggleNoiseSuppression() + +> **toggleNoiseSuppression**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:469](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L469) + +Toggles noise suppression on the audio input. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`toggleNoiseSuppression`](../interfaces/CallParticipant.md#togglenoisesuppression) + +*** + +### unmute() + +> **unmute**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:426](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L426) + +Unmutes the participant's audio. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`unmute`](../interfaces/CallParticipant.md#unmute) + +*** + +### unmuteVideo() + +> **unmuteVideo**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:441](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L441) + +Unmutes the participant's video. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`unmuteVideo`](../interfaces/CallParticipant.md#unmutevideo) + +*** + +### updateMeta() + +> **updateMeta**(`_meta`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:552](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L552) + +Merges values into custom metadata (unlike [setMeta](#setmeta) which replaces). + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `_meta` | `Record`\<`string`, `unknown`\> | Metadata to merge. | + +#### Returns + +`Promise`\<`void`\> + +#### Throws + +Not yet implemented. + +#### Implementation of + +[`CallParticipant`](../interfaces/CallParticipant.md).[`updateMeta`](../interfaces/CallParticipant.md#updatemeta) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities.md b/fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities.md new file mode 100644 index 000000000..a20a8ed33 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities.md @@ -0,0 +1,632 @@ +# Class: SelfCapabilities + +Defined in: [core/capabilities/SelfCapabilities.ts:27](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L27) + +SelfCapabilities manages the capability state for the self participant. + +Capabilities are received from the server via `call.joined` events and determine +what actions the current participant is allowed to perform. + +Each capability is exposed as both: +- An observable (e.g., `end$`) for reactive state management +- A synchronous getter (e.g., `end`) for immediate access + +Member-level capabilities are accessed via the grouped `self` / `member` accessors: +- `capabilities.self.muteAudio` (sync) +- `capabilities.self$` (observable) + +When a new `call.joined` event is received, the capabilities state is +completely replaced (not merged). + +## Extends + +- `Destroyable` + +## Constructors + +### Constructor + +> **new SelfCapabilities**(): `SelfCapabilities` + +#### Returns + +`SelfCapabilities` + +#### Inherited from + +`Destroyable.constructor` + +## Properties + +| Property | Modifier | Type | Default value | Inherited from | Defined in | +| ------ | ------ | ------ | ------ | ------ | ------ | +| `_destroyed$` | `protected` | `Subject`\<`void`\> | `undefined` | `Destroyable._destroyed$` | [behaviors/Destroyable.ts:17](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L17) | +| `subjects` | `protected` | `Subject`\<`unknown`\>[] | `[]` | `Destroyable.subjects` | [behaviors/Destroyable.ts:16](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L16) | +| `subscriptions` | `protected` | `Subscription`[] | `[]` | `Destroyable.subscriptions` | [behaviors/Destroyable.ts:15](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L15) | + +## Accessors + +### $ + +#### Get Signature + +> **get** **$**(): `Observable`\<`this`\> + +Defined in: [behaviors/Destroyable.ts:100](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L100) + +##### Returns + +`Observable`\<`this`\> + +#### Inherited from + +`Destroyable.$` + +*** + +### destroyed$ + +#### Get Signature + +> **get** **destroyed$**(): `Observable`\<`void`\> + +Defined in: [behaviors/Destroyable.ts:112](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L112) + +Observable that emits when the instance is destroyed + +##### Returns + +`Observable`\<`void`\> + +#### Inherited from + +`Destroyable.destroyed$` + +*** + +### device + +#### Get Signature + +> **get** **device**(): `boolean` + +Defined in: [core/capabilities/SelfCapabilities.ts:170](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L170) + +Current device capability + +##### Returns + +`boolean` + +*** + +### device$ + +#### Get Signature + +> **get** **device$**(): `Observable`\<`boolean`\> + +Defined in: [core/capabilities/SelfCapabilities.ts:160](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L160) + +Observable for device capability + +##### Returns + +`Observable`\<`boolean`\> + +*** + +### end + +#### Get Signature + +> **get** **end**(): `boolean` + +Defined in: [core/capabilities/SelfCapabilities.ts:95](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L95) + +Current end call capability + +##### Returns + +`boolean` + +*** + +### end$ + +#### Get Signature + +> **get** **end$**(): `Observable`\<`boolean`\> + +Defined in: [core/capabilities/SelfCapabilities.ts:85](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L85) + +Observable for end call capability + +##### Returns + +`Observable`\<`boolean`\> + +*** + +### lock + +#### Get Signature + +> **get** **lock**(): [`OnOffCapability`](../interfaces/OnOffCapability.md) + +Defined in: [core/capabilities/SelfCapabilities.ts:155](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L155) + +Current lock capability + +##### Returns + +[`OnOffCapability`](../interfaces/OnOffCapability.md) + +*** + +### lock$ + +#### Get Signature + +> **get** **lock$**(): `Observable`\<[`OnOffCapability`](../interfaces/OnOffCapability.md)\> + +Defined in: [core/capabilities/SelfCapabilities.ts:145](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L145) + +Observable for lock capability + +##### Returns + +`Observable`\<[`OnOffCapability`](../interfaces/OnOffCapability.md)\> + +*** + +### member + +#### Get Signature + +> **get** **member**(): [`MemberCapabilities`](../interfaces/MemberCapabilities.md) + +Defined in: [core/capabilities/SelfCapabilities.ts:76](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L76) + +Current other member capabilities + +##### Returns + +[`MemberCapabilities`](../interfaces/MemberCapabilities.md) + +*** + +### member$ + +#### Get Signature + +> **get** **member$**(): `Observable`\<[`MemberCapabilities`](../interfaces/MemberCapabilities.md)\> + +Defined in: [core/capabilities/SelfCapabilities.ts:66](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L66) + +Observable for other member capabilities + +##### Returns + +`Observable`\<[`MemberCapabilities`](../interfaces/MemberCapabilities.md)\> + +*** + +### screenshare + +#### Get Signature + +> **get** **screenshare**(): `boolean` + +Defined in: [core/capabilities/SelfCapabilities.ts:185](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L185) + +Current screenshare capability + +##### Returns + +`boolean` + +*** + +### screenshare$ + +#### Get Signature + +> **get** **screenshare$**(): `Observable`\<`boolean`\> + +Defined in: [core/capabilities/SelfCapabilities.ts:175](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L175) + +Observable for screenshare capability + +##### Returns + +`Observable`\<`boolean`\> + +*** + +### self + +#### Get Signature + +> **get** **self**(): [`MemberCapabilities`](../interfaces/MemberCapabilities.md) + +Defined in: [core/capabilities/SelfCapabilities.ts:57](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L57) + +Current self member capabilities + +##### Returns + +[`MemberCapabilities`](../interfaces/MemberCapabilities.md) + +*** + +### self$ + +#### Get Signature + +> **get** **self$**(): `Observable`\<[`MemberCapabilities`](../interfaces/MemberCapabilities.md)\> + +Defined in: [core/capabilities/SelfCapabilities.ts:47](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L47) + +Observable for self member capabilities + +##### Returns + +`Observable`\<[`MemberCapabilities`](../interfaces/MemberCapabilities.md)\> + +*** + +### sendDigit + +#### Get Signature + +> **get** **sendDigit**(): `boolean` + +Defined in: [core/capabilities/SelfCapabilities.ts:125](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L125) + +Current send digit capability + +##### Returns + +`boolean` + +*** + +### sendDigit$ + +#### Get Signature + +> **get** **sendDigit$**(): `Observable`\<`boolean`\> + +Defined in: [core/capabilities/SelfCapabilities.ts:115](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L115) + +Observable for send digit capability + +##### Returns + +`Observable`\<`boolean`\> + +*** + +### setLayout + +#### Get Signature + +> **get** **setLayout**(): `boolean` + +Defined in: [core/capabilities/SelfCapabilities.ts:110](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L110) + +Current set layout capability + +##### Returns + +`boolean` + +*** + +### setLayout$ + +#### Get Signature + +> **get** **setLayout$**(): `Observable`\<`boolean`\> + +Defined in: [core/capabilities/SelfCapabilities.ts:100](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L100) + +Observable for set layout capability + +##### Returns + +`Observable`\<`boolean`\> + +*** + +### state + +#### Get Signature + +> **get** **state**(): [`CallCapabilitiesState`](../interfaces/CallCapabilitiesState.md) + +Defined in: [core/capabilities/SelfCapabilities.ts:199](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L199) + +Current full capabilities state + +##### Returns + +[`CallCapabilitiesState`](../interfaces/CallCapabilitiesState.md) + +*** + +### state$ + +#### Get Signature + +> **get** **state$**(): `Observable`\<[`CallCapabilitiesState`](../interfaces/CallCapabilitiesState.md)\> + +Defined in: [core/capabilities/SelfCapabilities.ts:194](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L194) + +Observable for the full capabilities state + +##### Returns + +`Observable`\<[`CallCapabilitiesState`](../interfaces/CallCapabilitiesState.md)\> + +*** + +### vmutedHide + +#### Get Signature + +> **get** **vmutedHide**(): [`OnOffCapability`](../interfaces/OnOffCapability.md) + +Defined in: [core/capabilities/SelfCapabilities.ts:140](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L140) + +Current vmuted hide capability + +##### Returns + +[`OnOffCapability`](../interfaces/OnOffCapability.md) + +*** + +### vmutedHide$ + +#### Get Signature + +> **get** **vmutedHide$**(): `Observable`\<[`OnOffCapability`](../interfaces/OnOffCapability.md)\> + +Defined in: [core/capabilities/SelfCapabilities.ts:130](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/SelfCapabilities.ts#L130) + +Observable for vmuted hide capability + +##### Returns + +`Observable`\<[`OnOffCapability`](../interfaces/OnOffCapability.md)\> + +## Methods + +### cachedObservable() + +> `protected` **cachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:28](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L28) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `factory` | () => `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.cachedObservable` + +*** + +### createBehaviorSubject() + +> `protected` **createBehaviorSubject**\<`T`\>(`initialValue`): `BehaviorSubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:94](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L94) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `initialValue` | `T` | + +#### Returns + +`BehaviorSubject`\<`T`\> + +#### Inherited from + +`Destroyable.createBehaviorSubject` + +*** + +### createReplaySubject() + +> `protected` **createReplaySubject**\<`T`\>(`bufferSize?`, `windowTime?`): `ReplaySubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:88](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L88) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `bufferSize?` | `number` | +| `windowTime?` | `number` | + +#### Returns + +`ReplaySubject`\<`T`\> + +#### Inherited from + +`Destroyable.createReplaySubject` + +*** + +### createSubject() + +> `protected` **createSubject**\<`T`\>(): `Subject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:82](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L82) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Returns + +`Subject`\<`T`\> + +#### Inherited from + +`Destroyable.createSubject` + +*** + +### deferEmission() + +> `protected` **deferEmission**\<`T`\>(`observable`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:70](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L70) + +Wraps an observable so emissions are deferred to the microtask queue. + +Use ONLY for public-facing getters that expose a subject via +`.asObservable()` without going through `cachedObservable`. + +Do NOT use for observables consumed internally by the SDK. + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `observable` | `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.deferEmission` + +*** + +### destroy() + +> **destroy**(): `void` + +Defined in: [behaviors/Destroyable.ts:20](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L20) + +#### Returns + +`void` + +#### Inherited from + +`Destroyable.destroy` + +*** + +### publicCachedObservable() + +> `protected` **publicCachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:51](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L51) + +Like `cachedObservable`, but defers emissions to the microtask queue +via `observeOn(asapScheduler)`. + +Use ONLY for public-facing observable getters that external consumers +subscribe to. Prevents a class of bugs where `BehaviorSubject` or +`ReplaySubject` replays synchronously during `subscribe()`, before +the subscription variable is assigned in the caller's scope. + +Do NOT use for observables consumed internally by the SDK — internal +code using `subscribeTo()`, `firstValueFrom()`, or `withLatestFrom()` +depends on synchronous emission delivery. + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `factory` | () => `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.publicCachedObservable` + +*** + +### subscribeTo() + +> `protected` **subscribeTo**\<`T`\>(`observable`, `observerOrNext`): `void` + +Defined in: [behaviors/Destroyable.ts:74](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L74) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `observable` | `Observable`\<`T`\> | +| `observerOrNext` | `Partial`\<`Observer`\<`T`\>\> \| ((`value`) => `void`) \| `undefined` | + +#### Returns + +`void` + +#### Inherited from + +`Destroyable.subscribeTo` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant.md b/fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant.md new file mode 100644 index 000000000..712ce533b --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant.md @@ -0,0 +1,2128 @@ +# Class: SelfParticipant + +Defined in: [core/entities/Participant.ts:572](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L572) + +The local participant in a call, with additional device and media control. + +Extends [Participant](Participant.md) with screen sharing, device selection, +and local media stream management. + +## Extends + +- [`Participant`](Participant.md) + +## Implements + +- [`CallSelfParticipant`](../interfaces/CallSelfParticipant.md) + +## Properties + +| Property | Modifier | Type | Default value | Description | Inherited from | Defined in | +| ------ | ------ | ------ | ------ | ------ | ------ | ------ | +| `_destroyed$` | `protected` | `Subject`\<`void`\> | `undefined` | - | [`Participant`](Participant.md).[`_destroyed$`](Participant.md#_destroyed) | [behaviors/Destroyable.ts:17](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L17) | +| `capabilities` | `readonly` | [`SelfCapabilities`](SelfCapabilities.md) | `undefined` | Capabilities for this participant. Contains all capability flags as both observables and values. | - | [core/entities/Participant.ts:577](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L577) | +| `deviceController` | `protected` | [`DeviceController`](../interfaces/DeviceController.md) | `undefined` | - | [`Participant`](Participant.md).[`deviceController`](Participant.md#devicecontroller) | [core/entities/Participant.ts:52](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L52) | +| `executeMethod` | `protected` | [`ExecuteMethod`](../type-aliases/ExecuteMethod.md) | `undefined` | - | [`Participant`](Participant.md).[`executeMethod`](Participant.md#executemethod) | [core/entities/Participant.ts:51](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L51) | +| `id` | `readonly` | `string` | `undefined` | Unique member ID of this participant. | [`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`id`](../interfaces/CallSelfParticipant.md#id) [`Participant`](Participant.md).[`id`](Participant.md#id) | [core/entities/Participant.ts:47](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L47) | +| `subjects` | `protected` | `Subject`\<`unknown`\>[] | `[]` | - | [`Participant`](Participant.md).[`subjects`](Participant.md#subjects) | [behaviors/Destroyable.ts:16](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L16) | +| `subscriptions` | `protected` | `Subscription`[] | `[]` | - | [`Participant`](Participant.md).[`subscriptions`](Participant.md#subscriptions) | [behaviors/Destroyable.ts:15](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L15) | + +## Accessors + +### $ + +#### Get Signature + +> **get** **$**(): `Observable`\<`this`\> + +Defined in: [behaviors/Destroyable.ts:100](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L100) + +##### Returns + +`Observable`\<`this`\> + +#### Inherited from + +[`Participant`](Participant.md).[`$`](Participant.md#_) + +*** + +### addressId + +#### Get Signature + +> **get** **addressId**(): `string` \| `undefined` + +Defined in: [core/entities/Participant.ts:394](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L394) + +Address ID of this participant, or `undefined` if not available. + +##### Returns + +`string` \| `undefined` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`addressId`](../interfaces/CallSelfParticipant.md#addressid) + +#### Inherited from + +[`Participant`](Participant.md).[`addressId`](Participant.md#addressid) + +*** + +### addressId$ + +#### Get Signature + +> **get** **addressId$**(): `Observable`\<`string`\> + +Defined in: [core/entities/Participant.ts:250](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L250) + +Observable of the participant's address ID. + +##### Returns + +`Observable`\<`string`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`addressId$`](../interfaces/CallSelfParticipant.md#addressid-1) + +#### Inherited from + +[`Participant`](Participant.md).[`addressId$`](Participant.md#addressid-1) + +*** + +### audioMuted + +#### Get Signature + +> **get** **audioMuted**(): `boolean` + +Defined in: [core/entities/Participant.ts:329](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L329) + +Whether the participant's audio is muted. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`audioMuted`](../interfaces/CallSelfParticipant.md#audiomuted) + +#### Inherited from + +[`Participant`](Participant.md).[`audioMuted`](Participant.md#audiomuted) + +*** + +### audioMuted$ + +#### Get Signature + +> **get** **audioMuted$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:107](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L107) + +Observable indicating whether the participant's audio is muted. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`audioMuted$`](../interfaces/CallSelfParticipant.md#audiomuted-1) + +#### Inherited from + +[`Participant`](Participant.md).[`audioMuted$`](Participant.md#audiomuted-1) + +*** + +### autoGain + +#### Get Signature + +> **get** **autoGain**(): `boolean` + +Defined in: [core/entities/Participant.ts:364](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L364) + +Whether automatic gain control is enabled. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`autoGain`](../interfaces/CallSelfParticipant.md#autogain) + +#### Inherited from + +[`Participant`](Participant.md).[`autoGain`](Participant.md#autogain) + +*** + +### autoGain$ + +#### Get Signature + +> **get** **autoGain$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:184](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L184) + +Observable indicating whether auto-gain control is enabled. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`autoGain$`](../interfaces/CallSelfParticipant.md#autogain-1) + +#### Inherited from + +[`Participant`](Participant.md).[`autoGain$`](Participant.md#autogain-1) + +*** + +### deaf + +#### Get Signature + +> **get** **deaf**(): `boolean` + +Defined in: [core/entities/Participant.ts:339](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L339) + +Whether the participant is deafened (incoming audio muted). + +##### Returns + +`boolean` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`deaf`](../interfaces/CallSelfParticipant.md#deaf) + +#### Inherited from + +[`Participant`](Participant.md).[`deaf`](Participant.md#deaf) + +*** + +### deaf$ + +#### Get Signature + +> **get** **deaf$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:129](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L129) + +Observable indicating whether the participant is deafened. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`deaf$`](../interfaces/CallSelfParticipant.md#deaf-1) + +#### Inherited from + +[`Participant`](Participant.md).[`deaf$`](Participant.md#deaf-1) + +*** + +### denoise + +#### Get Signature + +> **get** **denoise**(): `boolean` + +Defined in: [core/entities/Participant.ts:379](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L379) + +Whether noise reduction (denoise) is active. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`denoise`](../interfaces/CallSelfParticipant.md#denoise) + +#### Inherited from + +[`Participant`](Participant.md).[`denoise`](Participant.md#denoise) + +*** + +### denoise$ + +#### Get Signature + +> **get** **denoise$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:217](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L217) + +Observable indicating whether noise reduction is active. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`denoise$`](../interfaces/CallSelfParticipant.md#denoise-1) + +#### Inherited from + +[`Participant`](Participant.md).[`denoise$`](Participant.md#denoise-1) + +*** + +### destroyed$ + +#### Get Signature + +> **get** **destroyed$**(): `Observable`\<`void`\> + +Defined in: [behaviors/Destroyable.ts:112](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L112) + +Observable that emits when the instance is destroyed + +##### Returns + +`Observable`\<`void`\> + +#### Inherited from + +[`Participant`](Participant.md).[`destroyed$`](Participant.md#destroyed) + +*** + +### echoCancellation + +#### Get Signature + +> **get** **echoCancellation**(): `boolean` + +Defined in: [core/entities/Participant.ts:359](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L359) + +Whether echo cancellation is enabled. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`echoCancellation`](../interfaces/CallSelfParticipant.md#echocancellation) + +#### Inherited from + +[`Participant`](Participant.md).[`echoCancellation`](Participant.md#echocancellation) + +*** + +### echoCancellation$ + +#### Get Signature + +> **get** **echoCancellation$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:173](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L173) + +Observable indicating whether echo cancellation is enabled. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`echoCancellation$`](../interfaces/CallSelfParticipant.md#echocancellation-1) + +#### Inherited from + +[`Participant`](Participant.md).[`echoCancellation$`](Participant.md#echocancellation-1) + +*** + +### handraised + +#### Get Signature + +> **get** **handraised**(): `boolean` + +Defined in: [core/entities/Participant.ts:319](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L319) + +Whether the participant has raised their hand. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`handraised`](../interfaces/CallSelfParticipant.md#handraised) + +#### Inherited from + +[`Participant`](Participant.md).[`handraised`](Participant.md#handraised) + +*** + +### handraised$ + +#### Get Signature + +> **get** **handraised$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:85](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L85) + +Observable indicating whether the participant has raised their hand. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`handraised$`](../interfaces/CallSelfParticipant.md#handraised-1) + +#### Inherited from + +[`Participant`](Participant.md).[`handraised$`](Participant.md#handraised-1) + +*** + +### inputSensitivity + +#### Get Signature + +> **get** **inputSensitivity**(): `number` \| `undefined` + +Defined in: [core/entities/Participant.ts:354](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L354) + +Current microphone input sensitivity level, or `undefined` if not set. + +##### Returns + +`number` \| `undefined` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`inputSensitivity`](../interfaces/CallSelfParticipant.md#inputsensitivity) + +#### Inherited from + +[`Participant`](Participant.md).[`inputSensitivity`](Participant.md#inputsensitivity) + +*** + +### inputSensitivity$ + +#### Get Signature + +> **get** **inputSensitivity$**(): `Observable`\<`number`\> + +Defined in: [core/entities/Participant.ts:162](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L162) + +Observable of the microphone input sensitivity level. + +##### Returns + +`Observable`\<`number`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`inputSensitivity$`](../interfaces/CallSelfParticipant.md#inputsensitivity-1) + +#### Inherited from + +[`Participant`](Participant.md).[`inputSensitivity$`](Participant.md#inputsensitivity-1) + +*** + +### inputVolume + +#### Get Signature + +> **get** **inputVolume**(): `number` \| `undefined` + +Defined in: [core/entities/Participant.ts:344](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L344) + +Current microphone input volume level, or `undefined` if not set. + +##### Returns + +`number` \| `undefined` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`inputVolume`](../interfaces/CallSelfParticipant.md#inputvolume) + +#### Inherited from + +[`Participant`](Participant.md).[`inputVolume`](Participant.md#inputvolume) + +*** + +### inputVolume$ + +#### Get Signature + +> **get** **inputVolume$**(): `Observable`\<`number`\> + +Defined in: [core/entities/Participant.ts:140](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L140) + +Observable of the participant's microphone input volume. + +##### Returns + +`Observable`\<`number`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`inputVolume$`](../interfaces/CallSelfParticipant.md#inputvolume-1) + +#### Inherited from + +[`Participant`](Participant.md).[`inputVolume$`](Participant.md#inputvolume-1) + +*** + +### isAudience + +#### Get Signature + +> **get** **isAudience**(): `boolean` + +Defined in: [core/entities/Participant.ts:304](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L304) + +Whether the participant is an audience member (view-only). + +##### Returns + +`boolean` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`isAudience`](../interfaces/CallSelfParticipant.md#isaudience) + +#### Inherited from + +[`Participant`](Participant.md).[`isAudience`](Participant.md#isaudience) + +*** + +### isTalking + +#### Get Signature + +> **get** **isTalking**(): `boolean` + +Defined in: [core/entities/Participant.ts:283](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L283) + +Whether the participant is currently speaking. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`isTalking`](../interfaces/CallSelfParticipant.md#istalking) + +#### Inherited from + +[`Participant`](Participant.md).[`isTalking`](Participant.md#istalking) + +*** + +### isTalking$ + +#### Get Signature + +> **get** **isTalking$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:272](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L272) + +Observable indicating whether the participant is currently speaking. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`isTalking$`](../interfaces/CallSelfParticipant.md#istalking-1) + +#### Inherited from + +[`Participant`](Participant.md).[`isTalking$`](Participant.md#istalking-1) + +*** + +### lowbitrate + +#### Get Signature + +> **get** **lowbitrate**(): `boolean` + +Defined in: [core/entities/Participant.ts:374](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L374) + +Whether low-bitrate mode is active. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`lowbitrate`](../interfaces/CallSelfParticipant.md#lowbitrate) + +#### Inherited from + +[`Participant`](Participant.md).[`lowbitrate`](Participant.md#lowbitrate) + +*** + +### lowbitrate$ + +#### Get Signature + +> **get** **lowbitrate$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:206](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L206) + +Observable indicating whether low-bitrate mode is active. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`lowbitrate$`](../interfaces/CallSelfParticipant.md#lowbitrate-1) + +#### Inherited from + +[`Participant`](Participant.md).[`lowbitrate$`](Participant.md#lowbitrate-1) + +*** + +### meta + +#### Get Signature + +> **get** **meta**(): `Record`\<`string`, `unknown`\> \| `undefined` + +Defined in: [core/entities/Participant.ts:384](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L384) + +Custom metadata for this participant, or `undefined` if not set. + +##### Returns + +`Record`\<`string`, `unknown`\> \| `undefined` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`meta`](../interfaces/CallSelfParticipant.md#meta) + +#### Inherited from + +[`Participant`](Participant.md).[`meta`](Participant.md#meta) + +*** + +### meta$ + +#### Get Signature + +> **get** **meta$**(): `Observable`\<`Record`\<`string`, `unknown`\>\> + +Defined in: [core/entities/Participant.ts:228](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L228) + +Observable of custom metadata for this participant. + +##### Returns + +`Observable`\<`Record`\<`string`, `unknown`\>\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`meta$`](../interfaces/CallSelfParticipant.md#meta-1) + +#### Inherited from + +[`Participant`](Participant.md).[`meta$`](Participant.md#meta-1) + +*** + +### name + +#### Get Signature + +> **get** **name**(): `string` \| `undefined` + +Defined in: [core/entities/Participant.ts:309](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L309) + +Display name of this participant. + +##### Returns + +`string` \| `undefined` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`name`](../interfaces/CallSelfParticipant.md#name) + +#### Inherited from + +[`Participant`](Participant.md).[`name`](Participant.md#name) + +*** + +### name$ + +#### Get Signature + +> **get** **name$**(): `Observable`\<`string`\> + +Defined in: [core/entities/Participant.ts:63](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L63) + +Observable of the participant's display name. + +##### Returns + +`Observable`\<`string`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`name$`](../interfaces/CallSelfParticipant.md#name-1) + +#### Inherited from + +[`Participant`](Participant.md).[`name$`](Participant.md#name-1) + +*** + +### nodeId + +#### Get Signature + +> **get** **nodeId**(): `string` \| `undefined` + +Defined in: [core/entities/Participant.ts:399](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L399) + +Server node ID for this participant, or `undefined` if not available. + +##### Returns + +`string` \| `undefined` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`nodeId`](../interfaces/CallSelfParticipant.md#nodeid) + +#### Inherited from + +[`Participant`](Participant.md).[`nodeId`](Participant.md#nodeid) + +*** + +### nodeId$ + +#### Get Signature + +> **get** **nodeId$**(): `Observable`\<`string`\> + +Defined in: [core/entities/Participant.ts:261](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L261) + +Observable of the server node ID for this participant. + +##### Returns + +`Observable`\<`string`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`nodeId$`](../interfaces/CallSelfParticipant.md#nodeid-1) + +#### Inherited from + +[`Participant`](Participant.md).[`nodeId$`](Participant.md#nodeid-1) + +*** + +### noiseSuppression + +#### Get Signature + +> **get** **noiseSuppression**(): `boolean` + +Defined in: [core/entities/Participant.ts:369](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L369) + +Whether noise suppression is enabled. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`noiseSuppression`](../interfaces/CallSelfParticipant.md#noisesuppression) + +#### Inherited from + +[`Participant`](Participant.md).[`noiseSuppression`](Participant.md#noisesuppression) + +*** + +### noiseSuppression$ + +#### Get Signature + +> **get** **noiseSuppression$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:195](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L195) + +Observable indicating whether noise suppression is enabled. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`noiseSuppression$`](../interfaces/CallSelfParticipant.md#noisesuppression-1) + +#### Inherited from + +[`Participant`](Participant.md).[`noiseSuppression$`](Participant.md#noisesuppression-1) + +*** + +### outputVolume + +#### Get Signature + +> **get** **outputVolume**(): `number` \| `undefined` + +Defined in: [core/entities/Participant.ts:349](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L349) + +Current speaker output volume level, or `undefined` if not set. + +##### Returns + +`number` \| `undefined` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`outputVolume`](../interfaces/CallSelfParticipant.md#outputvolume) + +#### Inherited from + +[`Participant`](Participant.md).[`outputVolume`](Participant.md#outputvolume) + +*** + +### outputVolume$ + +#### Get Signature + +> **get** **outputVolume$**(): `Observable`\<`number`\> + +Defined in: [core/entities/Participant.ts:151](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L151) + +Observable of the participant's speaker output volume. + +##### Returns + +`Observable`\<`number`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`outputVolume$`](../interfaces/CallSelfParticipant.md#outputvolume-1) + +#### Inherited from + +[`Participant`](Participant.md).[`outputVolume$`](Participant.md#outputvolume-1) + +*** + +### position + +#### Get Signature + +> **get** **position**(): [`LayoutLayer`](../interfaces/LayoutLayer.md) \| `undefined` + +Defined in: [core/entities/Participant.ts:299](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L299) + +Current layout position. + +##### Returns + +[`LayoutLayer`](../interfaces/LayoutLayer.md) \| `undefined` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`position`](../interfaces/CallSelfParticipant.md#position) + +#### Inherited from + +[`Participant`](Participant.md).[`position`](Participant.md#position) + +*** + +### position$ + +#### Get Signature + +> **get** **position$**(): `Observable`\<[`LayoutLayer`](../interfaces/LayoutLayer.md) \| `undefined`\> + +Defined in: [core/entities/Participant.ts:288](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L288) + +Observable of the participant's layout position. + +##### Returns + +`Observable`\<[`LayoutLayer`](../interfaces/LayoutLayer.md) \| `undefined`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`position$`](../interfaces/CallSelfParticipant.md#position-1) + +#### Inherited from + +[`Participant`](Participant.md).[`position$`](Participant.md#position-1) + +*** + +### screenShareStatus + +#### Get Signature + +> **get** **screenShareStatus**(): `ScreenShareStatus` + +Defined in: [core/entities/Participant.ts:610](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L610) + +Current screen share status. + +##### Returns + +`ScreenShareStatus` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`screenShareStatus`](../interfaces/CallSelfParticipant.md#screensharestatus) + +*** + +### screenShareStatus$ + +#### Get Signature + +> **get** **screenShareStatus$**(): `Observable`\<`ScreenShareStatus`\> + +Defined in: [core/entities/Participant.ts:605](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L605) + +Observable of the current screen share status. + +##### Returns + +`Observable`\<`ScreenShareStatus`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`screenShareStatus$`](../interfaces/CallSelfParticipant.md#screensharestatus-1) + +*** + +### subscriberId + +#### Get Signature + +> **get** **subscriberId**(): `string` \| `undefined` + +Defined in: [core/entities/Participant.ts:389](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L389) + +Subscriber ID of this participant, or `undefined` if not available. + +##### Returns + +`string` \| `undefined` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`subscriberId`](../interfaces/CallSelfParticipant.md#subscriberid) + +#### Inherited from + +[`Participant`](Participant.md).[`subscriberId`](Participant.md#subscriberid) + +*** + +### subscriberId$ + +#### Get Signature + +> **get** **subscriberId$**(): `Observable`\<`string`\> + +Defined in: [core/entities/Participant.ts:239](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L239) + +Observable of the participant's subscriber ID. + +##### Returns + +`Observable`\<`string`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`subscriberId$`](../interfaces/CallSelfParticipant.md#subscriberid-1) + +#### Inherited from + +[`Participant`](Participant.md).[`subscriberId$`](Participant.md#subscriberid-1) + +*** + +### type + +#### Get Signature + +> **get** **type**(): `string` \| `undefined` + +Defined in: [core/entities/Participant.ts:314](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L314) + +Participant type (e.g. `'member'`, `'screen'`). + +##### Returns + +`string` \| `undefined` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`type`](../interfaces/CallSelfParticipant.md#type) + +#### Inherited from + +[`Participant`](Participant.md).[`type`](Participant.md#type) + +*** + +### type$ + +#### Get Signature + +> **get** **type$**(): `Observable`\<`string`\> + +Defined in: [core/entities/Participant.ts:74](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L74) + +Observable of the participant type (e.g. `'member'`, `'screen'`). + +##### Returns + +`Observable`\<`string`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`type$`](../interfaces/CallSelfParticipant.md#type-1) + +#### Inherited from + +[`Participant`](Participant.md).[`type$`](Participant.md#type-1) + +*** + +### videoMuted + +#### Get Signature + +> **get** **videoMuted**(): `boolean` + +Defined in: [core/entities/Participant.ts:334](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L334) + +Whether the participant's video is muted. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`videoMuted`](../interfaces/CallSelfParticipant.md#videomuted) + +#### Inherited from + +[`Participant`](Participant.md).[`videoMuted`](Participant.md#videomuted) + +*** + +### videoMuted$ + +#### Get Signature + +> **get** **videoMuted$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:118](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L118) + +Observable indicating whether the participant's video is muted. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`videoMuted$`](../interfaces/CallSelfParticipant.md#videomuted-1) + +#### Inherited from + +[`Participant`](Participant.md).[`videoMuted$`](Participant.md#videomuted-1) + +*** + +### visible + +#### Get Signature + +> **get** **visible**(): `boolean` + +Defined in: [core/entities/Participant.ts:324](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L324) + +Whether the participant is visible in the layout. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`visible`](../interfaces/CallSelfParticipant.md#visible) + +#### Inherited from + +[`Participant`](Participant.md).[`visible`](Participant.md#visible) + +*** + +### visible$ + +#### Get Signature + +> **get** **visible$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Participant.ts:96](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L96) + +Observable indicating whether the participant is visible in the layout. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`visible$`](../interfaces/CallSelfParticipant.md#visible-1) + +#### Inherited from + +[`Participant`](Participant.md).[`visible$`](Participant.md#visible-1) + +## Methods + +### addAdditionalDevice() + +> **addAdditionalDevice**(`options`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:620](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L620) + +Adds an additional media input device to the call. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `options` | [`MediaOptions`](../interfaces/MediaOptions.md) | + +#### Returns + +`Promise`\<`void`\> + +*** + +### addAudioInputDevice() + +> **addAudioInputDevice**(`__namedParameters?`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:634](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L634) + +Adds or replaces the primary audio input device with optional constraints or stream. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `__namedParameters` | \{ `constraints?`: `MediaTrackConstraints`; `stream?`: `MediaStream`; \} | +| `__namedParameters.constraints?` | `MediaTrackConstraints` | +| `__namedParameters.stream?` | `MediaStream` | + +#### Returns + +`Promise`\<`void`\> + +*** + +### addInputDevices() + +> **addInputDevices**(`options?`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:666](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L666) + +Adds or replaces primary input devices (audio and/or video). + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `options` | [`MediaOptions`](../interfaces/MediaOptions.md) | + +#### Returns + +`Promise`\<`void`\> + +*** + +### addVideoInputDevice() + +> **addVideoInputDevice**(`__namedParameters?`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:650](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L650) + +Adds or replaces the primary video input device with optional constraints or stream. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `__namedParameters` | \{ `constraints?`: `MediaTrackConstraints`; `stream?`: `MediaStream`; \} | +| `__namedParameters.constraints?` | `MediaTrackConstraints` | +| `__namedParameters.stream?` | `MediaStream` | + +#### Returns + +`Promise`\<`void`\> + +*** + +### cachedObservable() + +> `protected` **cachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:28](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L28) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `factory` | () => `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +[`Participant`](Participant.md).[`cachedObservable`](Participant.md#cachedobservable) + +*** + +### createBehaviorSubject() + +> `protected` **createBehaviorSubject**\<`T`\>(`initialValue`): `BehaviorSubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:94](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L94) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `initialValue` | `T` | + +#### Returns + +`BehaviorSubject`\<`T`\> + +#### Inherited from + +[`Participant`](Participant.md).[`createBehaviorSubject`](Participant.md#createbehaviorsubject) + +*** + +### createReplaySubject() + +> `protected` **createReplaySubject**\<`T`\>(`bufferSize?`, `windowTime?`): `ReplaySubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:88](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L88) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `bufferSize?` | `number` | +| `windowTime?` | `number` | + +#### Returns + +`ReplaySubject`\<`T`\> + +#### Inherited from + +[`Participant`](Participant.md).[`createReplaySubject`](Participant.md#createreplaysubject) + +*** + +### createSubject() + +> `protected` **createSubject**\<`T`\>(): `Subject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:82](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L82) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Returns + +`Subject`\<`T`\> + +#### Inherited from + +[`Participant`](Participant.md).[`createSubject`](Participant.md#createsubject) + +*** + +### deferEmission() + +> `protected` **deferEmission**\<`T`\>(`observable`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:70](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L70) + +Wraps an observable so emissions are deferred to the microtask queue. + +Use ONLY for public-facing getters that expose a subject via +`.asObservable()` without going through `cachedObservable`. + +Do NOT use for observables consumed internally by the SDK. + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `observable` | `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +[`Participant`](Participant.md).[`deferEmission`](Participant.md#deferemission) + +*** + +### destroy() + +> **destroy**(): `void` + +Defined in: [core/entities/Participant.ts:590](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L590) + +Destroys the participant, releasing all subscriptions and references. + +#### Returns + +`void` + +#### Overrides + +[`Participant`](Participant.md).[`destroy`](Participant.md#destroy) + +*** + +### end() + +> **end**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:532](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L532) + +Ends the call for this participant. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`end`](../interfaces/CallSelfParticipant.md#end) + +#### Inherited from + +[`Participant`](Participant.md).[`end`](Participant.md#end) + +*** + +### mute() + +> **mute**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:713](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L713) + +Mutes local audio. Falls back to local device mute if the server RPC fails. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`mute`](../interfaces/CallSelfParticipant.md#mute) + +#### Overrides + +[`Participant`](Participant.md).[`mute`](Participant.md#mute) + +*** + +### muteVideo() + +> **muteVideo**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:741](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L741) + +Mutes local video. Falls back to local device mute if the server RPC fails. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`muteVideo`](../interfaces/CallSelfParticipant.md#mutevideo) + +#### Overrides + +[`Participant`](Participant.md).[`muteVideo`](Participant.md#mutevideo) + +*** + +### publicCachedObservable() + +> `protected` **publicCachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:51](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L51) + +Like `cachedObservable`, but defers emissions to the microtask queue +via `observeOn(asapScheduler)`. + +Use ONLY for public-facing observable getters that external consumers +subscribe to. Prevents a class of bugs where `BehaviorSubject` or +`ReplaySubject` replays synchronously during `subscribe()`, before +the subscription variable is assigned in the caller's scope. + +Do NOT use for observables consumed internally by the SDK — internal +code using `subscribeTo()`, `firstValueFrom()`, or `withLatestFrom()` +depends on synchronous emission delivery. + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `factory` | () => `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +[`Participant`](Participant.md).[`publicCachedObservable`](Participant.md#publiccachedobservable) + +*** + +### remove() + +> **remove**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:521](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L521) + +Removes this participant from the call. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`remove`](../interfaces/CallSelfParticipant.md#remove) + +#### Inherited from + +[`Participant`](Participant.md).[`remove`](Participant.md#remove) + +*** + +### removeAdditionalDevice() + +> **removeAdditionalDevice**(`id`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:629](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L629) + +Removes an additional media input device by ID. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `id` | `string` | + +#### Returns + +`Promise`\<`void`\> + +*** + +### selectAudioInputDevice() + +> **selectAudioInputDevice**(`device`, `options?`): `void` + +Defined in: [core/entities/Participant.ts:671](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L671) + +Selects the audio input device for future calls. Optionally saves as a preference. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `device` | `MediaDeviceInfo` | +| `options` | `SelectDeviceOptions` | + +#### Returns + +`void` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`selectAudioInputDevice`](../interfaces/CallSelfParticipant.md#selectaudioinputdevice) + +*** + +### selectAudioOutputDevice() + +> **selectAudioOutputDevice**(`device`, `options?`): `void` + +Defined in: [core/entities/Participant.ts:705](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L705) + +Selects the audio output device. Optionally saves as a preference. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `device` | `MediaDeviceInfo` | +| `options` | `SelectDeviceOptions` | + +#### Returns + +`void` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`selectAudioOutputDevice`](../interfaces/CallSelfParticipant.md#selectaudiooutputdevice) + +*** + +### selectVideoInputDevice() + +> **selectVideoInputDevice**(`device`, `options?`): `void` + +Defined in: [core/entities/Participant.ts:692](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L692) + +Selects the video input device for future calls. Optionally saves as a preference. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `device` | `MediaDeviceInfo` | +| `options` | `SelectDeviceOptions` | + +#### Returns + +`void` + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`selectVideoInputDevice`](../interfaces/CallSelfParticipant.md#selectvideoinputdevice) + +*** + +### setAudioInputDeviceConstraints() + +> **setAudioInputDeviceConstraints**(`constraints`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:679](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L679) + +Updates the audio input track constraints for the active call. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `constraints` | `MediaTrackConstraints` | + +#### Returns + +`Promise`\<`void`\> + +*** + +### setAudioInputSensitivity() + +> **setAudioInputSensitivity**(`value`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:484](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L484) + +Sets the microphone input sensitivity level. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`setAudioInputSensitivity`](../interfaces/CallSelfParticipant.md#setaudioinputsensitivity) + +#### Inherited from + +[`Participant`](Participant.md).[`setAudioInputSensitivity`](Participant.md#setaudioinputsensitivity) + +*** + +### setAudioInputVolume() + +> **setAudioInputVolume**(`value`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:494](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L494) + +Sets the microphone input volume level. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `value` | `number` | Volume level (0-100). | + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`setAudioInputVolume`](../interfaces/CallSelfParticipant.md#setaudioinputvolume) + +#### Inherited from + +[`Participant`](Participant.md).[`setAudioInputVolume`](Participant.md#setaudioinputvolume) + +*** + +### setAudioOutputVolume() + +> **setAudioOutputVolume**(`value`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:504](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L504) + +Sets the speaker output volume level. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `value` | `number` | Volume level (0-100). | + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`setAudioOutputVolume`](../interfaces/CallSelfParticipant.md#setaudiooutputvolume) + +#### Inherited from + +[`Participant`](Participant.md).[`setAudioOutputVolume`](Participant.md#setaudiooutputvolume) + +*** + +### setInputDevicesConstraints() + +> **setInputDevicesConstraints**(`constraints`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:684](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L684) + +Updates both audio and video input track constraints for the active call. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `constraints` | \{ `audio`: `MediaTrackConstraints`; `video`: `MediaTrackConstraints`; \} | +| `constraints.audio` | `MediaTrackConstraints` | +| `constraints.video` | `MediaTrackConstraints` | + +#### Returns + +`Promise`\<`void`\> + +*** + +### setMeta() + +> **setMeta**(`_meta`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:542](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L542) + +Replaces custom metadata for this participant. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `_meta` | `Record`\<`string`, `unknown`\> | Metadata object to set. | + +#### Returns + +`Promise`\<`void`\> + +#### Throws + +Not yet implemented. + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`setMeta`](../interfaces/CallSelfParticipant.md#setmeta) + +#### Inherited from + +[`Participant`](Participant.md).[`setMeta`](Participant.md#setmeta) + +*** + +### setPosition() + +> **setPosition**(`value`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:514](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L514) + +Sets the participant's position in the video layout. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `value` | [`VideoPosition`](../type-aliases/VideoPosition.md) | The [VideoPosition](../type-aliases/VideoPosition.md) to assign (e.g. `'auto'`, `'reserved-0'`). | + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`setPosition`](../interfaces/CallSelfParticipant.md#setposition) + +#### Inherited from + +[`Participant`](Participant.md).[`setPosition`](Participant.md#setposition) + +*** + +### setVideoInputDeviceConstraints() + +> **setVideoInputDeviceConstraints**(`constraints`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:700](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L700) + +Updates the video input track constraints for the active call. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `constraints` | `MediaTrackConstraints` | + +#### Returns + +`Promise`\<`void`\> + +*** + +### startScreenShare() + +> **startScreenShare**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:596](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L596) + +Starts sharing the local screen. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`startScreenShare`](../interfaces/CallSelfParticipant.md#startscreenshare) + +*** + +### stopScreenShare() + +> **stopScreenShare**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:615](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L615) + +Stops the current screen share. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`stopScreenShare`](../interfaces/CallSelfParticipant.md#stopscreenshare) + +*** + +### subscribeTo() + +> `protected` **subscribeTo**\<`T`\>(`observable`, `observerOrNext`): `void` + +Defined in: [behaviors/Destroyable.ts:74](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L74) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `observable` | `Observable`\<`T`\> | +| `observerOrNext` | `Partial`\<`Observer`\<`T`\>\> \| ((`value`) => `void`) \| `undefined` | + +#### Returns + +`void` + +#### Inherited from + +[`Participant`](Participant.md).[`subscribeTo`](Participant.md#subscribeto) + +*** + +### toggleAudioInputAutoGain() + +> **toggleAudioInputAutoGain**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:460](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L460) + +Toggles automatic gain control on the audio input. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`toggleAudioInputAutoGain`](../interfaces/CallSelfParticipant.md#toggleaudioinputautogain) + +#### Inherited from + +[`Participant`](Participant.md).[`toggleAudioInputAutoGain`](Participant.md#toggleaudioinputautogain) + +*** + +### toggleDeaf() + +> **toggleDeaf**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:409](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L409) + +Toggles the deafened state (mutes/unmutes incoming audio). + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`toggleDeaf`](../interfaces/CallSelfParticipant.md#toggledeaf) + +#### Inherited from + +[`Participant`](Participant.md).[`toggleDeaf`](Participant.md#toggledeaf) + +*** + +### toggleEchoCancellation() + +> **toggleEchoCancellation**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:451](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L451) + +Toggles echo cancellation on the audio input. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`toggleEchoCancellation`](../interfaces/CallSelfParticipant.md#toggleechocancellation) + +#### Inherited from + +[`Participant`](Participant.md).[`toggleEchoCancellation`](Participant.md#toggleechocancellation) + +*** + +### toggleHandraise() + +> **toggleHandraise**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:416](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L416) + +Toggles the hand-raised state. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`toggleHandraise`](../interfaces/CallSelfParticipant.md#togglehandraise) + +#### Inherited from + +[`Participant`](Participant.md).[`toggleHandraise`](Participant.md#togglehandraise) + +*** + +### toggleLowbitrate() + +> **toggleLowbitrate**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:478](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L478) + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`toggleLowbitrate`](../interfaces/CallSelfParticipant.md#togglelowbitrate) + +#### Inherited from + +[`Participant`](Participant.md).[`toggleLowbitrate`](Participant.md#togglelowbitrate) + +*** + +### toggleMute() + +> **toggleMute**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:431](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L431) + +Toggles the participant's audio mute state. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`toggleMute`](../interfaces/CallSelfParticipant.md#togglemute) + +#### Inherited from + +[`Participant`](Participant.md).[`toggleMute`](Participant.md#togglemute) + +*** + +### toggleMuteVideo() + +> **toggleMuteVideo**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:446](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L446) + +Toggles the participant's video mute state. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`toggleMuteVideo`](../interfaces/CallSelfParticipant.md#togglemutevideo) + +#### Inherited from + +[`Participant`](Participant.md).[`toggleMuteVideo`](Participant.md#togglemutevideo) + +*** + +### toggleNoiseSuppression() + +> **toggleNoiseSuppression**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:469](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L469) + +Toggles noise suppression on the audio input. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`toggleNoiseSuppression`](../interfaces/CallSelfParticipant.md#togglenoisesuppression) + +#### Inherited from + +[`Participant`](Participant.md).[`toggleNoiseSuppression`](Participant.md#togglenoisesuppression) + +*** + +### unmute() + +> **unmute**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:727](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L727) + +Unmutes local audio. Falls back to local device unmute if the server RPC fails. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`unmute`](../interfaces/CallSelfParticipant.md#unmute) + +#### Overrides + +[`Participant`](Participant.md).[`unmute`](Participant.md#unmute) + +*** + +### unmuteVideo() + +> **unmuteVideo**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:755](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L755) + +Unmutes local video. Falls back to local device unmute if the server RPC fails. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`unmuteVideo`](../interfaces/CallSelfParticipant.md#unmutevideo) + +#### Overrides + +[`Participant`](Participant.md).[`unmuteVideo`](Participant.md#unmutevideo) + +*** + +### updateMeta() + +> **updateMeta**(`_meta`): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:552](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L552) + +Merges values into custom metadata (unlike [setMeta](Participant.md#setmeta) which replaces). + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `_meta` | `Record`\<`string`, `unknown`\> | Metadata to merge. | + +#### Returns + +`Promise`\<`void`\> + +#### Throws + +Not yet implemented. + +#### Implementation of + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md).[`updateMeta`](../interfaces/CallSelfParticipant.md#updatemeta) + +#### Inherited from + +[`Participant`](Participant.md).[`updateMeta`](Participant.md#updatemeta) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/SignalWire.md b/fern/products/browser-sdk/pages/v4/reference/classes/SignalWire.md new file mode 100644 index 000000000..175ca16b5 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/SignalWire.md @@ -0,0 +1,1166 @@ +# Class: SignalWire + +Defined in: [clients/SignalWire.ts:93](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L93) + +Main entry point for the SignalWire Browser SDK. + +Manages authentication, WebSocket transport, call creation, and media devices. + +## Example + +```ts +const client = new SignalWire(credentialProvider); +client.isConnected$.subscribe(connected => console.log('Connected:', connected)); +const call = await client.dial('/public/my-room'); +``` + +## Extends + +- `Destroyable` + +## Implements + +- [`DeviceController`](../interfaces/DeviceController.md) + +## Constructors + +### Constructor + +> **new SignalWire**(`credentialProvider`, `options?`): `SignalWire` + +Defined in: [clients/SignalWire.ts:119](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L119) + +Creates a new SignalWire client and begins connecting. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `credentialProvider` | [`CredentialProvider`](../interfaces/CredentialProvider.md) | Provider that supplies authentication credentials. | +| `options` | [`SignalWireOptions`](../interfaces/SignalWireOptions.md) | Configuration options (connection, device monitoring, preferences). | + +#### Returns + +`SignalWire` + +#### Overrides + +`Destroyable.constructor` + +## Properties + +| Property | Modifier | Type | Default value | Description | Inherited from | Defined in | +| ------ | ------ | ------ | ------ | ------ | ------ | ------ | +| `_destroyed$` | `protected` | `Subject`\<`void`\> | `undefined` | - | `Destroyable._destroyed$` | [behaviors/Destroyable.ts:17](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L17) | +| `preferences` | `public` | [`ClientPreferences`](ClientPreferences.md) | `undefined` | Global SDK preferences (timeouts, ICE config, media defaults). | - | [clients/SignalWire.ts:95](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L95) | +| `subjects` | `protected` | `Subject`\<`unknown`\>[] | `[]` | - | `Destroyable.subjects` | [behaviors/Destroyable.ts:16](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L16) | +| `subscriptions` | `protected` | `Subscription`[] | `[]` | - | `Destroyable.subscriptions` | [behaviors/Destroyable.ts:15](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L15) | + +## Accessors + +### $ + +#### Get Signature + +> **get** **$**(): `Observable`\<`this`\> + +Defined in: [behaviors/Destroyable.ts:100](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L100) + +##### Returns + +`Observable`\<`this`\> + +#### Inherited from + +`Destroyable.$` + +*** + +### audioInputDevices + +#### Get Signature + +> **get** **audioInputDevices**(): `MediaDeviceInfo`[] + +Defined in: [clients/SignalWire.ts:708](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L708) + +Current snapshot of available audio input devices. + +##### Returns + +`MediaDeviceInfo`[] + +Current snapshot of available audio input devices. + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`audioInputDevices`](../interfaces/DeviceController.md#audioinputdevices) + +*** + +### audioInputDevices$ + +#### Get Signature + +> **get** **audioInputDevices$**(): `Observable`\<`MediaDeviceInfo`[]\> + +Defined in: [clients/SignalWire.ts:703](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L703) + +Observable list of available audio input (microphone) devices. + +##### Returns + +`Observable`\<`MediaDeviceInfo`[]\> + +Observable list of available audio input (microphone) devices. + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`audioInputDevices$`](../interfaces/DeviceController.md#audioinputdevices-1) + +*** + +### audioOutputDevices + +#### Get Signature + +> **get** **audioOutputDevices**(): `MediaDeviceInfo`[] + +Defined in: [clients/SignalWire.ts:718](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L718) + +Current snapshot of available audio output devices. + +##### Returns + +`MediaDeviceInfo`[] + +Current snapshot of available audio output devices. + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`audioOutputDevices`](../interfaces/DeviceController.md#audiooutputdevices) + +*** + +### audioOutputDevices$ + +#### Get Signature + +> **get** **audioOutputDevices$**(): `Observable`\<`MediaDeviceInfo`[]\> + +Defined in: [clients/SignalWire.ts:713](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L713) + +Observable list of available audio output (speaker) devices. + +##### Returns + +`Observable`\<`MediaDeviceInfo`[]\> + +Observable list of available audio output (speaker) devices. + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`audioOutputDevices$`](../interfaces/DeviceController.md#audiooutputdevices-1) + +*** + +### destroyed$ + +#### Get Signature + +> **get** **destroyed$**(): `Observable`\<`void`\> + +Defined in: [behaviors/Destroyable.ts:112](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L112) + +Observable that emits when the instance is destroyed + +##### Returns + +`Observable`\<`void`\> + +#### Inherited from + +`Destroyable.destroyed$` + +*** + +### directory + +#### Get Signature + +> **get** **directory**(): [`Directory`](../interfaces/Directory.md) \| `undefined` + +Defined in: [clients/SignalWire.ts:537](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L537) + +Current directory snapshot, or `undefined` if the client is not yet connected. +Prefer [directory$](#directory-1) when you need to react to the directory becoming available. + +##### Returns + +[`Directory`](../interfaces/Directory.md) \| `undefined` + +*** + +### directory$ + +#### Get Signature + +> **get** **directory$**(): `Observable`\<[`Directory`](../interfaces/Directory.md) \| `undefined`\> + +Defined in: [clients/SignalWire.ts:529](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L529) + +Observable that emits the [Directory](../interfaces/Directory.md) instance once the client is connected, +or `undefined` while disconnected. Subscribe to this to safely wait for the directory +to become available without risking an error. + +##### Example + +```ts +client.directory$.subscribe(dir => { + if (dir) dir.addresses$.subscribe(console.log); +}); +``` + +##### Returns + +`Observable`\<[`Directory`](../interfaces/Directory.md) \| `undefined`\> + +*** + +### errors$ + +#### Get Signature + +> **get** **errors$**(): `Observable`\<`Error`\> + +Defined in: [clients/SignalWire.ts:571](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L571) + +Observable stream of errors from transport, authentication, and devices. + +##### Returns + +`Observable`\<`Error`\> + +Observable stream of errors from device enumeration and monitoring. + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`errors$`](../interfaces/DeviceController.md#errors) + +*** + +### isConnected + +#### Get Signature + +> **get** **isConnected**(): `boolean` + +Defined in: [clients/SignalWire.ts:552](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L552) + +Whether the client is currently connected. + +##### Returns + +`boolean` + +*** + +### isConnected$ + +#### Get Signature + +> **get** **isConnected$**(): `Observable`\<`boolean`\> + +Defined in: [clients/SignalWire.ts:557](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L557) + +Observable that emits when the connection state changes. + +##### Returns + +`Observable`\<`boolean`\> + +*** + +### isRegistered + +#### Get Signature + +> **get** **isRegistered**(): `boolean` + +Defined in: [clients/SignalWire.ts:547](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L547) + +Whether the subscriber is currently registered. + +##### Returns + +`boolean` + +*** + +### isRegistered$ + +#### Get Signature + +> **get** **isRegistered$**(): `Observable`\<`boolean`\> + +Defined in: [clients/SignalWire.ts:542](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L542) + +Observable that emits when the subscriber registration state changes. + +##### Returns + +`Observable`\<`boolean`\> + +*** + +### ready$ + +#### Get Signature + +> **get** **ready$**(): `Observable`\<`boolean`\> + +Defined in: [clients/SignalWire.ts:562](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L562) + +Observable that emits `true` when the client is both connected and authenticated. + +##### Returns + +`Observable`\<`boolean`\> + +*** + +### selectedAudioInputDevice + +#### Get Signature + +> **get** **selectedAudioInputDevice**(): `MediaDeviceInfo` \| `null` + +Defined in: [clients/SignalWire.ts:745](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L745) + +Currently selected audio input device, or `null` if none. + +##### Returns + +`MediaDeviceInfo` \| `null` + +Currently selected audio input device, or `null` if none. + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`selectedAudioInputDevice`](../interfaces/DeviceController.md#selectedaudioinputdevice) + +*** + +### selectedAudioInputDevice$ + +#### Get Signature + +> **get** **selectedAudioInputDevice$**(): `Observable`\<`MediaDeviceInfo` \| `null`\> + +Defined in: [clients/SignalWire.ts:733](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L733) + +Observable of the currently selected audio input device. + +##### Returns + +`Observable`\<`MediaDeviceInfo` \| `null`\> + +Observable of the currently selected audio input device, or `null` if none. + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`selectedAudioInputDevice$`](../interfaces/DeviceController.md#selectedaudioinputdevice-1) + +*** + +### selectedAudioInputDeviceConstraints + +#### Get Signature + +> **get** **selectedAudioInputDeviceConstraints**(): `MediaTrackConstraints` + +Defined in: [clients/SignalWire.ts:757](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L757) + +Media track constraints for the selected audio input device. + +##### Returns + +`MediaTrackConstraints` + +Media track constraints for the selected audio input device. + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`selectedAudioInputDeviceConstraints`](../interfaces/DeviceController.md#selectedaudioinputdeviceconstraints) + +*** + +### selectedAudioOutputDevice + +#### Get Signature + +> **get** **selectedAudioOutputDevice**(): `MediaDeviceInfo` \| `null` + +Defined in: [clients/SignalWire.ts:749](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L749) + +Currently selected audio output device, or `null` if none. + +##### Returns + +`MediaDeviceInfo` \| `null` + +Currently selected audio output device, or `null` if none. + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`selectedAudioOutputDevice`](../interfaces/DeviceController.md#selectedaudiooutputdevice) + +*** + +### selectedAudioOutputDevice$ + +#### Get Signature + +> **get** **selectedAudioOutputDevice$**(): `Observable`\<`MediaDeviceInfo` \| `null`\> + +Defined in: [clients/SignalWire.ts:737](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L737) + +Observable of the currently selected audio output device. + +##### Returns + +`Observable`\<`MediaDeviceInfo` \| `null`\> + +Observable of the currently selected audio output device, or `null` if none. + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`selectedAudioOutputDevice$`](../interfaces/DeviceController.md#selectedaudiooutputdevice-1) + +*** + +### selectedVideoInputDevice + +#### Get Signature + +> **get** **selectedVideoInputDevice**(): `MediaDeviceInfo` \| `null` + +Defined in: [clients/SignalWire.ts:753](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L753) + +Currently selected video input device, or `null` if none. + +##### Returns + +`MediaDeviceInfo` \| `null` + +Currently selected video input device, or `null` if none. + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`selectedVideoInputDevice`](../interfaces/DeviceController.md#selectedvideoinputdevice) + +*** + +### selectedVideoInputDevice$ + +#### Get Signature + +> **get** **selectedVideoInputDevice$**(): `Observable`\<`MediaDeviceInfo` \| `null`\> + +Defined in: [clients/SignalWire.ts:741](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L741) + +Observable of the currently selected video input device. + +##### Returns + +`Observable`\<`MediaDeviceInfo` \| `null`\> + +Observable of the currently selected video input device, or `null` if none. + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`selectedVideoInputDevice$`](../interfaces/DeviceController.md#selectedvideoinputdevice-1) + +*** + +### selectedVideoInputDeviceConstraints + +#### Get Signature + +> **get** **selectedVideoInputDeviceConstraints**(): `MediaTrackConstraints` + +Defined in: [clients/SignalWire.ts:761](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L761) + +Media track constraints for the selected video input device. + +##### Returns + +`MediaTrackConstraints` + +Media track constraints for the selected video input device. + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`selectedVideoInputDeviceConstraints`](../interfaces/DeviceController.md#selectedvideoinputdeviceconstraints) + +*** + +### session + +#### Get Signature + +> **get** **session**(): `ClientSessionWrapper` + +Defined in: [clients/SignalWire.ts:696](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L696) + +The underlying client session for advanced RPC operations. + +##### Returns + +`ClientSessionWrapper` + +*** + +### subscriber + +#### Get Signature + +> **get** **subscriber**(): [`Subscriber`](Subscriber.md) \| `undefined` + +Defined in: [clients/SignalWire.ts:513](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L513) + +Current subscriber snapshot, or `undefined` if not yet authenticated. + +##### Returns + +[`Subscriber`](Subscriber.md) \| `undefined` + +*** + +### subscriber$ + +#### Get Signature + +> **get** **subscriber$**(): `Observable`\<[`Subscriber`](Subscriber.md) \| `undefined`\> + +Defined in: [clients/SignalWire.ts:508](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L508) + +Observable that emits the [Subscriber](Subscriber.md) profile once fetched, +or `undefined` before authentication completes. + +##### Example + +```ts +client.subscriber$.subscribe(sub => { + if (sub) console.log('Logged in as', sub.email); +}); +``` + +##### Returns + +`Observable`\<[`Subscriber`](Subscriber.md) \| `undefined`\> + +*** + +### videoInputDevices + +#### Get Signature + +> **get** **videoInputDevices**(): `MediaDeviceInfo`[] + +Defined in: [clients/SignalWire.ts:728](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L728) + +Current snapshot of available video input devices. + +##### Returns + +`MediaDeviceInfo`[] + +Current snapshot of available video input devices. + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`videoInputDevices`](../interfaces/DeviceController.md#videoinputdevices) + +*** + +### videoInputDevices$ + +#### Get Signature + +> **get** **videoInputDevices$**(): `Observable`\<`MediaDeviceInfo`[]\> + +Defined in: [clients/SignalWire.ts:723](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L723) + +Observable list of available video input (camera) devices. + +##### Returns + +`Observable`\<`MediaDeviceInfo`[]\> + +Observable list of available video input (camera) devices. + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`videoInputDevices$`](../interfaces/DeviceController.md#videoinputdevices-1) + +## Methods + +### cachedObservable() + +> `protected` **cachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:28](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L28) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `factory` | () => `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.cachedObservable` + +*** + +### connect() + +> **connect**(): `Promise`\<`void`\> + +Defined in: [clients/SignalWire.ts:347](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L347) + +Establishes the WebSocket connection and authenticates the session. + +## Reconnection behavior + +After a successful connection the underlying WebSocketController +automatically attempts to reconnect whenever the socket closes +unexpectedly (e.g. network change, server restart). Reconnection uses an +**exponential back-off** strategy: + +- First retry after `reconnectDelayMin` (default **1 s**). +- Each subsequent retry doubles the delay up to `reconnectDelayMax` + (default **30 s**). +- The delay resets to `reconnectDelayMin` once a connection succeeds. +- A per-attempt `connectionTimeout` (default **10 s**) aborts the + attempt and schedules the next retry if the server does not respond. + +Calling [disconnect](#disconnect) stops the reconnection loop entirely. + +## Message handling during temporary disconnections + +While the socket is not in the `connected` state, **outgoing messages +are queued** in an internal buffer. Once the connection is +re-established the queue is flushed in order so no outgoing RPC call is +lost. + +**Incoming** server-to-client messages that arrive while the socket is +down are *not* buffered by the SDK — they are expected to be +re-delivered by the server after the session is re-authenticated. +Active RPC calls that were awaiting a response will time out +(default **5 s**) and reject with an `RPCTimeoutError`; callers should +handle this and retry if appropriate. + +The connection status can be observed via the `status$` observable on +the transport layer, which emits `'connecting'`, `'connected'`, +`'reconnecting'`, `'disconnecting'`, or `'disconnected'`. + +#### Returns + +`Promise`\<`void`\> + +*** + +### createBehaviorSubject() + +> `protected` **createBehaviorSubject**\<`T`\>(`initialValue`): `BehaviorSubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:94](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L94) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `initialValue` | `T` | + +#### Returns + +`BehaviorSubject`\<`T`\> + +#### Inherited from + +`Destroyable.createBehaviorSubject` + +*** + +### createReplaySubject() + +> `protected` **createReplaySubject**\<`T`\>(`bufferSize?`, `windowTime?`): `ReplaySubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:88](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L88) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `bufferSize?` | `number` | +| `windowTime?` | `number` | + +#### Returns + +`ReplaySubject`\<`T`\> + +#### Inherited from + +`Destroyable.createReplaySubject` + +*** + +### createSubject() + +> `protected` **createSubject**\<`T`\>(): `Subject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:82](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L82) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Returns + +`Subject`\<`T`\> + +#### Inherited from + +`Destroyable.createSubject` + +*** + +### deferEmission() + +> `protected` **deferEmission**\<`T`\>(`observable`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:70](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L70) + +Wraps an observable so emissions are deferred to the microtask queue. + +Use ONLY for public-facing getters that expose a subject via +`.asObservable()` without going through `cachedObservable`. + +Do NOT use for observables consumed internally by the SDK. + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `observable` | `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.deferEmission` + +*** + +### destroy() + +> **destroy**(): `void` + +Defined in: [clients/SignalWire.ts:816](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L816) + +Destroys the client, clearing timers and releasing all resources. + +#### Returns + +`void` + +#### Overrides + +`Destroyable.destroy` + +*** + +### deviceInfoToConstraints() + +> **deviceInfoToConstraints**(`deviceInfo`): `MediaTrackConstraints` + +Defined in: [clients/SignalWire.ts:766](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L766) + +Converts a `MediaDeviceInfo` to track constraints suitable for `getUserMedia`. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `deviceInfo` | `MediaDeviceInfo` \| `null` | + +#### Returns + +`MediaTrackConstraints` + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`deviceInfoToConstraints`](../interfaces/DeviceController.md#deviceinfotoconstraints) + +*** + +### dial() + +> **dial**(`destination`, `options?`): `Promise`\<[`Call`](../interfaces/Call.md)\> + +Defined in: [clients/SignalWire.ts:681](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L681) + +Places an outbound call to the given destination. + +Waits for authentication before dialing. Media options are merged from +saved preferences, destination query parameters (e.g. `?channel=video`), +and the provided `options` (highest priority). + +Returns a [Call](../interfaces/Call.md) in `'ringing'` state. Subscribe to [Call.status$](../interfaces/Call.md#status-1) +to track progression through `'connected'` → `'disconnected'`. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `destination` | `string` \| [`Address`](Address.md) | Address URI string (e.g. `'/public/my-room'`) or [Address](Address.md) instance. | +| `options` | [`DialOptions`](../interfaces/DialOptions.md) | Media and dial options (audio/video, device constraints). Overrides defaults. | + +#### Returns + +`Promise`\<[`Call`](../interfaces/Call.md)\> + +The created [Call](../interfaces/Call.md) instance. + +#### Throws + +If authentication is not complete or call creation fails. + +#### Example + +```ts +const call = await client.dial('/public/conference', { + audio: true, + video: true, +}); +call.status$.subscribe(status => console.log('Call:', status)); +``` + +*** + +### disableDeviceMonitoring() + +> **disableDeviceMonitoring**(): `void` + +Defined in: [clients/SignalWire.ts:791](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L791) + +Stops monitoring for media device changes. + +#### Returns + +`void` + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`disableDeviceMonitoring`](../interfaces/DeviceController.md#disabledevicemonitoring) + +*** + +### disconnect() + +> **disconnect**(): `Promise`\<`void`\> + +Defined in: [clients/SignalWire.ts:581](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L581) + +Disconnects the WebSocket and tears down the current session. + +The client can be reconnected by calling [connect](#connect) again, +which creates a fresh transport and session. + +#### Returns + +`Promise`\<`void`\> + +*** + +### enableDeviceMonitoring() + +> **enableDeviceMonitoring**(): `void` + +Defined in: [clients/SignalWire.ts:786](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L786) + +Starts monitoring for media device changes (connect/disconnect). + +#### Returns + +`void` + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`enableDeviceMonitoring`](../interfaces/DeviceController.md#enabledevicemonitoring) + +*** + +### getDeviceCapabilities() + +> **getDeviceCapabilities**(`deviceInfo`): `Promise`\<`MediaTrackCapabilities` \| `null`\> + +Defined in: [clients/SignalWire.ts:800](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L800) + +Returns the capabilities of a media device. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `deviceInfo` | `MediaDeviceInfo` | The device to query. | + +#### Returns + +`Promise`\<`MediaTrackCapabilities` \| `null`\> + +The device capabilities, or `null` if unavailable. + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`getDeviceCapabilities`](../interfaces/DeviceController.md#getdevicecapabilities) + +*** + +### isValidDevice() + +> **isValidDevice**(`deviceInfo`): `Promise`\<`boolean`\> + +Defined in: [clients/SignalWire.ts:811](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L811) + +Checks whether a device is still available and usable. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `deviceInfo` | `MediaDeviceInfo` \| `null` | The device to validate, or `null`. | + +#### Returns + +`Promise`\<`boolean`\> + +`true` if the device is valid and available. Returns `false` for `null`, audio output devices, or unavailable devices. + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`isValidDevice`](../interfaces/DeviceController.md#isvaliddevice) + +*** + +### publicCachedObservable() + +> `protected` **publicCachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:51](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L51) + +Like `cachedObservable`, but defers emissions to the microtask queue +via `observeOn(asapScheduler)`. + +Use ONLY for public-facing observable getters that external consumers +subscribe to. Prevents a class of bugs where `BehaviorSubject` or +`ReplaySubject` replays synchronously during `subscribe()`, before +the subscription variable is assigned in the caller's scope. + +Do NOT use for observables consumed internally by the SDK — internal +code using `subscribeTo()`, `firstValueFrom()`, or `withLatestFrom()` +depends on synchronous emission delivery. + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `factory` | () => `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.publicCachedObservable` + +*** + +### register() + +> **register**(): `Promise`\<`void`\> + +Defined in: [clients/SignalWire.ts:600](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L600) + +Registers the subscriber as online to receive inbound calls and events. + +Waits for authentication to complete before sending the registration. +If the initial attempt fails, reauthentication is attempted automatically. + +#### Returns + +`Promise`\<`void`\> + +#### Throws + +If registration and reauthentication both fail. + +*** + +### selectAudioInputDevice() + +> **selectAudioInputDevice**(`device`): `void` + +Defined in: [clients/SignalWire.ts:771](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L771) + +Sets the preferred audio input device. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `device` | `MediaDeviceInfo` \| `null` | + +#### Returns + +`void` + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`selectAudioInputDevice`](../interfaces/DeviceController.md#selectaudioinputdevice) + +*** + +### selectAudioOutputDevice() + +> **selectAudioOutputDevice**(`device`): `void` + +Defined in: [clients/SignalWire.ts:781](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L781) + +Sets the preferred audio output device. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `device` | `MediaDeviceInfo` \| `null` | + +#### Returns + +`void` + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`selectAudioOutputDevice`](../interfaces/DeviceController.md#selectaudiooutputdevice) + +*** + +### selectVideoInputDevice() + +> **selectVideoInputDevice**(`device`): `void` + +Defined in: [clients/SignalWire.ts:776](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L776) + +Sets the preferred video input device. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `device` | `MediaDeviceInfo` \| `null` | + +#### Returns + +`void` + +#### Implementation of + +[`DeviceController`](../interfaces/DeviceController.md).[`selectVideoInputDevice`](../interfaces/DeviceController.md#selectvideoinputdevice) + +*** + +### subscribeTo() + +> `protected` **subscribeTo**\<`T`\>(`observable`, `observerOrNext`): `void` + +Defined in: [behaviors/Destroyable.ts:74](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L74) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `observable` | `Observable`\<`T`\> | +| `observerOrNext` | `Partial`\<`Observer`\<`T`\>\> \| ((`value`) => `void`) \| `undefined` | + +#### Returns + +`void` + +#### Inherited from + +`Destroyable.subscribeTo` + +*** + +### unregister() + +> **unregister**(): `Promise`\<`void`\> + +Defined in: [clients/SignalWire.ts:644](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L644) + +Unregisters the subscriber, going offline for inbound calls. + +The WebSocket connection remains open; use [disconnect](#disconnect) to fully close it. + +#### Returns + +`Promise`\<`void`\> diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/StaticCredentialProvider.md b/fern/products/browser-sdk/pages/v4/reference/classes/StaticCredentialProvider.md new file mode 100644 index 000000000..8e568e961 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/StaticCredentialProvider.md @@ -0,0 +1,54 @@ +# Class: StaticCredentialProvider + +Defined in: [dependencies/StaticCredentialProvider.ts:15](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/StaticCredentialProvider.ts#L15) + +Credential provider that returns a fixed set of credentials. + +Use when the token is already available (e.g. from a backend endpoint). + +## Example + +```ts +const provider = new StaticCredentialProvider({ token: 'my-sat-token' }); +const client = new SignalWire(provider); +``` + +## Implements + +- [`CredentialProvider`](../interfaces/CredentialProvider.md) + +## Constructors + +### Constructor + +> **new StaticCredentialProvider**(`credentials`): `StaticCredentialProvider` + +Defined in: [dependencies/StaticCredentialProvider.ts:16](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/StaticCredentialProvider.ts#L16) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `credentials` | [`SDKCredential`](../interfaces/SDKCredential.md) | + +#### Returns + +`StaticCredentialProvider` + +## Methods + +### authenticate() + +> **authenticate**(): `Promise`\<[`SDKCredential`](../interfaces/SDKCredential.md)\> + +Defined in: [dependencies/StaticCredentialProvider.ts:19](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/StaticCredentialProvider.ts#L19) + +Returns the static credentials. + +#### Returns + +`Promise`\<[`SDKCredential`](../interfaces/SDKCredential.md)\> + +#### Implementation of + +[`CredentialProvider`](../interfaces/CredentialProvider.md).[`authenticate`](../interfaces/CredentialProvider.md#authenticate) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Subscriber.md b/fern/products/browser-sdk/pages/v4/reference/classes/Subscriber.md new file mode 100644 index 000000000..e74c41d7b --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Subscriber.md @@ -0,0 +1,350 @@ +# Class: Subscriber + +Defined in: [core/entities/Subscriber.ts:17](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L17) + +Authenticated subscriber profile. + +Fetched automatically when a [SignalWire](SignalWire.md) connects. +Contains identity, contact, and organization details. + +## Extends + +- `Fetchable`\<`GetSubscriberInfoResponse`\> + +## Constructors + +### Constructor + +> **new Subscriber**(`http`): `Subscriber` + +Defined in: [core/entities/Subscriber.ts:50](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L50) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `http` | `HTTPRequestController` | + +#### Returns + +`Subscriber` + +#### Overrides + +`Fetchable.constructor` + +## Properties + +| Property | Modifier | Type | Default value | Description | Inherited from | Defined in | +| ------ | ------ | ------ | ------ | ------ | ------ | ------ | +| `_destroyed$` | `protected` | `Subject`\<`void`\> | `undefined` | - | `Fetchable._destroyed$` | [behaviors/Destroyable.ts:17](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L17) | +| `addresses` | `public` | `GetAddressResponse`[] | `undefined` | Fabric addresses associated with this subscriber. | - | [core/entities/Subscriber.ts:46](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L46) | +| `appSettings?` | `public` | `object` | `undefined` | Application-level settings (display name, permission scopes). | - | [core/entities/Subscriber.ts:41](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L41) | +| `appSettings.displayName` | `public` | `string` | `undefined` | - | - | [core/entities/Subscriber.ts:42](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L42) | +| `appSettings.scopes` | `public` | `string`[] | `undefined` | - | - | [core/entities/Subscriber.ts:43](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L43) | +| `companyName?` | `public` | `string` | `undefined` | Company name. | - | [core/entities/Subscriber.ts:37](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L37) | +| `country?` | `public` | `string` | `undefined` | Country code. | - | [core/entities/Subscriber.ts:33](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L33) | +| `displayName?` | `public` | `string` | `undefined` | Display name shown to other participants. | - | [core/entities/Subscriber.ts:27](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L27) | +| `email` | `public` | `string` | `undefined` | Subscriber email address. | - | [core/entities/Subscriber.ts:21](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L21) | +| `fetched$` | `public` | `Observable`\<`boolean`\> | `undefined` | - | `Fetchable.fetched$` | [behaviors/Fetchable.ts:9](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Fetchable.ts#L9) | +| `firstName?` | `public` | `string` | `undefined` | First name. | - | [core/entities/Subscriber.ts:23](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L23) | +| `fromPath` | `public` | `string` | `undefined` | - | `Fetchable.fromPath` | [behaviors/Fetchable.ts:12](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Fetchable.ts#L12) | +| `http` | `protected` | `HTTPRequestController` | `undefined` | - | `Fetchable.http` | [behaviors/Fetchable.ts:13](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Fetchable.ts#L13) | +| `id` | `public` | `string` | `undefined` | Unique subscriber identifier. | - | [core/entities/Subscriber.ts:19](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L19) | +| `jobTitle?` | `public` | `string` | `undefined` | Job title. | - | [core/entities/Subscriber.ts:29](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L29) | +| `lastName?` | `public` | `string` | `undefined` | Last name. | - | [core/entities/Subscriber.ts:25](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L25) | +| `pushNotificationKey` | `public` | `string` | `undefined` | Push notification key for mobile/web push. | - | [core/entities/Subscriber.ts:39](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L39) | +| `region?` | `public` | `string` | `undefined` | Region/state. | - | [core/entities/Subscriber.ts:35](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L35) | +| `satClaims?` | `public` | [`SATClaims`](../interfaces/SATClaims.md) | `undefined` | Filtered SAT claims when the token has special capabilities (e.g., refresh scope). | - | [core/entities/Subscriber.ts:48](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L48) | +| `subjects` | `protected` | `Subject`\<`unknown`\>[] | `[]` | - | `Fetchable.subjects` | [behaviors/Destroyable.ts:16](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L16) | +| `subscriptions` | `protected` | `Subscription`[] | `[]` | - | `Fetchable.subscriptions` | [behaviors/Destroyable.ts:15](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L15) | +| `timeZone?` | `public` | `number` | `undefined` | Time zone offset. | - | [core/entities/Subscriber.ts:31](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L31) | + +## Accessors + +### $ + +#### Get Signature + +> **get** **$**(): `Observable`\<`this`\> + +Defined in: [behaviors/Destroyable.ts:100](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L100) + +##### Returns + +`Observable`\<`this`\> + +#### Inherited from + +`Fetchable.$` + +*** + +### destroyed$ + +#### Get Signature + +> **get** **destroyed$**(): `Observable`\<`void`\> + +Defined in: [behaviors/Destroyable.ts:112](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L112) + +Observable that emits when the instance is destroyed + +##### Returns + +`Observable`\<`void`\> + +#### Inherited from + +`Fetchable.destroyed$` + +## Methods + +### cachedObservable() + +> `protected` **cachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:28](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L28) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `factory` | () => `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Fetchable.cachedObservable` + +*** + +### createBehaviorSubject() + +> `protected` **createBehaviorSubject**\<`T`\>(`initialValue`): `BehaviorSubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:94](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L94) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `initialValue` | `T` | + +#### Returns + +`BehaviorSubject`\<`T`\> + +#### Inherited from + +`Fetchable.createBehaviorSubject` + +*** + +### createReplaySubject() + +> `protected` **createReplaySubject**\<`T`\>(`bufferSize?`, `windowTime?`): `ReplaySubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:88](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L88) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `bufferSize?` | `number` | +| `windowTime?` | `number` | + +#### Returns + +`ReplaySubject`\<`T`\> + +#### Inherited from + +`Fetchable.createReplaySubject` + +*** + +### createSubject() + +> `protected` **createSubject**\<`T`\>(): `Subject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:82](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L82) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Returns + +`Subject`\<`T`\> + +#### Inherited from + +`Fetchable.createSubject` + +*** + +### deferEmission() + +> `protected` **deferEmission**\<`T`\>(`observable`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:70](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L70) + +Wraps an observable so emissions are deferred to the microtask queue. + +Use ONLY for public-facing getters that expose a subject via +`.asObservable()` without going through `cachedObservable`. + +Do NOT use for observables consumed internally by the SDK. + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `observable` | `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Fetchable.deferEmission` + +*** + +### destroy() + +> **destroy**(): `void` + +Defined in: [behaviors/Destroyable.ts:20](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L20) + +#### Returns + +`void` + +#### Inherited from + +`Fetchable.destroy` + +*** + +### populateInstance() + +> `protected` **populateInstance**(`data`): `void` + +Defined in: [core/entities/Subscriber.ts:54](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Subscriber.ts#L54) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `data` | `GetSubscriberInfoResponse` | + +#### Returns + +`void` + +#### Overrides + +`Fetchable.populateInstance` + +*** + +### publicCachedObservable() + +> `protected` **publicCachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:51](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L51) + +Like `cachedObservable`, but defers emissions to the microtask queue +via `observeOn(asapScheduler)`. + +Use ONLY for public-facing observable getters that external consumers +subscribe to. Prevents a class of bugs where `BehaviorSubject` or +`ReplaySubject` replays synchronously during `subscribe()`, before +the subscription variable is assigned in the caller's scope. + +Do NOT use for observables consumed internally by the SDK — internal +code using `subscribeTo()`, `firstValueFrom()`, or `withLatestFrom()` +depends on synchronous emission delivery. + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `factory` | () => `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Fetchable.publicCachedObservable` + +*** + +### subscribeTo() + +> `protected` **subscribeTo**\<`T`\>(`observable`, `observerOrNext`): `void` + +Defined in: [behaviors/Destroyable.ts:74](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L74) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `observable` | `Observable`\<`T`\> | +| `observerOrNext` | `Partial`\<`Observer`\<`T`\>\> \| ((`value`) => `void`) \| `undefined` | + +#### Returns + +`void` + +#### Inherited from + +`Fetchable.subscribeTo` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/TokenRefreshError.md b/fern/products/browser-sdk/pages/v4/reference/classes/TokenRefreshError.md new file mode 100644 index 000000000..46f310b6f --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/TokenRefreshError.md @@ -0,0 +1,36 @@ +# Class: TokenRefreshError + +Defined in: [core/errors.ts:410](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L410) + +## Extends + +- `Error` + +## Constructors + +### Constructor + +> **new TokenRefreshError**(`message`, `originalError?`): `TokenRefreshError` + +Defined in: [core/errors.ts:411](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L411) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `message` | `string` | +| `originalError?` | `unknown` | + +#### Returns + +`TokenRefreshError` + +#### Overrides + +`Error.constructor` + +## Properties + +| Property | Modifier | Type | Defined in | +| ------ | ------ | ------ | ------ | +| `originalError?` | `public` | `unknown` | [core/errors.ts:413](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L413) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/UnexpectedError.md b/fern/products/browser-sdk/pages/v4/reference/classes/UnexpectedError.md new file mode 100644 index 000000000..46479f391 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/UnexpectedError.md @@ -0,0 +1,36 @@ +# Class: UnexpectedError + +Defined in: [core/errors.ts:1](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L1) + +## Extends + +- `Error` + +## Constructors + +### Constructor + +> **new UnexpectedError**(`at?`, `options?`): `UnexpectedError` + +Defined in: [core/errors.ts:2](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L2) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `at?` | `string` | +| `options?` | `ErrorOptions` | + +#### Returns + +`UnexpectedError` + +#### Overrides + +`Error.constructor` + +## Properties + +| Property | Modifier | Type | Defined in | +| ------ | ------ | ------ | ------ | +| `at?` | `public` | `string` | [core/errors.ts:3](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L3) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/VertoPongError.md b/fern/products/browser-sdk/pages/v4/reference/classes/VertoPongError.md new file mode 100644 index 000000000..79a2869c5 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/VertoPongError.md @@ -0,0 +1,35 @@ +# Class: VertoPongError + +Defined in: [core/errors.ts:339](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L339) + +## Extends + +- `Error` + +## Constructors + +### Constructor + +> **new VertoPongError**(`originalError`): `VertoPongError` + +Defined in: [core/errors.ts:340](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L340) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `originalError` | `unknown` | + +#### Returns + +`VertoPongError` + +#### Overrides + +`Error.constructor` + +## Properties + +| Property | Modifier | Type | Defined in | +| ------ | ------ | ------ | ------ | +| `originalError` | `public` | `unknown` | [core/errors.ts:340](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L340) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall.md b/fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall.md new file mode 100644 index 000000000..c908ef214 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall.md @@ -0,0 +1,1913 @@ +# Class: WebRTCCall + +Defined in: [core/entities/Call.ts:121](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L121) + +Concrete WebRTC call implementation. + +Manages the full lifecycle of a call including signaling, media streams, +participants, layout, and event routing. Created via [SignalWire.dial](SignalWire.md#dial) +or received as an inbound call. + +## Extends + +- `Destroyable` + +## Implements + +- `CallManager` + +## Constructors + +### Constructor + +> **new WebRTCCall**(`clientSession`, `options`, `initialization`, `address?`): `WebRTCCall` + +Defined in: [core/entities/Call.ts:139](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L139) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `clientSession` | `ClientSession` | +| `options` | [`CallOptions`](../interfaces/CallOptions.md) | +| `initialization` | `CallInitialization` | +| `address?` | [`Address`](Address.md) | + +#### Returns + +`WebRTCCall` + +#### Overrides + +`Destroyable.constructor` + +## Properties + +| Property | Modifier | Type | Default value | Description | Inherited from | Defined in | +| ------ | ------ | ------ | ------ | ------ | ------ | ------ | +| `_destroyed$` | `protected` | `Subject`\<`void`\> | `undefined` | - | `Destroyable._destroyed$` | [behaviors/Destroyable.ts:17](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L17) | +| `address?` | `public` | [`Address`](Address.md) | `undefined` | - | - | [core/entities/Call.ts:143](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L143) | +| `clientSession` | `public` | `ClientSession` | `undefined` | - | - | [core/entities/Call.ts:140](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L140) | +| `id` | `readonly` | `string` | `undefined` | Unique identifier for this call. | - | [core/entities/Call.ts:123](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L123) | +| `options` | `public` | [`CallOptions`](../interfaces/CallOptions.md) | `undefined` | - | - | [core/entities/Call.ts:141](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L141) | +| `subjects` | `protected` | `Subject`\<`unknown`\>[] | `[]` | - | `Destroyable.subjects` | [behaviors/Destroyable.ts:16](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L16) | +| `subscriptions` | `protected` | `Subscription`[] | `[]` | - | `Destroyable.subscriptions` | [behaviors/Destroyable.ts:15](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L15) | +| `to?` | `public` | `string` | `undefined` | Destination URI this call was placed to. | - | [core/entities/Call.ts:125](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L125) | + +## Accessors + +### $ + +#### Get Signature + +> **get** **$**(): `Observable`\<`this`\> + +Defined in: [behaviors/Destroyable.ts:100](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L100) + +##### Returns + +`Observable`\<`this`\> + +#### Inherited from + +`Destroyable.$` + +*** + +### address$ + +#### Get Signature + +> **get** **address$**(): `Observable`\<[`Address`](Address.md) \| `undefined`\> + +Defined in: [core/entities/Call.ts:209](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L209) + +Observable of the address associated with this call. + +##### Returns + +`Observable`\<[`Address`](Address.md) \| `undefined`\> + +#### Implementation of + +`CallManager.address$` + +*** + +### answered$ + +#### Get Signature + +> **get** **answered$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Call.ts:818](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L818) + +Observable that emits `true` when answered, `false` when rejected. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +`CallManager.answered$` + +*** + +### answerMediaOptions + +#### Get Signature + +> **get** **answerMediaOptions**(): [`MediaOptions`](../interfaces/MediaOptions.md) \| `undefined` + +Defined in: [core/entities/Call.ts:803](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L803) + +Media options provided when answering. Used internally by the VertoManager. + +##### Returns + +[`MediaOptions`](../interfaces/MediaOptions.md) \| `undefined` + +#### Implementation of + +`CallManager.answerMediaOptions` + +*** + +### callEvent$ + +#### Get Signature + +> **get** **callEvent$**(): `Observable`\<`WebrtcMessagePayload` \| `CallJoinedPayload` \| `CallLeftPayload` \| `MemberUpdatedPayload` \| `MemberJoinedPayload` \| `MemberLeftPayload` \| `MemberTalkingPayload` \| `LayoutChangedPayload` \| `CallUpdatedPayload` \| `RoomUpdatedPayload` \| `CallStatePayload` \| `CallPlayPayload` \| `CallConnectPayload` \| `ConversationMessagePayload`\> + +Defined in: [core/entities/Call.ts:728](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L728) + +Observable of call-level signaling events. + +##### Returns + +`Observable`\<`WebrtcMessagePayload` \| `CallJoinedPayload` \| `CallLeftPayload` \| `MemberUpdatedPayload` \| `MemberJoinedPayload` \| `MemberLeftPayload` \| `MemberTalkingPayload` \| `LayoutChangedPayload` \| `CallUpdatedPayload` \| `RoomUpdatedPayload` \| `CallStatePayload` \| `CallPlayPayload` \| `CallConnectPayload` \| `ConversationMessagePayload`\> + +#### Implementation of + +`CallManager.callEvent$` + +*** + +### callStates$ + +#### Get Signature + +> **get** **callStates$**(): `Observable`\<`CallStatePayload`\> + +Defined in: [core/entities/Call.ts:681](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L681) + +Observable of call state-change events. + +##### Returns + +`Observable`\<`CallStatePayload`\> + +#### Implementation of + +`CallManager.callStates$` + +*** + +### callUpdated$ + +#### Get Signature + +> **get** **callUpdated$**(): `Observable`\<`CallUpdatedPayload`\> + +Defined in: [core/entities/Call.ts:632](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L632) + +Observable of call-updated events. + +##### Returns + +`Observable`\<`CallUpdatedPayload`\> + +#### Implementation of + +`CallManager.callUpdated$` + +*** + +### capabilities + +#### Get Signature + +> **get** **capabilities**(): `string`[] + +Defined in: [core/entities/Call.ts:246](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L246) + +List of capabilities available in the current call. + +##### Returns + +`string`[] + +#### Implementation of + +`CallManager.capabilities` + +*** + +### capabilities$ + +#### Get Signature + +> **get** **capabilities$**(): `Observable`\<`string`[]\> + +Defined in: [core/entities/Call.ts:441](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L441) + +Observable of the call's capability flags. + +##### Returns + +`Observable`\<`string`[]\> + +#### Implementation of + +`CallManager.capabilities$` + +*** + +### destroyed$ + +#### Get Signature + +> **get** **destroyed$**(): `Observable`\<`void`\> + +Defined in: [behaviors/Destroyable.ts:112](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L112) + +Observable that emits when the instance is destroyed + +##### Returns + +`Observable`\<`void`\> + +#### Inherited from + +`Destroyable.destroyed$` + +*** + +### direction + +#### Get Signature + +> **get** **direction**(): `CallDirection` + +Defined in: [core/entities/Call.ts:204](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L204) + +Whether this call is `'inbound'` or `'outbound'`. + +##### Returns + +`CallDirection` + +#### Implementation of + +`CallManager.direction` + +*** + +### errors$ + +#### Get Signature + +> **get** **errors$**(): `Observable`\<[`CallError`](../interfaces/CallError.md)\> + +Defined in: [core/entities/Call.ts:186](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L186) + +Observable stream of errors from media, signaling, and peer connection layers. + +##### Returns + +`Observable`\<[`CallError`](../interfaces/CallError.md)\> + +#### Implementation of + +`CallManager.errors$` + +*** + +### from + +#### Get Signature + +> **get** **from**(): `string` \| `undefined` + +Defined in: [core/entities/Call.ts:219](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L219) + +Address URI of the caller. + +##### Returns + +`string` \| `undefined` + +#### Implementation of + +`CallManager.from` + +*** + +### fromName + +#### Get Signature + +> **get** **fromName**(): `string` \| `undefined` + +Defined in: [core/entities/Call.ts:214](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L214) + +Display name of the caller. + +##### Returns + +`string` \| `undefined` + +#### Implementation of + +`CallManager.fromName` + +*** + +### layout + +#### Get Signature + +> **get** **layout**(): `string` \| `undefined` + +Defined in: [core/entities/Call.ts:483](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L483) + +Current layout name, or `undefined` if not set. + +##### Returns + +`string` \| `undefined` + +#### Implementation of + +`CallManager.layout` + +*** + +### layout$ + +#### Get Signature + +> **get** **layout$**(): `Observable`\<`string`\> + +Defined in: [core/entities/Call.ts:448](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L448) + +Observable of the current layout name. + +##### Returns + +`Observable`\<`string`\> + +#### Implementation of + +`CallManager.layout$` + +*** + +### layoutEvent$ + +#### Get Signature + +> **get** **layoutEvent$**(): `Observable`\<`LayoutChangedPayload`\> + +Defined in: [core/entities/Call.ts:741](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L741) + +Observable of layout-changed signaling events. + +##### Returns + +`Observable`\<`LayoutChangedPayload`\> + +*** + +### layoutLayers + +#### Get Signature + +> **get** **layoutLayers**(): [`LayoutLayer`](../interfaces/LayoutLayer.md)[] + +Defined in: [core/entities/Call.ts:324](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L324) + +Current snapshot of layout layers. + +##### Returns + +[`LayoutLayer`](../interfaces/LayoutLayer.md)[] + +#### Implementation of + +`CallManager.layoutLayers` + +*** + +### layoutLayers$ + +#### Get Signature + +> **get** **layoutLayers$**(): `Observable`\<[`LayoutLayer`](../interfaces/LayoutLayer.md)[]\> + +Defined in: [core/entities/Call.ts:317](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L317) + +Observable of layout layer positions for all participants. + +##### Returns + +`Observable`\<[`LayoutLayer`](../interfaces/LayoutLayer.md)[]\> + +#### Implementation of + +`CallManager.layoutLayers$` + +*** + +### layouts + +#### Get Signature + +> **get** **layouts**(): `string`[] + +Defined in: [core/entities/Call.ts:493](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L493) + +Current snapshot of available layout names. + +##### Returns + +`string`[] + +#### Implementation of + +`CallManager.layouts` + +*** + +### layouts$ + +#### Get Signature + +> **get** **layouts$**(): `Observable`\<`string`[]\> + +Defined in: [core/entities/Call.ts:488](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L488) + +Observable of available layout names. + +##### Returns + +`Observable`\<`string`[]\> + +#### Implementation of + +`CallManager.layouts$` + +*** + +### layoutUpdates$ + +#### Get Signature + +> **get** **layoutUpdates$**(): `Observable`\<`LayoutChangedPayload`\> + +Defined in: [core/entities/Call.ts:691](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L691) + +Observable of layout-changed events. + +##### Returns + +`Observable`\<`LayoutChangedPayload`\> + +#### Implementation of + +`CallManager.layoutUpdates$` + +*** + +### localStream + +#### Get Signature + +> **get** **localStream**(): `MediaStream` \| `null` + +Defined in: [core/entities/Call.ts:502](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L502) + +Current local media stream, or `null` if not available. + +##### Returns + +`MediaStream` \| `null` + +#### Implementation of + +`CallManager.localStream` + +*** + +### localStream$ + +#### Get Signature + +> **get** **localStream$**(): `Observable`\<`MediaStream`\> + +Defined in: [core/entities/Call.ts:498](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L498) + +Observable of the local media stream (camera/microphone). + +##### Returns + +`Observable`\<`MediaStream`\> + +#### Implementation of + +`CallManager.localStream$` + +*** + +### locked + +#### Get Signature + +> **get** **locked**(): `boolean` + +Defined in: [core/entities/Call.ts:473](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L473) + +Whether the call room is locked. + +##### Returns + +`boolean` + +#### Implementation of + +`CallManager.locked` + +*** + +### locked$ + +#### Get Signature + +> **get** **locked$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Call.ts:431](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L431) + +Observable indicating whether the call room is locked. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +`CallManager.locked$` + +*** + +### mediaDirections + +#### Get Signature + +> **get** **mediaDirections**(): [`MediaDirections`](../interfaces/MediaDirections.md) + +Defined in: [core/entities/Call.ts:548](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L548) + +Current audio/video send/receive directions. + +##### Returns + +[`MediaDirections`](../interfaces/MediaDirections.md) + +#### Implementation of + +`CallManager.mediaDirections` + +*** + +### mediaDirections$ + +#### Get Signature + +> **get** **mediaDirections$**(): `Observable`\<[`MediaDirections`](../interfaces/MediaDirections.md)\> + +Defined in: [core/entities/Call.ts:543](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L543) + +Observable of the current audio/video send/receive directions. + +##### Returns + +`Observable`\<[`MediaDirections`](../interfaces/MediaDirections.md)\> + +#### Implementation of + +`CallManager.mediaDirections$` + +*** + +### memberJoined$ + +#### Get Signature + +> **get** **memberJoined$**(): `Observable`\<`MemberJoinedPayload`\> + +Defined in: [core/entities/Call.ts:642](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L642) + +Observable of member-joined events, emitted when a remote participant joins the call. + +##### Returns + +`Observable`\<`MemberJoinedPayload`\> + +#### Implementation of + +`CallManager.memberJoined$` + +*** + +### memberLeft$ + +#### Get Signature + +> **get** **memberLeft$**(): `Observable`\<`MemberLeftPayload`\> + +Defined in: [core/entities/Call.ts:652](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L652) + +Observable of member-left events, emitted when a participant leaves the call. + +##### Returns + +`Observable`\<`MemberLeftPayload`\> + +#### Implementation of + +`CallManager.memberLeft$` + +*** + +### memberTalking$ + +#### Get Signature + +> **get** **memberTalking$**(): `Observable`\<`MemberTalkingPayload`\> + +Defined in: [core/entities/Call.ts:671](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L671) + +Observable of member-talking events (speech start/stop). + +##### Returns + +`Observable`\<`MemberTalkingPayload`\> + +#### Implementation of + +`CallManager.memberTalking$` + +*** + +### memberUpdated$ + +#### Get Signature + +> **get** **memberUpdated$**(): `Observable`\<`MemberUpdatedPayload`\> + +Defined in: [core/entities/Call.ts:661](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L661) + +Observable of member-updated events (mute, volume, etc.). + +##### Returns + +`Observable`\<`MemberUpdatedPayload`\> + +#### Implementation of + +`CallManager.memberUpdated$` + +*** + +### meta + +#### Get Signature + +> **get** **meta**(): `Record`\<`string`, `unknown`\> + +Defined in: [core/entities/Call.ts:478](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L478) + +Current custom metadata of the call. + +##### Returns + +`Record`\<`string`, `unknown`\> + +#### Implementation of + +`CallManager.meta` + +*** + +### meta$ + +#### Get Signature + +> **get** **meta$**(): `Observable`\<`Record`\<`string`, `unknown`\>\> + +Defined in: [core/entities/Call.ts:436](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L436) + +Observable of custom metadata associated with the call. + +##### Returns + +`Observable`\<`Record`\<`string`, `unknown`\>\> + +#### Implementation of + +`CallManager.meta$` + +*** + +### nodeId + +#### Get Signature + +> **get** **nodeId**(): `string` \| `null` + +Defined in: [core/entities/Call.ts:593](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L593) + +Server node ID handling this call, or `null`. + +##### Returns + +`string` \| `null` + +#### Implementation of + +`CallManager.nodeId` + +*** + +### nodeId$ + +#### Get Signature + +> **get** **nodeId$**(): `Observable`\<`string` \| `null`\> + +Defined in: [core/entities/Call.ts:588](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L588) + +Observable of the server node ID handling this call. + +##### Returns + +`Observable`\<`string` \| `null`\> + +#### Implementation of + +`CallManager.nodeId$` + +*** + +### participants + +#### Get Signature + +> **get** **participants**(): [`CallParticipant`](../interfaces/CallParticipant.md)[] + +Defined in: [core/entities/Call.ts:251](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L251) + +Current snapshot of all participants in the call. + +##### Returns + +[`CallParticipant`](../interfaces/CallParticipant.md)[] + +#### Implementation of + +`CallManager.participants` + +*** + +### participants$ + +#### Get Signature + +> **get** **participants$**(): `Observable`\<[`CallParticipant`](../interfaces/CallParticipant.md)[]\> + +Defined in: [core/entities/Call.ts:404](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L404) + +Observable of the participants list, emits on join/leave/update. + +##### Returns + +`Observable`\<[`CallParticipant`](../interfaces/CallParticipant.md)[]\> + +#### Implementation of + +`CallManager.participants$` + +*** + +### participantsId$ + +#### Get Signature + +> **get** `protected` **participantsId$**(): `Observable`\<`string`[]\> + +Defined in: [core/entities/Call.ts:552](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L552) + +##### Returns + +`Observable`\<`string`[]\> + +*** + +### raiseHandPriority + +#### Get Signature + +> **get** **raiseHandPriority**(): `boolean` + +Defined in: [core/entities/Call.ts:468](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L468) + +Whether raise-hand priority is active. + +##### Returns + +`boolean` + +#### Implementation of + +`CallManager.raiseHandPriority` + +*** + +### raiseHandPriority$ + +#### Get Signature + +> **get** **raiseHandPriority$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Call.ts:424](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L424) + +Observable indicating whether raise-hand priority is active. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +`CallManager.raiseHandPriority$` + +*** + +### recording + +#### Get Signature + +> **get** **recording**(): `boolean` + +Defined in: [core/entities/Call.ts:458](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L458) + +Whether the call is currently being recorded. + +##### Returns + +`boolean` + +#### Implementation of + +`CallManager.recording` + +*** + +### recording$ + +#### Get Signature + +> **get** **recording$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Call.ts:414](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L414) + +Observable indicating whether the call is being recorded. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +`CallManager.recording$` + +*** + +### remoteStream + +#### Get Signature + +> **get** **remoteStream**(): `MediaStream` \| `null` + +Defined in: [core/entities/Call.ts:510](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L510) + +Current remote media stream, or `null` if not available. + +##### Returns + +`MediaStream` \| `null` + +#### Implementation of + +`CallManager.remoteStream` + +*** + +### remoteStream$ + +#### Get Signature + +> **get** **remoteStream$**(): `Observable`\<`MediaStream`\> + +Defined in: [core/entities/Call.ts:506](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L506) + +Observable of the remote media stream from the far end. + +##### Returns + +`Observable`\<`MediaStream`\> + +#### Implementation of + +`CallManager.remoteStream$` + +*** + +### rtcPeerConnection + +#### Get Signature + +> **get** **rtcPeerConnection**(): `RTCPeerConnection` \| `undefined` + +Defined in: [core/entities/Call.ts:701](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L701) + +Underlying `RTCPeerConnection`, for advanced use cases. + +##### Returns + +`RTCPeerConnection` \| `undefined` + +#### Implementation of + +`CallManager.rtcPeerConnection` + +*** + +### self + +#### Get Signature + +> **get** **self**(): [`CallSelfParticipant`](../interfaces/CallSelfParticipant.md) \| `null` + +Defined in: [core/entities/Call.ts:256](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L256) + +The local participant, or `null` if not yet joined. + +##### Returns + +[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md) \| `null` + +#### Implementation of + +`CallManager.self` + +*** + +### self$ + +#### Get Signature + +> **get** **self$**(): `Observable`\<[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md)\> + +Defined in: [core/entities/Call.ts:410](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L410) + +Observable of the local (self) participant. + +##### Returns + +`Observable`\<[`CallSelfParticipant`](../interfaces/CallSelfParticipant.md)\> + +#### Implementation of + +`CallManager.self$` + +*** + +### selfId + +#### Get Signature + +> **get** **selfId**(): `string` \| `null` + +Defined in: [core/entities/Call.ts:583](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L583) + +Local participant's member ID, or `null` if not joined. + +##### Returns + +`string` \| `null` + +#### Implementation of + +`CallManager.selfId` + +*** + +### selfId$ + +#### Get Signature + +> **get** **selfId$**(): `Observable`\<`string` \| `null`\> + +Defined in: [core/entities/Call.ts:578](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L578) + +Observable of the local participant's member ID. + +##### Returns + +`Observable`\<`string` \| `null`\> + +#### Implementation of + +`CallManager.selfId$` + +*** + +### signalingEvent$ + +#### Get Signature + +> **get** **signalingEvent$**(): `Observable`\<`Record`\<`string`, `unknown`\>\> + +Defined in: [core/entities/Call.ts:705](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L705) + +Observable of raw signaling events as plain objects. + +##### Returns + +`Observable`\<`Record`\<`string`, `unknown`\>\> + +#### Implementation of + +`CallManager.signalingEvent$` + +*** + +### status + +#### Get Signature + +> **get** **status**(): [`CallStatus`](../type-aliases/CallStatus.md) + +Defined in: [core/entities/Call.ts:453](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L453) + +Current call status. + +##### Returns + +[`CallStatus`](../type-aliases/CallStatus.md) + +#### Implementation of + +`CallManager.status` + +*** + +### status$ + +#### Get Signature + +> **get** **status$**(): `Observable`\<[`CallStatus`](../type-aliases/CallStatus.md)\> + +Defined in: [core/entities/Call.ts:393](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L393) + +Observable of the current call status (e.g. `'ringing'`, `'connected'`). + +##### Returns + +`Observable`\<[`CallStatus`](../type-aliases/CallStatus.md)\> + +#### Implementation of + +`CallManager.status$` + +*** + +### streaming + +#### Get Signature + +> **get** **streaming**(): `boolean` + +Defined in: [core/entities/Call.ts:463](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L463) + +Whether the call is currently being streamed. + +##### Returns + +`boolean` + +#### Implementation of + +`CallManager.streaming` + +*** + +### streaming$ + +#### Get Signature + +> **get** **streaming$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Call.ts:419](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L419) + +Observable indicating whether the call is being streamed. + +##### Returns + +`Observable`\<`boolean`\> + +#### Implementation of + +`CallManager.streaming$` + +*** + +### toName + +#### Get Signature + +> **get** **toName**(): `string` \| `undefined` + +Defined in: [core/entities/Call.ts:224](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L224) + +Display name of the callee. + +##### Returns + +`string` \| `undefined` + +#### Implementation of + +`CallManager.toName` + +*** + +### userVariables + +#### Get Signature + +> **get** **userVariables**(): `Record`\<`string`, `unknown`\> + +Defined in: [core/entities/Call.ts:520](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L520) + +a copy of the current custom user variables of the call. + +##### Returns + +`Record`\<`string`, `unknown`\> + +#### Set Signature + +> **set** **userVariables**(`variables`): `void` + +Defined in: [core/entities/Call.ts:525](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L525) + +Merge current custom user variables of the call. + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `variables` | `Record`\<`string`, `unknown`\> | + +##### Returns + +`void` + +#### Implementation of + +`CallManager.userVariables` + +*** + +### userVariables$ + +#### Get Signature + +> **get** **userVariables$**(): `Observable`\<`Record`\<`string`, `unknown`\>\> + +Defined in: [core/entities/Call.ts:515](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L515) + +Observable of custom user variables associated with the call. + +##### Returns + +`Observable`\<`Record`\<`string`, `unknown`\>\> + +#### Implementation of + +`CallManager.userVariables$` + +*** + +### webrtcMessages$ + +#### Get Signature + +> **get** **webrtcMessages$**(): `Observable`\<`WebrtcMessagePayload`\> + +Defined in: [core/entities/Call.ts:715](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L715) + +Observable of WebRTC-specific signaling messages. + +##### Returns + +`Observable`\<`WebrtcMessagePayload`\> + +## Methods + +### answer() + +> **answer**(`options?`): `void` + +Defined in: [core/entities/Call.ts:797](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L797) + +Accepts an inbound call, optionally overriding media options for the answer. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `options?` | [`MediaOptions`](../interfaces/MediaOptions.md) | Optional media constraints for the answer (audio/video). | + +#### Returns + +`void` + +#### Example + +```ts +// Accept with defaults +call.answer(); + +// Accept audio-only +call.answer({ audio: true, video: false }); +``` + +#### See + + - [reject](#reject) to decline the call instead. + - [answered$](#answered) to observe the acceptance state. + +#### Implementation of + +`CallManager.answer` + +*** + +### cachedObservable() + +> `protected` **cachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:28](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L28) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `factory` | () => `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.cachedObservable` + +*** + +### createBehaviorSubject() + +> `protected` **createBehaviorSubject**\<`T`\>(`initialValue`): `BehaviorSubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:94](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L94) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `initialValue` | `T` | + +#### Returns + +`BehaviorSubject`\<`T`\> + +#### Inherited from + +`Destroyable.createBehaviorSubject` + +*** + +### createReplaySubject() + +> `protected` **createReplaySubject**\<`T`\>(`bufferSize?`, `windowTime?`): `ReplaySubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:88](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L88) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `bufferSize?` | `number` | +| `windowTime?` | `number` | + +#### Returns + +`ReplaySubject`\<`T`\> + +#### Inherited from + +`Destroyable.createReplaySubject` + +*** + +### createSubject() + +> `protected` **createSubject**\<`T`\>(): `Subject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:82](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L82) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Returns + +`Subject`\<`T`\> + +#### Inherited from + +`Destroyable.createSubject` + +*** + +### deferEmission() + +> `protected` **deferEmission**\<`T`\>(`observable`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:70](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L70) + +Wraps an observable so emissions are deferred to the microtask queue. + +Use ONLY for public-facing getters that expose a subject via +`.asObservable()` without going through `cachedObservable`. + +Do NOT use for observables consumed internally by the SDK. + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `observable` | `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.deferEmission` + +*** + +### destroy() + +> **destroy**(): `void` + +Defined in: [core/entities/Call.ts:864](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L864) + +Destroys the call, releasing all resources and subscriptions. + +#### Returns + +`void` + +#### Implementation of + +`CallManager.destroy` + +#### Overrides + +`Destroyable.destroy` + +*** + +### execute() + +> **execute**\<`T`\>(`request`, `options?`): `Promise`\<`T`\> + +Defined in: [core/entities/Call.ts:570](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L570) + +Executes a raw JSON-RPC request on the client session. + +Lower-level than [executeMethod](#executemethod) — allows full control over the RPC request structure. + +#### Type Parameters + +| Type Parameter | Default type | +| ------ | ------ | +| `T` *extends* [`JSONRPCResponse`](../type-aliases/JSONRPCResponse.md) | [`JSONRPCResponse`](../type-aliases/JSONRPCResponse.md) | + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `request` | [`JSONRPCRequest`](../interfaces/JSONRPCRequest.md) | Complete JSON-RPC request object. | +| `options?` | [`PendingRPCOptions`](../interfaces/PendingRPCOptions.md) | Optional RPC execution options (timeout, etc.). | + +#### Returns + +`Promise`\<`T`\> + +The RPC response. + +#### Throws + +If the RPC call returns an error response. + +#### Implementation of + +`CallManager.execute` + +*** + +### executeMethod() + +> **executeMethod**\<`T`\>(`target`, `method`, `args`): `Promise`\<`T`\> + +Defined in: [core/entities/Call.ts:339](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L339) + +Executes a Verto RPC method targeting a specific participant. + +Constructs call context (node_id, call_id, member_id) and sends the RPC request. + +#### Type Parameters + +| Type Parameter | Default type | +| ------ | ------ | +| `T` *extends* [`JSONRPCResponse`](../type-aliases/JSONRPCResponse.md) | [`JSONRPCResponse`](../type-aliases/JSONRPCResponse.md) | + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `target` | `string` \| `MemberTarget` | Target member ID string, or a MemberTarget object. | +| `method` | `string` | Verto method name (e.g. `'call.mute'`, `'call.member.remove'`). | +| `args` | `Record`\<`string`, `unknown`\> | Parameters for the RPC method. | + +#### Returns + +`Promise`\<`T`\> + +The RPC response. + +#### Throws + +If the RPC call returns an error. + +#### Implementation of + +`CallManager.executeMethod` + +*** + +### hangup() + +> **hangup**(): `Promise`\<`void`\> + +Defined in: [core/entities/Call.ts:758](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L758) + +Hangs up the call and releases all resources. + +Sends a Verto `bye` to the server, transitions status to `'disconnecting'`, +then destroys the call. After this, the call instance is no longer usable. + +#### Returns + +`Promise`\<`void`\> + +#### Example + +```ts +await call.hangup(); +``` + +#### Implementation of + +`CallManager.hangup` + +*** + +### publicCachedObservable() + +> `protected` **publicCachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:51](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L51) + +Like `cachedObservable`, but defers emissions to the microtask queue +via `observeOn(asapScheduler)`. + +Use ONLY for public-facing observable getters that external consumers +subscribe to. Prevents a class of bugs where `BehaviorSubject` or +`ReplaySubject` replays synchronously during `subscribe()`, before +the subscription variable is assigned in the caller's scope. + +Do NOT use for observables consumed internally by the SDK — internal +code using `subscribeTo()`, `firstValueFrom()`, or `withLatestFrom()` +depends on synchronous emission delivery. + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `factory` | () => `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.publicCachedObservable` + +*** + +### reject() + +> **reject**(): `void` + +Defined in: [core/entities/Call.ts:813](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L813) + +Rejects an inbound call, preventing media negotiation. + +#### Returns + +`void` + +#### See + + - [answer](#answer) to accept the call instead. + - [answered$](#answered) to observe the rejection state. + +#### Implementation of + +`CallManager.reject` + +*** + +### sendDigits() + +> **sendDigits**(`dtmf`): `Promise`\<`void`\> + +Defined in: [core/entities/Call.ts:777](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L777) + +Sends DTMF digits on the call. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `dtmf` | `string` | The digit string to send (e.g. `'1234#'`). | + +#### Returns + +`Promise`\<`void`\> + +#### Example + +```ts +await call.sendDigits('1234#'); +``` + +#### Implementation of + +`CallManager.sendDigits` + +*** + +### setLayout() + +> **setLayout**(`layout`, `positions`): `Promise`\<`void`\> + +Defined in: [core/entities/Call.ts:836](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L836) + +Sets the call layout and participant positions. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `layout` | `string` | Layout name (must be one of [layouts](#layouts)). | +| `positions` | `Record`\<`string`, [`VideoPosition`](../type-aliases/VideoPosition.md)\> | Map of member IDs to [VideoPosition](../type-aliases/VideoPosition.md) values. | + +#### Returns + +`Promise`\<`void`\> + +#### Throws + +If the layout is not in the available [layouts](#layouts). + +#### Example + +```ts +await call.setLayout('grid-responsive', { + [participantId]: 'reserved-0', +}); +``` + +#### Implementation of + +`CallManager.setLayout` + +*** + +### setMeta() + +> **setMeta**(`_meta`): `Promise`\<`void`\> + +Defined in: [core/entities/Call.ts:301](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L301) + +Replaces the call's custom metadata. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `_meta` | `Record`\<`string`, `unknown`\> | Metadata object to set. | + +#### Returns + +`Promise`\<`void`\> + +#### Throws + +Not yet implemented. + +#### Implementation of + +`CallManager.setMeta` + +*** + +### startRecording() + +> **startRecording**(): `Promise`\<`void`\> + +Defined in: [core/entities/Call.ts:282](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L282) + +#### Returns + +`Promise`\<`void`\> + +#### Throws + +Not yet implemented. Status tracked via [recording$](#recording-1). + +#### Implementation of + +`CallManager.startRecording` + +*** + +### startStreaming() + +> **startStreaming**(): `Promise`\<`void`\> + +Defined in: [core/entities/Call.ts:289](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L289) + +#### Returns + +`Promise`\<`void`\> + +#### Throws + +Not yet implemented. Status tracked via [streaming$](#streaming-1). + +#### Implementation of + +`CallManager.startStreaming` + +*** + +### subscribeTo() + +> `protected` **subscribeTo**\<`T`\>(`observable`, `observerOrNext`): `void` + +Defined in: [behaviors/Destroyable.ts:74](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L74) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `observable` | `Observable`\<`T`\> | +| `observerOrNext` | `Partial`\<`Observer`\<`T`\>\> \| ((`value`) => `void`) \| `undefined` | + +#### Returns + +`void` + +#### Inherited from + +`Destroyable.subscribeTo` + +*** + +### toggleHold() + +> **toggleHold**(): `Promise`\<`void`\> + +Defined in: [core/entities/Call.ts:271](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L271) + +Toggles the hold state of the call (pauses/resumes local media transmission). + +Distinct from [Participant.toggleMute](Participant.md#togglemute) which mutes individual tracks. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +`CallManager.toggleHold` + +*** + +### toggleIncomingAudio() + +> **toggleIncomingAudio**(): `Promise`\<`void`\> + +Defined in: [core/entities/Call.ts:236](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L236) + +Toggles whether incoming audio is received. + +#### Returns + +`Promise`\<`void`\> + +#### Throws + +Not yet implemented. + +#### Implementation of + +`CallManager.toggleIncomingAudio` + +*** + +### toggleIncomingVideo() + +> **toggleIncomingVideo**(): `Promise`\<`void`\> + +Defined in: [core/entities/Call.ts:230](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L230) + +Toggles whether incoming video is received. + +#### Returns + +`Promise`\<`void`\> + +#### Throws + +Not yet implemented. + +#### Implementation of + +`CallManager.toggleIncomingVideo` + +*** + +### toggleLock() + +> **toggleLock**(): `Promise`\<`void`\> + +Defined in: [core/entities/Call.ts:261](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L261) + +Toggles the call lock state, preventing or allowing new participants from joining. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +`CallManager.toggleLock` + +*** + +### transfer() + +> **transfer**(`options`): `Promise`\<`void`\> + +Defined in: [core/entities/Call.ts:859](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L859) + +Transfers the call to another destination. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `options` | [`TransferOptions`](../interfaces/TransferOptions.md) | Transfer configuration including the target destination. | + +#### Returns + +`Promise`\<`void`\> + +#### See + +[status$](#status-1) to observe the transfer progress. + +#### Implementation of + +`CallManager.transfer` + +*** + +### updateMeta() + +> **updateMeta**(`_meta`): `Promise`\<`void`\> + +Defined in: [core/entities/Call.ts:311](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Call.ts#L311) + +Merges values into the call's custom metadata (unlike [setMeta](#setmeta) which replaces). + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `_meta` | `Record`\<`string`, `unknown`\> | Metadata to merge. | + +#### Returns + +`Promise`\<`void`\> + +#### Throws + +Not yet implemented. + +#### Implementation of + +`CallManager.updateMeta` diff --git a/fern/products/browser-sdk/pages/v4/reference/functions/embeddableCall.md b/fern/products/browser-sdk/pages/v4/reference/functions/embeddableCall.md new file mode 100644 index 000000000..83055367c --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/functions/embeddableCall.md @@ -0,0 +1,21 @@ +# Function: embeddableCall() + +> **embeddableCall**(`options`): `Promise`\<[`Call`](../interfaces/Call.md)\> + +Defined in: [utils/embeddableCall.ts:25](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/utils/embeddableCall.ts#L25) + +Creates a call using an embed token for simple, embeddable integrations. + +Handles client creation, authentication, and dialing in a single call. + +## Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `options` | `EmbeddableCallOptions` | Embed token, host, and destination. | + +## Returns + +`Promise`\<[`Call`](../interfaces/Call.md)\> + +The created [Call](../interfaces/Call.md) instance. diff --git a/fern/products/browser-sdk/pages/v4/reference/functions/getLogger.md b/fern/products/browser-sdk/pages/v4/reference/functions/getLogger.md new file mode 100644 index 000000000..66bbb88d1 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/functions/getLogger.md @@ -0,0 +1,9 @@ +# Function: getLogger() + +> **getLogger**(): `InternalSDKLogger` + +Defined in: [utils/logger.ts:97](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/utils/logger.ts#L97) + +## Returns + +`InternalSDKLogger` diff --git a/fern/products/browser-sdk/pages/v4/reference/functions/isSelfParticipant.md b/fern/products/browser-sdk/pages/v4/reference/functions/isSelfParticipant.md new file mode 100644 index 000000000..5ea158298 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/functions/isSelfParticipant.md @@ -0,0 +1,17 @@ +# Function: isSelfParticipant() + +> **isSelfParticipant**(`participant`): `participant is SelfParticipant` + +Defined in: [core/entities/Participant.ts:770](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L770) + +Type guard that checks if a participant is the local [SelfParticipant](../classes/SelfParticipant.md). + +## Parameters + +| Parameter | Type | +| ------ | ------ | +| `participant` | [`Participant`](../classes/Participant.md) | + +## Returns + +`participant is SelfParticipant` diff --git a/fern/products/browser-sdk/pages/v4/reference/functions/setLogger.md b/fern/products/browser-sdk/pages/v4/reference/functions/setLogger.md new file mode 100644 index 000000000..86a3bdaa1 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/functions/setLogger.md @@ -0,0 +1,15 @@ +# Function: setLogger() + +> **setLogger**(`logger`): `void` + +Defined in: [utils/logger.ts:55](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/utils/logger.ts#L55) + +## Parameters + +| Parameter | Type | +| ------ | ------ | +| `logger` | `SDKLogger` \| `null` | + +## Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/index.md b/fern/products/browser-sdk/pages/v4/reference/index.md new file mode 100644 index 000000000..68cd1174c --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/index.md @@ -0,0 +1,107 @@ +# SignalWire Browser SDK + +## Classes + +| Class | Description | +| ------ | ------ | +| [Address](classes/Address.md) | Represents a contact or room in the directory. | +| [CallCreateError](classes/CallCreateError.md) | - | +| [ClientPreferences](classes/ClientPreferences.md) | Public preferences API for configuring SDK behavior. | +| [CollectionFetchError](classes/CollectionFetchError.md) | - | +| [DeviceTokenError](classes/DeviceTokenError.md) | - | +| [DPoPInitError](classes/DPoPInitError.md) | - | +| [EmbedTokenCredentialProvider](classes/EmbedTokenCredentialProvider.md) | Credential provider that exchanges an embed token for a SAT via the host's token endpoint. | +| [InvalidCredentialsError](classes/InvalidCredentialsError.md) | - | +| [MediaTrackError](classes/MediaTrackError.md) | - | +| [MessageParseError](classes/MessageParseError.md) | - | +| [Participant](classes/Participant.md) | Represents a participant in a call. | +| [SelfCapabilities](classes/SelfCapabilities.md) | SelfCapabilities manages the capability state for the self participant. | +| [SelfParticipant](classes/SelfParticipant.md) | The local participant in a call, with additional device and media control. | +| [SignalWire](classes/SignalWire.md) | Main entry point for the SignalWire Browser SDK. | +| [StaticCredentialProvider](classes/StaticCredentialProvider.md) | Credential provider that returns a fixed set of credentials. | +| [Subscriber](classes/Subscriber.md) | Authenticated subscriber profile. | +| [TokenRefreshError](classes/TokenRefreshError.md) | - | +| [UnexpectedError](classes/UnexpectedError.md) | - | +| [VertoPongError](classes/VertoPongError.md) | - | +| [WebRTCCall](classes/WebRTCCall.md) | Concrete WebRTC call implementation. | + +## Interfaces + +| Interface | Description | +| ------ | ------ | +| [AddressHistory](interfaces/AddressHistory.md) | Address history entry from conversation messages Contains a reference to the sender address as an observable | +| [AuthenticateContext](interfaces/AuthenticateContext.md) | Context provided by the SDK when calling [CredentialProvider.authenticate](interfaces/CredentialProvider.md#authenticate). | +| [Call](interfaces/Call.md) | Public interface for an active WebRTC call. | +| [CallAddress](interfaces/CallAddress.md) | Minimal address interface for call context Avoids circular dependency with full Address class | +| [CallCapabilitiesState](interfaces/CallCapabilitiesState.md) | Call-level capabilities state | +| [CallError](interfaces/CallError.md) | Structured error emitted on `call.errors$`. | +| [CallOptions](interfaces/CallOptions.md) | Configuration options for creating a call. | +| [CallParticipant](interfaces/CallParticipant.md) | Base participant interface for call participants Defines the full public contract for participant objects exposed by Call | +| [CallSelfParticipant](interfaces/CallSelfParticipant.md) | Self participant interface with control methods Extends CallParticipant with methods for controlling the local participant | +| [CallState](interfaces/CallState.md) | Observable state of a call (status, recording, participants, etc.). | +| [CredentialProvider](interfaces/CredentialProvider.md) | Provides authentication credentials to the SDK. | +| [DeviceController](interfaces/DeviceController.md) | Interface for media device management. | +| [DialOptions](interfaces/DialOptions.md) | Options for [SignalWire.dial](classes/SignalWire.md#dial). Extends [MediaOptions](interfaces/MediaOptions.md) with dial-specific settings. | +| [Directory](interfaces/Directory.md) | Directory interface for managing addresses | +| [JSONRPCErrorResponse](interfaces/JSONRPCErrorResponse.md) | - | +| [JSONRPCRequest](interfaces/JSONRPCRequest.md) | - | +| [JSONRPCSuccessResponse](interfaces/JSONRPCSuccessResponse.md) | - | +| [LayoutLayer](interfaces/LayoutLayer.md) | - | +| [MediaDirections](interfaces/MediaDirections.md) | Audio and video directions "inactive" | "recvonly" | "sendonly" | "sendrecv" | "stopped" | +| [MediaOptions](interfaces/MediaOptions.md) | Options controlling which media tracks to send and receive. | +| [MemberCapabilities](interfaces/MemberCapabilities.md) | Member-level capabilities for self or other members | +| [NodeSocketAdapter](interfaces/NodeSocketAdapter.md) | There's a difference in `searchParams` between URL from `lib` and URL from `url` (node) that makes using the same not possible for us. | +| [OnOffCapability](interfaces/OnOffCapability.md) | Represents an on/off capability state Both `on` and `off` can be true if the parent permission grants both | +| [PendingRPCOptions](interfaces/PendingRPCOptions.md) | - | +| [SATClaims](interfaces/SATClaims.md) | SAT claims returned by /api/fabric/subscriber/info. | +| [SDKCredential](interfaces/SDKCredential.md) | Authentication credentials for the SDK. | +| [SessionState](interfaces/SessionState.md) | Extended session interface that adds call management and authentication state on top of the narrow ClientSession contract. | +| [SignalWireOptions](interfaces/SignalWireOptions.md) | Options for constructing a [SignalWire](classes/SignalWire.md). | +| [Storage](interfaces/Storage.md) | Key-value storage interface for persisting SDK preferences and state. | +| [TextMessage](interfaces/TextMessage.md) | Text message from conversation Contains a reference to the sender address as an observable | +| [TransferOptions](interfaces/TransferOptions.md) | - | +| [WebRTCApiProvider](interfaces/WebRTCApiProvider.md) | Provides custom WebRTC API implementations for non-standard environments. | +| [WebRTCMediaDevices](interfaces/WebRTCMediaDevices.md) | Subset of the `MediaDevices` interface actually used by the SDK. | + +## Type Aliases + +| Type Alias | Description | +| ------ | ------ | +| [CallErrorKind](type-aliases/CallErrorKind.md) | Semantic category of a call-lifecycle error. | +| [CallStatus](type-aliases/CallStatus.md) | Lifecycle status of a call. | +| [ExecuteMethod](type-aliases/ExecuteMethod.md) | Callback type for executing call methods Injected to avoid circular dependency with Call class | +| [JSONRPCResponse](type-aliases/JSONRPCResponse.md) | - | +| [MediaDirection](type-aliases/MediaDirection.md) | WebRTC transceiver direction for a single media kind. | +| [VideoPosition](type-aliases/VideoPosition.md) | Position of a participant's video within the layout canvas. | +| [WebSocketAdapter](type-aliases/WebSocketAdapter.md) | Browser-compatible WebSocket constructor type. | + +## Variables + +### ready + +> `const` **ready**: `boolean` = `true` + +Defined in: [index.ts:158](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/index.ts#L158) + +Flag indicating the library has been loaded and is ready to use. +For UMD builds: `window.SignalWire.ready` +For ES modules: `import { ready } from '@signalwire/js'` + +*** + +### version + +> `const` **version**: `string` = `__VERSION__` + +Defined in: [index.ts:151](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/index.ts#L151) + +Library version from package.json, injected at build time. + +## Functions + +| Function | Description | +| ------ | ------ | +| [embeddableCall](functions/embeddableCall.md) | Creates a call using an embed token for simple, embeddable integrations. | +| [getLogger](functions/getLogger.md) | - | +| [isSelfParticipant](functions/isSelfParticipant.md) | Type guard that checks if a participant is the local [SelfParticipant](classes/SelfParticipant.md). | +| [setLogger](functions/setLogger.md) | - | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/AddressHistory.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/AddressHistory.md new file mode 100644 index 000000000..4a93d16e3 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/AddressHistory.md @@ -0,0 +1,28 @@ +# Interface: AddressHistory\ + +Defined in: [core/types/conversation.types.ts:14](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/conversation.types.ts#L14) + +Address history entry from conversation messages +Contains a reference to the sender address as an observable + +## Remarks + +Uses a generic type parameter to maintain type safety while avoiding +circular dependencies. The Address class provides the concrete type. + +## Type Parameters + +| Type Parameter | Default type | Description | +| ------ | ------ | ------ | +| `TAddress` | `never` | The Address type, provided by the implementation | + +## Properties + +| Property | Type | Defined in | +| ------ | ------ | ------ | +| `ended?` | `number` | [core/types/conversation.types.ts:19](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/conversation.types.ts#L19) | +| `fromAddress$` | `Observable`\<`TAddress`\> \| `undefined` | [core/types/conversation.types.ts:20](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/conversation.types.ts#L20) | +| `id` | `string` | [core/types/conversation.types.ts:15](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/conversation.types.ts#L15) | +| `kind` | `string` | [core/types/conversation.types.ts:16](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/conversation.types.ts#L16) | +| `started` | `number` | [core/types/conversation.types.ts:18](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/conversation.types.ts#L18) | +| `status` | `string` | [core/types/conversation.types.ts:17](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/conversation.types.ts#L17) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/AuthenticateContext.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/AuthenticateContext.md new file mode 100644 index 000000000..fda10be1c --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/AuthenticateContext.md @@ -0,0 +1,14 @@ +# Interface: AuthenticateContext + +Defined in: [dependencies/interfaces.ts:18](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L18) + +Context provided by the SDK when calling [CredentialProvider.authenticate](CredentialProvider.md#authenticate). + +Contains optional parameters the SDK generates internally (e.g., DPoP fingerprint) +that the implementor can forward to their server-side token endpoint. + +## Properties + +| Property | Type | Description | Defined in | +| ------ | ------ | ------ | ------ | +| `fingerprint?` | `string` | JWK Thumbprint (RFC 7638) of the SDK's ephemeral DPoP key pair. When present, the implementor should forward this value as the `fingerprint` parameter to the server-side SAT issuance endpoint alongside `scope: "sat:refresh"`. This enables the server to bind the SAT to the SDK's key pair, allowing automatic Client Bound SAT refresh without developer intervention. When absent (e.g., Web Crypto API not available), the implementor should proceed without DPoP binding. | [dependencies/interfaces.ts:30](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L30) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/Call.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/Call.md new file mode 100644 index 000000000..b38c99ad3 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/Call.md @@ -0,0 +1,321 @@ +# Interface: Call + +Defined in: [core/entities/types/call.types.ts:226](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L226) + +Public interface for an active WebRTC call. + +Provides access to media streams, participants, layout, signaling events, +and control actions (hangup, mute, transfer, etc.). + +## Extends + +- [`CallState`](CallState.md) + +## Properties + +| Property | Modifier | Type | Inherited from | Defined in | +| ------ | ------ | ------ | ------ | ------ | +| `address?` | `readonly` | [`CallAddress`](CallAddress.md) | - | [core/entities/types/call.types.ts:248](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L248) | +| `address$` | `readonly` | `Observable`\<[`CallAddress`](CallAddress.md) \| `undefined`\> | - | [core/entities/types/call.types.ts:249](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L249) | +| `capabilities` | `readonly` | `string`[] | - | [core/entities/types/call.types.ts:228](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L228) | +| `capabilities$` | `readonly` | `Observable`\<`string`[]\> | - | [core/entities/types/call.types.ts:227](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L227) | +| `direction` | `readonly` | `"inbound"` \| `"outbound"` | - | [core/entities/types/call.types.ts:234](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L234) | +| `errors$` | `readonly` | `Observable`\<[`CallError`](CallError.md)\> | - | [core/entities/types/call.types.ts:246](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L246) | +| `id` | `readonly` | `string` | [`CallState`](CallState.md).[`id`](CallState.md#id) | [core/entities/types/call.types.ts:197](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L197) | +| `layout?` | `readonly` | `string` | - | [core/entities/types/call.types.ts:238](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L238) | +| `layout$` | `readonly` | `Observable`\<`string`\> | - | [core/entities/types/call.types.ts:237](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L237) | +| `layoutLayers` | `readonly` | [`LayoutLayer`](LayoutLayer.md)[] | - | [core/entities/types/call.types.ts:240](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L240) | +| `layoutLayers$` | `readonly` | `Observable`\<[`LayoutLayer`](LayoutLayer.md)[]\> | - | [core/entities/types/call.types.ts:239](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L239) | +| `layouts` | `readonly` | `string`[] | - | [core/entities/types/call.types.ts:236](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L236) | +| `layouts$` | `readonly` | `Observable`\<`string`[]\> | - | [core/entities/types/call.types.ts:235](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L235) | +| `localStream` | `readonly` | `MediaStream` \| `null` | - | [core/entities/types/call.types.ts:242](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L242) | +| `localStream$` | `readonly` | `Observable`\<`MediaStream` \| `null`\> | - | [core/entities/types/call.types.ts:241](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L241) | +| `locked` | `readonly` | `boolean` | [`CallState`](CallState.md).[`locked`](CallState.md#locked) | [core/entities/types/call.types.ts:207](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L207) | +| `locked$` | `readonly` | `Observable`\<`boolean`\> | [`CallState`](CallState.md).[`locked$`](CallState.md#locked-1) | [core/entities/types/call.types.ts:206](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L206) | +| `mediaDirections` | `readonly` | [`MediaDirections`](MediaDirections.md) | - | [core/entities/types/call.types.ts:230](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L230) | +| `mediaDirections$` | `readonly` | `Observable`\<[`MediaDirections`](MediaDirections.md)\> | - | [core/entities/types/call.types.ts:229](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L229) | +| `meta` | `readonly` | `Record`\<`string`, `unknown`\> | [`CallState`](CallState.md).[`meta`](CallState.md#meta) | [core/entities/types/call.types.ts:209](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L209) | +| `meta$` | `readonly` | `Observable`\<`Record`\<`string`, `unknown`\>\> | [`CallState`](CallState.md).[`meta$`](CallState.md#meta-1) | [core/entities/types/call.types.ts:208](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L208) | +| `participants` | `readonly` | [`CallParticipant`](CallParticipant.md)[] | [`CallState`](CallState.md).[`participants`](CallState.md#participants) | [core/entities/types/call.types.ts:211](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L211) | +| `participants$` | `readonly` | `Observable`\<[`CallParticipant`](CallParticipant.md)[]\> | [`CallState`](CallState.md).[`participants$`](CallState.md#participants-1) | [core/entities/types/call.types.ts:210](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L210) | +| `raiseHandPriority` | `readonly` | `boolean` | [`CallState`](CallState.md).[`raiseHandPriority`](CallState.md#raisehandpriority) | [core/entities/types/call.types.ts:205](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L205) | +| `raiseHandPriority$` | `readonly` | `Observable`\<`boolean`\> | [`CallState`](CallState.md).[`raiseHandPriority$`](CallState.md#raisehandpriority-1) | [core/entities/types/call.types.ts:204](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L204) | +| `recording` | `readonly` | `boolean` | [`CallState`](CallState.md).[`recording`](CallState.md#recording) | [core/entities/types/call.types.ts:201](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L201) | +| `recording$` | `readonly` | `Observable`\<`boolean`\> | [`CallState`](CallState.md).[`recording$`](CallState.md#recording-1) | [core/entities/types/call.types.ts:200](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L200) | +| `remoteStream` | `readonly` | `MediaStream` \| `null` | - | [core/entities/types/call.types.ts:244](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L244) | +| `remoteStream$` | `readonly` | `Observable`\<`MediaStream` \| `null`\> | - | [core/entities/types/call.types.ts:243](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L243) | +| `rtcPeerConnection` | `readonly` | `RTCPeerConnection` \| `undefined` | - | [core/entities/types/call.types.ts:245](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L245) | +| `self` | `readonly` | [`CallSelfParticipant`](CallSelfParticipant.md) \| `null` | - | [core/entities/types/call.types.ts:232](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L232) | +| `self$` | `readonly` | `Observable`\<[`CallSelfParticipant`](CallSelfParticipant.md) \| `null`\> | - | [core/entities/types/call.types.ts:231](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L231) | +| `signalingEvent$` | `readonly` | `Observable`\<`Record`\<`string`, `unknown`\>\> | - | [core/entities/types/call.types.ts:247](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L247) | +| `status` | `readonly` | [`CallStatus`](../type-aliases/CallStatus.md) | [`CallState`](CallState.md).[`status`](CallState.md#status) | [core/entities/types/call.types.ts:199](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L199) | +| `status$` | `readonly` | `Observable`\<[`CallStatus`](../type-aliases/CallStatus.md)\> | [`CallState`](CallState.md).[`status$`](CallState.md#status-1) | [core/entities/types/call.types.ts:198](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L198) | +| `streaming` | `readonly` | `boolean` | [`CallState`](CallState.md).[`streaming`](CallState.md#streaming) | [core/entities/types/call.types.ts:203](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L203) | +| `streaming$` | `readonly` | `Observable`\<`boolean`\> | [`CallState`](CallState.md).[`streaming$`](CallState.md#streaming-1) | [core/entities/types/call.types.ts:202](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L202) | +| `to?` | `readonly` | `string` | - | [core/entities/types/call.types.ts:233](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L233) | +| `userVariables?` | `public` | `Record`\<`string`, `unknown`\> | - | [core/entities/types/call.types.ts:250](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L250) | +| `userVariables$` | `readonly` | `Observable`\<`Record`\<`string`, `unknown`\>\> | - | [core/entities/types/call.types.ts:251](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L251) | + +## Methods + +### answer() + +> **answer**(`options?`): `void` + +Defined in: [core/entities/types/call.types.ts:262](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L262) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `options?` | [`MediaOptions`](MediaOptions.md) | + +#### Returns + +`void` + +*** + +### execute() + +> **execute**\<`T`\>(`request`, `options?`): `Promise`\<`T`\> + +Defined in: [core/entities/types/call.types.ts:270](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L270) + +#### Type Parameters + +| Type Parameter | Default type | +| ------ | ------ | +| `T` *extends* [`JSONRPCResponse`](../type-aliases/JSONRPCResponse.md) | [`JSONRPCResponse`](../type-aliases/JSONRPCResponse.md) | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `request` | [`JSONRPCRequest`](JSONRPCRequest.md) | +| `options?` | [`PendingRPCOptions`](PendingRPCOptions.md) | + +#### Returns + +`Promise`\<`T`\> + +*** + +### executeMethod() + +> **executeMethod**\<`T`\>(`target`, `method`, `args`): `Promise`\<`T`\> + +Defined in: [core/entities/types/call.types.ts:265](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L265) + +#### Type Parameters + +| Type Parameter | Default type | +| ------ | ------ | +| `T` *extends* [`JSONRPCResponse`](../type-aliases/JSONRPCResponse.md) | [`JSONRPCResponse`](../type-aliases/JSONRPCResponse.md) | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `target` | `string` | +| `method` | `string` | +| `args` | `Record`\<`string`, `unknown`\> | + +#### Returns + +`Promise`\<`T`\> + +*** + +### hangup() + +> **hangup**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:253](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L253) + +#### Returns + +`Promise`\<`void`\> + +*** + +### reject() + +> **reject**(): `void` + +Defined in: [core/entities/types/call.types.ts:263](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L263) + +#### Returns + +`void` + +*** + +### sendDigits() + +> **sendDigits**(`digits`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:264](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L264) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `digits` | `string` | + +#### Returns + +`Promise`\<`void`\> + +*** + +### setLayout() + +> **setLayout**(`layout`, `positions`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:256](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L256) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `layout` | `string` | +| `positions` | `Record`\<`string`, [`VideoPosition`](../type-aliases/VideoPosition.md)\> | + +#### Returns + +`Promise`\<`void`\> + +*** + +### setMeta() + +> **setMeta**(`meta`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:212](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L212) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `meta` | `Record`\<`string`, `unknown`\> | + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallState`](CallState.md).[`setMeta`](CallState.md#setmeta) + +*** + +### startRecording() + +> **startRecording**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:257](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L257) + +#### Returns + +`Promise`\<`void`\> + +*** + +### startStreaming() + +> **startStreaming**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:258](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L258) + +#### Returns + +`Promise`\<`void`\> + +*** + +### toggleHold() + +> **toggleHold**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:255](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L255) + +#### Returns + +`Promise`\<`void`\> + +*** + +### toggleIncomingAudio() + +> **toggleIncomingAudio**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:261](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L261) + +#### Returns + +`Promise`\<`void`\> + +*** + +### toggleIncomingVideo() + +> **toggleIncomingVideo**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:260](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L260) + +#### Returns + +`Promise`\<`void`\> + +*** + +### toggleLock() + +> **toggleLock**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:254](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L254) + +#### Returns + +`Promise`\<`void`\> + +*** + +### transfer() + +> **transfer**(`options`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:259](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L259) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `options` | [`TransferOptions`](TransferOptions.md) | + +#### Returns + +`Promise`\<`void`\> + +*** + +### updateMeta() + +> **updateMeta**(`meta`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:213](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L213) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `meta` | `Record`\<`string`, `unknown`\> | + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallState`](CallState.md).[`updateMeta`](CallState.md#updatemeta) diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/CallAddress.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/CallAddress.md new file mode 100644 index 000000000..02f51e72a --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/CallAddress.md @@ -0,0 +1,33 @@ +# Interface: CallAddress + +Defined in: [core/entities/types/call.types.ts:139](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L139) + +Minimal address interface for call context +Avoids circular dependency with full Address class + +## Properties + +| Property | Modifier | Type | Defined in | +| ------ | ------ | ------ | ------ | +| `displayName?` | `readonly` | `string` | [core/entities/types/call.types.ts:141](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L141) | +| `id` | `readonly` | `string` | [core/entities/types/call.types.ts:140](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L140) | +| `textMessages$` | `readonly` | `Observable`\<`CallTextMessageCollection` \| `undefined`\> | [core/entities/types/call.types.ts:144](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L144) | +| `type?` | `readonly` | `string` | [core/entities/types/call.types.ts:142](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L142) | + +## Methods + +### sendText() + +> **sendText**(`text`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:143](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L143) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `text` | `string` | + +#### Returns + +`Promise`\<`void`\> diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/CallCapabilitiesState.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/CallCapabilitiesState.md new file mode 100644 index 000000000..ef3b8df5f --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/CallCapabilitiesState.md @@ -0,0 +1,19 @@ +# Interface: CallCapabilitiesState + +Defined in: [core/capabilities/types.ts:30](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L30) + +Call-level capabilities state + +## Properties + +| Property | Modifier | Type | Defined in | +| ------ | ------ | ------ | ------ | +| `device` | `readonly` | `boolean` | [core/capabilities/types.ts:38](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L38) | +| `end` | `readonly` | `boolean` | [core/capabilities/types.ts:33](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L33) | +| `lock` | `readonly` | [`OnOffCapability`](OnOffCapability.md) | [core/capabilities/types.ts:37](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L37) | +| `member` | `readonly` | [`MemberCapabilities`](MemberCapabilities.md) | [core/capabilities/types.ts:32](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L32) | +| `screenshare` | `readonly` | `boolean` | [core/capabilities/types.ts:39](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L39) | +| `self` | `readonly` | [`MemberCapabilities`](MemberCapabilities.md) | [core/capabilities/types.ts:31](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L31) | +| `sendDigit` | `readonly` | `boolean` | [core/capabilities/types.ts:35](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L35) | +| `setLayout` | `readonly` | `boolean` | [core/capabilities/types.ts:34](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L34) | +| `vmutedHide` | `readonly` | [`OnOffCapability`](OnOffCapability.md) | [core/capabilities/types.ts:36](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L36) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/CallError.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/CallError.md new file mode 100644 index 000000000..6efe9ea2a --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/CallError.md @@ -0,0 +1,17 @@ +# Interface: CallError + +Defined in: [core/errors.ts:249](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L249) + +Structured error emitted on `call.errors$`. + +Provides actionable metadata so consumers can react without +resorting to `instanceof` checks on raw `Error` objects. + +## Properties + +| Property | Modifier | Type | Description | Defined in | +| ------ | ------ | ------ | ------ | ------ | +| `callId` | `readonly` | `string` | ID of the call that produced this error. | [core/errors.ts:261](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L261) | +| `error` | `readonly` | `Error` | The underlying error. | [core/errors.ts:259](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L259) | +| `fatal` | `readonly` | `boolean` | Whether the error terminates the call. When `true`, the call will automatically transition to `'failed'` and be destroyed — no further action is needed from the consumer. | [core/errors.ts:257](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L257) | +| `kind` | `readonly` | [`CallErrorKind`](../type-aliases/CallErrorKind.md) | Semantic category of the error. | [core/errors.ts:251](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L251) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/CallOptions.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/CallOptions.md new file mode 100644 index 000000000..ec1c15453 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/CallOptions.md @@ -0,0 +1,32 @@ +# Interface: CallOptions + +Defined in: [core/entities/types/call.types.ts:168](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L168) + +Configuration options for creating a call. + +## Extends + +- [`MediaOptions`](MediaOptions.md) + +## Properties + +| Property | Modifier | Type | Description | Inherited from | Defined in | +| ------ | ------ | ------ | ------ | ------ | ------ | +| `audio?` | `public` | `boolean` | Enable audio input. Defaults to `true` when not specified. | [`MediaOptions`](MediaOptions.md).[`audio`](MediaOptions.md#audio) | [core/types/media.types.ts:15](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L15) | +| `callId?` | `readonly` | `string` | Pre-assigned call ID (used for reattach). | - | [core/entities/types/call.types.ts:172](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L172) | +| `displayDirection?` | `readonly` | `string` | Direction hint for display purposes. | - | [core/entities/types/call.types.ts:186](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L186) | +| `from?` | `readonly` | `string` | Address URI of the caller. | - | [core/entities/types/call.types.ts:182](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L182) | +| `fromName?` | `readonly` | `string` | Display name of the caller. | - | [core/entities/types/call.types.ts:180](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L180) | +| `initOffer?` | `readonly` | `string` | SDP offer for inbound calls. | - | [core/entities/types/call.types.ts:176](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L176) | +| `inputAudioDeviceConstraints?` | `public` | `MediaTrackConstraints` | Custom constraints for the audio input track. | [`MediaOptions`](MediaOptions.md).[`inputAudioDeviceConstraints`](MediaOptions.md#inputaudiodeviceconstraints) | [core/types/media.types.ts:19](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L19) | +| `inputAudioStream?` | `public` | `MediaStream` | Pre-existing audio stream to use instead of `getUserMedia`. | [`MediaOptions`](MediaOptions.md).[`inputAudioStream`](MediaOptions.md#inputaudiostream) | [core/types/media.types.ts:23](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L23) | +| `inputVideoDeviceConstraints?` | `public` | `MediaTrackConstraints` | Custom constraints for the video input track. | [`MediaOptions`](MediaOptions.md).[`inputVideoDeviceConstraints`](MediaOptions.md#inputvideodeviceconstraints) | [core/types/media.types.ts:21](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L21) | +| `inputVideoStream?` | `public` | `MediaStream` | Pre-existing video stream to use instead of `getUserMedia`. | [`MediaOptions`](MediaOptions.md).[`inputVideoStream`](MediaOptions.md#inputvideostream) | [core/types/media.types.ts:25](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L25) | +| `nodeId?` | `readonly` | `string` | Target server node ID. | - | [core/entities/types/call.types.ts:170](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L170) | +| `reattach?` | `readonly` | `boolean` | Whether this call is being reattached after reconnect. | - | [core/entities/types/call.types.ts:178](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L178) | +| `receiveAudio?` | `public` | `boolean` | Whether to receive remote audio. | [`MediaOptions`](MediaOptions.md).[`receiveAudio`](MediaOptions.md#receiveaudio) | [core/types/media.types.ts:27](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L27) | +| `receiveVideo?` | `public` | `boolean` | Whether to receive remote video. | [`MediaOptions`](MediaOptions.md).[`receiveVideo`](MediaOptions.md#receivevideo) | [core/types/media.types.ts:29](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L29) | +| `to?` | `readonly` | `string` | Destination URI. | - | [core/entities/types/call.types.ts:174](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L174) | +| `toName?` | `readonly` | `string` | Display name of the callee. | - | [core/entities/types/call.types.ts:184](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L184) | +| `userVariables?` | `readonly` | `Record`\<`string`, `unknown`\> | Custom user variables sent with the call invite. | - | [core/entities/types/call.types.ts:188](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L188) | +| `video?` | `public` | `boolean` | Enable video input. Defaults to `false` when not specified. | [`MediaOptions`](MediaOptions.md).[`video`](MediaOptions.md#video) | [core/types/media.types.ts:17](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L17) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/CallParticipant.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/CallParticipant.md new file mode 100644 index 000000000..f8422dea9 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/CallParticipant.md @@ -0,0 +1,335 @@ +# Interface: CallParticipant + +Defined in: [core/entities/types/call.types.ts:33](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L33) + +Base participant interface for call participants +Defines the full public contract for participant objects exposed by Call + +## Extended by + +- [`CallSelfParticipant`](CallSelfParticipant.md) + +## Properties + +| Property | Modifier | Type | Defined in | +| ------ | ------ | ------ | ------ | +| `addressId` | `readonly` | `string` \| `undefined` | [core/entities/types/call.types.ts:77](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L77) | +| `addressId$` | `readonly` | `Observable`\<`string`\> | [core/entities/types/call.types.ts:54](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L54) | +| `audioMuted` | `readonly` | `boolean` | [core/entities/types/call.types.ts:64](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L64) | +| `audioMuted$` | `readonly` | `Observable`\<`boolean`\> | [core/entities/types/call.types.ts:41](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L41) | +| `autoGain` | `readonly` | `boolean` | [core/entities/types/call.types.ts:71](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L71) | +| `autoGain$` | `readonly` | `Observable`\<`boolean`\> | [core/entities/types/call.types.ts:48](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L48) | +| `deaf` | `readonly` | `boolean` | [core/entities/types/call.types.ts:66](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L66) | +| `deaf$` | `readonly` | `Observable`\<`boolean`\> | [core/entities/types/call.types.ts:43](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L43) | +| `denoise` | `readonly` | `boolean` | [core/entities/types/call.types.ts:74](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L74) | +| `denoise$` | `readonly` | `Observable`\<`boolean`\> | [core/entities/types/call.types.ts:51](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L51) | +| `echoCancellation` | `readonly` | `boolean` | [core/entities/types/call.types.ts:70](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L70) | +| `echoCancellation$` | `readonly` | `Observable`\<`boolean`\> | [core/entities/types/call.types.ts:47](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L47) | +| `handraised` | `readonly` | `boolean` | [core/entities/types/call.types.ts:62](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L62) | +| `handraised$` | `readonly` | `Observable`\<`boolean`\> | [core/entities/types/call.types.ts:39](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L39) | +| `id` | `readonly` | `string` | [core/entities/types/call.types.ts:34](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L34) | +| `inputSensitivity` | `readonly` | `number` \| `undefined` | [core/entities/types/call.types.ts:69](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L69) | +| `inputSensitivity$` | `readonly` | `Observable`\<`number`\> | [core/entities/types/call.types.ts:46](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L46) | +| `inputVolume` | `readonly` | `number` \| `undefined` | [core/entities/types/call.types.ts:67](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L67) | +| `inputVolume$` | `readonly` | `Observable`\<`number`\> | [core/entities/types/call.types.ts:44](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L44) | +| `isAudience` | `readonly` | `boolean` | [core/entities/types/call.types.ts:81](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L81) | +| `isTalking` | `readonly` | `boolean` | [core/entities/types/call.types.ts:79](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L79) | +| `isTalking$` | `readonly` | `Observable`\<`boolean`\> | [core/entities/types/call.types.ts:56](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L56) | +| `lowbitrate` | `readonly` | `boolean` | [core/entities/types/call.types.ts:73](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L73) | +| `lowbitrate$` | `readonly` | `Observable`\<`boolean`\> | [core/entities/types/call.types.ts:50](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L50) | +| `meta` | `readonly` | `Record`\<`string`, `unknown`\> \| `undefined` | [core/entities/types/call.types.ts:75](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L75) | +| `meta$` | `readonly` | `Observable`\<`Record`\<`string`, `unknown`\>\> | [core/entities/types/call.types.ts:52](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L52) | +| `name` | `readonly` | `string` \| `undefined` | [core/entities/types/call.types.ts:60](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L60) | +| `name$` | `readonly` | `Observable`\<`string`\> | [core/entities/types/call.types.ts:37](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L37) | +| `nodeId` | `readonly` | `string` \| `undefined` | [core/entities/types/call.types.ts:78](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L78) | +| `nodeId$` | `readonly` | `Observable`\<`string`\> | [core/entities/types/call.types.ts:55](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L55) | +| `noiseSuppression` | `readonly` | `boolean` | [core/entities/types/call.types.ts:72](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L72) | +| `noiseSuppression$` | `readonly` | `Observable`\<`boolean`\> | [core/entities/types/call.types.ts:49](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L49) | +| `outputVolume` | `readonly` | `number` \| `undefined` | [core/entities/types/call.types.ts:68](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L68) | +| `outputVolume$` | `readonly` | `Observable`\<`number`\> | [core/entities/types/call.types.ts:45](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L45) | +| `position` | `readonly` | [`LayoutLayer`](LayoutLayer.md) \| `undefined` | [core/entities/types/call.types.ts:80](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L80) | +| `position$` | `readonly` | `Observable`\<[`LayoutLayer`](LayoutLayer.md) \| `undefined`\> | [core/entities/types/call.types.ts:57](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L57) | +| `subscriberId` | `readonly` | `string` \| `undefined` | [core/entities/types/call.types.ts:76](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L76) | +| `subscriberId$` | `readonly` | `Observable`\<`string`\> | [core/entities/types/call.types.ts:53](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L53) | +| `type` | `readonly` | `string` \| `undefined` | [core/entities/types/call.types.ts:61](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L61) | +| `type$` | `readonly` | `Observable`\<`string`\> | [core/entities/types/call.types.ts:38](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L38) | +| `videoMuted` | `readonly` | `boolean` | [core/entities/types/call.types.ts:65](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L65) | +| `videoMuted$` | `readonly` | `Observable`\<`boolean`\> | [core/entities/types/call.types.ts:42](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L42) | +| `visible` | `readonly` | `boolean` | [core/entities/types/call.types.ts:63](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L63) | +| `visible$` | `readonly` | `Observable`\<`boolean`\> | [core/entities/types/call.types.ts:40](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L40) | + +## Methods + +### end() + +> **end**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:101](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L101) + +#### Returns + +`Promise`\<`void`\> + +*** + +### mute() + +> **mute**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:86](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L86) + +#### Returns + +`Promise`\<`void`\> + +*** + +### muteVideo() + +> **muteVideo**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:89](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L89) + +#### Returns + +`Promise`\<`void`\> + +*** + +### remove() + +> **remove**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:100](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L100) + +#### Returns + +`Promise`\<`void`\> + +*** + +### setAudioInputSensitivity() + +> **setAudioInputSensitivity**(`value`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:96](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L96) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +#### Returns + +`Promise`\<`void`\> + +*** + +### setAudioInputVolume() + +> **setAudioInputVolume**(`value`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:97](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L97) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +#### Returns + +`Promise`\<`void`\> + +*** + +### setAudioOutputVolume() + +> **setAudioOutputVolume**(`value`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:98](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L98) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +#### Returns + +`Promise`\<`void`\> + +*** + +### setMeta() + +> **setMeta**(`meta`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:102](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L102) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `meta` | `Record`\<`string`, `unknown`\> | + +#### Returns + +`Promise`\<`void`\> + +*** + +### setPosition() + +> **setPosition**(`value`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:99](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L99) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | [`VideoPosition`](../type-aliases/VideoPosition.md) | + +#### Returns + +`Promise`\<`void`\> + +*** + +### toggleAudioInputAutoGain() + +> **toggleAudioInputAutoGain**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:93](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L93) + +#### Returns + +`Promise`\<`void`\> + +*** + +### toggleDeaf() + +> **toggleDeaf**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:84](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L84) + +#### Returns + +`Promise`\<`void`\> + +*** + +### toggleEchoCancellation() + +> **toggleEchoCancellation**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:92](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L92) + +#### Returns + +`Promise`\<`void`\> + +*** + +### toggleHandraise() + +> **toggleHandraise**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:85](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L85) + +#### Returns + +`Promise`\<`void`\> + +*** + +### toggleLowbitrate() + +> **toggleLowbitrate**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:95](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L95) + +#### Returns + +`Promise`\<`void`\> + +*** + +### toggleMute() + +> **toggleMute**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:88](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L88) + +#### Returns + +`Promise`\<`void`\> + +*** + +### toggleMuteVideo() + +> **toggleMuteVideo**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:91](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L91) + +#### Returns + +`Promise`\<`void`\> + +*** + +### toggleNoiseSuppression() + +> **toggleNoiseSuppression**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:94](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L94) + +#### Returns + +`Promise`\<`void`\> + +*** + +### unmute() + +> **unmute**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:87](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L87) + +#### Returns + +`Promise`\<`void`\> + +*** + +### unmuteVideo() + +> **unmuteVideo**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:90](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L90) + +#### Returns + +`Promise`\<`void`\> + +*** + +### updateMeta() + +> **updateMeta**(`meta`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:103](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L103) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `meta` | `Record`\<`string`, `unknown`\> | + +#### Returns + +`Promise`\<`void`\> diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/CallSelfParticipant.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/CallSelfParticipant.md new file mode 100644 index 000000000..8c189c474 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/CallSelfParticipant.md @@ -0,0 +1,495 @@ +# Interface: CallSelfParticipant + +Defined in: [core/entities/types/call.types.ts:110](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L110) + +Self participant interface with control methods +Extends CallParticipant with methods for controlling the local participant + +## Extends + +- [`CallParticipant`](CallParticipant.md) + +## Properties + +| Property | Modifier | Type | Inherited from | Defined in | +| ------ | ------ | ------ | ------ | ------ | +| `addressId` | `readonly` | `string` \| `undefined` | [`CallParticipant`](CallParticipant.md).[`addressId`](CallParticipant.md#addressid) | [core/entities/types/call.types.ts:77](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L77) | +| `addressId$` | `readonly` | `Observable`\<`string`\> | [`CallParticipant`](CallParticipant.md).[`addressId$`](CallParticipant.md#addressid-1) | [core/entities/types/call.types.ts:54](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L54) | +| `audioMuted` | `readonly` | `boolean` | [`CallParticipant`](CallParticipant.md).[`audioMuted`](CallParticipant.md#audiomuted) | [core/entities/types/call.types.ts:64](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L64) | +| `audioMuted$` | `readonly` | `Observable`\<`boolean`\> | [`CallParticipant`](CallParticipant.md).[`audioMuted$`](CallParticipant.md#audiomuted-1) | [core/entities/types/call.types.ts:41](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L41) | +| `autoGain` | `readonly` | `boolean` | [`CallParticipant`](CallParticipant.md).[`autoGain`](CallParticipant.md#autogain) | [core/entities/types/call.types.ts:71](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L71) | +| `autoGain$` | `readonly` | `Observable`\<`boolean`\> | [`CallParticipant`](CallParticipant.md).[`autoGain$`](CallParticipant.md#autogain-1) | [core/entities/types/call.types.ts:48](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L48) | +| `deaf` | `readonly` | `boolean` | [`CallParticipant`](CallParticipant.md).[`deaf`](CallParticipant.md#deaf) | [core/entities/types/call.types.ts:66](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L66) | +| `deaf$` | `readonly` | `Observable`\<`boolean`\> | [`CallParticipant`](CallParticipant.md).[`deaf$`](CallParticipant.md#deaf-1) | [core/entities/types/call.types.ts:43](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L43) | +| `denoise` | `readonly` | `boolean` | [`CallParticipant`](CallParticipant.md).[`denoise`](CallParticipant.md#denoise) | [core/entities/types/call.types.ts:74](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L74) | +| `denoise$` | `readonly` | `Observable`\<`boolean`\> | [`CallParticipant`](CallParticipant.md).[`denoise$`](CallParticipant.md#denoise-1) | [core/entities/types/call.types.ts:51](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L51) | +| `echoCancellation` | `readonly` | `boolean` | [`CallParticipant`](CallParticipant.md).[`echoCancellation`](CallParticipant.md#echocancellation) | [core/entities/types/call.types.ts:70](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L70) | +| `echoCancellation$` | `readonly` | `Observable`\<`boolean`\> | [`CallParticipant`](CallParticipant.md).[`echoCancellation$`](CallParticipant.md#echocancellation-1) | [core/entities/types/call.types.ts:47](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L47) | +| `handraised` | `readonly` | `boolean` | [`CallParticipant`](CallParticipant.md).[`handraised`](CallParticipant.md#handraised) | [core/entities/types/call.types.ts:62](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L62) | +| `handraised$` | `readonly` | `Observable`\<`boolean`\> | [`CallParticipant`](CallParticipant.md).[`handraised$`](CallParticipant.md#handraised-1) | [core/entities/types/call.types.ts:39](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L39) | +| `id` | `readonly` | `string` | [`CallParticipant`](CallParticipant.md).[`id`](CallParticipant.md#id) | [core/entities/types/call.types.ts:34](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L34) | +| `inputSensitivity` | `readonly` | `number` \| `undefined` | [`CallParticipant`](CallParticipant.md).[`inputSensitivity`](CallParticipant.md#inputsensitivity) | [core/entities/types/call.types.ts:69](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L69) | +| `inputSensitivity$` | `readonly` | `Observable`\<`number`\> | [`CallParticipant`](CallParticipant.md).[`inputSensitivity$`](CallParticipant.md#inputsensitivity-1) | [core/entities/types/call.types.ts:46](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L46) | +| `inputVolume` | `readonly` | `number` \| `undefined` | [`CallParticipant`](CallParticipant.md).[`inputVolume`](CallParticipant.md#inputvolume) | [core/entities/types/call.types.ts:67](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L67) | +| `inputVolume$` | `readonly` | `Observable`\<`number`\> | [`CallParticipant`](CallParticipant.md).[`inputVolume$`](CallParticipant.md#inputvolume-1) | [core/entities/types/call.types.ts:44](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L44) | +| `isAudience` | `readonly` | `boolean` | [`CallParticipant`](CallParticipant.md).[`isAudience`](CallParticipant.md#isaudience) | [core/entities/types/call.types.ts:81](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L81) | +| `isTalking` | `readonly` | `boolean` | [`CallParticipant`](CallParticipant.md).[`isTalking`](CallParticipant.md#istalking) | [core/entities/types/call.types.ts:79](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L79) | +| `isTalking$` | `readonly` | `Observable`\<`boolean`\> | [`CallParticipant`](CallParticipant.md).[`isTalking$`](CallParticipant.md#istalking-1) | [core/entities/types/call.types.ts:56](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L56) | +| `lowbitrate` | `readonly` | `boolean` | [`CallParticipant`](CallParticipant.md).[`lowbitrate`](CallParticipant.md#lowbitrate) | [core/entities/types/call.types.ts:73](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L73) | +| `lowbitrate$` | `readonly` | `Observable`\<`boolean`\> | [`CallParticipant`](CallParticipant.md).[`lowbitrate$`](CallParticipant.md#lowbitrate-1) | [core/entities/types/call.types.ts:50](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L50) | +| `meta` | `readonly` | `Record`\<`string`, `unknown`\> \| `undefined` | [`CallParticipant`](CallParticipant.md).[`meta`](CallParticipant.md#meta) | [core/entities/types/call.types.ts:75](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L75) | +| `meta$` | `readonly` | `Observable`\<`Record`\<`string`, `unknown`\>\> | [`CallParticipant`](CallParticipant.md).[`meta$`](CallParticipant.md#meta-1) | [core/entities/types/call.types.ts:52](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L52) | +| `name` | `readonly` | `string` \| `undefined` | [`CallParticipant`](CallParticipant.md).[`name`](CallParticipant.md#name) | [core/entities/types/call.types.ts:60](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L60) | +| `name$` | `readonly` | `Observable`\<`string`\> | [`CallParticipant`](CallParticipant.md).[`name$`](CallParticipant.md#name-1) | [core/entities/types/call.types.ts:37](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L37) | +| `nodeId` | `readonly` | `string` \| `undefined` | [`CallParticipant`](CallParticipant.md).[`nodeId`](CallParticipant.md#nodeid) | [core/entities/types/call.types.ts:78](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L78) | +| `nodeId$` | `readonly` | `Observable`\<`string`\> | [`CallParticipant`](CallParticipant.md).[`nodeId$`](CallParticipant.md#nodeid-1) | [core/entities/types/call.types.ts:55](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L55) | +| `noiseSuppression` | `readonly` | `boolean` | [`CallParticipant`](CallParticipant.md).[`noiseSuppression`](CallParticipant.md#noisesuppression) | [core/entities/types/call.types.ts:72](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L72) | +| `noiseSuppression$` | `readonly` | `Observable`\<`boolean`\> | [`CallParticipant`](CallParticipant.md).[`noiseSuppression$`](CallParticipant.md#noisesuppression-1) | [core/entities/types/call.types.ts:49](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L49) | +| `outputVolume` | `readonly` | `number` \| `undefined` | [`CallParticipant`](CallParticipant.md).[`outputVolume`](CallParticipant.md#outputvolume) | [core/entities/types/call.types.ts:68](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L68) | +| `outputVolume$` | `readonly` | `Observable`\<`number`\> | [`CallParticipant`](CallParticipant.md).[`outputVolume$`](CallParticipant.md#outputvolume-1) | [core/entities/types/call.types.ts:45](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L45) | +| `position` | `readonly` | [`LayoutLayer`](LayoutLayer.md) \| `undefined` | [`CallParticipant`](CallParticipant.md).[`position`](CallParticipant.md#position) | [core/entities/types/call.types.ts:80](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L80) | +| `position$` | `readonly` | `Observable`\<[`LayoutLayer`](LayoutLayer.md) \| `undefined`\> | [`CallParticipant`](CallParticipant.md).[`position$`](CallParticipant.md#position-1) | [core/entities/types/call.types.ts:57](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L57) | +| `screenShareStatus` | `readonly` | `string` | - | [core/entities/types/call.types.ts:112](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L112) | +| `screenShareStatus$` | `readonly` | `Observable`\<`string`\> | - | [core/entities/types/call.types.ts:111](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L111) | +| `subscriberId` | `readonly` | `string` \| `undefined` | [`CallParticipant`](CallParticipant.md).[`subscriberId`](CallParticipant.md#subscriberid) | [core/entities/types/call.types.ts:76](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L76) | +| `subscriberId$` | `readonly` | `Observable`\<`string`\> | [`CallParticipant`](CallParticipant.md).[`subscriberId$`](CallParticipant.md#subscriberid-1) | [core/entities/types/call.types.ts:53](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L53) | +| `type` | `readonly` | `string` \| `undefined` | [`CallParticipant`](CallParticipant.md).[`type`](CallParticipant.md#type) | [core/entities/types/call.types.ts:61](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L61) | +| `type$` | `readonly` | `Observable`\<`string`\> | [`CallParticipant`](CallParticipant.md).[`type$`](CallParticipant.md#type-1) | [core/entities/types/call.types.ts:38](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L38) | +| `videoMuted` | `readonly` | `boolean` | [`CallParticipant`](CallParticipant.md).[`videoMuted`](CallParticipant.md#videomuted) | [core/entities/types/call.types.ts:65](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L65) | +| `videoMuted$` | `readonly` | `Observable`\<`boolean`\> | [`CallParticipant`](CallParticipant.md).[`videoMuted$`](CallParticipant.md#videomuted-1) | [core/entities/types/call.types.ts:42](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L42) | +| `visible` | `readonly` | `boolean` | [`CallParticipant`](CallParticipant.md).[`visible`](CallParticipant.md#visible) | [core/entities/types/call.types.ts:63](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L63) | +| `visible$` | `readonly` | `Observable`\<`boolean`\> | [`CallParticipant`](CallParticipant.md).[`visible$`](CallParticipant.md#visible-1) | [core/entities/types/call.types.ts:40](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L40) | + +## Methods + +### end() + +> **end**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:101](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L101) + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`end`](CallParticipant.md#end) + +*** + +### mute() + +> **mute**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:86](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L86) + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`mute`](CallParticipant.md#mute) + +*** + +### muteVideo() + +> **muteVideo**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:89](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L89) + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`muteVideo`](CallParticipant.md#mutevideo) + +*** + +### remove() + +> **remove**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:100](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L100) + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`remove`](CallParticipant.md#remove) + +*** + +### selectAudioInputDevice() + +> **selectAudioInputDevice**(`device`): `void` + +Defined in: [core/entities/types/call.types.ts:117](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L117) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `device` | `MediaDeviceInfo` | + +#### Returns + +`void` + +*** + +### selectAudioOutputDevice() + +> **selectAudioOutputDevice**(`device`): `void` + +Defined in: [core/entities/types/call.types.ts:119](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L119) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `device` | `MediaDeviceInfo` | + +#### Returns + +`void` + +*** + +### selectVideoInputDevice() + +> **selectVideoInputDevice**(`device`): `void` + +Defined in: [core/entities/types/call.types.ts:118](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L118) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `device` | `MediaDeviceInfo` | + +#### Returns + +`void` + +*** + +### setAudioInputSensitivity() + +> **setAudioInputSensitivity**(`value`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:96](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L96) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`setAudioInputSensitivity`](CallParticipant.md#setaudioinputsensitivity) + +*** + +### setAudioInputVolume() + +> **setAudioInputVolume**(`value`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:97](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L97) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`setAudioInputVolume`](CallParticipant.md#setaudioinputvolume) + +*** + +### setAudioOutputVolume() + +> **setAudioOutputVolume**(`value`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:98](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L98) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`setAudioOutputVolume`](CallParticipant.md#setaudiooutputvolume) + +*** + +### setMeta() + +> **setMeta**(`meta`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:102](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L102) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `meta` | `Record`\<`string`, `unknown`\> | + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`setMeta`](CallParticipant.md#setmeta) + +*** + +### setPosition() + +> **setPosition**(`value`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:99](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L99) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | [`VideoPosition`](../type-aliases/VideoPosition.md) | + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`setPosition`](CallParticipant.md#setposition) + +*** + +### startScreenShare() + +> **startScreenShare**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:115](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L115) + +#### Returns + +`Promise`\<`void`\> + +*** + +### stopScreenShare() + +> **stopScreenShare**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:116](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L116) + +#### Returns + +`Promise`\<`void`\> + +*** + +### toggleAudioInputAutoGain() + +> **toggleAudioInputAutoGain**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:93](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L93) + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`toggleAudioInputAutoGain`](CallParticipant.md#toggleaudioinputautogain) + +*** + +### toggleDeaf() + +> **toggleDeaf**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:84](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L84) + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`toggleDeaf`](CallParticipant.md#toggledeaf) + +*** + +### toggleEchoCancellation() + +> **toggleEchoCancellation**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:92](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L92) + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`toggleEchoCancellation`](CallParticipant.md#toggleechocancellation) + +*** + +### toggleHandraise() + +> **toggleHandraise**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:85](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L85) + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`toggleHandraise`](CallParticipant.md#togglehandraise) + +*** + +### toggleLowbitrate() + +> **toggleLowbitrate**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:95](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L95) + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`toggleLowbitrate`](CallParticipant.md#togglelowbitrate) + +*** + +### toggleMute() + +> **toggleMute**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:88](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L88) + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`toggleMute`](CallParticipant.md#togglemute) + +*** + +### toggleMuteVideo() + +> **toggleMuteVideo**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:91](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L91) + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`toggleMuteVideo`](CallParticipant.md#togglemutevideo) + +*** + +### toggleNoiseSuppression() + +> **toggleNoiseSuppression**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:94](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L94) + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`toggleNoiseSuppression`](CallParticipant.md#togglenoisesuppression) + +*** + +### unmute() + +> **unmute**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:87](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L87) + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`unmute`](CallParticipant.md#unmute) + +*** + +### unmuteVideo() + +> **unmuteVideo**(): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:90](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L90) + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`unmuteVideo`](CallParticipant.md#unmutevideo) + +*** + +### updateMeta() + +> **updateMeta**(`meta`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:103](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L103) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `meta` | `Record`\<`string`, `unknown`\> | + +#### Returns + +`Promise`\<`void`\> + +#### Inherited from + +[`CallParticipant`](CallParticipant.md).[`updateMeta`](CallParticipant.md#updatemeta) diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/CallState.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/CallState.md new file mode 100644 index 000000000..0e36cc414 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/CallState.md @@ -0,0 +1,65 @@ +# Interface: CallState + +Defined in: [core/entities/types/call.types.ts:196](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L196) + +Observable state of a call (status, recording, participants, etc.). + +## Extended by + +- [`Call`](Call.md) + +## Properties + +| Property | Modifier | Type | Defined in | +| ------ | ------ | ------ | ------ | +| `id` | `readonly` | `string` | [core/entities/types/call.types.ts:197](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L197) | +| `locked` | `readonly` | `boolean` | [core/entities/types/call.types.ts:207](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L207) | +| `locked$` | `readonly` | `Observable`\<`boolean`\> | [core/entities/types/call.types.ts:206](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L206) | +| `meta` | `readonly` | `Record`\<`string`, `unknown`\> | [core/entities/types/call.types.ts:209](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L209) | +| `meta$` | `readonly` | `Observable`\<`Record`\<`string`, `unknown`\>\> | [core/entities/types/call.types.ts:208](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L208) | +| `participants` | `readonly` | [`CallParticipant`](CallParticipant.md)[] | [core/entities/types/call.types.ts:211](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L211) | +| `participants$` | `readonly` | `Observable`\<[`CallParticipant`](CallParticipant.md)[]\> | [core/entities/types/call.types.ts:210](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L210) | +| `raiseHandPriority` | `readonly` | `boolean` | [core/entities/types/call.types.ts:205](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L205) | +| `raiseHandPriority$` | `readonly` | `Observable`\<`boolean`\> | [core/entities/types/call.types.ts:204](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L204) | +| `recording` | `readonly` | `boolean` | [core/entities/types/call.types.ts:201](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L201) | +| `recording$` | `readonly` | `Observable`\<`boolean`\> | [core/entities/types/call.types.ts:200](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L200) | +| `status` | `readonly` | [`CallStatus`](../type-aliases/CallStatus.md) | [core/entities/types/call.types.ts:199](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L199) | +| `status$` | `readonly` | `Observable`\<[`CallStatus`](../type-aliases/CallStatus.md)\> | [core/entities/types/call.types.ts:198](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L198) | +| `streaming` | `readonly` | `boolean` | [core/entities/types/call.types.ts:203](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L203) | +| `streaming$` | `readonly` | `Observable`\<`boolean`\> | [core/entities/types/call.types.ts:202](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L202) | + +## Methods + +### setMeta() + +> **setMeta**(`meta`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:212](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L212) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `meta` | `Record`\<`string`, `unknown`\> | + +#### Returns + +`Promise`\<`void`\> + +*** + +### updateMeta() + +> **updateMeta**(`meta`): `Promise`\<`void`\> + +Defined in: [core/entities/types/call.types.ts:213](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L213) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `meta` | `Record`\<`string`, `unknown`\> | + +#### Returns + +`Promise`\<`void`\> diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/CredentialProvider.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/CredentialProvider.md new file mode 100644 index 000000000..880c88055 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/CredentialProvider.md @@ -0,0 +1,50 @@ +# Interface: CredentialProvider + +Defined in: [dependencies/interfaces.ts:45](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L45) + +Provides authentication credentials to the SDK. + +Implementors are responsible for: +- Obtaining credentials (e.g. via API calls, user login flows, or third-party auth services). +- Returning a valid [SDKCredential](SDKCredential.md) with either a `token` or `authorizationState`. +- Setting `expiry_at` when the credential has a known expiration so the SDK can schedule refresh. +- Handling errors and never leaking sensitive data through error messages. + +The SDK owns the credential lifecycle: it calls `authenticate` once during initialization +and, if `refresh` is provided and `expiry_at` is set, schedules automatic refresh before expiry. + +## Properties + +| Property | Type | Description | Defined in | +| ------ | ------ | ------ | ------ | +| `refresh?` | () => `Promise`\<[`SDKCredential`](SDKCredential.md)\> | Obtains fresh credentials before the current ones expire. Optional. Implementor responsibilities: - Resolve with a new [SDKCredential](SDKCredential.md) containing an updated `token` (or `authorizationState`) and `expiry_at`. - Reject (throw) if refresh is not possible — the SDK will stop the refresh schedule. SDK behavior: - Only called when `expiry_at` was set on the previous credential. - Scheduled automatically before expiry; implementors do not need to manage timing. - On rejection, the refresh schedule stops and the session continues with the current credentials until they expire. - When not provided and the SAT includes a `sat:refresh` scope, the SDK automatically refreshes via Client Bound SAT (DPoP) without developer intervention. - When not provided and no refresh scope is present, the SDK uses the initial credentials for the entire session lifetime. | [dependencies/interfaces.ts:78](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L78) | + +## Methods + +### authenticate() + +> **authenticate**(`context?`): `Promise`\<[`SDKCredential`](SDKCredential.md)\> + +Defined in: [dependencies/interfaces.ts:59](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L59) + +Obtains the initial credentials. Called once during client initialization. + +Implementor responsibilities: +- Resolve with a valid [SDKCredential](SDKCredential.md) on success. +- Reject (throw) on failure — this will cause client initialization to fail. +- When `context.fingerprint` is provided, forward it to the server-side token + endpoint with `scope: "sat:refresh"` to enable automatic token refresh. + +SDK behavior: +- Awaits this method before establishing the WebSocket connection. +- On rejection, propagates the error to the caller of `SignalWire()`. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `context?` | [`AuthenticateContext`](AuthenticateContext.md) | + +#### Returns + +`Promise`\<[`SDKCredential`](SDKCredential.md)\> diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/DeviceController.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/DeviceController.md new file mode 100644 index 000000000..05f935190 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/DeviceController.md @@ -0,0 +1,180 @@ +# Interface: DeviceController + +Defined in: [interfaces/DeviceController.ts:9](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L9) + +Interface for media device management. + +Provides reactive access to available media devices, device selection, +and monitoring for device changes (connect/disconnect). + +## Properties + +| Property | Modifier | Type | Description | Defined in | +| ------ | ------ | ------ | ------ | ------ | +| `audioInputDevices` | `readonly` | `MediaDeviceInfo`[] | Current snapshot of available audio input devices. | [interfaces/DeviceController.ts:32](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L32) | +| `audioInputDevices$` | `readonly` | `Observable`\<`MediaDeviceInfo`[]\> | Observable list of available audio input (microphone) devices. | [interfaces/DeviceController.ts:11](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L11) | +| `audioOutputDevices` | `readonly` | `MediaDeviceInfo`[] | Current snapshot of available audio output devices. | [interfaces/DeviceController.ts:34](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L34) | +| `audioOutputDevices$` | `readonly` | `Observable`\<`MediaDeviceInfo`[]\> | Observable list of available audio output (speaker) devices. | [interfaces/DeviceController.ts:13](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L13) | +| `errors$` | `readonly` | `Observable`\<`Error`\> | Observable stream of errors from device enumeration and monitoring. | [interfaces/DeviceController.ts:80](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L80) | +| `selectedAudioInputDevice` | `readonly` | `MediaDeviceInfo` \| `null` | Currently selected audio input device, or `null` if none. | [interfaces/DeviceController.ts:25](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L25) | +| `selectedAudioInputDevice$` | `readonly` | `Observable`\<`MediaDeviceInfo` \| `null`\> | Observable of the currently selected audio input device, or `null` if none. | [interfaces/DeviceController.ts:18](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L18) | +| `selectedAudioInputDeviceConstraints` | `readonly` | `MediaTrackConstraints` | Media track constraints for the selected audio input device. | [interfaces/DeviceController.ts:39](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L39) | +| `selectedAudioOutputDevice` | `readonly` | `MediaDeviceInfo` \| `null` | Currently selected audio output device, or `null` if none. | [interfaces/DeviceController.ts:27](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L27) | +| `selectedAudioOutputDevice$` | `readonly` | `Observable`\<`MediaDeviceInfo` \| `null`\> | Observable of the currently selected audio output device, or `null` if none. | [interfaces/DeviceController.ts:20](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L20) | +| `selectedVideoInputDevice` | `readonly` | `MediaDeviceInfo` \| `null` | Currently selected video input device, or `null` if none. | [interfaces/DeviceController.ts:29](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L29) | +| `selectedVideoInputDevice$` | `readonly` | `Observable`\<`MediaDeviceInfo` \| `null`\> | Observable of the currently selected video input device, or `null` if none. | [interfaces/DeviceController.ts:22](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L22) | +| `selectedVideoInputDeviceConstraints` | `readonly` | `MediaTrackConstraints` | Media track constraints for the selected video input device. | [interfaces/DeviceController.ts:41](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L41) | +| `videoInputDevices` | `readonly` | `MediaDeviceInfo`[] | Current snapshot of available video input devices. | [interfaces/DeviceController.ts:36](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L36) | +| `videoInputDevices$` | `readonly` | `Observable`\<`MediaDeviceInfo`[]\> | Observable list of available video input (camera) devices. | [interfaces/DeviceController.ts:15](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L15) | + +## Methods + +### deviceInfoToConstraints() + +> **deviceInfoToConstraints**(`deviceInfo`): `MediaTrackConstraints` + +Defined in: [interfaces/DeviceController.ts:47](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L47) + +Converts a MediaDeviceInfo to track constraints suitable for `getUserMedia`. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `deviceInfo` | `MediaDeviceInfo` \| `null` | The device to convert, or `null` for default constraints. | + +#### Returns + +`MediaTrackConstraints` + +*** + +### disableDeviceMonitoring() + +> **disableDeviceMonitoring**(): `void` + +Defined in: [interfaces/DeviceController.ts:66](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L66) + +Stops monitoring for media device changes. + +#### Returns + +`void` + +*** + +### enableDeviceMonitoring() + +> **enableDeviceMonitoring**(): `void` + +Defined in: [interfaces/DeviceController.ts:64](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L64) + +Starts monitoring for media device changes (connect/disconnect). + +#### Returns + +`void` + +*** + +### getDeviceCapabilities() + +> **getDeviceCapabilities**(`deviceInfo`): `Promise`\<`MediaTrackCapabilities` \| `null`\> + +Defined in: [interfaces/DeviceController.ts:72](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L72) + +Returns the capabilities of a media device. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `deviceInfo` | `MediaDeviceInfo` | The device to query. | + +#### Returns + +`Promise`\<`MediaTrackCapabilities` \| `null`\> + +The device capabilities, or `null` if unavailable. + +*** + +### isValidDevice() + +> **isValidDevice**(`deviceInfo`): `Promise`\<`boolean`\> + +Defined in: [interfaces/DeviceController.ts:78](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L78) + +Checks whether a device is still available and usable. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `deviceInfo` | `MediaDeviceInfo` \| `null` | The device to validate, or `null`. | + +#### Returns + +`Promise`\<`boolean`\> + +`true` if the device is valid and available. Returns `false` for `null`, audio output devices, or unavailable devices. + +*** + +### selectAudioInputDevice() + +> **selectAudioInputDevice**(`device`): `void` + +Defined in: [interfaces/DeviceController.ts:52](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L52) + +Sets the preferred audio input device for future calls. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `device` | `MediaDeviceInfo` \| `null` | The device to select, or `null` to use the system default. | + +#### Returns + +`void` + +*** + +### selectAudioOutputDevice() + +> **selectAudioOutputDevice**(`device`): `void` + +Defined in: [interfaces/DeviceController.ts:62](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L62) + +Sets the preferred audio output device for future calls. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `device` | `MediaDeviceInfo` \| `null` | The device to select, or `null` to use the system default. | + +#### Returns + +`void` + +*** + +### selectVideoInputDevice() + +> **selectVideoInputDevice**(`device`): `void` + +Defined in: [interfaces/DeviceController.ts:57](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/DeviceController.ts#L57) + +Sets the preferred video input device for future calls. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `device` | `MediaDeviceInfo` \| `null` | The device to select, or `null` to use the system default. | + +#### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/DialOptions.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/DialOptions.md new file mode 100644 index 000000000..ee145a0ca --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/DialOptions.md @@ -0,0 +1,22 @@ +# Interface: DialOptions + +Defined in: [clients/SignalWire.ts:59](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L59) + +Options for [SignalWire.dial](../classes/SignalWire.md#dial). Extends [MediaOptions](MediaOptions.md) with dial-specific settings. + +## Extends + +- [`MediaOptions`](MediaOptions.md) + +## Properties + +| Property | Type | Description | Inherited from | Defined in | +| ------ | ------ | ------ | ------ | ------ | +| `audio?` | `boolean` | Enable audio input. Defaults to `true` when not specified. | [`MediaOptions`](MediaOptions.md).[`audio`](MediaOptions.md#audio) | [core/types/media.types.ts:15](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L15) | +| `inputAudioDeviceConstraints?` | `MediaTrackConstraints` | Custom constraints for the audio input track. | [`MediaOptions`](MediaOptions.md).[`inputAudioDeviceConstraints`](MediaOptions.md#inputaudiodeviceconstraints) | [core/types/media.types.ts:19](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L19) | +| `inputAudioStream?` | `MediaStream` | Pre-existing audio stream to use instead of `getUserMedia`. | [`MediaOptions`](MediaOptions.md).[`inputAudioStream`](MediaOptions.md#inputaudiostream) | [core/types/media.types.ts:23](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L23) | +| `inputVideoDeviceConstraints?` | `MediaTrackConstraints` | Custom constraints for the video input track. | [`MediaOptions`](MediaOptions.md).[`inputVideoDeviceConstraints`](MediaOptions.md#inputvideodeviceconstraints) | [core/types/media.types.ts:21](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L21) | +| `inputVideoStream?` | `MediaStream` | Pre-existing video stream to use instead of `getUserMedia`. | [`MediaOptions`](MediaOptions.md).[`inputVideoStream`](MediaOptions.md#inputvideostream) | [core/types/media.types.ts:25](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L25) | +| `receiveAudio?` | `boolean` | Whether to receive remote audio. | [`MediaOptions`](MediaOptions.md).[`receiveAudio`](MediaOptions.md#receiveaudio) | [core/types/media.types.ts:27](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L27) | +| `receiveVideo?` | `boolean` | Whether to receive remote video. | [`MediaOptions`](MediaOptions.md).[`receiveVideo`](MediaOptions.md#receivevideo) | [core/types/media.types.ts:29](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L29) | +| `video?` | `boolean` | Enable video input. Defaults to `false` when not specified. | [`MediaOptions`](MediaOptions.md).[`video`](MediaOptions.md#video) | [core/types/media.types.ts:17](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L17) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/Directory.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/Directory.md new file mode 100644 index 000000000..da3917b2c --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/Directory.md @@ -0,0 +1,107 @@ +# Interface: Directory + +Defined in: [core/entities/Directory.ts:13](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Directory.ts#L13) + +Directory interface for managing addresses + +This is the public API contract for address directory functionality. +It provides access to addresses, loading capabilities, and search functionality. + +## Extends + +- `AddressProvider`\<[`Address`](../classes/Address.md)\> + +## Properties + +| Property | Modifier | Type | Description | Defined in | +| ------ | ------ | ------ | ------ | ------ | +| `addresses` | `readonly` | [`Address`](../classes/Address.md)[] | Current snapshot of all addresses in the directory | [core/entities/Directory.ts:23](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Directory.ts#L23) | +| `addresses$` | `readonly` | `Observable`\<[`Address`](../classes/Address.md)[]\> | Observable stream of all addresses in the directory Emits a new array whenever addresses are added, removed, or updated | [core/entities/Directory.ts:18](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Directory.ts#L18) | +| `hasMore$` | `readonly` | `Observable`\<`boolean`\> | Observable indicating whether more addresses can be loaded from the server | [core/entities/Directory.ts:28](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Directory.ts#L28) | +| `loading` | `readonly` | `boolean` | - | [core/entities/Directory.ts:36](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Directory.ts#L36) | +| `loading$` | `readonly` | `Observable`\<`boolean`\> | Observable indicating the current loading state Emits `true` when loading, `false` when idle | [core/entities/Directory.ts:34](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Directory.ts#L34) | + +## Methods + +### findAddressIdByURI() + +> **findAddressIdByURI**(`uri`): `Promise`\<`string` \| `undefined`\> + +Defined in: [core/entities/Directory.ts:58](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Directory.ts#L58) + +Find an address ID by searching for a name + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `uri` | `string` | The address name to search for | + +#### Returns + +`Promise`\<`string` \| `undefined`\> + +Promise resolving to the address ID, or undefined if not found + +*** + +### get() + +> **get**(`addressId`): [`Address`](../classes/Address.md) \| `undefined` + +Defined in: [core/entities/Directory.ts:50](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Directory.ts#L50) + +Get a specific address by ID + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `addressId` | `string` | The address ID to retrieve | + +#### Returns + +[`Address`](../classes/Address.md) \| `undefined` + +The address instance, or undefined if not found + +*** + +### get$() + +> **get$**(`id`): `Observable`\<[`Address`](../classes/Address.md)\> \| `undefined` + +Defined in: [interfaces/AddressProvider.ts:22](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/AddressProvider.ts#L22) + +Get an observable stream for a specific address by ID + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `id` | `string` | The address ID to retrieve | + +#### Returns + +`Observable`\<[`Address`](../classes/Address.md)\> \| `undefined` + +Observable of the address, or undefined if not found + +#### Inherited from + +`AddressProvider.get$` + +*** + +### loadMore() + +> **loadMore**(): `void` + +Defined in: [core/entities/Directory.ts:42](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Directory.ts#L42) + +Load more addresses from the server +Only loads if `hasMore` is true + +#### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/JSONRPCErrorResponse.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/JSONRPCErrorResponse.md new file mode 100644 index 000000000..b70d762ab --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/JSONRPCErrorResponse.md @@ -0,0 +1,12 @@ +# Interface: JSONRPCErrorResponse + +Defined in: [core/RPCMessages/types/base.ts:40](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/base.ts#L40) + +## Properties + +| Property | Type | Defined in | +| ------ | ------ | ------ | +| `error?` | `TError` | [core/RPCMessages/types/base.ts:44](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/base.ts#L44) | +| `id` | `string` | [core/RPCMessages/types/base.ts:42](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/base.ts#L42) | +| `jsonrpc` | `"2.0"` | [core/RPCMessages/types/base.ts:41](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/base.ts#L41) | +| `result?` | `TError` | [core/RPCMessages/types/base.ts:43](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/base.ts#L43) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/JSONRPCRequest.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/JSONRPCRequest.md new file mode 100644 index 000000000..3965c78b4 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/JSONRPCRequest.md @@ -0,0 +1,18 @@ +# Interface: JSONRPCRequest\ + +Defined in: [core/RPCMessages/types/base.ts:21](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/base.ts#L21) + +## Type Parameters + +| Type Parameter | Default type | +| ------ | ------ | +| `TParams` | `unknown` | + +## Properties + +| Property | Type | Defined in | +| ------ | ------ | ------ | +| `id` | `string` | [core/RPCMessages/types/base.ts:23](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/base.ts#L23) | +| `jsonrpc` | `"2.0"` | [core/RPCMessages/types/base.ts:22](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/base.ts#L22) | +| `method` | `string` | [core/RPCMessages/types/base.ts:24](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/base.ts#L24) | +| `params?` | `TParams` | [core/RPCMessages/types/base.ts:25](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/base.ts#L25) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/JSONRPCSuccessResponse.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/JSONRPCSuccessResponse.md new file mode 100644 index 000000000..2b8efc6b4 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/JSONRPCSuccessResponse.md @@ -0,0 +1,18 @@ +# Interface: JSONRPCSuccessResponse\ + +Defined in: [core/RPCMessages/types/base.ts:28](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/base.ts#L28) + +## Type Parameters + +| Type Parameter | Default type | +| ------ | ------ | +| `TResult` | `unknown` | + +## Properties + +| Property | Type | Defined in | +| ------ | ------ | ------ | +| `error?` | `undefined` | [core/RPCMessages/types/base.ts:32](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/base.ts#L32) | +| `id` | `string` | [core/RPCMessages/types/base.ts:30](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/base.ts#L30) | +| `jsonrpc` | `"2.0"` | [core/RPCMessages/types/base.ts:29](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/base.ts#L29) | +| `result` | `TResult` | [core/RPCMessages/types/base.ts:31](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/base.ts#L31) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/LayoutLayer.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/LayoutLayer.md new file mode 100644 index 000000000..263675662 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/LayoutLayer.md @@ -0,0 +1,19 @@ +# Interface: LayoutLayer + +Defined in: [core/RPCMessages/types/common.ts:108](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/common.ts#L108) + +## Properties + +| Property | Type | Defined in | +| ------ | ------ | ------ | +| `height` | `number` | [core/RPCMessages/types/common.ts:119](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/common.ts#L119) | +| `layer_index` | `number` | [core/RPCMessages/types/common.ts:109](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/common.ts#L109) | +| `member_id?` | `string` | [core/RPCMessages/types/common.ts:111](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/common.ts#L111) | +| `playing_file` | `boolean` | [core/RPCMessages/types/common.ts:112](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/common.ts#L112) | +| `position` | [`VideoPosition`](../type-aliases/VideoPosition.md) | [core/RPCMessages/types/common.ts:113](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/common.ts#L113) | +| `reservation` | `string` | [core/RPCMessages/types/common.ts:114](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/common.ts#L114) | +| `visible` | `boolean` | [core/RPCMessages/types/common.ts:115](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/common.ts#L115) | +| `width` | `number` | [core/RPCMessages/types/common.ts:118](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/common.ts#L118) | +| `x` | `number` | [core/RPCMessages/types/common.ts:116](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/common.ts#L116) | +| `y` | `number` | [core/RPCMessages/types/common.ts:117](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/common.ts#L117) | +| `z_index` | `number` | [core/RPCMessages/types/common.ts:110](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/common.ts#L110) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/MediaDirections.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/MediaDirections.md new file mode 100644 index 000000000..bf568c5d7 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/MediaDirections.md @@ -0,0 +1,12 @@ +# Interface: MediaDirections + +Defined in: [core/types/media.types.ts:5](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L5) + +Audio and video directions "inactive" | "recvonly" | "sendonly" | "sendrecv" | "stopped" + +## Properties + +| Property | Type | Description | Defined in | +| ------ | ------ | ------ | ------ | +| `audio` | `RTCRtpTransceiverDirection` | Audio direction | [core/types/media.types.ts:7](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L7) | +| `video` | `RTCRtpTransceiverDirection` | Video direction | [core/types/media.types.ts:9](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L9) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/MediaOptions.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/MediaOptions.md new file mode 100644 index 000000000..316393145 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/MediaOptions.md @@ -0,0 +1,23 @@ +# Interface: MediaOptions + +Defined in: [core/types/media.types.ts:13](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L13) + +Options controlling which media tracks to send and receive. + +## Extended by + +- [`DialOptions`](DialOptions.md) +- [`CallOptions`](CallOptions.md) + +## Properties + +| Property | Type | Description | Defined in | +| ------ | ------ | ------ | ------ | +| `audio?` | `boolean` | Enable audio input. Defaults to `true` when not specified. | [core/types/media.types.ts:15](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L15) | +| `inputAudioDeviceConstraints?` | `MediaTrackConstraints` | Custom constraints for the audio input track. | [core/types/media.types.ts:19](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L19) | +| `inputAudioStream?` | `MediaStream` | Pre-existing audio stream to use instead of `getUserMedia`. | [core/types/media.types.ts:23](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L23) | +| `inputVideoDeviceConstraints?` | `MediaTrackConstraints` | Custom constraints for the video input track. | [core/types/media.types.ts:21](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L21) | +| `inputVideoStream?` | `MediaStream` | Pre-existing video stream to use instead of `getUserMedia`. | [core/types/media.types.ts:25](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L25) | +| `receiveAudio?` | `boolean` | Whether to receive remote audio. | [core/types/media.types.ts:27](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L27) | +| `receiveVideo?` | `boolean` | Whether to receive remote video. | [core/types/media.types.ts:29](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L29) | +| `video?` | `boolean` | Enable video input. Defaults to `false` when not specified. | [core/types/media.types.ts:17](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L17) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/MemberCapabilities.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/MemberCapabilities.md new file mode 100644 index 000000000..f22bdfb5a --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/MemberCapabilities.md @@ -0,0 +1,21 @@ +# Interface: MemberCapabilities + +Defined in: [core/capabilities/types.ts:13](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L13) + +Member-level capabilities for self or other members + +## Properties + +| Property | Modifier | Type | Defined in | +| ------ | ------ | ------ | ------ | +| `audioFlags` | `readonly` | `boolean` | [core/capabilities/types.ts:24](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L24) | +| `deaf` | `readonly` | [`OnOffCapability`](OnOffCapability.md) | [core/capabilities/types.ts:16](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L16) | +| `meta` | `readonly` | `boolean` | [core/capabilities/types.ts:22](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L22) | +| `microphoneSensitivity` | `readonly` | `boolean` | [core/capabilities/types.ts:19](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L19) | +| `microphoneVolume` | `readonly` | `boolean` | [core/capabilities/types.ts:18](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L18) | +| `muteAudio` | `readonly` | [`OnOffCapability`](OnOffCapability.md) | [core/capabilities/types.ts:14](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L14) | +| `muteVideo` | `readonly` | [`OnOffCapability`](OnOffCapability.md) | [core/capabilities/types.ts:15](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L15) | +| `position` | `readonly` | `boolean` | [core/capabilities/types.ts:21](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L21) | +| `raisehand` | `readonly` | [`OnOffCapability`](OnOffCapability.md) | [core/capabilities/types.ts:17](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L17) | +| `remove` | `readonly` | `boolean` | [core/capabilities/types.ts:23](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L23) | +| `speakerVolume` | `readonly` | `boolean` | [core/capabilities/types.ts:20](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L20) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/NodeSocketAdapter.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/NodeSocketAdapter.md new file mode 100644 index 000000000..2752d1d57 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/NodeSocketAdapter.md @@ -0,0 +1,44 @@ +# Interface: NodeSocketAdapter + +Defined in: [core/types/common.types.ts:92](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/common.types.ts#L92) + +There's a difference in `searchParams` between URL from +`lib` and URL from `url` (node) that makes using the same +not possible for us. + +## Constructors + +### Constructor + +> **new NodeSocketAdapter**(`address`, `options?`): `NodeSocketClient` + +Defined in: [core/types/common.types.ts:93](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/common.types.ts#L93) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `address` | `string` \| `URL` | +| `options?` | `unknown` | + +#### Returns + +`NodeSocketClient` + +### Constructor + +> **new NodeSocketAdapter**(`address`, `protocols?`, `options?`): `NodeSocketClient` + +Defined in: [core/types/common.types.ts:94](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/common.types.ts#L94) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `address` | `string` \| `URL` | +| `protocols?` | `string` \| `string`[] | +| `options?` | `unknown` | + +#### Returns + +`NodeSocketClient` diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/OnOffCapability.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/OnOffCapability.md new file mode 100644 index 000000000..e478de6c4 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/OnOffCapability.md @@ -0,0 +1,13 @@ +# Interface: OnOffCapability + +Defined in: [core/capabilities/types.ts:5](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L5) + +Represents an on/off capability state +Both `on` and `off` can be true if the parent permission grants both + +## Properties + +| Property | Modifier | Type | Defined in | +| ------ | ------ | ------ | ------ | +| `off` | `readonly` | `boolean` | [core/capabilities/types.ts:7](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L7) | +| `on` | `readonly` | `boolean` | [core/capabilities/types.ts:6](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/capabilities/types.ts#L6) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/PendingRPCOptions.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/PendingRPCOptions.md new file mode 100644 index 000000000..9521a0af2 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/PendingRPCOptions.md @@ -0,0 +1,10 @@ +# Interface: PendingRPCOptions + +Defined in: [core/utils.ts:53](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/utils.ts#L53) + +## Properties + +| Property | Type | Description | Defined in | +| ------ | ------ | ------ | ------ | +| `signal?` | `AbortSignal` | Optional AbortSignal for cancellation support. If the signal is aborted, the promise will reject with an AbortError. | [core/utils.ts:64](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/utils.ts#L64) | +| `timeoutMs?` | `number` | Timeout in milliseconds. Defaults to 5000ms (5 seconds). If the response is not received within this time, the promise will reject with RPCTimeoutError. | [core/utils.ts:58](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/utils.ts#L58) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/SATClaims.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/SATClaims.md new file mode 100644 index 000000000..8b153ccdb --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/SATClaims.md @@ -0,0 +1,14 @@ +# Interface: SATClaims + +Defined in: [core/types/crypto.types.ts:18](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/crypto.types.ts#L18) + +SAT claims returned by /api/fabric/subscriber/info. + +## Properties + +| Property | Type | Description | Defined in | +| ------ | ------ | ------ | ------ | +| `cnf?` | `object` | Confirmation claim binding the token to a key. | [core/types/crypto.types.ts:22](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/crypto.types.ts#L22) | +| `cnf.jkt` | `string` | - | [core/types/crypto.types.ts:22](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/crypto.types.ts#L22) | +| `expires_at?` | `number` | Token expiry timestamp in seconds since epoch. | [core/types/crypto.types.ts:24](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/crypto.types.ts#L24) | +| `scope?` | `string`[] | Token scopes (e.g., ["sat:refresh"]). | [core/types/crypto.types.ts:20](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/crypto.types.ts#L20) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/SDKCredential.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/SDKCredential.md new file mode 100644 index 000000000..f982704ac --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/SDKCredential.md @@ -0,0 +1,15 @@ +# Interface: SDKCredential + +Defined in: [core/types/common.types.ts:112](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/common.types.ts#L112) + +Authentication credentials for the SDK. + +At least one of `token` or `authorizationState` must be provided. + +## Properties + +| Property | Type | Description | Defined in | +| ------ | ------ | ------ | ------ | +| `authorizationState?` | `string` | Pre-authorized session state (alternative to token). | [core/types/common.types.ts:116](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/common.types.ts#L116) | +| `expiry_at?` | `number` | Token expiry timestamp in milliseconds since epoch. When set, the SDK attempts credential refresh before expiry. | [core/types/common.types.ts:118](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/common.types.ts#L118) | +| `token?` | `string` | JWT subscriber access token (SAT). | [core/types/common.types.ts:114](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/common.types.ts#L114) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/SessionState.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/SessionState.md new file mode 100644 index 000000000..8f7bef6d6 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/SessionState.md @@ -0,0 +1,58 @@ +# Interface: SessionState + +Defined in: [interfaces/SessionState.ts:12](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/SessionState.ts#L12) + +Extended session interface that adds call management and authentication +state on top of the narrow ClientSession contract. + +Accessible via `client.session`. Call and CallFactory continue to depend +only on the narrow ClientSession interface. + +## Extends + +- `ClientSession` + +## Properties + +| Property | Modifier | Type | Description | Inherited from | Defined in | +| ------ | ------ | ------ | ------ | ------ | ------ | +| `authenticated$` | `readonly` | `Observable`\<`boolean`\> | Observable that emits `true` once the session has been authenticated, and `false` after disconnect. | - | [interfaces/SessionState.ts:38](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/SessionState.ts#L38) | +| `calls` | `readonly` | [`Call`](Call.md)[] | Current snapshot of all active calls. | - | [interfaces/SessionState.ts:32](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/SessionState.ts#L32) | +| `calls$` | `readonly` | `Observable`\<[`Call`](Call.md)[]\> | Observable stream of all currently active calls (both inbound and outbound). | - | [interfaces/SessionState.ts:27](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/SessionState.ts#L27) | +| `iceServers` | `readonly` | `RTCIceServer`[] \| `undefined` | ICE servers configuration for WebRTC peer connections Used by VertoManager to configure RTCPeerConnection | `ClientSession.iceServers` | [interfaces/ClientSession.ts:31](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/ClientSession.ts#L31) | +| `incomingCalls` | `readonly` | [`Call`](Call.md)[] | Current snapshot of active inbound calls. | - | [interfaces/SessionState.ts:22](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/SessionState.ts#L22) | +| `incomingCalls$` | `readonly` | `Observable`\<[`Call`](Call.md)[]\> | Observable stream of currently active inbound calls. Filters `calls$` to only include calls with `direction === 'inbound'`. | - | [interfaces/SessionState.ts:17](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/SessionState.ts#L17) | +| `signalingEvent$` | `readonly` | `Observable`\<`Record`\<`string`, `unknown`\>\> | Observable stream of incoming signaling events Used by Call to listen for call-related events from the server | `ClientSession.signalingEvent$` | [interfaces/ClientSession.ts:25](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/ClientSession.ts#L25) | + +## Methods + +### execute() + +> **execute**\<`T`\>(`request`, `options?`): `Promise`\<`T`\> + +Defined in: [interfaces/ClientSession.ts:16](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/interfaces/ClientSession.ts#L16) + +Execute an RPC request through the session transport + +#### Type Parameters + +| Type Parameter | Default type | +| ------ | ------ | +| `T` *extends* [`JSONRPCResponse`](../type-aliases/JSONRPCResponse.md) | [`JSONRPCResponse`](../type-aliases/JSONRPCResponse.md) | + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `request` | [`JSONRPCRequest`](JSONRPCRequest.md) | The JSON-RPC request to execute | +| `options?` | [`PendingRPCOptions`](PendingRPCOptions.md) | Optional RPC execution options (timeout, etc.) | + +#### Returns + +`Promise`\<`T`\> + +Promise resolving to the RPC response + +#### Inherited from + +`ClientSession.execute` diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/SignalWireOptions.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/SignalWireOptions.md new file mode 100644 index 000000000..b7bbf749d --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/SignalWireOptions.md @@ -0,0 +1,18 @@ +# Interface: SignalWireOptions + +Defined in: [clients/SignalWire.ts:38](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L38) + +Options for constructing a [SignalWire](../classes/SignalWire.md). + +## Properties + +| Property | Type | Description | Defined in | +| ------ | ------ | ------ | ------ | +| `reconnectAttachedCalls?` | `boolean` | Whether to reconnect to previously attached calls. | [clients/SignalWire.ts:46](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L46) | +| `savePreferences?` | `boolean` | Whether to save preferences. | [clients/SignalWire.ts:48](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L48) | +| `skipConnection?` | `boolean` | Skip automatic WebSocket connection on construction. | [clients/SignalWire.ts:40](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L40) | +| `skipDeviceMonitoring?` | `boolean` | Skip monitoring media device changes. | [clients/SignalWire.ts:44](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L44) | +| `skipRegister?` | `boolean` | Skip automatic subscriber registration on construction. | [clients/SignalWire.ts:42](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L42) | +| `storageImplementation?` | [`Storage`](Storage.md) | Custom storage implementation for persistence. | [clients/SignalWire.ts:50](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L50) | +| `webRTCApiProvider?` | [`WebRTCApiProvider`](WebRTCApiProvider.md) | Custom WebRTC API provider | [clients/SignalWire.ts:54](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L54) | +| `webSocketConstructor?` | [`NodeSocketAdapter`](NodeSocketAdapter.md) \| [`WebSocketAdapter`](../type-aliases/WebSocketAdapter.md) | Custom WebSocket constructor | [clients/SignalWire.ts:52](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/clients/SignalWire.ts#L52) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/Storage.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/Storage.md new file mode 100644 index 000000000..3c1e30985 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/Storage.md @@ -0,0 +1,63 @@ +# Interface: Storage + +Defined in: [dependencies/interfaces.ts:4](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L4) + +Key-value storage interface for persisting SDK preferences and state. + +## Methods + +### getItem() + +> **getItem**(`key`, `scope`): `Promise`\<`string` \| `null`\> + +Defined in: [dependencies/interfaces.ts:6](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L6) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `scope` | `StorageScope` | + +#### Returns + +`Promise`\<`string` \| `null`\> + +*** + +### removeItem() + +> **removeItem**(`key`, `scope`): `Promise`\<`void`\> + +Defined in: [dependencies/interfaces.ts:7](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L7) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `scope` | `StorageScope` | + +#### Returns + +`Promise`\<`void`\> + +*** + +### setItem() + +> **setItem**(`key`, `value`, `scope`): `Promise`\<`void`\> + +Defined in: [dependencies/interfaces.ts:5](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L5) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `value` | `string` \| `null` | +| `scope` | `StorageScope` | + +#### Returns + +`Promise`\<`void`\> diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/TextMessage.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/TextMessage.md new file mode 100644 index 000000000..3390fa15b --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/TextMessage.md @@ -0,0 +1,26 @@ +# Interface: TextMessage\ + +Defined in: [core/types/conversation.types.ts:33](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/conversation.types.ts#L33) + +Text message from conversation +Contains a reference to the sender address as an observable + +## Remarks + +Uses a generic type parameter to maintain type safety while avoiding +circular dependencies. The Address class provides the concrete type. + +## Type Parameters + +| Type Parameter | Default type | Description | +| ------ | ------ | ------ | +| `TAddress` | `never` | The Address type, provided by the implementation | + +## Properties + +| Property | Type | Defined in | +| ------ | ------ | ------ | +| `created` | `number` | [core/types/conversation.types.ts:36](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/conversation.types.ts#L36) | +| `fromAddress$` | `Observable`\<`TAddress`\> \| `undefined` | [core/types/conversation.types.ts:35](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/conversation.types.ts#L35) | +| `id` | `string` | [core/types/conversation.types.ts:34](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/conversation.types.ts#L34) | +| `text` | `string` | [core/types/conversation.types.ts:37](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/conversation.types.ts#L37) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/TransferOptions.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/TransferOptions.md new file mode 100644 index 000000000..a757b69b0 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/TransferOptions.md @@ -0,0 +1,9 @@ +# Interface: TransferOptions + +Defined in: [managers/types/verto-manager.types.ts:44](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/managers/types/verto-manager.types.ts#L44) + +## Properties + +| Property | Type | Defined in | +| ------ | ------ | ------ | +| `destination` | `string` | [managers/types/verto-manager.types.ts:45](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/managers/types/verto-manager.types.ts#L45) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/WebRTCApiProvider.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/WebRTCApiProvider.md new file mode 100644 index 000000000..8969f3be4 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/WebRTCApiProvider.md @@ -0,0 +1,33 @@ +# Interface: WebRTCApiProvider + +Defined in: [dependencies/interfaces.ts:104](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L104) + +Provides custom WebRTC API implementations for non-standard environments. + +Use this when the standard browser WebRTC APIs are not available or need +to be replaced (e.g., Citrix HDX, React Native, Electron). + +## Example + +```typescript +import { SignalWire, type WebRTCApiProvider } from '@signalwire/js'; + +const provider: WebRTCApiProvider = { + RTCPeerConnection: CustomRTCPeerConnection, + mediaDevices: { + getUserMedia: (constraints) => customGetUserMedia(constraints), + enumerateDevices: () => customEnumerateDevices(), + addEventListener: (type, listener) => { ... }, + removeEventListener: (type, listener) => { ... }, + } +}; + +const client = new SignalWire(credentialProvider, { webRTCApiProvider: provider }); +``` + +## Properties + +| Property | Type | Description | Defined in | +| ------ | ------ | ------ | ------ | +| `mediaDevices` | [`WebRTCMediaDevices`](WebRTCMediaDevices.md) | Custom media device access. Only the methods used by the SDK are required. | [dependencies/interfaces.ts:109](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L109) | +| `RTCPeerConnection` | (`configuration?`) => `RTCPeerConnection` | Custom RTCPeerConnection constructor. | [dependencies/interfaces.ts:106](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L106) | diff --git a/fern/products/browser-sdk/pages/v4/reference/interfaces/WebRTCMediaDevices.md b/fern/products/browser-sdk/pages/v4/reference/interfaces/WebRTCMediaDevices.md new file mode 100644 index 000000000..89f51f736 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/interfaces/WebRTCMediaDevices.md @@ -0,0 +1,96 @@ +# Interface: WebRTCMediaDevices + +Defined in: [dependencies/interfaces.ts:120](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L120) + +Subset of the `MediaDevices` interface actually used by the SDK. + +Implementations only need to provide these methods — the full browser +`MediaDevices` type is intentionally not required so that React Native +and other non-browser environments can conform without polyfilling +unused APIs. + +## Methods + +### addEventListener() + +> **addEventListener**(`type`, `listener`): `void` + +Defined in: [dependencies/interfaces.ts:124](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L124) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `type` | `string` | +| `listener` | `EventListenerOrEventListenerObject` | + +#### Returns + +`void` + +*** + +### enumerateDevices() + +> **enumerateDevices**(): `Promise`\<`MediaDeviceInfo`[]\> + +Defined in: [dependencies/interfaces.ts:123](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L123) + +#### Returns + +`Promise`\<`MediaDeviceInfo`[]\> + +*** + +### getDisplayMedia()? + +> `optional` **getDisplayMedia**(`options`): `Promise`\<`MediaStream`\> + +Defined in: [dependencies/interfaces.ts:122](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L122) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `options` | `DisplayMediaStreamOptions` | + +#### Returns + +`Promise`\<`MediaStream`\> + +*** + +### getUserMedia() + +> **getUserMedia**(`constraints`): `Promise`\<`MediaStream`\> + +Defined in: [dependencies/interfaces.ts:121](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L121) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `constraints` | `MediaStreamConstraints` | + +#### Returns + +`Promise`\<`MediaStream`\> + +*** + +### removeEventListener() + +> **removeEventListener**(`type`, `listener`): `void` + +Defined in: [dependencies/interfaces.ts:125](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/interfaces.ts#L125) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `type` | `string` | +| `listener` | `EventListenerOrEventListenerObject` | + +#### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/type-aliases/CallErrorKind.md b/fern/products/browser-sdk/pages/v4/reference/type-aliases/CallErrorKind.md new file mode 100644 index 000000000..3ab858286 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/type-aliases/CallErrorKind.md @@ -0,0 +1,14 @@ +# Type Alias: CallErrorKind + +> **CallErrorKind** = `"media"` \| `"signaling"` \| `"timeout"` \| `"rejected"` \| `"network"` \| `"internal"` + +Defined in: [core/errors.ts:241](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L241) + +Semantic category of a call-lifecycle error. + +- `'media'` – RTCPeerConnection / media device failure +- `'signaling'` – Verto / JSON-RPC protocol error +- `'timeout'` – Call setup timed out waiting for a response +- `'rejected'` – Remote side rejected the call +- `'network'` – Transport lost during an active call +- `'internal'` – Unexpected / unknown error diff --git a/fern/products/browser-sdk/pages/v4/reference/type-aliases/CallStatus.md b/fern/products/browser-sdk/pages/v4/reference/type-aliases/CallStatus.md new file mode 100644 index 000000000..fb1ff6f46 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/type-aliases/CallStatus.md @@ -0,0 +1,7 @@ +# Type Alias: CallStatus + +> **CallStatus** = `"new"` \| `"trying"` \| `"ringing"` \| `"connecting"` \| `"connected"` \| `"disconnecting"` \| `"disconnected"` \| `"failed"` \| `"destroyed"` + +Defined in: [core/entities/types/call.types.ts:152](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/types/call.types.ts#L152) + +Lifecycle status of a call. diff --git a/fern/products/browser-sdk/pages/v4/reference/type-aliases/ExecuteMethod.md b/fern/products/browser-sdk/pages/v4/reference/type-aliases/ExecuteMethod.md new file mode 100644 index 000000000..85eb32356 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/type-aliases/ExecuteMethod.md @@ -0,0 +1,26 @@ +# Type Alias: ExecuteMethod + +> **ExecuteMethod** = \<`T`\>(`target`, `method`, `args`) => `Promise`\<`T`\> + +Defined in: [core/entities/Participant.ts:28](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L28) + +Callback type for executing call methods +Injected to avoid circular dependency with Call class + +## Type Parameters + +| Type Parameter | Default type | +| ------ | ------ | +| `T` *extends* [`JSONRPCResponse`](JSONRPCResponse.md) | [`JSONRPCResponse`](JSONRPCResponse.md) | + +## Parameters + +| Parameter | Type | +| ------ | ------ | +| `target` | `string` \| `MemberTarget` | +| `method` | `string` | +| `args` | `Record`\<`string`, `unknown`\> | + +## Returns + +`Promise`\<`T`\> diff --git a/fern/products/browser-sdk/pages/v4/reference/type-aliases/JSONRPCResponse.md b/fern/products/browser-sdk/pages/v4/reference/type-aliases/JSONRPCResponse.md new file mode 100644 index 000000000..8ccb1a00d --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/type-aliases/JSONRPCResponse.md @@ -0,0 +1,11 @@ +# Type Alias: JSONRPCResponse\ + +> **JSONRPCResponse**\<`TResult`\> = [`JSONRPCSuccessResponse`](../interfaces/JSONRPCSuccessResponse.md)\<`TResult`\> \| [`JSONRPCErrorResponse`](../interfaces/JSONRPCErrorResponse.md) + +Defined in: [core/RPCMessages/types/base.ts:47](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/RPCMessages/types/base.ts#L47) + +## Type Parameters + +| Type Parameter | Default type | +| ------ | ------ | +| `TResult` | `unknown` | diff --git a/fern/products/browser-sdk/pages/v4/reference/type-aliases/MediaDirection.md b/fern/products/browser-sdk/pages/v4/reference/type-aliases/MediaDirection.md new file mode 100644 index 000000000..7f4e4babb --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/type-aliases/MediaDirection.md @@ -0,0 +1,7 @@ +# Type Alias: MediaDirection + +> **MediaDirection** = `RTCRtpTransceiverDirection` + +Defined in: [core/types/media.types.ts:2](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/media.types.ts#L2) + +WebRTC transceiver direction for a single media kind. diff --git a/fern/products/browser-sdk/pages/v4/reference/type-aliases/VideoPosition.md b/fern/products/browser-sdk/pages/v4/reference/type-aliases/VideoPosition.md new file mode 100644 index 000000000..615d2a97c --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/type-aliases/VideoPosition.md @@ -0,0 +1,14 @@ +# Type Alias: VideoPosition + +> **VideoPosition** = `"auto"` \| `` `reserved-${number}` `` \| `` `standard-${number}` `` \| `"off-canvas"` \| `"playback"` \| `"full-screen"` + +Defined in: [core/types/call.types.ts:152](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/call.types.ts#L152) + +Position of a participant's video within the layout canvas. + +- `'auto'` — Automatically positioned by the layout engine. +- `` `reserved-${number}` `` — A reserved slot in the layout (e.g., `'reserved-0'`). +- `` `standard-${number}` `` — A standard slot in the layout (e.g., `'standard-1'`). +- `'off-canvas'` — Participant is not visible in the layout. +- `'playback'` — Playback position for media streams. +- `'full-screen'` — Participant occupies the entire canvas. diff --git a/fern/products/browser-sdk/pages/v4/reference/type-aliases/WebSocketAdapter.md b/fern/products/browser-sdk/pages/v4/reference/type-aliases/WebSocketAdapter.md new file mode 100644 index 000000000..6fb350322 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/type-aliases/WebSocketAdapter.md @@ -0,0 +1,18 @@ +# Type Alias: WebSocketAdapter + +> **WebSocketAdapter** = (`url`, `protocols?`) => `WebSocketClient` + +Defined in: [core/types/common.types.ts:102](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/types/common.types.ts#L102) + +Browser-compatible WebSocket constructor type. + +## Parameters + +| Parameter | Type | +| ------ | ------ | +| `url` | `string` \| `URL` | +| `protocols?` | `string` \| `string`[] | + +## Returns + +`WebSocketClient` diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-audio-level.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-audio-level.md new file mode 100644 index 000000000..b6ad6fe35 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-audio-level.md @@ -0,0 +1,30 @@ +# `` + +Real-time audio level visualiser — animated bar graph. + +## Props + +| prop | type | default | description | +|------|------|---------|-------------| +| `stream` | `MediaStream` | — | Audio stream to analyse | +| `bars` | `number` | `5` | Number of bars | +| `orientation` | `'vertical' \| 'horizontal'` | `'vertical'` | Bar direction | +| `maxSize` | `number` | `32` | Max bar length in px | + +## Methods + +| method | description | +|--------|-------------| +| `releaseResources()` | Closes the AudioContext and disconnects the analyser | + +## CSS custom properties + +| property | description | +|----------|-------------| +| `--sw-color-success` | Low-level bar colour | +| `--sw-color-warning` | Mid-level bar colour | +| `--sw-color-danger` | High-level bar colour | +| `--sw-audio-bar-width` | Bar thickness | +| `--sw-audio-bar-gap` | Gap between bars | +| `--sw-audio-bar-radius` | Bar border radius | +| `--sw-audio-bar-background` | Inactive bar colour | diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-controls.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-controls.md new file mode 100644 index 000000000..42381076a --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-controls.md @@ -0,0 +1,33 @@ +# `` + +Mute audio, mute video, screen share, and hangup buttons. Accepts `call` as a prop **or** auto-consumes it from a parent `` context. + +## Props + +| prop | type | default | description | +|------|------|---------|-------------| +| `call` | `CallControlsCall` | — | Explicit call object (overrides context) | +| `orientation` | `'horizontal' \| 'vertical'` | `'horizontal'` | Bar layout direction | +| `respect-capabilities` | `boolean` | `false` | When `true`, gates buttons on server capabilities | + +## Events + +| event | detail | description | +|-------|--------|-------------| +| `sw-mute-audio` | `{ muted: boolean }` | Audio toggle | +| `sw-mute-video` | `{ muted: boolean }` | Video toggle | +| `sw-screen-share` | `{ active: boolean }` | Screen share toggle | +| `sw-hangup` | — | Hangup pressed | + +## CSS custom properties + +| property | description | +|----------|-------------| +| `--sw-ctrl-gap` | Gap between buttons (default `8px`) | +| `--sw-ctrl-padding` | Bar padding (default `10px 14px`) | +| `--sw-ctrl-background` | Bar background (default `transparent`) | +| `--ctrl-*` | All primitive ctrl tokens (size, colours, menu) — see [ctrl tokens](../ui/sw-ctrl-button.md) | + +## Parts + +`bar`, `toggle-audio`, `toggle-video`, `toggle-screen-share`, `btn-hangup` diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-media.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-media.md new file mode 100644 index 000000000..cc1010bfd --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-media.md @@ -0,0 +1,27 @@ +# `` + +Remote video container. Root context provider for call — wrap all other call components inside it. + +## Props + +| prop | type | default | description | +|------|------|---------|-------------| +| `call` | `Call` | — | SDK call object | + +## CSS custom properties + +| property | default | description | +|----------|---------|-------------| +| `--sw-color-primary` | `#044cf6` | Accent colour | +| `--sw-color-background` | `#000000` | Video background | +| `--sw-border-radius` | `0px` | Corner radius | + +## Slots + +| slot | description | +|------|-------------| +| *(default)* | Overlaid child components (controls, self-media, etc.) | + +## Parts + +`container`, `video` diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-status.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-status.md new file mode 100644 index 000000000..46c494742 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-status.md @@ -0,0 +1,13 @@ +# `` + +Displays call state label and elapsed duration timer. + +## Props + +| prop | type | description | +|------|------|-------------| +| `call` | `CallStatusCall` | Call object to observe | + +## CSS custom properties + +`--sw-color-primary`, `--sw-color-success`, `--sw-color-warning`, `--sw-color-danger`, `--sw-color-text`, `--sw-color-text-muted`, `--sw-font-family`, `--sw-font-size-sm`, `--sw-font-size-base`, `--sw-font-size-lg`, `--sw-space-1/2/3`, `--sw-border-radius` diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-widget.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-widget.md new file mode 100644 index 000000000..cc4a876f3 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-widget.md @@ -0,0 +1,44 @@ +# `` + +All-in-one call widget. Handles client init, dialling, media, controls, and optional AI transcript. Works inline or in a modal overlay. + +## Props + +| prop | type | default | description | +|------|------|---------|-------------| +| `token` | `string` | `''` | SignalWire SAT or embed token (`c2c_` / `c2t_`) | +| `host` | `string` | `''` | Server host (defaults to `embeds.signalwire.com`) | +| `destination` | `string` | `''` | Call destination address | +| `modal` | `boolean` | `false` | Render in a `` overlay | +| `transcription` | `boolean` | `false` | Show AI transcript panel | + +## Methods + +| method | description | +|--------|-------------| +| `dial()` | Imperatively start a call (also triggered by clicking a slotted element) | + +## Events + +| event | detail | description | +|-------|--------|-------------| +| `user_event` | signaling payload | Forwarded `user_event` from the signaling stream | + +## Slots + +| slot | description | +|------|-------------| +| *(default)* | Trigger element (button) — click starts the call / opens modal | + +## CSS custom properties + +All `--ctrl-*` tokens are set on `:host` and inherited by inner controls. Override any of them to retheme the entire widget. + +| property | default | +|----------|---------| +| `--ctrl-size` | `40px` | +| `--ctrl-bg` | `rgba(255,255,255,0.12)` | +| `--ctrl-active-bg` | `#ef4444` | +| `--ctrl-primary-bg` | `#044cf6` | +| `--ctrl-danger-bg` | `#ef4444` | +| `--ctrl-menu-bg` | `#1a1a2a` | diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-click-to-call.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-click-to-call.md new file mode 100644 index 000000000..ca81f970d --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-click-to-call.md @@ -0,0 +1,24 @@ +# `` + +Single-button widget that dials on click and shows mute/hangup once connected. + +## Props + +| prop | type | default | description | +|------|------|---------|-------------| +| `client` | `ClickToCallClient` | — | Initialised SignalWire client | +| `destination` | `string` | — | Address to dial | +| `label` | `string` | `'Call'` | Button label | +| `audio-only` | `boolean` | `false` | Disable video | + +## Events + +| event | detail | description | +|-------|--------|-------------| +| `sw-dial` | `{ destination }` | Call initiated | +| `sw-hangup` | — | Call ended | +| `sw-mute-toggle` | `{ muted: boolean }` | Mute toggled | + +## CSS custom properties + +`--sw-color-primary/hover`, `--sw-color-success/hover`, `--sw-color-danger/hover`, `--sw-color-warning`, `--sw-color-text/muted/inverse`, `--sw-color-background/hover`, `--sw-color-border`, `--sw-font-family`, `--sw-font-size-sm/base/lg`, `--sw-space-1/2/3/4`, `--sw-border-radius`, `--sw-border-radius-full` diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-device-selector.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-device-selector.md new file mode 100644 index 000000000..719fa5d4f --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-device-selector.md @@ -0,0 +1,30 @@ +# `` + +Compact row of three drop-up buttons for microphone, camera, and speaker selection. Optional live preview. + +## Props + +| prop | type | default | description | +|------|------|---------|-------------| +| `deviceController` | `DeviceController` | — | SDK device controller | +| `show-preview` | `boolean` | `false` | Show camera preview and mic level below the bar | + +## Events + +| event | detail | description | +|-------|--------|-------------| +| `sw-device-change` | `{ type: 'microphone'\|'camera'\|'speaker', device: MediaDeviceInfo }` | Device selected | +| `sw-test-speaker` | — | Test speaker button pressed | + +## CSS custom properties + +| property | description | +|----------|-------------| +| `--sw-device-gap` | Gap between drop-ups (default `8px`) | +| `--sw-device-padding` | Bar padding (default `10px 14px`) | +| `--sw-device-background` | Bar background (default `transparent`) | +| `--ctrl-*` | All primitive ctrl tokens | + +## Parts + +`bar`, `dropup-mic`, `dropup-camera`, `dropup-speaker`, `preview` diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-dialpad.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-dialpad.md new file mode 100644 index 000000000..86b3180ca --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-dialpad.md @@ -0,0 +1,23 @@ +# `` + +DTMF keypad with optional call button. + +## Props + +| prop | type | default | description | +|------|------|---------|-------------| +| `call` | `DialpadCall` | — | Active call for sending DTMF | +| `show-call-button` | `boolean` | `false` | Show a dial/hangup action button | +| `placeholder` | `string` | — | Input placeholder text | + +## Events + +| event | detail | description | +|-------|--------|-------------| +| `sw-digit-press` | `{ digit, digits }` | Key pressed | +| `sw-backspace` | `{ digits }` | Backspace pressed | +| `sw-dial` | `{ digits }` | Call button pressed | + +## CSS custom properties + +`--sw-color-primary/hover`, `--sw-color-success/danger`, `--sw-color-text/muted`, `--sw-color-border`, `--sw-color-background/hover/active`, `--sw-font-family`, `--sw-font-size-sm/base/lg/xl`, `--sw-border-radius`, `--sw-border-radius-full` diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-directory.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-directory.md new file mode 100644 index 000000000..43b545f6a --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-directory.md @@ -0,0 +1,20 @@ +# `` + +Searchable contact list. Displays addresses from the SDK directory with dial actions. + +## Props + +| prop | type | description | +|------|------|-------------| +| `directory` | `DirectoryService` | SDK directory service | + +## Events + +| event | detail | description | +|-------|--------|-------------| +| `sw-address-select` | `{ address }` | Address row clicked | +| `sw-dial` | `{ address }` | Dial button clicked | + +## CSS custom properties + +`--sw-color-primary/hover`, `--sw-color-success`, `--sw-color-text/muted`, `--sw-color-background/hover/active`, `--sw-color-border`, `--sw-font-family`, `--sw-font-size-sm/base/lg`, `--sw-space-1/2/3/4`, `--sw-border-radius` diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-local-camera.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-local-camera.md new file mode 100644 index 000000000..99d833b0b --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-local-camera.md @@ -0,0 +1,10 @@ +# `` + +Local camera preview with a muted overlay. + +## Props + +| prop | type | default | description | +|------|------|---------|-------------| +| `stream` | `MediaStream \| null` | `null` | Local media stream | +| `videoMuted` | `boolean` | `false` | Show camera-off overlay | diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-participant-controls.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-participant-controls.md new file mode 100644 index 000000000..00b743848 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-participant-controls.md @@ -0,0 +1,26 @@ +# `` + +Per-participant moderation controls: mute, video mute, remove, volume, pin. + +## Props + +| prop | type | default | description | +|------|------|---------|-------------| +| `participant` | `ControlParticipant` | — | Participant to control | +| `capabilities` | `string[]` | `[]` | Allowed actions | +| `show-volume` | `boolean` | `false` | Show volume slider | +| `show-pin` | `boolean` | `false` | Show pin button | + +## Events + +| event | detail | description | +|-------|--------|-------------| +| `sw-participant-mute-audio` | `{ participant, muted }` | — | +| `sw-participant-mute-video` | `{ participant, muted }` | — | +| `sw-participant-remove` | `{ participant }` | — | +| `sw-participant-volume` | `{ participant, volume }` | — | +| `sw-participant-pin` | `{ participant, pinned }` | — | + +## CSS custom properties + +`--sw-color-primary/hover`, `--sw-color-success/danger/hover`, `--sw-color-warning`, `--sw-color-text/muted/inverse`, `--sw-color-background/hover/active`, `--sw-color-border`, `--sw-font-family`, `--sw-font-size-xs/sm/base`, `--sw-space-1/2/3/4`, `--sw-border-radius` diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-participants.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-participants.md new file mode 100644 index 000000000..f18d598b3 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-participants.md @@ -0,0 +1,24 @@ +# `` + +Renders positioned overlays for each remote participant. Consumes `callContext`. + +## Props + +| prop | type | description | +|------|------|-------------| +| `call` | `Call` | Explicit call (overrides context) | + +## Events + +| event | detail | description | +|-------|--------|-------------| +| `sw-participant-mute-audio` | `{ participant }` | — | +| `sw-participant-mute-video` | `{ participant }` | — | +| `sw-participant-remove` | `{ participant }` | — | + +## Slots + +| slot | description | +|------|-------------| +| *(default)* | Overlaid content (e.g. ``) | +| `controls-{memberId}` | Per-participant control overlay | diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-self-media.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-self-media.md new file mode 100644 index 000000000..03893f06e --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-self-media.md @@ -0,0 +1,9 @@ +# `` + +Local video preview. Consumes `callContext` from a parent ``. + +## Props + +| prop | type | default | description | +|------|------|---------|-------------| +| `mirror` | `boolean` | `false` | Horizontally flip the video (selfie mode) | diff --git a/fern/products/browser-sdk/pages/v4/web-components/context/TranscriptController.md b/fern/products/browser-sdk/pages/v4/web-components/context/TranscriptController.md new file mode 100644 index 000000000..56be64892 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/context/TranscriptController.md @@ -0,0 +1,39 @@ +# `TranscriptController` + +Reactive controller that subscribes to `call.signalingEvent$`, runs the AI transcript state machine, and provides `transcriptContext` to all descendants. + +## Constructor + +```ts +new TranscriptController(host: LitElement) +``` + +Attach once in the host class body. No further wiring needed if the host is inside a `` tree — the controller auto-consumes `callContext`. + +## Methods + +| method | description | +|--------|-------------| +| `setCall(call?)` | Manually bind or unbind a call (overrides context) | + +## State machine — events handled + +| `event_type` | action | +|---|---| +| `ai.partial_result` / `ai.speech_detect` | Upsert partial user entry | +| `ai.transparent_barge` | Finalise user entry | +| `ai.completion` | Finalise current agent entry | +| `ai.response_utterance` | Append/accumulate agent entry | + +## Usage + +```ts +class MyElement extends LitElement { + private _transcript = new TranscriptController(this); + + // If call doesn't come from callContext, set it manually: + protected updated(changed: Map) { + if (changed.has('call')) this._transcript.setCall(this.call); + } +} +``` diff --git a/fern/products/browser-sdk/pages/v4/web-components/context/call-context.md b/fern/products/browser-sdk/pages/v4/web-components/context/call-context.md new file mode 100644 index 000000000..f1ba02528 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/context/call-context.md @@ -0,0 +1,16 @@ +# `callContext` + +Lit context key for sharing a `Call` object down the component tree. + +**Provided by:** `` via `@provide` +**Consumed by:** ``, ``, ``, `TranscriptController` + +## Usage + +```ts +import { callContext } from '@signalwire/web-components'; +import { consume } from '@lit/context'; + +@consume({ context: callContext, subscribe: true }) +@state() private _call?: Call; +``` diff --git a/fern/products/browser-sdk/pages/v4/web-components/context/transcript-context.md b/fern/products/browser-sdk/pages/v4/web-components/context/transcript-context.md new file mode 100644 index 000000000..2750d62cd --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/context/transcript-context.md @@ -0,0 +1,21 @@ +# `transcriptContext` + +Lit context key for sharing live transcript state down the component tree. + +**Provided by:** `TranscriptController` (attached to any `LitElement` host) +**Consumed by:** `` + +## Value type + +```ts +interface TranscriptEntry { + id: string; + type: 'user' | 'agent'; + state: 'partial' | 'complete'; + text: string; +} + +interface TranscriptState { + entries: TranscriptEntry[]; +} +``` diff --git a/fern/products/browser-sdk/pages/v4/web-components/introduction.mdx b/fern/products/browser-sdk/pages/v4/web-components/introduction.mdx new file mode 100644 index 000000000..f38b95a97 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/introduction.mdx @@ -0,0 +1,54 @@ +# Browser SDK Web Components + +The Browser SDK contains a suite of flexible web components that can be used to create UI. + +--- + +## Components + +Ready-to-use call UI elements. Most components consume context from a parent `` automatically. + +| Component | Description | +|-----------|-------------| +| [``](./components/sw-audio-level) | Real-time audio level visualizer — animated bar graph | +| [``](./components/sw-call-controls) | Mute audio, mute video, screen share, and hangup buttons | +| [``](./components/sw-call-media) | Remote video container and root context provider — wrap all other call components inside it | +| [``](./components/sw-call-status) | Displays call state label and elapsed duration timer | +| [``](./components/sw-call-widget) | All-in-one call widget — handles client init, dialing, media, controls, and optional AI transcript | +| [``](./components/sw-click-to-call) | Single-button widget that dials on click and shows mute/hangup once connected | +| [``](./components/sw-device-selector) | Drop-up buttons for microphone, camera, and speaker selection with optional live preview | +| [``](./components/sw-dialpad) | DTMF keypad with optional call button | +| [``](./components/sw-directory) | Searchable contact list with dial actions from the SDK directory | +| [``](./components/sw-local-camera) | Local camera preview with a muted overlay | +| [``](./components/sw-participant-controls) | Per-participant moderation controls: mute, video mute, remove, volume, pin | +| [``](./components/sw-participants) | Renders positioned overlays for each remote participant | +| [``](./components/sw-self-media) | Local video preview — consumes `callContext` from a parent `` | + +--- + +## Context + +Lit context keys and reactive controllers used to share state down the component tree. + +| Name | Description | +|------|-------------| +| [`callContext`](./context/call-context) | Lit context key for sharing a `Call` object — provided by `` | +| [`transcriptContext`](./context/transcript-context) | Lit context key for sharing live transcript state — provided by `TranscriptController` | +| [`TranscriptController`](./context/TranscriptController) | Reactive controller that subscribes to call signaling events and drives the AI transcript state machine | + +--- + +## UI Primitives + +Low-level layout and control components used to build custom interfaces. + +| Component | Description | +|-----------|-------------| +| [``](./ui/one-layout) | Responsive split layout: video pane + controls bar + animated transcript panel | +| [``](./ui/responsive-container) | Sizes itself to a responsive modal footprint with 16:9 aspect ratio | +| [``](./ui/sw-ctrl-button) | Plain action button for control bars | +| [``](./ui/sw-ctrl-dropup) | Button that opens a menu above itself with selected item indicator | +| [``](./ui/sw-ctrl-toggle) | Two-state toggle button — parent owns state | +| [``](./ui/sw-modal) | Wraps a native `` with bounce-in/out animations and body scroll lock | +| [``](./ui/sw-prompt) | Confirm/alert dialog — use the element directly or the `showPrompt` helper | +| [``](./ui/sw-transcript-view) | Renders AI transcript bubbles — must be inside a host that uses `TranscriptController` | diff --git a/fern/products/browser-sdk/pages/v4/web-components/ui/one-layout.md b/fern/products/browser-sdk/pages/v4/web-components/ui/one-layout.md new file mode 100644 index 000000000..d6ddcd375 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/ui/one-layout.md @@ -0,0 +1,38 @@ +# `` + +Responsive split layout: video pane + controls bar + animated transcript panel. Switches from side-by-side to stacked below 600 px. + +## Props + +| prop | type | default | description | +|------|------|---------|-------------| +| `transcript` | `boolean` | `false` | Open the transcript panel | +| `shadow` | `boolean` | `false` | Apply drop shadow to host | + +## Methods + +| method | description | +|--------|-------------| +| `toggleTranscript()` | Animates transcript panel open/closed | + +## Slots + +| slot | description | +|------|-------------| +| `video` | Main video area | +| `background` | Background image/picture behind video | +| `floating-video` | PiP overlay (bottom-right of video) | +| `controls` | Controls bar below video | +| `transcript` | Transcript side panel | + +## CSS custom properties + +| property | default | description | +|----------|---------|-------------| +| `--transcript-toggle-duration` | `350ms` | Panel animation duration | +| `--transcript-toggle-easing` | `ease-in-out` | Panel animation easing | +| `--transcript-toggle-blackout` | `black` | Overlay colour during transition | +| `--roundness` | `0` | Corner radius | +| `--drop-shadow` | — | Box shadow (when `shadow` is set) | +| `--video-bg-thumb` | — | Blurred background data URI | +| `--video-bg-blur` | `20px` | Background blur radius | diff --git a/fern/products/browser-sdk/pages/v4/web-components/ui/responsive-container.md b/fern/products/browser-sdk/pages/v4/web-components/ui/responsive-container.md new file mode 100644 index 000000000..046dddcc6 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/ui/responsive-container.md @@ -0,0 +1,13 @@ +# `` + +Sizes itself to a responsive modal footprint. `16:9` aspect ratio at 90 vw; full-bleed on mobile; height-capped on short viewports. + +## Props + +None. + +## Slots + +| slot | description | +|------|-------------| +| *(default)* | Content to size | diff --git a/fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-button.md b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-button.md new file mode 100644 index 000000000..b433bf2e2 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-button.md @@ -0,0 +1,51 @@ +# `` + +Plain action button for control bars. + +## Props + +| prop | type | default | description | +|------|------|---------|-------------| +| `variant` | `'default' \| 'primary' \| 'danger'` | `'default'` | Colour variant | +| `disabled` | `boolean` | `false` | — | +| `label` | `string` | `''` | `aria-label` | + +## Slots + +| slot | description | +|------|-------------| +| *(default)* | Icon or content | + +## Parts + +`button` + +## Shared ctrl tokens + +All `sw-ctrl-*` primitives inherit these CSS custom properties. Set them on any ancestor to theme the entire control bar. + +| property | default | description | +|----------|---------|-------------| +| `--ctrl-size` | `44px` | Button width & height | +| `--ctrl-radius` | `50%` | Button border radius | +| `--ctrl-bg` | `rgba(255,255,255,0.12)` | Default surface | +| `--ctrl-bg-hover` | `rgba(255,255,255,0.22)` | Hover surface | +| `--ctrl-fg` | `#ffffff` | Icon colour | +| `--ctrl-focus-ring` | `#044cf6` | Focus outline colour | +| `--ctrl-active-bg` | `#ef4444` | Toggle active background | +| `--ctrl-active-bg-hover` | `#dc2626` | Toggle active hover | +| `--ctrl-active-fg` | `#ffffff` | Toggle active icon | +| `--ctrl-primary-bg` | `#044cf6` | Primary variant background | +| `--ctrl-primary-bg-hover` | `#0339c4` | — | +| `--ctrl-primary-fg` | `#ffffff` | — | +| `--ctrl-danger-bg` | `#ef4444` | Danger variant background | +| `--ctrl-danger-bg-hover` | `#dc2626` | — | +| `--ctrl-danger-fg` | `#ffffff` | — | +| `--ctrl-label-color` | `rgba(255,255,255,0.55)` | Indicator text colour | +| `--ctrl-label-size` | `10px` | Indicator text size | +| `--ctrl-menu-bg` | `#1e1e2e` | Drop-up menu background | +| `--ctrl-menu-border` | `rgba(255,255,255,0.14)` | Menu border | +| `--ctrl-menu-item-hover` | `rgba(255,255,255,0.1)` | Menu item hover | +| `--ctrl-menu-item-active` | `rgba(4,76,246,0.35)` | Selected menu item | +| `--ctrl-menu-radius` | `10px` | Menu border radius | +| `--ctrl-menu-shadow` | `0 8px 24px rgba(0,0,0,0.45)` | Menu shadow | diff --git a/fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-dropup.md b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-dropup.md new file mode 100644 index 000000000..85fdeea00 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-dropup.md @@ -0,0 +1,32 @@ +# `` + +Button that opens a menu above itself. Shows the selected item label as a small indicator beneath the icon. + +## Props + +| prop | type | default | description | +|------|------|---------|-------------| +| `options` | `DropupOption[]` | `[]` | `{ value: string, label: string }[]` | +| `value` | `string` | `''` | Currently selected value | +| `disabled` | `boolean` | `false` | — | +| `label` | `string` | `''` | `aria-label` for the trigger button | + +## Events + +| event | detail | description | +|-------|--------|-------------| +| `sw-change` | `{ value: string }` | Option selected | + +## Slots + +| slot | description | +|------|-------------| +| *(default)* | Trigger icon | + +## Parts + +`button`, `button-open`, `indicator` + +## CSS tokens + +Inherits all `--ctrl-*` tokens. Menu appearance controlled by `--ctrl-menu-*` tokens — see [sw-ctrl-button](./sw-ctrl-button.md#shared-ctrl-tokens). diff --git a/fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-toggle.md b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-toggle.md new file mode 100644 index 000000000..5dbee4ec6 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-toggle.md @@ -0,0 +1,32 @@ +# `` + +Two-state toggle button. Manages active styling; parent owns state. + +## Props + +| prop | type | default | description | +|------|------|---------|-------------| +| `active` | `boolean` | `false` | Active/on state (reflected as attribute) | +| `disabled` | `boolean` | `false` | — | +| `label` | `string` | `''` | `aria-label` / `aria-pressed` label | + +## Slots + +| slot | description | +|------|-------------| +| *(default)* | Icon shown when **inactive** | +| `active-icon` | Icon shown when **active** (falls back to default) | + +## Parts + +`button`, `button-active` + +## CSS tokens + +Inherits all `--ctrl-*` tokens. Key overrides: + +| property | description | +|----------|-------------| +| `--ctrl-active-bg` | Background when active | +| `--ctrl-active-bg-hover` | Hover when active | +| `--ctrl-active-fg` | Icon colour when active | diff --git a/fern/products/browser-sdk/pages/v4/web-components/ui/sw-modal.md b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-modal.md new file mode 100644 index 000000000..a7f4cba43 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-modal.md @@ -0,0 +1,24 @@ +# `` + +Wraps a native `` with bounce-in/out animations and body scroll lock. + +## Props + +| prop | type | default | description | +|------|------|---------|-------------| +| `open` | `boolean` | `false` | Show/hide the dialog | + +## Slots + +| slot | description | +|------|-------------| +| *(default)* | Dialog content | + +## CSS custom properties + +| property | default | +|----------|---------| +| `--modal-animation` | `bounce-in 200ms ease-out` | +| `--modal-close-animation` | `bounce-out 200ms ease-out` | +| `--modal-backdrop-animation` | `backdrop-in 200ms ease-out` | +| `--modal-backdrop-close-animation` | `backdrop-out 200ms ease-out` | diff --git a/fern/products/browser-sdk/pages/v4/web-components/ui/sw-prompt.md b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-prompt.md new file mode 100644 index 000000000..873d9e497 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-prompt.md @@ -0,0 +1,31 @@ +# `` / `showPrompt()` + +Confirm/alert dialog. Use the element directly or the `showPrompt` helper. + +## Props + +| prop | type | default | description | +|------|------|---------|-------------| +| `title` | `string` | — | Dialog heading | +| `description` | `string` | `''` | Body text (or use default slot) | +| `type` | `'confirm' \| 'alert'` | `'confirm'` | `confirm` shows Accept/Reject; `alert` shows OK | + +## Methods + +| method | returns | description | +|--------|---------|-------------| +| `show()` | `Promise` | Open and await user choice | + +## Helper function + +```ts +import { showPrompt } from '@signalwire/web-components'; + +const ok = await showPrompt({ title: 'Delete?', type: 'confirm' }); +``` + +## Slots + +| slot | description | +|------|-------------| +| *(default)* | Body content (falls back to `description` prop) | diff --git a/fern/products/browser-sdk/pages/v4/web-components/ui/sw-transcript-view.md b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-transcript-view.md new file mode 100644 index 000000000..fe3899e6f --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-transcript-view.md @@ -0,0 +1,23 @@ +# `` + +Renders AI transcript bubbles. Consumes `transcriptContext` — must be inside a host that uses `TranscriptController`. + +## Props + +None. + +## Behaviour + +- User bubbles right-aligned (blue), agent bubbles left-aligned (grey) +- Partial entries shown at reduced opacity +- New entries animate in with a scale pop +- Auto-scrolls to bottom when near the bottom + +## CSS parts + +| part | description | +|------|-------------| +| `messages` | Scrollable message container | +| `bubble` | Any message bubble | +| `bubble-user` | User bubble | +| `bubble-agent` | Agent bubble | diff --git a/fern/products/browser-sdk/versions/v4.yml b/fern/products/browser-sdk/versions/v4.yml new file mode 100644 index 000000000..e84f3076b --- /dev/null +++ b/fern/products/browser-sdk/versions/v4.yml @@ -0,0 +1,14 @@ +tabs: + reference: + display-name: Reference + icon: fa-regular fa-code + +navigation: + - tab: reference + layout: + - folder: ../pages/v4/reference + title: Core + title-source: frontmatter + - folder: ../pages/v4/web-components + title: Web Components + title-source: frontmatter diff --git a/fern/products/platform/pages/getting-started.mdx b/fern/products/platform/pages/getting-started.mdx index bb2d819b4..2712d2d4f 100644 --- a/fern/products/platform/pages/getting-started.mdx +++ b/fern/products/platform/pages/getting-started.mdx @@ -109,8 +109,8 @@ This is common for: **[Browser SDK](/docs/browser-sdk)** - Our JavaScript SDK for building custom WebRTC experiences. You get full control over the UI and user experience. Best when you need video conferencing, custom calling interfaces, or real-time chat. -**[Click-to-Call](/docs/browser-sdk/click-to-call)** - A pre-built widget you can drop onto any website. -Users click a button and call you directly from their browser. Minimal code required - great for adding a "call us" button quickly. +{/* **[Click-to-Call](/docs/browser-sdk/click-to-call)** - A pre-built widget you can drop onto any website. +Users click a button and call you directly from their browser. Minimal code required - great for adding a "call us" button quickly. */} Build voice, video, and chat in the browser From 179565e6aa65760f021627ab58418ad0513e905e Mon Sep 17 00:00:00 2001 From: nirav Date: Thu, 16 Apr 2026 19:25:47 +0545 Subject: [PATCH 2/4] update component code --- .../components/sw-audio-level.md | 28 ++--------- .../components/sw-call-controls.md | 29 +++-------- .../components/sw-call-media.md | 26 ++-------- .../components/sw-call-status.md | 12 +---- .../components/sw-call-widget.md | 39 +++++---------- .../components/sw-click-to-call.md | 20 ++------ .../web-components/components/sw-dialpad.md | 21 ++------ .../components/sw-local-camera.md | 11 ++-- .../components/sw-participant-controls.md | 27 +++------- .../components/sw-participants.md | 23 +-------- .../components/sw-self-media.md | 4 +- .../pages/v4/web-components/ui/one-layout.md | 37 +++++++------- .../web-components/ui/responsive-container.md | 14 +----- .../v4/web-components/ui/sw-ctrl-button.md | 50 ++----------------- .../v4/web-components/ui/sw-ctrl-dropup.md | 31 ++---------- .../pages/v4/web-components/ui/sw-modal.md | 25 ++-------- .../pages/v4/web-components/ui/sw-prompt.md | 30 ++--------- .../web-components/ui/sw-transcript-view.md | 20 +++----- 18 files changed, 96 insertions(+), 351 deletions(-) diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-audio-level.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-audio-level.md index b6ad6fe35..0b02d6b25 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/components/sw-audio-level.md +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-audio-level.md @@ -1,30 +1,12 @@ # `` -Real-time audio level visualiser — animated bar graph. +Real-time audio visualizer bars via Web Audio API. ## Props | prop | type | default | description | |------|------|---------|-------------| -| `stream` | `MediaStream` | — | Audio stream to analyse | -| `bars` | `number` | `5` | Number of bars | -| `orientation` | `'vertical' \| 'horizontal'` | `'vertical'` | Bar direction | -| `maxSize` | `number` | `32` | Max bar length in px | - -## Methods - -| method | description | -|--------|-------------| -| `releaseResources()` | Closes the AudioContext and disconnects the analyser | - -## CSS custom properties - -| property | description | -|----------|-------------| -| `--sw-color-success` | Low-level bar colour | -| `--sw-color-warning` | Mid-level bar colour | -| `--sw-color-danger` | High-level bar colour | -| `--sw-audio-bar-width` | Bar thickness | -| `--sw-audio-bar-gap` | Gap between bars | -| `--sw-audio-bar-radius` | Bar border radius | -| `--sw-audio-bar-background` | Inactive bar colour | +| `stream` | `MediaStream` | — | Stream to analyze | +| `bars` | `number` | `5` | Number of level bars | +| `orientation` | `'vertical' \| 'horizontal'` | `'vertical'` | Bar orientation | +| `auto-request` | `boolean` | `false` | Acquire mic via `getUserMedia` when no stream is set | diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-controls.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-controls.md index 42381076a..70540e1d0 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-controls.md +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-controls.md @@ -1,33 +1,20 @@ # `` -Mute audio, mute video, screen share, and hangup buttons. Accepts `call` as a prop **or** auto-consumes it from a parent `` context. +Bridges `devicesContext` + `callStateContext` → ``. The settings dropdown (echo cancellation, auto-gain, noise suppression) is always rendered — toggles are wired through `devicesContext`. ## Props | prop | type | default | description | |------|------|---------|-------------| -| `call` | `CallControlsCall` | — | Explicit call object (overrides context) | -| `orientation` | `'horizontal' \| 'vertical'` | `'horizontal'` | Bar layout direction | -| `respect-capabilities` | `boolean` | `false` | When `true`, gates buttons on server capabilities | +| `show-screen-share` | `boolean` | `true` | Show screen share button | +| `show-hand-raise` | `boolean` | `true` | Show hand raise button | +| `show-transcript` | `boolean` | `false` | Show transcript toggle | +| `transcript-active` | `boolean` | `false` | Transcript panel state | ## Events | event | detail | description | |-------|--------|-------------| -| `sw-mute-audio` | `{ muted: boolean }` | Audio toggle | -| `sw-mute-video` | `{ muted: boolean }` | Video toggle | -| `sw-screen-share` | `{ active: boolean }` | Screen share toggle | -| `sw-hangup` | — | Hangup pressed | - -## CSS custom properties - -| property | description | -|----------|-------------| -| `--sw-ctrl-gap` | Gap between buttons (default `8px`) | -| `--sw-ctrl-padding` | Bar padding (default `10px 14px`) | -| `--sw-ctrl-background` | Bar background (default `transparent`) | -| `--ctrl-*` | All primitive ctrl tokens (size, colours, menu) — see [ctrl tokens](../ui/sw-ctrl-button.md) | - -## Parts - -`bar`, `toggle-audio`, `toggle-video`, `toggle-screen-share`, `btn-hangup` +| `sw-hang-up` | `void` | Hangup pressed | +| `sw-fullscreen-toggle` | `{ fullscreen }` | Fullscreen toggled | +| `sw-transcript-toggle` | `void` | Transcript toggle pressed | diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-media.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-media.md index cc1010bfd..22455d6ae 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-media.md +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-media.md @@ -1,27 +1,9 @@ # `` -Remote video container. Root context provider for call — wrap all other call components inside it. +Remote video with aspect-ratio management. Consumes `callStateContext` + `devicesContext`. ## Props -| prop | type | default | description | -|------|------|---------|-------------| -| `call` | `Call` | — | SDK call object | - -## CSS custom properties - -| property | default | description | -|----------|---------|-------------| -| `--sw-color-primary` | `#044cf6` | Accent colour | -| `--sw-color-background` | `#000000` | Video background | -| `--sw-border-radius` | `0px` | Corner radius | - -## Slots - -| slot | description | -|------|-------------| -| *(default)* | Overlaid child components (controls, self-media, etc.) | - -## Parts - -`container`, `video` +| prop | type | description | +|------|------|-------------| +| `call` | `Call` | Legacy: explicit call (bypasses context) | diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-status.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-status.md index 46c494742..09885e6e7 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-status.md +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-status.md @@ -1,13 +1,3 @@ # `` -Displays call state label and elapsed duration timer. - -## Props - -| prop | type | description | -|------|------|-------------| -| `call` | `CallStatusCall` | Call object to observe | - -## CSS custom properties - -`--sw-color-primary`, `--sw-color-success`, `--sw-color-warning`, `--sw-color-danger`, `--sw-color-text`, `--sw-color-text-muted`, `--sw-font-family`, `--sw-font-size-sm`, `--sw-font-size-base`, `--sw-font-size-lg`, `--sw-space-1/2/3`, `--sw-border-radius` +Status text + duration timer. Consumes `callStateContext`. diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-widget.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-widget.md index cc4a876f3..8123b535e 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-widget.md +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-call-widget.md @@ -1,44 +1,29 @@ # `` -All-in-one call widget. Handles client init, dialling, media, controls, and optional AI transcript. Works inline or in a modal overlay. +All-in-one call widget. Creates client, manages call lifecycle, and provides `callStateContext`, `devicesContext`, and `transcriptContext` to all descendants. Works inline or in a modal overlay. ## Props | prop | type | default | description | |------|------|---------|-------------| -| `token` | `string` | `''` | SignalWire SAT or embed token (`c2c_` / `c2t_`) | -| `host` | `string` | `''` | Server host (defaults to `embeds.signalwire.com`) | -| `destination` | `string` | `''` | Call destination address | -| `modal` | `boolean` | `false` | Render in a `` overlay | -| `transcription` | `boolean` | `false` | Show AI transcript panel | +| `token` | `string` | `''` | SAT or embed token | +| `host` | `string` | `''` | Server host | +| `destination` | `string` | `''` | Call destination | +| `modal` | `boolean` | `false` | Render in modal overlay | +| `transcription` | `boolean` | `false` | Show transcript panel | +| `user-events` | `boolean` | `false` | Inject AI `user_event` payloads (links, code) into transcript | +| `allow-incoming-calls` | `boolean` | `false` | Listen for inbound calls and prompt to accept/reject | ## Methods | method | description | |--------|-------------| -| `dial()` | Imperatively start a call (also triggered by clicking a slotted element) | - -## Events - -| event | detail | description | -|-------|--------|-------------| -| `user_event` | signaling payload | Forwarded `user_event` from the signaling stream | +| `dial()` | Initiate call | +| `hangup()` | End call | ## Slots | slot | description | |------|-------------| -| *(default)* | Trigger element (button) — click starts the call / opens modal | - -## CSS custom properties - -All `--ctrl-*` tokens are set on `:host` and inherited by inner controls. Override any of them to retheme the entire widget. - -| property | default | -|----------|---------| -| `--ctrl-size` | `40px` | -| `--ctrl-bg` | `rgba(255,255,255,0.12)` | -| `--ctrl-active-bg` | `#ef4444` | -| `--ctrl-primary-bg` | `#044cf6` | -| `--ctrl-danger-bg` | `#ef4444` | -| `--ctrl-menu-bg` | `#1a1a2a` | +| `background` | Background element (e.g. ``) | +| *(default)* | Trigger element (click to dial) | diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-click-to-call.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-click-to-call.md index ca81f970d..c9a1cabab 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/components/sw-click-to-call.md +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-click-to-call.md @@ -1,24 +1,12 @@ # `` -Single-button widget that dials on click and shows mute/hangup once connected. +Thin wrapper around `sw-call-widget modal`. Renders a green call button that opens a modal when clicked. ## Props | prop | type | default | description | |------|------|---------|-------------| -| `client` | `ClickToCallClient` | — | Initialised SignalWire client | -| `destination` | `string` | — | Address to dial | +| `token` | `string` | `''` | SAT or embed token | +| `host` | `string` | `''` | Server host | +| `destination` | `string` | `''` | Call destination | | `label` | `string` | `'Call'` | Button label | -| `audio-only` | `boolean` | `false` | Disable video | - -## Events - -| event | detail | description | -|-------|--------|-------------| -| `sw-dial` | `{ destination }` | Call initiated | -| `sw-hangup` | — | Call ended | -| `sw-mute-toggle` | `{ muted: boolean }` | Mute toggled | - -## CSS custom properties - -`--sw-color-primary/hover`, `--sw-color-success/hover`, `--sw-color-danger/hover`, `--sw-color-warning`, `--sw-color-text/muted/inverse`, `--sw-color-background/hover`, `--sw-color-border`, `--sw-font-family`, `--sw-font-size-sm/base/lg`, `--sw-space-1/2/3/4`, `--sw-border-radius`, `--sw-border-radius-full` diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-dialpad.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-dialpad.md index 86b3180ca..2a7ae7b09 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/components/sw-dialpad.md +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-dialpad.md @@ -1,23 +1,10 @@ -# `` +# `` -DTMF keypad with optional call button. +DTMF bridge. Sends digits via `callState.sendDigits()`. Consumes `callStateContext`. ## Props | prop | type | default | description | |------|------|---------|-------------| -| `call` | `DialpadCall` | — | Active call for sending DTMF | -| `show-call-button` | `boolean` | `false` | Show a dial/hangup action button | -| `placeholder` | `string` | — | Input placeholder text | - -## Events - -| event | detail | description | -|-------|--------|-------------| -| `sw-digit-press` | `{ digit, digits }` | Key pressed | -| `sw-backspace` | `{ digits }` | Backspace pressed | -| `sw-dial` | `{ digits }` | Call button pressed | - -## CSS custom properties - -`--sw-color-primary/hover`, `--sw-color-success/danger`, `--sw-color-text/muted`, `--sw-color-border`, `--sw-color-background/hover/active`, `--sw-font-family`, `--sw-font-size-sm/base/lg/xl`, `--sw-border-radius`, `--sw-border-radius-full` +| `show-call-button` | `boolean` | `false` | Show dial/hangup button | +| `placeholder` | `string` | `'Enter number'` | Input placeholder text | diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-local-camera.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-local-camera.md index 99d833b0b..615a3a239 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/components/sw-local-camera.md +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-local-camera.md @@ -1,10 +1,11 @@ # `` -Local camera preview with a muted overlay. +Local camera PiP. Adaptive aspect ratio from video track. Consumes `callStateContext` + `devicesContext`. ## Props -| prop | type | default | description | -|------|------|---------|-------------| -| `stream` | `MediaStream \| null` | `null` | Local media stream | -| `videoMuted` | `boolean` | `false` | Show camera-off overlay | +| prop | type | description | +|------|------|-------------| +| `stream` | `MediaStream` | Explicit stream (bypasses context) | +| `videoMuted` | `boolean` | Explicit mute (bypasses context) | +| `mirror` | `boolean` | Mirror video horizontally | diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-participant-controls.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-participant-controls.md index 00b743848..b2d9e1c40 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/components/sw-participant-controls.md +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-participant-controls.md @@ -1,26 +1,11 @@ # `` -Per-participant moderation controls: mute, video mute, remove, volume, pin. +Per-participant control panel. Consumes `callStateContext`. ## Props -| prop | type | default | description | -|------|------|---------|-------------| -| `participant` | `ControlParticipant` | — | Participant to control | -| `capabilities` | `string[]` | `[]` | Allowed actions | -| `show-volume` | `boolean` | `false` | Show volume slider | -| `show-pin` | `boolean` | `false` | Show pin button | - -## Events - -| event | detail | description | -|-------|--------|-------------| -| `sw-participant-mute-audio` | `{ participant, muted }` | — | -| `sw-participant-mute-video` | `{ participant, muted }` | — | -| `sw-participant-remove` | `{ participant }` | — | -| `sw-participant-volume` | `{ participant, volume }` | — | -| `sw-participant-pin` | `{ participant, pinned }` | — | - -## CSS custom properties - -`--sw-color-primary/hover`, `--sw-color-success/danger/hover`, `--sw-color-warning`, `--sw-color-text/muted/inverse`, `--sw-color-background/hover/active`, `--sw-color-border`, `--sw-font-family`, `--sw-font-size-xs/sm/base`, `--sw-space-1/2/3/4`, `--sw-border-radius` +| prop | type | description | +|------|------|-------------| +| `participant-id` | `string` | ID of participant to control | +| `show-volume` | `boolean` | Show volume slider | +| `show-pin` | `boolean` | Show pin button | diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-participants.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-participants.md index f18d598b3..042b4cb72 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/components/sw-participants.md +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-participants.md @@ -1,24 +1,3 @@ # `` -Renders positioned overlays for each remote participant. Consumes `callContext`. - -## Props - -| prop | type | description | -|------|------|-------------| -| `call` | `Call` | Explicit call (overrides context) | - -## Events - -| event | detail | description | -|-------|--------|-------------| -| `sw-participant-mute-audio` | `{ participant }` | — | -| `sw-participant-mute-video` | `{ participant }` | — | -| `sw-participant-remove` | `{ participant }` | — | - -## Slots - -| slot | description | -|------|-------------| -| *(default)* | Overlaid content (e.g. ``) | -| `controls-{memberId}` | Per-participant control overlay | +Layout layer overlays. Consumes `callStateContext`. diff --git a/fern/products/browser-sdk/pages/v4/web-components/components/sw-self-media.md b/fern/products/browser-sdk/pages/v4/web-components/components/sw-self-media.md index 03893f06e..71b416d77 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/components/sw-self-media.md +++ b/fern/products/browser-sdk/pages/v4/web-components/components/sw-self-media.md @@ -1,9 +1,9 @@ # `` -Local video preview. Consumes `callContext` from a parent ``. +Local video positioned by layout layers. Consumes `callStateContext`. ## Props | prop | type | default | description | |------|------|---------|-------------| -| `mirror` | `boolean` | `false` | Horizontally flip the video (selfie mode) | +| `mirror` | `boolean` | `false` | Mirror video horizontally | diff --git a/fern/products/browser-sdk/pages/v4/web-components/ui/one-layout.md b/fern/products/browser-sdk/pages/v4/web-components/ui/one-layout.md index d6ddcd375..6ce25303c 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/ui/one-layout.md +++ b/fern/products/browser-sdk/pages/v4/web-components/ui/one-layout.md @@ -1,38 +1,37 @@ -# `` +# `` -Responsive split layout: video pane + controls bar + animated transcript panel. Switches from side-by-side to stacked below 600 px. +Fluid grid layout. Aspect-ratio-driven (side transcript on landscape, bottom on portrait). ## Props | prop | type | default | description | |------|------|---------|-------------| -| `transcript` | `boolean` | `false` | Open the transcript panel | -| `shadow` | `boolean` | `false` | Apply drop shadow to host | +| `transcript` | `boolean` | `false` | Show transcript pane | +| `loading` | `boolean` | `false` | Show spinner overlay | +| `shadow` | `boolean` | `false` | Drop shadow | ## Methods | method | description | |--------|-------------| -| `toggleTranscript()` | Animates transcript panel open/closed | +| `toggleTranscript()` | Toggle transcript panel | +| `toggleFullscreen()` | Toggle fullscreen | ## Slots | slot | description | |------|-------------| -| `video` | Main video area | -| `background` | Background image/picture behind video | -| `floating-video` | PiP overlay (bottom-right of video) | -| `controls` | Controls bar below video | -| `transcript` | Transcript side panel | +| `video` | Remote video | +| `background` | Background image | +| `floating-video` | PiP overlay | +| `controls` | Control bar | +| `transcript` | Transcript panel | ## CSS custom properties -| property | default | description | -|----------|---------|-------------| -| `--transcript-toggle-duration` | `350ms` | Panel animation duration | -| `--transcript-toggle-easing` | `ease-in-out` | Panel animation easing | -| `--transcript-toggle-blackout` | `black` | Overlay colour during transition | -| `--roundness` | `0` | Corner radius | -| `--drop-shadow` | — | Box shadow (when `shadow` is set) | -| `--video-bg-thumb` | — | Blurred background data URI | -| `--video-bg-blur` | `20px` | Background blur radius | +| property | default | +|----------|---------| +| `--roundness` | `var(--sw-radius)` | +| `--pip-width` | `clamp(80px, 20%, 200px)` | +| `--pip-bottom` | `12px` | +| `--pip-right` | `12px` | diff --git a/fern/products/browser-sdk/pages/v4/web-components/ui/responsive-container.md b/fern/products/browser-sdk/pages/v4/web-components/ui/responsive-container.md index 046dddcc6..e2b2d9be1 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/ui/responsive-container.md +++ b/fern/products/browser-sdk/pages/v4/web-components/ui/responsive-container.md @@ -1,13 +1,3 @@ -# `` +# `` -Sizes itself to a responsive modal footprint. `16:9` aspect ratio at 90 vw; full-bleed on mobile; height-capped on short viewports. - -## Props - -None. - -## Slots - -| slot | description | -|------|-------------| -| *(default)* | Content to size | +Viewport-responsive sizing (80-90vw, 16:9). diff --git a/fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-button.md b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-button.md index b433bf2e2..6f2719776 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-button.md +++ b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-button.md @@ -1,51 +1,7 @@ -# `` +# `` -Plain action button for control bars. - -## Props - -| prop | type | default | description | -|------|------|---------|-------------| -| `variant` | `'default' \| 'primary' \| 'danger'` | `'default'` | Colour variant | -| `disabled` | `boolean` | `false` | — | -| `label` | `string` | `''` | `aria-label` | - -## Slots - -| slot | description | -|------|-------------| -| *(default)* | Icon or content | +Toggle button + optional chevron dropdown. ## Parts -`button` - -## Shared ctrl tokens - -All `sw-ctrl-*` primitives inherit these CSS custom properties. Set them on any ancestor to theme the entire control bar. - -| property | default | description | -|----------|---------|-------------| -| `--ctrl-size` | `44px` | Button width & height | -| `--ctrl-radius` | `50%` | Button border radius | -| `--ctrl-bg` | `rgba(255,255,255,0.12)` | Default surface | -| `--ctrl-bg-hover` | `rgba(255,255,255,0.22)` | Hover surface | -| `--ctrl-fg` | `#ffffff` | Icon colour | -| `--ctrl-focus-ring` | `#044cf6` | Focus outline colour | -| `--ctrl-active-bg` | `#ef4444` | Toggle active background | -| `--ctrl-active-bg-hover` | `#dc2626` | Toggle active hover | -| `--ctrl-active-fg` | `#ffffff` | Toggle active icon | -| `--ctrl-primary-bg` | `#044cf6` | Primary variant background | -| `--ctrl-primary-bg-hover` | `#0339c4` | — | -| `--ctrl-primary-fg` | `#ffffff` | — | -| `--ctrl-danger-bg` | `#ef4444` | Danger variant background | -| `--ctrl-danger-bg-hover` | `#dc2626` | — | -| `--ctrl-danger-fg` | `#ffffff` | — | -| `--ctrl-label-color` | `rgba(255,255,255,0.55)` | Indicator text colour | -| `--ctrl-label-size` | `10px` | Indicator text size | -| `--ctrl-menu-bg` | `#1e1e2e` | Drop-up menu background | -| `--ctrl-menu-border` | `rgba(255,255,255,0.14)` | Menu border | -| `--ctrl-menu-item-hover` | `rgba(255,255,255,0.1)` | Menu item hover | -| `--ctrl-menu-item-active` | `rgba(4,76,246,0.35)` | Selected menu item | -| `--ctrl-menu-radius` | `10px` | Menu border radius | -| `--ctrl-menu-shadow` | `0 8px 24px rgba(0,0,0,0.45)` | Menu shadow | +`button`, `chevron` diff --git a/fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-dropup.md b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-dropup.md index 85fdeea00..3258d48e1 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-dropup.md +++ b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-ctrl-dropup.md @@ -1,32 +1,7 @@ -# `` +# `` -Button that opens a menu above itself. Shows the selected item label as a small indicator beneath the icon. - -## Props - -| prop | type | default | description | -|------|------|---------|-------------| -| `options` | `DropupOption[]` | `[]` | `{ value: string, label: string }[]` | -| `value` | `string` | `''` | Currently selected value | -| `disabled` | `boolean` | `false` | — | -| `label` | `string` | `''` | `aria-label` for the trigger button | - -## Events - -| event | detail | description | -|-------|--------|-------------| -| `sw-change` | `{ value: string }` | Option selected | - -## Slots - -| slot | description | -|------|-------------| -| *(default)* | Trigger icon | +Positioned menu. ## Parts -`button`, `button-open`, `indicator` - -## CSS tokens - -Inherits all `--ctrl-*` tokens. Menu appearance controlled by `--ctrl-menu-*` tokens — see [sw-ctrl-button](./sw-ctrl-button.md#shared-ctrl-tokens). +`menu`, `item` diff --git a/fern/products/browser-sdk/pages/v4/web-components/ui/sw-modal.md b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-modal.md index a7f4cba43..1c61c2c1c 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/ui/sw-modal.md +++ b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-modal.md @@ -1,24 +1,9 @@ -# `` +# `` -Wraps a native `` with bounce-in/out animations and body scroll lock. +Native `` wrapper with bounce animations. ## Props -| prop | type | default | description | -|------|------|---------|-------------| -| `open` | `boolean` | `false` | Show/hide the dialog | - -## Slots - -| slot | description | -|------|-------------| -| *(default)* | Dialog content | - -## CSS custom properties - -| property | default | -|----------|---------| -| `--modal-animation` | `bounce-in 200ms ease-out` | -| `--modal-close-animation` | `bounce-out 200ms ease-out` | -| `--modal-backdrop-animation` | `backdrop-in 200ms ease-out` | -| `--modal-backdrop-close-animation` | `backdrop-out 200ms ease-out` | +| prop | type | +|------|------| +| `open` | `boolean` | diff --git a/fern/products/browser-sdk/pages/v4/web-components/ui/sw-prompt.md b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-prompt.md index 873d9e497..f33b81ddb 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/ui/sw-prompt.md +++ b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-prompt.md @@ -1,31 +1,9 @@ -# `` / `showPrompt()` +# `` -Confirm/alert dialog. Use the element directly or the `showPrompt` helper. +Prompt/alert dialog. Programmatic: `showPrompt({ title, description, type })`. -## Props - -| prop | type | default | description | -|------|------|---------|-------------| -| `title` | `string` | — | Dialog heading | -| `description` | `string` | `''` | Body text (or use default slot) | -| `type` | `'confirm' \| 'alert'` | `'confirm'` | `confirm` shows Accept/Reject; `alert` shows OK | - -## Methods - -| method | returns | description | -|--------|---------|-------------| -| `show()` | `Promise` | Open and await user choice | - -## Helper function +## Programmatic usage ```ts -import { showPrompt } from '@signalwire/web-components'; - -const ok = await showPrompt({ title: 'Delete?', type: 'confirm' }); +showPrompt({ title, description, type }) ``` - -## Slots - -| slot | description | -|------|-------------| -| *(default)* | Body content (falls back to `description` prop) | diff --git a/fern/products/browser-sdk/pages/v4/web-components/ui/sw-transcript-view.md b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-transcript-view.md index fe3899e6f..0d76ecd4d 100644 --- a/fern/products/browser-sdk/pages/v4/web-components/ui/sw-transcript-view.md +++ b/fern/products/browser-sdk/pages/v4/web-components/ui/sw-transcript-view.md @@ -1,23 +1,19 @@ -# `` +# `` -Renders AI transcript bubbles. Consumes `transcriptContext` — must be inside a host that uses `TranscriptController`. +Scrollable chat-bubble list with auto-scroll. ## Props -None. - -## Behaviour - -- User bubbles right-aligned (blue), agent bubbles left-aligned (grey) -- Partial entries shown at reduced opacity -- New entries animate in with a scale pop -- Auto-scrolls to bottom when near the bottom +| prop | type | default | description | +|------|------|---------|-------------| +| `entries` | `TranscriptEntry[]` | `[]` | Transcript entries to display | +| `header` | `string` | `'Transcript'` | Panel header text | +| `empty-text` | `string` | `'Transcript will appear here'` | Placeholder when no entries | ## CSS parts | part | description | |------|-------------| +| `header` | Panel header | | `messages` | Scrollable message container | | `bubble` | Any message bubble | -| `bubble-user` | User bubble | -| `bubble-agent` | Agent bubble | From 9b63762f927546c3e7b4937e611d5fe2d9454002 Mon Sep 17 00:00:00 2001 From: nirav Date: Wed, 29 Apr 2026 02:43:02 +0545 Subject: [PATCH 3/4] try granular files for class-methods --- fern/fern.config.json | 2 +- .../pages/v4/reference/classes/Address.md | 720 +----- .../v4/reference/classes/Address/activity$.md | 17 + .../v4/reference/classes/Address/activity.md | 17 + .../classes/Address/cachedObservable.md | 26 + .../v4/reference/classes/Address/channels$.md | 13 + .../v4/reference/classes/Address/channels.md | 25 + .../v4/reference/classes/Address/coverUrl$.md | 13 + .../v4/reference/classes/Address/coverUrl.md | 13 + .../classes/Address/createBehaviorSubject.md | 25 + .../classes/Address/createReplaySubject.md | 26 + .../classes/Address/createSubject.md | 19 + .../v4/reference/classes/Address/createdAt.md | 13 + .../classes/Address/defaultChannel.md | 13 + .../classes/Address/deferEmission.md | 32 + .../v4/reference/classes/Address/destroy.md | 13 + .../reference/classes/Address/destroyed$.md | 17 + .../reference/classes/Address/displayName$.md | 13 + .../reference/classes/Address/displayName.md | 13 + .../v4/reference/classes/Address/history.md | 20 + .../pages/v4/reference/classes/Address/id.md | 13 + .../v4/reference/classes/Address/locked$.md | 13 + .../v4/reference/classes/Address/locked.md | 13 + .../v4/reference/classes/Address/name.md | 13 + .../reference/classes/Address/previewUrl$.md | 13 + .../reference/classes/Address/previewUrl.md | 13 + .../classes/Address/publicCachedObservable.md | 38 + .../reference/classes/Address/resourceId$.md | 13 + .../reference/classes/Address/resourceId.md | 13 + .../v4/reference/classes/Address/sendText.md | 23 + .../reference/classes/Address/subscribeTo.md | 26 + .../reference/classes/Address/textMessage.md | 21 + .../v4/reference/classes/Address/type$.md | 13 + .../v4/reference/classes/Address/type.md | 13 + .../v4/reference/classes/CallCreateError.md | 10 +- .../v4/reference/classes/ClientPreferences.md | 712 +----- .../autoMuteVideoOnHidden.md | 29 + .../checkConnectionOnVisible.md | 29 + .../ClientPreferences/connectionTimeout.md | 29 + .../defaultAudioConstraints.md | 29 + .../defaultVideoConstraints.md | 29 + .../degradationBitrateThreshold.md | 29 + .../degradationRecoveryThreshold.md | 29 + .../ClientPreferences/deviceDebounceTime.md | 29 + .../devicePollingInterval.md | 29 + .../ClientPreferences/disableUdpIceServers.md | 29 + .../enableAutoDegradation.md | 29 + .../enableNetworkChangeDetection.md | 29 + .../ClientPreferences/enableRelayFallback.md | 29 + .../enableSavePreferences.md | 18 + .../enableServerHangupInterception.md | 29 + .../ClientPreferences/iceCandidateTimeout.md | 29 + .../iceDisconnectedGracePeriod.md | 29 + .../ClientPreferences/iceGatheringTimeout.md | 29 + .../ClientPreferences/iceRestartTimeout.md | 29 + .../classes/ClientPreferences/iceServers.md | 29 + .../inputAudioConstraints.md | 29 + .../inputVideoConstraints.md | 29 + .../ClientPreferences/keyframeBurstWindow.md | 29 + .../ClientPreferences/keyframeCooldown.md | 29 + .../ClientPreferences/keyframeMaxBurst.md | 29 + .../ClientPreferences/maxRecoveryAttempts.md | 29 + .../persistDeviceSelection.md | 29 + .../ClientPreferences/preferredAudioCodecs.md | 29 + .../ClientPreferences/preferredAudioInput.md | 29 + .../ClientPreferences/preferredAudioOutput.md | 29 + .../ClientPreferences/preferredVideoCodecs.md | 29 + .../ClientPreferences/preferredVideoInput.md | 29 + .../classes/ClientPreferences/receiveAudio.md | 29 + .../classes/ClientPreferences/receiveVideo.md | 29 + .../reconnectCallsTimeout.md | 29 + .../ClientPreferences/reconnectDelayMax.md | 29 + .../ClientPreferences/reconnectDelayMin.md | 29 + .../ClientPreferences/recoveryCooldown.md | 29 + .../ClientPreferences/recoveryDebounceTime.md | 29 + .../refreshDevicesOnVisible.md | 29 + .../ClientPreferences/reinviteDebounceTime.md | 29 + .../ClientPreferences/reinviteMaxAttempts.md | 29 + .../ClientPreferences/reinviteTimeout.md | 29 + .../classes/ClientPreferences/relayHost.md | 29 + .../classes/ClientPreferences/relayOnly.md | 29 + .../ClientPreferences/statsBaselineSamples.md | 29 + .../ClientPreferences/statsHistorySize.md | 29 + .../statsJitterSpikeMultiplier.md | 29 + .../statsNoPacketThreshold.md | 29 + .../statsPacketLossThreshold.md | 29 + .../ClientPreferences/statsPollingInterval.md | 29 + .../statsRttSpikeMultiplier.md | 29 + .../classes/ClientPreferences/stereoAudio.md | 29 + .../syncDevicesToActiveCalls.md | 29 + .../ClientPreferences/userVariables.md | 29 + .../reference/classes/CollectionFetchError.md | 8 +- .../v4/reference/classes/DPoPInitError.md | 6 +- .../v4/reference/classes/DeviceTokenError.md | 6 +- .../classes/EmbedTokenCredentialProvider.md | 63 +- .../authenticate.md | 25 + .../EmbedTokenCredentialProvider/refresh.md | 29 + .../classes/InvalidCredentialsError.md | 6 +- .../v4/reference/classes/MediaTrackError.md | 10 +- .../v4/reference/classes/MessageParseError.md | 6 +- .../classes/OverconstrainedFallbackError.md | 40 + .../pages/v4/reference/classes/Participant.md | 1615 +----------- .../classes/Participant/addressId$.md | 17 + .../classes/Participant/addressId.md | 17 + .../classes/Participant/audioMuted$.md | 17 + .../classes/Participant/audioMuted.md | 17 + .../classes/Participant/autoGain$.md | 17 + .../reference/classes/Participant/autoGain.md | 17 + .../classes/Participant/cachedObservable.md | 26 + .../Participant/createBehaviorSubject.md | 25 + .../Participant/createReplaySubject.md | 26 + .../classes/Participant/createSubject.md | 19 + .../v4/reference/classes/Participant/deaf$.md | 17 + .../v4/reference/classes/Participant/deaf.md | 17 + .../classes/Participant/deferEmission.md | 32 + .../reference/classes/Participant/denoise$.md | 17 + .../reference/classes/Participant/denoise.md | 17 + .../reference/classes/Participant/destroy.md | 15 + .../classes/Participant/destroyed$.md | 17 + .../classes/Participant/echoCancellation$.md | 17 + .../classes/Participant/echoCancellation.md | 17 + .../v4/reference/classes/Participant/end.md | 15 + .../classes/Participant/handraised$.md | 17 + .../classes/Participant/handraised.md | 17 + .../classes/Participant/inputSensitivity$.md | 24 + .../classes/Participant/inputSensitivity.md | 18 + .../classes/Participant/inputVolume$.md | 24 + .../classes/Participant/inputVolume.md | 19 + .../classes/Participant/isAudience.md | 17 + .../classes/Participant/isTalking$.md | 17 + .../classes/Participant/isTalking.md | 17 + .../classes/Participant/lowbitrate$.md | 17 + .../classes/Participant/lowbitrate.md | 17 + .../v4/reference/classes/Participant/meta$.md | 17 + .../v4/reference/classes/Participant/meta.md | 17 + .../v4/reference/classes/Participant/mute.md | 15 + .../classes/Participant/muteVideo.md | 15 + .../v4/reference/classes/Participant/name$.md | 17 + .../v4/reference/classes/Participant/name.md | 17 + .../reference/classes/Participant/nodeId$.md | 17 + .../reference/classes/Participant/nodeId.md | 17 + .../classes/Participant/noiseSuppression$.md | 17 + .../classes/Participant/noiseSuppression.md | 17 + .../classes/Participant/outputVolume$.md | 23 + .../classes/Participant/outputVolume.md | 18 + .../classes/Participant/position$.md | 17 + .../reference/classes/Participant/position.md | 17 + .../Participant/publicCachedObservable.md | 38 + .../reference/classes/Participant/remove.md | 15 + .../Participant/setAudioInputSensitivity.md | 28 + .../Participant/setAudioInputVolume.md | 26 + .../Participant/setAudioOutputVolume.md | 27 + .../reference/classes/Participant/setMeta.md | 25 + .../classes/Participant/setPosition.md | 21 + .../classes/Participant/subscribeTo.md | 26 + .../classes/Participant/subscriberId$.md | 17 + .../classes/Participant/subscriberId.md | 17 + .../Participant/toggleAudioInputAutoGain.md | 15 + .../classes/Participant/toggleDeaf.md | 15 + .../Participant/toggleEchoCancellation.md | 15 + .../classes/Participant/toggleHandraise.md | 15 + .../classes/Participant/toggleLowbitrate.md | 13 + .../classes/Participant/toggleMute.md | 15 + .../classes/Participant/toggleMuteVideo.md | 15 + .../Participant/toggleNoiseSuppression.md | 15 + .../v4/reference/classes/Participant/type$.md | 17 + .../v4/reference/classes/Participant/type.md | 17 + .../reference/classes/Participant/unmute.md | 15 + .../classes/Participant/unmuteVideo.md | 15 + .../classes/Participant/updateMeta.md | 25 + .../classes/Participant/videoMuted$.md | 17 + .../classes/Participant/videoMuted.md | 17 + .../reference/classes/Participant/visible$.md | 17 + .../reference/classes/Participant/visible.md | 17 + .../v4/reference/classes/PreflightError.md | 39 + .../v4/reference/classes/RecoveryError.md | 43 + .../v4/reference/classes/SelfCapabilities.md | 618 +---- .../SelfCapabilities/cachedObservable.md | 26 + .../SelfCapabilities/createBehaviorSubject.md | 25 + .../SelfCapabilities/createReplaySubject.md | 26 + .../classes/SelfCapabilities/createSubject.md | 19 + .../classes/SelfCapabilities/deferEmission.md | 32 + .../classes/SelfCapabilities/destroy.md | 13 + .../classes/SelfCapabilities/destroyed$.md | 17 + .../classes/SelfCapabilities/device$.md | 13 + .../classes/SelfCapabilities/device.md | 13 + .../classes/SelfCapabilities/end$.md | 13 + .../reference/classes/SelfCapabilities/end.md | 13 + .../classes/SelfCapabilities/lock$.md | 13 + .../classes/SelfCapabilities/lock.md | 13 + .../classes/SelfCapabilities/member$.md | 13 + .../classes/SelfCapabilities/member.md | 13 + .../publicCachedObservable.md | 38 + .../classes/SelfCapabilities/screenshare$.md | 13 + .../classes/SelfCapabilities/screenshare.md | 13 + .../classes/SelfCapabilities/self$.md | 13 + .../classes/SelfCapabilities/self.md | 13 + .../classes/SelfCapabilities/sendDigit$.md | 13 + .../classes/SelfCapabilities/sendDigit.md | 13 + .../classes/SelfCapabilities/setLayout$.md | 13 + .../classes/SelfCapabilities/setLayout.md | 13 + .../classes/SelfCapabilities/state$.md | 13 + .../classes/SelfCapabilities/state.md | 13 + .../classes/SelfCapabilities/subscribeTo.md | 26 + .../classes/SelfCapabilities/vmutedHide$.md | 13 + .../classes/SelfCapabilities/vmutedHide.md | 13 + .../v4/reference/classes/SelfParticipant.md | 2203 +---------------- .../SelfParticipant/addAdditionalDevice.md | 21 + .../SelfParticipant/addAudioInputDevice.md | 23 + .../SelfParticipant/addInputDevices.md | 21 + .../SelfParticipant/addVideoInputDevice.md | 23 + .../classes/SelfParticipant/addressId$.md | 21 + .../classes/SelfParticipant/addressId.md | 21 + .../classes/SelfParticipant/audioMuted$.md | 21 + .../classes/SelfParticipant/audioMuted.md | 21 + .../classes/SelfParticipant/autoGain$.md | 21 + .../classes/SelfParticipant/autoGain.md | 21 + .../SelfParticipant/cachedObservable.md | 26 + .../SelfParticipant/createBehaviorSubject.md | 25 + .../SelfParticipant/createReplaySubject.md | 26 + .../classes/SelfParticipant/createSubject.md | 19 + .../classes/SelfParticipant/deaf$.md | 21 + .../reference/classes/SelfParticipant/deaf.md | 21 + .../classes/SelfParticipant/deferEmission.md | 32 + .../classes/SelfParticipant/denoise$.md | 21 + .../classes/SelfParticipant/denoise.md | 21 + .../classes/SelfParticipant/destroy.md | 15 + .../classes/SelfParticipant/destroyed$.md | 17 + .../SelfParticipant/disableStudioAudio.md | 16 + .../SelfParticipant/echoCancellation$.md | 21 + .../SelfParticipant/echoCancellation.md | 21 + .../SelfParticipant/enableStudioAudio.md | 16 + .../reference/classes/SelfParticipant/end.md | 19 + .../classes/SelfParticipant/handraised$.md | 21 + .../classes/SelfParticipant/handraised.md | 21 + .../SelfParticipant/inputSensitivity$.md | 28 + .../SelfParticipant/inputSensitivity.md | 22 + .../classes/SelfParticipant/inputVolume$.md | 28 + .../classes/SelfParticipant/inputVolume.md | 23 + .../classes/SelfParticipant/isAudience.md | 21 + .../classes/SelfParticipant/isTalking$.md | 21 + .../classes/SelfParticipant/isTalking.md | 21 + .../classes/SelfParticipant/lowbitrate$.md | 21 + .../classes/SelfParticipant/lowbitrate.md | 21 + .../classes/SelfParticipant/meta$.md | 21 + .../reference/classes/SelfParticipant/meta.md | 21 + .../reference/classes/SelfParticipant/mute.md | 19 + .../classes/SelfParticipant/muteVideo.md | 19 + .../classes/SelfParticipant/name$.md | 21 + .../reference/classes/SelfParticipant/name.md | 21 + .../classes/SelfParticipant/nodeId$.md | 21 + .../classes/SelfParticipant/nodeId.md | 21 + .../SelfParticipant/noiseSuppression$.md | 21 + .../SelfParticipant/noiseSuppression.md | 21 + .../classes/SelfParticipant/outputVolume$.md | 27 + .../classes/SelfParticipant/outputVolume.md | 22 + .../classes/SelfParticipant/position$.md | 21 + .../classes/SelfParticipant/position.md | 21 + .../SelfParticipant/publicCachedObservable.md | 38 + .../classes/SelfParticipant/remove.md | 19 + .../SelfParticipant/removeAdditionalDevice.md | 21 + .../SelfParticipant/screenShareStatus$.md | 17 + .../SelfParticipant/screenShareStatus.md | 17 + .../SelfParticipant/selectAudioInputDevice.md | 22 + .../selectAudioOutputDevice.md | 22 + .../SelfParticipant/selectVideoInputDevice.md | 22 + .../setAudioInputDeviceConstraints.md | 21 + .../setAudioInputSensitivity.md | 32 + .../SelfParticipant/setAudioInputVolume.md | 30 + .../SelfParticipant/setAudioOutputVolume.md | 31 + .../setInputDevicesConstraints.md | 23 + .../classes/SelfParticipant/setMeta.md | 29 + .../classes/SelfParticipant/setPosition.md | 25 + .../setVideoInputDeviceConstraints.md | 21 + .../SelfParticipant/startScreenShare.md | 15 + .../SelfParticipant/stopScreenShare.md | 15 + .../classes/SelfParticipant/studioAudio$.md | 17 + .../classes/SelfParticipant/studioAudio.md | 17 + .../classes/SelfParticipant/subscribeTo.md | 26 + .../classes/SelfParticipant/subscriberId$.md | 21 + .../classes/SelfParticipant/subscriberId.md | 21 + .../toggleAudioInputAutoGain.md | 19 + .../classes/SelfParticipant/toggleDeaf.md | 19 + .../SelfParticipant/toggleEchoCancellation.md | 19 + .../SelfParticipant/toggleHandraise.md | 19 + .../SelfParticipant/toggleLowbitrate.md | 17 + .../classes/SelfParticipant/toggleMute.md | 19 + .../SelfParticipant/toggleMuteVideo.md | 19 + .../SelfParticipant/toggleNoiseSuppression.md | 19 + .../classes/SelfParticipant/type$.md | 21 + .../reference/classes/SelfParticipant/type.md | 21 + .../classes/SelfParticipant/unmute.md | 19 + .../classes/SelfParticipant/unmuteVideo.md | 19 + .../classes/SelfParticipant/updateMeta.md | 29 + .../classes/SelfParticipant/videoMuted$.md | 21 + .../classes/SelfParticipant/videoMuted.md | 21 + .../classes/SelfParticipant/visible$.md | 21 + .../classes/SelfParticipant/visible.md | 21 + .../pages/v4/reference/classes/SignalWire.md | 1184 +-------- .../applySelectedAudioOutputDevice.md | 29 + .../classes/SignalWire/audioInputDevices$.md | 19 + .../classes/SignalWire/audioInputDevices.md | 19 + .../classes/SignalWire/audioInputDisabled$.md | 19 + .../classes/SignalWire/audioInputDisabled.md | 19 + .../classes/SignalWire/audioOutputDevices$.md | 19 + .../classes/SignalWire/audioOutputDevices.md | 19 + .../classes/SignalWire/cachedObservable.md | 26 + .../classes/SignalWire/clearDeviceState.md | 15 + .../reference/classes/SignalWire/connect.md | 45 + .../SignalWire/createBehaviorSubject.md | 25 + .../classes/SignalWire/createReplaySubject.md | 26 + .../classes/SignalWire/createSubject.md | 19 + .../classes/SignalWire/deferEmission.md | 32 + .../reference/classes/SignalWire/destroy.md | 15 + .../classes/SignalWire/destroyed$.md | 17 + .../SignalWire/deviceInfoToConstraints.md | 21 + .../classes/SignalWire/deviceRecovered$.md | 20 + .../v4/reference/classes/SignalWire/dial.md | 41 + .../classes/SignalWire/directory$.md | 23 + .../reference/classes/SignalWire/directory.md | 14 + .../classes/SignalWire/disableAudioInput.md | 15 + .../SignalWire/disableDeviceMonitoring.md | 15 + .../classes/SignalWire/disableVideoInput.md | 15 + .../classes/SignalWire/disconnect.md | 14 + .../classes/SignalWire/enableAudioInput.md | 15 + .../SignalWire/enableDeviceMonitoring.md | 15 + .../classes/SignalWire/enableVideoInput.md | 15 + .../classes/SignalWire/enumerateDevices.md | 15 + .../reference/classes/SignalWire/errors$.md | 19 + .../classes/SignalWire/exportDiagnostics.md | 12 + .../SignalWire/getDeviceCapabilities.md | 23 + .../classes/SignalWire/isConnected$.md | 13 + .../classes/SignalWire/isConnected.md | 13 + .../classes/SignalWire/isRegistered$.md | 13 + .../classes/SignalWire/isRegistered.md | 13 + .../classes/SignalWire/isValidDevice.md | 23 + .../SignalWire/platformCapabilities.md | 13 + .../reference/classes/SignalWire/preflight.md | 34 + .../SignalWire/publicCachedObservable.md | 38 + .../v4/reference/classes/SignalWire/ready$.md | 13 + .../reference/classes/SignalWire/register.md | 18 + .../SignalWire/requestMediaPermissions.md | 21 + .../classes/SignalWire/resetToDefaults.md | 14 + .../SignalWire/selectAudioInputDevice.md | 21 + .../SignalWire/selectAudioOutputDevice.md | 21 + .../SignalWire/selectVideoInputDevice.md | 21 + .../SignalWire/selectedAudioInputDevice$.md | 19 + .../SignalWire/selectedAudioInputDevice.md | 19 + .../selectedAudioInputDeviceConstraints.md | 19 + .../SignalWire/selectedAudioOutputDevice$.md | 19 + .../SignalWire/selectedAudioOutputDevice.md | 19 + .../SignalWire/selectedVideoInputDevice$.md | 19 + .../SignalWire/selectedVideoInputDevice.md | 19 + .../selectedVideoInputDeviceConstraints.md | 19 + .../reference/classes/SignalWire/session.md | 13 + .../classes/SignalWire/setStorageManager.md | 21 + .../classes/SignalWire/subscribeTo.md | 26 + .../classes/SignalWire/subscriber$.md | 22 + .../classes/SignalWire/subscriber.md | 13 + .../classes/SignalWire/unregister.md | 13 + .../classes/SignalWire/videoInputDevices$.md | 19 + .../classes/SignalWire/videoInputDevices.md | 19 + .../classes/SignalWire/videoInputDisabled$.md | 19 + .../classes/SignalWire/videoInputDisabled.md | 19 + .../classes/StaticCredentialProvider.md | 20 +- .../StaticCredentialProvider/authenticate.md | 15 + .../pages/v4/reference/classes/Subscriber.md | 341 +-- .../classes/Subscriber/cachedObservable.md | 26 + .../Subscriber/createBehaviorSubject.md | 25 + .../classes/Subscriber/createReplaySubject.md | 26 + .../classes/Subscriber/createSubject.md | 19 + .../classes/Subscriber/deferEmission.md | 32 + .../reference/classes/Subscriber/destroy.md | 13 + .../classes/Subscriber/destroyed$.md | 17 + .../classes/Subscriber/populateInstance.md | 19 + .../Subscriber/publicCachedObservable.md | 38 + .../classes/Subscriber/subscribeTo.md | 26 + .../v4/reference/classes/TokenRefreshError.md | 6 +- .../v4/reference/classes/UnexpectedError.md | 6 +- .../v4/reference/classes/VertoPongError.md | 6 +- .../pages/v4/reference/classes/WebRTCCall.md | 1983 +-------------- .../reference/classes/WebRTCCall/address$.md | 17 + .../v4/reference/classes/WebRTCCall/answer.md | 36 + .../classes/WebRTCCall/answerMediaOptions.md | 17 + .../reference/classes/WebRTCCall/answered$.md | 17 + .../WebRTCCall/bandwidthConstrained$.md | 17 + .../classes/WebRTCCall/cachedObservable.md | 26 + .../classes/WebRTCCall/callEvent$.md | 15 + .../classes/WebRTCCall/callStates$.md | 17 + .../classes/WebRTCCall/callUpdated$.md | 17 + .../classes/WebRTCCall/capabilities$.md | 17 + .../classes/WebRTCCall/capabilities.md | 17 + .../WebRTCCall/createBehaviorSubject.md | 25 + .../classes/WebRTCCall/createReplaySubject.md | 26 + .../classes/WebRTCCall/createSubject.md | 19 + .../classes/WebRTCCall/deferEmission.md | 32 + .../reference/classes/WebRTCCall/destroy.md | 19 + .../classes/WebRTCCall/destroyed$.md | 17 + .../reference/classes/WebRTCCall/direction.md | 17 + .../classes/WebRTCCall/disablePushToTalk.md | 11 + .../classes/WebRTCCall/enablePushToTalk.md | 19 + .../reference/classes/WebRTCCall/errors$.md | 17 + .../reference/classes/WebRTCCall/execute.md | 36 + .../classes/WebRTCCall/executeMethod.md | 37 + .../v4/reference/classes/WebRTCCall/from.md | 17 + .../reference/classes/WebRTCCall/fromName.md | 17 + .../v4/reference/classes/WebRTCCall/hangup.md | 24 + .../classes/WebRTCCall/isNetworkHealthy$.md | 17 + .../classes/WebRTCCall/isNetworkHealthy.md | 17 + .../reference/classes/WebRTCCall/layout$.md | 17 + .../v4/reference/classes/WebRTCCall/layout.md | 17 + .../classes/WebRTCCall/layoutEvent$.md | 11 + .../classes/WebRTCCall/layoutLayers$.md | 17 + .../classes/WebRTCCall/layoutLayers.md | 17 + .../classes/WebRTCCall/layoutUpdates$.md | 17 + .../reference/classes/WebRTCCall/layouts$.md | 17 + .../reference/classes/WebRTCCall/layouts.md | 17 + .../classes/WebRTCCall/localAudioLevel$.md | 15 + .../WebRTCCall/localMicrophoneGain$.md | 13 + .../classes/WebRTCCall/localSpeaking$.md | 14 + .../classes/WebRTCCall/localStream$.md | 17 + .../classes/WebRTCCall/localStream.md | 17 + .../reference/classes/WebRTCCall/locked$.md | 17 + .../v4/reference/classes/WebRTCCall/locked.md | 17 + .../classes/WebRTCCall/mediaDirections$.md | 17 + .../classes/WebRTCCall/mediaDirections.md | 17 + .../classes/WebRTCCall/mediaParamsUpdated$.md | 17 + .../classes/WebRTCCall/memberJoined$.md | 17 + .../classes/WebRTCCall/memberLeft$.md | 17 + .../classes/WebRTCCall/memberTalking$.md | 17 + .../classes/WebRTCCall/memberUpdated$.md | 17 + .../v4/reference/classes/WebRTCCall/meta$.md | 17 + .../v4/reference/classes/WebRTCCall/meta.md | 17 + .../classes/WebRTCCall/networkIssues$.md | 17 + .../classes/WebRTCCall/networkIssues.md | 17 + .../classes/WebRTCCall/networkMetrics$.md | 17 + .../classes/WebRTCCall/networkMetrics.md | 17 + .../reference/classes/WebRTCCall/nodeId$.md | 17 + .../v4/reference/classes/WebRTCCall/nodeId.md | 17 + .../classes/WebRTCCall/notifyModifyFailed.md | 11 + .../classes/WebRTCCall/participants$.md | 17 + .../classes/WebRTCCall/participants.md | 17 + .../classes/WebRTCCall/participantsId$.md | 11 + .../WebRTCCall/publicCachedObservable.md | 38 + .../classes/WebRTCCall/qualityLevel$.md | 17 + .../classes/WebRTCCall/qualityScore$.md | 17 + .../classes/WebRTCCall/raiseHandPriority$.md | 17 + .../classes/WebRTCCall/raiseHandPriority.md | 17 + .../classes/WebRTCCall/recording$.md | 17 + .../reference/classes/WebRTCCall/recording.md | 17 + .../classes/WebRTCCall/recoveryEvent$.md | 17 + .../classes/WebRTCCall/recoveryState$.md | 17 + .../v4/reference/classes/WebRTCCall/reject.md | 20 + .../classes/WebRTCCall/remoteAudioLevel$.md | 19 + .../classes/WebRTCCall/remoteStream$.md | 17 + .../classes/WebRTCCall/remoteStream.md | 17 + .../classes/WebRTCCall/requestIceRestart.md | 15 + .../classes/WebRTCCall/requestKeyframe.md | 15 + .../classes/WebRTCCall/rtcPeerConnection.md | 17 + .../v4/reference/classes/WebRTCCall/self$.md | 17 + .../v4/reference/classes/WebRTCCall/self.md | 17 + .../reference/classes/WebRTCCall/selfId$.md | 17 + .../v4/reference/classes/WebRTCCall/selfId.md | 17 + .../classes/WebRTCCall/sendDigits.md | 27 + .../classes/WebRTCCall/setAutoGainControl.md | 17 + .../classes/WebRTCCall/setEchoCancellation.md | 21 + .../reference/classes/WebRTCCall/setLayout.md | 34 + .../WebRTCCall/setLocalMicrophoneGain.md | 30 + .../reference/classes/WebRTCCall/setMeta.md | 25 + .../classes/WebRTCCall/setNoiseSuppression.md | 17 + .../classes/WebRTCCall/setPushToTalkActive.md | 18 + .../classes/WebRTCCall/signalingEvent$.md | 17 + .../classes/WebRTCCall/startRecording.md | 17 + .../classes/WebRTCCall/startStreaming.md | 17 + .../reference/classes/WebRTCCall/status$.md | 17 + .../v4/reference/classes/WebRTCCall/status.md | 17 + .../classes/WebRTCCall/streaming$.md | 17 + .../reference/classes/WebRTCCall/streaming.md | 17 + .../reference/classes/WebRTCCall/subscribe.md | 41 + .../classes/WebRTCCall/subscribeTo.md | 26 + .../v4/reference/classes/WebRTCCall/toName.md | 17 + .../classes/WebRTCCall/toggleHold.md | 17 + .../classes/WebRTCCall/toggleIncomingAudio.md | 19 + .../classes/WebRTCCall/toggleIncomingVideo.md | 19 + .../classes/WebRTCCall/toggleLock.md | 15 + .../reference/classes/WebRTCCall/transfer.md | 25 + .../classes/WebRTCCall/updateMeta.md | 25 + .../classes/WebRTCCall/userVariables$.md | 17 + .../classes/WebRTCCall/userVariables.md | 35 + .../classes/WebRTCCall/webrtcMessages$.md | 11 + .../v4/reference/functions/embeddableCall.md | 2 +- .../pages/v4/reference/functions/getLogger.md | 2 +- .../reference/functions/isSelfParticipant.md | 2 +- .../v4/reference/functions/setDebugOptions.md | 17 + .../v4/reference/functions/setLogLevel.md | 18 + .../pages/v4/reference/functions/setLogger.md | 6 +- .../browser-sdk/pages/v4/reference/index.md | 49 +- .../v4/reference/interfaces/AddressHistory.md | 14 +- .../interfaces/AudioConstraintsEvent.md | 13 + .../interfaces/AuthenticateContext.md | 4 +- .../pages/v4/reference/interfaces/Call.md | 175 +- .../v4/reference/interfaces/CallAddress.md | 12 +- .../interfaces/CallCapabilitiesState.md | 20 +- .../interfaces/CallDiagnosticSummary.md | 20 + .../v4/reference/interfaces/CallError.md | 10 +- .../reference/interfaces/CallNetworkIssue.md | 13 + .../interfaces/CallNetworkMetrics.md | 18 + .../v4/reference/interfaces/CallOptions.md | 41 +- .../reference/interfaces/CallParticipant.md | 130 +- .../interfaces/CallSelfParticipant.md | 329 ++- .../v4/reference/interfaces/CallState.md | 36 +- .../interfaces/ConstraintFallbackEvent.md | 14 + .../interfaces/CredentialProvider.md | 6 +- .../v4/reference/interfaces/DebugOptions.md | 11 + .../reference/interfaces/DeviceController.md | 157 +- .../interfaces/DeviceRecoveryEvent.md | 14 + .../reference/interfaces/DiagnosticEvent.md | 14 + .../v4/reference/interfaces/DialOptions.md | 23 +- .../v4/reference/interfaces/Directory.md | 20 +- .../interfaces/JSONRPCErrorResponse.md | 10 +- .../v4/reference/interfaces/JSONRPCRequest.md | 10 +- .../interfaces/JSONRPCSuccessResponse.md | 10 +- .../v4/reference/interfaces/LayoutLayer.md | 24 +- .../reference/interfaces/MediaDirections.md | 6 +- .../v4/reference/interfaces/MediaOptions.md | 18 +- .../reference/interfaces/MediaParamsEvent.md | 13 + .../interfaces/MemberCapabilities.md | 24 +- .../reference/interfaces/NodeSocketAdapter.md | 6 +- .../reference/interfaces/OnOffCapability.md | 6 +- .../reference/interfaces/PendingRPCOptions.md | 6 +- .../reference/interfaces/PermissionResult.md | 14 + .../interfaces/PlatformCapabilities.md | 20 + .../reference/interfaces/PreflightOptions.md | 14 + .../reference/interfaces/PreflightResult.md | 31 + .../v4/reference/interfaces/RecoveryEvent.md | 15 + .../v4/reference/interfaces/SATClaims.md | 10 +- .../v4/reference/interfaces/SDKCredential.md | 8 +- .../v4/reference/interfaces/SDKLogger.md | 96 + .../interfaces/SelectDeviceOptions.md | 11 + .../interfaces/SessionDiagnostics.md | 20 + .../v4/reference/interfaces/SessionState.md | 23 +- .../reference/interfaces/SignalWireOptions.md | 22 +- .../pages/v4/reference/interfaces/Storage.md | 28 +- .../interfaces/StoredDevicePreference.md | 17 + .../v4/reference/interfaces/TextMessage.md | 10 +- .../reference/interfaces/TransferOptions.md | 4 +- .../reference/interfaces/WebRTCApiProvider.md | 6 +- .../interfaces/WebRTCMediaDevices.md | 12 +- .../reference/type-aliases/CallDirection.md | 7 + .../reference/type-aliases/CallErrorKind.md | 2 +- .../v4/reference/type-aliases/CallStatus.md | 4 +- .../v4/reference/type-aliases/Capability.md | 17 + .../reference/type-aliases/ExecuteMethod.md | 2 +- .../reference/type-aliases/JSONRPCResponse.md | 2 +- .../v4/reference/type-aliases/LogLevel.md | 7 + .../reference/type-aliases/MediaDirection.md | 2 +- .../v4/reference/type-aliases/QualityLevel.md | 7 + .../reference/type-aliases/RecoveryState.md | 7 + .../type-aliases/ResilienceCallStatus.md | 10 + .../type-aliases/ScreenShareStatus.md | 5 + .../type-aliases/SubscriberPresence.md | 7 + .../reference/type-aliases/VideoPosition.md | 2 +- .../type-aliases/WebSocketAdapter.md | 2 +- 563 files changed, 11621 insertions(+), 9389 deletions(-) create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/activity$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/activity.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/cachedObservable.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/channels$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/channels.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/coverUrl$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/coverUrl.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/createBehaviorSubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/createReplaySubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/createSubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/createdAt.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/defaultChannel.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/deferEmission.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/destroy.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/destroyed$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/displayName$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/displayName.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/history.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/id.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/locked$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/locked.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/name.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/previewUrl$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/previewUrl.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/publicCachedObservable.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/resourceId$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/resourceId.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/sendText.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/subscribeTo.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/textMessage.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/type$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Address/type.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/autoMuteVideoOnHidden.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/checkConnectionOnVisible.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/connectionTimeout.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/defaultAudioConstraints.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/defaultVideoConstraints.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/degradationBitrateThreshold.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/degradationRecoveryThreshold.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/deviceDebounceTime.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/devicePollingInterval.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/disableUdpIceServers.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableAutoDegradation.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableNetworkChangeDetection.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableRelayFallback.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableSavePreferences.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableServerHangupInterception.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceCandidateTimeout.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceDisconnectedGracePeriod.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceGatheringTimeout.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceRestartTimeout.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceServers.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/inputAudioConstraints.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/inputVideoConstraints.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/keyframeBurstWindow.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/keyframeCooldown.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/keyframeMaxBurst.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/maxRecoveryAttempts.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/persistDeviceSelection.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredAudioCodecs.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredAudioInput.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredAudioOutput.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredVideoCodecs.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredVideoInput.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/receiveAudio.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/receiveVideo.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reconnectCallsTimeout.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reconnectDelayMax.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reconnectDelayMin.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/recoveryCooldown.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/recoveryDebounceTime.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/refreshDevicesOnVisible.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reinviteDebounceTime.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reinviteMaxAttempts.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reinviteTimeout.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/relayHost.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/relayOnly.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsBaselineSamples.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsHistorySize.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsJitterSpikeMultiplier.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsNoPacketThreshold.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsPacketLossThreshold.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsPollingInterval.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsRttSpikeMultiplier.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/stereoAudio.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/syncDevicesToActiveCalls.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/userVariables.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/EmbedTokenCredentialProvider/authenticate.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/EmbedTokenCredentialProvider/refresh.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/OverconstrainedFallbackError.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/addressId$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/addressId.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/audioMuted$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/audioMuted.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/autoGain$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/autoGain.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/cachedObservable.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/createBehaviorSubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/createReplaySubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/createSubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/deaf$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/deaf.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/deferEmission.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/denoise$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/denoise.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/destroy.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/destroyed$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/echoCancellation$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/echoCancellation.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/end.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/handraised$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/handraised.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/inputSensitivity$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/inputSensitivity.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/inputVolume$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/inputVolume.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/isAudience.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/isTalking$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/isTalking.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/lowbitrate$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/lowbitrate.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/meta$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/meta.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/mute.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/muteVideo.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/name$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/name.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/nodeId$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/nodeId.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/noiseSuppression$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/noiseSuppression.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/outputVolume$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/outputVolume.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/position$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/position.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/publicCachedObservable.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/remove.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/setAudioInputSensitivity.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/setAudioInputVolume.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/setAudioOutputVolume.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/setMeta.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/setPosition.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/subscribeTo.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/subscriberId$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/subscriberId.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/toggleAudioInputAutoGain.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/toggleDeaf.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/toggleEchoCancellation.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/toggleHandraise.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/toggleLowbitrate.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/toggleMute.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/toggleMuteVideo.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/toggleNoiseSuppression.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/type$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/type.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/unmute.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/unmuteVideo.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/updateMeta.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/videoMuted$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/videoMuted.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/visible$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Participant/visible.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/PreflightError.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/RecoveryError.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/cachedObservable.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/createBehaviorSubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/createReplaySubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/createSubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/deferEmission.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/destroy.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/destroyed$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/device$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/device.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/end$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/end.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/lock$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/lock.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/member$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/member.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/publicCachedObservable.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/screenshare$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/screenshare.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/self$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/self.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/sendDigit$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/sendDigit.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/setLayout$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/setLayout.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/state$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/state.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/subscribeTo.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/vmutedHide$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfCapabilities/vmutedHide.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/addAdditionalDevice.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/addAudioInputDevice.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/addInputDevices.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/addVideoInputDevice.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/addressId$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/addressId.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/audioMuted$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/audioMuted.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/autoGain$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/autoGain.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/cachedObservable.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/createBehaviorSubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/createReplaySubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/createSubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/deaf$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/deaf.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/deferEmission.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/denoise$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/denoise.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/destroy.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/destroyed$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/disableStudioAudio.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/echoCancellation$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/echoCancellation.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/enableStudioAudio.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/end.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/handraised$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/handraised.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/inputSensitivity$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/inputSensitivity.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/inputVolume$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/inputVolume.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/isAudience.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/isTalking$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/isTalking.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/lowbitrate$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/lowbitrate.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/meta$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/meta.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/mute.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/muteVideo.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/name$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/name.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/nodeId$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/nodeId.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/noiseSuppression$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/noiseSuppression.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/outputVolume$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/outputVolume.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/position$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/position.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/publicCachedObservable.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/remove.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/removeAdditionalDevice.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/screenShareStatus$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/screenShareStatus.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/selectAudioInputDevice.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/selectAudioOutputDevice.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/selectVideoInputDevice.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/setAudioInputDeviceConstraints.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/setAudioInputSensitivity.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/setAudioInputVolume.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/setAudioOutputVolume.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/setInputDevicesConstraints.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/setMeta.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/setPosition.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/setVideoInputDeviceConstraints.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/startScreenShare.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/stopScreenShare.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/studioAudio$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/studioAudio.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/subscribeTo.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/subscriberId$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/subscriberId.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/toggleAudioInputAutoGain.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/toggleDeaf.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/toggleEchoCancellation.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/toggleHandraise.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/toggleLowbitrate.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/toggleMute.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/toggleMuteVideo.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/toggleNoiseSuppression.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/type$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/type.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/unmute.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/unmuteVideo.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/updateMeta.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/videoMuted$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/videoMuted.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/visible$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SelfParticipant/visible.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/applySelectedAudioOutputDevice.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/audioInputDevices$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/audioInputDevices.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/audioInputDisabled$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/audioInputDisabled.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/audioOutputDevices$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/audioOutputDevices.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/cachedObservable.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/clearDeviceState.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/connect.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/createBehaviorSubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/createReplaySubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/createSubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/deferEmission.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/destroy.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/destroyed$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/deviceInfoToConstraints.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/deviceRecovered$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/dial.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/directory$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/directory.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/disableAudioInput.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/disableDeviceMonitoring.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/disableVideoInput.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/disconnect.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/enableAudioInput.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/enableDeviceMonitoring.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/enableVideoInput.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/enumerateDevices.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/errors$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/exportDiagnostics.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/getDeviceCapabilities.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/isConnected$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/isConnected.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/isRegistered$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/isRegistered.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/isValidDevice.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/platformCapabilities.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/preflight.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/publicCachedObservable.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/ready$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/register.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/requestMediaPermissions.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/resetToDefaults.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/selectAudioInputDevice.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/selectAudioOutputDevice.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/selectVideoInputDevice.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/selectedAudioInputDevice$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/selectedAudioInputDevice.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/selectedAudioInputDeviceConstraints.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/selectedAudioOutputDevice$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/selectedAudioOutputDevice.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/selectedVideoInputDevice$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/selectedVideoInputDevice.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/selectedVideoInputDeviceConstraints.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/session.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/setStorageManager.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/subscribeTo.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/subscriber$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/subscriber.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/unregister.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/videoInputDevices$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/videoInputDevices.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/videoInputDisabled$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/SignalWire/videoInputDisabled.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/StaticCredentialProvider/authenticate.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Subscriber/cachedObservable.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Subscriber/createBehaviorSubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Subscriber/createReplaySubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Subscriber/createSubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Subscriber/deferEmission.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Subscriber/destroy.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Subscriber/destroyed$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Subscriber/populateInstance.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Subscriber/publicCachedObservable.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/Subscriber/subscribeTo.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/address$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/answer.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/answerMediaOptions.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/answered$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/bandwidthConstrained$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/cachedObservable.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/callEvent$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/callStates$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/callUpdated$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/capabilities$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/capabilities.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/createBehaviorSubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/createReplaySubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/createSubject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/deferEmission.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/destroy.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/destroyed$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/direction.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/disablePushToTalk.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/enablePushToTalk.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/errors$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/execute.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/executeMethod.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/from.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/fromName.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/hangup.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/isNetworkHealthy$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/isNetworkHealthy.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/layout$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/layout.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/layoutEvent$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/layoutLayers$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/layoutLayers.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/layoutUpdates$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/layouts$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/layouts.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/localAudioLevel$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/localMicrophoneGain$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/localSpeaking$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/localStream$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/localStream.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/locked$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/locked.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/mediaDirections$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/mediaDirections.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/mediaParamsUpdated$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/memberJoined$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/memberLeft$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/memberTalking$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/memberUpdated$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/meta$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/meta.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/networkIssues$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/networkIssues.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/networkMetrics$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/networkMetrics.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/nodeId$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/nodeId.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/notifyModifyFailed.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/participants$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/participants.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/participantsId$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/publicCachedObservable.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/qualityLevel$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/qualityScore$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/raiseHandPriority$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/raiseHandPriority.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/recording$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/recording.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/recoveryEvent$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/recoveryState$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/reject.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/remoteAudioLevel$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/remoteStream$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/remoteStream.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/requestIceRestart.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/requestKeyframe.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/rtcPeerConnection.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/self$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/self.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/selfId$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/selfId.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/sendDigits.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/setAutoGainControl.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/setEchoCancellation.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/setLayout.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/setLocalMicrophoneGain.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/setMeta.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/setNoiseSuppression.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/setPushToTalkActive.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/signalingEvent$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/startRecording.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/startStreaming.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/status$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/status.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/streaming$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/streaming.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/subscribe.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/subscribeTo.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/toName.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/toggleHold.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/toggleIncomingAudio.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/toggleIncomingVideo.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/toggleLock.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/transfer.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/updateMeta.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/userVariables$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/userVariables.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/classes/WebRTCCall/webrtcMessages$.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/functions/setDebugOptions.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/functions/setLogLevel.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/AudioConstraintsEvent.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/CallDiagnosticSummary.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/CallNetworkIssue.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/CallNetworkMetrics.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/ConstraintFallbackEvent.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/DebugOptions.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/DeviceRecoveryEvent.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/DiagnosticEvent.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/MediaParamsEvent.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/PermissionResult.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/PlatformCapabilities.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/PreflightOptions.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/PreflightResult.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/RecoveryEvent.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/SDKLogger.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/SelectDeviceOptions.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/SessionDiagnostics.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/interfaces/StoredDevicePreference.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/type-aliases/CallDirection.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/type-aliases/Capability.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/type-aliases/LogLevel.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/type-aliases/QualityLevel.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/type-aliases/RecoveryState.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/type-aliases/ResilienceCallStatus.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/type-aliases/ScreenShareStatus.md create mode 100644 fern/products/browser-sdk/pages/v4/reference/type-aliases/SubscriberPresence.md diff --git a/fern/fern.config.json b/fern/fern.config.json index 922c7d61c..fb9f1280f 100644 --- a/fern/fern.config.json +++ b/fern/fern.config.json @@ -1,4 +1,4 @@ { "organization": "signalwire", - "version": "4.67.1" + "version": "4.106.1" } diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address.md index 4770af585..23c0ad9b6 100644 --- a/fern/products/browser-sdk/pages/v4/reference/classes/Address.md +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address.md @@ -1,6 +1,6 @@ # Class: Address -Defined in: [core/entities/Address.ts:31](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L31) +Defined in: [core/entities/Address.ts:31](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L31) Represents a contact or room in the directory. @@ -17,7 +17,7 @@ and activity state for an address entry. > **new Address**(`addressId`, `conversationManager`, `addressProvider`): `Address` -Defined in: [core/entities/Address.ts:67](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L67) +Defined in: [core/entities/Address.ts:67](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L67) #### Parameters @@ -39,688 +39,46 @@ Defined in: [core/entities/Address.ts:67](https://github.com/signalwire/browser- | Property | Modifier | Type | Default value | Description | Inherited from | Defined in | | ------ | ------ | ------ | ------ | ------ | ------ | ------ | -| `_destroyed$` | `protected` | `Subject`\<`void`\> | `undefined` | - | `Destroyable._destroyed$` | [behaviors/Destroyable.ts:17](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L17) | -| `history$` | `public` | `Observable`\<`EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`AddressHistory`](../interfaces/AddressHistory.md)\<`Address`\>\> \| `undefined`\> | `undefined` | Observable of call history for this address. Lazily loads conversation data. | - | [core/entities/Address.ts:49](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L49) | -| `subjects` | `protected` | `Subject`\<`unknown`\>[] | `[]` | - | `Destroyable.subjects` | [behaviors/Destroyable.ts:16](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L16) | -| `subscriptions` | `protected` | `Subscription`[] | `[]` | - | `Destroyable.subscriptions` | [behaviors/Destroyable.ts:15](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L15) | -| `textMessages$` | `public` | `Observable`\<`EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`TextMessage`](../interfaces/TextMessage.md)\<`Address`\>\> \| `undefined`\> | `undefined` | Observable of text messages for this address. Lazily loads conversation data. | - | [core/entities/Address.ts:43](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L43) | +| `_destroyed$` | `protected` | `Subject`\<`void`\> | `undefined` | - | `Destroyable._destroyed$` | [behaviors/Destroyable.ts:8](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L8) | +| `history$` | `public` | `Observable`\<`EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`AddressHistory`](../interfaces/AddressHistory.md)\<`Address`\>\> \| `undefined`\> | `undefined` | Observable of call history for this address. Lazily loads conversation data. | - | [core/entities/Address.ts:49](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L49) | +| `subjects` | `protected` | `Subject`\<`unknown`\>[] | `[]` | - | `Destroyable.subjects` | [behaviors/Destroyable.ts:7](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L7) | +| `subscriptions` | `protected` | `Subscription`[] | `[]` | - | `Destroyable.subscriptions` | [behaviors/Destroyable.ts:6](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L6) | +| `textMessages$` | `public` | `Observable`\<`EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`TextMessage`](../interfaces/TextMessage.md)\<`Address`\>\> \| `undefined`\> | `undefined` | Observable of text messages for this address. Lazily loads conversation data. | - | [core/entities/Address.ts:43](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L43) | ## Accessors -### $ - -#### Get Signature - -> **get** **$**(): `Observable`\<`this`\> - -Defined in: [behaviors/Destroyable.ts:100](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L100) - -##### Returns - -`Observable`\<`this`\> - -#### Inherited from - -`Destroyable.$` - -*** - -### activity - -#### Get Signature - -> **get** **activity**(): [`CallState`](../interfaces/CallState.md)[] - -Defined in: [core/entities/Address.ts:346](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L346) - -Active call states for this address. - -##### Throws - -Requires presence support. - -##### Returns - -[`CallState`](../interfaces/CallState.md)[] - -*** - -### activity$ - -#### Get Signature - -> **get** **activity$**(): `Observable`\<[`CallState`](../interfaces/CallState.md)[]\> - -Defined in: [core/entities/Address.ts:340](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L340) - -Observable of active call states for this address. - -##### Throws - -Requires presence support. - -##### Returns - -`Observable`\<[`CallState`](../interfaces/CallState.md)[]\> - -*** - -### channels - -#### Get Signature - -> **get** **channels**(): `object` - -Defined in: [core/entities/Address.ts:229](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L229) - -Available communication channels. - -##### Returns - -`object` - -###### audio? - -> `optional` **audio?**: `string` - -###### messaging? - -> `optional` **messaging?**: `string` - -###### video? - -> `optional` **video?**: `string` - -*** - -### channels$ - -#### Get Signature - -> **get** **channels$**(): `Observable`\<\{ `audio?`: `string`; `messaging?`: `string`; `video?`: `string`; \}\> - -Defined in: [core/entities/Address.ts:213](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L213) - -Observable of available communication channels (audio, video, messaging). - -##### Returns - -`Observable`\<\{ `audio?`: `string`; `messaging?`: `string`; `video?`: `string`; \}\> - -*** - -### coverUrl - -#### Get Signature - -> **get** **coverUrl**(): `string` \| `undefined` - -Defined in: [core/entities/Address.ts:165](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L165) - -Cover image URL. - -##### Returns - -`string` \| `undefined` - -*** - -### coverUrl$ - -#### Get Signature - -> **get** **coverUrl$**(): `Observable`\<`string` \| `undefined`\> - -Defined in: [core/entities/Address.ts:153](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L153) - -Observable of the cover image URL. - -##### Returns - -`Observable`\<`string` \| `undefined`\> - -*** - -### createdAt - -#### Get Signature - -> **get** **createdAt**(): `string` - -Defined in: [core/entities/Address.ts:102](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L102) - -ISO timestamp of when the address was created. - -##### Returns - -`string` - -*** - -### defaultChannel - -#### Get Signature - -> **get** **defaultChannel**(): `string` \| `undefined` - -Defined in: [core/entities/Address.ts:110](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L110) - -Default communication channel URI (video for rooms, audio otherwise). - -##### Returns - -`string` \| `undefined` - -*** - -### destroyed$ - -#### Get Signature - -> **get** **destroyed$**(): `Observable`\<`void`\> - -Defined in: [behaviors/Destroyable.ts:112](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L112) - -Observable that emits when the instance is destroyed - -##### Returns - -`Observable`\<`void`\> - -#### Inherited from - -`Destroyable.destroyed$` - -*** - -### displayName - -#### Get Signature - -> **get** **displayName**(): `string` - -Defined in: [core/entities/Address.ts:126](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L126) - -Human-readable display name. - -##### Returns - -`string` - -*** - -### displayName$ - -#### Get Signature - -> **get** **displayName$**(): `Observable`\<`string`\> - -Defined in: [core/entities/Address.ts:115](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L115) - -Observable of the human-readable display name. - -##### Returns - -`Observable`\<`string`\> - -*** - -### history - -#### Get Signature - -> **get** **history**(): `EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`AddressHistory`](../interfaces/AddressHistory.md)\<`Address`\>\> \| `undefined` - -Defined in: [core/entities/Address.ts:314](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L314) - -Collection of call history entries for this address, with pagination support. - -Returns `undefined` until [history$](#history) has been subscribed to (lazy-loaded). -Filters to `'log'` subtype messages including kind, status, start/end times. - -##### See - -[history$](#history) to trigger lazy loading. - -##### Returns - -`EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`AddressHistory`](../interfaces/AddressHistory.md)\<`Address`\>\> \| `undefined` - -*** - -### id - -#### Get Signature - -> **get** **id**(): `string` - -Defined in: [core/entities/Address.ts:90](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L90) - -Unique address identifier. - -##### Returns - -`string` - -*** - -### locked - -#### Get Signature - -> **get** **locked**(): `boolean` - -Defined in: [core/entities/Address.ts:241](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L241) - -Whether the address (room) is locked. - -##### Returns - -`boolean` - -*** - -### locked$ - -#### Get Signature - -> **get** **locked$**(): `Observable`\<`boolean`\> - -Defined in: [core/entities/Address.ts:249](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L249) - -Observable indicating whether the address (room) is locked. - -##### Returns - -`Observable`\<`boolean`\> - -*** - -### name - -#### Get Signature - -> **get** **name**(): `string` - -Defined in: [core/entities/Address.ts:94](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L94) - -Address name (resource identifier). - -##### Returns - -`string` - -*** - -### previewUrl - -#### Get Signature - -> **get** **previewUrl**(): `string` \| `undefined` - -Defined in: [core/entities/Address.ts:145](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L145) - -Preview image URL. - -##### Returns - -`string` \| `undefined` - -*** - -### previewUrl$ - -#### Get Signature - -> **get** **previewUrl$**(): `Observable`\<`string` \| `undefined`\> - -Defined in: [core/entities/Address.ts:134](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L134) - -Observable of the preview image URL. - -##### Returns - -`Observable`\<`string` \| `undefined`\> - -*** - -### resourceId - -#### Get Signature - -> **get** **resourceId**(): `string` - -Defined in: [core/entities/Address.ts:185](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L185) - -Underlying resource ID. - -##### Returns - -`string` - -*** - -### resourceId$ - -#### Get Signature - -> **get** **resourceId$**(): `Observable`\<`string`\> - -Defined in: [core/entities/Address.ts:173](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L173) - -Observable of the underlying resource ID. - -##### Returns - -`Observable`\<`string`\> - -*** - -### textMessage - -#### Get Signature - -> **get** **textMessage**(): `EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`TextMessage`](../interfaces/TextMessage.md)\<`Address`\>\> \| `undefined` - -Defined in: [core/entities/Address.ts:283](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L283) - -Collection of text messages for this address, with pagination support. - -Returns `undefined` until [textMessages$](#textmessages) has been subscribed to (lazy-loaded). -Filters to `'chat'` subtype messages from the conversation. - -##### See - - - [textMessages$](#textmessages) to trigger lazy loading. - - [sendText](#sendtext) to send a new message. - -##### Returns - -`EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`TextMessage`](../interfaces/TextMessage.md)\<`Address`\>\> \| `undefined` - -*** - -### type - -#### Get Signature - -> **get** **type**(): `ResourceType` - -Defined in: [core/entities/Address.ts:205](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L205) - -Resource type (e.g. `'room'`, `'subscriber'`). - -##### Returns - -`ResourceType` - -*** - -### type$ - -#### Get Signature - -> **get** **type$**(): `Observable`\<`ResourceType`\> - -Defined in: [core/entities/Address.ts:193](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L193) - -Observable of the resource type (e.g. `'room'`, `'subscriber'`). - -##### Returns - -`Observable`\<`ResourceType`\> +- [`activity`](./Address/activity.md) +- [`activity$`](./Address/activity$.md) +- [`channels`](./Address/channels.md) +- [`channels$`](./Address/channels$.md) +- [`coverUrl`](./Address/coverUrl.md) +- [`coverUrl$`](./Address/coverUrl$.md) +- [`createdAt`](./Address/createdAt.md) +- [`defaultChannel`](./Address/defaultChannel.md) +- [`destroyed$`](./Address/destroyed$.md) +- [`displayName`](./Address/displayName.md) +- [`displayName$`](./Address/displayName$.md) +- [`history`](./Address/history.md) +- [`id`](./Address/id.md) +- [`locked`](./Address/locked.md) +- [`locked$`](./Address/locked$.md) +- [`name`](./Address/name.md) +- [`previewUrl`](./Address/previewUrl.md) +- [`previewUrl$`](./Address/previewUrl$.md) +- [`resourceId`](./Address/resourceId.md) +- [`resourceId$`](./Address/resourceId$.md) +- [`textMessage`](./Address/textMessage.md) +- [`type`](./Address/type.md) +- [`type$`](./Address/type$.md) ## Methods -### cachedObservable() - -> `protected` **cachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> - -Defined in: [behaviors/Destroyable.ts:28](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L28) - -#### Type Parameters - -| Type Parameter | -| ------ | -| `T` | - -#### Parameters - -| Parameter | Type | -| ------ | ------ | -| `key` | `string` | -| `factory` | () => `Observable`\<`T`\> | - -#### Returns - -`Observable`\<`T`\> - -#### Inherited from - -`Destroyable.cachedObservable` - -*** - -### createBehaviorSubject() - -> `protected` **createBehaviorSubject**\<`T`\>(`initialValue`): `BehaviorSubject`\<`T`\> - -Defined in: [behaviors/Destroyable.ts:94](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L94) - -#### Type Parameters - -| Type Parameter | -| ------ | -| `T` | - -#### Parameters - -| Parameter | Type | -| ------ | ------ | -| `initialValue` | `T` | - -#### Returns - -`BehaviorSubject`\<`T`\> - -#### Inherited from - -`Destroyable.createBehaviorSubject` - -*** - -### createReplaySubject() - -> `protected` **createReplaySubject**\<`T`\>(`bufferSize?`, `windowTime?`): `ReplaySubject`\<`T`\> - -Defined in: [behaviors/Destroyable.ts:88](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L88) - -#### Type Parameters - -| Type Parameter | -| ------ | -| `T` | - -#### Parameters - -| Parameter | Type | -| ------ | ------ | -| `bufferSize?` | `number` | -| `windowTime?` | `number` | - -#### Returns - -`ReplaySubject`\<`T`\> - -#### Inherited from - -`Destroyable.createReplaySubject` - -*** - -### createSubject() - -> `protected` **createSubject**\<`T`\>(): `Subject`\<`T`\> - -Defined in: [behaviors/Destroyable.ts:82](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L82) - -#### Type Parameters - -| Type Parameter | -| ------ | -| `T` | - -#### Returns - -`Subject`\<`T`\> - -#### Inherited from - -`Destroyable.createSubject` - -*** - -### deferEmission() - -> `protected` **deferEmission**\<`T`\>(`observable`): `Observable`\<`T`\> - -Defined in: [behaviors/Destroyable.ts:70](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L70) - -Wraps an observable so emissions are deferred to the microtask queue. - -Use ONLY for public-facing getters that expose a subject via -`.asObservable()` without going through `cachedObservable`. - -Do NOT use for observables consumed internally by the SDK. - -#### Type Parameters - -| Type Parameter | -| ------ | -| `T` | - -#### Parameters - -| Parameter | Type | -| ------ | ------ | -| `observable` | `Observable`\<`T`\> | - -#### Returns - -`Observable`\<`T`\> - -#### Inherited from - -`Destroyable.deferEmission` - -*** - -### destroy() - -> **destroy**(): `void` - -Defined in: [behaviors/Destroyable.ts:20](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L20) - -#### Returns - -`void` - -#### Inherited from - -`Destroyable.destroy` - -*** - -### publicCachedObservable() - -> `protected` **publicCachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> - -Defined in: [behaviors/Destroyable.ts:51](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L51) - -Like `cachedObservable`, but defers emissions to the microtask queue -via `observeOn(asapScheduler)`. - -Use ONLY for public-facing observable getters that external consumers -subscribe to. Prevents a class of bugs where `BehaviorSubject` or -`ReplaySubject` replays synchronously during `subscribe()`, before -the subscription variable is assigned in the caller's scope. - -Do NOT use for observables consumed internally by the SDK — internal -code using `subscribeTo()`, `firstValueFrom()`, or `withLatestFrom()` -depends on synchronous emission delivery. - -#### Type Parameters - -| Type Parameter | -| ------ | -| `T` | - -#### Parameters - -| Parameter | Type | -| ------ | ------ | -| `key` | `string` | -| `factory` | () => `Observable`\<`T`\> | - -#### Returns - -`Observable`\<`T`\> - -#### Inherited from - -`Destroyable.publicCachedObservable` - -*** - -### sendText() - -> **sendText**(`text`): `Promise`\<`void`\> - -Defined in: [core/entities/Address.ts:270](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Address.ts#L270) - -Sends a text message to this address. - -#### Parameters - -| Parameter | Type | Description | -| ------ | ------ | ------ | -| `text` | `string` | The message text to send. | - -#### Returns - -`Promise`\<`void`\> - -#### Example - -```ts -await address.sendText('Hello!'); -``` - -*** - -### subscribeTo() - -> `protected` **subscribeTo**\<`T`\>(`observable`, `observerOrNext`): `void` - -Defined in: [behaviors/Destroyable.ts:74](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L74) - -#### Type Parameters - -| Type Parameter | -| ------ | -| `T` | - -#### Parameters - -| Parameter | Type | -| ------ | ------ | -| `observable` | `Observable`\<`T`\> | -| `observerOrNext` | `Partial`\<`Observer`\<`T`\>\> \| ((`value`) => `void`) \| `undefined` | - -#### Returns - -`void` - -#### Inherited from - -`Destroyable.subscribeTo` +- [`cachedObservable`](./Address/cachedObservable.md) +- [`createBehaviorSubject`](./Address/createBehaviorSubject.md) +- [`createReplaySubject`](./Address/createReplaySubject.md) +- [`createSubject`](./Address/createSubject.md) +- [`deferEmission`](./Address/deferEmission.md) +- [`destroy`](./Address/destroy.md) +- [`publicCachedObservable`](./Address/publicCachedObservable.md) +- [`sendText`](./Address/sendText.md) +- [`subscribeTo`](./Address/subscribeTo.md) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/activity$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/activity$.md new file mode 100644 index 000000000..41efb6fe3 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/activity$.md @@ -0,0 +1,17 @@ +# activity$ + +#### Get Signature + +> **get** **activity$**(): `Observable`\<[`CallState`](../../interfaces/CallState.md)[]\> + +Defined in: [core/entities/Address.ts:340](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L340) + +Observable of active call states for this address. + +##### Throws + +Requires presence support. + +##### Returns + +`Observable`\<[`CallState`](../../interfaces/CallState.md)[]\> diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/activity.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/activity.md new file mode 100644 index 000000000..60c6dc3d5 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/activity.md @@ -0,0 +1,17 @@ +# activity + +#### Get Signature + +> **get** **activity**(): [`CallState`](../../interfaces/CallState.md)[] + +Defined in: [core/entities/Address.ts:346](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L346) + +Active call states for this address. + +##### Throws + +Requires presence support. + +##### Returns + +[`CallState`](../../interfaces/CallState.md)[] diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/cachedObservable.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/cachedObservable.md new file mode 100644 index 000000000..4e2ba6b39 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/cachedObservable.md @@ -0,0 +1,26 @@ +# cachedObservable + +> `protected` **cachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:19](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L19) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `factory` | () => `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.cachedObservable` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/channels$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/channels$.md new file mode 100644 index 000000000..a2d225605 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/channels$.md @@ -0,0 +1,13 @@ +# channels$ + +#### Get Signature + +> **get** **channels$**(): `Observable`\<\{ `audio?`: `string`; `messaging?`: `string`; `video?`: `string`; \}\> + +Defined in: [core/entities/Address.ts:213](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L213) + +Observable of available communication channels (audio, video, messaging). + +##### Returns + +`Observable`\<\{ `audio?`: `string`; `messaging?`: `string`; `video?`: `string`; \}\> diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/channels.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/channels.md new file mode 100644 index 000000000..f5dc21395 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/channels.md @@ -0,0 +1,25 @@ +# channels + +#### Get Signature + +> **get** **channels**(): `object` + +Defined in: [core/entities/Address.ts:229](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L229) + +Available communication channels. + +##### Returns + +`object` + +###### audio? + +> `optional` **audio?**: `string` + +###### messaging? + +> `optional` **messaging?**: `string` + +###### video? + +> `optional` **video?**: `string` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/coverUrl$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/coverUrl$.md new file mode 100644 index 000000000..9a2ec58d4 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/coverUrl$.md @@ -0,0 +1,13 @@ +# coverUrl$ + +#### Get Signature + +> **get** **coverUrl$**(): `Observable`\<`string` \| `undefined`\> + +Defined in: [core/entities/Address.ts:153](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L153) + +Observable of the cover image URL. + +##### Returns + +`Observable`\<`string` \| `undefined`\> diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/coverUrl.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/coverUrl.md new file mode 100644 index 000000000..afe893146 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/coverUrl.md @@ -0,0 +1,13 @@ +# coverUrl + +#### Get Signature + +> **get** **coverUrl**(): `string` \| `undefined` + +Defined in: [core/entities/Address.ts:165](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L165) + +Cover image URL. + +##### Returns + +`string` \| `undefined` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/createBehaviorSubject.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/createBehaviorSubject.md new file mode 100644 index 000000000..352d48f52 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/createBehaviorSubject.md @@ -0,0 +1,25 @@ +# createBehaviorSubject + +> `protected` **createBehaviorSubject**\<`T`\>(`initialValue`): `BehaviorSubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:85](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L85) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `initialValue` | `T` | + +#### Returns + +`BehaviorSubject`\<`T`\> + +#### Inherited from + +`Destroyable.createBehaviorSubject` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/createReplaySubject.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/createReplaySubject.md new file mode 100644 index 000000000..73a4e3d3d --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/createReplaySubject.md @@ -0,0 +1,26 @@ +# createReplaySubject + +> `protected` **createReplaySubject**\<`T`\>(`bufferSize?`, `windowTime?`): `ReplaySubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:79](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L79) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `bufferSize?` | `number` | +| `windowTime?` | `number` | + +#### Returns + +`ReplaySubject`\<`T`\> + +#### Inherited from + +`Destroyable.createReplaySubject` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/createSubject.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/createSubject.md new file mode 100644 index 000000000..532f32e97 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/createSubject.md @@ -0,0 +1,19 @@ +# createSubject + +> `protected` **createSubject**\<`T`\>(): `Subject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:73](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L73) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Returns + +`Subject`\<`T`\> + +#### Inherited from + +`Destroyable.createSubject` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/createdAt.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/createdAt.md new file mode 100644 index 000000000..d6e2c204a --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/createdAt.md @@ -0,0 +1,13 @@ +# createdAt + +#### Get Signature + +> **get** **createdAt**(): `string` + +Defined in: [core/entities/Address.ts:102](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L102) + +ISO timestamp of when the address was created. + +##### Returns + +`string` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/defaultChannel.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/defaultChannel.md new file mode 100644 index 000000000..a19ec52b9 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/defaultChannel.md @@ -0,0 +1,13 @@ +# defaultChannel + +#### Get Signature + +> **get** **defaultChannel**(): `string` \| `undefined` + +Defined in: [core/entities/Address.ts:110](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L110) + +Default communication channel URI (video for rooms, audio otherwise). + +##### Returns + +`string` \| `undefined` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/deferEmission.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/deferEmission.md new file mode 100644 index 000000000..1b1fa66a9 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/deferEmission.md @@ -0,0 +1,32 @@ +# deferEmission + +> `protected` **deferEmission**\<`T`\>(`observable`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:61](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L61) + +Wraps an observable so emissions are deferred to the microtask queue. + +Use ONLY for public-facing getters that expose a subject via +`.asObservable()` without going through `cachedObservable`. + +Do NOT use for observables consumed internally by the SDK. + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `observable` | `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.deferEmission` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/destroy.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/destroy.md new file mode 100644 index 000000000..3879b122f --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/destroy.md @@ -0,0 +1,13 @@ +# destroy + +> **destroy**(): `void` + +Defined in: [behaviors/Destroyable.ts:11](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L11) + +#### Returns + +`void` + +#### Inherited from + +`Destroyable.destroy` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/destroyed$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/destroyed$.md new file mode 100644 index 000000000..63dc55fe7 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/destroyed$.md @@ -0,0 +1,17 @@ +# destroyed$ + +#### Get Signature + +> **get** **destroyed$**(): `Observable`\<`void`\> + +Defined in: [behaviors/Destroyable.ts:94](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L94) + +Observable that emits when the instance is destroyed + +##### Returns + +`Observable`\<`void`\> + +#### Inherited from + +`Destroyable.destroyed$` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/displayName$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/displayName$.md new file mode 100644 index 000000000..a14db9bc5 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/displayName$.md @@ -0,0 +1,13 @@ +# displayName$ + +#### Get Signature + +> **get** **displayName$**(): `Observable`\<`string`\> + +Defined in: [core/entities/Address.ts:115](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L115) + +Observable of the human-readable display name. + +##### Returns + +`Observable`\<`string`\> diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/displayName.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/displayName.md new file mode 100644 index 000000000..05ec5130f --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/displayName.md @@ -0,0 +1,13 @@ +# displayName + +#### Get Signature + +> **get** **displayName**(): `string` + +Defined in: [core/entities/Address.ts:126](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L126) + +Human-readable display name. + +##### Returns + +`string` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/history.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/history.md new file mode 100644 index 000000000..633301c12 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/history.md @@ -0,0 +1,20 @@ +# history + +#### Get Signature + +> **get** **history**(): `EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`AddressHistory`](../../interfaces/AddressHistory.md)\<`Address`\>\> \| `undefined` + +Defined in: [core/entities/Address.ts:314](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L314) + +Collection of call history entries for this address, with pagination support. + +Returns `undefined` until [history$](#history) has been subscribed to (lazy-loaded). +Filters to `'log'` subtype messages including kind, status, start/end times. + +##### See + +[history$](#history) to trigger lazy loading. + +##### Returns + +`EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`AddressHistory`](../../interfaces/AddressHistory.md)\<`Address`\>\> \| `undefined` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/id.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/id.md new file mode 100644 index 000000000..a6ff82f83 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/id.md @@ -0,0 +1,13 @@ +# id + +#### Get Signature + +> **get** **id**(): `string` + +Defined in: [core/entities/Address.ts:90](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L90) + +Unique address identifier. + +##### Returns + +`string` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/locked$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/locked$.md new file mode 100644 index 000000000..cd82d9885 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/locked$.md @@ -0,0 +1,13 @@ +# locked$ + +#### Get Signature + +> **get** **locked$**(): `Observable`\<`boolean`\> + +Defined in: [core/entities/Address.ts:249](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L249) + +Observable indicating whether the address (room) is locked. + +##### Returns + +`Observable`\<`boolean`\> diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/locked.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/locked.md new file mode 100644 index 000000000..df072fb25 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/locked.md @@ -0,0 +1,13 @@ +# locked + +#### Get Signature + +> **get** **locked**(): `boolean` + +Defined in: [core/entities/Address.ts:241](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L241) + +Whether the address (room) is locked. + +##### Returns + +`boolean` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/name.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/name.md new file mode 100644 index 000000000..6833a0c10 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/name.md @@ -0,0 +1,13 @@ +# name + +#### Get Signature + +> **get** **name**(): `string` + +Defined in: [core/entities/Address.ts:94](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L94) + +Address name (resource identifier). + +##### Returns + +`string` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/previewUrl$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/previewUrl$.md new file mode 100644 index 000000000..91501726b --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/previewUrl$.md @@ -0,0 +1,13 @@ +# previewUrl$ + +#### Get Signature + +> **get** **previewUrl$**(): `Observable`\<`string` \| `undefined`\> + +Defined in: [core/entities/Address.ts:134](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L134) + +Observable of the preview image URL. + +##### Returns + +`Observable`\<`string` \| `undefined`\> diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/previewUrl.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/previewUrl.md new file mode 100644 index 000000000..a83ecc430 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/previewUrl.md @@ -0,0 +1,13 @@ +# previewUrl + +#### Get Signature + +> **get** **previewUrl**(): `string` \| `undefined` + +Defined in: [core/entities/Address.ts:145](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L145) + +Preview image URL. + +##### Returns + +`string` \| `undefined` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/publicCachedObservable.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/publicCachedObservable.md new file mode 100644 index 000000000..2a7cb58b6 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/publicCachedObservable.md @@ -0,0 +1,38 @@ +# publicCachedObservable + +> `protected` **publicCachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:42](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L42) + +Like `cachedObservable`, but defers emissions to the microtask queue +via `observeOn(asapScheduler)`. + +Use ONLY for public-facing observable getters that external consumers +subscribe to. Prevents a class of bugs where `BehaviorSubject` or +`ReplaySubject` replays synchronously during `subscribe()`, before +the subscription variable is assigned in the caller's scope. + +Do NOT use for observables consumed internally by the SDK — internal +code using `subscribeTo()`, `firstValueFrom()`, or `withLatestFrom()` +depends on synchronous emission delivery. + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `factory` | () => `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.publicCachedObservable` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/resourceId$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/resourceId$.md new file mode 100644 index 000000000..a0cc59a23 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/resourceId$.md @@ -0,0 +1,13 @@ +# resourceId$ + +#### Get Signature + +> **get** **resourceId$**(): `Observable`\<`string`\> + +Defined in: [core/entities/Address.ts:173](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L173) + +Observable of the underlying resource ID. + +##### Returns + +`Observable`\<`string`\> diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/resourceId.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/resourceId.md new file mode 100644 index 000000000..7af5fca35 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/resourceId.md @@ -0,0 +1,13 @@ +# resourceId + +#### Get Signature + +> **get** **resourceId**(): `string` + +Defined in: [core/entities/Address.ts:185](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L185) + +Underlying resource ID. + +##### Returns + +`string` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/sendText.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/sendText.md new file mode 100644 index 000000000..0d860c7b3 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/sendText.md @@ -0,0 +1,23 @@ +# sendText + +> **sendText**(`text`): `Promise`\<`void`\> + +Defined in: [core/entities/Address.ts:270](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L270) + +Sends a text message to this address. + +#### Parameters + +| Parameter | Type | Description | +| ------ | ------ | ------ | +| `text` | `string` | The message text to send. | + +#### Returns + +`Promise`\<`void`\> + +#### Example + +```ts +await address.sendText('Hello!'); +``` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/subscribeTo.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/subscribeTo.md new file mode 100644 index 000000000..f75dcd4b5 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/subscribeTo.md @@ -0,0 +1,26 @@ +# subscribeTo + +> `protected` **subscribeTo**\<`T`\>(`observable`, `observerOrNext`): `void` + +Defined in: [behaviors/Destroyable.ts:65](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L65) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `observable` | `Observable`\<`T`\> | +| `observerOrNext` | `Partial`\<`Observer`\<`T`\>\> \| ((`value`) => `void`) \| `undefined` | + +#### Returns + +`void` + +#### Inherited from + +`Destroyable.subscribeTo` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/textMessage.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/textMessage.md new file mode 100644 index 000000000..d62d666a3 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/textMessage.md @@ -0,0 +1,21 @@ +# textMessage + +#### Get Signature + +> **get** **textMessage**(): `EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`TextMessage`](../../interfaces/TextMessage.md)\<`Address`\>\> \| `undefined` + +Defined in: [core/entities/Address.ts:283](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L283) + +Collection of text messages for this address, with pagination support. + +Returns `undefined` until [textMessages$](#textmessages) has been subscribed to (lazy-loaded). +Filters to `'chat'` subtype messages from the conversation. + +##### See + + - [textMessages$](#textmessages) to trigger lazy loading. + - [sendText](#sendtext) to send a new message. + +##### Returns + +`EntityCollectionTransformed`\<`GetConversationMessageResponse`, [`TextMessage`](../../interfaces/TextMessage.md)\<`Address`\>\> \| `undefined` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/type$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/type$.md new file mode 100644 index 000000000..c7a2ce1d6 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/type$.md @@ -0,0 +1,13 @@ +# type$ + +#### Get Signature + +> **get** **type$**(): `Observable`\<`ResourceType`\> + +Defined in: [core/entities/Address.ts:193](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L193) + +Observable of the resource type (e.g. `'room'`, `'subscriber'`). + +##### Returns + +`Observable`\<`ResourceType`\> diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Address/type.md b/fern/products/browser-sdk/pages/v4/reference/classes/Address/type.md new file mode 100644 index 000000000..d123f14f6 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Address/type.md @@ -0,0 +1,13 @@ +# type + +#### Get Signature + +> **get** **type**(): `ResourceType` + +Defined in: [core/entities/Address.ts:205](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Address.ts#L205) + +Resource type (e.g. `'room'`, `'subscriber'`). + +##### Returns + +`ResourceType` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/CallCreateError.md b/fern/products/browser-sdk/pages/v4/reference/classes/CallCreateError.md index ca955ff9f..fefb6d968 100644 --- a/fern/products/browser-sdk/pages/v4/reference/classes/CallCreateError.md +++ b/fern/products/browser-sdk/pages/v4/reference/classes/CallCreateError.md @@ -1,6 +1,6 @@ # Class: CallCreateError -Defined in: [core/errors.ts:264](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L264) +Defined in: [core/errors.ts:264](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L264) ## Extends @@ -12,7 +12,7 @@ Defined in: [core/errors.ts:264](https://github.com/signalwire/browser-sdk/blob/ > **new CallCreateError**(`message`, `error?`, `direction?`, `options?`): `CallCreateError` -Defined in: [core/errors.ts:265](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L265) +Defined in: [core/errors.ts:265](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L265) #### Parameters @@ -35,6 +35,6 @@ Defined in: [core/errors.ts:265](https://github.com/signalwire/browser-sdk/blob/ | Property | Modifier | Type | Default value | Inherited from | Defined in | | ------ | ------ | ------ | ------ | ------ | ------ | -| `direction` | `public` | `"inbound"` \| `"outbound"` | `'outbound'` | - | [core/errors.ts:268](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L268) | -| `error` | `public` | `unknown` | `null` | - | [core/errors.ts:267](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L267) | -| `message` | `public` | `string` | `undefined` | `Error.message` | [core/errors.ts:266](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L266) | +| `direction` | `public` | `"inbound"` \| `"outbound"` | `'outbound'` | - | [core/errors.ts:268](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L268) | +| `error` | `public` | `unknown` | `null` | - | [core/errors.ts:267](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L267) | +| `message` | `public` | `string` | `undefined` | `Error.message` | [core/errors.ts:266](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L266) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences.md index 7fa561604..1d2328455 100644 --- a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences.md +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences.md @@ -1,6 +1,6 @@ # Class: ClientPreferences -Defined in: [containers/PreferencesContainer.ts:220](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L220) +Defined in: [containers/PreferencesContainer.ts:479](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L479) Public preferences API for configuring SDK behavior. @@ -22,661 +22,61 @@ automatically loaded from storage and synced back on every change. ## Accessors -### connectionTimeout - -#### Get Signature - -> **get** **connectionTimeout**(): `number` - -Defined in: [containers/PreferencesContainer.ts:233](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L233) - -WebSocket connection timeout in seconds. - -##### Returns - -`number` - -#### Set Signature - -> **set** **connectionTimeout**(`seconds`): `void` - -Defined in: [containers/PreferencesContainer.ts:236](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L236) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `seconds` | `number` | - -##### Returns - -`void` - -*** - -### deviceDebounceTime - -#### Get Signature - -> **get** **deviceDebounceTime**(): `number` - -Defined in: [containers/PreferencesContainer.ts:336](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L336) - -Debounce time for device change events, in seconds. - -##### Returns - -`number` - -#### Set Signature - -> **set** **deviceDebounceTime**(`seconds`): `void` - -Defined in: [containers/PreferencesContainer.ts:339](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L339) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `seconds` | `number` | - -##### Returns - -`void` - -*** - -### devicePollingInterval - -#### Get Signature - -> **get** **devicePollingInterval**(): `number` - -Defined in: [containers/PreferencesContainer.ts:345](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L345) - -Polling interval for device enumeration, in seconds. - -##### Returns - -`number` - -#### Set Signature - -> **set** **devicePollingInterval**(`seconds`): `void` - -Defined in: [containers/PreferencesContainer.ts:348](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L348) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `seconds` | `number` | - -##### Returns - -`void` - -*** - -### disableUdpIceServers - -#### Get Signature - -> **get** **disableUdpIceServers**(): `boolean` - -Defined in: [containers/PreferencesContainer.ts:354](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L354) - -Whether to filter out UDP-based ICE servers. - -##### Returns - -`boolean` - -#### Set Signature - -> **set** **disableUdpIceServers**(`value`): `void` - -Defined in: [containers/PreferencesContainer.ts:357](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L357) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `value` | `boolean` | - -##### Returns - -`void` - -*** - -### iceCandidateTimeout - -#### Get Signature - -> **get** **iceCandidateTimeout**(): `number` - -Defined in: [containers/PreferencesContainer.ts:372](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L372) - -Timeout for individual ICE candidate gathering, in seconds. - -##### Returns - -`number` - -#### Set Signature - -> **set** **iceCandidateTimeout**(`seconds`): `void` - -Defined in: [containers/PreferencesContainer.ts:375](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L375) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `seconds` | `number` | - -##### Returns - -`void` - -*** - -### iceGatheringTimeout - -#### Get Signature - -> **get** **iceGatheringTimeout**(): `number` - -Defined in: [containers/PreferencesContainer.ts:381](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L381) - -Timeout for the entire ICE gathering phase, in seconds. - -##### Returns - -`number` - -#### Set Signature - -> **set** **iceGatheringTimeout**(`seconds`): `void` - -Defined in: [containers/PreferencesContainer.ts:384](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L384) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `seconds` | `number` | - -##### Returns - -`void` - -*** - -### iceServers - -#### Get Signature - -> **get** **iceServers**(): `RTCIceServer`[] \| `undefined` - -Defined in: [containers/PreferencesContainer.ts:390](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L390) - -Custom ICE servers for TURN/STUN configuration. - -##### Returns - -`RTCIceServer`[] \| `undefined` - -#### Set Signature - -> **set** **iceServers**(`value`): `void` - -Defined in: [containers/PreferencesContainer.ts:393](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L393) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `value` | `RTCIceServer`[] \| `undefined` | - -##### Returns - -`void` - -*** - -### inputAudioConstraints - -#### Get Signature - -> **get** **inputAudioConstraints**(): `MediaTrackConstraints` \| `undefined` - -Defined in: [containers/PreferencesContainer.ts:320](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L320) - -Default audio input track constraints. - -##### Returns - -`MediaTrackConstraints` \| `undefined` - -#### Set Signature - -> **set** **inputAudioConstraints**(`value`): `void` - -Defined in: [containers/PreferencesContainer.ts:323](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L323) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `value` | `MediaTrackConstraints` \| `undefined` | - -##### Returns - -`void` - -*** - -### inputVideoConstraints - -#### Get Signature - -> **get** **inputVideoConstraints**(): `MediaTrackConstraints` \| `undefined` - -Defined in: [containers/PreferencesContainer.ts:328](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L328) - -Default video input track constraints. - -##### Returns - -`MediaTrackConstraints` \| `undefined` - -#### Set Signature - -> **set** **inputVideoConstraints**(`value`): `void` - -Defined in: [containers/PreferencesContainer.ts:331](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L331) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `value` | `MediaTrackConstraints` \| `undefined` | - -##### Returns - -`void` - -*** - -### preferredAudioInput - -#### Get Signature - -> **get** **preferredAudioInput**(): `MediaDeviceInfo` \| `null` - -Defined in: [containers/PreferencesContainer.ts:296](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L296) - -Preferred audio input device for new calls. - -##### Returns - -`MediaDeviceInfo` \| `null` - -#### Set Signature - -> **set** **preferredAudioInput**(`value`): `void` - -Defined in: [containers/PreferencesContainer.ts:299](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L299) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `value` | `MediaDeviceInfo` \| `null` | - -##### Returns - -`void` - -*** - -### preferredAudioOutput - -#### Get Signature - -> **get** **preferredAudioOutput**(): `MediaDeviceInfo` \| `null` - -Defined in: [containers/PreferencesContainer.ts:304](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L304) - -Preferred audio output device for new calls. - -##### Returns - -`MediaDeviceInfo` \| `null` - -#### Set Signature - -> **set** **preferredAudioOutput**(`value`): `void` - -Defined in: [containers/PreferencesContainer.ts:307](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L307) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `value` | `MediaDeviceInfo` \| `null` | - -##### Returns - -`void` - -*** - -### preferredVideoInput - -#### Get Signature - -> **get** **preferredVideoInput**(): `MediaDeviceInfo` \| `null` - -Defined in: [containers/PreferencesContainer.ts:312](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L312) - -Preferred video input device for new calls. - -##### Returns - -`MediaDeviceInfo` \| `null` - -#### Set Signature - -> **set** **preferredVideoInput**(`value`): `void` - -Defined in: [containers/PreferencesContainer.ts:315](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L315) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `value` | `MediaDeviceInfo` \| `null` | - -##### Returns - -`void` - -*** - -### receiveAudio - -#### Get Signature - -> **get** **receiveAudio**(): `boolean` - -Defined in: [containers/PreferencesContainer.ts:287](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L287) - -Whether to receive remote audio by default. - -##### Returns - -`boolean` - -#### Set Signature - -> **set** **receiveAudio**(`value`): `void` - -Defined in: [containers/PreferencesContainer.ts:290](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L290) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `value` | `boolean` | - -##### Returns - -`void` - -*** - -### receiveVideo - -#### Get Signature - -> **get** **receiveVideo**(): `boolean` - -Defined in: [containers/PreferencesContainer.ts:278](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L278) - -Whether to receive remote video by default. - -##### Returns - -`boolean` - -#### Set Signature - -> **set** **receiveVideo**(`value`): `void` - -Defined in: [containers/PreferencesContainer.ts:281](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L281) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `value` | `boolean` | - -##### Returns - -`void` - -*** - -### reconnectCallsTimeout - -#### Get Signature - -> **get** **reconnectCallsTimeout**(): `number` - -Defined in: [containers/PreferencesContainer.ts:242](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L242) - -Timeout for reconnecting to previously attached calls, in seconds. - -##### Returns - -`number` - -#### Set Signature - -> **set** **reconnectCallsTimeout**(`seconds`): `void` - -Defined in: [containers/PreferencesContainer.ts:245](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L245) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `seconds` | `number` | - -##### Returns - -`void` - -*** - -### reconnectDelayMax - -#### Get Signature - -> **get** **reconnectDelayMax**(): `number` - -Defined in: [containers/PreferencesContainer.ts:260](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L260) - -Maximum reconnection backoff delay in seconds. - -##### Returns - -`number` - -#### Set Signature - -> **set** **reconnectDelayMax**(`seconds`): `void` - -Defined in: [containers/PreferencesContainer.ts:263](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L263) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `seconds` | `number` | - -##### Returns - -`void` - -*** - -### reconnectDelayMin - -#### Get Signature - -> **get** **reconnectDelayMin**(): `number` - -Defined in: [containers/PreferencesContainer.ts:251](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L251) - -Minimum reconnection backoff delay in seconds. - -##### Returns - -`number` - -#### Set Signature - -> **set** **reconnectDelayMin**(`seconds`): `void` - -Defined in: [containers/PreferencesContainer.ts:254](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L254) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `seconds` | `number` | - -##### Returns - -`void` - -*** - -### relayHost - -#### Get Signature - -> **get** **relayHost**(): `string` - -Defined in: [containers/PreferencesContainer.ts:269](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L269) - -Custom relay host URL. Empty string uses the default. - -##### Returns - -`string` - -#### Set Signature - -> **set** **relayHost**(`value`): `void` - -Defined in: [containers/PreferencesContainer.ts:272](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L272) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `value` | `string` | - -##### Returns - -`void` - -*** - -### relayOnly - -#### Get Signature - -> **get** **relayOnly**(): `boolean` - -Defined in: [containers/PreferencesContainer.ts:363](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L363) - -Whether to force TURN relay-only ICE candidates. - -##### Returns - -`boolean` - -#### Set Signature - -> **set** **relayOnly**(`value`): `void` - -Defined in: [containers/PreferencesContainer.ts:366](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L366) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `value` | `boolean` | - -##### Returns - -`void` - -*** - -### userVariables - -#### Get Signature - -> **get** **userVariables**(): `Record`\<`string`, `unknown`\> - -Defined in: [containers/PreferencesContainer.ts:399](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L399) - -Custom user variables attached to calls. - -##### Returns - -`Record`\<`string`, `unknown`\> - -#### Set Signature - -> **set** **userVariables**(`value`): `void` - -Defined in: [containers/PreferencesContainer.ts:402](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L402) - -##### Parameters - -| Parameter | Type | -| ------ | ------ | -| `value` | `Record`\<`string`, `unknown`\> | - -##### Returns - -`void` +- [`autoMuteVideoOnHidden`](./ClientPreferences/autoMuteVideoOnHidden.md) +- [`checkConnectionOnVisible`](./ClientPreferences/checkConnectionOnVisible.md) +- [`connectionTimeout`](./ClientPreferences/connectionTimeout.md) +- [`defaultAudioConstraints`](./ClientPreferences/defaultAudioConstraints.md) +- [`defaultVideoConstraints`](./ClientPreferences/defaultVideoConstraints.md) +- [`degradationBitrateThreshold`](./ClientPreferences/degradationBitrateThreshold.md) +- [`degradationRecoveryThreshold`](./ClientPreferences/degradationRecoveryThreshold.md) +- [`deviceDebounceTime`](./ClientPreferences/deviceDebounceTime.md) +- [`devicePollingInterval`](./ClientPreferences/devicePollingInterval.md) +- [`disableUdpIceServers`](./ClientPreferences/disableUdpIceServers.md) +- [`enableAutoDegradation`](./ClientPreferences/enableAutoDegradation.md) +- [`enableNetworkChangeDetection`](./ClientPreferences/enableNetworkChangeDetection.md) +- [`enableRelayFallback`](./ClientPreferences/enableRelayFallback.md) +- [`enableServerHangupInterception`](./ClientPreferences/enableServerHangupInterception.md) +- [`iceCandidateTimeout`](./ClientPreferences/iceCandidateTimeout.md) +- [`iceDisconnectedGracePeriod`](./ClientPreferences/iceDisconnectedGracePeriod.md) +- [`iceGatheringTimeout`](./ClientPreferences/iceGatheringTimeout.md) +- [`iceRestartTimeout`](./ClientPreferences/iceRestartTimeout.md) +- [`iceServers`](./ClientPreferences/iceServers.md) +- [`inputAudioConstraints`](./ClientPreferences/inputAudioConstraints.md) +- [`inputVideoConstraints`](./ClientPreferences/inputVideoConstraints.md) +- [`keyframeBurstWindow`](./ClientPreferences/keyframeBurstWindow.md) +- [`keyframeCooldown`](./ClientPreferences/keyframeCooldown.md) +- [`keyframeMaxBurst`](./ClientPreferences/keyframeMaxBurst.md) +- [`maxRecoveryAttempts`](./ClientPreferences/maxRecoveryAttempts.md) +- [`persistDeviceSelection`](./ClientPreferences/persistDeviceSelection.md) +- [`preferredAudioCodecs`](./ClientPreferences/preferredAudioCodecs.md) +- [`preferredAudioInput`](./ClientPreferences/preferredAudioInput.md) +- [`preferredAudioOutput`](./ClientPreferences/preferredAudioOutput.md) +- [`preferredVideoCodecs`](./ClientPreferences/preferredVideoCodecs.md) +- [`preferredVideoInput`](./ClientPreferences/preferredVideoInput.md) +- [`receiveAudio`](./ClientPreferences/receiveAudio.md) +- [`receiveVideo`](./ClientPreferences/receiveVideo.md) +- [`reconnectCallsTimeout`](./ClientPreferences/reconnectCallsTimeout.md) +- [`reconnectDelayMax`](./ClientPreferences/reconnectDelayMax.md) +- [`reconnectDelayMin`](./ClientPreferences/reconnectDelayMin.md) +- [`recoveryCooldown`](./ClientPreferences/recoveryCooldown.md) +- [`recoveryDebounceTime`](./ClientPreferences/recoveryDebounceTime.md) +- [`refreshDevicesOnVisible`](./ClientPreferences/refreshDevicesOnVisible.md) +- [`reinviteDebounceTime`](./ClientPreferences/reinviteDebounceTime.md) +- [`reinviteMaxAttempts`](./ClientPreferences/reinviteMaxAttempts.md) +- [`reinviteTimeout`](./ClientPreferences/reinviteTimeout.md) +- [`relayHost`](./ClientPreferences/relayHost.md) +- [`relayOnly`](./ClientPreferences/relayOnly.md) +- [`statsBaselineSamples`](./ClientPreferences/statsBaselineSamples.md) +- [`statsHistorySize`](./ClientPreferences/statsHistorySize.md) +- [`statsJitterSpikeMultiplier`](./ClientPreferences/statsJitterSpikeMultiplier.md) +- [`statsNoPacketThreshold`](./ClientPreferences/statsNoPacketThreshold.md) +- [`statsPacketLossThreshold`](./ClientPreferences/statsPacketLossThreshold.md) +- [`statsPollingInterval`](./ClientPreferences/statsPollingInterval.md) +- [`statsRttSpikeMultiplier`](./ClientPreferences/statsRttSpikeMultiplier.md) +- [`stereoAudio`](./ClientPreferences/stereoAudio.md) +- [`syncDevicesToActiveCalls`](./ClientPreferences/syncDevicesToActiveCalls.md) +- [`userVariables`](./ClientPreferences/userVariables.md) ## Methods -### enableSavePreferences() - -> **enableSavePreferences**(`storage`): `void` - -Defined in: [containers/PreferencesContainer.ts:227](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/containers/PreferencesContainer.ts#L227) - -Enables persistence of preferences to storage. -Loads any previously saved preferences and syncs future changes. - -#### Parameters - -| Parameter | Type | -| ------ | ------ | -| `storage` | `StorageManager` | - -#### Returns - -`void` +- [`enableSavePreferences`](./ClientPreferences/enableSavePreferences.md) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/autoMuteVideoOnHidden.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/autoMuteVideoOnHidden.md new file mode 100644 index 000000000..d7520d7b0 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/autoMuteVideoOnHidden.md @@ -0,0 +1,29 @@ +# autoMuteVideoOnHidden + +#### Get Signature + +> **get** **autoMuteVideoOnHidden**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:898](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L898) + +Whether to auto-mute video when the tab becomes hidden. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **autoMuteVideoOnHidden**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:901](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L901) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/checkConnectionOnVisible.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/checkConnectionOnVisible.md new file mode 100644 index 000000000..a32e9de6b --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/checkConnectionOnVisible.md @@ -0,0 +1,29 @@ +# checkConnectionOnVisible + +#### Get Signature + +> **get** **checkConnectionOnVisible**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:916](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L916) + +Whether to check peer connection health when the page becomes visible. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **checkConnectionOnVisible**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:919](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L919) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/connectionTimeout.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/connectionTimeout.md new file mode 100644 index 000000000..af7ce0ac5 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/connectionTimeout.md @@ -0,0 +1,29 @@ +# connectionTimeout + +#### Get Signature + +> **get** **connectionTimeout**(): `number` + +Defined in: [containers/PreferencesContainer.ts:492](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L492) + +WebSocket connection timeout in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **connectionTimeout**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:495](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L495) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/defaultAudioConstraints.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/defaultAudioConstraints.md new file mode 100644 index 000000000..ff870ce45 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/defaultAudioConstraints.md @@ -0,0 +1,29 @@ +# defaultAudioConstraints + +#### Get Signature + +> **get** **defaultAudioConstraints**(): `MediaTrackConstraints` \| `undefined` + +Defined in: [containers/PreferencesContainer.ts:929](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L929) + +Default audio track constraints applied when no explicit constraints are provided. + +##### Returns + +`MediaTrackConstraints` \| `undefined` + +#### Set Signature + +> **set** **defaultAudioConstraints**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:932](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L932) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `MediaTrackConstraints` \| `undefined` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/defaultVideoConstraints.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/defaultVideoConstraints.md new file mode 100644 index 000000000..08658f44b --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/defaultVideoConstraints.md @@ -0,0 +1,29 @@ +# defaultVideoConstraints + +#### Get Signature + +> **get** **defaultVideoConstraints**(): `MediaTrackConstraints` \| `undefined` + +Defined in: [containers/PreferencesContainer.ts:937](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L937) + +Default video track constraints applied when video is enabled without explicit constraints. + +##### Returns + +`MediaTrackConstraints` \| `undefined` + +#### Set Signature + +> **set** **defaultVideoConstraints**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:940](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L940) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `MediaTrackConstraints` \| `undefined` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/degradationBitrateThreshold.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/degradationBitrateThreshold.md new file mode 100644 index 000000000..f07869a6f --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/degradationBitrateThreshold.md @@ -0,0 +1,29 @@ +# degradationBitrateThreshold + +#### Get Signature + +> **get** **degradationBitrateThreshold**(): `number` + +Defined in: [containers/PreferencesContainer.ts:967](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L967) + +Bitrate in kbps below which video is automatically disabled. + +##### Returns + +`number` + +#### Set Signature + +> **set** **degradationBitrateThreshold**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:970](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L970) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/degradationRecoveryThreshold.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/degradationRecoveryThreshold.md new file mode 100644 index 000000000..211e478ab --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/degradationRecoveryThreshold.md @@ -0,0 +1,29 @@ +# degradationRecoveryThreshold + +#### Get Signature + +> **get** **degradationRecoveryThreshold**(): `number` + +Defined in: [containers/PreferencesContainer.ts:976](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L976) + +Bitrate in kbps above which video is automatically re-enabled. + +##### Returns + +`number` + +#### Set Signature + +> **set** **degradationRecoveryThreshold**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:979](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L979) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/deviceDebounceTime.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/deviceDebounceTime.md new file mode 100644 index 000000000..0cdfa7f23 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/deviceDebounceTime.md @@ -0,0 +1,29 @@ +# deviceDebounceTime + +#### Get Signature + +> **get** **deviceDebounceTime**(): `number` + +Defined in: [containers/PreferencesContainer.ts:595](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L595) + +Debounce time for device change events, in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **deviceDebounceTime**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:598](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L598) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/devicePollingInterval.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/devicePollingInterval.md new file mode 100644 index 000000000..93a45fcce --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/devicePollingInterval.md @@ -0,0 +1,29 @@ +# devicePollingInterval + +#### Get Signature + +> **get** **devicePollingInterval**(): `number` + +Defined in: [containers/PreferencesContainer.ts:604](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L604) + +Polling interval for device enumeration, in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **devicePollingInterval**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:607](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L607) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/disableUdpIceServers.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/disableUdpIceServers.md new file mode 100644 index 000000000..41a0ca05d --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/disableUdpIceServers.md @@ -0,0 +1,29 @@ +# disableUdpIceServers + +#### Get Signature + +> **get** **disableUdpIceServers**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:613](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L613) + +Whether to filter out UDP-based ICE servers. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **disableUdpIceServers**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:616](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L616) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableAutoDegradation.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableAutoDegradation.md new file mode 100644 index 000000000..b92b72367 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableAutoDegradation.md @@ -0,0 +1,29 @@ +# enableAutoDegradation + +#### Get Signature + +> **get** **enableAutoDegradation**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:958](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L958) + +Whether automatic video degradation on low bandwidth is enabled. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **enableAutoDegradation**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:961](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L961) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableNetworkChangeDetection.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableNetworkChangeDetection.md new file mode 100644 index 000000000..38becb4f4 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableNetworkChangeDetection.md @@ -0,0 +1,29 @@ +# enableNetworkChangeDetection + +#### Get Signature + +> **get** **enableNetworkChangeDetection**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:854](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L854) + +Whether browser network change detection (online/offline) is enabled. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **enableNetworkChangeDetection**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:857](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L857) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableRelayFallback.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableRelayFallback.md new file mode 100644 index 000000000..fbac3ed64 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableRelayFallback.md @@ -0,0 +1,29 @@ +# enableRelayFallback + +#### Get Signature + +> **get** **enableRelayFallback**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:845](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L845) + +Whether relay-only escalation is enabled as a last-resort recovery tier. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **enableRelayFallback**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:848](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L848) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableSavePreferences.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableSavePreferences.md new file mode 100644 index 000000000..21a6247ab --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableSavePreferences.md @@ -0,0 +1,18 @@ +# enableSavePreferences + +> **enableSavePreferences**(`storage`): `void` + +Defined in: [containers/PreferencesContainer.ts:486](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L486) + +Enables persistence of preferences to storage. +Loads any previously saved preferences and syncs future changes. + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `storage` | `StorageManager` | + +#### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableServerHangupInterception.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableServerHangupInterception.md new file mode 100644 index 000000000..e3875a204 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/enableServerHangupInterception.md @@ -0,0 +1,29 @@ +# enableServerHangupInterception + +#### Get Signature + +> **get** **enableServerHangupInterception**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:863](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L863) + +Whether server-sent media-timeout hangups are intercepted for recovery. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **enableServerHangupInterception**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:866](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L866) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceCandidateTimeout.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceCandidateTimeout.md new file mode 100644 index 000000000..003615dd0 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceCandidateTimeout.md @@ -0,0 +1,29 @@ +# iceCandidateTimeout + +#### Get Signature + +> **get** **iceCandidateTimeout**(): `number` + +Defined in: [containers/PreferencesContainer.ts:631](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L631) + +Timeout for individual ICE candidate gathering, in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **iceCandidateTimeout**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:634](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L634) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceDisconnectedGracePeriod.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceDisconnectedGracePeriod.md new file mode 100644 index 000000000..746086520 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceDisconnectedGracePeriod.md @@ -0,0 +1,29 @@ +# iceDisconnectedGracePeriod + +#### Get Signature + +> **get** **iceDisconnectedGracePeriod**(): `number` + +Defined in: [containers/PreferencesContainer.ts:818](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L818) + +Grace period before treating ICE 'disconnected' as failure, in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **iceDisconnectedGracePeriod**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:821](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L821) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceGatheringTimeout.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceGatheringTimeout.md new file mode 100644 index 000000000..f878cc5ce --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceGatheringTimeout.md @@ -0,0 +1,29 @@ +# iceGatheringTimeout + +#### Get Signature + +> **get** **iceGatheringTimeout**(): `number` + +Defined in: [containers/PreferencesContainer.ts:640](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L640) + +Timeout for the entire ICE gathering phase, in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **iceGatheringTimeout**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:643](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L643) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceRestartTimeout.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceRestartTimeout.md new file mode 100644 index 000000000..89c01187a --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceRestartTimeout.md @@ -0,0 +1,29 @@ +# iceRestartTimeout + +#### Get Signature + +> **get** **iceRestartTimeout**(): `number` + +Defined in: [containers/PreferencesContainer.ts:827](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L827) + +Timeout for a single ICE restart attempt in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **iceRestartTimeout**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:830](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L830) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceServers.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceServers.md new file mode 100644 index 000000000..1defd402a --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/iceServers.md @@ -0,0 +1,29 @@ +# iceServers + +#### Get Signature + +> **get** **iceServers**(): `RTCIceServer`[] \| `undefined` + +Defined in: [containers/PreferencesContainer.ts:649](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L649) + +Custom ICE servers for TURN/STUN configuration. + +##### Returns + +`RTCIceServer`[] \| `undefined` + +#### Set Signature + +> **set** **iceServers**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:652](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L652) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `RTCIceServer`[] \| `undefined` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/inputAudioConstraints.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/inputAudioConstraints.md new file mode 100644 index 000000000..c8d4e4c9b --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/inputAudioConstraints.md @@ -0,0 +1,29 @@ +# inputAudioConstraints + +#### Get Signature + +> **get** **inputAudioConstraints**(): `MediaTrackConstraints` \| `undefined` + +Defined in: [containers/PreferencesContainer.ts:579](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L579) + +Default audio input track constraints. + +##### Returns + +`MediaTrackConstraints` \| `undefined` + +#### Set Signature + +> **set** **inputAudioConstraints**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:582](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L582) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `MediaTrackConstraints` \| `undefined` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/inputVideoConstraints.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/inputVideoConstraints.md new file mode 100644 index 000000000..4431695cb --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/inputVideoConstraints.md @@ -0,0 +1,29 @@ +# inputVideoConstraints + +#### Get Signature + +> **get** **inputVideoConstraints**(): `MediaTrackConstraints` \| `undefined` + +Defined in: [containers/PreferencesContainer.ts:587](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L587) + +Default video input track constraints. + +##### Returns + +`MediaTrackConstraints` \| `undefined` + +#### Set Signature + +> **set** **inputVideoConstraints**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:590](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L590) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `MediaTrackConstraints` \| `undefined` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/keyframeBurstWindow.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/keyframeBurstWindow.md new file mode 100644 index 000000000..873c00488 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/keyframeBurstWindow.md @@ -0,0 +1,29 @@ +# keyframeBurstWindow + +#### Get Signature + +> **get** **keyframeBurstWindow**(): `number` + +Defined in: [containers/PreferencesContainer.ts:747](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L747) + +Keyframe burst window duration in milliseconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **keyframeBurstWindow**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:750](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L750) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/keyframeCooldown.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/keyframeCooldown.md new file mode 100644 index 000000000..b22e1aebb --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/keyframeCooldown.md @@ -0,0 +1,29 @@ +# keyframeCooldown + +#### Get Signature + +> **get** **keyframeCooldown**(): `number` + +Defined in: [containers/PreferencesContainer.ts:756](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L756) + +Cooldown period in ms after keyframe burst limit is reached. + +##### Returns + +`number` + +#### Set Signature + +> **set** **keyframeCooldown**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:759](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L759) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/keyframeMaxBurst.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/keyframeMaxBurst.md new file mode 100644 index 000000000..5acfb9017 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/keyframeMaxBurst.md @@ -0,0 +1,29 @@ +# keyframeMaxBurst + +#### Get Signature + +> **get** **keyframeMaxBurst**(): `number` + +Defined in: [containers/PreferencesContainer.ts:738](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L738) + +Maximum keyframe requests in a burst window. + +##### Returns + +`number` + +#### Set Signature + +> **set** **keyframeMaxBurst**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:741](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L741) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/maxRecoveryAttempts.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/maxRecoveryAttempts.md new file mode 100644 index 000000000..df15313e8 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/maxRecoveryAttempts.md @@ -0,0 +1,29 @@ +# maxRecoveryAttempts + +#### Get Signature + +> **get** **maxRecoveryAttempts**(): `number` + +Defined in: [containers/PreferencesContainer.ts:836](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L836) + +Maximum recovery attempts before giving up. + +##### Returns + +`number` + +#### Set Signature + +> **set** **maxRecoveryAttempts**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:839](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L839) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/persistDeviceSelection.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/persistDeviceSelection.md new file mode 100644 index 000000000..c1f3958fa --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/persistDeviceSelection.md @@ -0,0 +1,29 @@ +# persistDeviceSelection + +#### Get Signature + +> **get** **persistDeviceSelection**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:876](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L876) + +Whether device selections are persisted to storage. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **persistDeviceSelection**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:879](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L879) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredAudioCodecs.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredAudioCodecs.md new file mode 100644 index 000000000..06bbb294a --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredAudioCodecs.md @@ -0,0 +1,29 @@ +# preferredAudioCodecs + +#### Get Signature + +> **get** **preferredAudioCodecs**(): `string`[] + +Defined in: [containers/PreferencesContainer.ts:998](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L998) + +Preferred audio codecs in priority order. + +##### Returns + +`string`[] + +#### Set Signature + +> **set** **preferredAudioCodecs**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:1001](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L1001) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `string`[] | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredAudioInput.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredAudioInput.md new file mode 100644 index 000000000..7eaa0c736 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredAudioInput.md @@ -0,0 +1,29 @@ +# preferredAudioInput + +#### Get Signature + +> **get** **preferredAudioInput**(): `MediaDeviceInfo` \| `null` + +Defined in: [containers/PreferencesContainer.ts:555](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L555) + +Preferred audio input device for new calls. + +##### Returns + +`MediaDeviceInfo` \| `null` + +#### Set Signature + +> **set** **preferredAudioInput**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:558](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L558) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `MediaDeviceInfo` \| `null` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredAudioOutput.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredAudioOutput.md new file mode 100644 index 000000000..41ab1ab95 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredAudioOutput.md @@ -0,0 +1,29 @@ +# preferredAudioOutput + +#### Get Signature + +> **get** **preferredAudioOutput**(): `MediaDeviceInfo` \| `null` + +Defined in: [containers/PreferencesContainer.ts:563](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L563) + +Preferred audio output device for new calls. + +##### Returns + +`MediaDeviceInfo` \| `null` + +#### Set Signature + +> **set** **preferredAudioOutput**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:566](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L566) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `MediaDeviceInfo` \| `null` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredVideoCodecs.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredVideoCodecs.md new file mode 100644 index 000000000..87aa70560 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredVideoCodecs.md @@ -0,0 +1,29 @@ +# preferredVideoCodecs + +#### Get Signature + +> **get** **preferredVideoCodecs**(): `string`[] + +Defined in: [containers/PreferencesContainer.ts:989](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L989) + +Preferred video codecs in priority order. + +##### Returns + +`string`[] + +#### Set Signature + +> **set** **preferredVideoCodecs**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:992](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L992) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `string`[] | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredVideoInput.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredVideoInput.md new file mode 100644 index 000000000..07b0bb845 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/preferredVideoInput.md @@ -0,0 +1,29 @@ +# preferredVideoInput + +#### Get Signature + +> **get** **preferredVideoInput**(): `MediaDeviceInfo` \| `null` + +Defined in: [containers/PreferencesContainer.ts:571](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L571) + +Preferred video input device for new calls. + +##### Returns + +`MediaDeviceInfo` \| `null` + +#### Set Signature + +> **set** **preferredVideoInput**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:574](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L574) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `MediaDeviceInfo` \| `null` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/receiveAudio.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/receiveAudio.md new file mode 100644 index 000000000..6f2c29bfc --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/receiveAudio.md @@ -0,0 +1,29 @@ +# receiveAudio + +#### Get Signature + +> **get** **receiveAudio**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:546](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L546) + +Whether to receive remote audio by default. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **receiveAudio**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:549](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L549) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/receiveVideo.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/receiveVideo.md new file mode 100644 index 000000000..869e3a103 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/receiveVideo.md @@ -0,0 +1,29 @@ +# receiveVideo + +#### Get Signature + +> **get** **receiveVideo**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:537](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L537) + +Whether to receive remote video by default. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **receiveVideo**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:540](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L540) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reconnectCallsTimeout.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reconnectCallsTimeout.md new file mode 100644 index 000000000..257cd24ce --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reconnectCallsTimeout.md @@ -0,0 +1,29 @@ +# reconnectCallsTimeout + +#### Get Signature + +> **get** **reconnectCallsTimeout**(): `number` + +Defined in: [containers/PreferencesContainer.ts:501](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L501) + +Timeout for reconnecting to previously attached calls, in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **reconnectCallsTimeout**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:504](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L504) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reconnectDelayMax.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reconnectDelayMax.md new file mode 100644 index 000000000..285c5b396 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reconnectDelayMax.md @@ -0,0 +1,29 @@ +# reconnectDelayMax + +#### Get Signature + +> **get** **reconnectDelayMax**(): `number` + +Defined in: [containers/PreferencesContainer.ts:519](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L519) + +Maximum reconnection backoff delay in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **reconnectDelayMax**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:522](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L522) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reconnectDelayMin.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reconnectDelayMin.md new file mode 100644 index 000000000..7b0cf6980 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reconnectDelayMin.md @@ -0,0 +1,29 @@ +# reconnectDelayMin + +#### Get Signature + +> **get** **reconnectDelayMin**(): `number` + +Defined in: [containers/PreferencesContainer.ts:510](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L510) + +Minimum reconnection backoff delay in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **reconnectDelayMin**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:513](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L513) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/recoveryCooldown.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/recoveryCooldown.md new file mode 100644 index 000000000..efee1e760 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/recoveryCooldown.md @@ -0,0 +1,29 @@ +# recoveryCooldown + +#### Get Signature + +> **get** **recoveryCooldown**(): `number` + +Defined in: [containers/PreferencesContainer.ts:809](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L809) + +Cooldown period between recovery attempts in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **recoveryCooldown**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:812](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L812) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/recoveryDebounceTime.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/recoveryDebounceTime.md new file mode 100644 index 000000000..9a2f518bf --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/recoveryDebounceTime.md @@ -0,0 +1,29 @@ +# recoveryDebounceTime + +#### Get Signature + +> **get** **recoveryDebounceTime**(): `number` + +Defined in: [containers/PreferencesContainer.ts:800](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L800) + +Recovery signal debounce window in seconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **recoveryDebounceTime**(`seconds`): `void` + +Defined in: [containers/PreferencesContainer.ts:803](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L803) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `seconds` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/refreshDevicesOnVisible.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/refreshDevicesOnVisible.md new file mode 100644 index 000000000..551fc9b9b --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/refreshDevicesOnVisible.md @@ -0,0 +1,29 @@ +# refreshDevicesOnVisible + +#### Get Signature + +> **get** **refreshDevicesOnVisible**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:907](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L907) + +Whether to re-enumerate devices when the page becomes visible. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **refreshDevicesOnVisible**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:910](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L910) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reinviteDebounceTime.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reinviteDebounceTime.md new file mode 100644 index 000000000..ad0f7e5be --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reinviteDebounceTime.md @@ -0,0 +1,29 @@ +# reinviteDebounceTime + +#### Get Signature + +> **get** **reinviteDebounceTime**(): `number` + +Defined in: [containers/PreferencesContainer.ts:769](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L769) + +Minimum time in ms between re-INVITE attempts. + +##### Returns + +`number` + +#### Set Signature + +> **set** **reinviteDebounceTime**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:772](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L772) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reinviteMaxAttempts.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reinviteMaxAttempts.md new file mode 100644 index 000000000..8951299fb --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reinviteMaxAttempts.md @@ -0,0 +1,29 @@ +# reinviteMaxAttempts + +#### Get Signature + +> **get** **reinviteMaxAttempts**(): `number` + +Defined in: [containers/PreferencesContainer.ts:778](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L778) + +Maximum re-INVITE attempts per call. + +##### Returns + +`number` + +#### Set Signature + +> **set** **reinviteMaxAttempts**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:781](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L781) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reinviteTimeout.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reinviteTimeout.md new file mode 100644 index 000000000..d7d63c107 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/reinviteTimeout.md @@ -0,0 +1,29 @@ +# reinviteTimeout + +#### Get Signature + +> **get** **reinviteTimeout**(): `number` + +Defined in: [containers/PreferencesContainer.ts:787](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L787) + +Timeout in ms for a single re-INVITE attempt. + +##### Returns + +`number` + +#### Set Signature + +> **set** **reinviteTimeout**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:790](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L790) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/relayHost.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/relayHost.md new file mode 100644 index 000000000..28e57011b --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/relayHost.md @@ -0,0 +1,29 @@ +# relayHost + +#### Get Signature + +> **get** **relayHost**(): `string` + +Defined in: [containers/PreferencesContainer.ts:528](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L528) + +Custom relay host URL. Empty string uses the default. + +##### Returns + +`string` + +#### Set Signature + +> **set** **relayHost**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:531](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L531) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `string` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/relayOnly.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/relayOnly.md new file mode 100644 index 000000000..a367840eb --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/relayOnly.md @@ -0,0 +1,29 @@ +# relayOnly + +#### Get Signature + +> **get** **relayOnly**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:622](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L622) + +Whether to force TURN relay-only ICE candidates. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **relayOnly**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:625](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L625) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsBaselineSamples.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsBaselineSamples.md new file mode 100644 index 000000000..f955c3ba1 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsBaselineSamples.md @@ -0,0 +1,29 @@ +# statsBaselineSamples + +#### Get Signature + +> **get** **statsBaselineSamples**(): `number` + +Defined in: [containers/PreferencesContainer.ts:680](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L680) + +Number of baseline samples for stats monitoring. + +##### Returns + +`number` + +#### Set Signature + +> **set** **statsBaselineSamples**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:683](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L683) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsHistorySize.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsHistorySize.md new file mode 100644 index 000000000..c6ff918cc --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsHistorySize.md @@ -0,0 +1,29 @@ +# statsHistorySize + +#### Get Signature + +> **get** **statsHistorySize**(): `number` + +Defined in: [containers/PreferencesContainer.ts:725](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L725) + +Number of seconds of metrics history to retain. + +##### Returns + +`number` + +#### Set Signature + +> **set** **statsHistorySize**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:728](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L728) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsJitterSpikeMultiplier.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsJitterSpikeMultiplier.md new file mode 100644 index 000000000..537075a3d --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsJitterSpikeMultiplier.md @@ -0,0 +1,29 @@ +# statsJitterSpikeMultiplier + +#### Get Signature + +> **get** **statsJitterSpikeMultiplier**(): `number` + +Defined in: [containers/PreferencesContainer.ts:716](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L716) + +Multiplier for jitter spike detection relative to baseline. + +##### Returns + +`number` + +#### Set Signature + +> **set** **statsJitterSpikeMultiplier**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:719](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L719) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsNoPacketThreshold.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsNoPacketThreshold.md new file mode 100644 index 000000000..a1737baa4 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsNoPacketThreshold.md @@ -0,0 +1,29 @@ +# statsNoPacketThreshold + +#### Get Signature + +> **get** **statsNoPacketThreshold**(): `number` + +Defined in: [containers/PreferencesContainer.ts:689](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L689) + +Duration in ms with no inbound packets before a critical issue is emitted. + +##### Returns + +`number` + +#### Set Signature + +> **set** **statsNoPacketThreshold**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:692](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L692) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsPacketLossThreshold.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsPacketLossThreshold.md new file mode 100644 index 000000000..1f2f4be36 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsPacketLossThreshold.md @@ -0,0 +1,29 @@ +# statsPacketLossThreshold + +#### Get Signature + +> **get** **statsPacketLossThreshold**(): `number` + +Defined in: [containers/PreferencesContainer.ts:707](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L707) + +Packet loss fraction threshold (0-1) for issue detection. + +##### Returns + +`number` + +#### Set Signature + +> **set** **statsPacketLossThreshold**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:710](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L710) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsPollingInterval.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsPollingInterval.md new file mode 100644 index 000000000..8326097e3 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsPollingInterval.md @@ -0,0 +1,29 @@ +# statsPollingInterval + +#### Get Signature + +> **get** **statsPollingInterval**(): `number` + +Defined in: [containers/PreferencesContainer.ts:671](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L671) + +Stats polling interval in milliseconds. + +##### Returns + +`number` + +#### Set Signature + +> **set** **statsPollingInterval**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:674](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L674) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsRttSpikeMultiplier.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsRttSpikeMultiplier.md new file mode 100644 index 000000000..78c0d2a46 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/statsRttSpikeMultiplier.md @@ -0,0 +1,29 @@ +# statsRttSpikeMultiplier + +#### Get Signature + +> **get** **statsRttSpikeMultiplier**(): `number` + +Defined in: [containers/PreferencesContainer.ts:698](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L698) + +Multiplier for RTT spike detection relative to baseline. + +##### Returns + +`number` + +#### Set Signature + +> **set** **statsRttSpikeMultiplier**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:701](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L701) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `number` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/stereoAudio.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/stereoAudio.md new file mode 100644 index 000000000..80115f9ee --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/stereoAudio.md @@ -0,0 +1,29 @@ +# stereoAudio + +#### Get Signature + +> **get** **stereoAudio**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:945](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L945) + +Whether stereo Opus is enabled globally. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **stereoAudio**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:948](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L948) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/syncDevicesToActiveCalls.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/syncDevicesToActiveCalls.md new file mode 100644 index 000000000..ae5b35f11 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/syncDevicesToActiveCalls.md @@ -0,0 +1,29 @@ +# syncDevicesToActiveCalls + +#### Get Signature + +> **get** **syncDevicesToActiveCalls**(): `boolean` + +Defined in: [containers/PreferencesContainer.ts:885](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L885) + +Whether device changes are auto-applied to active calls. + +##### Returns + +`boolean` + +#### Set Signature + +> **set** **syncDevicesToActiveCalls**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:888](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L888) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `boolean` | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/userVariables.md b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/userVariables.md new file mode 100644 index 000000000..d476455d6 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/ClientPreferences/userVariables.md @@ -0,0 +1,29 @@ +# userVariables + +#### Get Signature + +> **get** **userVariables**(): `Record`\<`string`, `unknown`\> + +Defined in: [containers/PreferencesContainer.ts:658](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L658) + +Custom user variables attached to calls. + +##### Returns + +`Record`\<`string`, `unknown`\> + +#### Set Signature + +> **set** **userVariables**(`value`): `void` + +Defined in: [containers/PreferencesContainer.ts:661](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/containers/PreferencesContainer.ts#L661) + +##### Parameters + +| Parameter | Type | +| ------ | ------ | +| `value` | `Record`\<`string`, `unknown`\> | + +##### Returns + +`void` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/CollectionFetchError.md b/fern/products/browser-sdk/pages/v4/reference/classes/CollectionFetchError.md index 372b05594..c3a4cf10d 100644 --- a/fern/products/browser-sdk/pages/v4/reference/classes/CollectionFetchError.md +++ b/fern/products/browser-sdk/pages/v4/reference/classes/CollectionFetchError.md @@ -1,6 +1,6 @@ # Class: CollectionFetchError -Defined in: [core/errors.ts:357](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L357) +Defined in: [core/errors.ts:370](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L370) ## Extends @@ -12,7 +12,7 @@ Defined in: [core/errors.ts:357](https://github.com/signalwire/browser-sdk/blob/ > **new CollectionFetchError**(`operation`, `originalError`): `CollectionFetchError` -Defined in: [core/errors.ts:358](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L358) +Defined in: [core/errors.ts:371](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L371) #### Parameters @@ -33,5 +33,5 @@ Defined in: [core/errors.ts:358](https://github.com/signalwire/browser-sdk/blob/ | Property | Modifier | Type | Defined in | | ------ | ------ | ------ | ------ | -| `operation` | `public` | `string` | [core/errors.ts:359](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L359) | -| `originalError` | `public` | `unknown` | [core/errors.ts:360](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L360) | +| `operation` | `public` | `string` | [core/errors.ts:372](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L372) | +| `originalError` | `public` | `unknown` | [core/errors.ts:373](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L373) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/DPoPInitError.md b/fern/products/browser-sdk/pages/v4/reference/classes/DPoPInitError.md index 062ecd936..244b611cf 100644 --- a/fern/products/browser-sdk/pages/v4/reference/classes/DPoPInitError.md +++ b/fern/products/browser-sdk/pages/v4/reference/classes/DPoPInitError.md @@ -1,6 +1,6 @@ # Class: DPoPInitError -Defined in: [core/errors.ts:386](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L386) +Defined in: [core/errors.ts:399](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L399) ## Extends @@ -12,7 +12,7 @@ Defined in: [core/errors.ts:386](https://github.com/signalwire/browser-sdk/blob/ > **new DPoPInitError**(`originalError`, `message?`): `DPoPInitError` -Defined in: [core/errors.ts:387](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L387) +Defined in: [core/errors.ts:400](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L400) #### Parameters @@ -33,4 +33,4 @@ Defined in: [core/errors.ts:387](https://github.com/signalwire/browser-sdk/blob/ | Property | Modifier | Type | Defined in | | ------ | ------ | ------ | ------ | -| `originalError` | `public` | `unknown` | [core/errors.ts:388](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L388) | +| `originalError` | `public` | `unknown` | [core/errors.ts:401](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L401) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/DeviceTokenError.md b/fern/products/browser-sdk/pages/v4/reference/classes/DeviceTokenError.md index d294f483b..16e76e52c 100644 --- a/fern/products/browser-sdk/pages/v4/reference/classes/DeviceTokenError.md +++ b/fern/products/browser-sdk/pages/v4/reference/classes/DeviceTokenError.md @@ -1,6 +1,6 @@ # Class: DeviceTokenError -Defined in: [core/errors.ts:398](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L398) +Defined in: [core/errors.ts:468](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L468) ## Extends @@ -12,7 +12,7 @@ Defined in: [core/errors.ts:398](https://github.com/signalwire/browser-sdk/blob/ > **new DeviceTokenError**(`message`, `originalError?`): `DeviceTokenError` -Defined in: [core/errors.ts:399](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L399) +Defined in: [core/errors.ts:469](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L469) #### Parameters @@ -33,4 +33,4 @@ Defined in: [core/errors.ts:399](https://github.com/signalwire/browser-sdk/blob/ | Property | Modifier | Type | Defined in | | ------ | ------ | ------ | ------ | -| `originalError?` | `public` | `unknown` | [core/errors.ts:401](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L401) | +| `originalError?` | `public` | `unknown` | [core/errors.ts:471](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L471) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/EmbedTokenCredentialProvider.md b/fern/products/browser-sdk/pages/v4/reference/classes/EmbedTokenCredentialProvider.md index f158998ff..4696e1af7 100644 --- a/fern/products/browser-sdk/pages/v4/reference/classes/EmbedTokenCredentialProvider.md +++ b/fern/products/browser-sdk/pages/v4/reference/classes/EmbedTokenCredentialProvider.md @@ -1,6 +1,6 @@ # Class: EmbedTokenCredentialProvider -Defined in: [dependencies/EmbedTokenCredentialProvider.ts:9](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/EmbedTokenCredentialProvider.ts#L9) +Defined in: [dependencies/EmbedTokenCredentialProvider.ts:9](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/dependencies/EmbedTokenCredentialProvider.ts#L9) Credential provider that exchanges an embed token for a SAT via the host's token endpoint. @@ -14,7 +14,7 @@ Credential provider that exchanges an embed token for a SAT via the host's token > **new EmbedTokenCredentialProvider**(`host`, `embedToken`): `EmbedTokenCredentialProvider` -Defined in: [dependencies/EmbedTokenCredentialProvider.ts:10](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/EmbedTokenCredentialProvider.ts#L10) +Defined in: [dependencies/EmbedTokenCredentialProvider.ts:10](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/dependencies/EmbedTokenCredentialProvider.ts#L10) #### Parameters @@ -29,60 +29,5 @@ Defined in: [dependencies/EmbedTokenCredentialProvider.ts:10](https://github.com ## Methods -### authenticate() - -> **authenticate**(): `Promise`\<\{ `expiry_at`: `number`; `token`: `string`; \}\> - -Defined in: [dependencies/EmbedTokenCredentialProvider.ts:52](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/EmbedTokenCredentialProvider.ts#L52) - -Obtains the initial credentials. Called once during client initialization. - -Implementor responsibilities: -- Resolve with a valid [SDKCredential](../interfaces/SDKCredential.md) on success. -- Reject (throw) on failure — this will cause client initialization to fail. -- When `context.fingerprint` is provided, forward it to the server-side token - endpoint with `scope: "sat:refresh"` to enable automatic token refresh. - -SDK behavior: -- Awaits this method before establishing the WebSocket connection. -- On rejection, propagates the error to the caller of `SignalWire()`. - -#### Returns - -`Promise`\<\{ `expiry_at`: `number`; `token`: `string`; \}\> - -#### Implementation of - -[`CredentialProvider`](../interfaces/CredentialProvider.md).[`authenticate`](../interfaces/CredentialProvider.md#authenticate) - -*** - -### refresh() - -> **refresh**(): `Promise`\<\{ `expiry_at`: `number`; `token`: `string`; \}\> - -Defined in: [dependencies/EmbedTokenCredentialProvider.ts:58](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/dependencies/EmbedTokenCredentialProvider.ts#L58) - -Obtains fresh credentials before the current ones expire. Optional. - -Implementor responsibilities: -- Resolve with a new [SDKCredential](../interfaces/SDKCredential.md) containing an updated `token` (or `authorizationState`) and `expiry_at`. -- Reject (throw) if refresh is not possible — the SDK will stop the refresh schedule. - -SDK behavior: -- Only called when `expiry_at` was set on the previous credential. -- Scheduled automatically before expiry; implementors do not need to manage timing. -- On rejection, the refresh schedule stops and the session continues with the - current credentials until they expire. -- When not provided and the SAT includes a `sat:refresh` scope, the SDK - automatically refreshes via Client Bound SAT (DPoP) without developer intervention. -- When not provided and no refresh scope is present, the SDK uses the initial - credentials for the entire session lifetime. - -#### Returns - -`Promise`\<\{ `expiry_at`: `number`; `token`: `string`; \}\> - -#### Implementation of - -[`CredentialProvider`](../interfaces/CredentialProvider.md).[`refresh`](../interfaces/CredentialProvider.md#refresh) +- [`authenticate`](./EmbedTokenCredentialProvider/authenticate.md) +- [`refresh`](./EmbedTokenCredentialProvider/refresh.md) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/EmbedTokenCredentialProvider/authenticate.md b/fern/products/browser-sdk/pages/v4/reference/classes/EmbedTokenCredentialProvider/authenticate.md new file mode 100644 index 000000000..ca989969b --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/EmbedTokenCredentialProvider/authenticate.md @@ -0,0 +1,25 @@ +# authenticate + +> **authenticate**(): `Promise`\<\{ `expiry_at`: `number`; `token`: `string`; \}\> + +Defined in: [dependencies/EmbedTokenCredentialProvider.ts:52](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/dependencies/EmbedTokenCredentialProvider.ts#L52) + +Obtains the initial credentials. Called once during client initialization. + +Implementor responsibilities: +- Resolve with a valid [SDKCredential](../../interfaces/SDKCredential.md) on success. +- Reject (throw) on failure — this will cause client initialization to fail. +- When `context.fingerprint` is provided, forward it to the server-side token + endpoint with `scope: "sat:refresh"` to enable automatic token refresh. + +SDK behavior: +- Awaits this method before establishing the WebSocket connection. +- On rejection, propagates the error to the caller of `SignalWire()`. + +#### Returns + +`Promise`\<\{ `expiry_at`: `number`; `token`: `string`; \}\> + +#### Implementation of + +[`CredentialProvider`](../../interfaces/CredentialProvider.md).[`authenticate`](../../interfaces/CredentialProvider.md#authenticate) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/EmbedTokenCredentialProvider/refresh.md b/fern/products/browser-sdk/pages/v4/reference/classes/EmbedTokenCredentialProvider/refresh.md new file mode 100644 index 000000000..2f822885c --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/EmbedTokenCredentialProvider/refresh.md @@ -0,0 +1,29 @@ +# refresh + +> **refresh**(): `Promise`\<\{ `expiry_at`: `number`; `token`: `string`; \}\> + +Defined in: [dependencies/EmbedTokenCredentialProvider.ts:58](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/dependencies/EmbedTokenCredentialProvider.ts#L58) + +Obtains fresh credentials before the current ones expire. Optional. + +Implementor responsibilities: +- Resolve with a new [SDKCredential](../../interfaces/SDKCredential.md) containing an updated `token` (or `authorizationState`) and `expiry_at`. +- Reject (throw) if refresh is not possible — the SDK will stop the refresh schedule. + +SDK behavior: +- Only called when `expiry_at` was set on the previous credential. +- Scheduled automatically before expiry; implementors do not need to manage timing. +- On rejection, the refresh schedule stops and the session continues with the + current credentials until they expire. +- When not provided and the SAT includes a `sat:refresh` scope, the SDK + automatically refreshes via Client Bound SAT (DPoP) without developer intervention. +- When not provided and no refresh scope is present, the SDK uses the initial + credentials for the entire session lifetime. + +#### Returns + +`Promise`\<\{ `expiry_at`: `number`; `token`: `string`; \}\> + +#### Implementation of + +[`CredentialProvider`](../../interfaces/CredentialProvider.md).[`refresh`](../../interfaces/CredentialProvider.md#refresh) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/InvalidCredentialsError.md b/fern/products/browser-sdk/pages/v4/reference/classes/InvalidCredentialsError.md index d661a611b..ac1985c98 100644 --- a/fern/products/browser-sdk/pages/v4/reference/classes/InvalidCredentialsError.md +++ b/fern/products/browser-sdk/pages/v4/reference/classes/InvalidCredentialsError.md @@ -1,6 +1,6 @@ # Class: InvalidCredentialsError -Defined in: [core/errors.ts:31](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L31) +Defined in: [core/errors.ts:31](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L31) ## Extends @@ -12,7 +12,7 @@ Defined in: [core/errors.ts:31](https://github.com/signalwire/browser-sdk/blob/2 > **new InvalidCredentialsError**(`reason?`, `options?`): `InvalidCredentialsError` -Defined in: [core/errors.ts:32](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L32) +Defined in: [core/errors.ts:32](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L32) #### Parameters @@ -33,4 +33,4 @@ Defined in: [core/errors.ts:32](https://github.com/signalwire/browser-sdk/blob/2 | Property | Modifier | Type | Default value | Defined in | | ------ | ------ | ------ | ------ | ------ | -| `reason` | `public` | `string` | `'Invalid Credentials'` | [core/errors.ts:33](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L33) | +| `reason` | `public` | `string` | `'Invalid Credentials'` | [core/errors.ts:33](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L33) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/MediaTrackError.md b/fern/products/browser-sdk/pages/v4/reference/classes/MediaTrackError.md index 78afc9b4e..b5f294a84 100644 --- a/fern/products/browser-sdk/pages/v4/reference/classes/MediaTrackError.md +++ b/fern/products/browser-sdk/pages/v4/reference/classes/MediaTrackError.md @@ -1,6 +1,6 @@ # Class: MediaTrackError -Defined in: [core/errors.ts:369](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L369) +Defined in: [core/errors.ts:382](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L382) ## Extends @@ -12,7 +12,7 @@ Defined in: [core/errors.ts:369](https://github.com/signalwire/browser-sdk/blob/ > **new MediaTrackError**(`operation`, `kind`, `originalError`): `MediaTrackError` -Defined in: [core/errors.ts:370](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L370) +Defined in: [core/errors.ts:383](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L383) #### Parameters @@ -34,6 +34,6 @@ Defined in: [core/errors.ts:370](https://github.com/signalwire/browser-sdk/blob/ | Property | Modifier | Type | Defined in | | ------ | ------ | ------ | ------ | -| `kind` | `public` | `string` | [core/errors.ts:372](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L372) | -| `operation` | `public` | `string` | [core/errors.ts:371](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L371) | -| `originalError` | `public` | `unknown` | [core/errors.ts:373](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L373) | +| `kind` | `public` | `string` | [core/errors.ts:385](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L385) | +| `operation` | `public` | `string` | [core/errors.ts:384](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L384) | +| `originalError` | `public` | `unknown` | [core/errors.ts:386](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L386) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/MessageParseError.md b/fern/products/browser-sdk/pages/v4/reference/classes/MessageParseError.md index 82a6bd663..08fad7f2c 100644 --- a/fern/products/browser-sdk/pages/v4/reference/classes/MessageParseError.md +++ b/fern/products/browser-sdk/pages/v4/reference/classes/MessageParseError.md @@ -1,6 +1,6 @@ # Class: MessageParseError -Defined in: [core/errors.ts:348](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L348) +Defined in: [core/errors.ts:361](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L361) ## Extends @@ -12,7 +12,7 @@ Defined in: [core/errors.ts:348](https://github.com/signalwire/browser-sdk/blob/ > **new MessageParseError**(`originalError`): `MessageParseError` -Defined in: [core/errors.ts:349](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L349) +Defined in: [core/errors.ts:362](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L362) #### Parameters @@ -32,4 +32,4 @@ Defined in: [core/errors.ts:349](https://github.com/signalwire/browser-sdk/blob/ | Property | Modifier | Type | Defined in | | ------ | ------ | ------ | ------ | -| `originalError` | `public` | `unknown` | [core/errors.ts:349](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/errors.ts#L349) | +| `originalError` | `public` | `unknown` | [core/errors.ts:362](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L362) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/OverconstrainedFallbackError.md b/fern/products/browser-sdk/pages/v4/reference/classes/OverconstrainedFallbackError.md new file mode 100644 index 000000000..6fe868aba --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/OverconstrainedFallbackError.md @@ -0,0 +1,40 @@ +# Class: OverconstrainedFallbackError + +Defined in: [core/errors.ts:437](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L437) + +Error thrown when getUserMedia fails with OverconstrainedError +and all fallback levels have been exhausted. + +## Extends + +- `Error` + +## Constructors + +### Constructor + +> **new OverconstrainedFallbackError**(`deviceKind`, `originalError?`): `OverconstrainedFallbackError` + +Defined in: [core/errors.ts:438](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L438) + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `deviceKind` | `string` | +| `originalError?` | `unknown` | + +#### Returns + +`OverconstrainedFallbackError` + +#### Overrides + +`Error.constructor` + +## Properties + +| Property | Modifier | Type | Defined in | +| ------ | ------ | ------ | ------ | +| `deviceKind` | `public` | `string` | [core/errors.ts:439](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L439) | +| `originalError?` | `public` | `unknown` | [core/errors.ts:440](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/errors.ts#L440) | diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant.md index 53aeb5856..ed19e6a12 100644 --- a/fern/products/browser-sdk/pages/v4/reference/classes/Participant.md +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant.md @@ -1,6 +1,6 @@ # Class: Participant -Defined in: [core/entities/Participant.ts:45](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L45) +Defined in: [core/entities/Participant.ts:44](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L44) Represents a participant in a call. @@ -26,7 +26,7 @@ the local participant with additional device control. > **new Participant**(`id`, `executeMethod`, `deviceController`): `Participant` -Defined in: [core/entities/Participant.ts:49](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L49) +Defined in: [core/entities/Participant.ts:48](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L48) #### Parameters @@ -48,1540 +48,87 @@ Defined in: [core/entities/Participant.ts:49](https://github.com/signalwire/brow | Property | Modifier | Type | Default value | Description | Inherited from | Defined in | | ------ | ------ | ------ | ------ | ------ | ------ | ------ | -| `_destroyed$` | `protected` | `Subject`\<`void`\> | `undefined` | - | `Destroyable._destroyed$` | [behaviors/Destroyable.ts:17](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L17) | -| `deviceController` | `protected` | [`DeviceController`](../interfaces/DeviceController.md) | `undefined` | - | - | [core/entities/Participant.ts:52](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L52) | -| `executeMethod` | `protected` | [`ExecuteMethod`](../type-aliases/ExecuteMethod.md) | `undefined` | - | - | [core/entities/Participant.ts:51](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L51) | -| `id` | `readonly` | `string` | `undefined` | Unique member ID of this participant. | - | [core/entities/Participant.ts:47](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L47) | -| `subjects` | `protected` | `Subject`\<`unknown`\>[] | `[]` | - | `Destroyable.subjects` | [behaviors/Destroyable.ts:16](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L16) | -| `subscriptions` | `protected` | `Subscription`[] | `[]` | - | `Destroyable.subscriptions` | [behaviors/Destroyable.ts:15](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L15) | +| `_destroyed$` | `protected` | `Subject`\<`void`\> | `undefined` | - | `Destroyable._destroyed$` | [behaviors/Destroyable.ts:8](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L8) | +| `deviceController` | `protected` | [`DeviceController`](../interfaces/DeviceController.md) | `undefined` | - | - | [core/entities/Participant.ts:51](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L51) | +| `executeMethod` | `protected` | [`ExecuteMethod`](../type-aliases/ExecuteMethod.md) | `undefined` | - | - | [core/entities/Participant.ts:50](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L50) | +| `id` | `readonly` | `string` | `undefined` | Unique member ID of this participant. | - | [core/entities/Participant.ts:46](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L46) | +| `subjects` | `protected` | `Subject`\<`unknown`\>[] | `[]` | - | `Destroyable.subjects` | [behaviors/Destroyable.ts:7](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L7) | +| `subscriptions` | `protected` | `Subscription`[] | `[]` | - | `Destroyable.subscriptions` | [behaviors/Destroyable.ts:6](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L6) | ## Accessors -### $ +- [`addressId`](./Participant/addressId.md) +- [`addressId$`](./Participant/addressId$.md) +- [`audioMuted`](./Participant/audioMuted.md) +- [`audioMuted$`](./Participant/audioMuted$.md) +- [`autoGain`](./Participant/autoGain.md) +- [`autoGain$`](./Participant/autoGain$.md) +- [`deaf`](./Participant/deaf.md) +- [`deaf$`](./Participant/deaf$.md) +- [`denoise`](./Participant/denoise.md) +- [`denoise$`](./Participant/denoise$.md) +- [`destroyed$`](./Participant/destroyed$.md) +- [`echoCancellation`](./Participant/echoCancellation.md) +- [`echoCancellation$`](./Participant/echoCancellation$.md) +- [`handraised`](./Participant/handraised.md) +- [`handraised$`](./Participant/handraised$.md) +- [`inputSensitivity`](./Participant/inputSensitivity.md) +- [`inputSensitivity$`](./Participant/inputSensitivity$.md) +- [`inputVolume`](./Participant/inputVolume.md) +- [`inputVolume$`](./Participant/inputVolume$.md) +- [`isAudience`](./Participant/isAudience.md) +- [`isTalking`](./Participant/isTalking.md) +- [`isTalking$`](./Participant/isTalking$.md) +- [`lowbitrate`](./Participant/lowbitrate.md) +- [`lowbitrate$`](./Participant/lowbitrate$.md) +- [`meta`](./Participant/meta.md) +- [`meta$`](./Participant/meta$.md) +- [`name`](./Participant/name.md) +- [`name$`](./Participant/name$.md) +- [`nodeId`](./Participant/nodeId.md) +- [`nodeId$`](./Participant/nodeId$.md) +- [`noiseSuppression`](./Participant/noiseSuppression.md) +- [`noiseSuppression$`](./Participant/noiseSuppression$.md) +- [`outputVolume`](./Participant/outputVolume.md) +- [`outputVolume$`](./Participant/outputVolume$.md) +- [`position`](./Participant/position.md) +- [`position$`](./Participant/position$.md) +- [`subscriberId`](./Participant/subscriberId.md) +- [`subscriberId$`](./Participant/subscriberId$.md) +- [`type`](./Participant/type.md) +- [`type$`](./Participant/type$.md) +- [`videoMuted`](./Participant/videoMuted.md) +- [`videoMuted$`](./Participant/videoMuted$.md) +- [`visible`](./Participant/visible.md) +- [`visible$`](./Participant/visible$.md) -#### Get Signature - -> **get** **$**(): `Observable`\<`this`\> - -Defined in: [behaviors/Destroyable.ts:100](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L100) - -##### Returns - -`Observable`\<`this`\> - -#### Inherited from - -`Destroyable.$` - -*** - -### addressId - -#### Get Signature - -> **get** **addressId**(): `string` \| `undefined` - -Defined in: [core/entities/Participant.ts:394](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L394) - -Address ID of this participant, or `undefined` if not available. - -##### Returns - -`string` \| `undefined` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`addressId`](../interfaces/CallParticipant.md#addressid) - -*** - -### addressId$ - -#### Get Signature - -> **get** **addressId$**(): `Observable`\<`string`\> - -Defined in: [core/entities/Participant.ts:250](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L250) - -Observable of the participant's address ID. - -##### Returns - -`Observable`\<`string`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`addressId$`](../interfaces/CallParticipant.md#addressid-1) - -*** - -### audioMuted - -#### Get Signature - -> **get** **audioMuted**(): `boolean` - -Defined in: [core/entities/Participant.ts:329](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L329) - -Whether the participant's audio is muted. - -##### Returns - -`boolean` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`audioMuted`](../interfaces/CallParticipant.md#audiomuted) - -*** - -### audioMuted$ - -#### Get Signature - -> **get** **audioMuted$**(): `Observable`\<`boolean`\> - -Defined in: [core/entities/Participant.ts:107](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L107) - -Observable indicating whether the participant's audio is muted. - -##### Returns - -`Observable`\<`boolean`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`audioMuted$`](../interfaces/CallParticipant.md#audiomuted-1) - -*** - -### autoGain - -#### Get Signature - -> **get** **autoGain**(): `boolean` - -Defined in: [core/entities/Participant.ts:364](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L364) - -Whether automatic gain control is enabled. - -##### Returns - -`boolean` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`autoGain`](../interfaces/CallParticipant.md#autogain) - -*** - -### autoGain$ - -#### Get Signature - -> **get** **autoGain$**(): `Observable`\<`boolean`\> - -Defined in: [core/entities/Participant.ts:184](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L184) - -Observable indicating whether auto-gain control is enabled. - -##### Returns - -`Observable`\<`boolean`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`autoGain$`](../interfaces/CallParticipant.md#autogain-1) - -*** - -### deaf - -#### Get Signature - -> **get** **deaf**(): `boolean` - -Defined in: [core/entities/Participant.ts:339](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L339) - -Whether the participant is deafened (incoming audio muted). - -##### Returns - -`boolean` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`deaf`](../interfaces/CallParticipant.md#deaf) - -*** - -### deaf$ - -#### Get Signature - -> **get** **deaf$**(): `Observable`\<`boolean`\> - -Defined in: [core/entities/Participant.ts:129](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L129) - -Observable indicating whether the participant is deafened. - -##### Returns - -`Observable`\<`boolean`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`deaf$`](../interfaces/CallParticipant.md#deaf-1) - -*** - -### denoise - -#### Get Signature - -> **get** **denoise**(): `boolean` - -Defined in: [core/entities/Participant.ts:379](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L379) - -Whether noise reduction (denoise) is active. - -##### Returns - -`boolean` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`denoise`](../interfaces/CallParticipant.md#denoise) - -*** - -### denoise$ - -#### Get Signature - -> **get** **denoise$**(): `Observable`\<`boolean`\> - -Defined in: [core/entities/Participant.ts:217](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L217) - -Observable indicating whether noise reduction is active. - -##### Returns - -`Observable`\<`boolean`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`denoise$`](../interfaces/CallParticipant.md#denoise-1) - -*** - -### destroyed$ - -#### Get Signature - -> **get** **destroyed$**(): `Observable`\<`void`\> - -Defined in: [behaviors/Destroyable.ts:112](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L112) - -Observable that emits when the instance is destroyed - -##### Returns - -`Observable`\<`void`\> - -#### Inherited from - -`Destroyable.destroyed$` - -*** - -### echoCancellation - -#### Get Signature - -> **get** **echoCancellation**(): `boolean` - -Defined in: [core/entities/Participant.ts:359](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L359) - -Whether echo cancellation is enabled. - -##### Returns - -`boolean` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`echoCancellation`](../interfaces/CallParticipant.md#echocancellation) - -*** - -### echoCancellation$ - -#### Get Signature - -> **get** **echoCancellation$**(): `Observable`\<`boolean`\> - -Defined in: [core/entities/Participant.ts:173](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L173) - -Observable indicating whether echo cancellation is enabled. - -##### Returns - -`Observable`\<`boolean`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`echoCancellation$`](../interfaces/CallParticipant.md#echocancellation-1) - -*** - -### handraised - -#### Get Signature - -> **get** **handraised**(): `boolean` - -Defined in: [core/entities/Participant.ts:319](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L319) - -Whether the participant has raised their hand. - -##### Returns - -`boolean` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`handraised`](../interfaces/CallParticipant.md#handraised) - -*** - -### handraised$ - -#### Get Signature - -> **get** **handraised$**(): `Observable`\<`boolean`\> - -Defined in: [core/entities/Participant.ts:85](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L85) - -Observable indicating whether the participant has raised their hand. - -##### Returns - -`Observable`\<`boolean`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`handraised$`](../interfaces/CallParticipant.md#handraised-1) - -*** - -### inputSensitivity - -#### Get Signature - -> **get** **inputSensitivity**(): `number` \| `undefined` - -Defined in: [core/entities/Participant.ts:354](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L354) - -Current microphone input sensitivity level, or `undefined` if not set. - -##### Returns - -`number` \| `undefined` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`inputSensitivity`](../interfaces/CallParticipant.md#inputsensitivity) - -*** - -### inputSensitivity$ - -#### Get Signature - -> **get** **inputSensitivity$**(): `Observable`\<`number`\> - -Defined in: [core/entities/Participant.ts:162](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L162) - -Observable of the microphone input sensitivity level. - -##### Returns - -`Observable`\<`number`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`inputSensitivity$`](../interfaces/CallParticipant.md#inputsensitivity-1) - -*** - -### inputVolume - -#### Get Signature - -> **get** **inputVolume**(): `number` \| `undefined` - -Defined in: [core/entities/Participant.ts:344](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L344) - -Current microphone input volume level, or `undefined` if not set. - -##### Returns - -`number` \| `undefined` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`inputVolume`](../interfaces/CallParticipant.md#inputvolume) - -*** - -### inputVolume$ - -#### Get Signature - -> **get** **inputVolume$**(): `Observable`\<`number`\> - -Defined in: [core/entities/Participant.ts:140](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L140) - -Observable of the participant's microphone input volume. - -##### Returns - -`Observable`\<`number`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`inputVolume$`](../interfaces/CallParticipant.md#inputvolume-1) - -*** - -### isAudience - -#### Get Signature - -> **get** **isAudience**(): `boolean` - -Defined in: [core/entities/Participant.ts:304](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L304) - -Whether the participant is an audience member (view-only). - -##### Returns - -`boolean` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`isAudience`](../interfaces/CallParticipant.md#isaudience) - -*** - -### isTalking - -#### Get Signature - -> **get** **isTalking**(): `boolean` - -Defined in: [core/entities/Participant.ts:283](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L283) - -Whether the participant is currently speaking. - -##### Returns - -`boolean` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`isTalking`](../interfaces/CallParticipant.md#istalking) - -*** - -### isTalking$ - -#### Get Signature - -> **get** **isTalking$**(): `Observable`\<`boolean`\> - -Defined in: [core/entities/Participant.ts:272](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L272) - -Observable indicating whether the participant is currently speaking. - -##### Returns - -`Observable`\<`boolean`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`isTalking$`](../interfaces/CallParticipant.md#istalking-1) - -*** - -### lowbitrate - -#### Get Signature - -> **get** **lowbitrate**(): `boolean` - -Defined in: [core/entities/Participant.ts:374](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L374) - -Whether low-bitrate mode is active. - -##### Returns - -`boolean` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`lowbitrate`](../interfaces/CallParticipant.md#lowbitrate) - -*** - -### lowbitrate$ - -#### Get Signature - -> **get** **lowbitrate$**(): `Observable`\<`boolean`\> - -Defined in: [core/entities/Participant.ts:206](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L206) - -Observable indicating whether low-bitrate mode is active. - -##### Returns - -`Observable`\<`boolean`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`lowbitrate$`](../interfaces/CallParticipant.md#lowbitrate-1) - -*** - -### meta - -#### Get Signature - -> **get** **meta**(): `Record`\<`string`, `unknown`\> \| `undefined` - -Defined in: [core/entities/Participant.ts:384](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L384) - -Custom metadata for this participant, or `undefined` if not set. - -##### Returns - -`Record`\<`string`, `unknown`\> \| `undefined` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`meta`](../interfaces/CallParticipant.md#meta) - -*** - -### meta$ - -#### Get Signature - -> **get** **meta$**(): `Observable`\<`Record`\<`string`, `unknown`\>\> - -Defined in: [core/entities/Participant.ts:228](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L228) - -Observable of custom metadata for this participant. - -##### Returns - -`Observable`\<`Record`\<`string`, `unknown`\>\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`meta$`](../interfaces/CallParticipant.md#meta-1) - -*** - -### name - -#### Get Signature - -> **get** **name**(): `string` \| `undefined` - -Defined in: [core/entities/Participant.ts:309](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L309) - -Display name of this participant. - -##### Returns - -`string` \| `undefined` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`name`](../interfaces/CallParticipant.md#name) - -*** - -### name$ - -#### Get Signature - -> **get** **name$**(): `Observable`\<`string`\> - -Defined in: [core/entities/Participant.ts:63](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L63) - -Observable of the participant's display name. - -##### Returns - -`Observable`\<`string`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`name$`](../interfaces/CallParticipant.md#name-1) - -*** - -### nodeId - -#### Get Signature - -> **get** **nodeId**(): `string` \| `undefined` - -Defined in: [core/entities/Participant.ts:399](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L399) - -Server node ID for this participant, or `undefined` if not available. - -##### Returns - -`string` \| `undefined` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`nodeId`](../interfaces/CallParticipant.md#nodeid) - -*** - -### nodeId$ - -#### Get Signature - -> **get** **nodeId$**(): `Observable`\<`string`\> - -Defined in: [core/entities/Participant.ts:261](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L261) - -Observable of the server node ID for this participant. - -##### Returns - -`Observable`\<`string`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`nodeId$`](../interfaces/CallParticipant.md#nodeid-1) - -*** - -### noiseSuppression - -#### Get Signature - -> **get** **noiseSuppression**(): `boolean` - -Defined in: [core/entities/Participant.ts:369](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L369) - -Whether noise suppression is enabled. - -##### Returns - -`boolean` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`noiseSuppression`](../interfaces/CallParticipant.md#noisesuppression) - -*** - -### noiseSuppression$ - -#### Get Signature - -> **get** **noiseSuppression$**(): `Observable`\<`boolean`\> - -Defined in: [core/entities/Participant.ts:195](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L195) - -Observable indicating whether noise suppression is enabled. - -##### Returns - -`Observable`\<`boolean`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`noiseSuppression$`](../interfaces/CallParticipant.md#noisesuppression-1) - -*** - -### outputVolume - -#### Get Signature - -> **get** **outputVolume**(): `number` \| `undefined` - -Defined in: [core/entities/Participant.ts:349](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L349) - -Current speaker output volume level, or `undefined` if not set. - -##### Returns - -`number` \| `undefined` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`outputVolume`](../interfaces/CallParticipant.md#outputvolume) - -*** - -### outputVolume$ - -#### Get Signature - -> **get** **outputVolume$**(): `Observable`\<`number`\> - -Defined in: [core/entities/Participant.ts:151](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L151) - -Observable of the participant's speaker output volume. - -##### Returns - -`Observable`\<`number`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`outputVolume$`](../interfaces/CallParticipant.md#outputvolume-1) - -*** - -### position - -#### Get Signature - -> **get** **position**(): [`LayoutLayer`](../interfaces/LayoutLayer.md) \| `undefined` - -Defined in: [core/entities/Participant.ts:299](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L299) - -Current layout position. - -##### Returns - -[`LayoutLayer`](../interfaces/LayoutLayer.md) \| `undefined` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`position`](../interfaces/CallParticipant.md#position) - -*** - -### position$ - -#### Get Signature - -> **get** **position$**(): `Observable`\<[`LayoutLayer`](../interfaces/LayoutLayer.md) \| `undefined`\> - -Defined in: [core/entities/Participant.ts:288](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L288) - -Observable of the participant's layout position. - -##### Returns - -`Observable`\<[`LayoutLayer`](../interfaces/LayoutLayer.md) \| `undefined`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`position$`](../interfaces/CallParticipant.md#position-1) - -*** - -### subscriberId - -#### Get Signature - -> **get** **subscriberId**(): `string` \| `undefined` - -Defined in: [core/entities/Participant.ts:389](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L389) - -Subscriber ID of this participant, or `undefined` if not available. - -##### Returns - -`string` \| `undefined` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`subscriberId`](../interfaces/CallParticipant.md#subscriberid) - -*** - -### subscriberId$ - -#### Get Signature - -> **get** **subscriberId$**(): `Observable`\<`string`\> - -Defined in: [core/entities/Participant.ts:239](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L239) - -Observable of the participant's subscriber ID. - -##### Returns - -`Observable`\<`string`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`subscriberId$`](../interfaces/CallParticipant.md#subscriberid-1) - -*** - -### type - -#### Get Signature - -> **get** **type**(): `string` \| `undefined` - -Defined in: [core/entities/Participant.ts:314](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L314) - -Participant type (e.g. `'member'`, `'screen'`). - -##### Returns - -`string` \| `undefined` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`type`](../interfaces/CallParticipant.md#type) - -*** - -### type$ - -#### Get Signature - -> **get** **type$**(): `Observable`\<`string`\> - -Defined in: [core/entities/Participant.ts:74](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L74) - -Observable of the participant type (e.g. `'member'`, `'screen'`). - -##### Returns - -`Observable`\<`string`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`type$`](../interfaces/CallParticipant.md#type-1) - -*** - -### videoMuted - -#### Get Signature - -> **get** **videoMuted**(): `boolean` - -Defined in: [core/entities/Participant.ts:334](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L334) - -Whether the participant's video is muted. - -##### Returns - -`boolean` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`videoMuted`](../interfaces/CallParticipant.md#videomuted) - -*** - -### videoMuted$ - -#### Get Signature - -> **get** **videoMuted$**(): `Observable`\<`boolean`\> - -Defined in: [core/entities/Participant.ts:118](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L118) - -Observable indicating whether the participant's video is muted. - -##### Returns - -`Observable`\<`boolean`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`videoMuted$`](../interfaces/CallParticipant.md#videomuted-1) - -*** - -### visible - -#### Get Signature - -> **get** **visible**(): `boolean` - -Defined in: [core/entities/Participant.ts:324](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L324) - -Whether the participant is visible in the layout. - -##### Returns - -`boolean` - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`visible`](../interfaces/CallParticipant.md#visible) - -*** - -### visible$ - -#### Get Signature - -> **get** **visible$**(): `Observable`\<`boolean`\> - -Defined in: [core/entities/Participant.ts:96](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L96) - -Observable indicating whether the participant is visible in the layout. - -##### Returns - -`Observable`\<`boolean`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`visible$`](../interfaces/CallParticipant.md#visible-1) - -## Methods - -### cachedObservable() - -> `protected` **cachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> - -Defined in: [behaviors/Destroyable.ts:28](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L28) - -#### Type Parameters - -| Type Parameter | -| ------ | -| `T` | - -#### Parameters - -| Parameter | Type | -| ------ | ------ | -| `key` | `string` | -| `factory` | () => `Observable`\<`T`\> | - -#### Returns - -`Observable`\<`T`\> - -#### Inherited from - -`Destroyable.cachedObservable` - -*** - -### createBehaviorSubject() - -> `protected` **createBehaviorSubject**\<`T`\>(`initialValue`): `BehaviorSubject`\<`T`\> - -Defined in: [behaviors/Destroyable.ts:94](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L94) - -#### Type Parameters - -| Type Parameter | -| ------ | -| `T` | - -#### Parameters - -| Parameter | Type | -| ------ | ------ | -| `initialValue` | `T` | - -#### Returns - -`BehaviorSubject`\<`T`\> - -#### Inherited from - -`Destroyable.createBehaviorSubject` - -*** - -### createReplaySubject() - -> `protected` **createReplaySubject**\<`T`\>(`bufferSize?`, `windowTime?`): `ReplaySubject`\<`T`\> - -Defined in: [behaviors/Destroyable.ts:88](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L88) - -#### Type Parameters - -| Type Parameter | -| ------ | -| `T` | - -#### Parameters - -| Parameter | Type | -| ------ | ------ | -| `bufferSize?` | `number` | -| `windowTime?` | `number` | - -#### Returns - -`ReplaySubject`\<`T`\> - -#### Inherited from - -`Destroyable.createReplaySubject` - -*** - -### createSubject() - -> `protected` **createSubject**\<`T`\>(): `Subject`\<`T`\> - -Defined in: [behaviors/Destroyable.ts:82](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L82) - -#### Type Parameters - -| Type Parameter | -| ------ | -| `T` | - -#### Returns - -`Subject`\<`T`\> - -#### Inherited from - -`Destroyable.createSubject` - -*** - -### deferEmission() - -> `protected` **deferEmission**\<`T`\>(`observable`): `Observable`\<`T`\> - -Defined in: [behaviors/Destroyable.ts:70](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L70) - -Wraps an observable so emissions are deferred to the microtask queue. - -Use ONLY for public-facing getters that expose a subject via -`.asObservable()` without going through `cachedObservable`. - -Do NOT use for observables consumed internally by the SDK. - -#### Type Parameters - -| Type Parameter | -| ------ | -| `T` | - -#### Parameters - -| Parameter | Type | -| ------ | ------ | -| `observable` | `Observable`\<`T`\> | - -#### Returns - -`Observable`\<`T`\> - -#### Inherited from - -`Destroyable.deferEmission` - -*** - -### destroy() - -> **destroy**(): `void` - -Defined in: [core/entities/Participant.ts:558](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L558) - -Destroys the participant, releasing all subscriptions and references. - -#### Returns - -`void` - -#### Overrides - -`Destroyable.destroy` - -*** - -### end() - -> **end**(): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:532](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L532) - -Ends the call for this participant. - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`end`](../interfaces/CallParticipant.md#end) - -*** - -### mute() - -> **mute**(): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:421](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L421) - -Mutes the participant's audio. - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`mute`](../interfaces/CallParticipant.md#mute) - -*** - -### muteVideo() - -> **muteVideo**(): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:436](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L436) - -Mutes the participant's video. - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`muteVideo`](../interfaces/CallParticipant.md#mutevideo) - -*** - -### publicCachedObservable() - -> `protected` **publicCachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> - -Defined in: [behaviors/Destroyable.ts:51](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L51) - -Like `cachedObservable`, but defers emissions to the microtask queue -via `observeOn(asapScheduler)`. - -Use ONLY for public-facing observable getters that external consumers -subscribe to. Prevents a class of bugs where `BehaviorSubject` or -`ReplaySubject` replays synchronously during `subscribe()`, before -the subscription variable is assigned in the caller's scope. - -Do NOT use for observables consumed internally by the SDK — internal -code using `subscribeTo()`, `firstValueFrom()`, or `withLatestFrom()` -depends on synchronous emission delivery. - -#### Type Parameters - -| Type Parameter | -| ------ | -| `T` | - -#### Parameters - -| Parameter | Type | -| ------ | ------ | -| `key` | `string` | -| `factory` | () => `Observable`\<`T`\> | - -#### Returns - -`Observable`\<`T`\> - -#### Inherited from - -`Destroyable.publicCachedObservable` - -*** - -### remove() - -> **remove**(): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:521](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L521) - -Removes this participant from the call. - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`remove`](../interfaces/CallParticipant.md#remove) - -*** - -### setAudioInputSensitivity() - -> **setAudioInputSensitivity**(`value`): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:484](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L484) - -Sets the microphone input sensitivity level. - -#### Parameters - -| Parameter | Type | -| ------ | ------ | -| `value` | `number` | - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`setAudioInputSensitivity`](../interfaces/CallParticipant.md#setaudioinputsensitivity) - -*** - -### setAudioInputVolume() - -> **setAudioInputVolume**(`value`): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:494](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L494) - -Sets the microphone input volume level. - -#### Parameters - -| Parameter | Type | Description | -| ------ | ------ | ------ | -| `value` | `number` | Volume level (0-100). | - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`setAudioInputVolume`](../interfaces/CallParticipant.md#setaudioinputvolume) - -*** - -### setAudioOutputVolume() - -> **setAudioOutputVolume**(`value`): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:504](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L504) - -Sets the speaker output volume level. - -#### Parameters - -| Parameter | Type | Description | -| ------ | ------ | ------ | -| `value` | `number` | Volume level (0-100). | - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`setAudioOutputVolume`](../interfaces/CallParticipant.md#setaudiooutputvolume) - -*** - -### setMeta() - -> **setMeta**(`_meta`): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:542](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L542) - -Replaces custom metadata for this participant. - -#### Parameters - -| Parameter | Type | Description | -| ------ | ------ | ------ | -| `_meta` | `Record`\<`string`, `unknown`\> | Metadata object to set. | - -#### Returns - -`Promise`\<`void`\> - -#### Throws - -Not yet implemented. - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`setMeta`](../interfaces/CallParticipant.md#setmeta) - -*** - -### setPosition() - -> **setPosition**(`value`): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:514](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L514) - -Sets the participant's position in the video layout. - -#### Parameters - -| Parameter | Type | Description | -| ------ | ------ | ------ | -| `value` | [`VideoPosition`](../type-aliases/VideoPosition.md) | The [VideoPosition](../type-aliases/VideoPosition.md) to assign (e.g. `'auto'`, `'reserved-0'`). | - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`setPosition`](../interfaces/CallParticipant.md#setposition) - -*** - -### subscribeTo() - -> `protected` **subscribeTo**\<`T`\>(`observable`, `observerOrNext`): `void` - -Defined in: [behaviors/Destroyable.ts:74](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/behaviors/Destroyable.ts#L74) - -#### Type Parameters - -| Type Parameter | -| ------ | -| `T` | - -#### Parameters - -| Parameter | Type | -| ------ | ------ | -| `observable` | `Observable`\<`T`\> | -| `observerOrNext` | `Partial`\<`Observer`\<`T`\>\> \| ((`value`) => `void`) \| `undefined` | - -#### Returns - -`void` - -#### Inherited from - -`Destroyable.subscribeTo` - -*** - -### toggleAudioInputAutoGain() - -> **toggleAudioInputAutoGain**(): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:460](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L460) - -Toggles automatic gain control on the audio input. - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`toggleAudioInputAutoGain`](../interfaces/CallParticipant.md#toggleaudioinputautogain) - -*** - -### toggleDeaf() - -> **toggleDeaf**(): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:409](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L409) - -Toggles the deafened state (mutes/unmutes incoming audio). - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`toggleDeaf`](../interfaces/CallParticipant.md#toggledeaf) - -*** - -### toggleEchoCancellation() - -> **toggleEchoCancellation**(): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:451](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L451) - -Toggles echo cancellation on the audio input. - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`toggleEchoCancellation`](../interfaces/CallParticipant.md#toggleechocancellation) - -*** - -### toggleHandraise() - -> **toggleHandraise**(): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:416](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L416) - -Toggles the hand-raised state. - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`toggleHandraise`](../interfaces/CallParticipant.md#togglehandraise) - -*** - -### toggleLowbitrate() - -> **toggleLowbitrate**(): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:478](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L478) - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`toggleLowbitrate`](../interfaces/CallParticipant.md#togglelowbitrate) - -*** - -### toggleMute() - -> **toggleMute**(): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:431](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L431) - -Toggles the participant's audio mute state. - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`toggleMute`](../interfaces/CallParticipant.md#togglemute) - -*** - -### toggleMuteVideo() - -> **toggleMuteVideo**(): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:446](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L446) - -Toggles the participant's video mute state. - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`toggleMuteVideo`](../interfaces/CallParticipant.md#togglemutevideo) - -*** - -### toggleNoiseSuppression() - -> **toggleNoiseSuppression**(): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:469](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L469) - -Toggles noise suppression on the audio input. - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`toggleNoiseSuppression`](../interfaces/CallParticipant.md#togglenoisesuppression) - -*** - -### unmute() - -> **unmute**(): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:426](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L426) - -Unmutes the participant's audio. - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`unmute`](../interfaces/CallParticipant.md#unmute) - -*** - -### unmuteVideo() - -> **unmuteVideo**(): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:441](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L441) - -Unmutes the participant's video. - -#### Returns - -`Promise`\<`void`\> - -#### Implementation of - -[`CallParticipant`](../interfaces/CallParticipant.md).[`unmuteVideo`](../interfaces/CallParticipant.md#unmutevideo) - -*** - -### updateMeta() - -> **updateMeta**(`_meta`): `Promise`\<`void`\> - -Defined in: [core/entities/Participant.ts:552](https://github.com/signalwire/browser-sdk/blob/22134db25f9e6e53565f0e7df00bf7f13ab479c3/packages/main/src/core/entities/Participant.ts#L552) - -Merges values into custom metadata (unlike [setMeta](#setmeta) which replaces). - -#### Parameters - -| Parameter | Type | Description | -| ------ | ------ | ------ | -| `_meta` | `Record`\<`string`, `unknown`\> | Metadata to merge. | - -#### Returns - -`Promise`\<`void`\> - -#### Throws - -Not yet implemented. - -#### Implementation of +## Methods -[`CallParticipant`](../interfaces/CallParticipant.md).[`updateMeta`](../interfaces/CallParticipant.md#updatemeta) +- [`cachedObservable`](./Participant/cachedObservable.md) +- [`createBehaviorSubject`](./Participant/createBehaviorSubject.md) +- [`createReplaySubject`](./Participant/createReplaySubject.md) +- [`createSubject`](./Participant/createSubject.md) +- [`deferEmission`](./Participant/deferEmission.md) +- [`destroy`](./Participant/destroy.md) +- [`end`](./Participant/end.md) +- [`mute`](./Participant/mute.md) +- [`muteVideo`](./Participant/muteVideo.md) +- [`publicCachedObservable`](./Participant/publicCachedObservable.md) +- [`remove`](./Participant/remove.md) +- [`setAudioInputSensitivity`](./Participant/setAudioInputSensitivity.md) +- [`setAudioInputVolume`](./Participant/setAudioInputVolume.md) +- [`setAudioOutputVolume`](./Participant/setAudioOutputVolume.md) +- [`setMeta`](./Participant/setMeta.md) +- [`setPosition`](./Participant/setPosition.md) +- [`subscribeTo`](./Participant/subscribeTo.md) +- [`toggleAudioInputAutoGain`](./Participant/toggleAudioInputAutoGain.md) +- [`toggleDeaf`](./Participant/toggleDeaf.md) +- [`toggleEchoCancellation`](./Participant/toggleEchoCancellation.md) +- [`toggleHandraise`](./Participant/toggleHandraise.md) +- [`toggleLowbitrate`](./Participant/toggleLowbitrate.md) +- [`toggleMute`](./Participant/toggleMute.md) +- [`toggleMuteVideo`](./Participant/toggleMuteVideo.md) +- [`toggleNoiseSuppression`](./Participant/toggleNoiseSuppression.md) +- [`unmute`](./Participant/unmute.md) +- [`unmuteVideo`](./Participant/unmuteVideo.md) +- [`updateMeta`](./Participant/updateMeta.md) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/addressId$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/addressId$.md new file mode 100644 index 000000000..4c6c7e6ce --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/addressId$.md @@ -0,0 +1,17 @@ +# addressId$ + +#### Get Signature + +> **get** **addressId$**(): `Observable`\<`string` \| `undefined`\> + +Defined in: [core/entities/Participant.ts:252](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L252) + +Observable of the participant's address ID. + +##### Returns + +`Observable`\<`string` \| `undefined`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`addressId$`](../../interfaces/CallParticipant.md#addressid-1) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/addressId.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/addressId.md new file mode 100644 index 000000000..bda1ed888 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/addressId.md @@ -0,0 +1,17 @@ +# addressId + +#### Get Signature + +> **get** **addressId**(): `string` \| `undefined` + +Defined in: [core/entities/Participant.ts:402](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L402) + +Address ID of this participant, or `undefined` if not available. + +##### Returns + +`string` \| `undefined` + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`addressId`](../../interfaces/CallParticipant.md#addressid) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/audioMuted$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/audioMuted$.md new file mode 100644 index 000000000..717eee546 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/audioMuted$.md @@ -0,0 +1,17 @@ +# audioMuted$ + +#### Get Signature + +> **get** **audioMuted$**(): `Observable`\<`boolean` \| `undefined`\> + +Defined in: [core/entities/Participant.ts:102](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L102) + +Observable indicating whether the participant's audio is muted. + +##### Returns + +`Observable`\<`boolean` \| `undefined`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`audioMuted$`](../../interfaces/CallParticipant.md#audiomuted-1) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/audioMuted.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/audioMuted.md new file mode 100644 index 000000000..cbf080986 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/audioMuted.md @@ -0,0 +1,17 @@ +# audioMuted + +#### Get Signature + +> **get** **audioMuted**(): `boolean` + +Defined in: [core/entities/Participant.ts:327](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L327) + +Whether the participant's audio is muted. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`audioMuted`](../../interfaces/CallParticipant.md#audiomuted) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/autoGain$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/autoGain$.md new file mode 100644 index 000000000..8e8e575bc --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/autoGain$.md @@ -0,0 +1,17 @@ +# autoGain$ + +#### Get Signature + +> **get** **autoGain$**(): `Observable`\<`boolean` \| `undefined`\> + +Defined in: [core/entities/Participant.ts:192](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L192) + +Observable indicating whether auto-gain control is enabled. + +##### Returns + +`Observable`\<`boolean` \| `undefined`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`autoGain$`](../../interfaces/CallParticipant.md#autogain-1) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/autoGain.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/autoGain.md new file mode 100644 index 000000000..1f11985ec --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/autoGain.md @@ -0,0 +1,17 @@ +# autoGain + +#### Get Signature + +> **get** **autoGain**(): `boolean` + +Defined in: [core/entities/Participant.ts:372](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L372) + +Whether automatic gain control is enabled. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`autoGain`](../../interfaces/CallParticipant.md#autogain) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/cachedObservable.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/cachedObservable.md new file mode 100644 index 000000000..4e2ba6b39 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/cachedObservable.md @@ -0,0 +1,26 @@ +# cachedObservable + +> `protected` **cachedObservable**\<`T`\>(`key`, `factory`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:19](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L19) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `key` | `string` | +| `factory` | () => `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.cachedObservable` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/createBehaviorSubject.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/createBehaviorSubject.md new file mode 100644 index 000000000..352d48f52 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/createBehaviorSubject.md @@ -0,0 +1,25 @@ +# createBehaviorSubject + +> `protected` **createBehaviorSubject**\<`T`\>(`initialValue`): `BehaviorSubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:85](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L85) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `initialValue` | `T` | + +#### Returns + +`BehaviorSubject`\<`T`\> + +#### Inherited from + +`Destroyable.createBehaviorSubject` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/createReplaySubject.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/createReplaySubject.md new file mode 100644 index 000000000..73a4e3d3d --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/createReplaySubject.md @@ -0,0 +1,26 @@ +# createReplaySubject + +> `protected` **createReplaySubject**\<`T`\>(`bufferSize?`, `windowTime?`): `ReplaySubject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:79](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L79) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `bufferSize?` | `number` | +| `windowTime?` | `number` | + +#### Returns + +`ReplaySubject`\<`T`\> + +#### Inherited from + +`Destroyable.createReplaySubject` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/createSubject.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/createSubject.md new file mode 100644 index 000000000..532f32e97 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/createSubject.md @@ -0,0 +1,19 @@ +# createSubject + +> `protected` **createSubject**\<`T`\>(): `Subject`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:73](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L73) + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Returns + +`Subject`\<`T`\> + +#### Inherited from + +`Destroyable.createSubject` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/deaf$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/deaf$.md new file mode 100644 index 000000000..a0a511286 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/deaf$.md @@ -0,0 +1,17 @@ +# deaf$ + +#### Get Signature + +> **get** **deaf$**(): `Observable`\<`boolean` \| `undefined`\> + +Defined in: [core/entities/Participant.ts:122](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L122) + +Observable indicating whether the participant is deafened. + +##### Returns + +`Observable`\<`boolean` \| `undefined`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`deaf$`](../../interfaces/CallParticipant.md#deaf-1) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/deaf.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/deaf.md new file mode 100644 index 000000000..df9e4bd52 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/deaf.md @@ -0,0 +1,17 @@ +# deaf + +#### Get Signature + +> **get** **deaf**(): `boolean` + +Defined in: [core/entities/Participant.ts:337](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L337) + +Whether the participant is deafened (incoming audio muted). + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`deaf`](../../interfaces/CallParticipant.md#deaf) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/deferEmission.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/deferEmission.md new file mode 100644 index 000000000..1b1fa66a9 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/deferEmission.md @@ -0,0 +1,32 @@ +# deferEmission + +> `protected` **deferEmission**\<`T`\>(`observable`): `Observable`\<`T`\> + +Defined in: [behaviors/Destroyable.ts:61](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L61) + +Wraps an observable so emissions are deferred to the microtask queue. + +Use ONLY for public-facing getters that expose a subject via +`.asObservable()` without going through `cachedObservable`. + +Do NOT use for observables consumed internally by the SDK. + +#### Type Parameters + +| Type Parameter | +| ------ | +| `T` | + +#### Parameters + +| Parameter | Type | +| ------ | ------ | +| `observable` | `Observable`\<`T`\> | + +#### Returns + +`Observable`\<`T`\> + +#### Inherited from + +`Destroyable.deferEmission` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/denoise$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/denoise$.md new file mode 100644 index 000000000..a300ae111 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/denoise$.md @@ -0,0 +1,17 @@ +# denoise$ + +#### Get Signature + +> **get** **denoise$**(): `Observable`\<`boolean` \| `undefined`\> + +Defined in: [core/entities/Participant.ts:222](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L222) + +Observable indicating whether noise reduction is active. + +##### Returns + +`Observable`\<`boolean` \| `undefined`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`denoise$`](../../interfaces/CallParticipant.md#denoise-1) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/denoise.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/denoise.md new file mode 100644 index 000000000..6d148dbc3 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/denoise.md @@ -0,0 +1,17 @@ +# denoise + +#### Get Signature + +> **get** **denoise**(): `boolean` + +Defined in: [core/entities/Participant.ts:387](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L387) + +Whether noise reduction (denoise) is active. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`denoise`](../../interfaces/CallParticipant.md#denoise) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/destroy.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/destroy.md new file mode 100644 index 000000000..7d973b987 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/destroy.md @@ -0,0 +1,15 @@ +# destroy + +> **destroy**(): `void` + +Defined in: [core/entities/Participant.ts:591](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L591) + +Destroys the participant, releasing all subscriptions and references. + +#### Returns + +`void` + +#### Overrides + +`Destroyable.destroy` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/destroyed$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/destroyed$.md new file mode 100644 index 000000000..63dc55fe7 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/destroyed$.md @@ -0,0 +1,17 @@ +# destroyed$ + +#### Get Signature + +> **get** **destroyed$**(): `Observable`\<`void`\> + +Defined in: [behaviors/Destroyable.ts:94](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/behaviors/Destroyable.ts#L94) + +Observable that emits when the instance is destroyed + +##### Returns + +`Observable`\<`void`\> + +#### Inherited from + +`Destroyable.destroyed$` diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/echoCancellation$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/echoCancellation$.md new file mode 100644 index 000000000..849816614 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/echoCancellation$.md @@ -0,0 +1,17 @@ +# echoCancellation$ + +#### Get Signature + +> **get** **echoCancellation$**(): `Observable`\<`boolean` \| `undefined`\> + +Defined in: [core/entities/Participant.ts:182](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L182) + +Observable indicating whether echo cancellation is enabled. + +##### Returns + +`Observable`\<`boolean` \| `undefined`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`echoCancellation$`](../../interfaces/CallParticipant.md#echocancellation-1) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/echoCancellation.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/echoCancellation.md new file mode 100644 index 000000000..380c32334 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/echoCancellation.md @@ -0,0 +1,17 @@ +# echoCancellation + +#### Get Signature + +> **get** **echoCancellation**(): `boolean` + +Defined in: [core/entities/Participant.ts:367](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L367) + +Whether echo cancellation is enabled. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`echoCancellation`](../../interfaces/CallParticipant.md#echocancellation) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/end.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/end.md new file mode 100644 index 000000000..bbc157b08 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/end.md @@ -0,0 +1,15 @@ +# end + +> **end**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:565](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L565) + +Ends the call for this participant. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`end`](../../interfaces/CallParticipant.md#end) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/handraised$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/handraised$.md new file mode 100644 index 000000000..25dd0449f --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/handraised$.md @@ -0,0 +1,17 @@ +# handraised$ + +#### Get Signature + +> **get** **handraised$**(): `Observable`\<`boolean` \| `undefined`\> + +Defined in: [core/entities/Participant.ts:82](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L82) + +Observable indicating whether the participant has raised their hand. + +##### Returns + +`Observable`\<`boolean` \| `undefined`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`handraised$`](../../interfaces/CallParticipant.md#handraised-1) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/handraised.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/handraised.md new file mode 100644 index 000000000..da51f671c --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/handraised.md @@ -0,0 +1,17 @@ +# handraised + +#### Get Signature + +> **get** **handraised**(): `boolean` + +Defined in: [core/entities/Participant.ts:317](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L317) + +Whether the participant has raised their hand. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`handraised`](../../interfaces/CallParticipant.md#handraised) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/inputSensitivity$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/inputSensitivity$.md new file mode 100644 index 000000000..82ea749f1 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/inputSensitivity$.md @@ -0,0 +1,24 @@ +# inputSensitivity$ + +#### Get Signature + +> **get** **inputSensitivity$**(): `Observable`\<`number` \| `undefined`\> + +Defined in: [core/entities/Participant.ts:172](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L172) + +Observable of the **conference-only** microphone energy/gate sensitivity +level for this member. Routes through the conferencing mix engine and has +no effect on 1:1 WebRTC calls. Populated from `member.updated` events for +conference members. + +##### See + +[setAudioInputSensitivity](#setaudioinputsensitivity) + +##### Returns + +`Observable`\<`number` \| `undefined`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`inputSensitivity$`](../../interfaces/CallParticipant.md#inputsensitivity-1) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/inputSensitivity.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/inputSensitivity.md new file mode 100644 index 000000000..3b6d3f5ef --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/inputSensitivity.md @@ -0,0 +1,18 @@ +# inputSensitivity + +#### Get Signature + +> **get** **inputSensitivity**(): `number` \| `undefined` + +Defined in: [core/entities/Participant.ts:362](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L362) + +Current **conference-only** microphone sensitivity/gate level, or +`undefined` if not set. Applies only to conference members. + +##### Returns + +`number` \| `undefined` + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`inputSensitivity`](../../interfaces/CallParticipant.md#inputsensitivity) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/inputVolume$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/inputVolume$.md new file mode 100644 index 000000000..3d752dd48 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/inputVolume$.md @@ -0,0 +1,24 @@ +# inputVolume$ + +#### Get Signature + +> **get** **inputVolume$**(): `Observable`\<`number` \| `undefined`\> + +Defined in: [core/entities/Participant.ts:139](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L139) + +Observable of the participant's **server-side** microphone input volume +as reported by the mix engine. This is gain applied on the bridged audio +leg (FreeSWITCH channel read volume), NOT the local browser mic. For a +local PC mic control, see Call.setLocalMicrophoneGain. + +##### See + +[setAudioInputVolume](#setaudioinputvolume) + +##### Returns + +`Observable`\<`number` \| `undefined`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`inputVolume$`](../../interfaces/CallParticipant.md#inputvolume-1) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/inputVolume.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/inputVolume.md new file mode 100644 index 000000000..dd48ee273 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/inputVolume.md @@ -0,0 +1,19 @@ +# inputVolume + +#### Get Signature + +> **get** **inputVolume**(): `number` \| `undefined` + +Defined in: [core/entities/Participant.ts:346](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L346) + +Current **server-side** microphone input volume as reported by the mix +engine, or `undefined` if not set. Not the local PC mic — see +Call.setLocalMicrophoneGain for browser-side control. + +##### Returns + +`number` \| `undefined` + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`inputVolume`](../../interfaces/CallParticipant.md#inputvolume) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/isAudience.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/isAudience.md new file mode 100644 index 000000000..a121e58cb --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/isAudience.md @@ -0,0 +1,17 @@ +# isAudience + +#### Get Signature + +> **get** **isAudience**(): `boolean` + +Defined in: [core/entities/Participant.ts:302](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L302) + +Whether the participant is an audience member (view-only). + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`isAudience`](../../interfaces/CallParticipant.md#isaudience) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/isTalking$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/isTalking$.md new file mode 100644 index 000000000..d50baea06 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/isTalking$.md @@ -0,0 +1,17 @@ +# isTalking$ + +#### Get Signature + +> **get** **isTalking$**(): `Observable`\<`boolean` \| `undefined`\> + +Defined in: [core/entities/Participant.ts:272](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L272) + +Observable indicating whether the participant is currently speaking. + +##### Returns + +`Observable`\<`boolean` \| `undefined`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`isTalking$`](../../interfaces/CallParticipant.md#istalking-1) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/isTalking.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/isTalking.md new file mode 100644 index 000000000..8ef83174a --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/isTalking.md @@ -0,0 +1,17 @@ +# isTalking + +#### Get Signature + +> **get** **isTalking**(): `boolean` + +Defined in: [core/entities/Participant.ts:282](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L282) + +Whether the participant is currently speaking. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`isTalking`](../../interfaces/CallParticipant.md#istalking) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/lowbitrate$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/lowbitrate$.md new file mode 100644 index 000000000..4b76c090d --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/lowbitrate$.md @@ -0,0 +1,17 @@ +# lowbitrate$ + +#### Get Signature + +> **get** **lowbitrate$**(): `Observable`\<`boolean` \| `undefined`\> + +Defined in: [core/entities/Participant.ts:212](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L212) + +Observable indicating whether low-bitrate mode is active. + +##### Returns + +`Observable`\<`boolean` \| `undefined`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`lowbitrate$`](../../interfaces/CallParticipant.md#lowbitrate-1) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/lowbitrate.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/lowbitrate.md new file mode 100644 index 000000000..dcb113226 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/lowbitrate.md @@ -0,0 +1,17 @@ +# lowbitrate + +#### Get Signature + +> **get** **lowbitrate**(): `boolean` + +Defined in: [core/entities/Participant.ts:382](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L382) + +Whether low-bitrate mode is active. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`lowbitrate`](../../interfaces/CallParticipant.md#lowbitrate) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/meta$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/meta$.md new file mode 100644 index 000000000..f7ce12af1 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/meta$.md @@ -0,0 +1,17 @@ +# meta$ + +#### Get Signature + +> **get** **meta$**(): `Observable`\<`Record`\<`string`, `unknown`\> \| `undefined`\> + +Defined in: [core/entities/Participant.ts:232](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L232) + +Observable of custom metadata for this participant. + +##### Returns + +`Observable`\<`Record`\<`string`, `unknown`\> \| `undefined`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`meta$`](../../interfaces/CallParticipant.md#meta-1) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/meta.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/meta.md new file mode 100644 index 000000000..462212c6d --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/meta.md @@ -0,0 +1,17 @@ +# meta + +#### Get Signature + +> **get** **meta**(): `Record`\<`string`, `unknown`\> \| `undefined` + +Defined in: [core/entities/Participant.ts:392](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L392) + +Custom metadata for this participant, or `undefined` if not set. + +##### Returns + +`Record`\<`string`, `unknown`\> \| `undefined` + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`meta`](../../interfaces/CallParticipant.md#meta) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/mute.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/mute.md new file mode 100644 index 000000000..9c095241e --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/mute.md @@ -0,0 +1,15 @@ +# mute + +> **mute**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:429](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L429) + +Mutes the participant's audio. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`mute`](../../interfaces/CallParticipant.md#mute) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/muteVideo.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/muteVideo.md new file mode 100644 index 000000000..47303f94d --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/muteVideo.md @@ -0,0 +1,15 @@ +# muteVideo + +> **muteVideo**(): `Promise`\<`void`\> + +Defined in: [core/entities/Participant.ts:444](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L444) + +Mutes the participant's video. + +#### Returns + +`Promise`\<`void`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`muteVideo`](../../interfaces/CallParticipant.md#mutevideo) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/name$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/name$.md new file mode 100644 index 000000000..fb044deeb --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/name$.md @@ -0,0 +1,17 @@ +# name$ + +#### Get Signature + +> **get** **name$**(): `Observable`\<`string` \| `undefined`\> + +Defined in: [core/entities/Participant.ts:62](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L62) + +Observable of the participant's display name. + +##### Returns + +`Observable`\<`string` \| `undefined`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`name$`](../../interfaces/CallParticipant.md#name-1) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/name.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/name.md new file mode 100644 index 000000000..b6ff4b081 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/name.md @@ -0,0 +1,17 @@ +# name + +#### Get Signature + +> **get** **name**(): `string` \| `undefined` + +Defined in: [core/entities/Participant.ts:307](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L307) + +Display name of this participant. + +##### Returns + +`string` \| `undefined` + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`name`](../../interfaces/CallParticipant.md#name) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/nodeId$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/nodeId$.md new file mode 100644 index 000000000..3a4281e31 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/nodeId$.md @@ -0,0 +1,17 @@ +# nodeId$ + +#### Get Signature + +> **get** **nodeId$**(): `Observable`\<`string` \| `undefined`\> + +Defined in: [core/entities/Participant.ts:262](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L262) + +Observable of the server node ID for this participant. + +##### Returns + +`Observable`\<`string` \| `undefined`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`nodeId$`](../../interfaces/CallParticipant.md#nodeid-1) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/nodeId.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/nodeId.md new file mode 100644 index 000000000..06353bcaf --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/nodeId.md @@ -0,0 +1,17 @@ +# nodeId + +#### Get Signature + +> **get** **nodeId**(): `string` \| `undefined` + +Defined in: [core/entities/Participant.ts:407](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L407) + +Server node ID for this participant, or `undefined` if not available. + +##### Returns + +`string` \| `undefined` + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`nodeId`](../../interfaces/CallParticipant.md#nodeid) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/noiseSuppression$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/noiseSuppression$.md new file mode 100644 index 000000000..26a0b2473 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/noiseSuppression$.md @@ -0,0 +1,17 @@ +# noiseSuppression$ + +#### Get Signature + +> **get** **noiseSuppression$**(): `Observable`\<`boolean` \| `undefined`\> + +Defined in: [core/entities/Participant.ts:202](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L202) + +Observable indicating whether noise suppression is enabled. + +##### Returns + +`Observable`\<`boolean` \| `undefined`\> + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`noiseSuppression$`](../../interfaces/CallParticipant.md#noisesuppression-1) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/noiseSuppression.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/noiseSuppression.md new file mode 100644 index 000000000..447111f4b --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/noiseSuppression.md @@ -0,0 +1,17 @@ +# noiseSuppression + +#### Get Signature + +> **get** **noiseSuppression**(): `boolean` + +Defined in: [core/entities/Participant.ts:377](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L377) + +Whether noise suppression is enabled. + +##### Returns + +`boolean` + +#### Implementation of + +[`CallParticipant`](../../interfaces/CallParticipant.md).[`noiseSuppression`](../../interfaces/CallParticipant.md#noisesuppression) diff --git a/fern/products/browser-sdk/pages/v4/reference/classes/Participant/outputVolume$.md b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/outputVolume$.md new file mode 100644 index 000000000..dfdbec6b1 --- /dev/null +++ b/fern/products/browser-sdk/pages/v4/reference/classes/Participant/outputVolume$.md @@ -0,0 +1,23 @@ +# outputVolume$ + +#### Get Signature + +> **get** **outputVolume$**(): `Observable`\<`number` \| `undefined`\> + +Defined in: [core/entities/Participant.ts:155](https://github.com/signalwire/browser-sdk/blob/25e5ff424d770291cfeb3801743816b995511140/packages/main/src/core/entities/Participant.ts#L155) + +Observable of the participant's **server-side** speaker output volume as +reported by the mix engine (FreeSWITCH channel write volume). NOT the +local HTML `