@convai/web-sdk 1.1.0 → 1.2.1-beta.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.
Files changed (39) hide show
  1. package/README.md +19 -11
  2. package/dist/core/ConvaiClient.d.ts +4 -0
  3. package/dist/core/ConvaiClient.d.ts.map +1 -1
  4. package/dist/core/ConvaiClient.js +75 -18
  5. package/dist/core/ConvaiClient.js.map +1 -1
  6. package/dist/core/MessageHandler.d.ts +14 -0
  7. package/dist/core/MessageHandler.d.ts.map +1 -1
  8. package/dist/core/MessageHandler.js +82 -20
  9. package/dist/core/MessageHandler.js.map +1 -1
  10. package/dist/core/types.d.ts +37 -4
  11. package/dist/core/types.d.ts.map +1 -1
  12. package/dist/react/components/ConvaiWidget.d.ts.map +1 -1
  13. package/dist/react/components/ConvaiWidget.js +46 -4
  14. package/dist/react/components/ConvaiWidget.js.map +1 -1
  15. package/dist/react/components/rtc-widget/components/conviComponents/ConviFooter.js +1 -1
  16. package/dist/react/components/rtc-widget/components/conviComponents/ConviFooter.js.map +1 -1
  17. package/dist/react/components/rtc-widget/components/conviComponents/VoiceModeOverlay.d.ts +3 -1
  18. package/dist/react/components/rtc-widget/components/conviComponents/VoiceModeOverlay.d.ts.map +1 -1
  19. package/dist/react/components/rtc-widget/components/conviComponents/VoiceModeOverlay.js +3 -3
  20. package/dist/react/components/rtc-widget/components/conviComponents/VoiceModeOverlay.js.map +1 -1
  21. package/dist/react/hooks/useConvaiClient.d.ts.map +1 -1
  22. package/dist/react/hooks/useConvaiClient.js +6 -1
  23. package/dist/react/hooks/useConvaiClient.js.map +1 -1
  24. package/dist/types/index.d.ts +35 -4
  25. package/dist/types/index.d.ts.map +1 -1
  26. package/dist/utils/logger.d.ts +12 -12
  27. package/dist/utils/logger.d.ts.map +1 -1
  28. package/dist/utils/logger.js +31 -21
  29. package/dist/utils/logger.js.map +1 -1
  30. package/dist/vanilla/ConvaiWidget.d.ts.map +1 -1
  31. package/dist/vanilla/ConvaiWidget.js +74 -5
  32. package/dist/vanilla/ConvaiWidget.js.map +1 -1
  33. package/dist/vanilla/types.d.ts +2 -0
  34. package/dist/vanilla/types.d.ts.map +1 -1
  35. package/package.json +1 -1
  36. package/dist/utils/speakerManagement.d.ts +0 -22
  37. package/dist/utils/speakerManagement.d.ts.map +0 -1
  38. package/dist/utils/speakerManagement.js +0 -64
  39. package/dist/utils/speakerManagement.js.map +0 -1
package/README.md CHANGED
@@ -423,6 +423,23 @@ Import:
423
423
  import { ConvaiClient } from "@convai/web-sdk/core";
424
424
  ```
425
425
 
426
+ ### ConvaiClient types
427
+
428
+ For TypeScript, use the types exported from the main package or core:
429
+
430
+ - **`IConvaiClient`** — Interface implemented by `ConvaiClient`. Use this when you need to type variables, props, or function parameters that accept the client (e.g. `client: IConvaiClient`).
431
+ - **`ConvaiClientState`** — Shape of `client.state` (connection and activity flags: `isConnected`, `isBotReady`, `agentState`, `emotion`, etc.).
432
+ - **`ConvaiConfig`** — Configuration object for `new ConvaiClient(config)` and `client.connect(config)`.
433
+ - **`ChatMessage`** — Single message in `client.chatMessages`.
434
+ - **`AudioControls`**, **`VideoControls`**, **`ScreenShareControls`** — Types for the control managers exposed as `client.audioControls`, `client.videoControls`, `client.screenShareControls`.
435
+
436
+ Example:
437
+
438
+ ```ts
439
+ import type { IConvaiClient, ConvaiClientState, ConvaiConfig } from "@convai/web-sdk";
440
+ // or from "@convai/web-sdk/core" when using core-only
441
+ ```
442
+
426
443
  ### Constructor
427
444
 
428
445
  ```ts
