@deepgram/sdk 3.9.0 → 3.10.1

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 (103) hide show
  1. package/dist/main/DeepgramClient.d.ts +8 -1
  2. package/dist/main/DeepgramClient.d.ts.map +1 -1
  3. package/dist/main/DeepgramClient.js +9 -0
  4. package/dist/main/DeepgramClient.js.map +1 -1
  5. package/dist/main/lib/constants.d.ts +2 -0
  6. package/dist/main/lib/constants.d.ts.map +1 -1
  7. package/dist/main/lib/constants.js +9 -1
  8. package/dist/main/lib/constants.js.map +1 -1
  9. package/dist/main/lib/enums/AgentEvents.d.ts +78 -0
  10. package/dist/main/lib/enums/AgentEvents.d.ts.map +1 -0
  11. package/dist/main/lib/enums/AgentEvents.js +82 -0
  12. package/dist/main/lib/enums/AgentEvents.js.map +1 -0
  13. package/dist/main/lib/enums/index.d.ts +1 -0
  14. package/dist/main/lib/enums/index.d.ts.map +1 -1
  15. package/dist/main/lib/enums/index.js +1 -0
  16. package/dist/main/lib/enums/index.js.map +1 -1
  17. package/dist/main/lib/types/AgentLiveSchema.d.ts +122 -0
  18. package/dist/main/lib/types/AgentLiveSchema.d.ts.map +1 -0
  19. package/dist/main/lib/types/AgentLiveSchema.js +3 -0
  20. package/dist/main/lib/types/AgentLiveSchema.js.map +1 -0
  21. package/dist/main/lib/types/DeepgramClientOptions.d.ts +1 -0
  22. package/dist/main/lib/types/DeepgramClientOptions.d.ts.map +1 -1
  23. package/dist/main/lib/types/FunctionCallResponse.d.ts +14 -0
  24. package/dist/main/lib/types/FunctionCallResponse.d.ts.map +1 -0
  25. package/dist/main/lib/types/FunctionCallResponse.js +3 -0
  26. package/dist/main/lib/types/FunctionCallResponse.js.map +1 -0
  27. package/dist/main/lib/types/LiveTranscriptionEvent.d.ts +1 -0
  28. package/dist/main/lib/types/LiveTranscriptionEvent.d.ts.map +1 -1
  29. package/dist/main/lib/types/index.d.ts +2 -0
  30. package/dist/main/lib/types/index.d.ts.map +1 -1
  31. package/dist/main/lib/types/index.js +2 -0
  32. package/dist/main/lib/types/index.js.map +1 -1
  33. package/dist/main/lib/version.d.ts +1 -1
  34. package/dist/main/lib/version.js +1 -1
  35. package/dist/main/packages/AbstractLiveClient.js +2 -2
  36. package/dist/main/packages/AbstractLiveClient.js.map +1 -1
  37. package/dist/main/packages/AgentLiveClient.d.ts +85 -0
  38. package/dist/main/packages/AgentLiveClient.d.ts.map +1 -0
  39. package/dist/main/packages/AgentLiveClient.js +169 -0
  40. package/dist/main/packages/AgentLiveClient.js.map +1 -0
  41. package/dist/main/packages/index.d.ts +1 -0
  42. package/dist/main/packages/index.d.ts.map +1 -1
  43. package/dist/main/packages/index.js +1 -0
  44. package/dist/main/packages/index.js.map +1 -1
  45. package/dist/module/DeepgramClient.d.ts +8 -1
  46. package/dist/module/DeepgramClient.d.ts.map +1 -1
  47. package/dist/module/DeepgramClient.js +10 -1
  48. package/dist/module/DeepgramClient.js.map +1 -1
  49. package/dist/module/lib/constants.d.ts +2 -0
  50. package/dist/module/lib/constants.d.ts.map +1 -1
  51. package/dist/module/lib/constants.js +8 -0
  52. package/dist/module/lib/constants.js.map +1 -1
  53. package/dist/module/lib/enums/AgentEvents.d.ts +78 -0
  54. package/dist/module/lib/enums/AgentEvents.d.ts.map +1 -0
  55. package/dist/module/lib/enums/AgentEvents.js +79 -0
  56. package/dist/module/lib/enums/AgentEvents.js.map +1 -0
  57. package/dist/module/lib/enums/index.d.ts +1 -0
  58. package/dist/module/lib/enums/index.d.ts.map +1 -1
  59. package/dist/module/lib/enums/index.js +1 -0
  60. package/dist/module/lib/enums/index.js.map +1 -1
  61. package/dist/module/lib/types/AgentLiveSchema.d.ts +122 -0
  62. package/dist/module/lib/types/AgentLiveSchema.d.ts.map +1 -0
  63. package/dist/module/lib/types/AgentLiveSchema.js +2 -0
  64. package/dist/module/lib/types/AgentLiveSchema.js.map +1 -0
  65. package/dist/module/lib/types/DeepgramClientOptions.d.ts +1 -0
  66. package/dist/module/lib/types/DeepgramClientOptions.d.ts.map +1 -1
  67. package/dist/module/lib/types/FunctionCallResponse.d.ts +14 -0
  68. package/dist/module/lib/types/FunctionCallResponse.d.ts.map +1 -0
  69. package/dist/module/lib/types/FunctionCallResponse.js +2 -0
  70. package/dist/module/lib/types/FunctionCallResponse.js.map +1 -0
  71. package/dist/module/lib/types/LiveTranscriptionEvent.d.ts +1 -0
  72. package/dist/module/lib/types/LiveTranscriptionEvent.d.ts.map +1 -1
  73. package/dist/module/lib/types/index.d.ts +2 -0
  74. package/dist/module/lib/types/index.d.ts.map +1 -1
  75. package/dist/module/lib/types/index.js +2 -0
  76. package/dist/module/lib/types/index.js.map +1 -1
  77. package/dist/module/lib/version.d.ts +1 -1
  78. package/dist/module/lib/version.js +1 -1
  79. package/dist/module/packages/AbstractLiveClient.js +2 -2
  80. package/dist/module/packages/AbstractLiveClient.js.map +1 -1
  81. package/dist/module/packages/AgentLiveClient.d.ts +85 -0
  82. package/dist/module/packages/AgentLiveClient.d.ts.map +1 -0
  83. package/dist/module/packages/AgentLiveClient.js +165 -0
  84. package/dist/module/packages/AgentLiveClient.js.map +1 -0
  85. package/dist/module/packages/index.d.ts +1 -0
  86. package/dist/module/packages/index.d.ts.map +1 -1
  87. package/dist/module/packages/index.js +1 -0
  88. package/dist/module/packages/index.js.map +1 -1
  89. package/dist/umd/deepgram.js +1 -1
  90. package/package.json +1 -1
  91. package/src/DeepgramClient.ts +11 -0
  92. package/src/lib/constants.ts +9 -0
  93. package/src/lib/enums/AgentEvents.ts +78 -0
  94. package/src/lib/enums/index.ts +1 -0
  95. package/src/lib/types/AgentLiveSchema.ts +184 -0
  96. package/src/lib/types/DeepgramClientOptions.ts +1 -0
  97. package/src/lib/types/FunctionCallResponse.ts +13 -0
  98. package/src/lib/types/LiveTranscriptionEvent.ts +1 -0
  99. package/src/lib/types/index.ts +2 -0
  100. package/src/lib/version.ts +1 -1
  101. package/src/packages/AbstractLiveClient.ts +2 -2
  102. package/src/packages/AgentLiveClient.ts +178 -0
  103. package/src/packages/index.ts +1 -0
