@convai/web-sdk 1.0.0 → 1.2.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 (37) hide show
  1. package/README.md +784 -680
  2. package/dist/core/BlendshapeQueue.d.ts +43 -14
  3. package/dist/core/BlendshapeQueue.d.ts.map +1 -1
  4. package/dist/core/BlendshapeQueue.js +69 -26
  5. package/dist/core/BlendshapeQueue.js.map +1 -1
  6. package/dist/core/ConvaiClient.d.ts +6 -0
  7. package/dist/core/ConvaiClient.d.ts.map +1 -1
  8. package/dist/core/ConvaiClient.js +58 -13
  9. package/dist/core/ConvaiClient.js.map +1 -1
  10. package/dist/core/MessageHandler.d.ts +14 -0
  11. package/dist/core/MessageHandler.d.ts.map +1 -1
  12. package/dist/core/MessageHandler.js +58 -18
  13. package/dist/core/MessageHandler.js.map +1 -1
  14. package/dist/core/types.d.ts +34 -4
  15. package/dist/core/types.d.ts.map +1 -1
  16. package/dist/react/components/ConvaiWidget.d.ts.map +1 -1
  17. package/dist/react/components/ConvaiWidget.js +45 -3
  18. package/dist/react/components/ConvaiWidget.js.map +1 -1
  19. package/dist/react/components/rtc-widget/components/conviComponents/VoiceModeOverlay.d.ts +3 -1
  20. package/dist/react/components/rtc-widget/components/conviComponents/VoiceModeOverlay.d.ts.map +1 -1
  21. package/dist/react/components/rtc-widget/components/conviComponents/VoiceModeOverlay.js +3 -3
  22. package/dist/react/components/rtc-widget/components/conviComponents/VoiceModeOverlay.js.map +1 -1
  23. package/dist/react/hooks/useConvaiClient.d.ts.map +1 -1
  24. package/dist/react/hooks/useConvaiClient.js +4 -1
  25. package/dist/react/hooks/useConvaiClient.js.map +1 -1
  26. package/dist/types/index.d.ts +34 -4
  27. package/dist/types/index.d.ts.map +1 -1
  28. package/dist/utils/logger.d.ts +12 -12
  29. package/dist/utils/logger.d.ts.map +1 -1
  30. package/dist/utils/logger.js +31 -21
  31. package/dist/utils/logger.js.map +1 -1
  32. package/dist/vanilla/ConvaiWidget.d.ts.map +1 -1
  33. package/dist/vanilla/ConvaiWidget.js +92 -22
  34. package/dist/vanilla/ConvaiWidget.js.map +1 -1
  35. package/dist/vanilla/types.d.ts +2 -0
  36. package/dist/vanilla/types.d.ts.map +1 -1
  37. package/package.json +6 -4
@@ -1,17 +1,19 @@
1
1
  /**
2
2
  * BlendshapeQueue - Manages buffering and lifecycle of blendshape frames
3
3
  *
4
- * This queue buffers blendshape chunks (typically 10 frames each) as they arrive from the server,
5
- * before the bot starts speaking. Playback begins when bot-started-speaking is triggered.
4
+ * This queue buffers blendshape chunks (typically 5-10 frames each) as they arrive from the server.
5
+ * It separates queue activation (accepting frames) from playback (bot speaking).
6
6
  *
7
7
  * Flow:
8
- * 1. Blendshapes arrive in chunks and are buffered in the queue
9
- * 2. bot-started-speaking triggers conversation start
10
- * 3. Consumer reads frames from queue using time-based indexing (elapsed_time * 60fps)
11
- * 4. blendshape-turn-stats provides total_audio_duration_ms and total_blendshapes
12
- * 5. TimeLeft event emitted during playback based on remaining frames
13
- * 6. ConversationEnded event emitted when all frames played
14
- * 7. Queue drains remaining frames and resets for next conversation
8
+ * 1. User sends message queue activates (conversationActive = true)
9
+ * 2. Blendshapes arrive in chunks and are buffered in the queue
10
+ * 3. bot-started-speaking triggers (botSpeaking = true) lipsync playback begins
11
+ * 4. Consumer reads frames from queue using time-based indexing (elapsed_time * 60fps)
12
+ * 5. bot-stopped-speaking triggers (botSpeaking = false) lipsync playback stops
13
+ * 6. blendshape-turn-stats received conversation ends (conversationActive = false, conversationEnded = true)
14
+ * 7. Remaining frames in queue are consumed
15
+ * 8. ConversationEnded event emitted when all frames played
16
+ * 9. Queue resets for next conversation
15
17
  *
16
18
  * Mapping:
17
19
  * - Supports optional mapping of blendshape data via a mapper function
@@ -28,6 +30,7 @@ export interface TurnStats {
28
30
  export declare class BlendshapeQueue {
29
31
  private queue;
30
32
  private conversationActive;
33
+ private botSpeaking;
31
34
  private conversationEnded;
32
35
  private mapper?;
33
36
  private turnStats;
@@ -95,19 +98,45 @@ export declare class BlendshapeQueue {
95
98
  */