@@ -645,7 +662,7 @@ Methods:
645
662
  - `type`
646
663
  - `content`
647
664
  - `timestamp`
648
- - `isFinal?`
665
+ - `isStreaming?` — `true` while the message is still streaming (mutable), `false` when finalized
649
666
 
650
667
  Supported message `type` values include:
651
668
 
@@ -660,18 +677,9 @@ Supported message `type` values include:
660
677
  - `user-llm-text`
661
678
  - `interrupt-bot`
662
679
 
663
- ### Important: current `isFinal` behavior
664
-
665
- In the current implementation, `isFinal` is used as an accumulation flag:
666
-
667
- - `isFinal: true` means the message is still in a mutable/streaming state
668
- - `isFinal: false` means the message has been finalized
669
-
670
- This naming is counterintuitive. Treat `isFinal` as an internal streaming marker rather than a turn-completion signal.
671
-
672
680
  ### Recommended way to detect response completion
673
681
 
674
- Use events instead of `isFinal`:
682
+ Use events instead of checking `isStreaming`:
675
683
 
676
684
  - `turnEnd` for the server turn-end signal (bot stopped speaking; same as `hasReceivedEndSignal()`)
677
685
  - `blendshapeStatsReceived` as additional completion marker when lipsync/animation output is enabled
@@ -145,5 +145,9 @@ export declare class ConvaiClient extends EventEmitter implements IConvaiClient
145
145
  * Toggle text-to-speech on or off
146
146
  */
147
147
  toggleTts(enabled: boolean): void;
148
+ /**
149
+ * Toggle speech-to-text on or off
150
+ */
151
+ toggleStt(enabled: boolean): void;
148
152
  }
149
153
  //# sourceMappingURL=ConvaiClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConvaiClient.d.ts","sourceRoot":"","sources":["../../src/core/ConvaiClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConvaiClient.d.ts","sourceRoot":"","sources":["../../src/core/ConvaiClient.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,9 @@
1
- import { Room, RoomEvent } from "livekit-client";
1
+ import { Room, RoomEvent, ConnectionState } from "livekit-client";
2
2
  import { AudioManager } from "./AudioManager";
3
3
  import { VideoManager } from "./VideoManager";
4
4
  import { ScreenShareManager } from "./ScreenShareManager";
5
5
  import { MessageHandler } from "./MessageHandler";
6
6
  import { EventEmitter } from "./EventEmitter";
7
- import { resolveSpeakerId } from "../utils/speakerManagement";
8
7
  import { LatencyMonitor } from "../utils/LatencyMonitor";
9
8
  /**
10
9
  * Main Convai client class for managing AI voice assistant connections
@@ -70,6 +69,7 @@ export class ConvaiClient extends EventEmitter {
70
69
  isThinking: false,
71
70
  isSpeaking: false,
72
71
  agentState: "disconnected",
72
+ emotion: null,
73
73
  };
74
74
  // Default audio settings for optimal interruption handling
75
75
  this._audioSettings = {
@@ -180,6 +180,12 @@ export class ConvaiClient extends EventEmitter {
180
180
  this._messageHandler.on("botRespondingChange", (isResponding) => {
181
181
  this.updateState({ isThinking: isResponding });
182
182
  });
183
+ this._messageHandler.on("emotionChange", (emotion) => {
184
+ this.updateState({ emotion });
185
+ });
186
+ this._messageHandler.on("listeningChange", (isListening) => {
187
+ this.updateState({ isListening });
188
+ });
183
189
  // Forward blendshapes events
184
190
  this._messageHandler.on("blendshapes", (data) => {
185
191
  this.emit("blendshapes", data);
@@ -225,7 +231,7 @@ export class ConvaiClient extends EventEmitter {
225
231
  * Handle connection state changes
226
232
  */
