@ozaiya/openclaw-channel 0.6.0 → 0.7.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.
- package/dist/src/api.d.ts +17 -0
- package/dist/src/api.js +37 -0
- package/dist/src/api.js.map +1 -1
- package/dist/src/channel.js +250 -47
- package/dist/src/channel.js.map +1 -1
- package/dist/src/transcribeAudio.js.map +1 -1
- package/dist/src/types.d.ts +39 -1
- package/dist/src/voiceCall.d.ts +72 -0
- package/dist/src/voiceCall.js +332 -0
- package/dist/src/voiceCall.js.map +1 -0
- package/package.json +3 -1
package/dist/src/api.d.ts
CHANGED
|
@@ -120,6 +120,23 @@ export declare function fetchLinkPreview(apiBaseUrl: string, botToken: string, u
|
|
|
120
120
|
export declare function createDirectChat(apiBaseUrl: string, webhookSecret: string, userId: string, botWrappedGroupKey: string, userWrappedGroupKey: string): Promise<{
|
|
121
121
|
groupId: string;
|
|
122
122
|
}>;
|
|
123
|
+
/**
|
|
124
|
+
* Join an active call. Returns a LiveKit token and URL for the bot to connect.
|
|
125
|
+
*
|
|
126
|
+
* POST /v1/calls/:callId/join
|
|
127
|
+
* Auth: Bearer <botToken>
|
|
128
|
+
*/
|
|
129
|
+
export declare function joinCall(apiBaseUrl: string, botToken: string, callId: string): Promise<{
|
|
130
|
+
token: string;
|
|
131
|
+
url: string;
|
|
132
|
+
} | null>;
|
|
133
|
+
/**
|
|
134
|
+
* Leave an active call.
|
|
135
|
+
*
|
|
136
|
+
* POST /v1/calls/:callId/leave
|
|
137
|
+
* Auth: Bearer <botToken>
|
|
138
|
+
*/
|
|
139
|
+
export declare function leaveCall(apiBaseUrl: string, botToken: string, callId: string): Promise<boolean>;
|
|
123
140
|
/**
|
|
124
141
|
* Probe Ozaiya API connectivity by listing bot accounts.
|
|
125
142
|
* Returns true if the API is reachable and the token is valid.
|
package/dist/src/api.js
CHANGED
|
@@ -295,6 +295,43 @@ export async function createDirectChat(apiBaseUrl, webhookSecret, userId, botWra
|
|
|
295
295
|
}
|
|
296
296
|
return (await res.json());
|
|
297
297
|
}
|
|
298
|
+
/**
|
|
299
|
+
* Join an active call. Returns a LiveKit token and URL for the bot to connect.
|
|
300
|
+
*
|
|
301
|
+
* POST /v1/calls/:callId/join
|
|
302
|
+
* Auth: Bearer <botToken>
|
|
303
|
+
*/
|
|
304
|
+
export async function joinCall(apiBaseUrl, botToken, callId) {
|
|
305
|
+
const res = await fetch(`${apiBaseUrl}/v1/calls/${callId}/join`, {
|
|
306
|
+
method: "POST",
|
|
307
|
+
headers: {
|
|
308
|
+
"Content-Type": "application/json",
|
|
309
|
+
Authorization: `Bearer ${botToken}`,
|
|
310
|
+
},
|
|
311
|
+
signal: AbortSignal.timeout(15_000),
|
|
312
|
+
});
|
|
313
|
+
if (!res.ok) {
|
|
314
|
+
return null;
|
|
315
|
+
}
|
|
316
|
+
return (await res.json());
|
|
317
|
+
}
|
|
318
|
+
/**
|
|
319
|
+
* Leave an active call.
|
|
320
|
+
*
|
|
321
|
+
* POST /v1/calls/:callId/leave
|
|
322
|
+
* Auth: Bearer <botToken>
|
|
323
|
+
*/
|
|
324
|
+
export async function leaveCall(apiBaseUrl, botToken, callId) {
|
|
325
|
+
const res = await fetch(`${apiBaseUrl}/v1/calls/${callId}/leave`, {
|
|
326
|
+
method: "POST",
|
|
327
|
+
headers: {
|
|
328
|
+
"Content-Type": "application/json",
|
|
329
|
+
Authorization: `Bearer ${botToken}`,
|
|
330
|
+
},
|
|
331
|
+
signal: AbortSignal.timeout(15_000),
|
|
332
|
+
});
|
|
333
|
+
return res.ok;
|
|
334
|
+
}
|
|
298
335
|
/**
|
|
299
336
|
* Probe Ozaiya API connectivity by listing bot accounts.
|
|
300
337
|
* Returns true if the API is reachable and the token is valid.
|
package/dist/src/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"AAKA;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,UAAkB,EAClB,QAAgB,EAChB,OAAe,EACf,aAAqB,EACrB,SAAkB;IAElB,MAAM,IAAI,GAA2B,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;IAChE,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,mBAAmB,OAAO,WAAW,EAAE;QAC1E,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,QAAQ,EAAE;SACpC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QAC1B,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA4B,CAAC;AACvD,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,UAAkB,EAClB,QAAgB;IAEhB,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,iBAAiB,EAAE;QACtD,MAAM,EAAE,KAAK;QACb,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,QAAQ,EAAE,EAAE;QAChD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAE7B,CAAC;IACF,OAAO,IAAI,CAAC,MAAM,CAAC;AACrB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,UAAkB,EAClB,QAAgB,EAChB,IAAY,EACZ,eAAuB;IAEvB,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,iBAAiB,EAAE;QACtD,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,QAAQ,EAAE;SACpC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;QAC/C,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAE7B,CAAC;IACF,OAAO,IAAI,CAAC,KAAK,CAAC;AACpB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,UAAkB,EAClB,QAAgB,EAChB,OAAe,EACf,MAAc,EACd,eAAuB;IAEvB,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,mBAAmB,OAAO,UAAU,EAAE;QACzE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,QAAQ,EAAE;SACpC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC;QACjD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,UAAkB,EAClB,QAAgB,EAChB,OAAiB;IAEjB,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,4BAA4B,EAAE;QACjE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,QAAQ,EAAE;SACpC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;QACjC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAE7B,CAAC;IACF,OAAO,IAAI,CAAC,KAAK,CAAC;AACpB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,UAAkB,EAClB,QAAgB,EAChB,SAAiB,EACjB,KAAa;IAEb,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,qBAAqB,SAAS,YAAY,EAAE;QAC/E,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,QAAQ,EAAE;SACpC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC;QAC/B,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAuB,CAAC;AAClD,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,UAAkB,EAClB,QAAgB,EAChB,SAAiB,EACjB,aAAqB;IAErB,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,qBAAqB,SAAS,EAAE,EAAE;QACrE,MAAM,EAAE,OAAO;QACf,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,QAAQ,EAAE;SACpC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;QAChD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,UAAkB,EAClB,QAAgB,EAChB,SAAiB;IAEjB,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,qBAAqB,SAAS,EAAE,EAAE;QACrE,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,QAAQ,EAAE,EAAE;QAChD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,UAAkB,EAClB,QAAgB,EAChB,SAAiB;IAEjB,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,qBAAqB,SAAS,MAAM,EAAE;QACzE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,QAAQ,EAAE,EAAE;QAChD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,UAAkB,EAClB,QAAgB,EAChB,SAAiB;IAEjB,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,qBAAqB,SAAS,MAAM,EAAE;QACzE,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,QAAQ,EAAE,EAAE;QAChD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,UAAkB,EAClB,QAAgB,EAChB,OAAe,EACf,QAAgB,EAChB,IAAY,EACZ,MAAc;IAEd,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;IAChC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;IAEtF,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,mBAAmB,OAAO,SAAS,EAAE;QACxE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,QAAQ,EAAE,EAAE;QAChD,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAiC,CAAC;AAC5D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,UAAkB,EAClB,QAAgB,EAChB,KAAa;IAEb,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,UAAU,sBAAsB,CAAC,CAAC;IACzD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAEjC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE;QACtC,MAAM,EAAE,KAAK;QACb,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,QAAQ,EAAE,EAAE;QAChD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAE7B,CAAC;IACF,OAAO,IAAI,CAAC,KAAK,CAAC;AACpB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,UAAkB,EAClB,QAAgB,EAChB,GAAW;IAEX,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,uBAAuB,EAAE;QAC5D,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,QAAQ,EAAE;SACpC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,CAAC;QAC7B,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA2C,CAAC;IAC1E,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC;AAC9B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,UAAkB,EAClB,aAAqB,EACrB,MAAc,EACd,kBAA0B,EAC1B,mBAA2B;IAE3B,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,gBAAgB,EAAE;QACrD,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,aAAa,EAAE;SACzC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,CAAC;QACzE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAwB,CAAC;AACnD,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,UAAkB,EAClB,QAAgB,EAChB,MAAc;IAEd,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,aAAa,MAAM,OAAO,EAAE;QAC/D,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,QAAQ,EAAE;SACpC;QACD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAmC,CAAC;AAC9D,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,UAAkB,EAClB,QAAgB,EAChB,MAAc;IAEd,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,aAAa,MAAM,QAAQ,EAAE;QAChE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,QAAQ,EAAE;SACpC;QACD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC,EAAE,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,UAAkB,EAClB,QAAgB,EAChB,SAAS,GAAG,IAAI;IAEhB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,UAAU,EAAE;YAC/C,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,QAAQ,EAAE,EAAE;YAChD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC;SACvC,CAAC,CAAC;QAEH,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;YACX,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;QACtB,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC;IACpD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;IAC3C,CAAC;AACH,CAAC"}
|
package/dist/src/channel.js
CHANGED
|
@@ -7,9 +7,17 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import fs from "node:fs/promises";
|
|
9
9
|
import path from "node:path";
|
|
10
|
-
|
|
10
|
+
// registerPluginHttpRoute may not exist in older OpenClaw versions (< 2026.3.28)
|
|
11
|
+
let registerPluginHttpRoute;
|
|
12
|
+
try {
|
|
13
|
+
const sdk = await import("openclaw/plugin-sdk");
|
|
14
|
+
registerPluginHttpRoute = sdk.registerPluginHttpRoute;
|
|
15
|
+
}
|
|
16
|
+
catch {
|
|
17
|
+
// Older OpenClaw — will use socket.io fallback
|
|
18
|
+
}
|
|
11
19
|
import { unwrapGroupKey, decryptMessage, encryptMessage, wrapGroupKey } from "./crypto.js";
|
|
12
|
-
import { sendMessage, probeApi, fetchGroups, addMember, getUserPublicKeys, toggleReaction, editMessage, deleteMessage, pinMessage, unpinMessage, uploadFile, searchUsers, fetchLinkPreview, } from "./api.js";
|
|
20
|
+
import { sendMessage, probeApi, fetchGroups, addMember, getUserPublicKeys, toggleReaction, editMessage, deleteMessage, pinMessage, unpinMessage, uploadFile, searchUsers, fetchLinkPreview, joinCall, leaveCall, } from "./api.js";
|
|
13
21
|
import { botCreateDirect, botCreateGroup } from "./botActions.js";
|
|
14
22
|
import { buildInlineKeyboardSummary, buildLinkPreviewSummary, normalizeMessageText, normalizeToolInlineKeyboardRows, } from "./richContent.js";
|
|
15
23
|
import { normalizeCallbackQueryPayload } from "./callbackQuery.js";
|
|
@@ -18,6 +26,7 @@ import { createOzaiyaWebhookHandler } from "./webhook.js";
|
|
|
18
26
|
import { getOzaiyaRuntime } from "./runtime.js";
|
|
19
27
|
import { maybeTranscribeInboundAudio, prependVoiceTranscriptToAgentInput, resolveOzaiyaSttConfig, } from "./transcribeAudio.js";
|
|
20
28
|
import { startGatewayMode } from "./gateway.js";
|
|
29
|
+
import { VoiceCallSession } from "./voiceCall.js";
|
|
21
30
|
const DEFAULT_API_BASE_URL = "https://api.ozai.dev";
|
|
22
31
|
const DEFAULT_WEBHOOK_PATH = "/ozaiya/webhook";
|
|
23
32
|
const DEFAULT_ACCOUNT_ID = "default";
|
|
@@ -29,6 +38,8 @@ const RICH_MESSAGE_GUIDANCE = "Prefer plain text for normal prose, code, markdow
|
|
|
29
38
|
"and attachments when sending generated files. Standalone media/file URLs, markdown images, and markdown attachment links in plain text replies are auto-uploaded.";
|
|
30
39
|
// In-memory cache of unwrapped group keys (groupId → Uint8Array)
|
|
31
40
|
const unwrappedKeys = new Map();
|
|
41
|
+
// Active voice call sessions keyed by callId
|
|
42
|
+
const activeVoiceCalls = new Map();
|
|
32
43
|
// Runtime state tracking
|
|
33
44
|
const runtimeState = new Map();
|
|
34
45
|
function recordState(accountId, patch) {
|
|
@@ -641,30 +652,40 @@ export const ozaiyaPlugin = {
|
|
|
641
652
|
// Stop existing handler if re-registering
|
|
642
653
|
botUnregisters.get(botAccount.accountId)?.();
|
|
643
654
|
recordState(botAccount.accountId, { running: true, lastStartAt: Date.now() });
|
|
644
|
-
const
|
|
645
|
-
|
|
646
|
-
auth: "plugin",
|
|
647
|
-
replaceExisting: true,
|
|
648
|
-
pluginId: "ozaiya",
|
|
649
|
-
source: "ozaiya-gateway",
|
|
655
|
+
const webhookHandler = createOzaiyaWebhookHandler({
|
|
656
|
+
webhookSecret: botAccount.webhookSecret,
|
|
650
657
|
log: (msg) => ctx.log?.info(msg),
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
658
|
+
onEvent: async (payload) => {
|
|
659
|
+
const botCtx = { ...ctx, account: botAccount };
|
|
660
|
+
if (payload.event === "message.new") {
|
|
661
|
+
await handleInboundMessage(payload, botCtx);
|
|
662
|
+
}
|
|
663
|
+
else if (payload.event === "callback_query") {
|
|
664
|
+
await handleCallbackQuery(payload, botCtx);
|
|
665
|
+
}
|
|
666
|
+
else if (payload.event === "session.reset") {
|
|
667
|
+
await handleSessionReset(payload, botCtx);
|
|
668
|
+
}
|
|
669
|
+
else if (payload.event === "call.started") {
|
|
670
|
+
await handleCallStarted(payload, botCtx);
|
|
671
|
+
}
|
|
672
|
+
else if (payload.event === "call.ended") {
|
|
673
|
+
await handleCallEnded(payload, botCtx);
|
|
674
|
+
}
|
|
675
|
+
},
|
|
667
676
|
});
|
|
677
|
+
// registerPluginHttpRoute is optional — older OpenClaw versions use socket.io fallback
|
|
678
|
+
const unregisterHttp = registerPluginHttpRoute
|
|
679
|
+
? registerPluginHttpRoute({
|
|
680
|
+
path: botAccount.webhookPath,
|
|
681
|
+
auth: "plugin",
|
|
682
|
+
replaceExisting: true,
|
|
683
|
+
pluginId: "ozaiya",
|
|
684
|
+
source: "ozaiya-gateway",
|
|
685
|
+
log: (msg) => ctx.log?.info(msg),
|
|
686
|
+
handler: webhookHandler,
|
|
687
|
+
})
|
|
688
|
+
: (() => { ctx.log?.info(`[${botAccount.accountId}] registerPluginHttpRoute not available, using socket.io only`); return () => { }; })();
|
|
668
689
|
// Pre-fetch group keys for this bot
|
|
669
690
|
void fetchAndUnwrapGroupKeys(botAccount).then((count) => {
|
|
670
691
|
ctx.log?.info(`[${botAccount.accountId}] unwrapped ${count} group key(s)`);
|
|
@@ -717,6 +738,16 @@ export const ozaiyaPlugin = {
|
|
|
717
738
|
ctx.log?.warn?.(`[${botId}] Socket.io session.reset error: ${String(err)}`);
|
|
718
739
|
});
|
|
719
740
|
}
|
|
741
|
+
else if (payload.event === "call.started") {
|
|
742
|
+
handleCallStarted(payload, botCtx).catch((err) => {
|
|
743
|
+
ctx.log?.warn?.(`[${botId}] Socket.io call.started error: ${String(err)}`);
|
|
744
|
+
});
|
|
745
|
+
}
|
|
746
|
+
else if (payload.event === "call.ended") {
|
|
747
|
+
handleCallEnded(payload, botCtx).catch((err) => {
|
|
748
|
+
ctx.log?.warn?.(`[${botId}] Socket.io call.ended error: ${String(err)}`);
|
|
749
|
+
});
|
|
750
|
+
}
|
|
720
751
|
},
|
|
721
752
|
log: {
|
|
722
753
|
info: (msg) => ctx.log?.info(msg),
|
|
@@ -727,6 +758,11 @@ export const ozaiyaPlugin = {
|
|
|
727
758
|
for (const unregister of botUnregisters.values())
|
|
728
759
|
unregister();
|
|
729
760
|
botUnregisters.clear();
|
|
761
|
+
// Disconnect all active voice call sessions
|
|
762
|
+
for (const [callId, session] of activeVoiceCalls) {
|
|
763
|
+
session.disconnect().catch(() => { });
|
|
764
|
+
activeVoiceCalls.delete(callId);
|
|
765
|
+
}
|
|
730
766
|
for (const id of gatewayBotAccounts.keys()) {
|
|
731
767
|
recordState(id, { running: false, lastStopAt: Date.now() });
|
|
732
768
|
}
|
|
@@ -752,31 +788,34 @@ export const ozaiyaPlugin = {
|
|
|
752
788
|
const keyCount = await fetchAndUnwrapGroupKeys(account);
|
|
753
789
|
ctx.log?.info(`[${account.accountId}] unwrapped ${keyCount} group key(s)`);
|
|
754
790
|
// Register webhook HTTP handler
|
|
755
|
-
const
|
|
756
|
-
|
|
757
|
-
auth: "plugin",
|
|
758
|
-
replaceExisting: true,
|
|
759
|
-
pluginId: "ozaiya",
|
|
760
|
-
source: "ozaiya-channel",
|
|
791
|
+
const staticWebhookHandler = createOzaiyaWebhookHandler({
|
|
792
|
+
webhookSecret: account.webhookSecret,
|
|
761
793
|
log: (msg) => ctx.log?.info(msg),
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
await handleSessionReset(payload, ctx);
|
|
776
|
-
}
|
|
777
|
-
},
|
|
778
|
-
}),
|
|
794
|
+
onEvent: async (payload) => {
|
|
795
|
+
if (payload.event === "message.new") {
|
|
796
|
+
await handleInboundMessage(payload, ctx);
|
|
797
|
+
return;
|
|
798
|
+
}
|
|
799
|
+
if (payload.event === "callback_query") {
|
|
800
|
+
await handleCallbackQuery(payload, ctx);
|
|
801
|
+
return;
|
|
802
|
+
}
|
|
803
|
+
if (payload.event === "session.reset") {
|
|
804
|
+
await handleSessionReset(payload, ctx);
|
|
805
|
+
}
|
|
806
|
+
},
|
|
779
807
|
});
|
|
808
|
+
const unregisterHttp = registerPluginHttpRoute
|
|
809
|
+
? registerPluginHttpRoute({
|
|
810
|
+
path: account.webhookPath,
|
|
811
|
+
auth: "plugin",
|
|
812
|
+
replaceExisting: true,
|
|
813
|
+
pluginId: "ozaiya",
|
|
814
|
+
source: "ozaiya-channel",
|
|
815
|
+
log: (msg) => ctx.log?.info(msg),
|
|
816
|
+
handler: staticWebhookHandler,
|
|
817
|
+
})
|
|
818
|
+
: (() => { ctx.log?.info(`[${account.accountId}] registerPluginHttpRoute not available, using socket.io only`); return () => { }; })();
|
|
780
819
|
ctx.log?.info(`[${account.accountId}] registered webhook at ${account.webhookPath}`);
|
|
781
820
|
// Block until abort
|
|
782
821
|
const stopHandler = () => {
|
|
@@ -1784,4 +1823,168 @@ ctx) {
|
|
|
1784
1823
|
},
|
|
1785
1824
|
});
|
|
1786
1825
|
}
|
|
1826
|
+
/**
|
|
1827
|
+
* Handle call.started webhook — bot auto-joins the LiveKit room and starts
|
|
1828
|
+
* listening via Deepgram STT, dispatching transcripts to the agent, and
|
|
1829
|
+
* speaking replies via Deepgram Aura TTS.
|
|
1830
|
+
*/
|
|
1831
|
+
async function handleCallStarted(payload,
|
|
1832
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
1833
|
+
ctx) {
|
|
1834
|
+
const account = ctx.account;
|
|
1835
|
+
const ozaiyaCfg = (ctx.cfg?.channels?.ozaiya ?? {});
|
|
1836
|
+
const voiceCallCfg = ozaiyaCfg.voiceCall;
|
|
1837
|
+
if (!voiceCallCfg?.enabled) {
|
|
1838
|
+
ctx.log?.info?.(`[${account.accountId}] voice call disabled, ignoring call.started`);
|
|
1839
|
+
return;
|
|
1840
|
+
}
|
|
1841
|
+
if (voiceCallCfg.autoJoin === false) {
|
|
1842
|
+
ctx.log?.info?.(`[${account.accountId}] voiceCall.autoJoin=false, ignoring call.started`);
|
|
1843
|
+
return;
|
|
1844
|
+
}
|
|
1845
|
+
const maxConcurrent = voiceCallCfg.maxConcurrentCalls ?? 5;
|
|
1846
|
+
if (activeVoiceCalls.size >= maxConcurrent) {
|
|
1847
|
+
ctx.log?.warn?.(`[${account.accountId}] max concurrent voice calls reached (${maxConcurrent}), ignoring`);
|
|
1848
|
+
return;
|
|
1849
|
+
}
|
|
1850
|
+
if (activeVoiceCalls.has(payload.callId)) {
|
|
1851
|
+
ctx.log?.info?.(`[${account.accountId}] already in call ${payload.callId}`);
|
|
1852
|
+
return;
|
|
1853
|
+
}
|
|
1854
|
+
ctx.log?.info?.(`[${account.accountId}] joining call ${payload.callId} in group ${payload.groupId}`);
|
|
1855
|
+
// Join the call via API to get LiveKit token
|
|
1856
|
+
const joinResult = await joinCall(account.apiBaseUrl, account.botToken, payload.callId);
|
|
1857
|
+
if (!joinResult) {
|
|
1858
|
+
ctx.log?.warn?.(`[${account.accountId}] failed to join call ${payload.callId}`);
|
|
1859
|
+
return;
|
|
1860
|
+
}
|
|
1861
|
+
// Resolve agent route for dispatching voice transcripts
|
|
1862
|
+
const runtime = getOzaiyaRuntime();
|
|
1863
|
+
const ch = runtime.channel;
|
|
1864
|
+
const route = ch.routing.resolveAgentRoute({
|
|
1865
|
+
cfg: ctx.cfg,
|
|
1866
|
+
channel: "ozaiya",
|
|
1867
|
+
accountId: account.accountId,
|
|
1868
|
+
peer: {
|
|
1869
|
+
kind: "group",
|
|
1870
|
+
id: payload.groupId,
|
|
1871
|
+
},
|
|
1872
|
+
});
|
|
1873
|
+
const session = new VoiceCallSession({
|
|
1874
|
+
callId: payload.callId,
|
|
1875
|
+
groupId: payload.groupId,
|
|
1876
|
+
livekitToken: joinResult.token,
|
|
1877
|
+
livekitUrl: joinResult.url,
|
|
1878
|
+
voiceCallConfig: voiceCallCfg,
|
|
1879
|
+
onTranscript: (text) => {
|
|
1880
|
+
// Dispatch transcript to agent and speak the reply
|
|
1881
|
+
void handleVoiceTranscript(text, session, route, account, ctx);
|
|
1882
|
+
},
|
|
1883
|
+
log: ctx.log,
|
|
1884
|
+
});
|
|
1885
|
+
activeVoiceCalls.set(payload.callId, session);
|
|
1886
|
+
try {
|
|
1887
|
+
await session.connect();
|
|
1888
|
+
}
|
|
1889
|
+
catch (err) {
|
|
1890
|
+
ctx.log?.warn?.(`[${account.accountId}] voice call connect error: ${String(err)}`);
|
|
1891
|
+
activeVoiceCalls.delete(payload.callId);
|
|
1892
|
+
await session.disconnect();
|
|
1893
|
+
// Leave the call via API
|
|
1894
|
+
await leaveCall(account.apiBaseUrl, account.botToken, payload.callId).catch(() => { });
|
|
1895
|
+
}
|
|
1896
|
+
}
|
|
1897
|
+
/**
|
|
1898
|
+
* Dispatch a voice transcript to the agent and speak the reply via TTS.
|
|
1899
|
+
*/
|
|
1900
|
+
async function handleVoiceTranscript(text, session, route, account,
|
|
1901
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
1902
|
+
ctx) {
|
|
1903
|
+
const runtime = getOzaiyaRuntime();
|
|
1904
|
+
const ch = runtime.channel;
|
|
1905
|
+
const fromAddress = `ozaiya:group:${session.groupId}`;
|
|
1906
|
+
const conversationLabel = `group:${session.groupId}`;
|
|
1907
|
+
const storePath = ch.session.resolveStorePath(undefined, {
|
|
1908
|
+
agentId: route.agentId,
|
|
1909
|
+
});
|
|
1910
|
+
const previousTimestamp = ch.session.readSessionUpdatedAt({
|
|
1911
|
+
storePath,
|
|
1912
|
+
sessionKey: route.sessionKey,
|
|
1913
|
+
});
|
|
1914
|
+
const envelopeOptions = ch.reply.resolveEnvelopeFormatOptions(ctx.cfg);
|
|
1915
|
+
// Voice-specific agent prompt — tells the agent to respond in spoken-friendly style
|
|
1916
|
+
const ozaiyaChannelCfg = (ctx.cfg?.channels?.ozaiya ?? {});
|
|
1917
|
+
const voicePrompt = ozaiyaChannelCfg.voiceCall?.agentPrompt ??
|
|
1918
|
+
"[Voice Call] You are in a live voice call. Your response will be spoken aloud via TTS. " +
|
|
1919
|
+
"Rules: respond concisely (1-3 sentences), use natural spoken language, " +
|
|
1920
|
+
"never use markdown/code blocks/bullet lists/URLs/emojis. " +
|
|
1921
|
+
"Do not say \"sure\" or \"of course\" — just answer directly.";
|
|
1922
|
+
const bodyForAgent = `${voicePrompt}\n\n${text}`;
|
|
1923
|
+
const body = ch.reply.formatAgentEnvelope({
|
|
1924
|
+
channel: "Ozaiya",
|
|
1925
|
+
from: `Voice (${conversationLabel})`,
|
|
1926
|
+
timestamp: Date.now(),
|
|
1927
|
+
previousTimestamp,
|
|
1928
|
+
envelope: envelopeOptions,
|
|
1929
|
+
body: bodyForAgent,
|
|
1930
|
+
});
|
|
1931
|
+
const msgCtx = ch.reply.finalizeInboundContext({
|
|
1932
|
+
Body: body,
|
|
1933
|
+
BodyForAgent: bodyForAgent,
|
|
1934
|
+
RawBody: text,
|
|
1935
|
+
CommandBody: text,
|
|
1936
|
+
From: fromAddress,
|
|
1937
|
+
To: fromAddress,
|
|
1938
|
+
SessionKey: route.sessionKey,
|
|
1939
|
+
AccountId: route.accountId,
|
|
1940
|
+
ChatType: "group",
|
|
1941
|
+
ConversationLabel: conversationLabel,
|
|
1942
|
+
GroupSubject: session.groupId,
|
|
1943
|
+
SenderId: "voice-caller",
|
|
1944
|
+
SenderName: "Voice Caller",
|
|
1945
|
+
Provider: "ozaiya",
|
|
1946
|
+
Surface: "ozaiya-voice",
|
|
1947
|
+
MessageSid: `voice-${Date.now()}`,
|
|
1948
|
+
Timestamp: Date.now(),
|
|
1949
|
+
NumFiles: 0,
|
|
1950
|
+
NumMedia: 0,
|
|
1951
|
+
HasFiles: false,
|
|
1952
|
+
CommandAuthorized: true,
|
|
1953
|
+
OriginatingChannel: "ozaiya",
|
|
1954
|
+
OriginatingTo: fromAddress,
|
|
1955
|
+
});
|
|
1956
|
+
// Collect the full reply text, then speak it sentence-by-sentence
|
|
1957
|
+
await ch.reply.dispatchReplyWithBufferedBlockDispatcher({
|
|
1958
|
+
ctx: msgCtx,
|
|
1959
|
+
cfg: ctx.cfg,
|
|
1960
|
+
dispatcherOptions: {
|
|
1961
|
+
deliver: async (replyPayload, _info) => {
|
|
1962
|
+
const replyText = replyPayload.text;
|
|
1963
|
+
if (!replyText?.trim())
|
|
1964
|
+
return;
|
|
1965
|
+
// Speak via TTS (sentence-level streaming handled inside speakReply)
|
|
1966
|
+
await session.speakReply(replyText);
|
|
1967
|
+
},
|
|
1968
|
+
onError: (err) => {
|
|
1969
|
+
ctx.log?.warn?.(`ozaiya: voice reply dispatch error: ${String(err)}`);
|
|
1970
|
+
},
|
|
1971
|
+
},
|
|
1972
|
+
});
|
|
1973
|
+
}
|
|
1974
|
+
/**
|
|
1975
|
+
* Handle call.ended webhook — disconnect the bot's VoiceCallSession.
|
|
1976
|
+
*/
|
|
1977
|
+
async function handleCallEnded(payload,
|
|
1978
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
1979
|
+
ctx) {
|
|
1980
|
+
const account = ctx.account;
|
|
1981
|
+
const session = activeVoiceCalls.get(payload.callId);
|
|
1982
|
+
if (!session)
|
|
1983
|
+
return;
|
|
1984
|
+
ctx.log?.info?.(`[${account.accountId}] call ended ${payload.callId}, disconnecting voice session`);
|
|
1985
|
+
activeVoiceCalls.delete(payload.callId);
|
|
1986
|
+
await session.disconnect();
|
|
1987
|
+
// Leave the call via API (fire-and-forget)
|
|
1988
|
+
await leaveCall(account.apiBaseUrl, account.botToken, payload.callId).catch(() => { });
|
|
1989
|
+
}
|
|
1787
1990
|
//# sourceMappingURL=channel.js.map
|