96
99
  isConversationActive(): boolean;
97
100
  /**
98
- * Check if conversation has ended (blendshape-turn-stats received)
101
+ * Check if conversation has ended and is ready for reset
102
+ *
103
+ * Returns true when:
104
+ * 1. Server sent blendshape-turn-stats (conversationEnded = true)
105
+ * AND
106
+ * 2. All expected frames consumed OR queue is empty (playback complete)
107
+ *
108
+ * This combines the logic previously needed in consumers for definitive
109
+ * end-of-conversation detection.
99
110
  */
100
111
  isConversationEnded(): boolean;
101
112
  /**
102
- * Mark conversation start (called when bot-started-speaking)
103
- * Clears any remaining frames from previous conversation
113
+ * Check if server has signaled conversation end (blendshape-turn-stats received)
114
+ * This does NOT check if all frames have been consumed - use isConversationEnded() for that.
115
+ */
116
+ hasReceivedEndSignal(): boolean;
117
+ /**
118
+ * Mark conversation start (called when user sends a message)
119
+ * Clears any remaining frames from previous conversation and activates the queue
104
120
  */
105
121
  startConversation(): void;
122
+ /**
123
+ * Mark bot as started speaking (called when bot-started-speaking event received)
124
+ * This signals that the lipsync player can start consuming frames
125
+ */
126
+ startBotSpeaking(): void;
127
+ /**
128
+ * Mark bot as stopped speaking (called when bot-stopped-speaking event received)
129
+ */
130
+ stopBotSpeaking(): void;
131
+ /**
132
+ * Check if bot is currently speaking
133
+ * Lipsync player should only play frames when this is true
134
+ */
135
+ isBotSpeaking(): boolean;
106
136
  /**
107
137
  * Mark conversation end with turn stats
108
138
  * Called when blendshape-turn-stats received
109
- * Note: We keep accepting frames even after stats arrive, because blendshapes
110
- * can arrive late due to network timing. We only stop when all frames consumed.
139
+ * Stops accepting new frames and marks conversation as ended
111
140
  */
112
141
  endConversation(stats?: TurnStats): void;
