@convai/web-sdk 1.2.1-beta.0 → 1.2.2-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 (62) hide show
  1. package/README.md +297 -43
  2. package/dist/core/ConvaiClient.d.ts +36 -7
  3. package/dist/core/ConvaiClient.d.ts.map +1 -1
  4. package/dist/core/ConvaiClient.js +190 -40
  5. package/dist/core/ConvaiClient.js.map +1 -1
  6. package/dist/core/MemoryManager.d.ts +179 -0
  7. package/dist/core/MemoryManager.d.ts.map +1 -0
  8. package/dist/core/MemoryManager.js +281 -0
  9. package/dist/core/MemoryManager.js.map +1 -0
  10. package/dist/core/MessageHandler.d.ts +1 -7
  11. package/dist/core/MessageHandler.d.ts.map +1 -1
  12. package/dist/core/MessageHandler.js +8 -21
  13. package/dist/core/MessageHandler.js.map +1 -1
  14. package/dist/core/index.d.ts +2 -0
  15. package/dist/core/index.d.ts.map +1 -1
  16. package/dist/core/index.js +3 -0
  17. package/dist/core/index.js.map +1 -1
  18. package/dist/core/types.d.ts +422 -13
  19. package/dist/core/types.d.ts.map +1 -1
  20. package/dist/core/types.js +58 -1
  21. package/dist/core/types.js.map +1 -1
  22. package/dist/index.d.ts +0 -1
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js.map +1 -1
  25. package/dist/lipsync-helpers/mappingTypes.d.ts +1 -1
  26. package/dist/lipsync-helpers/mappingTypes.js +4 -4
  27. package/dist/react/components/ConvaiWidget.d.ts.map +1 -1
  28. package/dist/react/components/ConvaiWidget.js +1 -1
  29. package/dist/react/components/ConvaiWidget.js.map +1 -1
  30. package/dist/react/hooks/useCharacterInfo.d.ts +1 -1
  31. package/dist/react/hooks/useCharacterInfo.d.ts.map +1 -1
  32. package/dist/react/hooks/useCharacterInfo.js +11 -5
  33. package/dist/react/hooks/useCharacterInfo.js.map +1 -1
  34. package/dist/react/hooks/useConvaiClient.d.ts.map +1 -1
  35. package/dist/react/hooks/useConvaiClient.js +4 -2
  36. package/dist/react/hooks/useConvaiClient.js.map +1 -1
  37. package/dist/react/index.d.ts +1 -0
  38. package/dist/react/index.d.ts.map +1 -1
  39. package/dist/react/index.js +2 -0
  40. package/dist/react/index.js.map +1 -1
  41. package/dist/vanilla/ConvaiWidget.d.ts.map +1 -1
  42. package/dist/vanilla/ConvaiWidget.js +6 -4
  43. package/dist/vanilla/ConvaiWidget.js.map +1 -1
  44. package/dist/vanilla/index.d.ts +2 -1
  45. package/dist/vanilla/index.d.ts.map +1 -1
  46. package/dist/vanilla/index.js +2 -0
  47. package/dist/vanilla/index.js.map +1 -1
  48. package/dist/vanilla/types.d.ts +3 -2
  49. package/dist/vanilla/types.d.ts.map +1 -1
  50. package/package.json +1 -1
  51. package/dist/dev.d.ts +0 -12
  52. package/dist/dev.d.ts.map +0 -1
  53. package/dist/dev.js +0 -12
  54. package/dist/dev.js.map +0 -1
  55. package/dist/types/index.d.ts +0 -310
  56. package/dist/types/index.d.ts.map +0 -1
  57. package/dist/types/index.js +0 -2
  58. package/dist/types/index.js.map +0 -1
  59. package/dist/utils/LatencyMonitor.d.ts +0 -88
  60. package/dist/utils/LatencyMonitor.d.ts.map +0 -1
  61. package/dist/utils/LatencyMonitor.js +0 -136
  62. package/dist/utils/LatencyMonitor.js.map +0 -1
