@openclaw/google-meet 2026.10.5-beta.4 → 2026.10.10-beta.2
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/.setup/{cli-vTuiXh8U.mjs → cli-CBLj67Qo.mjs} +6 -16
- package/dist/.setup/{cli-export-DDUSzhh0.mjs → cli-export-3ijBYTqg.mjs} +1 -1
- package/dist/.setup/{create-0pfsnISA.mjs → create-DMUmVyQg.mjs} +2 -2
- package/dist/.setup/{plugin-helpers-BhofFtQ0.mjs → plugin-helpers-D3VKNUTD.mjs} +2 -2
- package/dist/.setup/{plugin-registration-B_Ohay99.mjs → plugin-registration-1Oc4T1Bj.mjs} +4 -4
- package/dist/.setup/{runtime-B9xiaF9M.mjs → runtime-2_R9PsRx.mjs} +49 -55
- package/dist/index.js +1 -1
- package/node_modules/typebox/build/value/clean/from_object.mjs +1 -1
- package/node_modules/typebox/package.json +1 -1
- package/package.json +5 -5
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { a as resolveArtifactQueryFromParams, c as resolveSpaceFromParams, d as endGoogleMeetActiveConference, f as fetchGoogleMeetSpace, h as listGoogleMeetCalendarEvents, l as buildGoogleMeetPreflightReport, m as buildGoogleMeetCalendarDayWindow, n as fetchResolvedGoogleMeetArtifacts, o as resolveGoogleMeetTokenFromParams, p as fetchLatestGoogleMeetConferenceRecord, r as fetchResolvedGoogleMeetAttendance, s as resolveMeetingFromParams, t as buildGoogleMeetExportRequest, u as createGoogleMeetSpace } from "./plugin-helpers-
|
|
1
|
+
import { a as resolveArtifactQueryFromParams, c as resolveSpaceFromParams, d as endGoogleMeetActiveConference, f as fetchGoogleMeetSpace, h as listGoogleMeetCalendarEvents, l as buildGoogleMeetPreflightReport, m as buildGoogleMeetCalendarDayWindow, n as fetchResolvedGoogleMeetArtifacts, o as resolveGoogleMeetTokenFromParams, p as fetchLatestGoogleMeetConferenceRecord, r as fetchResolvedGoogleMeetAttendance, s as resolveMeetingFromParams, t as buildGoogleMeetExportRequest, u as createGoogleMeetSpace } from "./plugin-helpers-D3VKNUTD.mjs";
|
|
2
2
|
import { i as resolveGoogleMeetGatewayOperationTimeoutMs } from "./config-BXGAMntj.mjs";
|
|
3
|
-
import { C as writeStdoutJson, S as writeSetupStatus, _ as resolveGoogleMeetOAuthCallbackTimeoutMs, a as renderAttendanceCsv, b as writeLeaveResult, c as callGoogleMeetGateway, d as parseGoogleMeetTransport, f as parseOptionalNumber, g as resolveCliJoinRequest, h as promptInput, i as renderAttendance, l as parseGoogleMeetBrowserTransport, m as parsePositiveNumber, n as exportGoogleMeetBundle, o as writeCalendarEventsSummary, p as parsePositiveIntegerOption, r as renderArtifacts, s as writeLatestConferenceRecordSummary, u as parseGoogleMeetMode, v as writeCliOutput, w as writeStdoutLine, x as writeRecoverCurrentTabResult, y as writeDoctorStatus } from "./cli-export-
|
|
3
|
+
import { C as writeStdoutJson, S as writeSetupStatus, _ as resolveGoogleMeetOAuthCallbackTimeoutMs, a as renderAttendanceCsv, b as writeLeaveResult, c as callGoogleMeetGateway, d as parseGoogleMeetTransport, f as parseOptionalNumber, g as resolveCliJoinRequest, h as promptInput, i as renderAttendance, l as parseGoogleMeetBrowserTransport, m as parsePositiveNumber, n as exportGoogleMeetBundle, o as writeCalendarEventsSummary, p as parsePositiveIntegerOption, r as renderArtifacts, s as writeLatestConferenceRecordSummary, u as parseGoogleMeetMode, v as writeCliOutput, w as writeStdoutLine, x as writeRecoverCurrentTabResult, y as writeDoctorStatus } from "./cli-export-3ijBYTqg.mjs";
|
|
4
4
|
import { buildGoogleMeetAuthUrl, exchangeGoogleMeetAuthCode, resolveGoogleMeetAccessToken, waitForGoogleMeetAuthCode } from "./oauth-pXa-YQ9H.mjs";
|
|
5
|
-
import { i as hasGoogleMeetOAuth, r as hasCreateSpaceConfigInput, t as createSpaceFromParams } from "./create-
|
|
5
|
+
import { i as hasGoogleMeetOAuth, r as hasCreateSpaceConfigInput, t as createSpaceFromParams } from "./create-DMUmVyQg.mjs";
|
|
6
6
|
import { parseStrictNonNegativeInteger } from "openclaw/plugin-sdk/number-runtime";
|
|
7
7
|
import { generateHexPkceVerifierChallenge } from "openclaw/plugin-sdk/provider-auth";
|
|
8
8
|
import { generateOAuthState } from "openclaw/plugin-sdk/provider-auth-runtime";
|
|
@@ -248,18 +248,8 @@ function registerGoogleMeetProbeCommands(context) {
|
|
|
248
248
|
const { root, operationTimeoutMs } = context;
|
|
249
249
|
root.command("join").argument("[url]", "Explicit https://meet.google.com/... URL").option("--transport <transport>", "Transport: chrome, chrome-node, or twilio").option("--mode <mode>", "Mode: agent, bidi, or transcribe").option("--message <text>", "Realtime speech to trigger after join").option("--dial-in-number <phone>", "Meet dial-in number for Twilio transport").option("--pin <pin>", "Meet phone PIN; # is appended if omitted").option("--dtmf-sequence <sequence>", "Explicit Twilio DTMF sequence").action(async (url, options) => {
|
|
250
250
|
const payload = resolveCliJoinRequest(resolveCliMeetingInput(context.config, url), options);
|
|
251
|
-
const
|
|
252
|
-
|
|
253
|
-
payload,
|
|
254
|
-
timeoutMs: operationTimeoutMs
|
|
255
|
-
});
|
|
256
|
-
if (delegated.ok) {
|
|
257
|
-
const result = delegated.payload;
|
|
258
|
-
writeStdoutJson(result.session ?? delegated.payload);
|
|
259
|
-
return;
|
|
260
|
-
}
|
|
261
|
-
const result = await (await context.ensureRuntime()).join(payload);
|
|
262
|
-
writeStdoutJson(result.session);
|
|
251
|
+
const result = await callGoogleMeetRuntime(context, "googlemeet.join", payload, (rt) => rt.join(payload), operationTimeoutMs);
|
|
252
|
+
writeStdoutJson(result.session ?? result);
|
|
263
253
|
});
|
|
264
254
|
root.command("test-speech").argument("[url]", "Explicit https://meet.google.com/... URL").option("--transport <transport>", "Transport: chrome, chrome-node, or twilio").option("--mode <mode>", "Mode: agent, bidi, or transcribe").option("--message <text>", "Realtime speech to trigger", "Say exactly: Google Meet speech test complete.").action(async (url, options) => {
|
|
265
255
|
const payload = {
|
|
@@ -422,7 +412,7 @@ function registerGoogleMeetCreateCommands(context) {
|
|
|
422
412
|
}
|
|
423
413
|
function registerGoogleMeetApiCommands(context) {
|
|
424
414
|
const { root } = context;
|
|
425
|
-
addGoogleMeetOAuthOptions(addGoogleMeetMeetingOption(root.command("resolve-space").description("Resolve a Meet URL, meeting code, or spaces/{id} to
|
|
415
|
+
addGoogleMeetOAuthOptions(addGoogleMeetMeetingOption(root.command("resolve-space").description("Resolve a Meet URL, meeting code, or spaces/{id} to the matching space"))).option("--json", "Print JSON output", false).action(async (options) => {
|
|
426
416
|
const meeting = resolveCliMeetingInput(context.config, options.meeting);
|
|
427
417
|
const { space, token } = await resolveSpaceFromParams(context.config, {
|
|
428
418
|
...resolveCliParams(options),
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { g as __exportAll } from "./plugin-helpers-
|
|
1
|
+
import { g as __exportAll } from "./plugin-helpers-D3VKNUTD.mjs";
|
|
2
2
|
import { clampTimerTimeoutMs, parseStrictPositiveInteger } from "openclaw/plugin-sdk/number-runtime";
|
|
3
3
|
import fsp, { stat } from "node:fs/promises";
|
|
4
4
|
import path from "node:path";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { g as __exportAll, o as resolveGoogleMeetTokenFromParams, u as createGoogleMeetSpace } from "./plugin-helpers-
|
|
2
|
-
import { d as normalizeMode, f as normalizeTransport } from "./plugin-registration-
|
|
1
|
+
import { g as __exportAll, o as resolveGoogleMeetTokenFromParams, u as createGoogleMeetSpace } from "./plugin-helpers-D3VKNUTD.mjs";
|
|
2
|
+
import { d as normalizeMode, f as normalizeTransport } from "./plugin-registration-1Oc4T1Bj.mjs";
|
|
3
3
|
import { t as createMeetWithBrowserProxyOnNode } from "./chrome-create-CW_QQzuj.mjs";
|
|
4
4
|
import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
5
5
|
//#region extensions/google-meet/src/create.ts
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { m as resolveMeetingInput } from "./plugin-registration-
|
|
1
|
+
import { m as resolveMeetingInput } from "./plugin-registration-1Oc4T1Bj.mjs";
|
|
2
2
|
import { n as requestGoogleApi } from "./google-api-KAOF1Wn5.mjs";
|
|
3
3
|
import { t as normalizeMeetUrl } from "./meet-url-i_QvIxnP.mjs";
|
|
4
4
|
import { normalizeOptionalString, uniqueStrings } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
@@ -598,7 +598,7 @@ var plugin_helpers_exports = /* @__PURE__ */ __exportAll({
|
|
|
598
598
|
resolveMeetingFromParams: () => resolveMeetingFromParams,
|
|
599
599
|
resolveSpaceFromParams: () => resolveSpaceFromParams
|
|
600
600
|
});
|
|
601
|
-
const loadGoogleMeetExportModule = createLazyRuntimeModule(() => import("./cli-export-
|
|
601
|
+
const loadGoogleMeetExportModule = createLazyRuntimeModule(() => import("./cli-export-3ijBYTqg.mjs").then((n) => n.t));
|
|
602
602
|
async function resolveGoogleMeetTokenFromParams(config, raw) {
|
|
603
603
|
const { resolveGoogleMeetAccessToken } = await import("./oauth-pXa-YQ9H.mjs");
|
|
604
604
|
return resolveGoogleMeetAccessToken({
|
|
@@ -4,11 +4,11 @@ import { asNonArrayRecord, normalizeOptionalString } from "openclaw/plugin-sdk/s
|
|
|
4
4
|
import { formatErrorMessage } from "openclaw/plugin-sdk/error-runtime";
|
|
5
5
|
import { createLazyRuntimeModule } from "openclaw/plugin-sdk/lazy-runtime";
|
|
6
6
|
//#region extensions/google-meet/src/plugin-registration.ts
|
|
7
|
-
const loadGoogleMeetPluginHelpers = createLazyRuntimeModule(() => import("./plugin-helpers-
|
|
8
|
-
const loadGoogleMeetCliModule = createLazyRuntimeModule(() => import("./cli-
|
|
9
|
-
const loadGoogleMeetCreateModule = createLazyRuntimeModule(() => import("./create-
|
|
7
|
+
const loadGoogleMeetPluginHelpers = createLazyRuntimeModule(() => import("./plugin-helpers-D3VKNUTD.mjs").then((n) => n.i));
|
|
8
|
+
const loadGoogleMeetCliModule = createLazyRuntimeModule(() => import("./cli-CBLj67Qo.mjs"));
|
|
9
|
+
const loadGoogleMeetCreateModule = createLazyRuntimeModule(() => import("./create-DMUmVyQg.mjs").then((n) => n.n));
|
|
10
10
|
const loadGoogleMeetNodeHostModule = createLazyRuntimeModule(() => import("./node-host-BP4g4zw3.mjs"));
|
|
11
|
-
const loadGoogleMeetRuntimeModule = createLazyRuntimeModule(() => import("./runtime-
|
|
11
|
+
const loadGoogleMeetRuntimeModule = createLazyRuntimeModule(() => import("./runtime-2_R9PsRx.mjs"));
|
|
12
12
|
const loadGoogleMeetNodeInvokePolicyModule = createLazyRuntimeModule(() => import("./node-invoke-policy-67WaZNPN.mjs"));
|
|
13
13
|
const loadGoogleMeetGatewayRuntimeModule = createLazyRuntimeModule(() => import("openclaw/plugin-sdk/gateway-runtime"));
|
|
14
14
|
function normalizeTransport(value) {
|
|
@@ -35,29 +35,6 @@ const probes = MeetingPlatformAdapter.createRuntimeProbes({
|
|
|
35
35
|
const testGoogleMeetListening = probes.testListening;
|
|
36
36
|
const testGoogleMeetSpeech = probes.testSpeech;
|
|
37
37
|
//#endregion
|
|
38
|
-
//#region extensions/google-meet/src/runtime-session.ts
|
|
39
|
-
function resolveTransport(input, config) {
|
|
40
|
-
return input ?? config.defaultTransport;
|
|
41
|
-
}
|
|
42
|
-
function resolveMode(input, config) {
|
|
43
|
-
return input === "realtime" ? "agent" : input ?? config.defaultMode;
|
|
44
|
-
}
|
|
45
|
-
function withSessionAgentConfig(config, agentId) {
|
|
46
|
-
return config.realtime.agentId === agentId ? config : {
|
|
47
|
-
...config,
|
|
48
|
-
realtime: {
|
|
49
|
-
...config.realtime,
|
|
50
|
-
agentId
|
|
51
|
-
}
|
|
52
|
-
};
|
|
53
|
-
}
|
|
54
|
-
function isBrowserTransport(transport) {
|
|
55
|
-
return transport === "chrome" || transport === "chrome-node";
|
|
56
|
-
}
|
|
57
|
-
function noteSession(session, note) {
|
|
58
|
-
session.notes = [...session.notes.filter((item) => item !== note), note];
|
|
59
|
-
}
|
|
60
|
-
//#endregion
|
|
61
38
|
//#region extensions/google-meet/src/setup.ts
|
|
62
39
|
function resolveUserPath(input) {
|
|
63
40
|
if (input === "~") return os.homedir();
|
|
@@ -211,21 +188,30 @@ const launchChromeMeet = chromeTransport.launchInChrome;
|
|
|
211
188
|
function shouldCaptureCaptions(mode, fullConfig) {
|
|
212
189
|
return mode === "transcribe" || !fullConfig || resolveTranscriptsConfig(fullConfig.transcripts).enabled;
|
|
213
190
|
}
|
|
214
|
-
function
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
runtime
|
|
218
|
-
|
|
191
|
+
async function resolveChromeBrowserRoute(params) {
|
|
192
|
+
if (params.transport !== "chrome-node") return {
|
|
193
|
+
transport: "chrome",
|
|
194
|
+
callBrowser: await resolveLocalMeetingBrowserRequest(params.runtime)
|
|
195
|
+
};
|
|
196
|
+
const nodeId = params.nodeId ?? await resolveChromeNode({
|
|
197
|
+
runtime: params.runtime,
|
|
198
|
+
requestedNode: params.config.chromeNode.node
|
|
219
199
|
});
|
|
200
|
+
return {
|
|
201
|
+
transport: "chrome-node",
|
|
202
|
+
nodeId,
|
|
203
|
+
callBrowser: (request) => callBrowserProxyOnNode({
|
|
204
|
+
...request,
|
|
205
|
+
runtime: params.runtime,
|
|
206
|
+
nodeId
|
|
207
|
+
})
|
|
208
|
+
};
|
|
220
209
|
}
|
|
221
210
|
async function leaveChromeMeet(params) {
|
|
222
|
-
const
|
|
223
|
-
|
|
224
|
-
requestedNode: params.config.chromeNode.node
|
|
225
|
-
}) } : void 0;
|
|
226
|
-
return await leaveMeetingWithBrowser({
|
|
211
|
+
const { callBrowser } = await resolveChromeBrowserRoute(params);
|
|
212
|
+
return leaveMeetingWithBrowser({
|
|
227
213
|
adapter: GOOGLE_MEET_PLATFORM_ADAPTER,
|
|
228
|
-
callBrowser
|
|
214
|
+
callBrowser,
|
|
229
215
|
launch: params.config.chrome.launch,
|
|
230
216
|
meetingSessionId: params.meetingSessionId,
|
|
231
217
|
meetingUrl: params.meetingUrl,
|
|
@@ -234,13 +220,10 @@ async function leaveChromeMeet(params) {
|
|
|
234
220
|
});
|
|
235
221
|
}
|
|
236
222
|
async function readChromeMeetTranscript(params) {
|
|
237
|
-
const
|
|
238
|
-
|
|
239
|
-
requestedNode: params.config.chromeNode.node
|
|
240
|
-
}) } : void 0;
|
|
241
|
-
return await readMeetingTranscriptWithBrowser({
|
|
223
|
+
const { callBrowser } = await resolveChromeBrowserRoute(params);
|
|
224
|
+
return readMeetingTranscriptWithBrowser({
|
|
242
225
|
adapter: GOOGLE_MEET_PLATFORM_ADAPTER,
|
|
243
|
-
callBrowser
|
|
226
|
+
callBrowser,
|
|
244
227
|
finalize: params.finalize === true,
|
|
245
228
|
meetingUrl: params.meetingUrl,
|
|
246
229
|
meetingSessionId: params.meetingSessionId,
|
|
@@ -249,21 +232,18 @@ async function readChromeMeetTranscript(params) {
|
|
|
249
232
|
});
|
|
250
233
|
}
|
|
251
234
|
async function recoverCurrentMeetTab(params) {
|
|
252
|
-
const
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
})
|
|
235
|
+
const { callBrowser, ...route } = await resolveChromeBrowserRoute({
|
|
236
|
+
...params,
|
|
237
|
+
nodeId: void 0
|
|
238
|
+
});
|
|
256
239
|
return {
|
|
257
|
-
...
|
|
258
|
-
transport: "chrome-node",
|
|
259
|
-
nodeId: node.nodeId
|
|
260
|
-
} : { transport: "chrome" },
|
|
240
|
+
...route,
|
|
261
241
|
...await recoverMeetingBrowserTab({
|
|
262
242
|
adapter: GOOGLE_MEET_PLATFORM_ADAPTER,
|
|
263
|
-
callBrowser
|
|
243
|
+
callBrowser,
|
|
264
244
|
captureCaptions: shouldCaptureCaptions(params.mode ?? "bidi", params.fullConfig),
|
|
265
245
|
config: params.config.chrome,
|
|
266
|
-
locationLabel: node ? "on the selected Chrome node" : "in local Chrome",
|
|
246
|
+
locationLabel: route.transport === "chrome-node" ? "on the selected Chrome node" : "in local Chrome",
|
|
267
247
|
mode: params.mode ?? "bidi",
|
|
268
248
|
readOnly: params.readOnly,
|
|
269
249
|
requestedMeetingUrl: params.url,
|
|
@@ -437,6 +417,21 @@ async function joinMeetViaVoiceCallGateway(params) {
|
|
|
437
417
|
//#endregion
|
|
438
418
|
//#region extensions/google-meet/src/runtime.ts
|
|
439
419
|
const nowIso = () => (/* @__PURE__ */ new Date()).toISOString();
|
|
420
|
+
function isBrowserTransport(transport) {
|
|
421
|
+
return transport === "chrome" || transport === "chrome-node";
|
|
422
|
+
}
|
|
423
|
+
function noteSession(session, note) {
|
|
424
|
+
session.notes = [...session.notes.filter((item) => item !== note), note];
|
|
425
|
+
}
|
|
426
|
+
function withSessionAgentConfig(config, agentId) {
|
|
427
|
+
return config.realtime.agentId === agentId ? config : {
|
|
428
|
+
...config,
|
|
429
|
+
realtime: {
|
|
430
|
+
...config.realtime,
|
|
431
|
+
agentId
|
|
432
|
+
}
|
|
433
|
+
};
|
|
434
|
+
}
|
|
440
435
|
var GoogleMeetRuntime = class extends MeetingSessionRuntime {
|
|
441
436
|
#createdBrowserTabs = /* @__PURE__ */ new Map();
|
|
442
437
|
#voiceCallGateway;
|
|
@@ -496,8 +491,8 @@ var GoogleMeetRuntime = class extends MeetingSessionRuntime {
|
|
|
496
491
|
},
|
|
497
492
|
resolveJoin: (request) => ({
|
|
498
493
|
url: adapter.urls.validateAndNormalize(request.url),
|
|
499
|
-
transport:
|
|
500
|
-
mode:
|
|
494
|
+
transport: request.transport ?? params.config.defaultTransport,
|
|
495
|
+
mode: request.mode === "realtime" ? "agent" : request.mode ?? params.config.defaultMode,
|
|
501
496
|
agentId: this.#resolveAgentId(request.agentId)
|
|
502
497
|
}),
|
|
503
498
|
createSession: ({ resolved, createdAt }) => createMeetingSession({
|
|
@@ -562,7 +557,7 @@ var GoogleMeetRuntime = class extends MeetingSessionRuntime {
|
|
|
562
557
|
return result;
|
|
563
558
|
}
|
|
564
559
|
async recoverCurrentTab(request = {}) {
|
|
565
|
-
const transport =
|
|
560
|
+
const transport = request.transport ?? this.params.config.defaultTransport;
|
|
566
561
|
if (transport === "twilio") throw new Error("recover_current_tab only supports chrome or chrome-node transports");
|
|
567
562
|
const url = request.url ? GOOGLE_MEET_PLATFORM_ADAPTER.urls.validateAndNormalize(request.url) : void 0;
|
|
568
563
|
return await recoverCurrentMeetTab({
|
|
@@ -752,8 +747,7 @@ var GoogleMeetRuntime = class extends MeetingSessionRuntime {
|
|
|
752
747
|
force: true,
|
|
753
748
|
readOnly: true
|
|
754
749
|
});
|
|
755
|
-
else
|
|
756
|
-
else this.refreshSpeechReadiness(session);
|
|
750
|
+
else await this.#refreshTwilioVoiceCallStatus(session);
|
|
757
751
|
}
|
|
758
752
|
async #refreshTwilioVoiceCallStatus(session) {
|
|
759
753
|
const callId = session.twilio?.voiceCallId;
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as GOOGLE_MEET_CLI_DESCRIPTOR } from "./.setup/cli-output-mode-BwH_6tH8.mjs";
|
|
2
2
|
import { n as GOOGLE_MEET_NODE_COMMAND } from "./.setup/google-meet-platform-constants-CnRfrYX7.mjs";
|
|
3
3
|
import { r as resolveGoogleMeetConfig } from "./.setup/config-BXGAMntj.mjs";
|
|
4
|
-
import { a as formatGoogleMeetGatewayError, c as loadGoogleMeetCreateModule, d as normalizeMode, f as normalizeTransport, g as shouldJoinCreatedMeet, h as sendGoogleMeetGatewayError, i as createLazyGoogleMeetNodeInvokePolicy, l as loadGoogleMeetNodeHostModule, m as resolveMeetingInput, n as callGoogleMeetGatewayFromTool, o as keepTrustedToolAgentId, p as readGoogleMeetParticipationParams, r as createGoogleMeetRuntimeAccessor, s as loadGoogleMeetCliModule, t as assertGoogleMeetAgentToolActionSupported, u as loadGoogleMeetPluginHelpers } from "./.setup/plugin-registration-
|
|
4
|
+
import { a as formatGoogleMeetGatewayError, c as loadGoogleMeetCreateModule, d as normalizeMode, f as normalizeTransport, g as shouldJoinCreatedMeet, h as sendGoogleMeetGatewayError, i as createLazyGoogleMeetNodeInvokePolicy, l as loadGoogleMeetNodeHostModule, m as resolveMeetingInput, n as callGoogleMeetGatewayFromTool, o as keepTrustedToolAgentId, p as readGoogleMeetParticipationParams, r as createGoogleMeetRuntimeAccessor, s as loadGoogleMeetCliModule, t as assertGoogleMeetAgentToolActionSupported, u as loadGoogleMeetPluginHelpers } from "./.setup/plugin-registration-1Oc4T1Bj.mjs";
|
|
5
5
|
import { definePluginEntry } from "openclaw/plugin-sdk/plugin-entry";
|
|
6
6
|
import { asNonArrayRecord, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
7
7
|
import { jsonResult } from "openclaw/plugin-sdk/tool-results";
|
|
@@ -12,7 +12,7 @@ export function FromObject(context, type, value) {
|
|
|
12
12
|
return value;
|
|
13
13
|
const additionalProperties = GetAdditionalProperties(type);
|
|
14
14
|
for (const key of Guard.Keys(value)) {
|
|
15
|
-
if (Guard.HasPropertyKey(type.properties, key)) {
|
|
15
|
+
if (Guard.HasPropertyKey(type.properties, key) && IsSchema(type.properties[key])) {
|
|
16
16
|
value[key] = FromType(context, type.properties[key], value[key]);
|
|
17
17
|
continue;
|
|
18
18
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openclaw/google-meet",
|
|
3
|
-
"version": "2026.10.
|
|
3
|
+
"version": "2026.10.10-beta.2",
|
|
4
4
|
"description": "OpenClaw Google Meet participant plugin for joining calls through Chrome or Twilio transports.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -9,10 +9,10 @@
|
|
|
9
9
|
"type": "module",
|
|
10
10
|
"dependencies": {
|
|
11
11
|
"jszip": "3.10.2",
|
|
12
|
-
"typebox": "1.3.
|
|
12
|
+
"typebox": "1.3.35"
|
|
13
13
|
},
|
|
14
14
|
"peerDependencies": {
|
|
15
|
-
"openclaw": ">=2026.10.
|
|
15
|
+
"openclaw": ">=2026.10.10-beta.2"
|
|
16
16
|
},
|
|
17
17
|
"peerDependenciesMeta": {
|
|
18
18
|
"openclaw": {
|
|
@@ -30,10 +30,10 @@
|
|
|
30
30
|
"minHostVersion": ">=2026.4.20"
|
|
31
31
|
},
|
|
32
32
|
"compat": {
|
|
33
|
-
"pluginApi": ">=2026.10.
|
|
33
|
+
"pluginApi": ">=2026.10.10-beta.2"
|
|
34
34
|
},
|
|
35
35
|
"build": {
|
|
36
|
-
"openclawVersion": "2026.10.
|
|
36
|
+
"openclawVersion": "2026.10.10-beta.2"
|
|
37
37
|
},
|
|
38
38
|
"release": {
|
|
39
39
|
"publishToClawHub": true,
|