113
142
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"BlendshapeQueue.d.ts","sourceRoot":"","sources":["../../src/core/BlendshapeQueue.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,iBAAiB,EAAE,MAAM,CAAC;IAC1B,uBAAuB,EAAE,MAAM,CAAC;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,sBAAsB,EAAE,MAAM,CAAC;CAChC;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,kBAAkB,CAAkB;IAC5C,OAAO,CAAC,iBAAiB,CAAkB;IAC3C,OAAO,CAAC,MAAM,CAAC,CAAmD;IAClE,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,kBAAkB,CAAa;IAGvC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAM;IAExC;;;OAGG;gBACS,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,YAAY,KAAK,YAAY;IAIrE;;;OAGG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,GAAG,IAAI;IAqBvC;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,YAAY,KAAK,YAAY,GAAG,IAAI;IAIzE;;OAEG;IACH,WAAW,IAAI,IAAI;IAInB;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;;OAGG;IACH,SAAS,IAAI,YAAY,EAAE;IAI3B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IAO5C;;;;;;OAMG;IACH,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IA+CrD;;;OAGG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQlC;;OAEG;IACH,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,oBAAoB,IAAI,OAAO;IAI/B;;OAEG;IACH,mBAAmB,IAAI,OAAO;IAI9B;;;OAGG;IACH,iBAAiB,IAAI,IAAI;IAYzB;;;;;OAKG;IACH,eAAe,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,IAAI;IAUxC;;;OAGG;IACH,SAAS,IAAI,IAAI;IAYjB;;OAEG;IACH,YAAY,IAAI,SAAS,GAAG,IAAI;IAIhC;;OAEG;IACH,iBAAiB,IAAI,MAAM;IAI3B;;;OAGG;IACH,aAAa,IAAI,MAAM,GAAG,IAAI;IAiB9B;;OAEG;IACH,mBAAmB,IAAI,OAAO;IAK9B;;;OAGG;IACH,KAAK,IAAI,IAAI;IAQb;;;;OAIG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG;QACnC,KAAK,EAAE,YAAY,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;KACpB,GAAG,IAAI;IAiBR;;OAEG;IACH,YAAY,IAAI;QACd,UAAU,EAAE,MAAM,CAAC;QACnB,kBAAkB,EAAE,OAAO,CAAC;QAC5B,iBAAiB,EAAE,OAAO,CAAC;QAC3B,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;QAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;KAC3B;CAUF"}
1
+ {"version":3,"file":"BlendshapeQueue.d.ts","sourceRoot":"","sources":["../../src/core/BlendshapeQueue.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,iBAAiB,EAAE,MAAM,CAAC;IAC1B,uBAAuB,EAAE,MAAM,CAAC;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,sBAAsB,EAAE,MAAM,CAAC;CAChC;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,kBAAkB,CAAkB;IAC5C,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,iBAAiB,CAAkB;IAC3C,OAAO,CAAC,MAAM,CAAC,CAAmD;IAClE,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,kBAAkB,CAAa;IAGvC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAM;IAExC;;;OAGG;gBACS,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,YAAY,KAAK,YAAY;IAIrE;;;OAGG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,GAAG,IAAI;IAqBvC;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,YAAY,KAAK,YAAY,GAAG,IAAI;IAIzE;;OAEG;IACH,WAAW,IAAI,IAAI;IAInB;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;;OAGG;IACH,SAAS,IAAI,YAAY,EAAE;IAI3B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IAO5C;;;;;;OAMG;IACH,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IA+CrD;;;OAGG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAOlC;;OAEG;IACH,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,oBAAoB,IAAI,OAAO;IAI/B;;;;;;;;;;OAUG;IACH,mBAAmB,IAAI,OAAO;IAe9B;;;OAGG;IACH,oBAAoB,IAAI,OAAO;IAI/B;;;OAGG;IACH,iBAAiB,IAAI,IAAI;IAYzB;;;OAGG;IACH,gBAAgB,IAAI,IAAI;IAIxB;;OAEG;IACH,eAAe,IAAI,IAAI;IAIvB;;;OAGG;IACH,aAAa,IAAI,OAAO;IAIxB;;;;OAIG;IACH,eAAe,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,IAAI;IASxC;;;OAGG;IACH,SAAS,IAAI,IAAI;IAYjB;;OAEG;IACH,YAAY,IAAI,SAAS,GAAG,IAAI;IAIhC;;OAEG;IACH,iBAAiB,IAAI,MAAM;IAI3B;;;OAGG;IACH,aAAa,IAAI,MAAM,GAAG,IAAI;IAiB9B;;OAEG;IACH,mBAAmB,IAAI,OAAO;IAK9B;;;OAGG;IACH,KAAK,IAAI,IAAI;IASb;;;;OAIG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG;QACnC,KAAK,EAAE,YAAY,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;KACpB,GAAG,IAAI;IAiBR;;OAEG;IACH,YAAY,IAAI;QACd,UAAU,EAAE,MAAM,CAAC;QACnB,kBAAkB,EAAE,OAAO,CAAC;QAC5B,iBAAiB,EAAE,OAAO,CAAC;QAC3B,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;QAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;KAC3B;CAUF"}
@@ -1,17 +1,19 @@
1
1
  /**
2
2
  * BlendshapeQueue - Manages buffering and lifecycle of blendshape frames
3
3
  *
4
- * This queue buffers blendshape chunks (typically 10 frames each) as they arrive from the server,
5
- * before the bot starts speaking. Playback begins when bot-started-speaking is triggered.
4
+ * This queue buffers blendshape chunks (typically 5-10 frames each) as they arrive from the server.
5
+ * It separates queue activation (accepting frames) from playback (bot speaking).
6
6
  *
7
7
  * Flow:
8
- * 1. Blendshapes arrive in chunks and are buffered in the queue
9
- * 2. bot-started-speaking triggers conversation start
10
- * 3. Consumer reads frames from queue using time-based indexing (elapsed_time * 60fps)
11
- * 4. blendshape-turn-stats provides total_audio_duration_ms and total_blendshapes
12
- * 5. TimeLeft event emitted during playback based on remaining frames
13
- * 6. ConversationEnded event emitted when all frames played
14
- * 7. Queue drains remaining frames and resets for next conversation
8
+ * 1. User sends message queue activates (conversationActive = true)
9
+ * 2. Blendshapes arrive in chunks and are buffered in the queue
10
+ * 3. bot-started-speaking triggers (botSpeaking = true) lipsync playback begins
11
+ * 4. Consumer reads frames from queue using time-based indexing (elapsed_time * 60fps)
12
+ * 5. bot-stopped-speaking triggers (botSpeaking = false) lipsync playback stops
13
+ * 6. blendshape-turn-stats received conversation ends (conversationActive = false, conversationEnded = true)
14
+ * 7. Remaining frames in queue are consumed
15
+ * 8. ConversationEnded event emitted when all frames played
16
+ * 9. Queue resets for next conversation
15
17
  *
16
18
  * Mapping:
17
19
  * - Supports optional mapping of blendshape data via a mapper function
@@ -25,7 +27,8 @@ export class BlendshapeQueue {
25
27
  */
26
28
  constructor(mapper) {
27
29
  this.queue = [];
28
- this.conversationActive = false;
30
+ this.conversationActive = false; // Queue is accepting frames (starts when user sends message)
31
+ this.botSpeaking = false; // Bot is actually speaking (starts when bot-started-speaking)
29
32
  this.conversationEnded = false;
30
33
  this.turnStats = null;
31
34
  this.framesConsumed = 0;
@@ -38,10 +41,10 @@ export class BlendshapeQueue {
38
41
  * @param blendshapes - Array of blendshape frames (each frame is an array of numbers)
39
42
  */
40
43
  addChunk(blendshapes) {
41
- // Only accept frames if conversation is active
42
- // Keep accepting even after conversationEnded=true, because frames can arrive late
43
- if (!this.conversationActive) {
44
- console.log(`[BlendshapeQueue] ❌ Ignoring ${blendshapes.length} frames - conversation not active`);
44
+ // Accept frames if conversation is active OR if bot is speaking
45
+ // This handles cases where turn stats arrive before bot-started-speaking
46
+ const shouldAcceptFrames = this.conversationActive || this.botSpeaking;
47
+ if (!shouldAcceptFrames) {
45
48
  return;
46
49
  }
47
50
  const before = this.queue.length;
@@ -54,7 +57,6 @@ export class BlendshapeQueue {
54
57
  this.queue.push(mappedFrame);
55
58
  }
56
59
  const after = this.queue.length;
57
- console.log(`[BlendshapeQueue] ✅ Added ${blendshapes.length} frames. Queue: ${before} -> ${after}, Total consumed so far: ${this.framesConsumed}`);
58
60
  }
59
61
  /**
60
62
  * Set or update the mapper function
@@ -149,7 +151,6 @@ export class BlendshapeQueue {
149
151
  const actualConsumed = Math.min(count, this.queue.length);
150
152
  this.queue.splice(0, actualConsumed);
151
153
  this.framesConsumed += actualConsumed;
152
- console.log(`[BlendshapeQueue] 🔄 Consumed ${actualConsumed} frames. Total consumed: ${this.framesConsumed}, Queue left: ${this.queue.length}`);
153
154
  }
154
155
  /**
155
156
  * Get the number of frames currently in the queue
@@ -170,36 +171,77 @@ export class BlendshapeQueue {
170
171
  return this.conversationActive;
171
172
  }
172
173
  /**
173
- * Check if conversation has ended (blendshape-turn-stats received)
174
+ * Check if conversation has ended and is ready for reset
175
+ *
176
+ * Returns true when:
177
+ * 1. Server sent blendshape-turn-stats (conversationEnded = true)
178
+ * AND
179
+ * 2. All expected frames consumed OR queue is empty (playback complete)
180
+ *
181
+ * This combines the logic previously needed in consumers for definitive
182
+ * end-of-conversation detection.
174
183
  */
175
184
  isConversationEnded() {
185
+ if (!this.conversationEnded) {
186
+ return false;
187
+ }
188
+ // Check completion - EITHER:
189
+ // A) All expected frames consumed based on server stats
190
+ const allFramesConsumed = this.isAllFramesConsumed();
191
+ // B) OR stats received AND queue is now empty (handles dropped frames)
192
+ const queueEmptyAfterStats = !this.hasFrames();
193
+ return allFramesConsumed || queueEmptyAfterStats;
194
+ }
195
+ /**
196
+ * Check if server has signaled conversation end (blendshape-turn-stats received)
197
+ * This does NOT check if all frames have been consumed - use isConversationEnded() for that.
198
+ */
199
+ hasReceivedEndSignal() {
176
200
  return this.conversationEnded;
177
201
  }
178
202
  /**
179
- * Mark conversation start (called when bot-started-speaking)
180
- * Clears any remaining frames from previous conversation
203
+ * Mark conversation start (called when user sends a message)
204
+ * Clears any remaining frames from previous conversation and activates the queue
181
205
  */
182
206
  startConversation() {
183
- console.log(`[BlendshapeQueue] 🎬 Starting new conversation - clearing ${this.queue.length} leftover frames`);
184
207
  // Clear any leftover frames from previous conversation
185
208
  this.queue = [];
186
209
  this.conversationActive = true;
210
+ this.botSpeaking = false; // Bot hasn't started speaking yet
187
211
  this.conversationEnded = false;
188
212
  this.framesConsumed = 0; // Reset frame counter for new conversation
189
213
  this.turnStats = null; // Clear old stats
190
214
  this.interrupted = false; // Reset interruption flag
191
215
  this.interruptedAtFrame = 0;
192
216
  }
217
+ /**
218
+ * Mark bot as started speaking (called when bot-started-speaking event received)
219
+ * This signals that the lipsync player can start consuming frames
220
+ */
221
+ startBotSpeaking() {
222
+ this.botSpeaking = true;
223
+ }
224
+ /**
225
+ * Mark bot as stopped speaking (called when bot-stopped-speaking event received)
226
+ */
227
+ stopBotSpeaking() {
228
+ this.botSpeaking = false;
229
+ }
230
+ /**
231
+ * Check if bot is currently speaking
232
+ * Lipsync player should only play frames when this is true
233
+ */
234
+ isBotSpeaking() {
235
+ return this.botSpeaking;
236
+ }
193
237
  /**
194
238
  * Mark conversation end with turn stats
195
239
  * Called when blendshape-turn-stats received
196
- * Note: We keep accepting frames even after stats arrive, because blendshapes
197
- * can arrive late due to network timing. We only stop when all frames consumed.
240
+ * Stops accepting new frames and marks conversation as ended
198
241
  */
199
242
  endConversation(stats) {
200
- console.log(`[BlendshapeQueue] 🏁 Turn stats received:`, stats);
201
- console.log(`[BlendshapeQueue] Total consumed: ${this.framesConsumed}, Queue remaining: ${this.queue.length}`);
202
- // Don't set conversationActive = false yet! Keep accepting late frames
243
+ // Stop accepting new frames when conversation ends
244
+ this.conversationActive = false;
203
245
  this.conversationEnded = true;
204
246
  if (stats) {
205
247
  this.turnStats = stats;
@@ -210,10 +252,10 @@ export class BlendshapeQueue {
210
252
  * Keeps last 10 frames in queue and fades them out
211
253
  */
212
254
  interrupt() {
213
- console.log(`[BlendshapeQueue] ⚠️ Interruption - keeping last 10 frames for fade out. Current queue: ${this.queue.length}`);
214
255
  this.interrupted = true;
215
256
  this.interruptedAtFrame = this.framesConsumed + this.queue.length;
216
257
  this.conversationActive = false; // Stop accepting new frames
258
+ this.botSpeaking = false; // Bot is no longer speaking due to interruption
217
259
  // Keep only last 10 frames for fade out
218
260
  if (this.queue.length > 10) {
219
261
  this.queue = this.queue.slice(-10);
@@ -262,6 +304,7 @@ export class BlendshapeQueue {
262
304
  reset() {
263
305
  this.queue = [];
264
306
  this.conversationActive = false;
307
+ this.botSpeaking = false;
265
308
  this.conversationEnded = false;
266
309
  this.turnStats = null;
267
310
  this.framesConsumed = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"BlendshapeQueue.js","sourceRoot":"","sources":["../../src/core/BlendshapeQueue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BlendshapeQueue.js","sourceRoot":"","sources":["../../src/core/BlendshapeQueue.ts"],"names":[],"mappings":"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"}
@@ -79,6 +79,12 @@ export declare class ConvaiClient extends EventEmitter implements IConvaiClient
79
79
  * Setup event listeners for room and managers
80
80
  */
81
81
  private setupEventListeners;
82
+ /**
83
+ * Setup MessageHandler to respond to conversation start events
84
+ * This ensures the BlendshapeQueue starts accepting frames when user sends a message,
85
+ * rather than waiting for bot-started-speaking (which would cause early frames to be dropped)
86
+ */
87
+ private setupMessageHandlerEvents;
82
88
  /**
83
89
  * Handle room disconnection
84
90
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ConvaiClient.d.ts","sourceRoot":"","sources":["../../src/core/ConvaiClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAa,MAAM,gBAAgB,CAAC;AACjD,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,WAAW,EAEX,aAAa,EACb,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAKjB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBAAa,YAAa,SAAQ,YAAa,YAAW,aAAa;IACrE,OAAO,CAAC,KAAK,CAAO;IACpB,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,eAAe,CAAkC;IACzD,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,mBAAmB,CAAuB;IAClD,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,eAAe,CAAc;IACrC,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,aAAa,CAA6B;IAGlD,OAAO,CAAC,aAAa,CAAe;IACpC,OAAO,CAAC,aAAa,CAAe;IACpC,OAAO,CAAC,mBAAmB,CAAqB;IAChD,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,eAAe,CAAiB;IAGxC,OAAO,CAAC,sBAAsB,CAAa;IAC3C,OAAO,CAAC,sBAAsB,CAAa;gBAE/B,MAAM,CAAC,EAAE,YAAY;IA0CjC,IAAI,KAAK,IAAI,iBAAiB,CAE7B;IAED,IAAI,cAAc,IAAI,OAAO,GAAG,OAAO,GAAG,IAAI,CAE7C;IAED,IAAI,MAAM,IAAI,MAAM,GAAG,IAAI,CAE1B;IAED,IAAI,WAAW,IAAI,MAAM,GAAG,IAAI,CAE/B;IAED,IAAI,SAAS,IAAI,MAAM,GAAG,IAAI,CAE7B;IAED,IAAI,IAAI,IAAI,IAAI,CAEf;IAED,IAAI,YAAY,IAAI,WAAW,EAAE,CAEhC;IAED,IAAI,iBAAiB,IAAI,MAAM,CAE9B;IAED,IAAI,kBAAkB,IAAI,MAAM,GAAG,IAAI,CAEtC;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,IAAI,aAAa,IAAI,aAAa,CAEjC;IAED,IAAI,aAAa,IAAI,aAAa,CAEjC;IAED,IAAI,mBAAmB,IAAI,mBAAmB,CAE7C;IAED,IAAI,cAAc,IAAI,cAAc,CAEnC;IAED,IAAI,eAAe,IAAI,eAAe,CAErC;IAED,IAAI,qBAAqB,IAAI,MAAM,CAElC;IAED;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAqE3B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAa1B;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAuBpC;;OAEG;IACH,OAAO,CAAC,WAAW;IAuBnB;;OAEG;IACG,OAAO,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAoKnD;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAYjC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAmB5B;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAQhC;;OAEG;IACH,YAAY,IAAI,IAAI;IAKpB;;OAEG;IACH,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAkDvC;;OAEG;IACH,kBAAkB,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI;IAmBvE;;OAEG;IACH,oBAAoB,IAAI,IAAI;IAgC5B;;OAEG;IACH,kBAAkB,CAAC,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,IAAI;IAsBjE;;OAEG;IACH,iBAAiB,CAAC,WAAW,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAoBtD;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;CAyBlC"}
1
+ {"version":3,"file":"ConvaiClient.d.ts","sourceRoot":"","sources":["../../src/core/ConvaiClient.ts"],"names":[],"mappings":"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"}
@@ -70,6 +70,7 @@ export class ConvaiClient extends EventEmitter {
70
70
  isThinking: false,
71
71
  isSpeaking: false,
72
72
  agentState: "disconnected",
73
+ emotion: null,
73
74
  };
74
75
  // Default audio settings for optimal interruption handling
75
76
  this._audioSettings = {
@@ -87,6 +88,8 @@ export class ConvaiClient extends EventEmitter {
87
88
  this._messageHandler = new MessageHandler(this._room, this._latencyMonitor);
88
89
  // Setup event listeners
89
90
  this.setupEventListeners();
91
+ // Connect MessageHandler to conversation start events
92
+ this.setupMessageHandlerEvents();
90
93
  }
91
94
  // Getters
92
95
  get state() {
@@ -165,10 +168,10 @@ export class ConvaiClient extends EventEmitter {
165
168
  this._latencyMonitor.endMeasurement();
166
169
  }
167
170
  else if (this._conversationSessionId > 0) {
168
- // Bot stopped speaking - conversation end
171
+ // Bot stopped speaking - turn end signal (same semantics as BlendshapeQueue.hasReceivedEndSignal())
169
172
  const duration = ((Date.now() - this._conversationStartTime) /
170
173
  1000).toFixed(2);
171
- this.emit("conversationEnd", {
174
+ this.emit("turnEnd", {
172
175
  sessionId: this._conversationSessionId,
173
176
  duration: parseFloat(duration),
174
177
  timestamp: Date.now(),
@@ -178,6 +181,12 @@ export class ConvaiClient extends EventEmitter {
178
181
  this._messageHandler.on("botRespondingChange", (isResponding) => {
179
182
  this.updateState({ isThinking: isResponding });
180
183
  });
184
+ this._messageHandler.on("emotionChange", (emotion) => {
185
+ this.updateState({ emotion });
186
+ });
187
+ this._messageHandler.on("listeningChange", (isListening) => {
188
+ this.updateState({ isListening });
189
+ });
181
190
  // Forward blendshapes events
182
191
  this._messageHandler.on("blendshapes", (data) => {
183
192
  this.emit("blendshapes", data);
@@ -191,6 +200,19 @@ export class ConvaiClient extends EventEmitter {
191
200
  this.emit("latencyMeasurement", measurement);
192
201
  });
193
202
  }
203
+ /**
204
+ * Setup MessageHandler to respond to conversation start events
205
+ * This ensures the BlendshapeQueue starts accepting frames when user sends a message,
206
+ * rather than waiting for bot-started-speaking (which would cause early frames to be dropped)
207
+ */
208
+ setupMessageHandlerEvents() {
209
+ this.on("conversationStart", (data) => {
210
+ // Notify blendshape queue that conversation has started
211
+ // This allows it to accept incoming blendshape chunks immediately
212
+ this._messageHandler.getBlendshapeQueue().startConversation();
213
+ console.log(`[ConvaiClient] 🎬 Blendshape queue activated for conversation ${data.sessionId}`);
214
+ });
215
+ }
194
216
  /**
195
217
  * Handle room disconnection
196
218
  */
@@ -239,19 +261,19 @@ export class ConvaiClient extends EventEmitter {
239
261
  updateState(updates) {
240
262
  const oldState = { ...this._state };
241
263
  this._state = { ...this._state, ...updates };
242
- // Update agentState based on individual flags
264
+ // Update agentState: speaking (highest) > listening (user speaking) > thinking > connected
243
265
  if (!this._state.isConnected) {
244
266
  this._state.agentState = "disconnected";
245
267
  }
246
268
  else if (this._state.isSpeaking) {
247
269
  this._state.agentState = "speaking";
248
270
  }
249
- else if (this._state.isThinking) {
250
- this._state.agentState = "thinking";
251
- }
252
271
  else if (this._state.isListening) {
253
272
  this._state.agentState = "listening";
254
273
  }
274
+ else if (this._state.isThinking) {
275
+ this._state.agentState = "thinking";
276
+ }
255
277
  else {
256
278
  this._state.agentState = "connected";
257
279
  }
@@ -270,7 +292,12 @@ export class ConvaiClient extends EventEmitter {
270
292
  throw new Error("No configuration provided. Pass config to connect() or store it in the client");
271
293
  }
272
294
  // Store config for reconnection
273
- this._storedConfig = finalConfig;
295
+ this._storedConfig = { ...finalConfig };
296
+ // Use characterSessionId from config when reconnecting (so we resume the same session)
297
+ if (finalConfig.characterSessionId &&
298
+ finalConfig.characterSessionId !== "-1") {
299
+ this._characterSessionId = finalConfig.characterSessionId;
300
+ }
274
301
  // Add default URL if not provided
275
302
  const configWithDefaults = {
276
303
  url: "https://realtime-api.convai.com",
@@ -291,9 +318,16 @@ export class ConvaiClient extends EventEmitter {
291
318
  const connType = configWithDefaults.enableVideo ? "video" : "audio";
292
319
  this._connectionType = connType;
293
320
  // Prepare request body with required parameters
321
+ const characterSessionIdToSend = configWithDefaults.characterSessionId ?? this._characterSessionId;
294
322
  const requestBody = {
295
323
  character_id: configWithDefaults.characterId,
296
324
  ...(resolvedSpeakerId && { speaker_id: resolvedSpeakerId }),
325
+ ...(configWithDefaults.endUserId && {
326
+ end_user_id: configWithDefaults.endUserId,
327
+ }),
328
+ ...(configWithDefaults.endUserMetadata != null && {
329
+ end_user_metadata: configWithDefaults.endUserMetadata,
330
+ }),
297
331
  transport: "livekit",
298
332
  connection_type: connType,
299
333
  blendshape_provider: configWithDefaults.enableLipsync
@@ -303,16 +337,24 @@ export class ConvaiClient extends EventEmitter {
303
337
  enable_chunking: true,
304
338
  chunk_size: 10,
305
339
  format: configWithDefaults.blendshapeConfig?.format || "mha",
306
- frames_buffer_duration: 1,
340
+ frames_buffer_duration: configWithDefaults.blendshapeConfig?.frames_buffer_duration ?? 0,
307
341
  output_fps: 90,
308
342
  },
309
343
  llm_provider: "dynamic",
344
+ ...(configWithDefaults.enableEmotion !== false && {
345
+ emotion_config: {
346
+ provider: configWithDefaults.emotionConfig?.provider ?? "llm",
347
+ min_word_threshold: configWithDefaults.emotionConfig?.min_word_threshold ?? 3,
348
+ low_intensity_threshold: configWithDefaults.emotionConfig?.low_intensity_threshold ?? 0.33,
349
+ high_intensity_threshold: configWithDefaults.emotionConfig?.high_intensity_threshold ?? 0.66,
350
+ },
351
+ }),
310
352
  default_tts_enabled: configWithDefaults.ttsEnabled !== undefined
311
353
  ? configWithDefaults.ttsEnabled
312
354
  : true,
313
- ...(this._characterSessionId &&
314
- this._characterSessionId !== "-1" && {
315
- character_session_id: this._characterSessionId,
355
+ ...(characterSessionIdToSend &&
356
+ characterSessionIdToSend !== "-1" && {
357
+ character_session_id: characterSessionIdToSend,
316
358
  }),
317
359
  ...(configWithDefaults.actionConfig && {
318
360
  action_config: configWithDefaults.actionConfig,
@@ -350,9 +392,13 @@ export class ConvaiClient extends EventEmitter {
350
392
  throw new Error(errorMessage);
351
393
  }
352
394
  const connectionData = await response.json();
353
- // Capture character_session_id from connection response
395
+ // Capture character_session_id from connection response and persist in stored config for reconnection
354
396
  if (connectionData.character_session_id) {
355
397
  this._characterSessionId = connectionData.character_session_id;
398
+ this._storedConfig = {
399
+ ...this._storedConfig,
400
+ characterSessionId: connectionData.character_session_id,
401
+ };
356
402
  }
357
403
  // Connect to LiveKit room
358
404
  await this._room.connect(connectionData.room_url, connectionData.token, {
@@ -442,7 +488,6 @@ export class ConvaiClient extends EventEmitter {
442
488
  if (!this._storedConfig) {
443
489
  throw new Error("No stored config available for reconnection");
444
490
  }
445
- await this.disconnect();
446
491
  await this.connect(this._storedConfig);
447
492
  }
448
493
  /**
@@ -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;IAqQ1B;;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;IA2R1B;;OAEG;IACH,KAAK,IAAI,IAAI;CAgBd"}