@voicethere/agent 0.8.1 → 0.8.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -9
- package/dist/agent.js +45 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/protocol.d.ts +36 -2
- package/dist/protocol.d.ts.map +1 -1
- package/dist/protocol.js.map +1 -1
- package/dist/runtime.d.ts +11 -1
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +95 -0
- package/dist/runtime.js.map +1 -1
- package/dist/templates/echo/agent.js +39 -1
- package/dist/templates/echo-dc/agent.js +39 -1
- package/dist/templates/game-sync/agent.js +39 -1
- package/dist/templates/positional-tts/agent.js +39 -1
- package/dist/templates/recording-consent/agent.js +39 -1
- package/dist/templates/spatial-showcase/agent.js +45 -4
- package/dist/templates/voice-showcase/agent.js +39 -1
- package/dist/templates/voice-starter/agent.js +39 -1
- package/dist/templates/webhooks/agent.js +39 -1
- package/dist/templates/webhooks-redis/agent.js +39 -1
- package/dist/templates/world-sync/agent.js +39 -1
- package/dist/templates/world-sync-binary/agent.js +39 -1
- package/package.json +1 -1
- package/templates/spatial-showcase/agent.ts +4 -3
- package/templates/spatial-showcase/sounds.ts +2 -0
package/README.md
CHANGED
|
@@ -180,15 +180,16 @@ On plans that include project Redis, the runner injects **`AGENT_REDIS_URL`** in
|
|
|
180
180
|
|
|
181
181
|
For inbound HTTP webhooks, configure **`AGENT_WEBHOOK_SIGNING_SECRET`** in project settings. The runner forwards the exact request bytes on process-wide **`onWebhook`** IPC (not session-queued). Verify HMAC on `ctx.body` before `JSON.parse` — VoiceThere does not verify signatures in the SDK. See [`templates/webhooks/agent.ts`](./templates/webhooks/agent.ts).
|
|
182
182
|
|
|
183
|
-
| Export
|
|
184
|
-
|
|
|
185
|
-
| `defineAgent`
|
|
186
|
-
| `SpeechEvent`, `SpeechEventType`
|
|
187
|
-
| `SPEECH_EVENT_TYPE`
|
|
188
|
-
| `speak`
|
|
189
|
-
| `startRecording` / `pauseRecording` / `resumeRecording` / `stopRecording`
|
|
190
|
-
| `
|
|
191
|
-
| `
|
|
183
|
+
| Export | Purpose |
|
|
184
|
+
| -------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
|
|
185
|
+
| `defineAgent` | Register `onAgentStart`, `onWebhook`, `onSessionStart`, `onSpeechEvent`, `onUserSpeechFinal`, `onUserLanguage`, `onSessionEnd` |
|
|
186
|
+
| `SpeechEvent`, `SpeechEventType` | Re-exported **types** from `@node-webrtc-rust/sdk/voice` |
|
|
187
|
+
| `SPEECH_EVENT_TYPE` | Import from `@node-webrtc-rust/sdk/voice` (runtime constants; not bundled into child) |
|
|
188
|
+
| `speak` | Request parent TTS |
|
|
189
|
+
| `startRecording` / `pauseRecording` / `resumeRecording` / `stopRecording` | Request parent conversation recording control |
|
|
190
|
+
| `setConversationHistoryEnabled` / `enableConversationHistory` / `disableConversationHistory` | Stop or resume conversation history storage for one session |
|
|
191
|
+
| `agentLog` | Forward structured logs to parent |
|
|
192
|
+
| `ParentToChildMessage` / `ChildToParentMessage` | IPC contract shared with the VoiceThere agent runner |
|
|
192
193
|
|
|
193
194
|
### Runner runtime subpath (minimal shared sandbox API)
|
|
194
195
|
|
package/dist/agent.js
CHANGED
|
@@ -155,6 +155,11 @@ function isRecordingControlAckMessage(value) {
|
|
|
155
155
|
const msg = value;
|
|
156
156
|
return msg.type === "recording_control_ack" && typeof msg.requestId === "string";
|
|
157
157
|
}
|
|
158
|
+
function isConversationHistoryControlAckMessage(value) {
|
|
159
|
+
if (!value || typeof value !== "object") return false;
|
|
160
|
+
const msg = value;
|
|
161
|
+
return msg.type === "conversation_history_control_ack" && typeof msg.requestId === "string";
|
|
162
|
+
}
|
|
158
163
|
function isMixControlAckMessage(value) {
|
|
159
164
|
if (!value || typeof value !== "object") return false;
|
|
160
165
|
const msg = value;
|
|
@@ -201,7 +206,7 @@ function normalizeWebhookHeaders(value) {
|
|
|
201
206
|
function isParentMessage(value) {
|
|
202
207
|
if (!value || typeof value !== "object") return false;
|
|
203
208
|
const msg = value;
|
|
204
|
-
return msg.type === "session_start" || msg.type === "speech_event" || msg.type === "session_end" || msg.type === "data_channel_message" || msg.type === "data_channel_binary" || msg.type === "idle_timeout" || msg.type === "recording_control_ack" || msg.type === "play_ack" || msg.type === "play_status_ack" || msg.type === "play_stop_ack" || msg.type === "play_pose_ack" || msg.type === "mix_control_ack" || msg.type === "stt_control_ack" || msg.type === "webhook";
|
|
209
|
+
return msg.type === "session_start" || msg.type === "speech_event" || msg.type === "session_end" || msg.type === "data_channel_message" || msg.type === "data_channel_binary" || msg.type === "idle_timeout" || msg.type === "recording_control_ack" || msg.type === "conversation_history_control_ack" || msg.type === "play_ack" || msg.type === "play_status_ack" || msg.type === "play_stop_ack" || msg.type === "play_pose_ack" || msg.type === "mix_control_ack" || msg.type === "stt_control_ack" || msg.type === "webhook";
|
|
205
210
|
}
|
|
206
211
|
function isSessionScopedParentMessage(value) {
|
|
207
212
|
return isParentMessage(value) && !isWebhookMessage(value);
|
|
@@ -215,11 +220,13 @@ function parseDataChannelPayload(raw) {
|
|
|
215
220
|
}
|
|
216
221
|
var peerEnvBySessionId = /* @__PURE__ */ new Map();
|
|
217
222
|
var recordingAvailableBySessionId = /* @__PURE__ */ new Map();
|
|
223
|
+
var conversationHistoryAvailableBySessionId = /* @__PURE__ */ new Map();
|
|
218
224
|
var mixAvailableBySessionId = /* @__PURE__ */ new Map();
|
|
219
225
|
var ttsPoseAvailableBySessionId = /* @__PURE__ */ new Map();
|
|
220
226
|
var endedSessionIds = /* @__PURE__ */ new Set();
|
|
221
227
|
var PLAY_BYTES_MAX_DECODED_LENGTH = 64 * 1024;
|
|
222
228
|
var pendingRecordingAcks = /* @__PURE__ */ new Map();
|
|
229
|
+
var pendingConversationHistoryAcks = /* @__PURE__ */ new Map();
|
|
223
230
|
var pendingPlayAcks = /* @__PURE__ */ new Map();
|
|
224
231
|
var pendingPlayStatusAcks = /* @__PURE__ */ new Map();
|
|
225
232
|
var pendingPlayStopAcks = /* @__PURE__ */ new Map();
|
|
@@ -237,6 +244,17 @@ function handleRecordingControlAck(message) {
|
|
|
237
244
|
requestId: message.requestId
|
|
238
245
|
});
|
|
239
246
|
}
|
|
247
|
+
function handleConversationHistoryControlAck(message) {
|
|
248
|
+
const pending = pendingConversationHistoryAcks.get(message.requestId);
|
|
249
|
+
if (!pending) return;
|
|
250
|
+
clearTimeout(pending.timer);
|
|
251
|
+
pendingConversationHistoryAcks.delete(message.requestId);
|
|
252
|
+
pending.resolve({
|
|
253
|
+
ok: message.ok,
|
|
254
|
+
reason: message.reason,
|
|
255
|
+
requestId: message.requestId
|
|
256
|
+
});
|
|
257
|
+
}
|
|
240
258
|
function handlePlayAck(message) {
|
|
241
259
|
const pending = pendingPlayAcks.get(message.requestId);
|
|
242
260
|
if (!pending) return;
|
|
@@ -317,6 +335,14 @@ function clearPendingRecordingAcksForSession(sessionId, reason) {
|
|
|
317
335
|
pending.resolve({ ok: false, reason, requestId });
|
|
318
336
|
}
|
|
319
337
|
}
|
|
338
|
+
function clearPendingConversationHistoryAcksForSession(sessionId, reason) {
|
|
339
|
+
for (const [requestId, pending] of pendingConversationHistoryAcks) {
|
|
340
|
+
if (pending.sessionId !== sessionId) continue;
|
|
341
|
+
clearTimeout(pending.timer);
|
|
342
|
+
pendingConversationHistoryAcks.delete(requestId);
|
|
343
|
+
pending.resolve({ ok: false, reason, requestId });
|
|
344
|
+
}
|
|
345
|
+
}
|
|
320
346
|
var sessionExecutionContext = new AsyncLocalStorage();
|
|
321
347
|
var agentLogSessionContext = new AsyncLocalStorage();
|
|
322
348
|
var inboundQueueAuthority = null;
|
|
@@ -466,6 +492,10 @@ async function handleParentMessage(message, handlers) {
|
|
|
466
492
|
message.sessionId,
|
|
467
493
|
message.recordingAvailable ?? false
|
|
468
494
|
);
|
|
495
|
+
conversationHistoryAvailableBySessionId.set(
|
|
496
|
+
message.sessionId,
|
|
497
|
+
message.conversationHistoryAvailable ?? false
|
|
498
|
+
);
|
|
469
499
|
mixAvailableBySessionId.set(
|
|
470
500
|
message.sessionId,
|
|
471
501
|
message.mixAvailable ?? false
|
|
@@ -484,6 +514,7 @@ async function handleParentMessage(message, handlers) {
|
|
|
484
514
|
sessionId: message.sessionId,
|
|
485
515
|
env: message.env,
|
|
486
516
|
recordingAvailable: message.recordingAvailable ?? false,
|
|
517
|
+
conversationHistoryAvailable: message.conversationHistoryAvailable ?? false,
|
|
487
518
|
mixAvailable: message.mixAvailable ?? false,
|
|
488
519
|
ttsPoseAvailable: message.ttsPoseAvailable ?? false
|
|
489
520
|
});
|
|
@@ -533,8 +564,13 @@ async function handleParentMessage(message, handlers) {
|
|
|
533
564
|
break;
|
|
534
565
|
case "session_end":
|
|
535
566
|
clearPendingRecordingAcksForSession(message.sessionId, "session_ended");
|
|
567
|
+
clearPendingConversationHistoryAcksForSession(
|
|
568
|
+
message.sessionId,
|
|
569
|
+
"session_ended"
|
|
570
|
+
);
|
|
536
571
|
peerEnvBySessionId.delete(message.sessionId);
|
|
537
572
|
recordingAvailableBySessionId.delete(message.sessionId);
|
|
573
|
+
conversationHistoryAvailableBySessionId.delete(message.sessionId);
|
|
538
574
|
mixAvailableBySessionId.delete(message.sessionId);
|
|
539
575
|
ttsPoseAvailableBySessionId.delete(message.sessionId);
|
|
540
576
|
await (handlers.onClientLeave ?? handlers.onSessionEnd)?.({
|
|
@@ -556,6 +592,10 @@ function defineAgent(handlers) {
|
|
|
556
592
|
handleRecordingControlAck(message);
|
|
557
593
|
return;
|
|
558
594
|
}
|
|
595
|
+
if (isConversationHistoryControlAckMessage(message)) {
|
|
596
|
+
handleConversationHistoryControlAck(message);
|
|
597
|
+
return;
|
|
598
|
+
}
|
|
559
599
|
if (isPlayAckMessage(message)) {
|
|
560
600
|
handlePlayAck(message);
|
|
561
601
|
return;
|
|
@@ -588,6 +628,10 @@ function defineAgent(handlers) {
|
|
|
588
628
|
if (message.type === "session_end") {
|
|
589
629
|
endedSessionIds.add(message.sessionId);
|
|
590
630
|
clearPendingRecordingAcksForSession(message.sessionId, "session_ended");
|
|
631
|
+
clearPendingConversationHistoryAcksForSession(
|
|
632
|
+
message.sessionId,
|
|
633
|
+
"session_ended"
|
|
634
|
+
);
|
|
591
635
|
inboundBySession.clear(message.sessionId);
|
|
592
636
|
}
|
|
593
637
|
if (message.type === "session_start") {
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export type { SpeechEvent, SpeechEventListener, SpeechEventName, SpeechEventType, } from "@node-webrtc-rust/sdk/voice";
|
|
2
|
-
export { ALLOWED_CHILD_ENV_KEYS, MIX_REQUIRES_VOICE_PLUS_DATA, TTS_POSE_REQUIRES_VOICE, type AgentErrorMessage, type AgentLogLevel, type AgentLogMessage, type AllowedChildEnvKey, type ChildToParentMessage, type ParentToChildMessage, type SessionEndMessage, type SessionStartMessage, type SendToClientMessage, type DataChannelMessageMessage, type DataChannelBinaryMessage, type DataChannelKind, type DisconnectClientMessage, type IdleTimeoutDoneMessage, type IdleTimeoutMessage, type RecordingControlMessage, type RecordingControlAckMessage, type RecordingControlAction, type RecordingControlResult, type PlayMessage, type PlayStatusMessage, type PlayStopMessage, type PlayPoseMessage, type PlayAckMessage, type PlayStatusAckMessage, type PlayStopAckMessage, type PlayPoseAckMessage, type PlayStatusState, type PlayResult, type GetPlayResult, type StopPlayResult, type PlayPoseResult, type MixControlMessage, type MixControlAckMessage, type MixControlAction, type MixControlResult, type ClientMixStatus, type ClientPose, type MixPlacement, type MixPose, type SttControlMessage, type SttControlAckMessage, type SttControlResult, type SendBinaryToClientMessage, type SpeakMessage, type SpeechEventMessage, type WebhookMessage, } from "./protocol.js";
|
|
3
|
-
export { agentLog, addClientToMix, createMixGroup, defineAgent, disconnectClient, getClientMixStatus, getPlay, isMixAvailable, isTtsPoseAvailable, parseChatText, pauseRecording, play, removeClientFromMix, resumeRecording, sendToClient, sendBinaryToClient, setClientPose, setDefaultMixPlacement, setGlobalMute, setListenerMute, setPositionalMixing, setSttEnabled, setTtsMixPlacement, setTtsPosition, setTtsPose, clearTtsPose, speak, speakAndChat, startRecording, stopRecording, stopPlay, setPlayPose, isRecordingAvailable, broadcastToClients, broadCastBinaryToClients, type AgentHandlers, type AgentErrorContext, type AgentStartContext, type DataChannelContext, type IdleTimeoutContext, type SessionContext, type SpeechContext, type SpeechEventContext, type UserLanguageContext, type WebhookContext, type PlayOptions, type AudioPosition, type SpeakAndChatOptions, PLAY_BYTES_MAX_DECODED_LENGTH, } from "./runtime.js";
|
|
2
|
+
export { ALLOWED_CHILD_ENV_KEYS, MIX_REQUIRES_VOICE_PLUS_DATA, TTS_POSE_REQUIRES_VOICE, type AgentErrorMessage, type AgentLogLevel, type AgentLogMessage, type AllowedChildEnvKey, type ChildToParentMessage, type ParentToChildMessage, type SessionEndMessage, type SessionStartMessage, type SendToClientMessage, type DataChannelMessageMessage, type DataChannelBinaryMessage, type DataChannelKind, type DisconnectClientMessage, type IdleTimeoutDoneMessage, type IdleTimeoutMessage, type RecordingControlMessage, type RecordingControlAckMessage, type RecordingControlAction, type RecordingControlResult, type ConversationHistoryControlMessage, type ConversationHistoryControlAckMessage, type ConversationHistoryControlResult, type PlayMessage, type PlayStatusMessage, type PlayStopMessage, type PlayPoseMessage, type PlayAckMessage, type PlayStatusAckMessage, type PlayStopAckMessage, type PlayPoseAckMessage, type PlayStatusState, type PlayResult, type GetPlayResult, type StopPlayResult, type PlayPoseResult, type MixControlMessage, type MixControlAckMessage, type MixControlAction, type MixControlResult, type ClientMixStatus, type ClientPose, type MixPlacement, type MixPose, type SttControlMessage, type SttControlAckMessage, type SttControlResult, type SendBinaryToClientMessage, type SpeakMessage, type SpeechEventMessage, type WebhookMessage, } from "./protocol.js";
|
|
3
|
+
export { agentLog, addClientToMix, createMixGroup, defineAgent, disableConversationHistory, disconnectClient, enableConversationHistory, getClientMixStatus, getPlay, isConversationHistoryAvailable, isMixAvailable, isTtsPoseAvailable, parseChatText, pauseRecording, play, removeClientFromMix, resumeRecording, sendToClient, sendBinaryToClient, setClientPose, setConversationHistoryEnabled, setDefaultMixPlacement, setGlobalMute, setListenerMute, setPositionalMixing, setSttEnabled, setTtsMixPlacement, setTtsPosition, setTtsPose, clearTtsPose, speak, speakAndChat, startRecording, stopRecording, stopPlay, setPlayPose, isRecordingAvailable, broadcastToClients, broadCastBinaryToClients, type AgentHandlers, type AgentErrorContext, type AgentStartContext, type DataChannelContext, type IdleTimeoutContext, type SessionContext, type SpeechContext, type SpeechEventContext, type UserLanguageContext, type WebhookContext, type PlayOptions, type AudioPosition, type SpeakAndChatOptions, PLAY_BYTES_MAX_DECODED_LENGTH, } from "./runtime.js";
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,WAAW,EACX,mBAAmB,EACnB,eAAe,EACf,eAAe,GAChB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC5B,uBAAuB,EACvB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,KAAK,wBAAwB,EAC7B,KAAK,eAAe,EACpB,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,0BAA0B,EAC/B,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,yBAAyB,EAC9B,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,cAAc,GACpB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,QAAQ,EACR,cAAc,EACd,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,OAAO,EACP,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,IAAI,EACJ,mBAAmB,EACnB,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,sBAAsB,EACtB,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,YAAY,EACZ,KAAK,EACL,YAAY,EACZ,cAAc,EACd,aAAa,EACb,QAAQ,EACR,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,wBAAwB,EACxB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,6BAA6B,GAC9B,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,WAAW,EACX,mBAAmB,EACnB,eAAe,EACf,eAAe,GAChB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC5B,uBAAuB,EACvB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,KAAK,wBAAwB,EAC7B,KAAK,eAAe,EACpB,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,0BAA0B,EAC/B,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,iCAAiC,EACtC,KAAK,oCAAoC,EACzC,KAAK,gCAAgC,EACrC,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,yBAAyB,EAC9B,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,cAAc,GACpB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,QAAQ,EACR,cAAc,EACd,cAAc,EACd,WAAW,EACX,0BAA0B,EAC1B,gBAAgB,EAChB,yBAAyB,EACzB,kBAAkB,EAClB,OAAO,EACP,8BAA8B,EAC9B,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,IAAI,EACJ,mBAAmB,EACnB,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,6BAA6B,EAC7B,sBAAsB,EACtB,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,YAAY,EACZ,KAAK,EACL,YAAY,EACZ,cAAc,EACd,aAAa,EACb,QAAQ,EACR,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,wBAAwB,EACxB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,6BAA6B,GAC9B,MAAM,cAAc,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { ALLOWED_CHILD_ENV_KEYS, MIX_REQUIRES_VOICE_PLUS_DATA, TTS_POSE_REQUIRES_VOICE, } from "./protocol.js";
|
|
2
|
-
export { agentLog, addClientToMix, createMixGroup, defineAgent, disconnectClient, getClientMixStatus, getPlay, isMixAvailable, isTtsPoseAvailable, parseChatText, pauseRecording, play, removeClientFromMix, resumeRecording, sendToClient, sendBinaryToClient, setClientPose, setDefaultMixPlacement, setGlobalMute, setListenerMute, setPositionalMixing, setSttEnabled, setTtsMixPlacement, setTtsPosition, setTtsPose, clearTtsPose, speak, speakAndChat, startRecording, stopRecording, stopPlay, setPlayPose, isRecordingAvailable, broadcastToClients, broadCastBinaryToClients, PLAY_BYTES_MAX_DECODED_LENGTH, } from "./runtime.js";
|
|
2
|
+
export { agentLog, addClientToMix, createMixGroup, defineAgent, disableConversationHistory, disconnectClient, enableConversationHistory, getClientMixStatus, getPlay, isConversationHistoryAvailable, isMixAvailable, isTtsPoseAvailable, parseChatText, pauseRecording, play, removeClientFromMix, resumeRecording, sendToClient, sendBinaryToClient, setClientPose, setConversationHistoryEnabled, setDefaultMixPlacement, setGlobalMute, setListenerMute, setPositionalMixing, setSttEnabled, setTtsMixPlacement, setTtsPosition, setTtsPose, clearTtsPose, speak, speakAndChat, startRecording, stopRecording, stopPlay, setPlayPose, isRecordingAvailable, broadcastToClients, broadCastBinaryToClients, PLAY_BYTES_MAX_DECODED_LENGTH, } from "./runtime.js";
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC5B,uBAAuB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC5B,uBAAuB,GAmDxB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,QAAQ,EACR,cAAc,EACd,cAAc,EACd,WAAW,EACX,0BAA0B,EAC1B,gBAAgB,EAChB,yBAAyB,EACzB,kBAAkB,EAClB,OAAO,EACP,8BAA8B,EAC9B,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,IAAI,EACJ,mBAAmB,EACnB,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,6BAA6B,EAC7B,sBAAsB,EACtB,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,YAAY,EACZ,KAAK,EACL,YAAY,EACZ,cAAc,EACd,aAAa,EACb,QAAQ,EACR,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,wBAAwB,EAcxB,6BAA6B,GAC9B,MAAM,cAAc,CAAC"}
|
package/dist/protocol.d.ts
CHANGED
|
@@ -16,13 +16,13 @@ export type { SpeechEvent } from "@node-webrtc-rust/sdk/voice";
|
|
|
16
16
|
* Register handlers via {@link defineAgent} in `@voicethere/agent` — do not read
|
|
17
17
|
* `process.on('message')` directly in customer bundles.
|
|
18
18
|
*/
|
|
19
|
-
export type ParentToChildMessage = SessionStartMessage | SpeechEventMessage | SessionEndMessage | DataChannelMessageMessage | DataChannelBinaryMessage | IdleTimeoutMessage | RecordingControlAckMessage | PlayAckMessage | PlayStatusAckMessage | PlayStopAckMessage | PlayPoseAckMessage | MixControlAckMessage | SttControlAckMessage | WebhookMessage;
|
|
19
|
+
export type ParentToChildMessage = SessionStartMessage | SpeechEventMessage | SessionEndMessage | DataChannelMessageMessage | DataChannelBinaryMessage | IdleTimeoutMessage | RecordingControlAckMessage | ConversationHistoryControlAckMessage | PlayAckMessage | PlayStatusAckMessage | PlayStopAckMessage | PlayPoseAckMessage | MixControlAckMessage | SttControlAckMessage | WebhookMessage;
|
|
20
20
|
/**
|
|
21
21
|
* Messages the customer child may send back to the runner parent.
|
|
22
22
|
*
|
|
23
23
|
* Prefer {@link speak}, {@link startRecording}, {@link sendToClient}, {@link sendBinaryToClient}, and {@link agentLog} helpers over raw `process.send`.
|
|
24
24
|
*/
|
|
25
|
-
export type ChildToParentMessage = SessionStartAckMessage | SpeakMessage | RecordingControlMessage | PlayMessage | PlayStatusMessage | PlayStopMessage | PlayPoseMessage | MixControlMessage | SttControlMessage | AgentLogMessage | AgentErrorMessage | SendToClientMessage | SendBinaryToClientMessage | IdleTimeoutDoneMessage | DisconnectClientMessage | WebhookHandledMessage;
|
|
25
|
+
export type ChildToParentMessage = SessionStartAckMessage | SpeakMessage | RecordingControlMessage | ConversationHistoryControlMessage | PlayMessage | PlayStatusMessage | PlayStopMessage | PlayPoseMessage | MixControlMessage | SttControlMessage | AgentLogMessage | AgentErrorMessage | SendToClientMessage | SendBinaryToClientMessage | IdleTimeoutDoneMessage | DisconnectClientMessage | WebhookHandledMessage;
|
|
26
26
|
/** Which WebRTC data channel carried a binary IPC payload. */
|
|
27
27
|
export type DataChannelKind = "control" | "sync";
|
|
28
28
|
/**
|
|
@@ -45,6 +45,11 @@ export interface SessionStartMessage {
|
|
|
45
45
|
* Absent on older runners — treat as `false`.
|
|
46
46
|
*/
|
|
47
47
|
recordingAvailable?: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* When `true`, the runner has conversation history storage enabled for this project.
|
|
50
|
+
* Absent on older runners — treat as `false`.
|
|
51
|
+
*/
|
|
52
|
+
conversationHistoryAvailable?: boolean;
|
|
48
53
|
/**
|
|
49
54
|
* When `true`, the runner session is Voice+Data and positional mix APIs are available.
|
|
50
55
|
* Absent on older runners or voice/data-only sessions — treat as `false`.
|
|
@@ -155,6 +160,35 @@ export type RecordingControlResult = {
|
|
|
155
160
|
reason?: string;
|
|
156
161
|
requestId: string;
|
|
157
162
|
};
|
|
163
|
+
/**
|
|
164
|
+
* Ask the parent to enable or disable conversation history storage for a session.
|
|
165
|
+
*
|
|
166
|
+
* Use {@link setConversationHistoryEnabled}, {@link enableConversationHistory}, or
|
|
167
|
+
* {@link disableConversationHistory} instead of raw `process.send`.
|
|
168
|
+
*/
|
|
169
|
+
export interface ConversationHistoryControlMessage {
|
|
170
|
+
type: "conversation_history_control";
|
|
171
|
+
/** Target peer/session id (must match a prior {@link SessionStartMessage}). */
|
|
172
|
+
sessionId: string;
|
|
173
|
+
enabled: boolean;
|
|
174
|
+
/** Correlates with {@link ConversationHistoryControlAckMessage.requestId}. */
|
|
175
|
+
requestId: string;
|
|
176
|
+
}
|
|
177
|
+
/** Runner acknowledgement for a {@link ConversationHistoryControlMessage}. */
|
|
178
|
+
export interface ConversationHistoryControlAckMessage {
|
|
179
|
+
type: "conversation_history_control_ack";
|
|
180
|
+
sessionId: string;
|
|
181
|
+
enabled: boolean;
|
|
182
|
+
requestId: string;
|
|
183
|
+
ok: boolean;
|
|
184
|
+
reason?: "applied" | "disabled" | "unsupported" | "local_mock" | "timeout" | string;
|
|
185
|
+
}
|
|
186
|
+
/** Result returned by {@link setConversationHistoryEnabled} and related helpers. */
|
|
187
|
+
export type ConversationHistoryControlResult = {
|
|
188
|
+
ok: boolean;
|
|
189
|
+
reason?: string;
|
|
190
|
+
requestId: string;
|
|
191
|
+
};
|
|
158
192
|
/**
|
|
159
193
|
* Ask the runner parent to fetch and play an audio clip to one or more voice clients.
|
|
160
194
|
*
|
package/dist/protocol.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"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"}
|
package/dist/protocol.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAggBH,+FAA+F;AAC/F,MAAM,CAAC,MAAM,4BAA4B,GACvC,kFAAkF,CAAC;AAErF,kGAAkG;AAClG,MAAM,CAAC,MAAM,uBAAuB,GAClC,2DAA2D,CAAC;AAwH9D;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,YAAY;IACZ,YAAY;IACZ,UAAU;IACV,kBAAkB;IAClB,wEAAwE;IACxE,wBAAwB;CAChB,CAAC"}
|
package/dist/runtime.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { SpeechEvent } from "@node-webrtc-rust/sdk/voice";
|
|
2
|
-
import type { AgentLogLevel, DataChannelKind, MixControlResult, MixPlacement, MixPose, PlayPoseResult, PlayResult, GetPlayResult, StopPlayResult, RecordingControlResult, SttControlResult } from "./protocol.js";
|
|
2
|
+
import type { AgentLogLevel, DataChannelKind, MixControlResult, MixPlacement, MixPose, PlayPoseResult, PlayResult, GetPlayResult, StopPlayResult, RecordingControlResult, ConversationHistoryControlResult, SttControlResult } from "./protocol.js";
|
|
3
3
|
export declare const SESSION_START_INIT_DELAY_ENABLED_ENV = "AGENT_SESSION_START_INIT_DELAY_ENABLED";
|
|
4
4
|
export declare const SESSION_START_INIT_DELAY_MS_ENV = "AGENT_SESSION_START_INIT_DELAY_MS";
|
|
5
5
|
export interface SessionContext {
|
|
@@ -7,6 +7,8 @@ export interface SessionContext {
|
|
|
7
7
|
env: Record<string, string>;
|
|
8
8
|
/** `true` when the runner advertises conversation recording for this project. */
|
|
9
9
|
recordingAvailable: boolean;
|
|
10
|
+
/** `true` when the runner advertises conversation history storage for this project. */
|
|
11
|
+
conversationHistoryAvailable: boolean;
|
|
10
12
|
/** `true` when the runner session is Voice+Data and mix group APIs are available. */
|
|
11
13
|
mixAvailable: boolean;
|
|
12
14
|
/** `true` when TTS pose / listener pose APIs are available (voice or Voice+Data). */
|
|
@@ -153,6 +155,8 @@ export interface SpeakAndChatOptions {
|
|
|
153
155
|
export declare function speakAndChat(sessionId: string, text: string, options?: SpeakAndChatOptions): void;
|
|
154
156
|
/** True when {@link SessionStartMessage.recordingAvailable} was set for the session. */
|
|
155
157
|
export declare function isRecordingAvailable(ctx: SessionContext): boolean;
|
|
158
|
+
/** True when {@link SessionStartMessage.conversationHistoryAvailable} was set for the session. */
|
|
159
|
+
export declare function isConversationHistoryAvailable(ctx: SessionContext): boolean;
|
|
156
160
|
/** True when {@link SessionStartMessage.mixAvailable} was set for the session. */
|
|
157
161
|
export declare function isMixAvailable(ctx: SessionContext): boolean;
|
|
158
162
|
/** True when {@link SessionStartMessage.ttsPoseAvailable} was set for the session. */
|
|
@@ -230,6 +234,12 @@ export declare function pauseRecording(sessionId: string): Promise<RecordingCont
|
|
|
230
234
|
export declare function resumeRecording(sessionId: string): Promise<RecordingControlResult>;
|
|
231
235
|
/** Ask the runner parent to stop conversation recording for the session. */
|
|
232
236
|
export declare function stopRecording(sessionId: string): Promise<RecordingControlResult>;
|
|
237
|
+
/** Enable or disable conversation history storage for the session. */
|
|
238
|
+
export declare function setConversationHistoryEnabled(sessionId: string, enabled: boolean): Promise<ConversationHistoryControlResult>;
|
|
239
|
+
/** Ask the runner parent to resume storing conversation history for the session. */
|
|
240
|
+
export declare function enableConversationHistory(sessionId: string): Promise<ConversationHistoryControlResult>;
|
|
241
|
+
/** Ask the runner parent to stop storing conversation history for the session. */
|
|
242
|
+
export declare function disableConversationHistory(sessionId: string): Promise<ConversationHistoryControlResult>;
|
|
233
243
|
export interface PlayOptions {
|
|
234
244
|
/** HTTPS URL the runner parent fetches (sandbox child does not fetch). */
|
|
235
245
|
url: string;
|
package/dist/runtime.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAG/D,OAAO,KAAK,EACV,aAAa,EAEb,eAAe,EAIf,gBAAgB,EAChB,YAAY,EACZ,OAAO,EAIP,cAAc,EACd,UAAU,EAGV,aAAa,EACb,cAAc,EAGd,sBAAsB,EAEtB,gBAAgB,EAEjB,MAAM,eAAe,CAAC;AAOvB,eAAO,MAAM,oCAAoC,2CACP,CAAC;AAC3C,eAAO,MAAM,+BAA+B,sCACP,CAAC;AAGtC,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,iFAAiF;IACjF,kBAAkB,EAAE,OAAO,CAAC;IAC5B,qFAAqF;IACrF,YAAY,EAAE,OAAO,CAAC;IACtB,qFAAqF;IACrF,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,gFAAgF;AAChF,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,qEAAqE;IACrE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,4EAA4E;IAC5E,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,qEAAqE;IACrE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,eAAe,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,sFAAsF;IACtF,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7B;AAED,wEAAwE;AACxE,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,yFAAyF;IACzF,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChE;;;;OAIG;IACH,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,sDAAsD;IACtD,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,6EAA6E;IAC7E,aAAa,CAAC,EAAE,CACd,GAAG,EAAE,kBAAkB,EACvB,KAAK,EAAE,WAAW,KACf,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,oFAAoF;IACpF,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjE,gFAAgF;IAChF,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,mBAAmB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,oDAAoD;IACpD,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,6DAA6D;IAC7D,oBAAoB,CAAC,EAAE,CAAC,GAAG,EAAE,kBAAkB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzE,gEAAgE;IAChE,mBAAmB,CAAC,EAAE,CAAC,GAAG,EAAE,kBAAkB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxE;;;OAGG;IACH,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,kBAAkB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9D;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,KAAK,EAAE,KAAK,CAAC;IACb,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC3C;
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime.js
CHANGED
|
@@ -35,6 +35,13 @@ function isRecordingControlAckMessage(value) {
|
|
|
35
35
|
const msg = value;
|
|
36
36
|
return (msg.type === "recording_control_ack" && typeof msg.requestId === "string");
|
|
37
37
|
}
|
|
38
|
+
function isConversationHistoryControlAckMessage(value) {
|
|
39
|
+
if (!value || typeof value !== "object")
|
|
40
|
+
return false;
|
|
41
|
+
const msg = value;
|
|
42
|
+
return (msg.type === "conversation_history_control_ack" &&
|
|
43
|
+
typeof msg.requestId === "string");
|
|
44
|
+
}
|
|
38
45
|
function isMixControlAckMessage(value) {
|
|
39
46
|
if (!value || typeof value !== "object")
|
|
40
47
|
return false;
|
|
@@ -99,6 +106,7 @@ function isParentMessage(value) {
|
|
|
99
106
|
msg.type === "data_channel_binary" ||
|
|
100
107
|
msg.type === "idle_timeout" ||
|
|
101
108
|
msg.type === "recording_control_ack" ||
|
|
109
|
+
msg.type === "conversation_history_control_ack" ||
|
|
102
110
|
msg.type === "play_ack" ||
|
|
103
111
|
msg.type === "play_status_ack" ||
|
|
104
112
|
msg.type === "play_stop_ack" ||
|
|
@@ -121,6 +129,8 @@ function parseDataChannelPayload(raw) {
|
|
|
121
129
|
const peerEnvBySessionId = new Map();
|
|
122
130
|
/** Cached from `session_start.recordingAvailable` until `session_end`. */
|
|
123
131
|
const recordingAvailableBySessionId = new Map();
|
|
132
|
+
/** Cached from `session_start.conversationHistoryAvailable` until `session_end`. */
|
|
133
|
+
const conversationHistoryAvailableBySessionId = new Map();
|
|
124
134
|
/** Cached from `session_start.mixAvailable` until `session_end`. */
|
|
125
135
|
const mixAvailableBySessionId = new Map();
|
|
126
136
|
/** Cached from `session_start.ttsPoseAvailable` until `session_end`. */
|
|
@@ -128,10 +138,12 @@ const ttsPoseAvailableBySessionId = new Map();
|
|
|
128
138
|
/** Sessions that received `session_end`; `speak()` becomes a no-op when no live gen. */
|
|
129
139
|
const endedSessionIds = new Set();
|
|
130
140
|
const RECORDING_CONTROL_ACK_TIMEOUT_MS = 5000;
|
|
141
|
+
const CONVERSATION_HISTORY_CONTROL_ACK_TIMEOUT_MS = 5000;
|
|
131
142
|
const PLAY_CONTROL_ACK_TIMEOUT_MS = 5000;
|
|
132
143
|
/** Max decoded bytes for optional inline `bytes` on {@link play} (base64 in IPC). */
|
|
133
144
|
export const PLAY_BYTES_MAX_DECODED_LENGTH = 64 * 1024;
|
|
134
145
|
const pendingRecordingAcks = new Map();
|
|
146
|
+
const pendingConversationHistoryAcks = new Map();
|
|
135
147
|
const pendingPlayAcks = new Map();
|
|
136
148
|
const pendingPlayStatusAcks = new Map();
|
|
137
149
|
const pendingPlayStopAcks = new Map();
|
|
@@ -152,6 +164,18 @@ function handleRecordingControlAck(message) {
|
|
|
152
164
|
requestId: message.requestId,
|
|
153
165
|
});
|
|
154
166
|
}
|
|
167
|
+
function handleConversationHistoryControlAck(message) {
|
|
168
|
+
const pending = pendingConversationHistoryAcks.get(message.requestId);
|
|
169
|
+
if (!pending)
|
|
170
|
+
return;
|
|
171
|
+
clearTimeout(pending.timer);
|
|
172
|
+
pendingConversationHistoryAcks.delete(message.requestId);
|
|
173
|
+
pending.resolve({
|
|
174
|
+
ok: message.ok,
|
|
175
|
+
reason: message.reason,
|
|
176
|
+
requestId: message.requestId,
|
|
177
|
+
});
|
|
178
|
+
}
|
|
155
179
|
function handlePlayAck(message) {
|
|
156
180
|
const pending = pendingPlayAcks.get(message.requestId);
|
|
157
181
|
if (!pending)
|
|
@@ -314,6 +338,15 @@ function clearPendingRecordingAcksForSession(sessionId, reason) {
|
|
|
314
338
|
pending.resolve({ ok: false, reason, requestId });
|
|
315
339
|
}
|
|
316
340
|
}
|
|
341
|
+
function clearPendingConversationHistoryAcksForSession(sessionId, reason) {
|
|
342
|
+
for (const [requestId, pending] of pendingConversationHistoryAcks) {
|
|
343
|
+
if (pending.sessionId !== sessionId)
|
|
344
|
+
continue;
|
|
345
|
+
clearTimeout(pending.timer);
|
|
346
|
+
pendingConversationHistoryAcks.delete(requestId);
|
|
347
|
+
pending.resolve({ ok: false, reason, requestId });
|
|
348
|
+
}
|
|
349
|
+
}
|
|
317
350
|
function isVoicethereAgentChild() {
|
|
318
351
|
return (typeof process.send === "function" &&
|
|
319
352
|
process.connected !== false &&
|
|
@@ -505,6 +538,7 @@ async function handleParentMessage(message, handlers) {
|
|
|
505
538
|
endedSessionIds.delete(message.sessionId);
|
|
506
539
|
peerEnvBySessionId.set(message.sessionId, message.env);
|
|
507
540
|
recordingAvailableBySessionId.set(message.sessionId, message.recordingAvailable ?? false);
|
|
541
|
+
conversationHistoryAvailableBySessionId.set(message.sessionId, message.conversationHistoryAvailable ?? false);
|
|
508
542
|
mixAvailableBySessionId.set(message.sessionId, message.mixAvailable ?? false);
|
|
509
543
|
ttsPoseAvailableBySessionId.set(message.sessionId, message.ttsPoseAvailable ?? false);
|
|
510
544
|
const sessionStartInitDelayMs = resolveSessionStartInitDelayMs();
|
|
@@ -515,6 +549,7 @@ async function handleParentMessage(message, handlers) {
|
|
|
515
549
|
sessionId: message.sessionId,
|
|
516
550
|
env: message.env,
|
|
517
551
|
recordingAvailable: message.recordingAvailable ?? false,
|
|
552
|
+
conversationHistoryAvailable: message.conversationHistoryAvailable ?? false,
|
|
518
553
|
mixAvailable: message.mixAvailable ?? false,
|
|
519
554
|
ttsPoseAvailable: message.ttsPoseAvailable ?? false,
|
|
520
555
|
});
|
|
@@ -563,8 +598,10 @@ async function handleParentMessage(message, handlers) {
|
|
|
563
598
|
break;
|
|
564
599
|
case "session_end":
|
|
565
600
|
clearPendingRecordingAcksForSession(message.sessionId, "session_ended");
|
|
601
|
+
clearPendingConversationHistoryAcksForSession(message.sessionId, "session_ended");
|
|
566
602
|
peerEnvBySessionId.delete(message.sessionId);
|
|
567
603
|
recordingAvailableBySessionId.delete(message.sessionId);
|
|
604
|
+
conversationHistoryAvailableBySessionId.delete(message.sessionId);
|
|
568
605
|
mixAvailableBySessionId.delete(message.sessionId);
|
|
569
606
|
ttsPoseAvailableBySessionId.delete(message.sessionId);
|
|
570
607
|
await (handlers.onClientLeave ?? handlers.onSessionEnd)?.({
|
|
@@ -596,6 +633,10 @@ export function defineAgent(handlers) {
|
|
|
596
633
|
handleRecordingControlAck(message);
|
|
597
634
|
return;
|
|
598
635
|
}
|
|
636
|
+
if (isConversationHistoryControlAckMessage(message)) {
|
|
637
|
+
handleConversationHistoryControlAck(message);
|
|
638
|
+
return;
|
|
639
|
+
}
|
|
599
640
|
if (isPlayAckMessage(message)) {
|
|
600
641
|
handlePlayAck(message);
|
|
601
642
|
return;
|
|
@@ -632,6 +673,7 @@ export function defineAgent(handlers) {
|
|
|
632
673
|
if (message.type === "session_end") {
|
|
633
674
|
endedSessionIds.add(message.sessionId);
|
|
634
675
|
clearPendingRecordingAcksForSession(message.sessionId, "session_ended");
|
|
676
|
+
clearPendingConversationHistoryAcksForSession(message.sessionId, "session_ended");
|
|
635
677
|
inboundBySession.clear(message.sessionId);
|
|
636
678
|
}
|
|
637
679
|
// session_start must not chain onto a dying session_end generation — clear
|
|
@@ -779,6 +821,7 @@ export function resetAgentIpcStateForTests() {
|
|
|
779
821
|
endedSessionIds.clear();
|
|
780
822
|
peerEnvBySessionId.clear();
|
|
781
823
|
recordingAvailableBySessionId.clear();
|
|
824
|
+
conversationHistoryAvailableBySessionId.clear();
|
|
782
825
|
mixAvailableBySessionId.clear();
|
|
783
826
|
ttsPoseAvailableBySessionId.clear();
|
|
784
827
|
inboundQueueAuthority = null;
|
|
@@ -786,6 +829,10 @@ export function resetAgentIpcStateForTests() {
|
|
|
786
829
|
clearTimeout(pending.timer);
|
|
787
830
|
pendingRecordingAcks.delete(requestId);
|
|
788
831
|
}
|
|
832
|
+
for (const [requestId, pending] of pendingConversationHistoryAcks) {
|
|
833
|
+
clearTimeout(pending.timer);
|
|
834
|
+
pendingConversationHistoryAcks.delete(requestId);
|
|
835
|
+
}
|
|
789
836
|
clearPendingPlayAcks("reset");
|
|
790
837
|
clearPendingMixAcks("reset");
|
|
791
838
|
clearPendingSttAcks("reset");
|
|
@@ -815,6 +862,10 @@ export function speakAndChat(sessionId, text, options) {
|
|
|
815
862
|
export function isRecordingAvailable(ctx) {
|
|
816
863
|
return ctx.recordingAvailable;
|
|
817
864
|
}
|
|
865
|
+
/** True when {@link SessionStartMessage.conversationHistoryAvailable} was set for the session. */
|
|
866
|
+
export function isConversationHistoryAvailable(ctx) {
|
|
867
|
+
return ctx.conversationHistoryAvailable;
|
|
868
|
+
}
|
|
818
869
|
/** True when {@link SessionStartMessage.mixAvailable} was set for the session. */
|
|
819
870
|
export function isMixAvailable(ctx) {
|
|
820
871
|
return ctx.mixAvailable;
|
|
@@ -1029,6 +1080,50 @@ export function resumeRecording(sessionId) {
|
|
|
1029
1080
|
export function stopRecording(sessionId) {
|
|
1030
1081
|
return sendRecordingControl(sessionId, "stop");
|
|
1031
1082
|
}
|
|
1083
|
+
async function sendConversationHistoryControl(sessionId, enabled) {
|
|
1084
|
+
const requestId = randomUUID();
|
|
1085
|
+
if (!allowOutboundForSession(sessionId)) {
|
|
1086
|
+
return { ok: false, reason: "session_ended", requestId };
|
|
1087
|
+
}
|
|
1088
|
+
if (enabled &&
|
|
1089
|
+
conversationHistoryAvailableBySessionId.has(sessionId) &&
|
|
1090
|
+
conversationHistoryAvailableBySessionId.get(sessionId) === false) {
|
|
1091
|
+
agentLog("warn", "Project conversation history is disabled; the agent cannot turn history storage on", sessionId);
|
|
1092
|
+
return { ok: false, reason: "disabled", requestId };
|
|
1093
|
+
}
|
|
1094
|
+
if (!isVoicethereAgentChild()) {
|
|
1095
|
+
return { ok: true, reason: "local_mock", requestId };
|
|
1096
|
+
}
|
|
1097
|
+
return new Promise((resolve) => {
|
|
1098
|
+
const timer = setTimeout(() => {
|
|
1099
|
+
pendingConversationHistoryAcks.delete(requestId);
|
|
1100
|
+
resolve({ ok: false, reason: "timeout", requestId });
|
|
1101
|
+
}, CONVERSATION_HISTORY_CONTROL_ACK_TIMEOUT_MS);
|
|
1102
|
+
pendingConversationHistoryAcks.set(requestId, {
|
|
1103
|
+
sessionId,
|
|
1104
|
+
resolve,
|
|
1105
|
+
timer,
|
|
1106
|
+
});
|
|
1107
|
+
sendParentMessage({
|
|
1108
|
+
type: "conversation_history_control",
|
|
1109
|
+
sessionId,
|
|
1110
|
+
enabled,
|
|
1111
|
+
requestId,
|
|
1112
|
+
});
|
|
1113
|
+
});
|
|
1114
|
+
}
|
|
1115
|
+
/** Enable or disable conversation history storage for the session. */
|
|
1116
|
+
export function setConversationHistoryEnabled(sessionId, enabled) {
|
|
1117
|
+
return sendConversationHistoryControl(sessionId, enabled);
|
|
1118
|
+
}
|
|
1119
|
+
/** Ask the runner parent to resume storing conversation history for the session. */
|
|
1120
|
+
export function enableConversationHistory(sessionId) {
|
|
1121
|
+
return sendConversationHistoryControl(sessionId, true);
|
|
1122
|
+
}
|
|
1123
|
+
/** Ask the runner parent to stop storing conversation history for the session. */
|
|
1124
|
+
export function disableConversationHistory(sessionId) {
|
|
1125
|
+
return sendConversationHistoryControl(sessionId, false);
|
|
1126
|
+
}
|
|
1032
1127
|
function validatePlayOptions(options) {
|
|
1033
1128
|
const requestId = randomUUID();
|
|
1034
1129
|
const url = options.url?.trim();
|