@openclaw/voice-call 2026.5.16-beta.1 → 2026.5.16-beta.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/dist/{guarded-json-api-D_aM8XmA.js → guarded-json-api-CUsmSwWt.js} +1 -1
- package/dist/index.js +1 -1
- package/dist/{plivo--HUS8UBT.js → plivo-BjXtz_Wv.js} +2 -2
- package/dist/{response-generator-ZeNpwsyL.js → response-generator-Ccuf7pQe.js} +1 -1
- package/dist/{runtime-entry-ox4PGoxT.js → runtime-entry-X0kPF8Cf.js} +30 -4
- package/dist/runtime-entry.js +1 -1
- package/dist/{telnyx-Df3IfYAS.js → telnyx-CAP9_gRF.js} +1 -1
- package/dist/{twilio-B3zpyWY5.js → twilio-DsggjKEf.js} +2 -2
- package/package.json +4 -4
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { fetchWithSsrFGuard } from "./runtime-api.js";
|
|
2
2
|
import "./api.js";
|
|
3
|
-
import { a as getHeader } from "./runtime-entry-
|
|
3
|
+
import { a as getHeader } from "./runtime-entry-X0kPF8Cf.js";
|
|
4
4
|
import { formatErrorMessage } from "openclaw/plugin-sdk/error-runtime";
|
|
5
5
|
import { isLoopbackHost } from "openclaw/plugin-sdk/gateway-runtime";
|
|
6
6
|
import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { definePluginEntry, sleep } from "./runtime-api.js";
|
|
2
2
|
import "./api.js";
|
|
3
3
|
import { i as resolveVoiceCallConfig, s as validateProviderConfig } from "./config-C8gX5Cik.js";
|
|
4
|
-
import { c as getTailscaleSelfInfo, l as setupTailscaleExposureRoute, o as resolveWebhookExposureStatus, p as resolveUserPath, s as cleanupTailscaleExposureRoute, t as createVoiceCallRuntime } from "./runtime-entry-
|
|
4
|
+
import { c as getTailscaleSelfInfo, l as setupTailscaleExposureRoute, o as resolveWebhookExposureStatus, p as resolveUserPath, s as cleanupTailscaleExposureRoute, t as createVoiceCallRuntime } from "./runtime-entry-X0kPF8Cf.js";
|
|
5
5
|
import { i as parseVoiceCallPluginConfig, r as normalizeVoiceCallLegacyConfigInput, t as formatVoiceCallLegacyConfigWarnings } from "./config-compat-DJqJ8NzH.js";
|
|
6
6
|
import { formatErrorMessage } from "openclaw/plugin-sdk/error-runtime";
|
|
7
7
|
import { ErrorCodes, callGatewayFromCli, errorShape } from "openclaw/plugin-sdk/gateway-runtime";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { a as getHeader, m as escapeXml } from "./runtime-entry-
|
|
2
|
-
import { n as reconstructWebhookUrl, r as verifyPlivoWebhook, t as guardedJsonApiRequest } from "./guarded-json-api-
|
|
1
|
+
import { a as getHeader, m as escapeXml } from "./runtime-entry-X0kPF8Cf.js";
|
|
2
|
+
import { n as reconstructWebhookUrl, r as verifyPlivoWebhook, t as guardedJsonApiRequest } from "./guarded-json-api-CUsmSwWt.js";
|
|
3
3
|
import { normalizeLowercaseStringOrEmpty, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
4
4
|
import crypto from "node:crypto";
|
|
5
5
|
//#region extensions/voice-call/src/providers/plivo.ts
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { o as resolveVoiceCallSessionKey } from "./config-C8gX5Cik.js";
|
|
2
|
-
import { f as resolveVoiceResponseModel } from "./runtime-entry-
|
|
2
|
+
import { f as resolveVoiceResponseModel } from "./runtime-entry-X0kPF8Cf.js";
|
|
3
3
|
import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
4
4
|
import crypto from "node:crypto";
|
|
5
5
|
import { applyModelOverrideToSessionEntry } from "openclaw/plugin-sdk/model-session-runtime";
|
|
@@ -814,6 +814,26 @@ function createWebhookCall(params) {
|
|
|
814
814
|
console.log(`[voice-call] Created ${params.direction} call record: ${callId} from ${params.from}`);
|
|
815
815
|
return callRecord;
|
|
816
816
|
}
|
|
817
|
+
function persistRejectedInboundCall(params) {
|
|
818
|
+
const callId = params.event.callId || params.providerCallId;
|
|
819
|
+
const now = Date.now();
|
|
820
|
+
const rejectedCall = {
|
|
821
|
+
callId,
|
|
822
|
+
providerCallId: params.providerCallId,
|
|
823
|
+
provider: params.ctx.provider?.name || "twilio",
|
|
824
|
+
direction: "inbound",
|
|
825
|
+
state: "hangup-bot",
|
|
826
|
+
from: params.event.from || "unknown",
|
|
827
|
+
to: params.event.to || params.ctx.config.fromNumber || "unknown",
|
|
828
|
+
startedAt: params.event.timestamp || now,
|
|
829
|
+
endedAt: now,
|
|
830
|
+
endReason: "hangup-bot",
|
|
831
|
+
transcript: [],
|
|
832
|
+
processedEventIds: [params.dedupeKey],
|
|
833
|
+
metadata: { rejectionReason: "inbound-policy" }
|
|
834
|
+
};
|
|
835
|
+
persistCallRecord(params.ctx.storePath, rejectedCall);
|
|
836
|
+
}
|
|
817
837
|
function processEvent(ctx, event) {
|
|
818
838
|
const dedupeKey = event.dedupeKey || event.id;
|
|
819
839
|
if (ctx.processedEventIds.has(dedupeKey)) return;
|
|
@@ -835,6 +855,12 @@ function processEvent(ctx, event) {
|
|
|
835
855
|
if (ctx.rejectedProviderCallIds.has(pid)) return;
|
|
836
856
|
ctx.rejectedProviderCallIds.add(pid);
|
|
837
857
|
const callId = event.callId ?? pid;
|
|
858
|
+
persistRejectedInboundCall({
|
|
859
|
+
ctx,
|
|
860
|
+
event,
|
|
861
|
+
dedupeKey,
|
|
862
|
+
providerCallId: pid
|
|
863
|
+
});
|
|
838
864
|
console.log(`[voice-call] Rejecting inbound call by policy: ${pid}`);
|
|
839
865
|
ctx.provider.hangupCall({
|
|
840
866
|
callId,
|
|
@@ -2505,7 +2531,7 @@ function loadRealtimeTranscriptionRuntime() {
|
|
|
2505
2531
|
return realtimeTranscriptionRuntimePromise;
|
|
2506
2532
|
}
|
|
2507
2533
|
function loadResponseGeneratorModule() {
|
|
2508
|
-
responseGeneratorModulePromise ??= import("./response-generator-
|
|
2534
|
+
responseGeneratorModulePromise ??= import("./response-generator-Ccuf7pQe.js");
|
|
2509
2535
|
return responseGeneratorModulePromise;
|
|
2510
2536
|
}
|
|
2511
2537
|
function sanitizeTranscriptForLog(value) {
|
|
@@ -3122,15 +3148,15 @@ let mockProviderPromise;
|
|
|
3122
3148
|
let realtimeVoiceRuntimePromise;
|
|
3123
3149
|
let realtimeHandlerPromise;
|
|
3124
3150
|
function loadTelnyxProvider() {
|
|
3125
|
-
telnyxProviderPromise ??= import("./telnyx-
|
|
3151
|
+
telnyxProviderPromise ??= import("./telnyx-CAP9_gRF.js");
|
|
3126
3152
|
return telnyxProviderPromise;
|
|
3127
3153
|
}
|
|
3128
3154
|
function loadTwilioProvider() {
|
|
3129
|
-
twilioProviderPromise ??= import("./twilio-
|
|
3155
|
+
twilioProviderPromise ??= import("./twilio-DsggjKEf.js");
|
|
3130
3156
|
return twilioProviderPromise;
|
|
3131
3157
|
}
|
|
3132
3158
|
function loadPlivoProvider() {
|
|
3133
|
-
plivoProviderPromise ??= import("./plivo
|
|
3159
|
+
plivoProviderPromise ??= import("./plivo-BjXtz_Wv.js");
|
|
3134
3160
|
return plivoProviderPromise;
|
|
3135
3161
|
}
|
|
3136
3162
|
function loadMockProvider() {
|
package/dist/runtime-entry.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as createVoiceCallRuntime } from "./runtime-entry-
|
|
1
|
+
import { t as createVoiceCallRuntime } from "./runtime-entry-X0kPF8Cf.js";
|
|
2
2
|
export { createVoiceCallRuntime };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { i as verifyTelnyxWebhook, t as guardedJsonApiRequest } from "./guarded-json-api-
|
|
1
|
+
import { i as verifyTelnyxWebhook, t as guardedJsonApiRequest } from "./guarded-json-api-CUsmSwWt.js";
|
|
2
2
|
import crypto from "node:crypto";
|
|
3
3
|
//#region extensions/voice-call/src/providers/telnyx.ts
|
|
4
4
|
function normalizeTelnyxDirection(direction) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { fetchWithSsrFGuard } from "./runtime-api.js";
|
|
2
2
|
import "./api.js";
|
|
3
|
-
import { a as getHeader, d as chunkAudio, h as mapVoiceToPolly, i as normalizeProviderStatus, m as escapeXml, n as isProviderStatusTerminal, r as mapProviderStatusToEndReason } from "./runtime-entry-
|
|
4
|
-
import { a as verifyTwilioWebhook, t as guardedJsonApiRequest } from "./guarded-json-api-
|
|
3
|
+
import { a as getHeader, d as chunkAudio, h as mapVoiceToPolly, i as normalizeProviderStatus, m as escapeXml, n as isProviderStatusTerminal, r as mapProviderStatusToEndReason } from "./runtime-entry-X0kPF8Cf.js";
|
|
4
|
+
import { a as verifyTwilioWebhook, t as guardedJsonApiRequest } from "./guarded-json-api-CUsmSwWt.js";
|
|
5
5
|
import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
6
6
|
import crypto from "node:crypto";
|
|
7
7
|
import { safeEqualSecret } from "openclaw/plugin-sdk/security-runtime";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openclaw/voice-call",
|
|
3
|
-
"version": "2026.5.16-beta.
|
|
3
|
+
"version": "2026.5.16-beta.3",
|
|
4
4
|
"description": "OpenClaw voice-call plugin",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
"openclaw": "workspace:*"
|
|
19
19
|
},
|
|
20
20
|
"peerDependencies": {
|
|
21
|
-
"openclaw": ">=2026.5.16-beta.
|
|
21
|
+
"openclaw": ">=2026.5.16-beta.3"
|
|
22
22
|
},
|
|
23
23
|
"peerDependenciesMeta": {
|
|
24
24
|
"openclaw": {
|
|
@@ -35,10 +35,10 @@
|
|
|
35
35
|
"minHostVersion": ">=2026.4.10"
|
|
36
36
|
},
|
|
37
37
|
"compat": {
|
|
38
|
-
"pluginApi": ">=2026.5.16-beta.
|
|
38
|
+
"pluginApi": ">=2026.5.16-beta.3"
|
|
39
39
|
},
|
|
40
40
|
"build": {
|
|
41
|
-
"openclawVersion": "2026.5.16-beta.
|
|
41
|
+
"openclawVersion": "2026.5.16-beta.3"
|
|
42
42
|
},
|
|
43
43
|
"release": {
|
|
44
44
|
"publishToClawHub": true,
|