227
233
  handleConnectionStateChanged(state) {
228
- if (state === "disconnected") {
234
+ if (state === ConnectionState.Disconnected) {
229
235
  this.updateState({
230
236
  isConnected: false,
231
237
  isConnecting: false,
@@ -233,14 +239,14 @@ export class ConvaiClient extends EventEmitter {
233
239
  this._isBotReady = false;
234
240
  this._messageHandler.reset();
235
241
  }
236
- else if (state === "connected") {
242
+ else if (state === ConnectionState.Connected) {
237
243
  this.updateState({
238
244
  isConnected: true,
239
245
  isConnecting: false,
240
246
  });
241
247
  this._isBotReady = false; // Wait for bot-ready message
242
248
  }
243
- else if (state === "connecting") {
249
+ else if (state === ConnectionState.Connecting) {
244
250
  this.updateState({
245
251
  isConnecting: true,
246
252
  isConnected: false,
@@ -254,19 +260,19 @@ export class ConvaiClient extends EventEmitter {
254
260
  updateState(updates) {
255
261
  const oldState = { ...this._state };
256
262
  this._state = { ...this._state, ...updates };
257
- // Update agentState based on individual flags
263
+ // Update agentState: speaking (highest) > listening (user speaking) > thinking > connected
258
264
  if (!this._state.isConnected) {
259
265
  this._state.agentState = "disconnected";
260
266
  }
261
267
  else if (this._state.isSpeaking) {
262
268
  this._state.agentState = "speaking";
263
269
  }
264
- else if (this._state.isThinking) {
265
- this._state.agentState = "thinking";
266
- }
267
270
  else if (this._state.isListening) {
268
271
  this._state.agentState = "listening";
269
272
  }
273
+ else if (this._state.isThinking) {
274
+ this._state.agentState = "thinking";
275
+ }
270
276
  else {
271
277
  this._state.agentState = "connected";
272
278
  }
@@ -285,7 +291,12 @@ export class ConvaiClient extends EventEmitter {
285
291
  throw new Error("No configuration provided. Pass config to connect() or store it in the client");
286
292
  }
287
293
  // Store config for reconnection
288
- this._storedConfig = finalConfig;
294
+ this._storedConfig = { ...finalConfig };
295
+ // Use characterSessionId from config when reconnecting (so we resume the same session)
296
+ if (finalConfig.characterSessionId &&
297
+ finalConfig.characterSessionId !== "-1") {
298
+ this._characterSessionId = finalConfig.characterSessionId;
299
+ }
289
300
  // Add default URL if not provided
290
301
  const configWithDefaults = {
291
302
  url: "https://realtime-api.convai.com",
@@ -300,15 +311,19 @@ export class ConvaiClient extends EventEmitter {
300
311
  this._apiKey = configWithDefaults.apiKey;
301
312
  this._characterId = configWithDefaults.characterId;
302
313
  // Resolve speaker ID based on endUserId
303
- const resolvedSpeakerId = await resolveSpeakerId(configWithDefaults.endUserId, configWithDefaults.apiKey);
304
- this._speakerId = resolvedSpeakerId;
305
314
  // Determine connection type based on enableVideo
306
315
  const connType = configWithDefaults.enableVideo ? "video" : "audio";
307
316
  this._connectionType = connType;
308
317
  // Prepare request body with required parameters
318
+ const characterSessionIdToSend = configWithDefaults.characterSessionId ?? this._characterSessionId;
309
319
  const requestBody = {
310
320
  character_id: configWithDefaults.characterId,
311
- ...(resolvedSpeakerId && { speaker_id: resolvedSpeakerId }),
321
+ ...(configWithDefaults.endUserId && {
322
+ end_user_id: configWithDefaults.endUserId,
323
+ }),
324
+ ...(configWithDefaults.endUserMetadata != null && {
325
+ end_user_metadata: configWithDefaults.endUserMetadata,
326
+ }),
312
327
  transport: "livekit",
313
328
  connection_type: connType,
314
329
  blendshape_provider: configWithDefaults.enableLipsync
@@ -318,16 +333,27 @@ export class ConvaiClient extends EventEmitter {
318
333
  enable_chunking: true,
319
334
  chunk_size: 10,
320
335
  format: configWithDefaults.blendshapeConfig?.format || "mha",
321
- frames_buffer_duration: configWithDefaults.blendshapeConfig?.frames_buffer_duration ?? 0,
336
+ frames_buffer_duration: configWithDefaults.blendshapeConfig?.frames_buffer_duration ?? 0.1,
322
337
  output_fps: 90,
323
338
  },
339
+ end_user_id: "xauravdas01@gmail.com",
324
340
  llm_provider: "dynamic",
341
+ ...(configWithDefaults.enableEmotion !== false && {
342
+ emotion_config: {
343
+ provider: configWithDefaults.emotionConfig?.provider ?? "llm",
344
+ min_word_threshold: configWithDefaults.emotionConfig?.min_word_threshold ?? 3,
345
+ low_intensity_threshold: configWithDefaults.emotionConfig?.low_intensity_threshold ?? 0.33,
346
+ high_intensity_threshold: configWithDefaults.emotionConfig?.high_intensity_threshold ??
347
+ 0.66,
348
+ },
349
+ }),
325
350
  default_tts_enabled: configWithDefaults.ttsEnabled !== undefined
326
351
  ? configWithDefaults.ttsEnabled
327
352
  : true,
328
- ...(this._characterSessionId &&
329
- this._characterSessionId !== "-1" && {
330
- character_session_id: this._characterSessionId,
353
+ default_stt_enabled: true,
354
+ ...(characterSessionIdToSend &&
355
+ characterSessionIdToSend !== "-1" && {
356
+ character_session_id: characterSessionIdToSend,
331
357
  }),
332
358
  ...(configWithDefaults.actionConfig && {
333
359
  action_config: configWithDefaults.actionConfig,
@@ -365,9 +391,13 @@ export class ConvaiClient extends EventEmitter {
365
391
  throw new Error(errorMessage);
366
392
  }
367
393
  const connectionData = await response.json();
368
- // Capture character_session_id from connection response
394
+ // Capture character_session_id from connection response and persist in stored config for reconnection
369
395
  if (connectionData.character_session_id) {
370
396
  this._characterSessionId = connectionData.character_session_id;
397
+ this._storedConfig = {
398
+ ...this._storedConfig,
399
+ characterSessionId: connectionData.character_session_id,
400
+ };
371
401
  }
372
402
  // Connect to LiveKit room
373
403
  await this._room.connect(connectionData.room_url, connectionData.token, {
@@ -622,5 +652,32 @@ export class ConvaiClient extends EventEmitter {
622
652
  throw error;
623
653
  }
624
654
  }
655
+ /**
656
+ * Toggle speech-to-text on or off
657
+ */
658
+ toggleStt(enabled) {
659
+ if (!this._room ||
660
+ this._room.state === "disconnected" ||
661
+ !this._room.localParticipant) {
662
+ return;
663
+ }
664
+ try {
665
+ const message = {
666
+ lable: "rtvi-ai",
667
+ type: "stt-toggle",
668
+ data: {
669
+ muted: !enabled,
670
+ },
671
+ };
672
+ const encodedData = new TextEncoder().encode(JSON.stringify(message));
673
+ console.log("Toggle Stt: ", enabled, encodedData);
674
+ this._room.localParticipant.publishData(encodedData, {
675
+ reliable: true,
676
+ });
677
+ }
678
+ catch (error) {
679
+ throw error;
680
+ }
681
+ }
625
682
  }
626
683
  //# sourceMappingURL=ConvaiClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConvaiClient.js","sourceRoot":"","sources":["../../src/core/ConvaiClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConvaiClient.js","sourceRoot":"","sources":["../../src/core/ConvaiClient.ts"],"names":[],"mappings":"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"}
@@ -13,9 +13,11 @@ export declare class MessageHandler extends EventEmitter {
13
13
  private userTranscription;
14
14
  private isBotResponding;
15
15
  private isSpeaking;
16
+ private isListening;
16
17
  private latencyMonitor;
17
18
  private totalBlendshapesReceived;
18
19
  private blendshapeQueue;
20
+ private _currentEmotion;
19
21
  constructor(room?: Room, latencyMonitor?: LatencyMonitor);
20
22
  /**
21
23
  * Get the blendshape queue instance
@@ -41,6 +43,18 @@ export declare class MessageHandler extends EventEmitter {
41
43
  * Get speaking state
42
44
  */
43
45
  getIsSpeaking(): boolean;
46
+ /**
47
+ * Get current bot emotion (updated from bot-emotion messages)
48
+ */
49
+ getEmotion(): {
50
+ emotion: string;
51
+ scale?: number;
52
+ } | null;
53
+ /**
54
+ * Get whether the user is currently speaking (bot is in "listening" state).
55
+ * True from user-started-speaking until user-stopped-speaking.
56
+ */
57
+ getIsListening(): boolean;
44
58
  /**
45
59
  * Set the LiveKit room instance
46
60
  */
@@ -1 +1 @@
1
- {"version":3,"file":"MessageHandler.d.ts","sourceRoot":"","sources":["../../src/core/MessageHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAa,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD;;;GAGG;AACH,qBAAa,cAAe,SAAQ,YAAY;IAC9C,OAAO,CAAC,IAAI,CAAqB;IACjC,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,iBAAiB,CAAc;IACvC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,wBAAwB,CAAa;IAC7C,OAAO,CAAC,eAAe,CAAkB;gBAE7B,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,cAAc;IAWxD;;OAEG;IACH,kBAAkB,IAAI,eAAe;IAIrC;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI;IAIhD;;OAEG;IACH,eAAe,IAAI,WAAW,EAAE;IAIhC;;OAEG;IACH,oBAAoB,IAAI,MAAM;IAI9B;;OAEG;IACH,kBAAkB,IAAI,OAAO;IAI7B;;OAEG;IACH,aAAa,IAAI,OAAO;IAIxB;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAUzB;;OAEG;IACH,OAAO,CAAC,cAAc;IAMtB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAMxB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAoQ1B;;OAEG;IACH,KAAK,IAAI,IAAI;CAYd"}
1
+ {"version":3,"file":"MessageHandler.d.ts","sourceRoot":"","sources":["../../src/core/MessageHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAa,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD;;;GAGG;AACH,qBAAa,cAAe,SAAQ,YAAY;IAC9C,OAAO,CAAC,IAAI,CAAqB;IACjC,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,iBAAiB,CAAc;IACvC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,wBAAwB,CAAa;IAC7C,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,eAAe,CAAoD;gBAE/D,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,cAAc;IAWxD;;OAEG;IACH,kBAAkB,IAAI,eAAe;IAIrC;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI;IAIhD;;OAEG;IACH,eAAe,IAAI,WAAW,EAAE;IAIhC;;OAEG;IACH,oBAAoB,IAAI,MAAM;IAI9B;;OAEG;IACH,kBAAkB,IAAI,OAAO;IAI7B;;OAEG;IACH,aAAa,IAAI,OAAO;IAIxB;;OAEG;IACH,UAAU,IAAI;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAIxD;;;OAGG;IACH,cAAc,IAAI,OAAO;IAIzB;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAUzB;;OAEG;IACH,OAAO,CAAC,cAAc;IAMtB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAMxB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAmT1B;;OAEG;IACH,KAAK,IAAI,IAAI;CAgBd"}
@@ -13,8 +13,10 @@ export class MessageHandler extends EventEmitter {
13
13
  this.userTranscription = "";
14
14
  this.isBotResponding = false;
15
15
  this.isSpeaking = false;
16
+ this.isListening = false;
16
17
  this.latencyMonitor = null;
17
18
  this.totalBlendshapesReceived = 0;
19
+ this._currentEmotion = null;
18
20
  this.blendshapeQueue = new BlendshapeQueue();
19
21
  if (latencyMonitor) {
20
22
  this.latencyMonitor = latencyMonitor;
@@ -59,6 +61,19 @@ export class MessageHandler extends EventEmitter {
59
61
  getIsSpeaking() {
60
62
  return this.isSpeaking;
61
63
  }
64
+ /**
65
+ * Get current bot emotion (updated from bot-emotion messages)
66
+ */
67
+ getEmotion() {
68
+ return this._currentEmotion;
69
+ }
70
+ /**
71
+ * Get whether the user is currently speaking (bot is in "listening" state).
72
+ * True from user-started-speaking until user-stopped-speaking.
73
+ */
74
+ getIsListening() {
75
+ return this.isListening;
76
+ }
62
77
  /**
63
78
  * Set the LiveKit room instance
64
79
  */
@@ -120,23 +135,13 @@ export class MessageHandler extends EventEmitter {
120
135
  case "bot-llm-started":
121
136
  this.isBotResponding = true;
122
137
  this.emit("botRespondingChange", true);
123
- // Mark any accumulated user message as final before starting bot response
124
- const lastMsg = this.chatMessages[this.chatMessages.length - 1];
125
- if (lastMsg &&
126
- lastMsg.type === "user-transcription" &&
127
- lastMsg.isFinal) {
128
- this.chatMessages[this.chatMessages.length - 1] = {
129
- ...lastMsg,
130
- isFinal: false,
131
- };
132
- }
133
138
  // Add initial streaming message to chat
134
139
  const streamingMessage = {
135
140
  id: messageId,
136
141
  type: "bot-llm-text",
137
142
  content: "",
138
143
  timestamp: timestamp,
139
- isFinal: true,
144
+ isStreaming: true,
140
145
  };
141
146
  this.chatMessages.push(streamingMessage);
142
147
  this.emit("messagesChange", this.chatMessages);
@@ -147,7 +152,7 @@ export class MessageHandler extends EventEmitter {
147
152
  const newChunk = messageData.data.text;
148
153
  // Update the streaming message in chat
149
154
  const lastMessage = this.chatMessages[this.chatMessages.length - 1];
150
- if (lastMessage && lastMessage.isFinal) {
155
+ if (lastMessage && lastMessage.isStreaming) {
151
156
  this.chatMessages[this.chatMessages.length - 1] = {
152
157
  ...lastMessage,
153
158
  content: lastMessage.content + newChunk,
@@ -160,7 +165,7 @@ export class MessageHandler extends EventEmitter {
160
165
  type: "bot-llm-text",
161
166
  content: newChunk,
162
167
  timestamp: new Date().toISOString(),
163
- isFinal: true,
168
+ isStreaming: true,
164
169
  };
165
170
  this.chatMessages.push(streamingMsg);
166
171
  }
@@ -170,10 +175,10 @@ export class MessageHandler extends EventEmitter {
170
175
  // Bot LLM Stopped - Complete streaming response
171
176
  case "bot-llm-stopped":
172
177
  const lastBotMsg = this.chatMessages[this.chatMessages.length - 1];
173
- if (lastBotMsg && lastBotMsg.isFinal) {
178
+ if (lastBotMsg && lastBotMsg.isStreaming) {
174
179
  this.chatMessages[this.chatMessages.length - 1] = {
175
180
  ...lastBotMsg,
176
- isFinal: false,
181
+ isStreaming: false,
177
182
  };
178
183
  }
179
184
  // Clear streaming state
@@ -192,10 +197,10 @@ export class MessageHandler extends EventEmitter {
192
197
  if (this.latencyMonitor) {
193
198
  this.latencyMonitor.startMeasurement("voice", messageContent);
194
199
  }
195
- // Check if last message is an accumulating user message (isFinal=true)
200
+ // Check if last message is an accumulating user message (isStreaming=true)
196
201
  if (lastUserMsg &&
197
202
  lastUserMsg.type === "user-transcription" &&
198
- lastUserMsg.isFinal === true) {
203
+ lastUserMsg.isStreaming === true) {
199
204
  // Accumulate: append new content to existing message with space
200
205
  const accumulatedContent = lastUserMsg.content.trim() + " " + messageContent.trim();
201
206
  this.chatMessages[this.chatMessages.length - 1] = {
@@ -205,13 +210,13 @@ export class MessageHandler extends EventEmitter {
205
210
  };
206
211
  }
207
212
  else {
208
- // Start new accumulating message (isFinal=true means "still accumulating")
213
+ // Start new accumulating message (isStreaming=true means "still accumulating")
209
214
  const userMessage = {
210
215
  id: messageId,
211
216
  type: "user-transcription",
212
217
  content: messageContent,
213
218
  timestamp: timestamp,
214
- isFinal: true,
219
+ isStreaming: true,
215
220
  };
216
221
  this.chatMessages.push(userMessage);
217
222
  }
@@ -230,6 +235,11 @@ export class MessageHandler extends EventEmitter {
230
235
  // Bot Emotion Messages
231
236
  case "bot-emotion":
232
237
  if (messageData.data?.emotion) {
238
+ this._currentEmotion = {
239
+ emotion: messageData.data.emotion,
240
+ scale: messageData.data.scale,
241
+ };
242
+ this.emit("emotionChange", this._currentEmotion);
233
243
  const emotionMessage = {
234
244
  id: messageId,
235
245
  type: "bot-emotion",
@@ -240,7 +250,17 @@ export class MessageHandler extends EventEmitter {
240
250
  this.emit("messagesChange", this.chatMessages);
241
251
  }
242
252
  break;
243
- // Bot Started Speaking
253
+ case "user-started-speaking":
254
+ this.isListening = true;
255
+ this.emit("listeningChange", true);
256
+ console.log("isListening");
257
+ break;
258
+ case "user-stopped-speaking":
259
+ this.isListening = false;
260
+ this.emit("listeningChange", false);
261
+ console.log("isListening stopped");
262
+ break;
263
+ // Bot Started Speaking (priority over listening: state becomes speaking)
244
264
  case "bot-started-speaking":
245
265
  this.isSpeaking = true;
246
266
  this.totalBlendshapesReceived = 0; // Reset counter when bot starts speaking
@@ -286,6 +306,44 @@ export class MessageHandler extends EventEmitter {
286
306
  case "server-message":
287
307
  if (messageData.data) {
288
308
  const serverData = messageData.data;
309
+ // Final user transcription (server sends when user stops speaking)
310
+ if (serverData.type === "final-user-transcription" && serverData.text) {
311
+ const finalText = serverData.text;
312
+ if (this.latencyMonitor) {
313
+ this.latencyMonitor.startMeasurement("voice", finalText);
314
+ }
315
+ const lastUserMsg = this.chatMessages[this.chatMessages.length - 1];
316
+ if (lastUserMsg &&
317
+ lastUserMsg.type === "user-transcription" &&
318
+ lastUserMsg.isStreaming === true) {
319
+ this.chatMessages[this.chatMessages.length - 1] = {
320
+ ...lastUserMsg,
321
+ content: finalText,
322
+ timestamp: timestamp,
323
+ isStreaming: false,
324
+ };
325
+ }
326
+ else {
327
+ const userMessage = {
328
+ id: `${serverData.type}-${Date.now()}-${Math.random()}`,
329
+ type: "user-transcription",
330
+ content: finalText,
331
+ timestamp: timestamp,
332
+ isStreaming: false,
333
+ };
334
+ this.chatMessages.push(userMessage);
335
+ }
336
+ this.emit("messagesChange", this.chatMessages);
337
+ this.userTranscription = "";
338
+ this.emit("userTranscriptionChange", "");
339
+ }
340
+ if (serverData.type === "bot-emotion" && serverData.emotion) {
341
+ this._currentEmotion = {
342
+ emotion: serverData.emotion,
343
+ scale: serverData.scale,
344
+ };
345
+ this.emit("emotionChange", this._currentEmotion);
346
+ }
289
347
  // Check if this is blendshape turn stats (marks end of conversation)
290
348
  if (serverData.type === "blendshape-turn-stats") {
291
349
  this.blendshapeQueue.endConversation(serverData.stats);
@@ -324,12 +382,16 @@ export class MessageHandler extends EventEmitter {
324
382
  this.userTranscription = "";
325
383
  this.isBotResponding = false;
326
384
  this.isSpeaking = false;
385
+ this.isListening = false;
327
386
  this.totalBlendshapesReceived = 0;
387
+ this._currentEmotion = null;
328
388
  this.blendshapeQueue.reset();
329
389
  this.emit("messagesChange", this.chatMessages);
330
390
  this.emit("userTranscriptionChange", "");
331
391
  this.emit("botRespondingChange", false);
332
392
  this.emit("speakingChange", false);
393
+ this.emit("listeningChange", false);
394
+ this.emit("emotionChange", null);
333
395
  }
334
396
  }
335
397
  //# sourceMappingURL=MessageHandler.js.map