@@ -1,10 +1,18 @@
1
- import { Room, RoomEvent, ConnectionState } from "livekit-client";
1
+ import { Room, RoomEvent, ConnectionState, DefaultReconnectPolicy } 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 { LatencyMonitor } from "../utils/LatencyMonitor";
7
+ import { MemoryManager } from "./MemoryManager";
8
+ /**
9
+ * Custom reconnect policy that disables automatic reconnection
10
+ */
11
+ class NoReconnectPolicy extends DefaultReconnectPolicy {
12
+ nextRetryDelayInMs() {
13
+ return null; // Always return null to prevent any reconnection attempts
14
+ }
15
+ }
8
16
  /**
9
17
  * Main Convai client class for managing AI voice assistant connections
10
18
  * Provides complete interface for connecting to Convai's voice assistants,
@@ -46,21 +54,28 @@ export class ConvaiClient extends EventEmitter {
46
54
  super();
47
55
  this._connectionType = null;
48
56
  this._apiKey = null;
57
+ this._authToken = null;
49
58
  this._characterId = null;
50
59
  this._speakerId = null;
51
60
  this._characterSessionId = "-1";
52
61
  this._isBotReady = false;
53
62
  this._participantSid = "";
54
63
  this._storedConfig = null;
64
+ this._endUserId = null;
65
+ this._endUserMetadata = null;
55
66
  // Conversation session tracking
56
67
  this._conversationSessionId = 0;
57
68
  this._conversationStartTime = 0;
69
+ // Memory manager instance
70
+ this._memoryManager = null;
58
71
  // Store config if provided
59
72
  if (config) {
60
73
  this._storedConfig = config;
61
74
  }
62
- // Initialize room
63
- this._room = new Room();
75
+ // Initialize room with no reconnect policy
76
+ this._room = new Room({
77
+ reconnectPolicy: new NoReconnectPolicy(),
78
+ });
64
79
  // Initialize state
65
80
  this._state = {
66
81
  isConnected: false,
@@ -70,6 +85,10 @@ export class ConvaiClient extends EventEmitter {
70
85
  isSpeaking: false,
71
86
  agentState: "disconnected",
72
87
  emotion: null,
88
+ endUserId: null,
89
+ endUserMetadata: null,
90
+ metrics: [],
91
+ disconnectReason: null,
73
92
  };
74
93
  // Default audio settings for optimal interruption handling
75
94
  this._audioSettings = {
@@ -83,8 +102,7 @@ export class ConvaiClient extends EventEmitter {
83
102
  this._audioManager = new AudioManager(this._room);
84
103
  this._videoManager = new VideoManager(this._room);
85
104
  this._screenShareManager = new ScreenShareManager(this._room);
86
- this._latencyMonitor = new LatencyMonitor(false); // Disabled by default
87
- this._messageHandler = new MessageHandler(this._room, this._latencyMonitor);
105
+ this._messageHandler = new MessageHandler(this._room);
88
106
  // Setup event listeners
89
107
  this.setupEventListeners();
90
108
  // Connect MessageHandler to conversation start events
@@ -100,6 +118,9 @@ export class ConvaiClient extends EventEmitter {
100
118
  get apiKey() {
101
119
  return this._apiKey;
102
120
  }
121
+ get authToken() {
122
+ return this._authToken;
123
+ }
103
124
  get characterId() {
104
125
  return this._characterId;
105
126
  }
@@ -130,21 +151,23 @@ export class ConvaiClient extends EventEmitter {
130
151
  get screenShareControls() {
131
152
  return this._screenShareManager;
132
153
  }
133
- get latencyMonitor() {
134
- return this._latencyMonitor;
135
- }
136
154
  get blendshapeQueue() {
137
155
  return this._messageHandler.getBlendshapeQueue();
138
156
  }
139
157
  get conversationSessionId() {
140
158
  return this._conversationSessionId;
141
159
  }
160
+ get memoryManager() {
161
+ return this._memoryManager;
162
+ }
142
163
  /**
143
164
  * Setup event listeners for room and managers
144
165
  */
