@kaltura-sdk/avatars 1.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/index.d.ts +1 -0
- package/index.esm.js +24265 -0
- package/package.json +30 -0
- package/src/index.d.ts +5 -0
- package/src/lib/analytics.d.ts +27 -0
- package/src/lib/avatar-client-manager/avatar-client-manager.d.ts +174 -0
- package/src/lib/avatar-client-manager/index.d.ts +3 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/analytics/send-avatar-answer-analytics-event.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/analytics/send-avatar-conversation-started-analytics-event.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/append-avatar-chat-entry.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/append-user-chat-entry.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/append-user-text-entry.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/capture-user-mute-state-before-tap-to-talk.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/capture-user-mute-state.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/cleanup-rtc-and-set-peer-id.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/clear-caption-state.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/increment-agent-recovery-retry-count.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/increment-config-retry.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/log-agent-client-tool-call-result.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/log-agent-raw-text-message.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/log-analysis-ready-fallback.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/log-tap-to-talk-dropped.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/record-client-tool-call-log-entry.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/reset-agent-recovery-retry-count.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-agent-talking.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-caption-state.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-cast-mode.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-client-configuration.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-content-data.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-disconnect-data.d.ts +8 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-kaltura-context-is-active.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-peer-id.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-request-vars.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-screen-analysis-ready.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-screen-share-active.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-screen-share-stream.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-server-config.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-session-id.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-session-kickoff-required.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-tap-to-talk-active.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-tap-to-talk-button-visible.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-tap-to-talk-enabled.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-tap-to-talk-started-at.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-thread-id.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-user-agent-data.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/context/set-webrtc-url.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/external/publish-toggle-kaltura-context-active.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/notifications/show-agent-recovery-exhausted-notification.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/notifications/show-disconnect-notification.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/notifications/show-screen-share-error-notification.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/notifications/show-time-warning-notification.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/rtc/leave-asr.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/rtc/mute-asr.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/rtc/restore-mute-state-after-tap-to-talk.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/rtc/unmute-asr-for-tap-to-talk.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/rtc/unmute-asr.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/server/extend-pause-timeout.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/server/send-approved-permissions.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/server/send-ask-via-text.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/server/send-create-session.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/server/send-join-room.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/server/send-pause-conversation.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/server/send-reprocess-turn.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/server/send-resume-conversation.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/server/send-screen-share-pending.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/server/send-screen-share-started.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/server/send-screen-share-stopped.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/server/send-tap-to-talk-end.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/server/send-tap-to-talk-start.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/server/send-update-genie-context.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actions/server/toggle-tap-to-talk-mode.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/agent-recovery-monitor.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/connect-to-asr.d.ts +21 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/connect-web-socket.d.ts +11 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/destroy-connection.d.ts +6 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/get-user-agent-data.d.ts +7 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/get-user-media.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/init-rtc-session.d.ts +19 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-agent-client-tool-call.d.ts +10 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-agent-data.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-agent-raw-text.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-agent-start-speech.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-agent-talking.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-captions.d.ts +9 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-chat-log.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-conversation-ended.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-conversation-resumed.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-conversation-time-warning.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-error.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-init-response.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-join-room.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-kaltura-context-is-active-change.d.ts +7 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-pause-expiry-events.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-player-ready-state.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-resuming-session.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-screen-analysis-ready.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-server-connected.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-server-ready.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-session-created.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-session-kickoff-events.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-session-ready-for-resume.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-tap-to-talk-button-events.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/on-websocket-non-recovered-reconnect.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/resolve-server-config.d.ts +6 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/screen-capture-cycle.d.ts +7 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/actors/send-form-data.d.ts +11 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/avatar-connection-machine.d.ts +798 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/definitions.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/global-events.d.ts +3 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/had-avatar-type-in-turn.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/has-more-config-retries.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/has-more-recovery-retries.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/is-agent-talking.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/is-analysis-not-ready.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/is-captions-enabled.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/is-empty-agent-content.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/is-form-content.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/is-kaltura-context-enabled.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/is-session-kickoff-active.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/is-session-kickoff-requested.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/is-tap-to-talk-enabled.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/is-text-chat-enabled.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/just-exceeded-recovery-retries.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/should-create-websocket-connection.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/should-disable-tap-to-talk-mode.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/should-disconnect.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/should-enable-tap-to-talk-mode.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/should-show-device-permissions-denied.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/should-wait-before-purge.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/guards/should-wait-player-ready-state.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/index.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/connected-state.d.ts +751 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/connected-states/agent-recovery-monitor-state.d.ts +28 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/connected-states/captions-state.d.ts +50 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/connected-states/content-state.d.ts +21 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/connected-states/conversation-state.d.ts +52 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/connected-states/genie-intellect-state.d.ts +27 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/connected-states/kaltura-context-state.d.ts +34 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/connected-states/pause-lifecycle-state.d.ts +134 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/connected-states/screen-sharing-state.d.ts +123 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/connected-states/session-kickoff-state.d.ts +61 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/connected-states/tap-to-talk-state.d.ts +153 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/connected-states/text-communication-state.d.ts +49 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/connecting-state.d.ts +400 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/disconnected-state.d.ts +26 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/disconnecting-state.d.ts +54 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/error-state.d.ts +5 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/index.d.ts +6 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/states/preparing-state.d.ts +67 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/types/context.d.ts +90 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/types/events.d.ts +274 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/types/index.d.ts +26 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/types/input.d.ts +30 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/types/notifications.d.ts +4 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/types/schemas.d.ts +105 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/utils/agent-raw-text-blocks-creator.d.ts +32 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/utils/index.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/utils/resolve-active-kaltura-context.d.ts +2 -0
- package/src/lib/avatar-client-manager/machines/avatar-connection/utils/resolve-capabilities.d.ts +10 -0
- package/src/lib/avatar-client-manager/types.d.ts +4 -0
- package/src/lib/avatar-client-manager/utils/actor-manager.d.ts +54 -0
- package/src/lib/avatar-client-manager/utils/set-if-changed.d.ts +2 -0
- package/src/lib/server/avatar-rtc-client-manager.d.ts +104 -0
- package/src/lib/server/index.d.ts +2 -0
- package/src/lib/server/websocket-client-manager.d.ts +44 -0
- package/src/lib/timing-tracker.d.ts +158 -0
- package/src/lib/utils/create-tiny-pubsub-events-handler.d.ts +10 -0
- package/src/lib/utils/create-tiny-pubsub-events-source.d.ts +27 -0
- package/src/lib/utils/get-query-param.d.ts +4 -0
- package/src/lib/utils/index.d.ts +5 -0
- package/src/lib/utils/is-mobile-device.d.ts +8 -0
- package/src/lib/utils/logger-factory.d.ts +2 -0
package/package.json
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@kaltura-sdk/avatars",
|
|
3
|
+
"version": "1.14.0",
|
|
4
|
+
"author": "kaltura",
|
|
5
|
+
"license": "AGPL-3.0",
|
|
6
|
+
"repository": {
|
|
7
|
+
"type": "git",
|
|
8
|
+
"url": "https://github.com/kaltura/genie"
|
|
9
|
+
},
|
|
10
|
+
"types": "./src/index.d.ts",
|
|
11
|
+
"dependencies": {
|
|
12
|
+
"@kaltura-sdk/rtc-avatar": "^1.32.27",
|
|
13
|
+
"@kaltura-sdk/rtc-core": "^1.25.16",
|
|
14
|
+
"@local/genie-shared-utils": "^1.0.0",
|
|
15
|
+
"@unisphere/core": "^1.99.0",
|
|
16
|
+
"@unisphere/genie-types": "^1.39.0",
|
|
17
|
+
"@unisphere/notifications-core": "^1.25.0",
|
|
18
|
+
"@unisphere/runtime": "^1.98.0",
|
|
19
|
+
"@unisphere/runtime-js": "^1.96.0",
|
|
20
|
+
"immer": "^10.1.1",
|
|
21
|
+
"js-yaml": "^4.1.0",
|
|
22
|
+
"socket.io-client": "^4.8.1",
|
|
23
|
+
"zod": "^4.2.0"
|
|
24
|
+
},
|
|
25
|
+
"module": "./index.esm.js",
|
|
26
|
+
"type": "module",
|
|
27
|
+
"publishConfig": {
|
|
28
|
+
"registry": "https://registry.npmjs.org"
|
|
29
|
+
}
|
|
30
|
+
}
|
package/src/index.d.ts
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export declare enum ButtonNames {
|
|
2
|
+
TalkToAgent = "Talk_to_agent",
|
|
3
|
+
MicSelector = "Mic_selector",
|
|
4
|
+
MuteMic = "Mute_mic",
|
|
5
|
+
UnmuteMic = "Unmute_mic",
|
|
6
|
+
EndConversation = "End_conversation",
|
|
7
|
+
UserPrompt = "Ask_user_prompt_Avatar",
|
|
8
|
+
OpenChat = "Open_chat",
|
|
9
|
+
CloseChat = "Close_chat",
|
|
10
|
+
OpenChatPanel = "Open_chat_panel",
|
|
11
|
+
CloseChatPanel = "Close_chat_panel",
|
|
12
|
+
AddAvatarContext = "Add_avatar_context",
|
|
13
|
+
RemoveAvatarContext = "Remove_avatar_context",
|
|
14
|
+
ShareScreen = "Share_screen",
|
|
15
|
+
StartScreenSharing = "Start_screen_sharing",
|
|
16
|
+
StopScreenSharing = "Stop_screen_sharing",
|
|
17
|
+
TapToTalk = "Tap_to_talk",
|
|
18
|
+
SendTapToTalk = "Send_tap_to_talk"
|
|
19
|
+
}
|
|
20
|
+
export declare enum PageNames {
|
|
21
|
+
StartConversation = "Start_conversation",
|
|
22
|
+
AvatarAnswer = "Avatar_answer"
|
|
23
|
+
}
|
|
24
|
+
export declare enum ApplicationFeatures {
|
|
25
|
+
Avatar = "Avatar",
|
|
26
|
+
Context = "Context"
|
|
27
|
+
}
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import { UnisphereLoggerType } from '@unisphere/core';
|
|
2
|
+
import { KalturaAnalyticsServiceType, PubSubServiceType } from '@unisphere/runtime';
|
|
3
|
+
import { AgentData, AgentKalturaContextData, AgentScreenShareInfo, AgentTapToTalkInfo, AvatarClientManagerType, AvatarConnectionProxInternalType, AvatarConnectionProxyType, AvatarConnectionStatus, AvatarContentData, AvatarRuntimeSettings, CaptionConfig, Captions, ChatEntry, ClientToolCallLogEntry, DisconnectReasons } from '@unisphere/genie-types';
|
|
4
|
+
import { type AvatarClientToolsInput, type AvatarConnectionActor } from './machines/avatar-connection';
|
|
5
|
+
import { AvatarClientManagerActions } from './types';
|
|
6
|
+
import { DeviceType } from '@kaltura-sdk/rtc-core';
|
|
7
|
+
import { ActorManager, type ActorSnapshot } from './utils/actor-manager';
|
|
8
|
+
type ConnectionSnapshot = ActorSnapshot<AvatarConnectionActor>;
|
|
9
|
+
type ConnectionFacade = AvatarConnectionProxyType & AvatarConnectionProxInternalType;
|
|
10
|
+
/**
|
|
11
|
+
* Avatar-domain manager on top of the generic `ActorManager` engine: owns
|
|
12
|
+
* the `avatarConnectionMachine` actor and exposes it as reactive stores +
|
|
13
|
+
* a public API (connect/disconnect/reconnect, pause/resume, chat, captions,
|
|
14
|
+
* screen share, tap-to-talk, Kaltura context, etc). Implements the base
|
|
15
|
+
* class's hooks to define what "derived state" and "terminal snapshot"
|
|
16
|
+
* mean for this specific machine.
|
|
17
|
+
*/
|
|
18
|
+
export declare class AvatarClientManager extends ActorManager<AvatarConnectionActor> implements AvatarClientManagerType {
|
|
19
|
+
private _config;
|
|
20
|
+
private readonly _logger;
|
|
21
|
+
private _unsubscribeContextActive;
|
|
22
|
+
private _logsInitialized;
|
|
23
|
+
private _clientToolsRegistry;
|
|
24
|
+
private readonly _getClientToolHandler;
|
|
25
|
+
private readonly _registeredClientTools;
|
|
26
|
+
private _isKalturaContextActive;
|
|
27
|
+
private _lastConnectOptions?;
|
|
28
|
+
private _onThreadIdChange?;
|
|
29
|
+
private _connection;
|
|
30
|
+
private readonly _status;
|
|
31
|
+
private readonly _playerUrl;
|
|
32
|
+
private readonly _sessionId;
|
|
33
|
+
private readonly _castMode;
|
|
34
|
+
private readonly _turnServerURL;
|
|
35
|
+
private readonly _content;
|
|
36
|
+
private readonly _agentData;
|
|
37
|
+
private readonly _disconnectData;
|
|
38
|
+
private readonly _connectionThreadId;
|
|
39
|
+
private readonly _chatLog;
|
|
40
|
+
private readonly _clientToolCallLog;
|
|
41
|
+
private readonly _screenShareInfo;
|
|
42
|
+
private readonly _tapToTalkInfo;
|
|
43
|
+
private readonly _captions;
|
|
44
|
+
private readonly _kalturaContext;
|
|
45
|
+
private readonly _webSocket;
|
|
46
|
+
private readonly _isPaused;
|
|
47
|
+
private readonly _connectionDevicesList;
|
|
48
|
+
private _agentPreviewUrl;
|
|
49
|
+
private _agentPreviewImageUrl;
|
|
50
|
+
private _serverUrl;
|
|
51
|
+
/** threadId is a bit confusing right now
|
|
52
|
+
* we keep it here to update runtime when threadId changes to expose threadId we get if we start fresh avatar session
|
|
53
|
+
* we also expose a way of setting thread id, but we don't do anything with it. just set here
|
|
54
|
+
* the only way you can start a new avatar session with specific thread id is to provide it in connect()
|
|
55
|
+
* */
|
|
56
|
+
private _threadId;
|
|
57
|
+
private _features;
|
|
58
|
+
private readonly _isPreviewMode;
|
|
59
|
+
private readonly _contextSelectorVisible;
|
|
60
|
+
constructor(_config: {
|
|
61
|
+
actions: AvatarClientManagerActions;
|
|
62
|
+
debugMode: boolean;
|
|
63
|
+
logger: UnisphereLoggerType;
|
|
64
|
+
kalturaAnalyticsService?: KalturaAnalyticsServiceType;
|
|
65
|
+
pubSubService?: PubSubServiceType;
|
|
66
|
+
runtimeSettings: AvatarRuntimeSettings;
|
|
67
|
+
/** Optional hook for wiring up devtools/machine-inspector logging; left unset outside the Unisphere widget host. */
|
|
68
|
+
registerDeveloperTools?: (actor: AvatarConnectionActor) => void;
|
|
69
|
+
});
|
|
70
|
+
protected _syncDerivedState(snapshot: ConnectionSnapshot): void;
|
|
71
|
+
protected _isTerminalSnapshot(snapshot: ConnectionSnapshot): boolean;
|
|
72
|
+
protected _onSetupActorSync(actor: AvatarConnectionActor): void;
|
|
73
|
+
private _extractStatus;
|
|
74
|
+
private _updateWebSocket;
|
|
75
|
+
protected _onReset(): void;
|
|
76
|
+
/**
|
|
77
|
+
* @deprecated TODO remove once all consumers are migrated to the new AvatarClientManager API
|
|
78
|
+
*/
|
|
79
|
+
private _buildConnectionFacade;
|
|
80
|
+
protected _onCleanup(): void;
|
|
81
|
+
private _setupKalturaContext;
|
|
82
|
+
/**
|
|
83
|
+
* @deprecated Use AvatarClientManager's own getters/methods directly
|
|
84
|
+
* (`status`, `pause`/`resume`, `tapToTalkStart`/`tapToTalkEnd`, etc).
|
|
85
|
+
* Kept only for existing avatar-react/avatar-service consumers that still
|
|
86
|
+
* read through `.connection` — remove once they're migrated off it.
|
|
87
|
+
*/
|
|
88
|
+
get connection(): import("@unisphere/core").TinyDataStoreConsumer<ConnectionFacade | null>;
|
|
89
|
+
get connectionStatus(): import("@unisphere/core").TinyDataStoreConsumer<AvatarConnectionStatus>;
|
|
90
|
+
get playerUrl(): import("@unisphere/core").TinyDataStoreConsumer<string | null>;
|
|
91
|
+
get sessionId(): import("@unisphere/core").TinyDataStoreConsumer<string | null>;
|
|
92
|
+
get castMode(): import("@unisphere/core").TinyDataStoreConsumer<string | null>;
|
|
93
|
+
get turnServerURL(): import("@unisphere/core").TinyDataStoreConsumer<string | null>;
|
|
94
|
+
get disconnectData(): import("@unisphere/core").TinyDataStoreConsumer<{
|
|
95
|
+
reason: DisconnectReasons;
|
|
96
|
+
error?: Error | undefined;
|
|
97
|
+
suppressNotification?: boolean | undefined;
|
|
98
|
+
skipDisconnect?: boolean | undefined;
|
|
99
|
+
} | null>;
|
|
100
|
+
get agentData(): import("@unisphere/core").TinyDataStoreConsumer<AgentData>;
|
|
101
|
+
connect(options?: {
|
|
102
|
+
context?: {
|
|
103
|
+
type: 'thread';
|
|
104
|
+
threadId: string;
|
|
105
|
+
messageId?: string;
|
|
106
|
+
};
|
|
107
|
+
onThreadIdChange?: (threadId: string) => void;
|
|
108
|
+
dynamicVariables?: Record<string, unknown>;
|
|
109
|
+
kickOffPhrase?: string;
|
|
110
|
+
}): void;
|
|
111
|
+
disconnect(): void;
|
|
112
|
+
reconnect(): void;
|
|
113
|
+
get isPaused(): import("@unisphere/core").TinyDataStoreConsumer<boolean>;
|
|
114
|
+
pause(): void;
|
|
115
|
+
resume(): void;
|
|
116
|
+
pauseAfterSpeaking(): void;
|
|
117
|
+
get content(): import("@unisphere/core").TinyDataStoreConsumer<AvatarContentData | null>;
|
|
118
|
+
get chatLog(): import("@unisphere/core").TinyDataStoreConsumer<ChatEntry[]>;
|
|
119
|
+
askViaText(text: string): void;
|
|
120
|
+
sendAgentTurnRecoveryRequest(speechId: string, messageId: string): void;
|
|
121
|
+
clearContent(): void;
|
|
122
|
+
setLocalContent(content: AvatarContentData): void;
|
|
123
|
+
get screenShareInfo(): import("@unisphere/core").TinyDataStoreConsumer<AgentScreenShareInfo | null>;
|
|
124
|
+
startScreenShare(): void;
|
|
125
|
+
stopScreenShare(): void;
|
|
126
|
+
get tapToTalkInfo(): import("@unisphere/core").TinyDataStoreConsumer<AgentTapToTalkInfo | null>;
|
|
127
|
+
tapToTalkStart(): void;
|
|
128
|
+
tapToTalkEnd(): void;
|
|
129
|
+
toggleTapToTalkMode(enabled: boolean): void;
|
|
130
|
+
get captions(): Captions;
|
|
131
|
+
toggleCaptions(): void;
|
|
132
|
+
setCaptionReplacements(replacements: Record<string, string> | null): void;
|
|
133
|
+
setCaptionFilter(filter: ((text: string) => string) | null): void;
|
|
134
|
+
get kalturaContext(): import("@unisphere/core").TinyDataStoreConsumer<AgentKalturaContextData | null>;
|
|
135
|
+
toggleKalturaContext(active: boolean): void;
|
|
136
|
+
updateDynamicVariables(data: Record<string, unknown>): void;
|
|
137
|
+
registerClientTools<TMap extends Record<string, unknown>>(config: AvatarClientToolsInput<TMap>): void;
|
|
138
|
+
unregisterClientTools(...names: string[]): void;
|
|
139
|
+
private _syncRegisteredClientTools;
|
|
140
|
+
/** Observable list of currently registered client tool names */
|
|
141
|
+
get registeredClientTools(): import("@unisphere/core").TinyDataStoreConsumer<string[]>;
|
|
142
|
+
/** Observable log of client tool calls fired from the server, including unregistered ones */
|
|
143
|
+
get clientToolCallLog(): import("@unisphere/core").TinyDataStoreConsumer<ClientToolCallLogEntry[]>;
|
|
144
|
+
get threadId(): import("@unisphere/core").TinyDataStoreConsumer<string | null>;
|
|
145
|
+
setExternalThreadId(id: string | null): void;
|
|
146
|
+
get isPreviewMode(): import("@unisphere/core").TinyDataStoreConsumer<boolean>;
|
|
147
|
+
setIsPreviewMode(value: boolean): void;
|
|
148
|
+
get contextSelectorVisible(): import("@unisphere/core").TinyDataStoreConsumer<boolean>;
|
|
149
|
+
setContextSelectorVisible(value: boolean): void;
|
|
150
|
+
get features(): import("@unisphere/core").TinyDataStoreConsumer<{
|
|
151
|
+
screenShare?: boolean | undefined;
|
|
152
|
+
chat?: boolean | undefined;
|
|
153
|
+
captions?: boolean | CaptionConfig | undefined;
|
|
154
|
+
kickOffPhrase?: string | undefined;
|
|
155
|
+
dynamicVariables?: Record<string, unknown> | undefined;
|
|
156
|
+
} | undefined>;
|
|
157
|
+
get agentPreviewUrl(): import("@unisphere/core").TinyDataStoreConsumer<string | null>;
|
|
158
|
+
get agentPreviewImageUrl(): import("@unisphere/core").TinyDataStoreConsumer<string | null>;
|
|
159
|
+
get serverUrl(): import("@unisphere/core").TinyDataStoreConsumer<string | null>;
|
|
160
|
+
get audioState(): import("@unisphere/core").TinyDataStoreConsumer<import("../server").AudioState>;
|
|
161
|
+
get audioVolumeLevel(): import("@unisphere/core").TinyDataStoreConsumer<number>;
|
|
162
|
+
get devicesList(): import("@unisphere/core").TinyDataStoreConsumer<import("@unisphere/genie-types").UserDevicesList | null>;
|
|
163
|
+
joinSTV(videoContainerId: string, sessionId: string, stvUrl: string, onConnected: () => void): Promise<void>;
|
|
164
|
+
leaveSTV(): void;
|
|
165
|
+
changeDevice(deviceType: DeviceType, deviceId: string): Promise<boolean>;
|
|
166
|
+
toggleMuteAudio(muted: boolean): Promise<void>;
|
|
167
|
+
onPlayerReady(): void;
|
|
168
|
+
onPlayerError(error: Error): void;
|
|
169
|
+
/**
|
|
170
|
+
* Stop the service and clean up resources
|
|
171
|
+
*/
|
|
172
|
+
stop(): void;
|
|
173
|
+
}
|
|
174
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AvatarConnectionMachineAction } from '../../types';
|
|
2
|
+
import { DisconnectReasons } from '@unisphere/genie-types';
|
|
3
|
+
export declare const setDisconnectData: AvatarConnectionMachineAction<{
|
|
4
|
+
reason?: DisconnectReasons;
|
|
5
|
+
error?: Error;
|
|
6
|
+
suppressNotification?: boolean;
|
|
7
|
+
skipDisconnect?: boolean;
|
|
8
|
+
}>;
|
package/src/lib/avatar-client-manager/machines/avatar-connection/actors/agent-recovery-monitor.d.ts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { UnisphereLoggerType } from '@unisphere/core';
|
|
2
|
+
import { AgentRecoveryTurnCompletedEvent } from '../types';
|
|
3
|
+
export declare const agentRecoveryMonitor: import("xstate").CallbackActorLogic<AgentRecoveryTurnCompletedEvent, {
|
|
4
|
+
logger: UnisphereLoggerType;
|
|
5
|
+
}, import("xstate").EventObject>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { UnisphereLoggerType } from '@unisphere/core';
|
|
2
|
+
/**
|
|
3
|
+
* Input parameters for the connectToASR actor
|
|
4
|
+
*/
|
|
5
|
+
export interface ConnectToASRInput {
|
|
6
|
+
logger: UnisphereLoggerType;
|
|
7
|
+
serverUrl: string;
|
|
8
|
+
peerId: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Connect to ASR (Automatic Speech Recognition) via WebRTC
|
|
12
|
+
*
|
|
13
|
+
* This actor handles WebRTC signaling and ASR connection:
|
|
14
|
+
* 1. Signal backend to prepare ASR WebRTC connection
|
|
15
|
+
* 2. Wait for backend ready signal
|
|
16
|
+
* 3. Create signaling callbacks for WebRTC offer/answer/ICE
|
|
17
|
+
* 4. Join ASR connection
|
|
18
|
+
*
|
|
19
|
+
* Prerequisites: initRTCSession actor must have completed (SDK initialized + user media acquired)
|
|
20
|
+
*/
|
|
21
|
+
export declare const connectToASR: import("xstate").PromiseActorLogic<void, ConnectToASRInput, import("xstate").EventObject>;
|
package/src/lib/avatar-client-manager/machines/avatar-connection/actors/connect-web-socket.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { UnisphereLoggerType } from '@unisphere/core';
|
|
2
|
+
export declare const connectWebSocket: import("xstate").PromiseActorLogic<string, {
|
|
3
|
+
serverUrl: string;
|
|
4
|
+
clientId?: string | undefined;
|
|
5
|
+
flowId?: string | undefined;
|
|
6
|
+
stickyId?: string | undefined;
|
|
7
|
+
level: string;
|
|
8
|
+
debugMode: boolean;
|
|
9
|
+
ks: string;
|
|
10
|
+
logger: UnisphereLoggerType;
|
|
11
|
+
}, import("xstate").EventObject>;
|