@@ -0,0 +1,122 @@
1
+ declare type AudioFormat = {
2
+ encoding: "linear16";
3
+ container: "wav" | "none";
4
+ sampleRate: 8000 | 16000 | 24000 | 32000 | 48000;
5
+ } | {
6
+ encoding: "mulaw";
7
+ container: "wav" | "none";
8
+ sampleRate: 8000 | 16000;
9
+ } | {
10
+ encoding: "alaw";
11
+ container: "wav" | "none";
12
+ sampleRate: 8000 | 16000;
13
+ };
14
+ declare type AudioEncoding = "linear16" | "flac" | "mulaw" | "amr-nb" | "amr-wb" | "Opus" | "speex" | "g729";
15
+ declare type ListenModel = "nova-2" | "nova-2-meeting" | "nova-2-phonecall" | "nova-2-voicemail" | "nova-2-finance" | "nova-2-conversational" | "nova-2-video" | "nova-2-medical" | "nova-2-drivethru" | "nova-2-automotive" | "nova-2-atc" | "nova" | "nova-phonecall" | "enhanced" | "enhanced-meeting" | "enhanced-phonecall" | "enhanced-finance" | "base" | "base-meeting" | "base-phonecall" | "base-voicemail" | "base-finance" | "base-conversational" | "base-video" | "whisper-tiny" | "whisper" | "whisper-small" | "whisper-medium" | "whisper-large";
16
+ declare type SpeakModel = "aura-asteria-en" | "aura-luna-en" | "aura-stella-en" | "aura-athena-en" | "aura-hera-en" | "aura-orion-en" | "aura-arcas-en" | "aura-perseus-en" | "aura-angus-en" | "aura-orpheus-en" | "aura-helios-en" | "aura-zeus-en";
17
+ interface ThinkModelFunction {
18
+ name: string;
19
+ description: string;
20
+ url: string;
21
+ headers: [
22
+ {
23
+ key: "authorization";
24
+ value: string;
25
+ }
26
+ ];
27
+ method: "POST";
28
+ parameters: {
29
+ type: string;
30
+ properties: Record<string, {
31
+ type: string;
32
+ description: string;
33
+ }>;
34
+ };
35
+ }
36
+ declare type ThinkModel = {
37
+ provider: {
38
+ type: "open_ai";
39
+ };
40
+ model: "gpt-4o-mini";
41
+ instructions?: string;
42
+ functions?: ThinkModelFunction[];
43
+ } | {
44
+ provider: {
45
+ type: "anthropic";
46
+ };
47
+ model: "claude-3-haiku-20240307";
48
+ instructions?: string;
49
+ functions?: ThinkModelFunction[];
50
+ } | {
51
+ provider: {
52
+ type: "groq";
53
+ };
54
+ model: "";
55
+ instructions?: string;
56
+ functions?: ThinkModelFunction[];
57
+ } | {
58
+ provider: {
59
+ type: "custom";
60
+ url: string;
61
+ key: string;
62
+ };
63
+ model: string;
64
+ instructions?: string;
65
+ functions?: ThinkModelFunction[];
66
+ };
67
+ /**
68
+ * @see https://developers.deepgram.com/reference/voicebot-api-phase-preview#settingsconfiguration
69
+ */
70
+ interface AgentLiveSchema extends Record<string, unknown> {
71
+ audio: {
72
+ input?: {
73
+ /**
74
+ * @default 1
75
+ */
76
+ channels?: number;
77
+ encoding: AudioEncoding;
78
+ /**
79
+ * @default false
80
+ */
81
+ multichannel?: boolean;
82
+ sampleRate: number;
83
+ };
84
+ /**
85
+ * @see https://developers.deepgram.com/docs/tts-media-output-settings#audio-format-combinations
86
+ */
87
+ output?: AudioFormat;
88
+ };
89
+ agent: {
90
+ listen: {
91
+ /**
92
+ * @see https://developers.deepgram.com/docs/model
93
+ */
94
+ model: ListenModel;
95
+ };
96
+ speak: {
97
+ /**
98
+ * @see https://developers.deepgram.com/docs/tts-models
99
+ */
100
+ model: SpeakModel;
101
+ };
102
+ /**
103
+ * @see https://developers.deepgram.com/reference/voicebot-api-phase-preview#supported-llm-providers-and-models
104
+ */
105
+ think: ThinkModel;
106
+ };
107
+ context?: {
108
+ /**
109
+ * LLM message history (e.g. to restore existing conversation if websocket disconnects)
110
+ */
111
+ messages: {
112
+ type: "user" | "assistant";
113
+ content: string;
114
+ }[];
115
+ /**
116
+ * Whether to replay the last message, if it is an assistant message.
117
+ */
118
+ replay: boolean;
119
+ };
120
+ }
121
+ export type { AgentLiveSchema, SpeakModel };
122
+ //# sourceMappingURL=AgentLiveSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentLiveSchema.d.ts","sourceRoot":"","sources":["../../../../src/lib/types/AgentLiveSchema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=AgentLiveSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentLiveSchema.js","sourceRoot":"","sources":["../../../../src/lib/types/AgentLiveSchema.ts"],"names":[],"mappings":""}
@@ -67,6 +67,7 @@ export interface DeepgramClientOptions {
67
67
  onprem?: NamespaceOptions;
68
68
  read?: NamespaceOptions;
69
69
  speak?: NamespaceOptions;
70
+ agent?: NamespaceOptions;
70
71
  /**
71
72
  * @deprecated as of 3.4, use a namespace like `global` instead
72
73
  */
@@ -1 +1 @@
1
- {"version":3,"file":"DeepgramClientOptions.d.ts","sourceRoot":"","sources":["../../../../src/lib/types/DeepgramClientOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE9C,oBAAY,WAAW,GAAG,MAAM,MAAM,CAAC;AACvC,oBAAY,MAAM,GAAG,OAAO,KAAK,CAAC;AAClC,oBAAY,UAAU,GAAG,OAAO,SAAS,CAAC;AAE1C,UAAU,qBAAsB,SAAQ,gBAAgB,EAAE,YAAY;CAAG;AACzE,UAAU,yBAA0B,SAAQ,gBAAgB;IAC1D,gBAAgB,CAAC,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;CAC7C;AAED,aAAK,YAAY,GAAG,MAAM,CAAC;AAE3B,UAAU,gBAAgB;IACxB,GAAG,CAAC,EAAE,YAAY,CAAC;IACnB,KAAK,CAAC,EAAE;QACN,GAAG,EAAE,YAAY,CAAC;KACnB,CAAC;CACH;AAED,UAAU,UAAU,CAAC,CAAC,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,OAAO,CAAC,EAAE,CAAC,CAAC;CACb;AAED,oBAAY,uBAAuB,GAAG;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE;QACL,OAAO,EAAE;YAAE,GAAG,EAAE,YAAY,CAAA;SAAE,CAAC;KAChC,CAAC;IACF,SAAS,EAAE;QACT,OAAO,EAAE;YAAE,GAAG,EAAE,YAAY,CAAA;SAAE,CAAC;KAChC,CAAC;CACH,GAAG,gBAAgB,CAAC;AAErB,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,UAAU,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAClD,SAAS,CAAC,EAAE,UAAU,CAAC,UAAU,EAAE,yBAAyB,CAAC,CAAC;CAC/D;AAED,oBAAY,oBAAoB,GAAG;IACjC,MAAM,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAC;CAC1C,GAAG,qBAAqB,CAAC;AAE1B;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,qBAAqB;IACpC,GAAG,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,MAAM,CAAC,EAAE,gBAAgB,GAAG;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE;YAAE,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAA;SAAE,CAAA;KAAE,CAAC;IACjF,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,KAAK,CAAC,EAAE,gBAAgB,CAAC;IAEzB;;OAEG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC;IAErB;;OAEG;IACH,wBAAwB,CAAC,EAAE,KAAK,CAAC;IAEjC;;OAEG;IACH,SAAS,CAAC,EAAE;QACV,GAAG,EAAE,IAAI,GAAG,MAAM,CAAC;KACpB,CAAC;CACH"}
1
+ {"version":3,"file":"DeepgramClientOptions.d.ts","sourceRoot":"","sources":["../../../../src/lib/types/DeepgramClientOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE9C,oBAAY,WAAW,GAAG,MAAM,MAAM,CAAC;AACvC,oBAAY,MAAM,GAAG,OAAO,KAAK,CAAC;AAClC,oBAAY,UAAU,GAAG,OAAO,SAAS,CAAC;AAE1C,UAAU,qBAAsB,SAAQ,gBAAgB,EAAE,YAAY;CAAG;AACzE,UAAU,yBAA0B,SAAQ,gBAAgB;IAC1D,gBAAgB,CAAC,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;CAC7C;AAED,aAAK,YAAY,GAAG,MAAM,CAAC;AAE3B,UAAU,gBAAgB;IACxB,GAAG,CAAC,EAAE,YAAY,CAAC;IACnB,KAAK,CAAC,EAAE;QACN,GAAG,EAAE,YAAY,CAAC;KACnB,CAAC;CACH;AAED,UAAU,UAAU,CAAC,CAAC,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,OAAO,CAAC,EAAE,CAAC,CAAC;CACb;AAED,oBAAY,uBAAuB,GAAG;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE;QACL,OAAO,EAAE;YAAE,GAAG,EAAE,YAAY,CAAA;SAAE,CAAC;KAChC,CAAC;IACF,SAAS,EAAE;QACT,OAAO,EAAE;YAAE,GAAG,EAAE,YAAY,CAAA;SAAE,CAAC;KAChC,CAAC;CACH,GAAG,gBAAgB,CAAC;AAErB,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,UAAU,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAClD,SAAS,CAAC,EAAE,UAAU,CAAC,UAAU,EAAE,yBAAyB,CAAC,CAAC;CAC/D;AAED,oBAAY,oBAAoB,GAAG;IACjC,MAAM,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAC;CAC1C,GAAG,qBAAqB,CAAC;AAE1B;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,qBAAqB;IACpC,GAAG,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,MAAM,CAAC,EAAE,gBAAgB,GAAG;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE;YAAE,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAA;SAAE,CAAA;KAAE,CAAC;IACjF,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,KAAK,CAAC,EAAE,gBAAgB,CAAC;IAEzB;;OAEG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC;IAErB;;OAEG;IACH,wBAAwB,CAAC,EAAE,KAAK,CAAC;IAEjC;;OAEG;IACH,SAAS,CAAC,EAAE;QACV,GAAG,EAAE,IAAI,GAAG,MAAM,CAAC;KACpB,CAAC;CACH"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Respond with this when you receive a `FunctionCallRequest` payload.
3
+ */
4
+ export interface FunctionCallResponse {
5
+ /**
6
+ * This must be the ID that was received in the request.
7
+ */
8
+ function_call_id: string;
9
+ /**
10
+ * The result of the function call.
11
+ */
12
+ output: string;
13
+ }
14
+ //# sourceMappingURL=FunctionCallResponse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FunctionCallResponse.d.ts","sourceRoot":"","sources":["../../../../src/lib/types/FunctionCallResponse.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=FunctionCallResponse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FunctionCallResponse.js","sourceRoot":"","sources":["../../../../src/lib/types/FunctionCallResponse.ts"],"names":[],"mappings":""}
@@ -30,5 +30,6 @@ export interface LiveTranscriptionEvent {
30
30
  };
31
31
  model_uuid: string;
32
32
  };
33
+ from_finalize?: boolean;
33
34
  }
34
35
  //# sourceMappingURL=LiveTranscriptionEvent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LiveTranscriptionEvent.d.ts","sourceRoot":"","sources":["../../../../src/lib/types/LiveTranscriptionEvent.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,SAAS,CAAC;IAChB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,EAAE;QACP,YAAY,EAAE;YACZ,UAAU,EAAE,MAAM,CAAC;YACnB,UAAU,EAAE,MAAM,CAAC;YACnB,SAAS,EAAE,MAAM,EAAE,CAAC;YACpB,KAAK,EAAE;gBACL,IAAI,EAAE,MAAM,CAAC;gBACb,KAAK,EAAE,MAAM,CAAC;gBACd,GAAG,EAAE,MAAM,CAAC;gBACZ,UAAU,EAAE,MAAM,CAAC;gBACnB,QAAQ,EAAE,MAAM,CAAC;gBACjB,eAAe,EAAE,MAAM,CAAC;gBACxB,OAAO,CAAC,EAAE,MAAM,CAAC;aAClB,EAAE,CAAC;SACL,EAAE,CAAC;KACL,CAAC;IACF,QAAQ,EAAE;QACR,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE;YACV,IAAI,EAAE,MAAM,CAAC;YACb,OAAO,EAAE,MAAM,CAAC;YAChB,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;QACF,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH"}
1
+ {"version":3,"file":"LiveTranscriptionEvent.d.ts","sourceRoot":"","sources":["../../../../src/lib/types/LiveTranscriptionEvent.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,SAAS,CAAC;IAChB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,EAAE;QACP,YAAY,EAAE;YACZ,UAAU,EAAE,MAAM,CAAC;YACnB,UAAU,EAAE,MAAM,CAAC;YACnB,SAAS,EAAE,MAAM,EAAE,CAAC;YACpB,KAAK,EAAE;gBACL,IAAI,EAAE,MAAM,CAAC;gBACb,KAAK,EAAE,MAAM,CAAC;gBACd,GAAG,EAAE,MAAM,CAAC;gBACZ,UAAU,EAAE,MAAM,CAAC;gBACnB,QAAQ,EAAE,MAAM,CAAC;gBACjB,eAAe,EAAE,MAAM,CAAC;gBACxB,OAAO,CAAC,EAAE,MAAM,CAAC;aAClB,EAAE,CAAC;SACL,EAAE,CAAC;KACL,CAAC;IACF,QAAQ,EAAE;QACR,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE;YACV,IAAI,EAAE,MAAM,CAAC;YACb,OAAO,EAAE,MAAM,CAAC;YAChB,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;QACF,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB"}
@@ -1,3 +1,4 @@
1
+ export * from "./AgentLiveSchema";
1
2
  export * from "./AnalyzeSchema";
2
3
  export * from "./AsyncAnalyzeResponse";
3
4
  export * from "./AsyncPrerecordedResponse";
@@ -8,6 +9,7 @@ export * from "./DeepgramClientOptions";
8
9
  export * from "./DeepgramResponse";
9
10
  export * from "./DeepgramSource";
10
11
  export * from "./Fetch";
12
+ export * from "./FunctionCallResponse";
11
13
  export * from "./GetModelsResponse";
12
14
  export * from "./GetModelsSchema";
13
15
  export * from "./GetProjectBalancesResponse";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,SAAS,CAAC;AACxB,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mCAAmC,CAAC;AAClD,cAAc,iCAAiC,CAAC;AAChD,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,kCAAkC,CAAC;AACjD,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,SAAS,CAAC;AACxB,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mCAAmC,CAAC;AAClD,cAAc,iCAAiC,CAAC;AAChD,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,kCAAkC,CAAC;AACjD,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC"}
@@ -1,3 +1,4 @@
1
+ export * from "./AgentLiveSchema";
1
2
  export * from "./AnalyzeSchema";
2
3
  export * from "./AsyncAnalyzeResponse";
3
4
  export * from "./AsyncPrerecordedResponse";
@@ -8,6 +9,7 @@ export * from "./DeepgramClientOptions";
8
9
  export * from "./DeepgramResponse";
9
10
  export * from "./DeepgramSource";
10
11
  export * from "./Fetch";
12
+ export * from "./FunctionCallResponse";
11
13
  export * from "./GetModelsResponse";
12
14
  export * from "./GetModelsSchema";
13
15
  export * from "./GetProjectBalancesResponse";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,SAAS,CAAC;AACxB,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mCAAmC,CAAC;AAClD,cAAc,iCAAiC,CAAC;AAChD,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,kCAAkC,CAAC;AACjD,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,SAAS,CAAC;AACxB,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mCAAmC,CAAC;AAClD,cAAc,iCAAiC,CAAC;AAChD,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,kCAAkC,CAAC;AACjD,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const version = "3.9.0";
1
+ export declare const version = "3.10.1";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1,2 +1,2 @@
1
- export const version = "3.9.0";
1
+ export const version = "3.10.1";
2
2
  //# sourceMappingURL=version.js.map
@@ -198,8 +198,8 @@ export class AbstractLiveClient extends AbstractClient {
198
198
  data = yield data.arrayBuffer();
199
199
  }
200
200
  if (typeof data !== "string") {
201
- if (data.byteLength === 0) {
202
- this.log("warn", "skipping `send` for zero-byte blob", data);
201
+ if (!(data === null || data === void 0 ? void 0 : data.byteLength)) {
202
+ this.log("warn", "skipping `send` for zero-byte payload", data);
203
203
  return;
204
204
  }
205
205
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractLiveClient.js","sourceRoot":"","sources":["../../../src/packages/AbstractLiveClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AbstractLiveClient.js","sourceRoot":"","sources":["../../../src/packages/AbstractLiveClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,85 @@
1
+ /// <reference types="node" />
2
+ import type { AgentLiveSchema, SpeakModel, DeepgramClientOptions, FunctionCallResponse } from "../lib/types";
3
+ import { AbstractLiveClient } from "./AbstractLiveClient";
4
+ export declare class AgentLiveClient extends AbstractLiveClient {
5
+ namespace: string;
6
+ constructor(options: DeepgramClientOptions, endpoint?: string);
7
+ /**
8
+ * Sets up the connection event handlers.
9
+ * This method is responsible for handling the various events that can occur on the WebSocket connection, such as opening, closing, and receiving messages.
10
+ * - When the connection is opened, it emits the `AgentEvents.Open` event.
11
+ * - When the connection is closed, it emits the `AgentEvents.Close` event.
12
+ * - When an error occurs on the connection, it emits the `AgentEvents.Error` event.
13
+ * - When a message is received, it parses the message and emits the appropriate event based on the message type.
14
+ */
15
+ setupConnection(): void;
16
+ /**
17
+ * Handles incoming messages from the WebSocket connection.
18
+ * @param event - The MessageEvent object representing the received message.
19
+ */
20
+ protected handleMessage(event: MessageEvent): void;
21
+ /**
22
+ * Handles binary messages received from the WebSocket connection.
23
+ * @param data - The binary data.
24
+ */
25
+ protected handleBinaryMessage(data: Buffer): void;
26
+ /**
27
+ * Handles text messages received from the WebSocket connection.
28
+ * @param data - The parsed JSON data.
29
+ */
30
+ protected handleTextMessage(data: any): void;
31
+ /**
32
+ * To be called with your model configuration BEFORE sending
33
+ * any audio data.
34
+ * @param options - The SettingsConfiguration object.
35
+ * @param options.audio.input.encoding - The encoding for your inbound (user) audio.
36
+ * @param options.audio.input.sampleRate - The sample rate for your inbound (user) audio.
37
+ * @param options.audio.output.encoding - The encoding for your outbound (agent) audio.
38
+ * @param options.audio.output.sampleRate - The sample rate for your outbound (agent) audio.
39
+ * @param options.audio.output.bitrate - The bitrate for your outbound (agent) audio.
40
+ * @param options.audio.output.container - The container for your outbound (agent) audio.
41
+ * @param options.agent.listen.model - The STT model to use for processing user audio.
42
+ * @param options.agent.speak.model - The TTS model to use for generating agent audio.
43
+ * @param options.agent.think.provider.type - The LLM provider to use.
44
+ * @param options.agent.think.model - The LLM model to use.
45
+ * @param options.agent.think.instructions - The instructions to provide to the LLM.
46
+ * @param options.agent.think.functions - The functions to provide to the LLM.
47
+ * @param options.context.messages - The message history to provide to the LLM (useful if a websocket connection is lost.)
48
+ * @param options.context.replay - Whether to replay the last message if it was an assistant message.
49
+ */
50
+ configure(options: AgentLiveSchema): void;
51
+ /**
52
+ * Provide new instructions to the LLM.
53
+ * @param instructions - The instructions to provide.
54
+ */
55
+ updateInstructions(instructions: string): void;
56
+ /**
57
+ * Change the speak model.
58
+ * @param model - The new model to use.
59
+ */
60
+ updateSpeak(model: SpeakModel): void;
61
+ /**
62
+ * Immediately trigger an agent message. If this message
63
+ * is sent while the user is speaking, or while the server is in the
64
+ * middle of sending audio, then the request will be ignored and an InjectionRefused
65
+ * event will be emitted.
66
+ * @example "Hold on while I look that up for you."
67
+ * @example "Are you still on the line?"
68
+ * @param message - The message to speak.
69
+ */
70
+ injectAgentMessage(message: string): void;
71
+ /**
72
+ * Respond to a function call request.
73
+ * @param response - The response to the function call request.
74
+ * @param response.function_call_id - The ID that was received in the request (these MUST match).
75
+ * @param response.output - The result of the function call.
76
+ */
77
+ functionCallResponse(response: FunctionCallResponse): void;
78
+ /**
79
+ * Send a keepalive to avoid closing the websocket while you
80
+ * are not transmitting audio. This should be sent at least
81
+ * every 8 seconds.
82
+ */
83
+ keepAlive(): void;
84
+ }
85
+ //# sourceMappingURL=AgentLiveClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentLiveClient.d.ts","sourceRoot":"","sources":["../../../src/packages/AgentLiveClient.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,EACV,eAAe,EACf,UAAU,EACV,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,qBAAa,eAAgB,SAAQ,kBAAkB;IAC9C,SAAS,EAAE,MAAM,CAAW;gBAEvB,OAAO,EAAE,qBAAqB,EAAE,QAAQ,GAAE,MAAiB;IAOvE;;;;;;;OAOG;IACI,eAAe,IAAI,IAAI;IAoB9B;;;OAGG;IACH,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IA6BlD;;;OAGG;IACH,SAAS,CAAC,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIjD;;;OAGG;IACH,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI;IAQ5C;;;;;;;;;;;;;;;;;;OAkBG;IACI,SAAS,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;IAUhD;;;OAGG;IACI,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAIrD;;;OAGG;IACI,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAI3C;;;;;;;;OAQG;IACI,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIhD;;;;;OAKG;IACI,oBAAoB,CAAC,QAAQ,EAAE,oBAAoB,GAAG,IAAI;IAIjE;;;;OAIG;IACI,SAAS,IAAI,IAAI;CAGzB"}
@@ -0,0 +1,165 @@
1
+ import { DEFAULT_AGENT_URL } from "../lib/constants";
2
+ import { AgentEvents } from "../lib/enums/AgentEvents";
3
+ import { AbstractLiveClient } from "./AbstractLiveClient";
4
+ export class AgentLiveClient extends AbstractLiveClient {
5
+ constructor(options, endpoint = "/agent") {
6
+ var _a, _b, _c, _d;
7
+ super(options);
8
+ this.namespace = "agent";
9
+ this.baseUrl = (_d = (_c = (_b = (_a = options.agent) === null || _a === void 0 ? void 0 : _a.websocket) === null || _b === void 0 ? void 0 : _b.options) === null || _c === void 0 ? void 0 : _c.url) !== null && _d !== void 0 ? _d : DEFAULT_AGENT_URL;
10
+ this.connect({}, endpoint);
11
+ }
12
+ /**
13
+ * Sets up the connection event handlers.
14
+ * This method is responsible for handling the various events that can occur on the WebSocket connection, such as opening, closing, and receiving messages.
15
+ * - When the connection is opened, it emits the `AgentEvents.Open` event.
16
+ * - When the connection is closed, it emits the `AgentEvents.Close` event.
17
+ * - When an error occurs on the connection, it emits the `AgentEvents.Error` event.
18
+ * - When a message is received, it parses the message and emits the appropriate event based on the message type.
19
+ */
20
+ setupConnection() {
21
+ if (this.conn) {
22
+ this.conn.onopen = () => {
23
+ this.emit(AgentEvents.Open, this);
24
+ };
25
+ this.conn.onclose = (event) => {
26
+ this.emit(AgentEvents.Close, event);
27
+ };
28
+ this.conn.onerror = (event) => {
29
+ this.emit(AgentEvents.Error, event);
30
+ };
31
+ this.conn.onmessage = (event) => {
32
+ this.handleMessage(event);
33
+ };
34
+ }
35
+ }
36
+ /**
37
+ * Handles incoming messages from the WebSocket connection.
38
+ * @param event - The MessageEvent object representing the received message.
39
+ */
40
+ handleMessage(event) {
41
+ if (typeof event.data === "string") {
42
+ try {
43
+ const data = JSON.parse(event.data);
44
+ this.handleTextMessage(data);
45
+ }
46
+ catch (error) {
47
+ this.emit(AgentEvents.Error, {
48
+ event,
49
+ message: "Unable to parse `data` as JSON.",
50
+ error,
51
+ });
52
+ }
53
+ }
54
+ else if (event.data instanceof Blob) {
55
+ event.data.arrayBuffer().then((buffer) => {
56
+ this.handleBinaryMessage(Buffer.from(buffer));
57
+ });
58
+ }
59
+ else if (event.data instanceof ArrayBuffer) {
60
+ this.handleBinaryMessage(Buffer.from(event.data));
61
+ }
62
+ else if (Buffer.isBuffer(event.data)) {
63
+ this.handleBinaryMessage(event.data);
64
+ }
65
+ else {
66
+ console.log("Received unknown data type", event.data);
67
+ this.emit(AgentEvents.Error, {
68
+ event,
69
+ message: "Received unknown data type.",
70
+ });
71
+ }
72
+ }
73
+ /**
74
+ * Handles binary messages received from the WebSocket connection.
75
+ * @param data - The binary data.
76
+ */
77
+ handleBinaryMessage(data) {
78
+ this.emit(AgentEvents.Audio, data);
79
+ }
80
+ /**
81
+ * Handles text messages received from the WebSocket connection.
82
+ * @param data - The parsed JSON data.
83
+ */
84
+ handleTextMessage(data) {
85
+ if (data.type in AgentEvents) {
86
+ this.emit(data.type, data);
87
+ }
88
+ else {
89
+ this.emit(AgentEvents.Unhandled, data);
90
+ }
91
+ }
92
+ /**
93
+ * To be called with your model configuration BEFORE sending
94
+ * any audio data.
95
+ * @param options - The SettingsConfiguration object.
96
+ * @param options.audio.input.encoding - The encoding for your inbound (user) audio.
97
+ * @param options.audio.input.sampleRate - The sample rate for your inbound (user) audio.
98
+ * @param options.audio.output.encoding - The encoding for your outbound (agent) audio.
99
+ * @param options.audio.output.sampleRate - The sample rate for your outbound (agent) audio.
100
+ * @param options.audio.output.bitrate - The bitrate for your outbound (agent) audio.
101
+ * @param options.audio.output.container - The container for your outbound (agent) audio.
102
+ * @param options.agent.listen.model - The STT model to use for processing user audio.
103
+ * @param options.agent.speak.model - The TTS model to use for generating agent audio.
104
+ * @param options.agent.think.provider.type - The LLM provider to use.
105
+ * @param options.agent.think.model - The LLM model to use.
106
+ * @param options.agent.think.instructions - The instructions to provide to the LLM.
107
+ * @param options.agent.think.functions - The functions to provide to the LLM.
108
+ * @param options.context.messages - The message history to provide to the LLM (useful if a websocket connection is lost.)
109
+ * @param options.context.replay - Whether to replay the last message if it was an assistant message.
110
+ */
111
+ configure(options) {
112
+ var _a, _b;
113
+ // Converting the property names...
114
+ const opts = Object.assign({}, options);
115
+ opts.audio.input["sample_rate"] = (_a = options.audio.input) === null || _a === void 0 ? void 0 : _a.sampleRate;
116
+ delete opts.audio.input.sampleRate;
117
+ opts.audio.output["sample_rate"] = (_b = options.audio.output) === null || _b === void 0 ? void 0 : _b.sampleRate;
118
+ delete opts.audio.output.sampleRate;
119
+ this.send(JSON.stringify(Object.assign({ type: "SettingsConfiguration" }, opts)));
120
+ }
121
+ /**
122
+ * Provide new instructions to the LLM.
123
+ * @param instructions - The instructions to provide.
124
+ */
125
+ updateInstructions(instructions) {
126
+ this.send(JSON.stringify({ type: "UpdateInstructions", instructions }));
127
+ }
128
+ /**
129
+ * Change the speak model.
130
+ * @param model - The new model to use.
131
+ */
132
+ updateSpeak(model) {
133
+ this.send(JSON.stringify({ type: "UpdateSpeak", model }));
134
+ }
135
+ /**
136
+ * Immediately trigger an agent message. If this message
137
+ * is sent while the user is speaking, or while the server is in the
138
+ * middle of sending audio, then the request will be ignored and an InjectionRefused
139
+ * event will be emitted.
140
+ * @example "Hold on while I look that up for you."
141
+ * @example "Are you still on the line?"
142
+ * @param message - The message to speak.
143
+ */
144
+ injectAgentMessage(message) {
145
+ this.send(JSON.stringify({ type: "InjectAgentMessage", message }));
146
+ }
147
+ /**
148
+ * Respond to a function call request.
149
+ * @param response - The response to the function call request.
150
+ * @param response.function_call_id - The ID that was received in the request (these MUST match).
151
+ * @param response.output - The result of the function call.
152
+ */
153
+ functionCallResponse(response) {
154
+ this.send(JSON.stringify(Object.assign({ type: "FunctionCallResponse" }, response)));
155
+ }
156
+ /**
157
+ * Send a keepalive to avoid closing the websocket while you
158
+ * are not transmitting audio. This should be sent at least
159
+ * every 8 seconds.
160
+ */
161
+ keepAlive() {
162
+ this.send(JSON.stringify({ type: "KeepAlive" }));
163
+ }
164
+ }
165
+ //# sourceMappingURL=AgentLiveClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentLiveClient.js","sourceRoot":"","sources":["../../../src/packages/AgentLiveClient.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  export * from "./AbstractClient";
2
2
  export * from "./AbstractLiveClient";
3
3
  export * from "./AbstractRestClient";
4
+ export * from "./AgentLiveClient";
4
5
  export * from "./ListenClient";
5
6
  export * from "./ListenLiveClient";
6
7
  export * from "./ListenRestClient";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/packages/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/packages/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC"}
@@ -1,6 +1,7 @@
1
1
  export * from "./AbstractClient";
2
2
  export * from "./AbstractLiveClient";
3
3
  export * from "./AbstractRestClient";
4
+ export * from "./AgentLiveClient";
4
5
  export * from "./ListenClient";
5
6
  export * from "./ListenLiveClient";
6
7
  export * from "./ListenRestClient";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/packages/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/packages/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC"}