145
166
  setupEventListeners() {
146
167
  // Room event listeners
147
- this._room.on(RoomEvent.Disconnected, this.handleDisconnected.bind(this));
168
+ this._room.on(RoomEvent.Disconnected, (reason) => {
169
+ this.handleDisconnected(reason);
170
+ });
148
171
  this._room.on(RoomEvent.ConnectionStateChanged, this.handleConnectionStateChanged.bind(this));
149
172
  // Message handler events
150
173
  this._messageHandler.on("botReady", () => {
@@ -162,11 +185,7 @@ export class ConvaiClient extends EventEmitter {
162
185
  this._messageHandler.on("speakingChange", (isSpeaking) => {
163
186
  this.updateState({ isSpeaking });
164
187
  this.emit("speakingChange", isSpeaking);
165
- // End latency measurement when bot starts speaking
166
- if (isSpeaking) {
167
- this._latencyMonitor.endMeasurement();
168
- }
169
- else if (this._conversationSessionId > 0) {
188
+ if (!isSpeaking && this._conversationSessionId > 0) {
170
189
  // Bot stopped speaking - turn end signal (same semantics as BlendshapeQueue.hasReceivedEndSignal())
171
190
  const duration = ((Date.now() - this._conversationStartTime) /
172
191
  1000).toFixed(2);
@@ -186,6 +205,19 @@ export class ConvaiClient extends EventEmitter {
186
205
  this._messageHandler.on("listeningChange", (isListening) => {
187
206
  this.updateState({ isListening });
188
207
  });
208
+ // Handle metrics events
209
+ this._messageHandler.on("metrics", (metricsData) => {
210
+ const newMetrics = [
211
+ ...this._state.metrics,
212
+ {
213
+ id: `metrics-${Date.now()}-${Math.random()}`,
214
+ data: metricsData,
215
+ timestamp: new Date().toISOString(),
216
+ },
217
+ ];
218
+ this.updateState({ metrics: newMetrics });
219
+ this.emit("metrics", metricsData);
220
+ });
189
221
  // Forward blendshapes events
190
222
  this._messageHandler.on("blendshapes", (data) => {
191
223
  this.emit("blendshapes", data);
@@ -194,10 +226,6 @@ export class ConvaiClient extends EventEmitter {
194
226
  this._messageHandler.on("blendshapeStatsReceived", (stats) => {
195
227
  this.emit("blendshapeStatsReceived", stats);
196
228
  });
197
- // Forward latency monitor events
198
- this._latencyMonitor.on("measurement", (measurement) => {
199
- this.emit("latencyMeasurement", measurement);
200
- });
201
229
  }
202
230
  /**
203
231
  * Setup MessageHandler to respond to conversation start events
@@ -206,8 +234,6 @@ export class ConvaiClient extends EventEmitter {
206
234
  */
207
235
  setupMessageHandlerEvents() {
208
236
  this.on("conversationStart", (data) => {
209
- // Notify blendshape queue that conversation has started
210
- // This allows it to accept incoming blendshape chunks immediately
211
237
  this._messageHandler.getBlendshapeQueue().startConversation();
212
238
  console.log(`[ConvaiClient] 🎬 Blendshape queue activated for conversation ${data.sessionId}`);
213
239
  });
@@ -215,17 +241,26 @@ export class ConvaiClient extends EventEmitter {
215
241
  /**
216
242
  * Handle room disconnection
217
243
  */
218
- handleDisconnected() {
244
+ handleDisconnected(reason) {
245
+ // If LiveKit doesn't provide a reason, default to UNKNOWN_REASON (0)
246
+ const disconnectReason = reason ?? 0;
219
247
  this.updateState({
220
248
  isConnected: false,
221
249
  isConnecting: false,
222
250
  isSpeaking: false,
223
251
  isThinking: false,
224
252
  isListening: false,
253
+ endUserId: null,
254
+ endUserMetadata: null,
255
+ metrics: [],
256
+ disconnectReason,
225
257
  });
226
258
  this._isBotReady = false;
259
+ this._endUserId = null;
260
+ this._endUserMetadata = null;
227
261
  this._messageHandler.reset();
228
- this.emit("disconnect");
262
+ // Emit disconnect event with reason
263
+ this.emit("disconnect", disconnectReason);
229
264
  }
230
265
  /**
231
266
  * Handle connection state changes
@@ -302,13 +337,16 @@ export class ConvaiClient extends EventEmitter {
302
337
  url: "https://realtime-api.convai.com",
303
338
  ...finalConfig,
304
339
  };
305
- if (!configWithDefaults.apiKey || !configWithDefaults.characterId) {
306
- throw new Error("apiKey and characterId are required");
340
+ const hasApiKey = Boolean(configWithDefaults.apiKey);
341
+ const hasAuthToken = Boolean(configWithDefaults.authToken);
342
+ if ((!hasApiKey && !hasAuthToken) || !configWithDefaults.characterId) {
343
+ throw new Error("Either apiKey or authToken is required, and characterId is required");
307
344
  }
308
345
  this.updateState({ isConnecting: true });
309
346
  try {
310
347
  // Store connection config
311
- this._apiKey = configWithDefaults.apiKey;
348
+ this._apiKey = configWithDefaults.apiKey ?? null;
349
+ this._authToken = configWithDefaults.authToken ?? null;
312
350
  this._characterId = configWithDefaults.characterId;
313
351
  // Resolve speaker ID based on endUserId
314
352
  // Determine connection type based on enableVideo
@@ -336,7 +374,6 @@ export class ConvaiClient extends EventEmitter {
336
374
  frames_buffer_duration: configWithDefaults.blendshapeConfig?.frames_buffer_duration ?? 0.1,
337
375
  output_fps: 90,
338
376
  },
339
- end_user_id: "xauravdas01@gmail.com",
340
377
  llm_provider: "dynamic",
341
378
  ...(configWithDefaults.enableEmotion !== false && {
342
379
  emotion_config: {
@@ -358,14 +395,50 @@ export class ConvaiClient extends EventEmitter {
358
395
  ...(configWithDefaults.actionConfig && {
359
396
  action_config: configWithDefaults.actionConfig,
360
397
  }),
398
+ ...(configWithDefaults.characters && {
399
+ characters: configWithDefaults.characters,
400
+ }),
401
+ ...(configWithDefaults.objects && {
402
+ objects: configWithDefaults.objects,
403
+ }),
404
+ ...(configWithDefaults.currentAttentionObject && {
405
+ current_attention_object: configWithDefaults.currentAttentionObject,
406
+ }),
407
+ ...(configWithDefaults.sceneDescription && {
408
+ scene_description: configWithDefaults.sceneDescription,
409
+ }),
410
+ ...(configWithDefaults.dynamicInfo && {
411
+ dynamic_info: { text: configWithDefaults.dynamicInfo },
412
+ }),
413
+ ...(configWithDefaults.debug !== undefined && {
414
+ debug: configWithDefaults.debug,
415
+ }),
416
+ ...(configWithDefaults.invocationMetadata && {
417
+ invocation_metadata: {
418
+ ...(configWithDefaults.invocationMetadata.source && {
419
+ source: configWithDefaults.invocationMetadata.source,
420
+ }),
421
+ ...(configWithDefaults.invocationMetadata.clientVersion && {
422
+ client_version: configWithDefaults.invocationMetadata.clientVersion,
423
+ }),
424
+ ...(configWithDefaults.invocationMetadata.extraMetadata && {
425
+ extra_metadata: configWithDefaults.invocationMetadata.extraMetadata,
426
+ }),
427
+ },
428
+ }),
429
+ };
430
+ const headers = {
431
+ "Content-Type": "application/json",
361
432
  };
362
- // Call Core Service API
433
+ if (configWithDefaults.authToken) {
434
+ headers["API-AUTH-TOKEN"] = configWithDefaults.authToken;
435
+ }
436
+ else if (configWithDefaults.apiKey) {
437
+ headers["X-API-Key"] = configWithDefaults.apiKey;
438
+ }
363
439
  const response = await fetch(`${configWithDefaults.url}/connect`, {
364
440
  method: "POST",
365
- headers: {
366
- "x-api-key": configWithDefaults.apiKey,
367
- "Content-Type": "application/json",
368
- },
441
+ headers,
369
442
  body: JSON.stringify(requestBody),
370
443
  });
371
444
  if (!response.ok) {
@@ -399,6 +472,13 @@ export class ConvaiClient extends EventEmitter {
399
472
  characterSessionId: connectionData.character_session_id,
400
473
  };
401
474
  }
475
+ // Capture end_user_id and end_user_metadata from connection response
476
+ if (connectionData.end_user_id) {
477
+ this._endUserId = connectionData.end_user_id;
478
+ }
479
+ if (connectionData.end_user_metadata) {
480
+ this._endUserMetadata = connectionData.end_user_metadata;
481
+ }
402
482
  // Connect to LiveKit room
403
483
  await this._room.connect(connectionData.room_url, connectionData.token, {
404
484
  rtcConfig: {
@@ -432,7 +512,24 @@ export class ConvaiClient extends EventEmitter {
432
512
  this.updateState({
433
513
  isConnected: true,
434
514
  isConnecting: false,
515
+ endUserId: this._endUserId,
516
+ endUserMetadata: this._endUserMetadata,
435
517
  });
518
+ // Initialize memory manager if we have authentication and endUserId
519
+ if (this._endUserId) {
520
+ if (this._apiKey) {
521
+ // Use API key authentication
522
+ this._memoryManager = new MemoryManager(this._apiKey, this._characterId, this._endUserId, undefined, // Use default base URL
523
+ false // Use as API key
524
+ );
525
+ }
526
+ else if (this._authToken) {
527
+ // Use auth token authentication
528
+ this._memoryManager = new MemoryManager(this._authToken, this._characterId, this._endUserId, undefined, // Use default base URL
529
+ true // Use as auth token
530
+ );
531
+ }
532
+ }
436
533
  this.emit("connect");
437
534
  }
438
535
  catch (error) {
@@ -469,12 +566,20 @@ export class ConvaiClient extends EventEmitter {
469
566
  isSpeaking: false,
470
567
  isThinking: false,
471
568
  isListening: false,
569
+ endUserId: null,
570
+ endUserMetadata: null,
571
+ metrics: [],
572
+ disconnectReason: null,
472
573
  });
473
574
  this._isBotReady = false;
474
575
  this._connectionType = null;
475
576
  this._apiKey = null;
577
+ this._authToken = null;
476
578
  this._characterId = null;
477
579
  this._speakerId = null;
580
+ this._endUserId = null;
581
+ this._endUserMetadata = null;
582
+ this._memoryManager = null; // Clear memory manager on disconnect
478
583
  this._messageHandler.reset();
479
584
  this._audioManager.reset();
480
585
  this._videoManager.reset();
@@ -495,6 +600,8 @@ export class ConvaiClient extends EventEmitter {
495
600
  resetSession() {
496
601
  this._characterSessionId = "-1";
497
602
  this._messageHandler.reset();
603
+ // Clear metrics and disconnect reason when resetting session
604
+ this.updateState({ metrics: [], disconnectReason: null });
498
605
  }
499
606
  /**
500
607
  * Send a text message to the character
@@ -519,8 +626,6 @@ export class ConvaiClient extends EventEmitter {
519
626
  userMessage: text.trim(),
520
627
  timestamp: this._conversationStartTime,
521
628
  });
522
- // Start latency measurement for text message
523
- this._latencyMonitor.startMeasurement("text", text.trim());
524
629
  const message = {
525
630
  type: "user_text_message",
526
631
  data: {
@@ -534,8 +639,6 @@ export class ConvaiClient extends EventEmitter {
534
639
  });
535
640
  }
536
641
  catch (error) {
537
- // Cancel latency measurement on error
538
- this._latencyMonitor.cancelMeasurement();
539
642
  throw error;
540
643
  }
541
644
  }
@@ -611,13 +714,11 @@ export class ConvaiClient extends EventEmitter {
611
714
  * Update dynamic information about the current context
612
715
  */
613
716
  updateDynamicInfo(dynamicInfo) {
614
- if (this._room && this._room.localParticipant && dynamicInfo.text?.trim()) {
717
+ if (this._room && this._room.localParticipant && dynamicInfo?.trim()) {
615
718
  const message = {
616
719
  type: "update-dynamic-info",
617
720
  data: {
618
- dynamic_info: {
619
- text: dynamicInfo.text.trim(),
620
- },
721
+ dynamic_info: { text: dynamicInfo },
621
722
  participant_sid: this._participantSid || this._room.localParticipant.sid,
622
723
  },
623
724
  };
@@ -627,6 +728,55 @@ export class ConvaiClient extends EventEmitter {
627
728
  });
628
729
  }
629
730
  }
731
+ /**
732
+ * Update the bot's temporary runtime context in a unified way.
733
+ * Provides flexible control over ephemeral context management.
734
+ *
735
+ * @param options - Context update configuration
736
+ *
737
+ * @example
738
+ * ```typescript
739
+ * // Append to existing context
740
+ * client.updateContext({
741
+ * text: "User completed dragon quest",
742
+ * mode: "append",
743
+ * run_llm: "false"
744
+ * });
745
+ *
746
+ * // Replace entire context
747
+ * client.updateContext({
748
+ * text: "New game state: level 5",
749
+ * mode: "replace",
750
+ * run_llm: "auto"
751
+ * });
752
+ *
753
+ * // Clear context
754
+ * client.updateContext({ mode: "reset" });
755
+ * ```
756
+ */
757
+ updateContext(options) {
758
+ if (!this._room || !this._room.localParticipant) {
759
+ return;
760
+ }
761
+ // Validate: text is required unless mode is "reset"
762
+ if (options.mode !== "reset" && !options.text?.trim()) {
763
+ console.warn("[ConvaiClient] updateContext: text is required unless mode is 'reset'");
764
+ return;
765
+ }
766
+ const message = {
767
+ type: "context-update",
768
+ data: {
769
+ ...(options.text && { text: options.text.trim() }),
770
+ ...(options.mode && { mode: options.mode }),
771
+ ...(options.run_llm && { run_llm: options.run_llm }),
772
+ participant_sid: this._participantSid || this._room.localParticipant.sid,
773
+ },
774
+ };
775
+ const encodedData = new TextEncoder().encode(JSON.stringify(message));
776
+ this._room.localParticipant.publishData(encodedData, {
777
+ reliable: true,
778
+ });
779
+ }
630
780
  /**
631
781
  * Toggle text-to-speech on or off
632
782
  */
@@ -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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"}