@camstack/types 0.1.40 → 0.1.42
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/addon/base-addon.d.ts +12 -0
- package/dist/addon/base-addon.d.ts.map +1 -1
- package/dist/addon/durable-state.d.ts +33 -0
- package/dist/addon/durable-state.d.ts.map +1 -0
- package/dist/capabilities/accessories.cap.d.ts +56 -8
- package/dist/capabilities/accessories.cap.d.ts.map +1 -1
- package/dist/capabilities/advanced-notifier.cap.d.ts +4 -0
- package/dist/capabilities/advanced-notifier.cap.d.ts.map +1 -1
- package/dist/capabilities/air-quality-sensor.cap.d.ts +56 -0
- package/dist/capabilities/air-quality-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/alarm-panel.cap.d.ts +154 -0
- package/dist/capabilities/alarm-panel.cap.d.ts.map +1 -0
- package/dist/capabilities/ambient-light-sensor.cap.d.ts +39 -0
- package/dist/capabilities/ambient-light-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/automation-control.cap.d.ts +65 -0
- package/dist/capabilities/automation-control.cap.d.ts.map +1 -0
- package/dist/capabilities/battery.cap.d.ts +30 -1
- package/dist/capabilities/battery.cap.d.ts.map +1 -1
- package/dist/capabilities/binary.cap.d.ts +40 -0
- package/dist/capabilities/binary.cap.d.ts.map +1 -0
- package/dist/capabilities/brightness.cap.d.ts +3 -2
- package/dist/capabilities/brightness.cap.d.ts.map +1 -1
- package/dist/capabilities/broker.cap.d.ts +291 -0
- package/dist/capabilities/broker.cap.d.ts.map +1 -0
- package/dist/capabilities/button.cap.d.ts +27 -0
- package/dist/capabilities/button.cap.d.ts.map +1 -0
- package/dist/capabilities/camera-credentials.cap.d.ts +1 -0
- package/dist/capabilities/camera-credentials.cap.d.ts.map +1 -1
- package/dist/capabilities/camera-streams.cap.d.ts +147 -10
- package/dist/capabilities/camera-streams.cap.d.ts.map +1 -1
- package/dist/capabilities/capability-definition.d.ts +15 -0
- package/dist/capabilities/capability-definition.d.ts.map +1 -1
- package/dist/capabilities/carbon-monoxide.cap.d.ts +33 -0
- package/dist/capabilities/carbon-monoxide.cap.d.ts.map +1 -0
- package/dist/capabilities/climate-control.cap.d.ts +183 -0
- package/dist/capabilities/climate-control.cap.d.ts.map +1 -0
- package/dist/capabilities/color.cap.d.ts +186 -0
- package/dist/capabilities/color.cap.d.ts.map +1 -0
- package/dist/capabilities/connectivity.cap.d.ts +37 -0
- package/dist/capabilities/connectivity.cap.d.ts.map +1 -0
- package/dist/capabilities/consumables.cap.d.ts +105 -0
- package/dist/capabilities/consumables.cap.d.ts.map +1 -0
- package/dist/capabilities/contact.cap.d.ts +41 -0
- package/dist/capabilities/contact.cap.d.ts.map +1 -0
- package/dist/capabilities/control.cap.d.ts +167 -0
- package/dist/capabilities/control.cap.d.ts.map +1 -0
- package/dist/capabilities/cover.cap.d.ts +104 -0
- package/dist/capabilities/cover.cap.d.ts.map +1 -0
- package/dist/capabilities/custom-actions.d.ts +6 -0
- package/dist/capabilities/custom-actions.d.ts.map +1 -1
- package/dist/capabilities/decoder.cap.d.ts +1 -1
- package/dist/capabilities/device-adoption.cap.d.ts +203 -0
- package/dist/capabilities/device-adoption.cap.d.ts.map +1 -0
- package/dist/capabilities/device-discovery.cap.d.ts +44 -143
- package/dist/capabilities/device-discovery.cap.d.ts.map +1 -1
- package/dist/capabilities/device-manager.cap.d.ts +469 -0
- package/dist/capabilities/device-manager.cap.d.ts.map +1 -1
- package/dist/capabilities/device-ops.cap.d.ts +30 -0
- package/dist/capabilities/device-ops.cap.d.ts.map +1 -1
- package/dist/capabilities/device-provider.cap.d.ts +36 -0
- package/dist/capabilities/device-provider.cap.d.ts.map +1 -1
- package/dist/capabilities/device-status.cap.d.ts +1 -0
- package/dist/capabilities/device-status.cap.d.ts.map +1 -1
- package/dist/capabilities/doorbell.cap.d.ts +1 -0
- package/dist/capabilities/doorbell.cap.d.ts.map +1 -1
- package/dist/capabilities/enum-sensor.cap.d.ts +60 -0
- package/dist/capabilities/enum-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/event-emitter.cap.d.ts +79 -0
- package/dist/capabilities/event-emitter.cap.d.ts.map +1 -0
- package/dist/capabilities/fan-control.cap.d.ts +100 -0
- package/dist/capabilities/fan-control.cap.d.ts.map +1 -0
- package/dist/capabilities/feature-probe.cap.d.ts +1 -0
- package/dist/capabilities/feature-probe.cap.d.ts.map +1 -1
- package/dist/capabilities/filesystem-browse.cap.d.ts +39 -0
- package/dist/capabilities/filesystem-browse.cap.d.ts.map +1 -0
- package/dist/capabilities/flood.cap.d.ts +37 -0
- package/dist/capabilities/flood.cap.d.ts.map +1 -0
- package/dist/capabilities/gas.cap.d.ts +34 -0
- package/dist/capabilities/gas.cap.d.ts.map +1 -0
- package/dist/capabilities/humidifier.cap.d.ts +82 -0
- package/dist/capabilities/humidifier.cap.d.ts.map +1 -0
- package/dist/capabilities/humidity-sensor.cap.d.ts +43 -0
- package/dist/capabilities/humidity-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/image.cap.d.ts +44 -0
- package/dist/capabilities/image.cap.d.ts.map +1 -0
- package/dist/capabilities/index.d.ts +97 -12
- package/dist/capabilities/index.d.ts.map +1 -1
- package/dist/capabilities/integrations.cap.d.ts +12 -0
- package/dist/capabilities/integrations.cap.d.ts.map +1 -1
- package/dist/capabilities/intercom.cap.d.ts +49 -9
- package/dist/capabilities/intercom.cap.d.ts.map +1 -1
- package/dist/capabilities/lawn-mower-control.cap.d.ts +83 -0
- package/dist/capabilities/lawn-mower-control.cap.d.ts.map +1 -0
- package/dist/capabilities/lock-control.cap.d.ts +92 -0
- package/dist/capabilities/lock-control.cap.d.ts.map +1 -0
- package/dist/capabilities/media-player.cap.d.ts +201 -0
- package/dist/capabilities/media-player.cap.d.ts.map +1 -0
- package/dist/capabilities/motion-trigger.cap.d.ts +1 -0
- package/dist/capabilities/motion-trigger.cap.d.ts.map +1 -1
- package/dist/capabilities/motion-zones.cap.d.ts +1 -0
- package/dist/capabilities/motion-zones.cap.d.ts.map +1 -1
- package/dist/capabilities/native-object-detection.cap.d.ts +1 -0
- package/dist/capabilities/native-object-detection.cap.d.ts.map +1 -1
- package/dist/capabilities/network-quality.cap.d.ts +5 -0
- package/dist/capabilities/network-quality.cap.d.ts.map +1 -1
- package/dist/capabilities/notifier.cap.d.ts +173 -0
- package/dist/capabilities/notifier.cap.d.ts.map +1 -0
- package/dist/capabilities/numeric-sensor.cap.d.ts +52 -0
- package/dist/capabilities/numeric-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/osd.cap.d.ts +1 -0
- package/dist/capabilities/osd.cap.d.ts.map +1 -1
- package/dist/capabilities/pipeline-analytics.cap.d.ts +69 -22
- package/dist/capabilities/pipeline-analytics.cap.d.ts.map +1 -1
- package/dist/capabilities/pipeline-executor.cap.d.ts +2 -2
- package/dist/capabilities/pipeline-orchestrator.cap.d.ts +1 -1
- package/dist/capabilities/pipeline-runner.cap.d.ts +2 -2
- package/dist/capabilities/platform-probe.cap.d.ts +25 -0
- package/dist/capabilities/platform-probe.cap.d.ts.map +1 -1
- package/dist/capabilities/power-meter.cap.d.ts +65 -0
- package/dist/capabilities/power-meter.cap.d.ts.map +1 -0
- package/dist/capabilities/presence.cap.d.ts +79 -0
- package/dist/capabilities/presence.cap.d.ts.map +1 -0
- package/dist/capabilities/pressure-sensor.cap.d.ts +43 -0
- package/dist/capabilities/pressure-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/privacy-mask.cap.d.ts +1 -0
- package/dist/capabilities/privacy-mask.cap.d.ts.map +1 -1
- package/dist/capabilities/ptz-autotrack.cap.d.ts +1 -0
- package/dist/capabilities/ptz-autotrack.cap.d.ts.map +1 -1
- package/dist/capabilities/ptz.cap.d.ts +1 -0
- package/dist/capabilities/ptz.cap.d.ts.map +1 -1
- package/dist/capabilities/reboot.cap.d.ts +1 -0
- package/dist/capabilities/reboot.cap.d.ts.map +1 -1
- package/dist/capabilities/recording.cap.d.ts +367 -32
- package/dist/capabilities/recording.cap.d.ts.map +1 -1
- package/dist/capabilities/restreamer.cap.d.ts +2 -2
- package/dist/capabilities/schemas/orchestrator-metrics.d.ts +2 -2
- package/dist/capabilities/schemas/streaming-shared.d.ts +64 -1
- package/dist/capabilities/schemas/streaming-shared.d.ts.map +1 -1
- package/dist/capabilities/script-runner.cap.d.ts +62 -0
- package/dist/capabilities/script-runner.cap.d.ts.map +1 -0
- package/dist/capabilities/settings-store.cap.d.ts +25 -0
- package/dist/capabilities/settings-store.cap.d.ts.map +1 -1
- package/dist/capabilities/smoke.cap.d.ts +38 -0
- package/dist/capabilities/smoke.cap.d.ts.map +1 -0
- package/dist/capabilities/snapshot-provider.cap.d.ts +1 -1
- package/dist/capabilities/snapshot.cap.d.ts +1 -0
- package/dist/capabilities/snapshot.cap.d.ts.map +1 -1
- package/dist/capabilities/storage-evictable.cap.d.ts +54 -0
- package/dist/capabilities/storage-evictable.cap.d.ts.map +1 -0
- package/dist/capabilities/storage-provider.cap.d.ts +46 -186
- package/dist/capabilities/storage-provider.cap.d.ts.map +1 -1
- package/dist/capabilities/storage.cap.d.ts +41 -226
- package/dist/capabilities/storage.cap.d.ts.map +1 -1
- package/dist/capabilities/stream-broker.cap.d.ts +323 -25
- package/dist/capabilities/stream-broker.cap.d.ts.map +1 -1
- package/dist/capabilities/stream-catalog.cap.d.ts +3 -0
- package/dist/capabilities/stream-catalog.cap.d.ts.map +1 -1
- package/dist/capabilities/stream-params.cap.d.ts +27 -26
- package/dist/capabilities/stream-params.cap.d.ts.map +1 -1
- package/dist/capabilities/switch.cap.d.ts +1 -0
- package/dist/capabilities/switch.cap.d.ts.map +1 -1
- package/dist/capabilities/tamper.cap.d.ts +33 -0
- package/dist/capabilities/tamper.cap.d.ts.map +1 -0
- package/dist/capabilities/temperature-sensor.cap.d.ts +51 -0
- package/dist/capabilities/temperature-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/update.cap.d.ts +49 -0
- package/dist/capabilities/update.cap.d.ts.map +1 -0
- package/dist/capabilities/vacuum-control.cap.d.ts +229 -0
- package/dist/capabilities/vacuum-control.cap.d.ts.map +1 -0
- package/dist/capabilities/valve.cap.d.ts +93 -0
- package/dist/capabilities/valve.cap.d.ts.map +1 -0
- package/dist/capabilities/vibration.cap.d.ts +33 -0
- package/dist/capabilities/vibration.cap.d.ts.map +1 -0
- package/dist/capabilities/videoclips.cap.d.ts +77 -0
- package/dist/capabilities/videoclips.cap.d.ts.map +1 -0
- package/dist/capabilities/water-heater.cap.d.ts +78 -0
- package/dist/capabilities/water-heater.cap.d.ts.map +1 -0
- package/dist/capabilities/weather.cap.d.ts +76 -0
- package/dist/capabilities/weather.cap.d.ts.map +1 -0
- package/dist/capabilities/webrtc-session.cap.d.ts +95 -1
- package/dist/capabilities/webrtc-session.cap.d.ts.map +1 -1
- package/dist/constants.d.ts +0 -2
- package/dist/constants.d.ts.map +1 -1
- package/dist/device/base-device-provider.d.ts +11 -0
- package/dist/device/base-device-provider.d.ts.map +1 -1
- package/dist/device/base-device.d.ts +52 -0
- package/dist/device/base-device.d.ts.map +1 -1
- package/dist/device/device-context.d.ts +29 -0
- package/dist/device/device-context.d.ts.map +1 -1
- package/dist/device/device-link-transform.d.ts +6 -0
- package/dist/device/device-link-transform.d.ts.map +1 -0
- package/dist/device/device-management.d.ts +116 -4
- package/dist/device/device-management.d.ts.map +1 -1
- package/dist/device/device-type.d.ts +214 -3
- package/dist/device/device-type.d.ts.map +1 -1
- package/dist/device/device.d.ts +25 -0
- package/dist/device/device.d.ts.map +1 -1
- package/dist/device/index.d.ts +5 -1
- package/dist/device/index.d.ts.map +1 -1
- package/dist/device/path-util.d.ts +13 -0
- package/dist/device/path-util.d.ts.map +1 -0
- package/dist/device/schema-fields.d.ts +12 -0
- package/dist/device/schema-fields.d.ts.map +1 -0
- package/dist/device/source-info.d.ts +87 -0
- package/dist/device/source-info.d.ts.map +1 -0
- package/dist/device/system-mirror.d.ts +6 -2
- package/dist/device/system-mirror.d.ts.map +1 -1
- package/dist/encode-profile.d.ts +126 -0
- package/dist/encode-profile.d.ts.map +1 -0
- package/dist/enums/event-category.d.ts +64 -6
- package/dist/enums/event-category.d.ts.map +1 -1
- package/dist/generated/addon-api.d.ts +12722 -8080
- package/dist/generated/addon-api.d.ts.map +1 -1
- package/dist/generated/cap-status-types.d.ts +85 -1
- package/dist/generated/cap-status-types.d.ts.map +1 -1
- package/dist/generated/capability-router-map.d.ts +139 -7
- package/dist/generated/capability-router-map.d.ts.map +1 -1
- package/dist/generated/device-local-state.d.ts +117 -0
- package/dist/generated/device-local-state.d.ts.map +1 -1
- package/dist/generated/device-proxy.d.ts +126 -5
- package/dist/generated/device-proxy.d.ts.map +1 -1
- package/dist/generated/method-access-map.d.ts +1 -1
- package/dist/generated/method-access-map.d.ts.map +1 -1
- package/dist/generated/provider-kind-map.d.ts +1 -1
- package/dist/generated/provider-kind-map.d.ts.map +1 -1
- package/dist/generated/system-proxy.d.ts +10 -8
- package/dist/generated/system-proxy.d.ts.map +1 -1
- package/dist/{index-C2zzIDdX.mjs → index-BxWo3b49.mjs} +4714 -1113
- package/dist/index-BxWo3b49.mjs.map +1 -0
- package/dist/{index-DnpdVFKv.js → index-CGMPfVaT.js} +4321 -720
- package/dist/index-CGMPfVaT.js.map +1 -0
- package/dist/index.d.ts +22 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1384 -116
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1698 -430
- package/dist/index.mjs.map +1 -1
- package/dist/interfaces/addon-data-plane.d.ts +76 -0
- package/dist/interfaces/addon-data-plane.d.ts.map +1 -0
- package/dist/interfaces/addon.d.ts +60 -0
- package/dist/interfaces/addon.d.ts.map +1 -1
- package/dist/interfaces/advanced-notifier.d.ts +4 -0
- package/dist/interfaces/advanced-notifier.d.ts.map +1 -1
- package/dist/interfaces/capability.d.ts +42 -1
- package/dist/interfaces/capability.d.ts.map +1 -1
- package/dist/interfaces/config-ui.d.ts +70 -6
- package/dist/interfaces/config-ui.d.ts.map +1 -1
- package/dist/interfaces/device-capabilities/camera.d.ts +2 -1
- package/dist/interfaces/device-capabilities/camera.d.ts.map +1 -1
- package/dist/interfaces/event-bus.d.ts +49 -3
- package/dist/interfaces/event-bus.d.ts.map +1 -1
- package/dist/interfaces/kernel-abstractions.d.ts +10 -1
- package/dist/interfaces/kernel-abstractions.d.ts.map +1 -1
- package/dist/interfaces/network-quality.d.ts +8 -0
- package/dist/interfaces/network-quality.d.ts.map +1 -1
- package/dist/interfaces/pipeline-executor-capability.d.ts +2 -2
- package/dist/interfaces/pipeline-orchestrator-capability.d.ts +2 -1
- package/dist/interfaces/pipeline-orchestrator-capability.d.ts.map +1 -1
- package/dist/interfaces/pipeline-runner-capability.d.ts +7 -0
- package/dist/interfaces/pipeline-runner-capability.d.ts.map +1 -1
- package/dist/interfaces/recording-config-migrate.d.ts +13 -0
- package/dist/interfaces/recording-config-migrate.d.ts.map +1 -0
- package/dist/interfaces/recording-config.d.ts +209 -0
- package/dist/interfaces/recording-config.d.ts.map +1 -0
- package/dist/interfaces/rtp-egress.d.ts +2 -3
- package/dist/interfaces/rtp-egress.d.ts.map +1 -1
- package/dist/interfaces/storage-location-declaration.d.ts +34 -0
- package/dist/interfaces/storage-location-declaration.d.ts.map +1 -0
- package/dist/interfaces/storage-location.d.ts +19 -74
- package/dist/interfaces/storage-location.d.ts.map +1 -1
- package/dist/interfaces/storage.d.ts +15 -4
- package/dist/interfaces/storage.d.ts.map +1 -1
- package/dist/interfaces/stream-broker.d.ts +18 -3
- package/dist/interfaces/stream-broker.d.ts.map +1 -1
- package/dist/interfaces/timezones.d.ts +59 -0
- package/dist/interfaces/timezones.d.ts.map +1 -0
- package/dist/node.d.ts +3 -0
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js +50 -8
- package/dist/node.js.map +1 -1
- package/dist/node.mjs +51 -9
- package/dist/node.mjs.map +1 -1
- package/dist/storage/filesystem-storage-provider.d.ts +2 -1
- package/dist/storage/filesystem-storage-provider.d.ts.map +1 -1
- package/dist/stream-selection.d.ts +85 -0
- package/dist/stream-selection.d.ts.map +1 -0
- package/dist/types/detection.d.ts +3 -3
- package/dist/types/io.d.ts +1 -1
- package/dist/types/io.d.ts.map +1 -1
- package/dist/util/location-match.d.ts +15 -0
- package/dist/util/location-match.d.ts.map +1 -0
- package/dist/utils/canonical-hash.d.ts +20 -0
- package/dist/utils/canonical-hash.d.ts.map +1 -0
- package/dist/utils/export-reconciler.d.ts +101 -0
- package/dist/utils/export-reconciler.d.ts.map +1 -0
- package/dist/utils/sleep.d.ts +36 -0
- package/dist/utils/sleep.d.ts.map +1 -0
- package/package.json +1 -1
- package/dist/capabilities/recording-engine.cap.d.ts +0 -477
- package/dist/capabilities/recording-engine.cap.d.ts.map +0 -1
- package/dist/index-C2zzIDdX.mjs.map +0 -1
- package/dist/index-DnpdVFKv.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const index = require("./index-
|
|
3
|
+
const index = require("./index-CGMPfVaT.js");
|
|
4
4
|
const zod = require("zod");
|
|
5
5
|
class DisposerChain {
|
|
6
6
|
disposers = [];
|
|
@@ -120,10 +120,15 @@ var EventCategory = /* @__PURE__ */ ((EventCategory2) => {
|
|
|
120
120
|
EventCategory2["DeviceSettingsUpdated"] = "device.settings-updated";
|
|
121
121
|
EventCategory2["DeviceBindingsChanged"] = "device.bindings-changed";
|
|
122
122
|
EventCategory2["DeviceMetaChanged"] = "device.meta-changed";
|
|
123
|
+
EventCategory2["DeviceSourceInfoChanged"] = "device.source-info-changed";
|
|
123
124
|
EventCategory2["DeviceStreamsRegistered"] = "device.streams-registered";
|
|
125
|
+
EventCategory2["DeviceProvisioned"] = "device.provisioned";
|
|
126
|
+
EventCategory2["DeviceReady"] = "device.ready";
|
|
124
127
|
EventCategory2["IntegrationEnabled"] = "integration.enabled";
|
|
125
128
|
EventCategory2["IntegrationDisabled"] = "integration.disabled";
|
|
126
129
|
EventCategory2["IntegrationDeleted"] = "integration.deleted";
|
|
130
|
+
EventCategory2["BrokerStatusChanged"] = "broker.status-changed";
|
|
131
|
+
EventCategory2["BrokerMessage"] = "broker.message";
|
|
127
132
|
EventCategory2["ProviderStarted"] = "provider.started";
|
|
128
133
|
EventCategory2["ProviderStopped"] = "provider.stopped";
|
|
129
134
|
EventCategory2["ProcessCrashed"] = "process.crashed";
|
|
@@ -157,7 +162,9 @@ var EventCategory = /* @__PURE__ */ ((EventCategory2) => {
|
|
|
157
162
|
EventCategory2["StreamParamsChanged"] = "stream-params.changed";
|
|
158
163
|
EventCategory2["DeviceStateChanged"] = "device.state-changed";
|
|
159
164
|
EventCategory2["BatteryOnStatusChanged"] = "battery.onStatusChanged";
|
|
165
|
+
EventCategory2["BatteryOnWakeStarted"] = "battery.onWakeStarted";
|
|
160
166
|
EventCategory2["DoorbellOnPressed"] = "doorbell.onPressed";
|
|
167
|
+
EventCategory2["EventEmitted"] = "event-emitter.event";
|
|
161
168
|
EventCategory2["PipelineEngineMetricsSnapshot"] = "pipeline.engine-metrics-snapshot";
|
|
162
169
|
EventCategory2["ClusterTopologySnapshot"] = "cluster.topology-snapshot";
|
|
163
170
|
EventCategory2["MetricsNodeResourcesSnapshot"] = "metrics.node-resources-snapshot";
|
|
@@ -243,6 +250,27 @@ function emitReadiness(bus, params) {
|
|
|
243
250
|
}
|
|
244
251
|
));
|
|
245
252
|
}
|
|
253
|
+
function createDurableState(deps) {
|
|
254
|
+
const get = async () => {
|
|
255
|
+
const store = await deps.read();
|
|
256
|
+
const raw = store[deps.key];
|
|
257
|
+
if (raw === void 0) return deps.fallback;
|
|
258
|
+
const parsed = deps.schema.safeParse(raw);
|
|
259
|
+
if (!parsed.success) {
|
|
260
|
+
deps.onParseError?.(deps.key, parsed.error);
|
|
261
|
+
return deps.fallback;
|
|
262
|
+
}
|
|
263
|
+
return parsed.data;
|
|
264
|
+
};
|
|
265
|
+
const set = async (next) => {
|
|
266
|
+
const validated = deps.schema.parse(next);
|
|
267
|
+
await deps.write({ [deps.key]: validated });
|
|
268
|
+
};
|
|
269
|
+
const update = async (fn) => {
|
|
270
|
+
await set(fn(await get()));
|
|
271
|
+
};
|
|
272
|
+
return { get, set, update };
|
|
273
|
+
}
|
|
246
274
|
class BaseAddon {
|
|
247
275
|
_ctx = null;
|
|
248
276
|
_config;
|
|
@@ -486,12 +514,18 @@ class BaseAddon {
|
|
|
486
514
|
// ── Lifecycle event emission ────────────────────────────────────────────
|
|
487
515
|
emitLifecycle(category, data) {
|
|
488
516
|
try {
|
|
489
|
-
this._ctx
|
|
490
|
-
|
|
517
|
+
const ctx = this._ctx;
|
|
518
|
+
if (!ctx) return;
|
|
519
|
+
ctx.eventBus.emit({
|
|
520
|
+
id: `${ctx.id}-${Date.now()}`,
|
|
491
521
|
timestamp: /* @__PURE__ */ new Date(),
|
|
492
|
-
source: { type: "addon", id:
|
|
522
|
+
source: { type: "addon", id: ctx.id, nodeId: ctx.kernel.localNodeId ?? "hub" },
|
|
493
523
|
category,
|
|
494
|
-
|
|
524
|
+
// Always carry `addonId` in the payload (the lifecycle event
|
|
525
|
+
// contract declares it) so consumers — e.g. the alerts builder —
|
|
526
|
+
// can name the addon without reaching into `source`. An explicit
|
|
527
|
+
// `data.addonId` still wins if a caller provides one.
|
|
528
|
+
data: { addonId: ctx.id, ...data ?? {} }
|
|
495
529
|
});
|
|
496
530
|
} catch {
|
|
497
531
|
}
|
|
@@ -564,6 +598,44 @@ class BaseAddon {
|
|
|
564
598
|
}
|
|
565
599
|
this._config = resolved;
|
|
566
600
|
}
|
|
601
|
+
/**
|
|
602
|
+
* Typed durable handle over ONE key of this addon's store. The whole
|
|
603
|
+
* Zod-validated value round-trips on every read/write — no hand-listed
|
|
604
|
+
* fields, so a field can never be silently dropped on persist. Reads use
|
|
605
|
+
* the same retry budget as config resolution; a corrupt/legacy blob logs
|
|
606
|
+
* a warning and falls back rather than crashing boot.
|
|
607
|
+
*/
|
|
608
|
+
state(key, schema, fallback) {
|
|
609
|
+
return createDurableState({
|
|
610
|
+
key,
|
|
611
|
+
schema,
|
|
612
|
+
fallback,
|
|
613
|
+
read: () => this.readAddonStoreWithRetry(),
|
|
614
|
+
write: async (patch) => {
|
|
615
|
+
await this._ctx?.settings?.writeAddonStore(patch);
|
|
616
|
+
},
|
|
617
|
+
onParseError: (k, e) => this._ctx?.logger?.warn?.(
|
|
618
|
+
`durable-state: stored "${k}" failed validation — using fallback`,
|
|
619
|
+
{ meta: { addonId: this._ctx?.id, key: k, error: String(e) } }
|
|
620
|
+
)
|
|
621
|
+
});
|
|
622
|
+
}
|
|
623
|
+
/** Per-device variant of {@link state}, backed by the per-device store. */
|
|
624
|
+
deviceState(deviceId, key, schema, fallback) {
|
|
625
|
+
return createDurableState({
|
|
626
|
+
key,
|
|
627
|
+
schema,
|
|
628
|
+
fallback,
|
|
629
|
+
read: async () => await this._ctx?.settings?.readDeviceStore(deviceId) ?? {},
|
|
630
|
+
write: async (patch) => {
|
|
631
|
+
await this._ctx?.settings?.writeDeviceStore(deviceId, patch);
|
|
632
|
+
},
|
|
633
|
+
onParseError: (k, e) => this._ctx?.logger?.warn?.(
|
|
634
|
+
`durable-state: stored device ${deviceId} "${k}" failed validation — using fallback`,
|
|
635
|
+
{ meta: { addonId: this._ctx?.id, deviceId, key: k, error: String(e) } }
|
|
636
|
+
)
|
|
637
|
+
});
|
|
638
|
+
}
|
|
567
639
|
/**
|
|
568
640
|
* Wrap `ctx.settings.readAddonStore()` with a short retry budget so a
|
|
569
641
|
* transient settings-store outage (mid-restart of sqlite-settings, tsx-watch
|
|
@@ -689,6 +761,97 @@ function buildCapturingReply(envelope) {
|
|
|
689
761
|
};
|
|
690
762
|
return wrapper;
|
|
691
763
|
}
|
|
764
|
+
const EU_DST = {
|
|
765
|
+
offsetHours: 1,
|
|
766
|
+
startMonth: 3,
|
|
767
|
+
startWeekIndex: 5,
|
|
768
|
+
startWeekday: "Sunday",
|
|
769
|
+
startHour: 2,
|
|
770
|
+
endMonth: 10,
|
|
771
|
+
endWeekIndex: 5,
|
|
772
|
+
endWeekday: "Sunday",
|
|
773
|
+
endHour: 3
|
|
774
|
+
};
|
|
775
|
+
const US_DST = {
|
|
776
|
+
offsetHours: 1,
|
|
777
|
+
startMonth: 3,
|
|
778
|
+
startWeekIndex: 2,
|
|
779
|
+
startWeekday: "Sunday",
|
|
780
|
+
startHour: 2,
|
|
781
|
+
endMonth: 11,
|
|
782
|
+
endWeekIndex: 1,
|
|
783
|
+
endWeekday: "Sunday",
|
|
784
|
+
endHour: 2
|
|
785
|
+
};
|
|
786
|
+
const AU_DST = {
|
|
787
|
+
offsetHours: 1,
|
|
788
|
+
startMonth: 10,
|
|
789
|
+
startWeekIndex: 1,
|
|
790
|
+
startWeekday: "Sunday",
|
|
791
|
+
startHour: 2,
|
|
792
|
+
endMonth: 4,
|
|
793
|
+
endWeekIndex: 1,
|
|
794
|
+
endWeekday: "Sunday",
|
|
795
|
+
endHour: 3
|
|
796
|
+
};
|
|
797
|
+
const TIMEZONES = [
|
|
798
|
+
// --- Universal ---
|
|
799
|
+
{ id: "UTC", label: "UTC (UTC+0)", region: "Universal", stdOffsetMinutes: 0, dst: null },
|
|
800
|
+
// --- Europe (EU DST rule) ---
|
|
801
|
+
{ id: "Europe/London", label: "Europe/London (UTC+0 / BST)", region: "Europe", stdOffsetMinutes: 0, dst: EU_DST },
|
|
802
|
+
{ id: "Europe/Rome", label: "Europe/Rome (UTC+1 / CEST)", region: "Europe", stdOffsetMinutes: 60, dst: EU_DST },
|
|
803
|
+
{ id: "Europe/Paris", label: "Europe/Paris (UTC+1 / CEST)", region: "Europe", stdOffsetMinutes: 60, dst: EU_DST },
|
|
804
|
+
{ id: "Europe/Berlin", label: "Europe/Berlin (UTC+1 / CEST)", region: "Europe", stdOffsetMinutes: 60, dst: EU_DST },
|
|
805
|
+
{ id: "Europe/Madrid", label: "Europe/Madrid (UTC+1 / CEST)", region: "Europe", stdOffsetMinutes: 60, dst: EU_DST },
|
|
806
|
+
{ id: "Europe/Amsterdam", label: "Europe/Amsterdam (UTC+1 / CEST)", region: "Europe", stdOffsetMinutes: 60, dst: EU_DST },
|
|
807
|
+
{ id: "Europe/Istanbul", label: "Europe/Istanbul (UTC+3)", region: "Europe", stdOffsetMinutes: 180, dst: null },
|
|
808
|
+
// --- Americas (US/Canada DST rule) ---
|
|
809
|
+
{ id: "America/New_York", label: "America/New York (UTC−5 / EDT)", region: "Americas", stdOffsetMinutes: -300, dst: US_DST },
|
|
810
|
+
{ id: "America/Chicago", label: "America/Chicago (UTC−6 / CDT)", region: "Americas", stdOffsetMinutes: -360, dst: US_DST },
|
|
811
|
+
{ id: "America/Denver", label: "America/Denver (UTC−7 / MDT)", region: "Americas", stdOffsetMinutes: -420, dst: US_DST },
|
|
812
|
+
{ id: "America/Los_Angeles", label: "America/Los Angeles (UTC−8 / PDT)", region: "Americas", stdOffsetMinutes: -480, dst: US_DST },
|
|
813
|
+
{ id: "America/Sao_Paulo", label: "America/Sao Paulo (UTC−3)", region: "Americas", stdOffsetMinutes: -180, dst: null },
|
|
814
|
+
// --- Asia / Middle East (no DST) ---
|
|
815
|
+
{ id: "Asia/Dubai", label: "Asia/Dubai (UTC+4)", region: "Asia", stdOffsetMinutes: 240, dst: null },
|
|
816
|
+
{ id: "Asia/Kolkata", label: "Asia/Kolkata (UTC+5:30)", region: "Asia", stdOffsetMinutes: 330, dst: null },
|
|
817
|
+
{ id: "Asia/Singapore", label: "Asia/Singapore (UTC+8)", region: "Asia", stdOffsetMinutes: 480, dst: null },
|
|
818
|
+
{ id: "Asia/Shanghai", label: "Asia/Shanghai (UTC+8)", region: "Asia", stdOffsetMinutes: 480, dst: null },
|
|
819
|
+
{ id: "Asia/Tokyo", label: "Asia/Tokyo (UTC+9)", region: "Asia", stdOffsetMinutes: 540, dst: null },
|
|
820
|
+
// --- Oceania (southern-hemisphere DST) ---
|
|
821
|
+
{ id: "Australia/Sydney", label: "Australia/Sydney (UTC+10 / AEDT)", region: "Oceania", stdOffsetMinutes: 600, dst: AU_DST }
|
|
822
|
+
];
|
|
823
|
+
function findTimezone(id) {
|
|
824
|
+
return TIMEZONES.find((tz) => tz.id === id);
|
|
825
|
+
}
|
|
826
|
+
const ALL_DAYS = [0, 1, 2, 3, 4, 5, 6];
|
|
827
|
+
const ALL_DAY_START = "00:00";
|
|
828
|
+
const ALL_DAY_END = "23:59";
|
|
829
|
+
function bandFromSchedule(schedule, mode, config) {
|
|
830
|
+
const days = schedule.kind === "timeOfDay" && schedule.days ? schedule.days : [...ALL_DAYS];
|
|
831
|
+
const start = schedule.kind === "timeOfDay" ? schedule.start : ALL_DAY_START;
|
|
832
|
+
const end = schedule.kind === "timeOfDay" ? schedule.end : ALL_DAY_END;
|
|
833
|
+
if (mode === "continuous") {
|
|
834
|
+
return { days, start, end, mode };
|
|
835
|
+
}
|
|
836
|
+
const eventsBand = { days, start, end, mode };
|
|
837
|
+
return {
|
|
838
|
+
...eventsBand,
|
|
839
|
+
...config.triggers ? { triggers: config.triggers } : {},
|
|
840
|
+
...config.preBufferSec !== void 0 ? { preBufferSec: config.preBufferSec } : {},
|
|
841
|
+
...config.postBufferSec !== void 0 ? { postBufferSec: config.postBufferSec } : {}
|
|
842
|
+
};
|
|
843
|
+
}
|
|
844
|
+
function migrateConfigToBands(config) {
|
|
845
|
+
if (config.bands) {
|
|
846
|
+
return config.bands;
|
|
847
|
+
}
|
|
848
|
+
if (!config.enabled || config.mode === "off") {
|
|
849
|
+
return [];
|
|
850
|
+
}
|
|
851
|
+
const schedules = config.schedules ?? (config.schedule ? [config.schedule] : [{ kind: "always" }]);
|
|
852
|
+
const bandMode = config.mode === "continuous" ? "continuous" : "events";
|
|
853
|
+
return schedules.map((schedule) => bandFromSchedule(schedule, bandMode, config));
|
|
854
|
+
}
|
|
692
855
|
class ReadinessTimeoutError extends Error {
|
|
693
856
|
capName;
|
|
694
857
|
scope;
|
|
@@ -1084,34 +1247,7 @@ function emitDownForOwnedCaps(registry, owned) {
|
|
|
1084
1247
|
registry.emitDown(capName, scope);
|
|
1085
1248
|
}
|
|
1086
1249
|
}
|
|
1087
|
-
const
|
|
1088
|
-
"data",
|
|
1089
|
-
"media",
|
|
1090
|
-
"recordings",
|
|
1091
|
-
"recordings-high",
|
|
1092
|
-
"recordings-low",
|
|
1093
|
-
"recordings-clips",
|
|
1094
|
-
"event-images",
|
|
1095
|
-
"models",
|
|
1096
|
-
"addons-data",
|
|
1097
|
-
"cache",
|
|
1098
|
-
"logs",
|
|
1099
|
-
"backups"
|
|
1100
|
-
];
|
|
1101
|
-
const DEFAULT_LOCATION_SUBDIRS = {
|
|
1102
|
-
"data": "db",
|
|
1103
|
-
"media": "media",
|
|
1104
|
-
"recordings": "recordings",
|
|
1105
|
-
"recordings-high": "recordings-high",
|
|
1106
|
-
"recordings-low": "recordings-low",
|
|
1107
|
-
"recordings-clips": "recordings-clips",
|
|
1108
|
-
"event-images": "event-images",
|
|
1109
|
-
"models": "models",
|
|
1110
|
-
"addons-data": "addons-data",
|
|
1111
|
-
"cache": "/tmp/camstack-cache",
|
|
1112
|
-
"logs": "logs",
|
|
1113
|
-
"backups": "backups"
|
|
1114
|
-
};
|
|
1250
|
+
const DATAPLANE_SECRET_HEADER = "x-camstack-dataplane-secret";
|
|
1115
1251
|
const STREAM_QUALITY_LABELS = {
|
|
1116
1252
|
high: "High",
|
|
1117
1253
|
mid: "Mid",
|
|
@@ -1159,12 +1295,12 @@ function toStreamSourceEntry(stream) {
|
|
|
1159
1295
|
function isString(v) {
|
|
1160
1296
|
return typeof v === "string";
|
|
1161
1297
|
}
|
|
1162
|
-
function isRecord(v) {
|
|
1298
|
+
function isRecord$1(v) {
|
|
1163
1299
|
return typeof v === "object" && v !== null && !Array.isArray(v);
|
|
1164
1300
|
}
|
|
1165
1301
|
function parseStreamEntry(v) {
|
|
1166
1302
|
if (isString(v) && v.trim()) return { url: v };
|
|
1167
|
-
if (isRecord(v) && isString(v["url"]) && v["url"].trim()) {
|
|
1303
|
+
if (isRecord$1(v) && isString(v["url"]) && v["url"].trim()) {
|
|
1168
1304
|
return {
|
|
1169
1305
|
url: v["url"],
|
|
1170
1306
|
label: isString(v["label"]) ? v["label"] : void 0
|
|
@@ -1225,6 +1361,51 @@ const DEFAULT_FEATURES = {
|
|
|
1225
1361
|
};
|
|
1226
1362
|
const SUB_DETECTION_TYPES = ["face", "plate"];
|
|
1227
1363
|
const RECOGNITION_TYPES = ["face", "plate", "clip", "custom"];
|
|
1364
|
+
function pickPreferredRtspEntry(entries, pref, deviceId, options = {}) {
|
|
1365
|
+
if (entries.length === 0) return null;
|
|
1366
|
+
const prefix = `${deviceId}/`;
|
|
1367
|
+
const toPicked = (e) => ({
|
|
1368
|
+
brokerId: e.brokerId,
|
|
1369
|
+
profileId: e.brokerId.startsWith(prefix) ? e.brokerId.slice(prefix.length) : e.brokerId,
|
|
1370
|
+
url: e.url,
|
|
1371
|
+
mutedUrl: e.mutedUrl,
|
|
1372
|
+
enabled: e.enabled,
|
|
1373
|
+
...e.codec !== void 0 ? { codec: e.codec } : {},
|
|
1374
|
+
...e.resolution !== void 0 ? { resolution: e.resolution } : {}
|
|
1375
|
+
});
|
|
1376
|
+
if (pref !== "auto") {
|
|
1377
|
+
const match = entries.find(
|
|
1378
|
+
(e) => e.enabled && e.url.length > 0 && (e.profile === pref || e.brokerId === `${prefix}${pref}`)
|
|
1379
|
+
);
|
|
1380
|
+
if (match) return toPicked(match);
|
|
1381
|
+
}
|
|
1382
|
+
const eligible = entries.filter((e) => e.enabled && e.url.length > 0);
|
|
1383
|
+
if (eligible.length === 0) return null;
|
|
1384
|
+
const target = options.targetResolution;
|
|
1385
|
+
if (target) {
|
|
1386
|
+
const withRes = eligible.filter((e) => e.resolution !== void 0);
|
|
1387
|
+
if (withRes.length > 0) {
|
|
1388
|
+
const picked = pickClosestResolution(withRes, target);
|
|
1389
|
+
if (picked) return toPicked(picked);
|
|
1390
|
+
}
|
|
1391
|
+
}
|
|
1392
|
+
return toPicked(eligible[0]);
|
|
1393
|
+
}
|
|
1394
|
+
function pickClosestResolution(entries, target) {
|
|
1395
|
+
const targetPixels = target.width * target.height;
|
|
1396
|
+
let bestAbove;
|
|
1397
|
+
let bestBelow;
|
|
1398
|
+
for (const e of entries) {
|
|
1399
|
+
if (e.resolution === void 0) continue;
|
|
1400
|
+
const pixels = e.resolution.width * e.resolution.height;
|
|
1401
|
+
if (pixels >= targetPixels) {
|
|
1402
|
+
if (!bestAbove || pixels < bestAbove.pixels) bestAbove = { entry: e, pixels };
|
|
1403
|
+
} else {
|
|
1404
|
+
if (!bestBelow || pixels > bestBelow.pixels) bestBelow = { entry: e, pixels };
|
|
1405
|
+
}
|
|
1406
|
+
}
|
|
1407
|
+
return bestAbove?.entry ?? bestBelow?.entry;
|
|
1408
|
+
}
|
|
1228
1409
|
const DEFAULT_RETENTION = {
|
|
1229
1410
|
cleanupIntervalMs: 60 * 60 * 1e3,
|
|
1230
1411
|
detectionEventsDays: 30,
|
|
@@ -1266,9 +1447,6 @@ const RUNTIME_DEFAULTS = {
|
|
|
1266
1447
|
models: "camstack-data/models"
|
|
1267
1448
|
},
|
|
1268
1449
|
"providers": [],
|
|
1269
|
-
// Recording
|
|
1270
|
-
"recording.segmentDurationSeconds": 4,
|
|
1271
|
-
"recording.defaultRetentionDays": 30,
|
|
1272
1450
|
// Streaming ports are addon-specific (go2rtc owns its defaults)
|
|
1273
1451
|
// FFmpeg
|
|
1274
1452
|
"ffmpeg.binaryPath": "ffmpeg",
|
|
@@ -1936,22 +2114,61 @@ function createRuntimeStateBridge(params) {
|
|
|
1936
2114
|
return { ensureFresh, getStatus };
|
|
1937
2115
|
}
|
|
1938
2116
|
const DEVICE_LOCAL_STATE_CAPS = {
|
|
2117
|
+
airQualitySensor: index.airQualitySensorCapability,
|
|
2118
|
+
alarmPanel: index.alarmPanelCapability,
|
|
2119
|
+
ambientLightSensor: index.ambientLightSensorCapability,
|
|
1939
2120
|
audioMetrics: index.audioMetricsCapability,
|
|
2121
|
+
automationControl: index.automationControlCapability,
|
|
1940
2122
|
battery: index.batteryCapability,
|
|
2123
|
+
binary: index.binaryCapability,
|
|
1941
2124
|
brightness: index.brightnessCapability,
|
|
1942
2125
|
cameraStreams: index.cameraStreamsCapability,
|
|
2126
|
+
carbonMonoxide: index.carbonMonoxideCapability,
|
|
2127
|
+
climateControl: index.climateControlCapability,
|
|
2128
|
+
color: index.colorCapability,
|
|
2129
|
+
connectivity: index.connectivityCapability,
|
|
2130
|
+
consumables: index.consumablesCapability,
|
|
2131
|
+
contact: index.contactCapability,
|
|
2132
|
+
control: index.controlCapability,
|
|
2133
|
+
cover: index.coverCapability,
|
|
1943
2134
|
deviceDiscovery: index.deviceDiscoveryCapability,
|
|
1944
2135
|
deviceStatus: index.deviceStatusCapability,
|
|
1945
2136
|
doorbell: index.doorbellCapability,
|
|
2137
|
+
enumSensor: index.enumSensorCapability,
|
|
2138
|
+
eventEmitter: index.eventEmitterCapability,
|
|
2139
|
+
fanControl: index.fanControlCapability,
|
|
1946
2140
|
featureProbe: index.featureProbeCapability,
|
|
2141
|
+
flood: index.floodCapability,
|
|
2142
|
+
gas: index.gasCapability,
|
|
2143
|
+
humidifier: index.humidifierCapability,
|
|
2144
|
+
humiditySensor: index.humiditySensorCapability,
|
|
2145
|
+
image: index.imageCapability,
|
|
2146
|
+
lawnMowerControl: index.lawnMowerControlCapability,
|
|
2147
|
+
lockControl: index.lockControlCapability,
|
|
2148
|
+
mediaPlayer: index.mediaPlayerCapability,
|
|
1947
2149
|
motion: index.motionCapability,
|
|
1948
2150
|
motionTrigger: index.motionTriggerCapability,
|
|
1949
2151
|
motionZones: index.motionZonesCapability,
|
|
1950
2152
|
nativeObjectDetection: index.nativeObjectDetectionCapability,
|
|
2153
|
+
notifier: index.notifierCapability,
|
|
2154
|
+
numericSensor: index.numericSensorCapability,
|
|
2155
|
+
powerMeter: index.powerMeterCapability,
|
|
2156
|
+
presence: index.presenceCapability,
|
|
2157
|
+
pressureSensor: index.pressureSensorCapability,
|
|
1951
2158
|
privacyMask: index.privacyMaskCapability,
|
|
1952
2159
|
ptzAutotrack: index.ptzAutotrackCapability,
|
|
2160
|
+
scriptRunner: index.scriptRunnerCapability,
|
|
2161
|
+
smoke: index.smokeCapability,
|
|
1953
2162
|
streamParams: index.streamParamsCapability,
|
|
1954
2163
|
switch: index.switchCapability,
|
|
2164
|
+
tamper: index.tamperCapability,
|
|
2165
|
+
temperatureSensor: index.temperatureSensorCapability,
|
|
2166
|
+
update: index.updateCapability,
|
|
2167
|
+
vacuumControl: index.vacuumControlCapability,
|
|
2168
|
+
valve: index.valveCapability,
|
|
2169
|
+
vibration: index.vibrationCapability,
|
|
2170
|
+
waterHeater: index.waterHeaterCapability,
|
|
2171
|
+
weather: index.weatherCapability,
|
|
1955
2172
|
zoneAnalytics: index.zoneAnalyticsCapability,
|
|
1956
2173
|
zoneRules: index.zoneRulesCapability,
|
|
1957
2174
|
zones: index.zonesCapability
|
|
@@ -2055,6 +2272,16 @@ class BaseDevice {
|
|
|
2055
2272
|
* `kernel.devices.setDisabled(id, value)`.
|
|
2056
2273
|
*/
|
|
2057
2274
|
disabled;
|
|
2275
|
+
/**
|
|
2276
|
+
* Cached materialised `SourceInfo` — either the value persisted under
|
|
2277
|
+
* `metadata.sourceInfo` at construction time, or a synthetic
|
|
2278
|
+
* `{ id: stableId, system: addonId }` for providers that haven't
|
|
2279
|
+
* migrated yet. Lazily populated on first `sourceInfo` read so the
|
|
2280
|
+
* cost of Zod-parsing the meta blob is paid once per device boot.
|
|
2281
|
+
* Invalidated by `updateSourceInfo()` so providers see the new value
|
|
2282
|
+
* back through the getter without a re-fetch from the meta surface.
|
|
2283
|
+
*/
|
|
2284
|
+
_sourceInfoCache = null;
|
|
2058
2285
|
constructor(ctx, schema, options) {
|
|
2059
2286
|
this.ctx = ctx;
|
|
2060
2287
|
this.id = ctx.id;
|
|
@@ -2095,7 +2322,7 @@ class BaseDevice {
|
|
|
2095
2322
|
this.runtimeState = DeviceRuntimeState.fromInitial(initial, writer);
|
|
2096
2323
|
ctx.bindRuntimeState?.(this.runtimeState);
|
|
2097
2324
|
ctx.registerNativeCap?.(index.deviceStatusCapability, {});
|
|
2098
|
-
const seed = { online:
|
|
2325
|
+
const seed = { online: true, lastChangedAt: Date.now() };
|
|
2099
2326
|
this.runtimeState.setCapState("device-status", seed);
|
|
2100
2327
|
ctx.registerNativeCap?.(index.featureProbeCapability, {});
|
|
2101
2328
|
const probeSeed = {
|
|
@@ -2108,6 +2335,21 @@ class BaseDevice {
|
|
|
2108
2335
|
};
|
|
2109
2336
|
this.runtimeState.setCapState("feature-probe", probeSeed);
|
|
2110
2337
|
}
|
|
2338
|
+
deviceActions = /* @__PURE__ */ new Map();
|
|
2339
|
+
/** Declare a device custom action + its typed handler. Idempotent per name. */
|
|
2340
|
+
registerDeviceAction(name, spec, handler) {
|
|
2341
|
+
this.deviceActions.set(name, {
|
|
2342
|
+
spec,
|
|
2343
|
+
handler
|
|
2344
|
+
});
|
|
2345
|
+
}
|
|
2346
|
+
/** Invoke a registered device action. Validates input against the spec. */
|
|
2347
|
+
async runDeviceAction(action, input) {
|
|
2348
|
+
const entry = this.deviceActions.get(action);
|
|
2349
|
+
if (!entry) throw new Error(`unknown device action "${action}" on device ${this.id}`);
|
|
2350
|
+
const parsed = entry.spec.input.parse(input);
|
|
2351
|
+
return entry.handler(parsed);
|
|
2352
|
+
}
|
|
2111
2353
|
async removeDevice() {
|
|
2112
2354
|
}
|
|
2113
2355
|
/**
|
|
@@ -2124,6 +2366,71 @@ class BaseDevice {
|
|
|
2124
2366
|
const next = { online, lastChangedAt: Date.now() };
|
|
2125
2367
|
this.runtimeState.setCapState("device-status", next);
|
|
2126
2368
|
}
|
|
2369
|
+
/**
|
|
2370
|
+
* Upstream-system identity + rendering envelope for this device. See
|
|
2371
|
+
* `SourceInfo` for the field contract. Always returns a valid object:
|
|
2372
|
+
* if the persisted `metadata.sourceInfo` blob is absent or fails Zod
|
|
2373
|
+
* validation, falls back to a synthetic `{ id: stableId, system: addonId }`
|
|
2374
|
+
* so providers that haven't migrated keep working without code changes.
|
|
2375
|
+
*
|
|
2376
|
+
* The value is cached after the first read. `updateSourceInfo()`
|
|
2377
|
+
* invalidates the cache so subsequent reads see the new patch. The
|
|
2378
|
+
* returned object is frozen to prevent accidental in-place mutation —
|
|
2379
|
+
* use `updateSourceInfo({ patch })` to change fields.
|
|
2380
|
+
*/
|
|
2381
|
+
get sourceInfo() {
|
|
2382
|
+
if (this._sourceInfoCache) return this._sourceInfoCache;
|
|
2383
|
+
const fromMeta = index.extractSourceInfoFromMetadata(this.ctx.deviceMeta.metadata);
|
|
2384
|
+
const resolved = fromMeta ?? index.synthesizeSourceInfo({
|
|
2385
|
+
stableId: this.stableId,
|
|
2386
|
+
addonId: this.ctx.deviceMeta.addonId
|
|
2387
|
+
});
|
|
2388
|
+
this._sourceInfoCache = Object.freeze({ ...resolved });
|
|
2389
|
+
return this._sourceInfoCache;
|
|
2390
|
+
}
|
|
2391
|
+
/**
|
|
2392
|
+
* Convenience accessor for the upstream dispatch key. Equivalent to
|
|
2393
|
+
* `this.sourceInfo.id` — providers use this to keep a
|
|
2394
|
+
* `Map<sourceId, IDevice>` for routing inbound push events.
|
|
2395
|
+
*/
|
|
2396
|
+
get sourceId() {
|
|
2397
|
+
return this.sourceInfo.id;
|
|
2398
|
+
}
|
|
2399
|
+
/**
|
|
2400
|
+
* Patch the device's `SourceInfo`. Shallow-merges `patch` over the
|
|
2401
|
+
* current value, persists the merged result under
|
|
2402
|
+
* `metadata.sourceInfo` via the `device-manager.setMetadata` cap, and
|
|
2403
|
+
* emits `EventCategory.DeviceSourceInfoChanged` for live consumers.
|
|
2404
|
+
*
|
|
2405
|
+
* Safe to call from anywhere in the device's lifetime — the call is
|
|
2406
|
+
* idempotent for `undefined` patch values (ignored) and best-effort
|
|
2407
|
+
* for persistence (a transient device-manager error doesn't unwind
|
|
2408
|
+
* the local cache update, so subsequent reads still see the patch).
|
|
2409
|
+
*
|
|
2410
|
+
* Drivers populate this on adoption + on every metadata change push
|
|
2411
|
+
* from the upstream source. Subscribers (UI, export adapters) react
|
|
2412
|
+
* via the `DeviceSourceInfoChanged` event without polling.
|
|
2413
|
+
*/
|
|
2414
|
+
async updateSourceInfo(patch) {
|
|
2415
|
+
const next = index.mergeSourceInfo(this.sourceInfo, patch);
|
|
2416
|
+
this._sourceInfoCache = Object.freeze({ ...next });
|
|
2417
|
+
const api = this.ctx.api;
|
|
2418
|
+
const action = api?.deviceManager?.setMetadata;
|
|
2419
|
+
if (action) {
|
|
2420
|
+
try {
|
|
2421
|
+
await action.mutate({
|
|
2422
|
+
deviceId: this.id,
|
|
2423
|
+
patch: { [index.SOURCE_INFO_METADATA_KEY]: next }
|
|
2424
|
+
});
|
|
2425
|
+
} catch {
|
|
2426
|
+
}
|
|
2427
|
+
}
|
|
2428
|
+
this.ctx.eventBus.emit(createEvent(
|
|
2429
|
+
"device.source-info-changed",
|
|
2430
|
+
{ type: "device", id: this.stableId },
|
|
2431
|
+
{ deviceId: this.id, sourceInfo: next }
|
|
2432
|
+
));
|
|
2433
|
+
}
|
|
2127
2434
|
/**
|
|
2128
2435
|
* Re-publish the device's current `features` array to the persisted
|
|
2129
2436
|
* meta blob. Drivers call this after a probe finishes when the live
|
|
@@ -2374,7 +2681,13 @@ function toDeviceSummary(device, addonId) {
|
|
|
2374
2681
|
parentDeviceId: device.parentDeviceId,
|
|
2375
2682
|
online: device.online,
|
|
2376
2683
|
features: [...device.features],
|
|
2377
|
-
config
|
|
2684
|
+
config,
|
|
2685
|
+
// BaseDevice always resolves sourceInfo (synthetic or persisted).
|
|
2686
|
+
// `IDevice` doesn't declare the field — providers that override
|
|
2687
|
+
// `IDevice` outside the BaseDevice hierarchy stay backwards-
|
|
2688
|
+
// compatible. Read through a structural check so non-BaseDevice
|
|
2689
|
+
// implementations don't blow up.
|
|
2690
|
+
sourceInfo: device.sourceInfo
|
|
2378
2691
|
};
|
|
2379
2692
|
}
|
|
2380
2693
|
class BaseDeviceProvider extends BaseAddon {
|
|
@@ -2683,6 +2996,80 @@ function getZodDefault(schema) {
|
|
|
2683
2996
|
function humanizeKey(key) {
|
|
2684
2997
|
return key.replace(/([A-Z])/g, " $1").replace(/[_-]/g, " ").replace(/^\w/, (c) => c.toUpperCase()).trim();
|
|
2685
2998
|
}
|
|
2999
|
+
function isRecord(x) {
|
|
3000
|
+
return x !== null && typeof x === "object" && !Array.isArray(x);
|
|
3001
|
+
}
|
|
3002
|
+
function getByPath(obj, path) {
|
|
3003
|
+
const parts = path.split(".");
|
|
3004
|
+
let cur = obj;
|
|
3005
|
+
for (const part of parts) {
|
|
3006
|
+
if (!isRecord(cur)) return void 0;
|
|
3007
|
+
cur = cur[part];
|
|
3008
|
+
}
|
|
3009
|
+
return cur;
|
|
3010
|
+
}
|
|
3011
|
+
function setByPath(obj, path, value) {
|
|
3012
|
+
const dotIndex = path.indexOf(".");
|
|
3013
|
+
if (dotIndex === -1) {
|
|
3014
|
+
return { ...obj, [path]: value };
|
|
3015
|
+
}
|
|
3016
|
+
const head = path.slice(0, dotIndex);
|
|
3017
|
+
const tail = path.slice(dotIndex + 1);
|
|
3018
|
+
const child = obj[head];
|
|
3019
|
+
const childObj = isRecord(child) ? child : {};
|
|
3020
|
+
return { ...obj, [head]: setByPath(childObj, tail, value) };
|
|
3021
|
+
}
|
|
3022
|
+
function applyTransform(value, transform) {
|
|
3023
|
+
if (!transform || transform.kind === "identity") return value;
|
|
3024
|
+
if (transform.kind === "enum-map") {
|
|
3025
|
+
const key = String(value);
|
|
3026
|
+
if (Object.prototype.hasOwnProperty.call(transform.mapping, key)) return transform.mapping[key];
|
|
3027
|
+
return transform.fallback ?? null;
|
|
3028
|
+
}
|
|
3029
|
+
if (transform.kind === "linear") {
|
|
3030
|
+
if (typeof value !== "number" || Number.isNaN(value)) return null;
|
|
3031
|
+
let out = value * transform.scale + transform.offset;
|
|
3032
|
+
if (transform.clamp) {
|
|
3033
|
+
const min = transform.clamp[0];
|
|
3034
|
+
const max = transform.clamp[1];
|
|
3035
|
+
out = Math.min(max, Math.max(min, out));
|
|
3036
|
+
}
|
|
3037
|
+
return out;
|
|
3038
|
+
}
|
|
3039
|
+
return value;
|
|
3040
|
+
}
|
|
3041
|
+
function unwrap(schema) {
|
|
3042
|
+
let s = schema;
|
|
3043
|
+
while (s instanceof zod.z.ZodNullable || s instanceof zod.z.ZodOptional || s instanceof zod.z.ZodDefault) {
|
|
3044
|
+
s = s.unwrap();
|
|
3045
|
+
}
|
|
3046
|
+
return s;
|
|
3047
|
+
}
|
|
3048
|
+
function leafKind(schema) {
|
|
3049
|
+
const s = unwrap(schema);
|
|
3050
|
+
if (s instanceof zod.z.ZodEnum) return { kind: "enum", enumValues: s.options };
|
|
3051
|
+
if (s instanceof zod.z.ZodNumber) return { kind: "number" };
|
|
3052
|
+
if (s instanceof zod.z.ZodString) return { kind: "string" };
|
|
3053
|
+
if (s instanceof zod.z.ZodBoolean) return { kind: "boolean" };
|
|
3054
|
+
return null;
|
|
3055
|
+
}
|
|
3056
|
+
function enumerateSchemaFields(schema, prefix = "") {
|
|
3057
|
+
const root = unwrap(schema);
|
|
3058
|
+
if (!(root instanceof zod.z.ZodObject)) return [];
|
|
3059
|
+
const out = [];
|
|
3060
|
+
const shape = root.shape;
|
|
3061
|
+
for (const [key, field] of Object.entries(shape)) {
|
|
3062
|
+
const path = prefix ? `${prefix}.${key}` : key;
|
|
3063
|
+
const inner = unwrap(field);
|
|
3064
|
+
if (inner instanceof zod.z.ZodObject) {
|
|
3065
|
+
out.push(...enumerateSchemaFields(inner, path));
|
|
3066
|
+
continue;
|
|
3067
|
+
}
|
|
3068
|
+
const leaf = leafKind(field);
|
|
3069
|
+
if (leaf) out.push({ path, kind: leaf.kind, ...leaf.enumValues ? { enumValues: leaf.enumValues } : {} });
|
|
3070
|
+
}
|
|
3071
|
+
return out;
|
|
3072
|
+
}
|
|
2686
3073
|
const DEVICE_STATE_EVENT_CATEGORY = "device.state-changed";
|
|
2687
3074
|
function createLazyTrpcSource(api) {
|
|
2688
3075
|
const cache = /* @__PURE__ */ new Map();
|
|
@@ -2846,8 +3233,21 @@ function createDeviceProxy(api, binding, opts) {
|
|
|
2846
3233
|
return callLeaf(capProp, method, kind, mergeInput(input, void 0), push);
|
|
2847
3234
|
}
|
|
2848
3235
|
const accessoriesInterface = {
|
|
3236
|
+
setChildHidden: (input) => dispatch("accessories", "accessories", "setChildHidden", "mutation", input),
|
|
2849
3237
|
getStatus: (input) => dispatch("accessories", "accessories", "getStatus", "query", input)
|
|
2850
3238
|
};
|
|
3239
|
+
const airQualitySensorInterface = {
|
|
3240
|
+
getStatus: (input) => dispatch("air-quality-sensor", "airQualitySensor", "getStatus", "query", input)
|
|
3241
|
+
};
|
|
3242
|
+
const alarmPanelInterface = {
|
|
3243
|
+
arm: (input) => dispatch("alarm-panel", "alarmPanel", "arm", "mutation", input),
|
|
3244
|
+
disarm: (input) => dispatch("alarm-panel", "alarmPanel", "disarm", "mutation", input),
|
|
3245
|
+
trigger: (input) => dispatch("alarm-panel", "alarmPanel", "trigger", "mutation", input),
|
|
3246
|
+
getStatus: (input) => dispatch("alarm-panel", "alarmPanel", "getStatus", "query", input)
|
|
3247
|
+
};
|
|
3248
|
+
const ambientLightSensorInterface = {
|
|
3249
|
+
getStatus: (input) => dispatch("ambient-light-sensor", "ambientLightSensor", "getStatus", "query", input)
|
|
3250
|
+
};
|
|
2851
3251
|
const audioAnalysisInterface = {
|
|
2852
3252
|
resolveDeviceSettings: (input) => dispatch("audio-analysis", "audioAnalysis", "resolveDeviceSettings", "query", input),
|
|
2853
3253
|
getDeviceSettingsContribution: (input) => dispatch("audio-analysis", "audioAnalysis", "getDeviceSettingsContribution", "query", input),
|
|
@@ -2858,13 +3258,26 @@ function createDeviceProxy(api, binding, opts) {
|
|
|
2858
3258
|
getCurrentSnapshot: (input) => dispatch("audio-metrics", "audioMetrics", "getCurrentSnapshot", "query", input),
|
|
2859
3259
|
getHistory: (input) => dispatch("audio-metrics", "audioMetrics", "getHistory", "query", input)
|
|
2860
3260
|
};
|
|
3261
|
+
const automationControlInterface = {
|
|
3262
|
+
enable: (input) => dispatch("automation-control", "automationControl", "enable", "mutation", input),
|
|
3263
|
+
disable: (input) => dispatch("automation-control", "automationControl", "disable", "mutation", input),
|
|
3264
|
+
trigger: (input) => dispatch("automation-control", "automationControl", "trigger", "mutation", input),
|
|
3265
|
+
getStatus: (input) => dispatch("automation-control", "automationControl", "getStatus", "query", input)
|
|
3266
|
+
};
|
|
2861
3267
|
const batteryInterface = {
|
|
3268
|
+
wakeForStream: (input) => dispatch("battery", "battery", "wakeForStream", "mutation", input),
|
|
2862
3269
|
getStatus: (input) => dispatch("battery", "battery", "getStatus", "query", input)
|
|
2863
3270
|
};
|
|
3271
|
+
const binaryInterface = {
|
|
3272
|
+
getStatus: (input) => dispatch("binary", "binary", "getStatus", "query", input)
|
|
3273
|
+
};
|
|
2864
3274
|
const brightnessInterface = {
|
|
2865
3275
|
setBrightness: (input) => dispatch("brightness", "brightness", "setBrightness", "mutation", input),
|
|
2866
3276
|
getStatus: (input) => dispatch("brightness", "brightness", "getStatus", "query", input)
|
|
2867
3277
|
};
|
|
3278
|
+
const buttonInterface = {
|
|
3279
|
+
press: (input) => dispatch("button", "button", "press", "mutation", input)
|
|
3280
|
+
};
|
|
2868
3281
|
const cameraCredentialsInterface = {
|
|
2869
3282
|
getCredentials: (input) => dispatch("camera-credentials", "cameraCredentials", "getCredentials", "query", input),
|
|
2870
3283
|
getStatus: (input) => dispatch("camera-credentials", "cameraCredentials", "getStatus", "query", input)
|
|
@@ -2872,7 +3285,47 @@ function createDeviceProxy(api, binding, opts) {
|
|
|
2872
3285
|
const cameraStreamsInterface = {
|
|
2873
3286
|
getCameraStreams: (input) => dispatch("camera-streams", "cameraStreams", "getCameraStreams", "query", input),
|
|
2874
3287
|
getBrokerStreams: (input) => dispatch("camera-streams", "cameraStreams", "getBrokerStreams", "query", input),
|
|
2875
|
-
getRtspEntries: (input) => dispatch("camera-streams", "cameraStreams", "getRtspEntries", "query", input)
|
|
3288
|
+
getRtspEntries: (input) => dispatch("camera-streams", "cameraStreams", "getRtspEntries", "query", input),
|
|
3289
|
+
getProfileRtspEntries: (input) => dispatch("camera-streams", "cameraStreams", "getProfileRtspEntries", "query", input),
|
|
3290
|
+
pickStream: (input) => dispatch("camera-streams", "cameraStreams", "pickStream", "query", input)
|
|
3291
|
+
};
|
|
3292
|
+
const carbonMonoxideInterface = {
|
|
3293
|
+
getStatus: (input) => dispatch("carbon-monoxide", "carbonMonoxide", "getStatus", "query", input)
|
|
3294
|
+
};
|
|
3295
|
+
const climateControlInterface = {
|
|
3296
|
+
setMode: (input) => dispatch("climate-control", "climateControl", "setMode", "mutation", input),
|
|
3297
|
+
setFanMode: (input) => dispatch("climate-control", "climateControl", "setFanMode", "mutation", input),
|
|
3298
|
+
setPreset: (input) => dispatch("climate-control", "climateControl", "setPreset", "mutation", input),
|
|
3299
|
+
setTarget: (input) => dispatch("climate-control", "climateControl", "setTarget", "mutation", input),
|
|
3300
|
+
setTargetRange: (input) => dispatch("climate-control", "climateControl", "setTargetRange", "mutation", input),
|
|
3301
|
+
setTargetHumidity: (input) => dispatch("climate-control", "climateControl", "setTargetHumidity", "mutation", input),
|
|
3302
|
+
getStatus: (input) => dispatch("climate-control", "climateControl", "getStatus", "query", input)
|
|
3303
|
+
};
|
|
3304
|
+
const colorInterface = {
|
|
3305
|
+
setColor: (input) => dispatch("color", "color", "setColor", "mutation", input),
|
|
3306
|
+
getStatus: (input) => dispatch("color", "color", "getStatus", "query", input)
|
|
3307
|
+
};
|
|
3308
|
+
const connectivityInterface = {
|
|
3309
|
+
getStatus: (input) => dispatch("connectivity", "connectivity", "getStatus", "query", input)
|
|
3310
|
+
};
|
|
3311
|
+
const consumablesInterface = {
|
|
3312
|
+
reset: (input) => dispatch("consumables", "consumables", "reset", "mutation", input),
|
|
3313
|
+
getStatus: (input) => dispatch("consumables", "consumables", "getStatus", "query", input)
|
|
3314
|
+
};
|
|
3315
|
+
const contactInterface = {
|
|
3316
|
+
getStatus: (input) => dispatch("contact", "contact", "getStatus", "query", input)
|
|
3317
|
+
};
|
|
3318
|
+
const controlInterface = {
|
|
3319
|
+
setValue: (input) => dispatch("control", "control", "setValue", "mutation", input),
|
|
3320
|
+
getStatus: (input) => dispatch("control", "control", "getStatus", "query", input)
|
|
3321
|
+
};
|
|
3322
|
+
const coverInterface = {
|
|
3323
|
+
open: (input) => dispatch("cover", "cover", "open", "mutation", input),
|
|
3324
|
+
close: (input) => dispatch("cover", "cover", "close", "mutation", input),
|
|
3325
|
+
stop: (input) => dispatch("cover", "cover", "stop", "mutation", input),
|
|
3326
|
+
setPosition: (input) => dispatch("cover", "cover", "setPosition", "mutation", input),
|
|
3327
|
+
setTiltPosition: (input) => dispatch("cover", "cover", "setTiltPosition", "mutation", input),
|
|
3328
|
+
getStatus: (input) => dispatch("cover", "cover", "getStatus", "query", input)
|
|
2876
3329
|
};
|
|
2877
3330
|
const detectionPipelineInterface = {
|
|
2878
3331
|
getDeviceSettingsContribution: (input) => dispatch("detection-pipeline", "detectionPipeline", "getDeviceSettingsContribution", "query", input),
|
|
@@ -2890,8 +3343,10 @@ function createDeviceProxy(api, binding, opts) {
|
|
|
2890
3343
|
getStreamSources: (input) => dispatch("device-ops", "deviceOps", "getStreamSources", "query", input),
|
|
2891
3344
|
getConfigEntries: (input) => dispatch("device-ops", "deviceOps", "getConfigEntries", "query", input),
|
|
2892
3345
|
setConfig: (input) => dispatch("device-ops", "deviceOps", "setConfig", "mutation", input),
|
|
3346
|
+
runAction: (input) => dispatch("device-ops", "deviceOps", "runAction", "mutation", input),
|
|
2893
3347
|
removeDevice: (input) => dispatch("device-ops", "deviceOps", "removeDevice", "mutation", input),
|
|
2894
|
-
getSettingsSchema: (input) => dispatch("device-ops", "deviceOps", "getSettingsSchema", "query", input)
|
|
3348
|
+
getSettingsSchema: (input) => dispatch("device-ops", "deviceOps", "getSettingsSchema", "query", input),
|
|
3349
|
+
getRawState: (input) => dispatch("device-ops", "deviceOps", "getRawState", "query", input)
|
|
2895
3350
|
};
|
|
2896
3351
|
const deviceStatusInterface = {
|
|
2897
3352
|
getStatus: (input) => dispatch("device-status", "deviceStatus", "getStatus", "query", input)
|
|
@@ -2899,23 +3354,81 @@ function createDeviceProxy(api, binding, opts) {
|
|
|
2899
3354
|
const doorbellInterface = {
|
|
2900
3355
|
getStatus: (input) => dispatch("doorbell", "doorbell", "getStatus", "query", input)
|
|
2901
3356
|
};
|
|
3357
|
+
const enumSensorInterface = {
|
|
3358
|
+
getStatus: (input) => dispatch("enum-sensor", "enumSensor", "getStatus", "query", input)
|
|
3359
|
+
};
|
|
3360
|
+
const eventEmitterInterface = {
|
|
3361
|
+
getStatus: (input) => dispatch("event-emitter", "eventEmitter", "getStatus", "query", input)
|
|
3362
|
+
};
|
|
2902
3363
|
const eventsInterface = {
|
|
2903
3364
|
getEvents: (input) => dispatch("events", "events", "getEvents", "query", input),
|
|
2904
3365
|
getEventThumbnail: (input) => dispatch("events", "events", "getEventThumbnail", "query", input),
|
|
2905
3366
|
getEventClipUrl: (input) => dispatch("events", "events", "getEventClipUrl", "query", input)
|
|
2906
3367
|
};
|
|
3368
|
+
const fanControlInterface = {
|
|
3369
|
+
setPercentage: (input) => dispatch("fan-control", "fanControl", "setPercentage", "mutation", input),
|
|
3370
|
+
setPreset: (input) => dispatch("fan-control", "fanControl", "setPreset", "mutation", input),
|
|
3371
|
+
setDirection: (input) => dispatch("fan-control", "fanControl", "setDirection", "mutation", input),
|
|
3372
|
+
setOscillating: (input) => dispatch("fan-control", "fanControl", "setOscillating", "mutation", input),
|
|
3373
|
+
getStatus: (input) => dispatch("fan-control", "fanControl", "getStatus", "query", input)
|
|
3374
|
+
};
|
|
2907
3375
|
const featureProbeInterface = {
|
|
2908
3376
|
getStatus: (input) => dispatch("feature-probe", "featureProbe", "getStatus", "query", input)
|
|
2909
3377
|
};
|
|
3378
|
+
const floodInterface = {
|
|
3379
|
+
getStatus: (input) => dispatch("flood", "flood", "getStatus", "query", input)
|
|
3380
|
+
};
|
|
3381
|
+
const gasInterface = {
|
|
3382
|
+
getStatus: (input) => dispatch("gas", "gas", "getStatus", "query", input)
|
|
3383
|
+
};
|
|
3384
|
+
const humidifierInterface = {
|
|
3385
|
+
setOn: (input) => dispatch("humidifier", "humidifier", "setOn", "mutation", input),
|
|
3386
|
+
setTargetHumidity: (input) => dispatch("humidifier", "humidifier", "setTargetHumidity", "mutation", input),
|
|
3387
|
+
setMode: (input) => dispatch("humidifier", "humidifier", "setMode", "mutation", input),
|
|
3388
|
+
getStatus: (input) => dispatch("humidifier", "humidifier", "getStatus", "query", input)
|
|
3389
|
+
};
|
|
3390
|
+
const humiditySensorInterface = {
|
|
3391
|
+
getStatus: (input) => dispatch("humidity-sensor", "humiditySensor", "getStatus", "query", input)
|
|
3392
|
+
};
|
|
3393
|
+
const imageInterface = {
|
|
3394
|
+
getStatus: (input) => dispatch("image", "image", "getStatus", "query", input)
|
|
3395
|
+
};
|
|
2910
3396
|
const intercomInterface = {
|
|
2911
3397
|
startSession: (input) => dispatch("intercom", "intercom", "startSession", "mutation", input),
|
|
2912
3398
|
handleAnswer: (input) => dispatch("intercom", "intercom", "handleAnswer", "mutation", input),
|
|
2913
3399
|
stopSession: (input) => dispatch("intercom", "intercom", "stopSession", "mutation", input),
|
|
2914
3400
|
startTalkSession: (input) => dispatch("intercom", "intercom", "startTalkSession", "mutation", input),
|
|
2915
|
-
|
|
3401
|
+
pushTalkAudio: (input) => dispatch("intercom", "intercom", "pushTalkAudio", "mutation", input),
|
|
2916
3402
|
endTalkSession: (input) => dispatch("intercom", "intercom", "endTalkSession", "mutation", input),
|
|
2917
3403
|
getStatus: (input) => dispatch("intercom", "intercom", "getStatus", "query", input)
|
|
2918
3404
|
};
|
|
3405
|
+
const lawnMowerControlInterface = {
|
|
3406
|
+
startMowing: (input) => dispatch("lawn-mower-control", "lawnMowerControl", "startMowing", "mutation", input),
|
|
3407
|
+
pause: (input) => dispatch("lawn-mower-control", "lawnMowerControl", "pause", "mutation", input),
|
|
3408
|
+
dock: (input) => dispatch("lawn-mower-control", "lawnMowerControl", "dock", "mutation", input),
|
|
3409
|
+
getStatus: (input) => dispatch("lawn-mower-control", "lawnMowerControl", "getStatus", "query", input)
|
|
3410
|
+
};
|
|
3411
|
+
const lockControlInterface = {
|
|
3412
|
+
lock: (input) => dispatch("lock-control", "lockControl", "lock", "mutation", input),
|
|
3413
|
+
unlock: (input) => dispatch("lock-control", "lockControl", "unlock", "mutation", input),
|
|
3414
|
+
open: (input) => dispatch("lock-control", "lockControl", "open", "mutation", input),
|
|
3415
|
+
getStatus: (input) => dispatch("lock-control", "lockControl", "getStatus", "query", input)
|
|
3416
|
+
};
|
|
3417
|
+
const mediaPlayerInterface = {
|
|
3418
|
+
play: (input) => dispatch("media-player", "mediaPlayer", "play", "mutation", input),
|
|
3419
|
+
pause: (input) => dispatch("media-player", "mediaPlayer", "pause", "mutation", input),
|
|
3420
|
+
stop: (input) => dispatch("media-player", "mediaPlayer", "stop", "mutation", input),
|
|
3421
|
+
next: (input) => dispatch("media-player", "mediaPlayer", "next", "mutation", input),
|
|
3422
|
+
previous: (input) => dispatch("media-player", "mediaPlayer", "previous", "mutation", input),
|
|
3423
|
+
seek: (input) => dispatch("media-player", "mediaPlayer", "seek", "mutation", input),
|
|
3424
|
+
setVolume: (input) => dispatch("media-player", "mediaPlayer", "setVolume", "mutation", input),
|
|
3425
|
+
setMute: (input) => dispatch("media-player", "mediaPlayer", "setMute", "mutation", input),
|
|
3426
|
+
setShuffle: (input) => dispatch("media-player", "mediaPlayer", "setShuffle", "mutation", input),
|
|
3427
|
+
setRepeat: (input) => dispatch("media-player", "mediaPlayer", "setRepeat", "mutation", input),
|
|
3428
|
+
selectSource: (input) => dispatch("media-player", "mediaPlayer", "selectSource", "mutation", input),
|
|
3429
|
+
playMedia: (input) => dispatch("media-player", "mediaPlayer", "playMedia", "mutation", input),
|
|
3430
|
+
getStatus: (input) => dispatch("media-player", "mediaPlayer", "getStatus", "query", input)
|
|
3431
|
+
};
|
|
2919
3432
|
const motionInterface = {
|
|
2920
3433
|
isDetected: (input) => dispatch("motion", "motion", "isDetected", "query", input),
|
|
2921
3434
|
getStatus: (input) => dispatch("motion", "motion", "getStatus", "query", input)
|
|
@@ -2941,6 +3454,14 @@ function createDeviceProxy(api, binding, opts) {
|
|
|
2941
3454
|
setEnabled: (input) => dispatch("native-object-detection", "nativeObjectDetection", "setEnabled", "mutation", input),
|
|
2942
3455
|
getStatus: (input) => dispatch("native-object-detection", "nativeObjectDetection", "getStatus", "query", input)
|
|
2943
3456
|
};
|
|
3457
|
+
const notifierInterface = {
|
|
3458
|
+
send: (input) => dispatch("notifier", "notifier", "send", "mutation", input),
|
|
3459
|
+
cancel: (input) => dispatch("notifier", "notifier", "cancel", "mutation", input),
|
|
3460
|
+
getStatus: (input) => dispatch("notifier", "notifier", "getStatus", "query", input)
|
|
3461
|
+
};
|
|
3462
|
+
const numericSensorInterface = {
|
|
3463
|
+
getStatus: (input) => dispatch("numeric-sensor", "numericSensor", "getStatus", "query", input)
|
|
3464
|
+
};
|
|
2944
3465
|
const osdInterface = {
|
|
2945
3466
|
setOverlay: (input) => dispatch("osd", "osd", "setOverlay", "mutation", input),
|
|
2946
3467
|
getStatus: (input) => dispatch("osd", "osd", "getStatus", "query", input)
|
|
@@ -2953,12 +3474,23 @@ function createDeviceProxy(api, binding, opts) {
|
|
|
2953
3474
|
getMotionEvents: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "getMotionEvents", "query", input),
|
|
2954
3475
|
getObjectEvents: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "getObjectEvents", "query", input),
|
|
2955
3476
|
getAudioEvents: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "getAudioEvents", "query", input),
|
|
3477
|
+
getEventDensity: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "getEventDensity", "query", input),
|
|
3478
|
+
pruneEventsBefore: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "pruneEventsBefore", "mutation", input),
|
|
2956
3479
|
getEventMedia: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "getEventMedia", "query", input),
|
|
2957
3480
|
getTrackMedia: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "getTrackMedia", "query", input),
|
|
2958
3481
|
getDeviceSettingsContribution: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "getDeviceSettingsContribution", "query", input),
|
|
2959
3482
|
getDeviceLiveContribution: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "getDeviceLiveContribution", "query", input),
|
|
2960
3483
|
applyDeviceSettingsPatch: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "applyDeviceSettingsPatch", "mutation", input)
|
|
2961
3484
|
};
|
|
3485
|
+
const powerMeterInterface = {
|
|
3486
|
+
getStatus: (input) => dispatch("power-meter", "powerMeter", "getStatus", "query", input)
|
|
3487
|
+
};
|
|
3488
|
+
const presenceInterface = {
|
|
3489
|
+
getStatus: (input) => dispatch("presence", "presence", "getStatus", "query", input)
|
|
3490
|
+
};
|
|
3491
|
+
const pressureSensorInterface = {
|
|
3492
|
+
getStatus: (input) => dispatch("pressure-sensor", "pressureSensor", "getStatus", "query", input)
|
|
3493
|
+
};
|
|
2962
3494
|
const privacyMaskInterface = {
|
|
2963
3495
|
getOptions: (input) => dispatch("privacy-mask", "privacyMask", "getOptions", "query", input),
|
|
2964
3496
|
setMask: (input) => dispatch("privacy-mask", "privacyMask", "setMask", "mutation", input),
|
|
@@ -2987,10 +3519,13 @@ function createDeviceProxy(api, binding, opts) {
|
|
|
2987
3519
|
const rebootInterface = {
|
|
2988
3520
|
reboot: (input) => dispatch("reboot", "reboot", "reboot", "mutation", input)
|
|
2989
3521
|
};
|
|
2990
|
-
const
|
|
2991
|
-
|
|
2992
|
-
|
|
2993
|
-
|
|
3522
|
+
const scriptRunnerInterface = {
|
|
3523
|
+
run: (input) => dispatch("script-runner", "scriptRunner", "run", "mutation", input),
|
|
3524
|
+
stop: (input) => dispatch("script-runner", "scriptRunner", "stop", "mutation", input),
|
|
3525
|
+
getStatus: (input) => dispatch("script-runner", "scriptRunner", "getStatus", "query", input)
|
|
3526
|
+
};
|
|
3527
|
+
const smokeInterface = {
|
|
3528
|
+
getStatus: (input) => dispatch("smoke", "smoke", "getStatus", "query", input)
|
|
2994
3529
|
};
|
|
2995
3530
|
const snapshotInterface = {
|
|
2996
3531
|
getSnapshot: (input) => dispatch("snapshot", "snapshot", "getSnapshot", "query", input),
|
|
@@ -3013,6 +3548,48 @@ function createDeviceProxy(api, binding, opts) {
|
|
|
3013
3548
|
setState: (input) => dispatch("switch", "switch", "setState", "mutation", input),
|
|
3014
3549
|
getStatus: (input) => dispatch("switch", "switch", "getStatus", "query", input)
|
|
3015
3550
|
};
|
|
3551
|
+
const tamperInterface = {
|
|
3552
|
+
getStatus: (input) => dispatch("tamper", "tamper", "getStatus", "query", input)
|
|
3553
|
+
};
|
|
3554
|
+
const temperatureSensorInterface = {
|
|
3555
|
+
getStatus: (input) => dispatch("temperature-sensor", "temperatureSensor", "getStatus", "query", input)
|
|
3556
|
+
};
|
|
3557
|
+
const updateInterface = {
|
|
3558
|
+
installUpdate: (input) => dispatch("update", "update", "installUpdate", "mutation", input),
|
|
3559
|
+
getStatus: (input) => dispatch("update", "update", "getStatus", "query", input)
|
|
3560
|
+
};
|
|
3561
|
+
const vacuumControlInterface = {
|
|
3562
|
+
start: (input) => dispatch("vacuum-control", "vacuumControl", "start", "mutation", input),
|
|
3563
|
+
pause: (input) => dispatch("vacuum-control", "vacuumControl", "pause", "mutation", input),
|
|
3564
|
+
stop: (input) => dispatch("vacuum-control", "vacuumControl", "stop", "mutation", input),
|
|
3565
|
+
returnToBase: (input) => dispatch("vacuum-control", "vacuumControl", "returnToBase", "mutation", input),
|
|
3566
|
+
locate: (input) => dispatch("vacuum-control", "vacuumControl", "locate", "mutation", input),
|
|
3567
|
+
setFanSpeed: (input) => dispatch("vacuum-control", "vacuumControl", "setFanSpeed", "mutation", input),
|
|
3568
|
+
getStatus: (input) => dispatch("vacuum-control", "vacuumControl", "getStatus", "query", input)
|
|
3569
|
+
};
|
|
3570
|
+
const valveInterface = {
|
|
3571
|
+
open: (input) => dispatch("valve", "valve", "open", "mutation", input),
|
|
3572
|
+
close: (input) => dispatch("valve", "valve", "close", "mutation", input),
|
|
3573
|
+
stop: (input) => dispatch("valve", "valve", "stop", "mutation", input),
|
|
3574
|
+
setPosition: (input) => dispatch("valve", "valve", "setPosition", "mutation", input),
|
|
3575
|
+
getStatus: (input) => dispatch("valve", "valve", "getStatus", "query", input)
|
|
3576
|
+
};
|
|
3577
|
+
const vibrationInterface = {
|
|
3578
|
+
getStatus: (input) => dispatch("vibration", "vibration", "getStatus", "query", input)
|
|
3579
|
+
};
|
|
3580
|
+
const videoclipsInterface = {
|
|
3581
|
+
listClips: (input) => dispatch("videoclips", "videoclips", "listClips", "query", input),
|
|
3582
|
+
getClipPlayback: (input) => dispatch("videoclips", "videoclips", "getClipPlayback", "query", input)
|
|
3583
|
+
};
|
|
3584
|
+
const waterHeaterInterface = {
|
|
3585
|
+
setTargetTemp: (input) => dispatch("water-heater", "waterHeater", "setTargetTemp", "mutation", input),
|
|
3586
|
+
setOperationMode: (input) => dispatch("water-heater", "waterHeater", "setOperationMode", "mutation", input),
|
|
3587
|
+
setAway: (input) => dispatch("water-heater", "waterHeater", "setAway", "mutation", input),
|
|
3588
|
+
getStatus: (input) => dispatch("water-heater", "waterHeater", "getStatus", "query", input)
|
|
3589
|
+
};
|
|
3590
|
+
const weatherInterface = {
|
|
3591
|
+
getStatus: (input) => dispatch("weather", "weather", "getStatus", "query", input)
|
|
3592
|
+
};
|
|
3016
3593
|
const webrtcSessionInterface = {
|
|
3017
3594
|
listStreams: (input) => dispatch("webrtc-session", "webrtcSession", "listStreams", "query", input),
|
|
3018
3595
|
createSession: (input) => dispatch("webrtc-session", "webrtcSession", "createSession", "mutation", input),
|
|
@@ -3021,7 +3598,8 @@ function createDeviceProxy(api, binding, opts) {
|
|
|
3021
3598
|
addIceCandidate: (input) => dispatch("webrtc-session", "webrtcSession", "addIceCandidate", "mutation", input),
|
|
3022
3599
|
getIceCandidates: (input) => dispatch("webrtc-session", "webrtcSession", "getIceCandidates", "query", input),
|
|
3023
3600
|
closeSession: (input) => dispatch("webrtc-session", "webrtcSession", "closeSession", "mutation", input),
|
|
3024
|
-
hasAdaptiveBitrate: (input) => dispatch("webrtc-session", "webrtcSession", "hasAdaptiveBitrate", "query", input)
|
|
3601
|
+
hasAdaptiveBitrate: (input) => dispatch("webrtc-session", "webrtcSession", "hasAdaptiveBitrate", "query", input),
|
|
3602
|
+
getSessionState: (input) => dispatch("webrtc-session", "webrtcSession", "getSessionState", "query", input)
|
|
3025
3603
|
};
|
|
3026
3604
|
const zoneAnalyticsInterface = {
|
|
3027
3605
|
getCurrentSnapshot: (input) => dispatch("zone-analytics", "zoneAnalytics", "getCurrentSnapshot", "query", input),
|
|
@@ -3048,6 +3626,9 @@ function createDeviceProxy(api, binding, opts) {
|
|
|
3048
3626
|
getDeviceLiveContribution: (input) => dispatchSystem("cameraPipelineConfig", "getDeviceLiveContribution", "query", input),
|
|
3049
3627
|
applyDeviceSettingsPatch: (input) => dispatchSystem("cameraPipelineConfig", "applyDeviceSettingsPatch", "mutation", input)
|
|
3050
3628
|
};
|
|
3629
|
+
const deviceAdoptionInterface = {
|
|
3630
|
+
getStatus: (input) => dispatchSystem("deviceAdoption", "getStatus", "query", input)
|
|
3631
|
+
};
|
|
3051
3632
|
const deviceExportInterface = {
|
|
3052
3633
|
getDeviceSettingsContribution: (input) => dispatchSystem("deviceExport", "getDeviceSettingsContribution", "query", input),
|
|
3053
3634
|
getDeviceLiveContribution: (input) => dispatchSystem("deviceExport", "getDeviceLiveContribution", "query", input),
|
|
@@ -3059,6 +3640,15 @@ function createDeviceProxy(api, binding, opts) {
|
|
|
3059
3640
|
loadMeta: (input) => dispatchSystem("deviceManager", "loadMeta", "query", input),
|
|
3060
3641
|
setName: (input) => dispatchSystem("deviceManager", "setName", "mutation", input),
|
|
3061
3642
|
setLocation: (input) => dispatchSystem("deviceManager", "setLocation", "mutation", input),
|
|
3643
|
+
setType: (input) => dispatchSystem("deviceManager", "setType", "mutation", input),
|
|
3644
|
+
setIntegrationId: (input) => dispatchSystem("deviceManager", "setIntegrationId", "mutation", input),
|
|
3645
|
+
setLinkDeviceId: (input) => dispatchSystem("deviceManager", "setLinkDeviceId", "mutation", input),
|
|
3646
|
+
setPrimaryChildEntityId: (input) => dispatchSystem("deviceManager", "setPrimaryChildEntityId", "mutation", input),
|
|
3647
|
+
setChildLayout: (input) => dispatchSystem("deviceManager", "setChildLayout", "mutation", input),
|
|
3648
|
+
setDeviceLinks: (input) => dispatchSystem("deviceManager", "setDeviceLinks", "mutation", input),
|
|
3649
|
+
getWireableFields: (input) => dispatchSystem("deviceManager", "getWireableFields", "query", input),
|
|
3650
|
+
setRole: (input) => dispatchSystem("deviceManager", "setRole", "mutation", input),
|
|
3651
|
+
applyInitialMeta: (input) => dispatchSystem("deviceManager", "applyInitialMeta", "mutation", input),
|
|
3062
3652
|
setMetadata: (input) => dispatchSystem("deviceManager", "setMetadata", "mutation", input),
|
|
3063
3653
|
setDisabled: (input) => dispatchSystem("deviceManager", "setDisabled", "mutation", input),
|
|
3064
3654
|
getDevice: (input) => dispatchSystem("deviceManager", "getDevice", "query", input),
|
|
@@ -3078,6 +3668,7 @@ function createDeviceProxy(api, binding, opts) {
|
|
|
3078
3668
|
getDeviceSettingsAggregate: (input) => dispatchSystem("deviceManager", "getDeviceSettingsAggregate", "query", input),
|
|
3079
3669
|
getDeviceLiveInfoAggregate: (input) => dispatchSystem("deviceManager", "getDeviceLiveInfoAggregate", "query", input),
|
|
3080
3670
|
getDeviceAggregate: (input) => dispatchSystem("deviceManager", "getDeviceAggregate", "query", input),
|
|
3671
|
+
runDeviceAction: (input) => dispatchSystem("deviceManager", "runDeviceAction", "mutation", input),
|
|
3081
3672
|
updateDeviceField: (input) => dispatchSystem("deviceManager", "updateDeviceField", "mutation", input),
|
|
3082
3673
|
updateDeviceFieldsBatch: (input) => dispatchSystem("deviceManager", "updateDeviceFieldsBatch", "mutation", input),
|
|
3083
3674
|
testField: (input) => dispatchSystem("deviceManager", "testField", "mutation", input),
|
|
@@ -3122,8 +3713,17 @@ function createDeviceProxy(api, binding, opts) {
|
|
|
3122
3713
|
detachCamera: (input) => dispatchSystem("pipelineRunner", "detachCamera", "mutation", input),
|
|
3123
3714
|
getCameraMetrics: (input) => dispatchSystem("pipelineRunner", "getCameraMetrics", "query", input)
|
|
3124
3715
|
};
|
|
3125
|
-
const
|
|
3126
|
-
|
|
3716
|
+
const recordingInterface = {
|
|
3717
|
+
getAvailability: (input) => dispatchSystem("recording", "getAvailability", "query", input),
|
|
3718
|
+
getPlaybackManifest: (input) => dispatchSystem("recording", "getPlaybackManifest", "query", input),
|
|
3719
|
+
getDeviceConfig: (input) => dispatchSystem("recording", "getDeviceConfig", "query", input),
|
|
3720
|
+
setDeviceConfig: (input) => dispatchSystem("recording", "setDeviceConfig", "mutation", input),
|
|
3721
|
+
rescanStorage: (input) => dispatchSystem("recording", "rescanStorage", "mutation", input),
|
|
3722
|
+
pruneFootage: (input) => dispatchSystem("recording", "pruneFootage", "mutation", input),
|
|
3723
|
+
getStatus: (input) => dispatchSystem("recording", "getStatus", "query", input),
|
|
3724
|
+
getDeviceSettingsContribution: (input) => dispatchSystem("recording", "getDeviceSettingsContribution", "query", input),
|
|
3725
|
+
getDeviceLiveContribution: (input) => dispatchSystem("recording", "getDeviceLiveContribution", "query", input),
|
|
3726
|
+
applyDeviceSettingsPatch: (input) => dispatchSystem("recording", "applyDeviceSettingsPatch", "mutation", input)
|
|
3127
3727
|
};
|
|
3128
3728
|
const snapshotProviderInterface = {
|
|
3129
3729
|
supportsDevice: (input) => dispatchSystem("snapshotProvider", "supportsDevice", "query", input),
|
|
@@ -3143,63 +3743,143 @@ function createDeviceProxy(api, binding, opts) {
|
|
|
3143
3743
|
deviceId: binding.deviceId,
|
|
3144
3744
|
binding,
|
|
3145
3745
|
state: {
|
|
3746
|
+
airQualitySensor: createSliceHandle(stateSource, binding.deviceId, "air-quality-sensor"),
|
|
3747
|
+
alarmPanel: createSliceHandle(stateSource, binding.deviceId, "alarm-panel"),
|
|
3748
|
+
ambientLightSensor: createSliceHandle(stateSource, binding.deviceId, "ambient-light-sensor"),
|
|
3146
3749
|
audioMetrics: createSliceHandle(stateSource, binding.deviceId, "audio-metrics"),
|
|
3750
|
+
automationControl: createSliceHandle(stateSource, binding.deviceId, "automation-control"),
|
|
3147
3751
|
battery: createSliceHandle(stateSource, binding.deviceId, "battery"),
|
|
3752
|
+
binary: createSliceHandle(stateSource, binding.deviceId, "binary"),
|
|
3148
3753
|
brightness: createSliceHandle(stateSource, binding.deviceId, "brightness"),
|
|
3149
3754
|
cameraStreams: createSliceHandle(stateSource, binding.deviceId, "camera-streams"),
|
|
3755
|
+
carbonMonoxide: createSliceHandle(stateSource, binding.deviceId, "carbon-monoxide"),
|
|
3756
|
+
climateControl: createSliceHandle(stateSource, binding.deviceId, "climate-control"),
|
|
3757
|
+
color: createSliceHandle(stateSource, binding.deviceId, "color"),
|
|
3758
|
+
connectivity: createSliceHandle(stateSource, binding.deviceId, "connectivity"),
|
|
3759
|
+
consumables: createSliceHandle(stateSource, binding.deviceId, "consumables"),
|
|
3760
|
+
contact: createSliceHandle(stateSource, binding.deviceId, "contact"),
|
|
3761
|
+
control: createSliceHandle(stateSource, binding.deviceId, "control"),
|
|
3762
|
+
cover: createSliceHandle(stateSource, binding.deviceId, "cover"),
|
|
3150
3763
|
deviceDiscovery: createSliceHandle(stateSource, binding.deviceId, "device-discovery"),
|
|
3151
3764
|
deviceStatus: createSliceHandle(stateSource, binding.deviceId, "device-status"),
|
|
3152
3765
|
doorbell: createSliceHandle(stateSource, binding.deviceId, "doorbell"),
|
|
3766
|
+
enumSensor: createSliceHandle(stateSource, binding.deviceId, "enum-sensor"),
|
|
3767
|
+
eventEmitter: createSliceHandle(stateSource, binding.deviceId, "event-emitter"),
|
|
3768
|
+
fanControl: createSliceHandle(stateSource, binding.deviceId, "fan-control"),
|
|
3153
3769
|
featureProbe: createSliceHandle(stateSource, binding.deviceId, "feature-probe"),
|
|
3770
|
+
flood: createSliceHandle(stateSource, binding.deviceId, "flood"),
|
|
3771
|
+
gas: createSliceHandle(stateSource, binding.deviceId, "gas"),
|
|
3772
|
+
humidifier: createSliceHandle(stateSource, binding.deviceId, "humidifier"),
|
|
3773
|
+
humiditySensor: createSliceHandle(stateSource, binding.deviceId, "humidity-sensor"),
|
|
3774
|
+
image: createSliceHandle(stateSource, binding.deviceId, "image"),
|
|
3775
|
+
lawnMowerControl: createSliceHandle(stateSource, binding.deviceId, "lawn-mower-control"),
|
|
3776
|
+
lockControl: createSliceHandle(stateSource, binding.deviceId, "lock-control"),
|
|
3777
|
+
mediaPlayer: createSliceHandle(stateSource, binding.deviceId, "media-player"),
|
|
3154
3778
|
motion: createSliceHandle(stateSource, binding.deviceId, "motion"),
|
|
3155
3779
|
motionTrigger: createSliceHandle(stateSource, binding.deviceId, "motion-trigger"),
|
|
3156
3780
|
motionZones: createSliceHandle(stateSource, binding.deviceId, "motion-zones"),
|
|
3157
3781
|
nativeObjectDetection: createSliceHandle(stateSource, binding.deviceId, "native-object-detection"),
|
|
3782
|
+
notifier: createSliceHandle(stateSource, binding.deviceId, "notifier"),
|
|
3783
|
+
numericSensor: createSliceHandle(stateSource, binding.deviceId, "numeric-sensor"),
|
|
3784
|
+
powerMeter: createSliceHandle(stateSource, binding.deviceId, "power-meter"),
|
|
3785
|
+
presence: createSliceHandle(stateSource, binding.deviceId, "presence"),
|
|
3786
|
+
pressureSensor: createSliceHandle(stateSource, binding.deviceId, "pressure-sensor"),
|
|
3158
3787
|
privacyMask: createSliceHandle(stateSource, binding.deviceId, "privacy-mask"),
|
|
3159
3788
|
ptzAutotrack: createSliceHandle(stateSource, binding.deviceId, "ptz-autotrack"),
|
|
3789
|
+
scriptRunner: createSliceHandle(stateSource, binding.deviceId, "script-runner"),
|
|
3790
|
+
smoke: createSliceHandle(stateSource, binding.deviceId, "smoke"),
|
|
3160
3791
|
streamParams: createSliceHandle(stateSource, binding.deviceId, "stream-params"),
|
|
3161
3792
|
switch: createSliceHandle(stateSource, binding.deviceId, "switch"),
|
|
3793
|
+
tamper: createSliceHandle(stateSource, binding.deviceId, "tamper"),
|
|
3794
|
+
temperatureSensor: createSliceHandle(stateSource, binding.deviceId, "temperature-sensor"),
|
|
3795
|
+
update: createSliceHandle(stateSource, binding.deviceId, "update"),
|
|
3796
|
+
vacuumControl: createSliceHandle(stateSource, binding.deviceId, "vacuum-control"),
|
|
3797
|
+
valve: createSliceHandle(stateSource, binding.deviceId, "valve"),
|
|
3798
|
+
vibration: createSliceHandle(stateSource, binding.deviceId, "vibration"),
|
|
3799
|
+
waterHeater: createSliceHandle(stateSource, binding.deviceId, "water-heater"),
|
|
3800
|
+
weather: createSliceHandle(stateSource, binding.deviceId, "weather"),
|
|
3162
3801
|
zoneAnalytics: createSliceHandle(stateSource, binding.deviceId, "zone-analytics"),
|
|
3163
3802
|
zoneRules: createSliceHandle(stateSource, binding.deviceId, "zone-rules"),
|
|
3164
3803
|
zones: createSliceHandle(stateSource, binding.deviceId, "zones")
|
|
3165
3804
|
},
|
|
3166
3805
|
accessories: accessoriesInterface,
|
|
3806
|
+
airQualitySensor: airQualitySensorInterface,
|
|
3807
|
+
alarmPanel: alarmPanelInterface,
|
|
3808
|
+
ambientLightSensor: ambientLightSensorInterface,
|
|
3167
3809
|
audioAnalysis: audioAnalysisInterface,
|
|
3168
3810
|
audioMetrics: audioMetricsInterface,
|
|
3811
|
+
automationControl: automationControlInterface,
|
|
3169
3812
|
battery: batteryInterface,
|
|
3813
|
+
binary: binaryInterface,
|
|
3170
3814
|
brightness: brightnessInterface,
|
|
3815
|
+
button: buttonInterface,
|
|
3171
3816
|
cameraCredentials: cameraCredentialsInterface,
|
|
3172
3817
|
cameraStreams: cameraStreamsInterface,
|
|
3818
|
+
carbonMonoxide: carbonMonoxideInterface,
|
|
3819
|
+
climateControl: climateControlInterface,
|
|
3820
|
+
color: colorInterface,
|
|
3821
|
+
connectivity: connectivityInterface,
|
|
3822
|
+
consumables: consumablesInterface,
|
|
3823
|
+
contact: contactInterface,
|
|
3824
|
+
control: controlInterface,
|
|
3825
|
+
cover: coverInterface,
|
|
3173
3826
|
detectionPipeline: detectionPipelineInterface,
|
|
3174
3827
|
deviceDiscovery: deviceDiscoveryInterface,
|
|
3175
3828
|
deviceOps: deviceOpsInterface,
|
|
3176
3829
|
deviceStatus: deviceStatusInterface,
|
|
3177
3830
|
doorbell: doorbellInterface,
|
|
3831
|
+
enumSensor: enumSensorInterface,
|
|
3832
|
+
eventEmitter: eventEmitterInterface,
|
|
3178
3833
|
events: eventsInterface,
|
|
3834
|
+
fanControl: fanControlInterface,
|
|
3179
3835
|
featureProbe: featureProbeInterface,
|
|
3836
|
+
flood: floodInterface,
|
|
3837
|
+
gas: gasInterface,
|
|
3838
|
+
humidifier: humidifierInterface,
|
|
3839
|
+
humiditySensor: humiditySensorInterface,
|
|
3840
|
+
image: imageInterface,
|
|
3180
3841
|
intercom: intercomInterface,
|
|
3842
|
+
lawnMowerControl: lawnMowerControlInterface,
|
|
3843
|
+
lockControl: lockControlInterface,
|
|
3844
|
+
mediaPlayer: mediaPlayerInterface,
|
|
3181
3845
|
motion: motionInterface,
|
|
3182
3846
|
motionDetection: motionDetectionInterface,
|
|
3183
3847
|
motionTrigger: motionTriggerInterface,
|
|
3184
3848
|
motionZones: motionZonesInterface,
|
|
3185
3849
|
nativeObjectDetection: nativeObjectDetectionInterface,
|
|
3850
|
+
notifier: notifierInterface,
|
|
3851
|
+
numericSensor: numericSensorInterface,
|
|
3186
3852
|
osd: osdInterface,
|
|
3187
3853
|
pipelineAnalytics: pipelineAnalyticsInterface,
|
|
3854
|
+
powerMeter: powerMeterInterface,
|
|
3855
|
+
presence: presenceInterface,
|
|
3856
|
+
pressureSensor: pressureSensorInterface,
|
|
3188
3857
|
privacyMask: privacyMaskInterface,
|
|
3189
3858
|
ptz: ptzInterface,
|
|
3190
3859
|
ptzAutotrack: ptzAutotrackInterface,
|
|
3191
3860
|
reboot: rebootInterface,
|
|
3192
|
-
|
|
3861
|
+
scriptRunner: scriptRunnerInterface,
|
|
3862
|
+
smoke: smokeInterface,
|
|
3193
3863
|
snapshot: snapshotInterface,
|
|
3194
3864
|
streamCatalog: streamCatalogInterface,
|
|
3195
3865
|
streamParams: streamParamsInterface,
|
|
3196
3866
|
switch: switchInterface,
|
|
3867
|
+
tamper: tamperInterface,
|
|
3868
|
+
temperatureSensor: temperatureSensorInterface,
|
|
3869
|
+
update: updateInterface,
|
|
3870
|
+
vacuumControl: vacuumControlInterface,
|
|
3871
|
+
valve: valveInterface,
|
|
3872
|
+
vibration: vibrationInterface,
|
|
3873
|
+
videoclips: videoclipsInterface,
|
|
3874
|
+
waterHeater: waterHeaterInterface,
|
|
3875
|
+
weather: weatherInterface,
|
|
3197
3876
|
webrtcSession: webrtcSessionInterface,
|
|
3198
3877
|
zoneAnalytics: zoneAnalyticsInterface,
|
|
3199
3878
|
zoneRules: zoneRulesInterface,
|
|
3200
3879
|
zones: zonesInterface,
|
|
3201
3880
|
addonSettings: addonSettingsInterface,
|
|
3202
3881
|
cameraPipelineConfig: cameraPipelineConfigInterface,
|
|
3882
|
+
deviceAdoption: deviceAdoptionInterface,
|
|
3203
3883
|
deviceExport: deviceExportInterface,
|
|
3204
3884
|
deviceManager: deviceManagerInterface,
|
|
3205
3885
|
deviceState: deviceStateInterface,
|
|
@@ -3207,7 +3887,7 @@ function createDeviceProxy(api, binding, opts) {
|
|
|
3207
3887
|
pipelineExecutor: pipelineExecutorInterface,
|
|
3208
3888
|
pipelineOrchestrator: pipelineOrchestratorInterface,
|
|
3209
3889
|
pipelineRunner: pipelineRunnerInterface,
|
|
3210
|
-
|
|
3890
|
+
recording: recordingInterface,
|
|
3211
3891
|
snapshotProvider: snapshotProviderInterface,
|
|
3212
3892
|
streamBroker: streamBrokerInterface
|
|
3213
3893
|
};
|
|
@@ -3358,6 +4038,24 @@ function createSystemProxy(api) {
|
|
|
3358
4038
|
upsertDestinationPolicy: (input) => dispatch("backup", "upsertDestinationPolicy", "mutation", input),
|
|
3359
4039
|
previewSchedule: (input) => dispatch("backup", "previewSchedule", "query", input)
|
|
3360
4040
|
};
|
|
4041
|
+
const brokerInterface = {
|
|
4042
|
+
list: (input) => dispatch("broker", "list", "query", input),
|
|
4043
|
+
get: (input) => dispatch("broker", "get", "query", input),
|
|
4044
|
+
listProviders: (input) => dispatch("broker", "listProviders", "query", input),
|
|
4045
|
+
add: (input) => dispatch("broker", "add", "mutation", input),
|
|
4046
|
+
remove: (input) => dispatch("broker", "remove", "mutation", input),
|
|
4047
|
+
testConnection: (input) => dispatch("broker", "testConnection", "mutation", input),
|
|
4048
|
+
getSettings: (input) => dispatch("broker", "getSettings", "query", input),
|
|
4049
|
+
setSettings: (input) => dispatch("broker", "setSettings", "mutation", input),
|
|
4050
|
+
getBrokerConfig: (input) => dispatch("broker", "getBrokerConfig", "query", input),
|
|
4051
|
+
getSettingsSchema: (input) => dispatch("broker", "getSettingsSchema", "query", input),
|
|
4052
|
+
testSettings: (input) => dispatch("broker", "testSettings", "mutation", input),
|
|
4053
|
+
publish: (input) => dispatch("broker", "publish", "mutation", input),
|
|
4054
|
+
subscribe: (input) => dispatch("broker", "subscribe", "mutation", input),
|
|
4055
|
+
unsubscribe: (input) => dispatch("broker", "unsubscribe", "mutation", input),
|
|
4056
|
+
getState: (input) => dispatch("broker", "getState", "query", input),
|
|
4057
|
+
getStatus: (input) => dispatch("broker", "getStatus", "query", input)
|
|
4058
|
+
};
|
|
3361
4059
|
const decoderInterface = {
|
|
3362
4060
|
supportsCodec: (input) => dispatch("decoder", "supportsCodec", "query", input),
|
|
3363
4061
|
getInfo: (input) => dispatch("decoder", "getInfo", "query", input),
|
|
@@ -3374,6 +4072,15 @@ function createSystemProxy(api) {
|
|
|
3374
4072
|
listActiveSessions: (input) => dispatch("decoder", "listActiveSessions", "query", input),
|
|
3375
4073
|
reprobeHwaccel: (input) => dispatch("decoder", "reprobeHwaccel", "mutation", input)
|
|
3376
4074
|
};
|
|
4075
|
+
const deviceAdoptionInterface = {
|
|
4076
|
+
listCandidateFilters: (input) => dispatch("deviceAdoption", "listCandidateFilters", "query", input),
|
|
4077
|
+
listCandidates: (input) => dispatch("deviceAdoption", "listCandidates", "query", input),
|
|
4078
|
+
getCandidate: (input) => dispatch("deviceAdoption", "getCandidate", "query", input),
|
|
4079
|
+
refresh: (input) => dispatch("deviceAdoption", "refresh", "mutation", input),
|
|
4080
|
+
adopt: (input) => dispatch("deviceAdoption", "adopt", "mutation", input),
|
|
4081
|
+
release: (input) => dispatch("deviceAdoption", "release", "mutation", input),
|
|
4082
|
+
resync: (input) => dispatch("deviceAdoption", "resync", "mutation", input)
|
|
4083
|
+
};
|
|
3377
4084
|
const deviceExportInterface = {
|
|
3378
4085
|
getStatus: (input) => dispatch("deviceExport", "getStatus", "query", input),
|
|
3379
4086
|
listSupportedDeviceKinds: (input) => dispatch("deviceExport", "listSupportedDeviceKinds", "query", input),
|
|
@@ -3392,13 +4099,18 @@ function createSystemProxy(api) {
|
|
|
3392
4099
|
listPersistedByAddon: (input) => dispatch("deviceManager", "listPersistedByAddon", "query", input),
|
|
3393
4100
|
listAll: (input) => dispatch("deviceManager", "listAll", "query", input),
|
|
3394
4101
|
getChildren: (input) => dispatch("deviceManager", "getChildren", "query", input),
|
|
4102
|
+
removeByIntegration: (input) => dispatch("deviceManager", "removeByIntegration", "mutation", input),
|
|
3395
4103
|
listWrappersForCap: (input) => dispatch("deviceManager", "listWrappersForCap", "query", input),
|
|
3396
4104
|
listBindableCapsForDeviceType: (input) => dispatch("deviceManager", "listBindableCapsForDeviceType", "query", input),
|
|
3397
4105
|
discoverDevices: (input) => dispatch("deviceManager", "discoverDevices", "mutation", input),
|
|
3398
4106
|
adoptDevice: (input) => dispatch("deviceManager", "adoptDevice", "mutation", input),
|
|
3399
4107
|
getCreationSchema: (input) => dispatch("deviceManager", "getCreationSchema", "query", input),
|
|
3400
4108
|
createDevice: (input) => dispatch("deviceManager", "createDevice", "mutation", input),
|
|
3401
|
-
testCreationField: (input) => dispatch("deviceManager", "testCreationField", "mutation", input)
|
|
4109
|
+
testCreationField: (input) => dispatch("deviceManager", "testCreationField", "mutation", input),
|
|
4110
|
+
adoptionListCandidates: (input) => dispatch("deviceManager", "adoptionListCandidates", "query", input),
|
|
4111
|
+
adoptionRefresh: (input) => dispatch("deviceManager", "adoptionRefresh", "mutation", input),
|
|
4112
|
+
adoptionAdopt: (input) => dispatch("deviceManager", "adoptionAdopt", "mutation", input),
|
|
4113
|
+
adoptionRelease: (input) => dispatch("deviceManager", "adoptionRelease", "mutation", input)
|
|
3402
4114
|
};
|
|
3403
4115
|
const deviceProviderInterface = {
|
|
3404
4116
|
start: (input) => dispatch("deviceProvider", "start", "mutation", input),
|
|
@@ -3558,32 +4270,8 @@ function createSystemProxy(api) {
|
|
|
3558
4270
|
getAllCameraMetrics: (input) => dispatch("pipelineRunner", "getAllCameraMetrics", "query", input),
|
|
3559
4271
|
getLocalCameras: (input) => dispatch("pipelineRunner", "getLocalCameras", "query", input)
|
|
3560
4272
|
};
|
|
3561
|
-
const
|
|
3562
|
-
|
|
3563
|
-
getHardware: (input) => dispatch("platformProbe", "getHardware", "query", input),
|
|
3564
|
-
resolveInferenceConfig: (input) => dispatch("platformProbe", "resolveInferenceConfig", "query", input),
|
|
3565
|
-
resolveHwAccel: (input) => dispatch("platformProbe", "resolveHwAccel", "query", input),
|
|
3566
|
-
getHardwareEncoders: (input) => dispatch("platformProbe", "getHardwareEncoders", "query", input),
|
|
3567
|
-
refreshHardwareEncoders: (input) => dispatch("platformProbe", "refreshHardwareEncoders", "mutation", input)
|
|
3568
|
-
};
|
|
3569
|
-
const recordingEngineInterface = {
|
|
3570
|
-
getStatus: (input) => dispatch("recordingEngine", "getStatus", "query", input),
|
|
3571
|
-
enable: (input) => dispatch("recordingEngine", "enable", "mutation", input),
|
|
3572
|
-
disable: (input) => dispatch("recordingEngine", "disable", "mutation", input),
|
|
3573
|
-
getConfig: (input) => dispatch("recordingEngine", "getConfig", "query", input),
|
|
3574
|
-
updateConfig: (input) => dispatch("recordingEngine", "updateConfig", "mutation", input),
|
|
3575
|
-
getPlaylist: (input) => dispatch("recordingEngine", "getPlaylist", "query", input),
|
|
3576
|
-
getThumbnail: (input) => dispatch("recordingEngine", "getThumbnail", "query", input),
|
|
3577
|
-
getSegments: (input) => dispatch("recordingEngine", "getSegments", "query", input),
|
|
3578
|
-
getAvailability: (input) => dispatch("recordingEngine", "getAvailability", "query", input),
|
|
3579
|
-
estimateStorage: (input) => dispatch("recordingEngine", "estimateStorage", "query", input),
|
|
3580
|
-
estimateGlobalStorage: (input) => dispatch("recordingEngine", "estimateGlobalStorage", "query", input),
|
|
3581
|
-
getStorageUsage: (input) => dispatch("recordingEngine", "getStorageUsage", "query", input),
|
|
3582
|
-
setPolicy: (input) => dispatch("recordingEngine", "setPolicy", "mutation", input),
|
|
3583
|
-
getPolicy: (input) => dispatch("recordingEngine", "getPolicy", "query", input),
|
|
3584
|
-
getRetentionConfig: (input) => dispatch("recordingEngine", "getRetentionConfig", "query", input),
|
|
3585
|
-
updateRetentionConfig: (input) => dispatch("recordingEngine", "updateRetentionConfig", "mutation", input),
|
|
3586
|
-
getMotionStats: (input) => dispatch("recordingEngine", "getMotionStats", "query", input)
|
|
4273
|
+
const recordingInterface = {
|
|
4274
|
+
getStorageUsage: (input) => dispatch("recording", "getStorageUsage", "query", input)
|
|
3587
4275
|
};
|
|
3588
4276
|
const settingsStoreInterface = {
|
|
3589
4277
|
get: (input) => dispatch("settingsStore", "get", "query", input),
|
|
@@ -3593,6 +4281,7 @@ function createSystemProxy(api) {
|
|
|
3593
4281
|
update: (input) => dispatch("settingsStore", "update", "mutation", input),
|
|
3594
4282
|
delete: (input) => dispatch("settingsStore", "delete", "mutation", input),
|
|
3595
4283
|
count: (input) => dispatch("settingsStore", "count", "query", input),
|
|
4284
|
+
histogram: (input) => dispatch("settingsStore", "histogram", "query", input),
|
|
3596
4285
|
isEmpty: (input) => dispatch("settingsStore", "isEmpty", "query", input),
|
|
3597
4286
|
declareCollection: (input) => dispatch("settingsStore", "declareCollection", "mutation", input)
|
|
3598
4287
|
};
|
|
@@ -3613,6 +4302,7 @@ function createSystemProxy(api) {
|
|
|
3613
4302
|
endDownload: (input) => dispatch("storage", "endDownload", "mutation", input),
|
|
3614
4303
|
listLocations: (input) => dispatch("storage", "listLocations", "query", input),
|
|
3615
4304
|
getDefaultLocation: (input) => dispatch("storage", "getDefaultLocation", "query", input),
|
|
4305
|
+
listLocationDeclarations: (input) => dispatch("storage", "listLocationDeclarations", "query", input),
|
|
3616
4306
|
upsertLocation: (input) => dispatch("storage", "upsertLocation", "mutation", input),
|
|
3617
4307
|
deleteLocation: (input) => dispatch("storage", "deleteLocation", "mutation", input),
|
|
3618
4308
|
testLocation: (input) => dispatch("storage", "testLocation", "query", input),
|
|
@@ -3623,6 +4313,7 @@ function createSystemProxy(api) {
|
|
|
3623
4313
|
listAllCameraStreams: (input) => dispatch("streamBroker", "listAllCameraStreams", "query", input),
|
|
3624
4314
|
listAllProfileSlots: (input) => dispatch("streamBroker", "listAllProfileSlots", "query", input),
|
|
3625
4315
|
getBrokerStats: (input) => dispatch("streamBroker", "getBrokerStats", "query", input),
|
|
4316
|
+
probeStream: (input) => dispatch("streamBroker", "probeStream", "mutation", input),
|
|
3626
4317
|
listClients: (input) => dispatch("streamBroker", "listClients", "query", input),
|
|
3627
4318
|
killClient: (input) => dispatch("streamBroker", "killClient", "mutation", input),
|
|
3628
4319
|
getStreamUrl: (input) => dispatch("streamBroker", "getStreamUrl", "query", input),
|
|
@@ -3695,7 +4386,9 @@ function createSystemProxy(api) {
|
|
|
3695
4386
|
audioAnalyzer: audioAnalyzerInterface,
|
|
3696
4387
|
audioCodec: audioCodecInterface,
|
|
3697
4388
|
backup: backupInterface,
|
|
4389
|
+
broker: brokerInterface,
|
|
3698
4390
|
decoder: decoderInterface,
|
|
4391
|
+
deviceAdoption: deviceAdoptionInterface,
|
|
3699
4392
|
deviceExport: deviceExportInterface,
|
|
3700
4393
|
deviceManager: deviceManagerInterface,
|
|
3701
4394
|
deviceProvider: deviceProviderInterface,
|
|
@@ -3712,8 +4405,7 @@ function createSystemProxy(api) {
|
|
|
3712
4405
|
pipelineExecutor: pipelineExecutorInterface,
|
|
3713
4406
|
pipelineOrchestrator: pipelineOrchestratorInterface,
|
|
3714
4407
|
pipelineRunner: pipelineRunnerInterface,
|
|
3715
|
-
|
|
3716
|
-
recordingEngine: recordingEngineInterface,
|
|
4408
|
+
recording: recordingInterface,
|
|
3717
4409
|
settingsStore: settingsStoreInterface,
|
|
3718
4410
|
storage: storageInterface,
|
|
3719
4411
|
streamBroker: streamBrokerInterface,
|
|
@@ -4475,6 +5167,15 @@ function customAction(input, output, options) {
|
|
|
4475
5167
|
scope: options?.scope ?? { kind: "system" }
|
|
4476
5168
|
};
|
|
4477
5169
|
}
|
|
5170
|
+
function deviceCustomAction(input, output, options) {
|
|
5171
|
+
return {
|
|
5172
|
+
input,
|
|
5173
|
+
output,
|
|
5174
|
+
kind: options?.kind ?? "query",
|
|
5175
|
+
auth: options?.auth ?? "protected",
|
|
5176
|
+
scope: { kind: "device", ...options?.deviceTypes ? { deviceTypes: options.deviceTypes } : {} }
|
|
5177
|
+
};
|
|
5178
|
+
}
|
|
4478
5179
|
const STREAM_PROFILE_META = [
|
|
4479
5180
|
{ profile: "main", prefix: "streamMain", label: "Main stream" },
|
|
4480
5181
|
{ profile: "sub", prefix: "streamSub", label: "Sub stream" },
|
|
@@ -4685,20 +5386,36 @@ const CAPABILITY_NAMES = {
|
|
|
4685
5386
|
addons: "addons",
|
|
4686
5387
|
adminUi: "admin-ui",
|
|
4687
5388
|
advancedNotifier: "advanced-notifier",
|
|
5389
|
+
airQualitySensor: "air-quality-sensor",
|
|
5390
|
+
alarmPanel: "alarm-panel",
|
|
4688
5391
|
alerts: "alerts",
|
|
5392
|
+
ambientLightSensor: "ambient-light-sensor",
|
|
4689
5393
|
audioAnalysis: "audio-analysis",
|
|
4690
5394
|
audioAnalyzer: "audio-analyzer",
|
|
4691
5395
|
audioCodec: "audio-codec",
|
|
4692
5396
|
audioMetrics: "audio-metrics",
|
|
4693
5397
|
authProvider: "auth-provider",
|
|
5398
|
+
automationControl: "automation-control",
|
|
4694
5399
|
backup: "backup",
|
|
4695
5400
|
battery: "battery",
|
|
5401
|
+
binary: "binary",
|
|
4696
5402
|
brightness: "brightness",
|
|
5403
|
+
broker: "broker",
|
|
5404
|
+
button: "button",
|
|
4697
5405
|
cameraCredentials: "camera-credentials",
|
|
4698
5406
|
cameraPipelineConfig: "camera-pipeline-config",
|
|
4699
5407
|
cameraStreams: "camera-streams",
|
|
5408
|
+
carbonMonoxide: "carbon-monoxide",
|
|
5409
|
+
climateControl: "climate-control",
|
|
5410
|
+
color: "color",
|
|
5411
|
+
connectivity: "connectivity",
|
|
5412
|
+
consumables: "consumables",
|
|
5413
|
+
contact: "contact",
|
|
5414
|
+
control: "control",
|
|
5415
|
+
cover: "cover",
|
|
4700
5416
|
decoder: "decoder",
|
|
4701
5417
|
detectionPipeline: "detection-pipeline",
|
|
5418
|
+
deviceAdoption: "device-adoption",
|
|
4702
5419
|
deviceDiscovery: "device-discovery",
|
|
4703
5420
|
deviceExport: "device-export",
|
|
4704
5421
|
deviceManager: "device-manager",
|
|
@@ -4708,12 +5425,24 @@ const CAPABILITY_NAMES = {
|
|
|
4708
5425
|
deviceStatus: "device-status",
|
|
4709
5426
|
doorbell: "doorbell",
|
|
4710
5427
|
embeddingEncoder: "embedding-encoder",
|
|
5428
|
+
enumSensor: "enum-sensor",
|
|
5429
|
+
eventEmitter: "event-emitter",
|
|
4711
5430
|
events: "events",
|
|
5431
|
+
fanControl: "fan-control",
|
|
4712
5432
|
featureProbe: "feature-probe",
|
|
5433
|
+
filesystemBrowse: "filesystem-browse",
|
|
5434
|
+
flood: "flood",
|
|
5435
|
+
gas: "gas",
|
|
5436
|
+
humidifier: "humidifier",
|
|
5437
|
+
humiditySensor: "humidity-sensor",
|
|
5438
|
+
image: "image",
|
|
4713
5439
|
integrations: "integrations",
|
|
4714
5440
|
intercom: "intercom",
|
|
5441
|
+
lawnMowerControl: "lawn-mower-control",
|
|
4715
5442
|
localNetwork: "local-network",
|
|
5443
|
+
lockControl: "lock-control",
|
|
4716
5444
|
logDestination: "log-destination",
|
|
5445
|
+
mediaPlayer: "media-player",
|
|
4717
5446
|
meshNetwork: "mesh-network",
|
|
4718
5447
|
metricsProvider: "metrics-provider",
|
|
4719
5448
|
motion: "motion",
|
|
@@ -4726,6 +5455,8 @@ const CAPABILITY_NAMES = {
|
|
|
4726
5455
|
networkQuality: "network-quality",
|
|
4727
5456
|
nodes: "nodes",
|
|
4728
5457
|
notificationOutput: "notification-output",
|
|
5458
|
+
notifier: "notifier",
|
|
5459
|
+
numericSensor: "numeric-sensor",
|
|
4729
5460
|
oauthIntegration: "oauth-integration",
|
|
4730
5461
|
osd: "osd",
|
|
4731
5462
|
pipelineAnalytics: "pipeline-analytics",
|
|
@@ -4733,19 +5464,24 @@ const CAPABILITY_NAMES = {
|
|
|
4733
5464
|
pipelineOrchestrator: "pipeline-orchestrator",
|
|
4734
5465
|
pipelineRunner: "pipeline-runner",
|
|
4735
5466
|
platformProbe: "platform-probe",
|
|
5467
|
+
powerMeter: "power-meter",
|
|
5468
|
+
presence: "presence",
|
|
5469
|
+
pressureSensor: "pressure-sensor",
|
|
4736
5470
|
privacyMask: "privacy-mask",
|
|
4737
5471
|
ptz: "ptz",
|
|
4738
5472
|
ptzAutotrack: "ptz-autotrack",
|
|
4739
5473
|
reboot: "reboot",
|
|
4740
5474
|
recording: "recording",
|
|
4741
|
-
recordingEngine: "recording-engine",
|
|
4742
5475
|
restreamer: "restreamer",
|
|
5476
|
+
scriptRunner: "script-runner",
|
|
4743
5477
|
settingsStore: "settings-store",
|
|
5478
|
+
smoke: "smoke",
|
|
4744
5479
|
smtpProvider: "smtp-provider",
|
|
4745
5480
|
snapshot: "snapshot",
|
|
4746
5481
|
snapshotProvider: "snapshot-provider",
|
|
4747
5482
|
ssoBridge: "sso-bridge",
|
|
4748
5483
|
storage: "storage",
|
|
5484
|
+
storageEvictable: "storage-evictable",
|
|
4749
5485
|
storageProvider: "storage-provider",
|
|
4750
5486
|
streamBroker: "stream-broker",
|
|
4751
5487
|
streamCatalog: "stream-catalog",
|
|
@@ -4753,10 +5489,19 @@ const CAPABILITY_NAMES = {
|
|
|
4753
5489
|
streamingEngine: "streaming-engine",
|
|
4754
5490
|
switch: "switch",
|
|
4755
5491
|
system: "system",
|
|
5492
|
+
tamper: "tamper",
|
|
5493
|
+
temperatureSensor: "temperature-sensor",
|
|
4756
5494
|
toast: "toast",
|
|
4757
5495
|
turnProvider: "turn-provider",
|
|
5496
|
+
update: "update",
|
|
4758
5497
|
userManagement: "user-management",
|
|
4759
5498
|
userPasskeys: "user-passkeys",
|
|
5499
|
+
vacuumControl: "vacuum-control",
|
|
5500
|
+
valve: "valve",
|
|
5501
|
+
vibration: "vibration",
|
|
5502
|
+
videoclips: "videoclips",
|
|
5503
|
+
waterHeater: "water-heater",
|
|
5504
|
+
weather: "weather",
|
|
4760
5505
|
webrtc: "webrtc",
|
|
4761
5506
|
webrtcSession: "webrtc-session",
|
|
4762
5507
|
zoneAnalytics: "zone-analytics",
|
|
@@ -4774,20 +5519,36 @@ const CAPABILITY_ROUTER_KEYS = [
|
|
|
4774
5519
|
{ key: "addons", name: "addons" },
|
|
4775
5520
|
{ key: "adminUi", name: "admin-ui" },
|
|
4776
5521
|
{ key: "advancedNotifier", name: "advanced-notifier" },
|
|
5522
|
+
{ key: "airQualitySensor", name: "air-quality-sensor" },
|
|
5523
|
+
{ key: "alarmPanel", name: "alarm-panel" },
|
|
4777
5524
|
{ key: "alerts", name: "alerts" },
|
|
5525
|
+
{ key: "ambientLightSensor", name: "ambient-light-sensor" },
|
|
4778
5526
|
{ key: "audioAnalysis", name: "audio-analysis" },
|
|
4779
5527
|
{ key: "audioAnalyzer", name: "audio-analyzer" },
|
|
4780
5528
|
{ key: "audioCodec", name: "audio-codec" },
|
|
4781
5529
|
{ key: "audioMetrics", name: "audio-metrics" },
|
|
4782
5530
|
{ key: "authProvider", name: "auth-provider" },
|
|
5531
|
+
{ key: "automationControl", name: "automation-control" },
|
|
4783
5532
|
{ key: "backup", name: "backup" },
|
|
4784
5533
|
{ key: "battery", name: "battery" },
|
|
5534
|
+
{ key: "binary", name: "binary" },
|
|
4785
5535
|
{ key: "brightness", name: "brightness" },
|
|
5536
|
+
{ key: "broker", name: "broker" },
|
|
5537
|
+
{ key: "button", name: "button" },
|
|
4786
5538
|
{ key: "cameraCredentials", name: "camera-credentials" },
|
|
4787
5539
|
{ key: "cameraPipelineConfig", name: "camera-pipeline-config" },
|
|
4788
5540
|
{ key: "cameraStreams", name: "camera-streams" },
|
|
5541
|
+
{ key: "carbonMonoxide", name: "carbon-monoxide" },
|
|
5542
|
+
{ key: "climateControl", name: "climate-control" },
|
|
5543
|
+
{ key: "color", name: "color" },
|
|
5544
|
+
{ key: "connectivity", name: "connectivity" },
|
|
5545
|
+
{ key: "consumables", name: "consumables" },
|
|
5546
|
+
{ key: "contact", name: "contact" },
|
|
5547
|
+
{ key: "control", name: "control" },
|
|
5548
|
+
{ key: "cover", name: "cover" },
|
|
4789
5549
|
{ key: "decoder", name: "decoder" },
|
|
4790
5550
|
{ key: "detectionPipeline", name: "detection-pipeline" },
|
|
5551
|
+
{ key: "deviceAdoption", name: "device-adoption" },
|
|
4791
5552
|
{ key: "deviceDiscovery", name: "device-discovery" },
|
|
4792
5553
|
{ key: "deviceExport", name: "device-export" },
|
|
4793
5554
|
{ key: "deviceManager", name: "device-manager" },
|
|
@@ -4797,12 +5558,24 @@ const CAPABILITY_ROUTER_KEYS = [
|
|
|
4797
5558
|
{ key: "deviceStatus", name: "device-status" },
|
|
4798
5559
|
{ key: "doorbell", name: "doorbell" },
|
|
4799
5560
|
{ key: "embeddingEncoder", name: "embedding-encoder" },
|
|
5561
|
+
{ key: "enumSensor", name: "enum-sensor" },
|
|
5562
|
+
{ key: "eventEmitter", name: "event-emitter" },
|
|
4800
5563
|
{ key: "events", name: "events" },
|
|
5564
|
+
{ key: "fanControl", name: "fan-control" },
|
|
4801
5565
|
{ key: "featureProbe", name: "feature-probe" },
|
|
5566
|
+
{ key: "filesystemBrowse", name: "filesystem-browse" },
|
|
5567
|
+
{ key: "flood", name: "flood" },
|
|
5568
|
+
{ key: "gas", name: "gas" },
|
|
5569
|
+
{ key: "humidifier", name: "humidifier" },
|
|
5570
|
+
{ key: "humiditySensor", name: "humidity-sensor" },
|
|
5571
|
+
{ key: "image", name: "image" },
|
|
4802
5572
|
{ key: "integrations", name: "integrations" },
|
|
4803
5573
|
{ key: "intercom", name: "intercom" },
|
|
5574
|
+
{ key: "lawnMowerControl", name: "lawn-mower-control" },
|
|
4804
5575
|
{ key: "localNetwork", name: "local-network" },
|
|
5576
|
+
{ key: "lockControl", name: "lock-control" },
|
|
4805
5577
|
{ key: "logDestination", name: "log-destination" },
|
|
5578
|
+
{ key: "mediaPlayer", name: "media-player" },
|
|
4806
5579
|
{ key: "meshNetwork", name: "mesh-network" },
|
|
4807
5580
|
{ key: "metricsProvider", name: "metrics-provider" },
|
|
4808
5581
|
{ key: "motion", name: "motion" },
|
|
@@ -4815,6 +5588,8 @@ const CAPABILITY_ROUTER_KEYS = [
|
|
|
4815
5588
|
{ key: "networkQuality", name: "network-quality" },
|
|
4816
5589
|
{ key: "nodes", name: "nodes" },
|
|
4817
5590
|
{ key: "notificationOutput", name: "notification-output" },
|
|
5591
|
+
{ key: "notifier", name: "notifier" },
|
|
5592
|
+
{ key: "numericSensor", name: "numeric-sensor" },
|
|
4818
5593
|
{ key: "oauthIntegration", name: "oauth-integration" },
|
|
4819
5594
|
{ key: "osd", name: "osd" },
|
|
4820
5595
|
{ key: "pipelineAnalytics", name: "pipeline-analytics" },
|
|
@@ -4822,19 +5597,24 @@ const CAPABILITY_ROUTER_KEYS = [
|
|
|
4822
5597
|
{ key: "pipelineOrchestrator", name: "pipeline-orchestrator" },
|
|
4823
5598
|
{ key: "pipelineRunner", name: "pipeline-runner" },
|
|
4824
5599
|
{ key: "platformProbe", name: "platform-probe" },
|
|
5600
|
+
{ key: "powerMeter", name: "power-meter" },
|
|
5601
|
+
{ key: "presence", name: "presence" },
|
|
5602
|
+
{ key: "pressureSensor", name: "pressure-sensor" },
|
|
4825
5603
|
{ key: "privacyMask", name: "privacy-mask" },
|
|
4826
5604
|
{ key: "ptz", name: "ptz" },
|
|
4827
5605
|
{ key: "ptzAutotrack", name: "ptz-autotrack" },
|
|
4828
5606
|
{ key: "reboot", name: "reboot" },
|
|
4829
5607
|
{ key: "recording", name: "recording" },
|
|
4830
|
-
{ key: "recordingEngine", name: "recording-engine" },
|
|
4831
5608
|
{ key: "restreamer", name: "restreamer" },
|
|
5609
|
+
{ key: "scriptRunner", name: "script-runner" },
|
|
4832
5610
|
{ key: "settingsStore", name: "settings-store" },
|
|
5611
|
+
{ key: "smoke", name: "smoke" },
|
|
4833
5612
|
{ key: "smtpProvider", name: "smtp-provider" },
|
|
4834
5613
|
{ key: "snapshot", name: "snapshot" },
|
|
4835
5614
|
{ key: "snapshotProvider", name: "snapshot-provider" },
|
|
4836
5615
|
{ key: "ssoBridge", name: "sso-bridge" },
|
|
4837
5616
|
{ key: "storage", name: "storage" },
|
|
5617
|
+
{ key: "storageEvictable", name: "storage-evictable" },
|
|
4838
5618
|
{ key: "storageProvider", name: "storage-provider" },
|
|
4839
5619
|
{ key: "streamBroker", name: "stream-broker" },
|
|
4840
5620
|
{ key: "streamCatalog", name: "stream-catalog" },
|
|
@@ -4842,10 +5622,19 @@ const CAPABILITY_ROUTER_KEYS = [
|
|
|
4842
5622
|
{ key: "streamingEngine", name: "streaming-engine" },
|
|
4843
5623
|
{ key: "switch", name: "switch" },
|
|
4844
5624
|
{ key: "system", name: "system" },
|
|
5625
|
+
{ key: "tamper", name: "tamper" },
|
|
5626
|
+
{ key: "temperatureSensor", name: "temperature-sensor" },
|
|
4845
5627
|
{ key: "toast", name: "toast" },
|
|
4846
5628
|
{ key: "turnProvider", name: "turn-provider" },
|
|
5629
|
+
{ key: "update", name: "update" },
|
|
4847
5630
|
{ key: "userManagement", name: "user-management" },
|
|
4848
5631
|
{ key: "userPasskeys", name: "user-passkeys" },
|
|
5632
|
+
{ key: "vacuumControl", name: "vacuum-control" },
|
|
5633
|
+
{ key: "valve", name: "valve" },
|
|
5634
|
+
{ key: "vibration", name: "vibration" },
|
|
5635
|
+
{ key: "videoclips", name: "videoclips" },
|
|
5636
|
+
{ key: "waterHeater", name: "water-heater" },
|
|
5637
|
+
{ key: "weather", name: "weather" },
|
|
4849
5638
|
{ key: "webrtc", name: "webrtc" },
|
|
4850
5639
|
{ key: "webrtcSession", name: "webrtc-session" },
|
|
4851
5640
|
{ key: "zoneAnalytics", name: "zone-analytics" },
|
|
@@ -4863,20 +5652,36 @@ const ALL_CAPABILITY_DEFINITIONS = [
|
|
|
4863
5652
|
index.addonsCapability,
|
|
4864
5653
|
index.adminUiCapability,
|
|
4865
5654
|
index.advancedNotifierCapability,
|
|
5655
|
+
index.airQualitySensorCapability,
|
|
5656
|
+
index.alarmPanelCapability,
|
|
4866
5657
|
index.alertsCapability,
|
|
5658
|
+
index.ambientLightSensorCapability,
|
|
4867
5659
|
index.audioAnalysisCapability,
|
|
4868
5660
|
index.audioAnalyzerCapability,
|
|
4869
5661
|
index.audioCodecCapability,
|
|
4870
5662
|
index.audioMetricsCapability,
|
|
4871
5663
|
index.authProviderCapability,
|
|
5664
|
+
index.automationControlCapability,
|
|
4872
5665
|
index.backupCapability,
|
|
4873
5666
|
index.batteryCapability,
|
|
5667
|
+
index.binaryCapability,
|
|
4874
5668
|
index.brightnessCapability,
|
|
5669
|
+
index.brokerCapability,
|
|
5670
|
+
index.buttonCapability,
|
|
4875
5671
|
index.cameraCredentialsCapability,
|
|
4876
5672
|
index.cameraPipelineConfigCapability,
|
|
4877
5673
|
index.cameraStreamsCapability,
|
|
5674
|
+
index.carbonMonoxideCapability,
|
|
5675
|
+
index.climateControlCapability,
|
|
5676
|
+
index.colorCapability,
|
|
5677
|
+
index.connectivityCapability,
|
|
5678
|
+
index.consumablesCapability,
|
|
5679
|
+
index.contactCapability,
|
|
5680
|
+
index.controlCapability,
|
|
5681
|
+
index.coverCapability,
|
|
4878
5682
|
index.decoderCapability,
|
|
4879
5683
|
index.detectionPipelineCapability,
|
|
5684
|
+
index.deviceAdoptionCapability,
|
|
4880
5685
|
index.deviceDiscoveryCapability,
|
|
4881
5686
|
index.deviceExportCapability,
|
|
4882
5687
|
index.deviceManagerCapability,
|
|
@@ -4886,12 +5691,24 @@ const ALL_CAPABILITY_DEFINITIONS = [
|
|
|
4886
5691
|
index.deviceStatusCapability,
|
|
4887
5692
|
index.doorbellCapability,
|
|
4888
5693
|
index.embeddingEncoderCapability,
|
|
5694
|
+
index.enumSensorCapability,
|
|
5695
|
+
index.eventEmitterCapability,
|
|
4889
5696
|
index.eventsCapability,
|
|
5697
|
+
index.fanControlCapability,
|
|
4890
5698
|
index.featureProbeCapability,
|
|
5699
|
+
index.filesystemBrowseCapability,
|
|
5700
|
+
index.floodCapability,
|
|
5701
|
+
index.gasCapability,
|
|
5702
|
+
index.humidifierCapability,
|
|
5703
|
+
index.humiditySensorCapability,
|
|
5704
|
+
index.imageCapability,
|
|
4891
5705
|
index.integrationsCapability,
|
|
4892
5706
|
index.intercomCapability,
|
|
5707
|
+
index.lawnMowerControlCapability,
|
|
4893
5708
|
index.localNetworkCapability,
|
|
5709
|
+
index.lockControlCapability,
|
|
4894
5710
|
index.logDestinationCapability,
|
|
5711
|
+
index.mediaPlayerCapability,
|
|
4895
5712
|
index.meshNetworkCapability,
|
|
4896
5713
|
index.metricsProviderCapability,
|
|
4897
5714
|
index.motionCapability,
|
|
@@ -4904,6 +5721,8 @@ const ALL_CAPABILITY_DEFINITIONS = [
|
|
|
4904
5721
|
index.networkQualityCapability,
|
|
4905
5722
|
index.nodesCapability,
|
|
4906
5723
|
index.notificationOutputCapability,
|
|
5724
|
+
index.notifierCapability,
|
|
5725
|
+
index.numericSensorCapability,
|
|
4907
5726
|
index.oauthIntegrationCapability,
|
|
4908
5727
|
index.osdCapability,
|
|
4909
5728
|
index.pipelineAnalyticsCapability,
|
|
@@ -4911,19 +5730,24 @@ const ALL_CAPABILITY_DEFINITIONS = [
|
|
|
4911
5730
|
index.pipelineOrchestratorCapability,
|
|
4912
5731
|
index.pipelineRunnerCapability,
|
|
4913
5732
|
index.platformProbeCapability,
|
|
5733
|
+
index.powerMeterCapability,
|
|
5734
|
+
index.presenceCapability,
|
|
5735
|
+
index.pressureSensorCapability,
|
|
4914
5736
|
index.privacyMaskCapability,
|
|
4915
5737
|
index.ptzCapability,
|
|
4916
5738
|
index.ptzAutotrackCapability,
|
|
4917
5739
|
index.rebootCapability,
|
|
4918
5740
|
index.recordingCapability,
|
|
4919
|
-
index.recordingEngineCapability,
|
|
4920
5741
|
index.restreamerCapability,
|
|
5742
|
+
index.scriptRunnerCapability,
|
|
4921
5743
|
index.settingsStoreCapability,
|
|
5744
|
+
index.smokeCapability,
|
|
4922
5745
|
index.smtpProviderCapability,
|
|
4923
5746
|
index.snapshotCapability,
|
|
4924
5747
|
index.snapshotProviderCapability,
|
|
4925
5748
|
index.ssoBridgeCapability,
|
|
4926
5749
|
index.storageCapability,
|
|
5750
|
+
index.storageEvictableCapability,
|
|
4927
5751
|
index.storageProviderCapability,
|
|
4928
5752
|
index.streamBrokerCapability,
|
|
4929
5753
|
index.streamCatalogCapability,
|
|
@@ -4931,10 +5755,19 @@ const ALL_CAPABILITY_DEFINITIONS = [
|
|
|
4931
5755
|
index.streamingEngineCapability,
|
|
4932
5756
|
index.switchCapability,
|
|
4933
5757
|
index.systemCapability,
|
|
5758
|
+
index.tamperCapability,
|
|
5759
|
+
index.temperatureSensorCapability,
|
|
4934
5760
|
index.toastCapability,
|
|
4935
5761
|
index.turnProviderCapability,
|
|
5762
|
+
index.updateCapability,
|
|
4936
5763
|
index.userManagementCapability,
|
|
4937
5764
|
index.userPasskeysCapability,
|
|
5765
|
+
index.vacuumControlCapability,
|
|
5766
|
+
index.valveCapability,
|
|
5767
|
+
index.vibrationCapability,
|
|
5768
|
+
index.videoclipsCapability,
|
|
5769
|
+
index.waterHeaterCapability,
|
|
5770
|
+
index.weatherCapability,
|
|
4938
5771
|
index.webrtcCapability,
|
|
4939
5772
|
index.webrtcSessionCapability,
|
|
4940
5773
|
index.zoneAnalyticsCapability,
|
|
@@ -4943,29 +5776,72 @@ const ALL_CAPABILITY_DEFINITIONS = [
|
|
|
4943
5776
|
];
|
|
4944
5777
|
const CAP_NAMES_WITH_STATUS = [
|
|
4945
5778
|
"accessories",
|
|
5779
|
+
"air-quality-sensor",
|
|
5780
|
+
"alarm-panel",
|
|
5781
|
+
"ambient-light-sensor",
|
|
5782
|
+
"automation-control",
|
|
4946
5783
|
"battery",
|
|
5784
|
+
"binary",
|
|
4947
5785
|
"brightness",
|
|
5786
|
+
"broker",
|
|
4948
5787
|
"camera-credentials",
|
|
5788
|
+
"carbon-monoxide",
|
|
5789
|
+
"climate-control",
|
|
5790
|
+
"color",
|
|
5791
|
+
"connectivity",
|
|
5792
|
+
"consumables",
|
|
5793
|
+
"contact",
|
|
5794
|
+
"control",
|
|
5795
|
+
"cover",
|
|
5796
|
+
"device-adoption",
|
|
4949
5797
|
"device-discovery",
|
|
4950
5798
|
"device-export",
|
|
4951
5799
|
"device-status",
|
|
4952
5800
|
"doorbell",
|
|
5801
|
+
"enum-sensor",
|
|
5802
|
+
"event-emitter",
|
|
5803
|
+
"fan-control",
|
|
4953
5804
|
"feature-probe",
|
|
5805
|
+
"flood",
|
|
5806
|
+
"gas",
|
|
5807
|
+
"humidifier",
|
|
5808
|
+
"humidity-sensor",
|
|
5809
|
+
"image",
|
|
4954
5810
|
"intercom",
|
|
5811
|
+
"lawn-mower-control",
|
|
5812
|
+
"lock-control",
|
|
5813
|
+
"media-player",
|
|
4955
5814
|
"motion",
|
|
4956
5815
|
"motion-trigger",
|
|
4957
5816
|
"motion-zones",
|
|
4958
5817
|
"mqtt-broker",
|
|
4959
5818
|
"native-object-detection",
|
|
5819
|
+
"notifier",
|
|
5820
|
+
"numeric-sensor",
|
|
4960
5821
|
"osd",
|
|
5822
|
+
"power-meter",
|
|
5823
|
+
"presence",
|
|
5824
|
+
"pressure-sensor",
|
|
4961
5825
|
"privacy-mask",
|
|
4962
5826
|
"ptz",
|
|
4963
5827
|
"ptz-autotrack",
|
|
5828
|
+
"recording",
|
|
5829
|
+
"script-runner",
|
|
5830
|
+
"smoke",
|
|
4964
5831
|
"snapshot",
|
|
4965
5832
|
"stream-params",
|
|
4966
|
-
"switch"
|
|
5833
|
+
"switch",
|
|
5834
|
+
"tamper",
|
|
5835
|
+
"temperature-sensor",
|
|
5836
|
+
"update",
|
|
5837
|
+
"vacuum-control",
|
|
5838
|
+
"valve",
|
|
5839
|
+
"vibration",
|
|
5840
|
+
"water-heater",
|
|
5841
|
+
"weather"
|
|
4967
5842
|
];
|
|
4968
5843
|
const METHOD_ACCESS_MAP = Object.freeze({
|
|
5844
|
+
"accessories.setChildHidden": { capName: "accessories", capScope: "device", addonId: null, access: "create" },
|
|
4969
5845
|
"addonPages.listPages": { capName: "addon-pages", capScope: "system", addonId: null, access: "view" },
|
|
4970
5846
|
"addonPagesSource.listPages": { capName: "addon-pages-source", capScope: "system", addonId: null, access: "view" },
|
|
4971
5847
|
"addonRoutes.getRoutes": { capName: "addon-routes", capScope: "system", addonId: null, access: "view" },
|
|
@@ -5017,6 +5893,9 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5017
5893
|
"advancedNotifier.getRules": { capName: "advanced-notifier", capScope: "system", addonId: null, access: "view" },
|
|
5018
5894
|
"advancedNotifier.testRule": { capName: "advanced-notifier", capScope: "system", addonId: null, access: "create" },
|
|
5019
5895
|
"advancedNotifier.upsertRule": { capName: "advanced-notifier", capScope: "system", addonId: null, access: "create" },
|
|
5896
|
+
"alarmPanel.arm": { capName: "alarm-panel", capScope: "device", addonId: null, access: "create" },
|
|
5897
|
+
"alarmPanel.disarm": { capName: "alarm-panel", capScope: "device", addonId: null, access: "create" },
|
|
5898
|
+
"alarmPanel.trigger": { capName: "alarm-panel", capScope: "device", addonId: null, access: "create" },
|
|
5020
5899
|
"alerts.dismiss": { capName: "alerts", capScope: "system", addonId: null, access: "create" },
|
|
5021
5900
|
"alerts.emit": { capName: "alerts", capScope: "system", addonId: null, access: "create" },
|
|
5022
5901
|
"alerts.getUnreadCount": { capName: "alerts", capScope: "system", addonId: null, access: "view" },
|
|
@@ -5047,6 +5926,9 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5047
5926
|
"authProvider.handleCallback": { capName: "auth-provider", capScope: "system", addonId: null, access: "create" },
|
|
5048
5927
|
"authProvider.validateCredentials": { capName: "auth-provider", capScope: "system", addonId: null, access: "create" },
|
|
5049
5928
|
"authProvider.validateToken": { capName: "auth-provider", capScope: "system", addonId: null, access: "view" },
|
|
5929
|
+
"automationControl.disable": { capName: "automation-control", capScope: "device", addonId: null, access: "create" },
|
|
5930
|
+
"automationControl.enable": { capName: "automation-control", capScope: "device", addonId: null, access: "create" },
|
|
5931
|
+
"automationControl.trigger": { capName: "automation-control", capScope: "device", addonId: null, access: "create" },
|
|
5050
5932
|
"backup.delete": { capName: "backup", capScope: "system", addonId: null, access: "delete" },
|
|
5051
5933
|
"backup.getEntries": { capName: "backup", capScope: "system", addonId: null, access: "view" },
|
|
5052
5934
|
"backup.list": { capName: "backup", capScope: "system", addonId: null, access: "view" },
|
|
@@ -5057,11 +5939,45 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5057
5939
|
"backup.restore": { capName: "backup", capScope: "system", addonId: null, access: "create" },
|
|
5058
5940
|
"backup.trigger": { capName: "backup", capScope: "system", addonId: null, access: "create" },
|
|
5059
5941
|
"backup.upsertDestinationPolicy": { capName: "backup", capScope: "system", addonId: null, access: "create" },
|
|
5942
|
+
"battery.wakeForStream": { capName: "battery", capScope: "device", addonId: null, access: "create" },
|
|
5060
5943
|
"brightness.setBrightness": { capName: "brightness", capScope: "device", addonId: null, access: "create" },
|
|
5944
|
+
"broker.add": { capName: "broker", capScope: "system", addonId: null, access: "create" },
|
|
5945
|
+
"broker.get": { capName: "broker", capScope: "system", addonId: null, access: "view" },
|
|
5946
|
+
"broker.getBrokerConfig": { capName: "broker", capScope: "system", addonId: null, access: "view" },
|
|
5947
|
+
"broker.getSettings": { capName: "broker", capScope: "system", addonId: null, access: "view" },
|
|
5948
|
+
"broker.getSettingsSchema": { capName: "broker", capScope: "system", addonId: null, access: "view" },
|
|
5949
|
+
"broker.getState": { capName: "broker", capScope: "system", addonId: null, access: "view" },
|
|
5950
|
+
"broker.getStatus": { capName: "broker", capScope: "system", addonId: null, access: "view" },
|
|
5951
|
+
"broker.list": { capName: "broker", capScope: "system", addonId: null, access: "view" },
|
|
5952
|
+
"broker.listProviders": { capName: "broker", capScope: "system", addonId: null, access: "view" },
|
|
5953
|
+
"broker.publish": { capName: "broker", capScope: "system", addonId: null, access: "create" },
|
|
5954
|
+
"broker.remove": { capName: "broker", capScope: "system", addonId: null, access: "delete" },
|
|
5955
|
+
"broker.setSettings": { capName: "broker", capScope: "system", addonId: null, access: "create" },
|
|
5956
|
+
"broker.subscribe": { capName: "broker", capScope: "system", addonId: null, access: "create" },
|
|
5957
|
+
"broker.testConnection": { capName: "broker", capScope: "system", addonId: null, access: "create" },
|
|
5958
|
+
"broker.testSettings": { capName: "broker", capScope: "system", addonId: null, access: "create" },
|
|
5959
|
+
"broker.unsubscribe": { capName: "broker", capScope: "system", addonId: null, access: "create" },
|
|
5960
|
+
"button.press": { capName: "button", capScope: "device", addonId: null, access: "create" },
|
|
5061
5961
|
"cameraCredentials.getCredentials": { capName: "camera-credentials", capScope: "device", addonId: null, access: "view" },
|
|
5062
5962
|
"cameraStreams.getBrokerStreams": { capName: "camera-streams", capScope: "device", addonId: null, access: "view" },
|
|
5063
5963
|
"cameraStreams.getCameraStreams": { capName: "camera-streams", capScope: "device", addonId: null, access: "view" },
|
|
5964
|
+
"cameraStreams.getProfileRtspEntries": { capName: "camera-streams", capScope: "device", addonId: null, access: "view" },
|
|
5064
5965
|
"cameraStreams.getRtspEntries": { capName: "camera-streams", capScope: "device", addonId: null, access: "view" },
|
|
5966
|
+
"cameraStreams.pickStream": { capName: "camera-streams", capScope: "device", addonId: null, access: "view" },
|
|
5967
|
+
"climateControl.setFanMode": { capName: "climate-control", capScope: "device", addonId: null, access: "create" },
|
|
5968
|
+
"climateControl.setMode": { capName: "climate-control", capScope: "device", addonId: null, access: "create" },
|
|
5969
|
+
"climateControl.setPreset": { capName: "climate-control", capScope: "device", addonId: null, access: "create" },
|
|
5970
|
+
"climateControl.setTarget": { capName: "climate-control", capScope: "device", addonId: null, access: "create" },
|
|
5971
|
+
"climateControl.setTargetHumidity": { capName: "climate-control", capScope: "device", addonId: null, access: "create" },
|
|
5972
|
+
"climateControl.setTargetRange": { capName: "climate-control", capScope: "device", addonId: null, access: "create" },
|
|
5973
|
+
"color.setColor": { capName: "color", capScope: "device", addonId: null, access: "create" },
|
|
5974
|
+
"consumables.reset": { capName: "consumables", capScope: "device", addonId: null, access: "delete" },
|
|
5975
|
+
"control.setValue": { capName: "control", capScope: "device", addonId: null, access: "create" },
|
|
5976
|
+
"cover.close": { capName: "cover", capScope: "device", addonId: null, access: "create" },
|
|
5977
|
+
"cover.open": { capName: "cover", capScope: "device", addonId: null, access: "create" },
|
|
5978
|
+
"cover.setPosition": { capName: "cover", capScope: "device", addonId: null, access: "create" },
|
|
5979
|
+
"cover.setTiltPosition": { capName: "cover", capScope: "device", addonId: null, access: "create" },
|
|
5980
|
+
"cover.stop": { capName: "cover", capScope: "device", addonId: null, access: "create" },
|
|
5065
5981
|
"decoder.createSession": { capName: "decoder", capScope: "system", addonId: null, access: "view" },
|
|
5066
5982
|
"decoder.destroySession": { capName: "decoder", capScope: "system", addonId: null, access: "delete" },
|
|
5067
5983
|
"decoder.getFrame": { capName: "decoder", capScope: "system", addonId: null, access: "view" },
|
|
@@ -5076,6 +5992,13 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5076
5992
|
"decoder.reprobeHwaccel": { capName: "decoder", capScope: "system", addonId: null, access: "create" },
|
|
5077
5993
|
"decoder.supportsCodec": { capName: "decoder", capScope: "system", addonId: null, access: "view" },
|
|
5078
5994
|
"decoder.updateConfig": { capName: "decoder", capScope: "system", addonId: null, access: "view" },
|
|
5995
|
+
"deviceAdoption.adopt": { capName: "device-adoption", capScope: "system", addonId: null, access: "create" },
|
|
5996
|
+
"deviceAdoption.getCandidate": { capName: "device-adoption", capScope: "system", addonId: null, access: "view" },
|
|
5997
|
+
"deviceAdoption.listCandidateFilters": { capName: "device-adoption", capScope: "system", addonId: null, access: "view" },
|
|
5998
|
+
"deviceAdoption.listCandidates": { capName: "device-adoption", capScope: "system", addonId: null, access: "view" },
|
|
5999
|
+
"deviceAdoption.refresh": { capName: "device-adoption", capScope: "system", addonId: null, access: "create" },
|
|
6000
|
+
"deviceAdoption.release": { capName: "device-adoption", capScope: "system", addonId: null, access: "create" },
|
|
6001
|
+
"deviceAdoption.resync": { capName: "device-adoption", capScope: "system", addonId: null, access: "create" },
|
|
5079
6002
|
"deviceDiscovery.adoptDevice": { capName: "device-discovery", capScope: "device", addonId: null, access: "create" },
|
|
5080
6003
|
"deviceDiscovery.listDiscovered": { capName: "device-discovery", capScope: "device", addonId: null, access: "view" },
|
|
5081
6004
|
"deviceDiscovery.refreshDiscovery": { capName: "device-discovery", capScope: "device", addonId: null, access: "create" },
|
|
@@ -5087,7 +6010,12 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5087
6010
|
"deviceExport.unexposeDevice": { capName: "device-export", capScope: "system", addonId: null, access: "create" },
|
|
5088
6011
|
"deviceManager.addLocation": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
5089
6012
|
"deviceManager.adoptDevice": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
6013
|
+
"deviceManager.adoptionAdopt": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
6014
|
+
"deviceManager.adoptionListCandidates": { capName: "device-manager", capScope: "system", addonId: null, access: "view" },
|
|
6015
|
+
"deviceManager.adoptionRefresh": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
6016
|
+
"deviceManager.adoptionRelease": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
5090
6017
|
"deviceManager.allocateDeviceId": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
6018
|
+
"deviceManager.applyInitialMeta": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
5091
6019
|
"deviceManager.createDevice": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
5092
6020
|
"deviceManager.disable": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
5093
6021
|
"deviceManager.discoverDevices": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
@@ -5105,6 +6033,7 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5105
6033
|
"deviceManager.getSettingsSchema": { capName: "device-manager", capScope: "system", addonId: null, access: "view" },
|
|
5106
6034
|
"deviceManager.getStreamProfileMap": { capName: "device-manager", capScope: "system", addonId: null, access: "view" },
|
|
5107
6035
|
"deviceManager.getStreamSources": { capName: "device-manager", capScope: "system", addonId: null, access: "view" },
|
|
6036
|
+
"deviceManager.getWireableFields": { capName: "device-manager", capScope: "system", addonId: null, access: "view" },
|
|
5108
6037
|
"deviceManager.listAll": { capName: "device-manager", capScope: "system", addonId: null, access: "view" },
|
|
5109
6038
|
"deviceManager.listBindableCapsForDeviceType": { capName: "device-manager", capScope: "system", addonId: null, access: "view" },
|
|
5110
6039
|
"deviceManager.listLocations": { capName: "device-manager", capScope: "system", addonId: null, access: "view" },
|
|
@@ -5117,13 +6046,22 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5117
6046
|
"deviceManager.probeStreams": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
5118
6047
|
"deviceManager.registerDevice": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
5119
6048
|
"deviceManager.remove": { capName: "device-manager", capScope: "system", addonId: null, access: "delete" },
|
|
6049
|
+
"deviceManager.removeByIntegration": { capName: "device-manager", capScope: "system", addonId: null, access: "delete" },
|
|
5120
6050
|
"deviceManager.removeDevice": { capName: "device-manager", capScope: "system", addonId: null, access: "delete" },
|
|
5121
6051
|
"deviceManager.removeLocation": { capName: "device-manager", capScope: "system", addonId: null, access: "delete" },
|
|
6052
|
+
"deviceManager.runDeviceAction": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
6053
|
+
"deviceManager.setChildLayout": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
6054
|
+
"deviceManager.setDeviceLinks": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
5122
6055
|
"deviceManager.setDisabled": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
6056
|
+
"deviceManager.setIntegrationId": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
6057
|
+
"deviceManager.setLinkDeviceId": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
5123
6058
|
"deviceManager.setLocation": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
5124
6059
|
"deviceManager.setMetadata": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
5125
6060
|
"deviceManager.setName": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
6061
|
+
"deviceManager.setPrimaryChildEntityId": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
6062
|
+
"deviceManager.setRole": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
5126
6063
|
"deviceManager.setStreamProfileMap": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
6064
|
+
"deviceManager.setType": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
5127
6065
|
"deviceManager.setWrapperActive": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
5128
6066
|
"deviceManager.testCreationField": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
5129
6067
|
"deviceManager.testField": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
@@ -5131,9 +6069,11 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5131
6069
|
"deviceManager.updateDeviceField": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
5132
6070
|
"deviceManager.updateDeviceFieldsBatch": { capName: "device-manager", capScope: "system", addonId: null, access: "create" },
|
|
5133
6071
|
"deviceOps.getConfigEntries": { capName: "device-ops", capScope: "device", addonId: null, access: "view" },
|
|
6072
|
+
"deviceOps.getRawState": { capName: "device-ops", capScope: "device", addonId: null, access: "view" },
|
|
5134
6073
|
"deviceOps.getSettingsSchema": { capName: "device-ops", capScope: "device", addonId: null, access: "view" },
|
|
5135
6074
|
"deviceOps.getStreamSources": { capName: "device-ops", capScope: "device", addonId: null, access: "view" },
|
|
5136
6075
|
"deviceOps.removeDevice": { capName: "device-ops", capScope: "device", addonId: null, access: "delete" },
|
|
6076
|
+
"deviceOps.runAction": { capName: "device-ops", capScope: "device", addonId: null, access: "create" },
|
|
5137
6077
|
"deviceOps.setConfig": { capName: "device-ops", capScope: "device", addonId: null, access: "create" },
|
|
5138
6078
|
"deviceProvider.adoptDiscoveredDevice": { capName: "device-provider", capScope: "system", addonId: null, access: "create" },
|
|
5139
6079
|
"deviceProvider.createDevice": { capName: "device-provider", capScope: "system", addonId: null, access: "create" },
|
|
@@ -5156,6 +6096,16 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5156
6096
|
"events.getEventClipUrl": { capName: "events", capScope: "device", addonId: null, access: "view" },
|
|
5157
6097
|
"events.getEvents": { capName: "events", capScope: "device", addonId: null, access: "view" },
|
|
5158
6098
|
"events.getEventThumbnail": { capName: "events", capScope: "device", addonId: null, access: "view" },
|
|
6099
|
+
"fanControl.setDirection": { capName: "fan-control", capScope: "device", addonId: null, access: "create" },
|
|
6100
|
+
"fanControl.setOscillating": { capName: "fan-control", capScope: "device", addonId: null, access: "create" },
|
|
6101
|
+
"fanControl.setPercentage": { capName: "fan-control", capScope: "device", addonId: null, access: "create" },
|
|
6102
|
+
"fanControl.setPreset": { capName: "fan-control", capScope: "device", addonId: null, access: "create" },
|
|
6103
|
+
"filesystemBrowse.browse": { capName: "filesystem-browse", capScope: "system", addonId: null, access: "view" },
|
|
6104
|
+
"filesystemBrowse.createDir": { capName: "filesystem-browse", capScope: "system", addonId: null, access: "create" },
|
|
6105
|
+
"filesystemBrowse.listAllowedRoots": { capName: "filesystem-browse", capScope: "system", addonId: null, access: "view" },
|
|
6106
|
+
"humidifier.setMode": { capName: "humidifier", capScope: "device", addonId: null, access: "create" },
|
|
6107
|
+
"humidifier.setOn": { capName: "humidifier", capScope: "device", addonId: null, access: "create" },
|
|
6108
|
+
"humidifier.setTargetHumidity": { capName: "humidifier", capScope: "device", addonId: null, access: "create" },
|
|
5159
6109
|
"integrations.create": { capName: "integrations", capScope: "system", addonId: null, access: "create" },
|
|
5160
6110
|
"integrations.delete": { capName: "integrations", capScope: "system", addonId: null, access: "delete" },
|
|
5161
6111
|
"integrations.get": { capName: "integrations", capScope: "system", addonId: null, access: "view" },
|
|
@@ -5168,18 +6118,36 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5168
6118
|
"integrations.update": { capName: "integrations", capScope: "system", addonId: null, access: "create" },
|
|
5169
6119
|
"intercom.endTalkSession": { capName: "intercom", capScope: "device", addonId: null, access: "create" },
|
|
5170
6120
|
"intercom.handleAnswer": { capName: "intercom", capScope: "device", addonId: null, access: "create" },
|
|
5171
|
-
"intercom.
|
|
6121
|
+
"intercom.pushTalkAudio": { capName: "intercom", capScope: "device", addonId: null, access: "create" },
|
|
5172
6122
|
"intercom.startSession": { capName: "intercom", capScope: "device", addonId: null, access: "create" },
|
|
5173
6123
|
"intercom.startTalkSession": { capName: "intercom", capScope: "device", addonId: null, access: "create" },
|
|
5174
6124
|
"intercom.stopSession": { capName: "intercom", capScope: "device", addonId: null, access: "create" },
|
|
6125
|
+
"lawnMowerControl.dock": { capName: "lawn-mower-control", capScope: "device", addonId: null, access: "create" },
|
|
6126
|
+
"lawnMowerControl.pause": { capName: "lawn-mower-control", capScope: "device", addonId: null, access: "create" },
|
|
6127
|
+
"lawnMowerControl.startMowing": { capName: "lawn-mower-control", capScope: "device", addonId: null, access: "create" },
|
|
5175
6128
|
"localNetwork.getAllowedAddresses": { capName: "local-network", capScope: "system", addonId: null, access: "view" },
|
|
5176
6129
|
"localNetwork.getConnectionEndpoints": { capName: "local-network", capScope: "system", addonId: null, access: "view" },
|
|
5177
6130
|
"localNetwork.getPreferred": { capName: "local-network", capScope: "system", addonId: null, access: "view" },
|
|
5178
6131
|
"localNetwork.list": { capName: "local-network", capScope: "system", addonId: null, access: "view" },
|
|
5179
6132
|
"localNetwork.resetAllowlistToBestMatch": { capName: "local-network", capScope: "system", addonId: null, access: "delete" },
|
|
5180
6133
|
"localNetwork.setAllowedAddresses": { capName: "local-network", capScope: "system", addonId: null, access: "create" },
|
|
6134
|
+
"lockControl.lock": { capName: "lock-control", capScope: "device", addonId: null, access: "create" },
|
|
6135
|
+
"lockControl.open": { capName: "lock-control", capScope: "device", addonId: null, access: "create" },
|
|
6136
|
+
"lockControl.unlock": { capName: "lock-control", capScope: "device", addonId: null, access: "create" },
|
|
5181
6137
|
"logDestination.query": { capName: "log-destination", capScope: "system", addonId: null, access: "view" },
|
|
5182
6138
|
"logDestination.write": { capName: "log-destination", capScope: "system", addonId: null, access: "create" },
|
|
6139
|
+
"mediaPlayer.next": { capName: "media-player", capScope: "device", addonId: null, access: "create" },
|
|
6140
|
+
"mediaPlayer.pause": { capName: "media-player", capScope: "device", addonId: null, access: "create" },
|
|
6141
|
+
"mediaPlayer.play": { capName: "media-player", capScope: "device", addonId: null, access: "create" },
|
|
6142
|
+
"mediaPlayer.playMedia": { capName: "media-player", capScope: "device", addonId: null, access: "create" },
|
|
6143
|
+
"mediaPlayer.previous": { capName: "media-player", capScope: "device", addonId: null, access: "create" },
|
|
6144
|
+
"mediaPlayer.seek": { capName: "media-player", capScope: "device", addonId: null, access: "create" },
|
|
6145
|
+
"mediaPlayer.selectSource": { capName: "media-player", capScope: "device", addonId: null, access: "create" },
|
|
6146
|
+
"mediaPlayer.setMute": { capName: "media-player", capScope: "device", addonId: null, access: "create" },
|
|
6147
|
+
"mediaPlayer.setRepeat": { capName: "media-player", capScope: "device", addonId: null, access: "create" },
|
|
6148
|
+
"mediaPlayer.setShuffle": { capName: "media-player", capScope: "device", addonId: null, access: "create" },
|
|
6149
|
+
"mediaPlayer.setVolume": { capName: "media-player", capScope: "device", addonId: null, access: "create" },
|
|
6150
|
+
"mediaPlayer.stop": { capName: "media-player", capScope: "device", addonId: null, access: "create" },
|
|
5183
6151
|
"meshNetwork.getStatus": { capName: "mesh-network", capScope: "system", addonId: null, access: "view" },
|
|
5184
6152
|
"meshNetwork.join": { capName: "mesh-network", capScope: "system", addonId: null, access: "create" },
|
|
5185
6153
|
"meshNetwork.leave": { capName: "mesh-network", capScope: "system", addonId: null, access: "create" },
|
|
@@ -5237,17 +6205,21 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5237
6205
|
"nodes.undeployAddon": { capName: "nodes", capScope: "system", addonId: null, access: "create" },
|
|
5238
6206
|
"notificationOutput.send": { capName: "notification-output", capScope: "system", addonId: null, access: "create" },
|
|
5239
6207
|
"notificationOutput.sendTest": { capName: "notification-output", capScope: "system", addonId: null, access: "create" },
|
|
6208
|
+
"notifier.cancel": { capName: "notifier", capScope: "device", addonId: null, access: "create" },
|
|
6209
|
+
"notifier.send": { capName: "notifier", capScope: "device", addonId: null, access: "create" },
|
|
5240
6210
|
"oauthIntegration.getDescriptor": { capName: "oauth-integration", capScope: "system", addonId: null, access: "view" },
|
|
5241
6211
|
"osd.setOverlay": { capName: "osd", capScope: "device", addonId: null, access: "create" },
|
|
5242
6212
|
"pipelineAnalytics.clearTracks": { capName: "pipeline-analytics", capScope: "device", addonId: null, access: "delete" },
|
|
5243
6213
|
"pipelineAnalytics.getActiveTracks": { capName: "pipeline-analytics", capScope: "device", addonId: null, access: "view" },
|
|
5244
6214
|
"pipelineAnalytics.getAudioEvents": { capName: "pipeline-analytics", capScope: "device", addonId: null, access: "view" },
|
|
6215
|
+
"pipelineAnalytics.getEventDensity": { capName: "pipeline-analytics", capScope: "device", addonId: null, access: "view" },
|
|
5245
6216
|
"pipelineAnalytics.getEventMedia": { capName: "pipeline-analytics", capScope: "device", addonId: null, access: "view" },
|
|
5246
6217
|
"pipelineAnalytics.getMotionEvents": { capName: "pipeline-analytics", capScope: "device", addonId: null, access: "view" },
|
|
5247
6218
|
"pipelineAnalytics.getObjectEvents": { capName: "pipeline-analytics", capScope: "device", addonId: null, access: "view" },
|
|
5248
6219
|
"pipelineAnalytics.getTrack": { capName: "pipeline-analytics", capScope: "device", addonId: null, access: "view" },
|
|
5249
6220
|
"pipelineAnalytics.getTrackMedia": { capName: "pipeline-analytics", capScope: "device", addonId: null, access: "view" },
|
|
5250
6221
|
"pipelineAnalytics.listTracks": { capName: "pipeline-analytics", capScope: "device", addonId: null, access: "view" },
|
|
6222
|
+
"pipelineAnalytics.pruneEventsBefore": { capName: "pipeline-analytics", capScope: "device", addonId: null, access: "create" },
|
|
5251
6223
|
"pipelineExecutor.cacheFrameInPool": { capName: "pipeline-executor", capScope: "system", addonId: null, access: "create" },
|
|
5252
6224
|
"pipelineExecutor.deleteModel": { capName: "pipeline-executor", capScope: "system", addonId: null, access: "delete" },
|
|
5253
6225
|
"pipelineExecutor.deleteTemplate": { capName: "pipeline-executor", capScope: "system", addonId: null, access: "delete" },
|
|
@@ -5326,7 +6298,9 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5326
6298
|
"pipelineRunner.reportMotion": { capName: "pipeline-runner", capScope: "system", addonId: null, access: "create" },
|
|
5327
6299
|
"platformProbe.getCapabilities": { capName: "platform-probe", capScope: "system", addonId: null, access: "view" },
|
|
5328
6300
|
"platformProbe.getHardware": { capName: "platform-probe", capScope: "system", addonId: null, access: "view" },
|
|
6301
|
+
"platformProbe.getHardwareDecodeAccels": { capName: "platform-probe", capScope: "system", addonId: null, access: "view" },
|
|
5329
6302
|
"platformProbe.getHardwareEncoders": { capName: "platform-probe", capScope: "system", addonId: null, access: "view" },
|
|
6303
|
+
"platformProbe.refreshHardwareDecodeAccels": { capName: "platform-probe", capScope: "system", addonId: null, access: "create" },
|
|
5330
6304
|
"platformProbe.refreshHardwareEncoders": { capName: "platform-probe", capScope: "system", addonId: null, access: "create" },
|
|
5331
6305
|
"platformProbe.resolveHwAccel": { capName: "platform-probe", capScope: "system", addonId: null, access: "view" },
|
|
5332
6306
|
"platformProbe.resolveInferenceConfig": { capName: "platform-probe", capScope: "system", addonId: null, access: "view" },
|
|
@@ -5348,34 +6322,23 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5348
6322
|
"ptzAutotrack.setEnabled": { capName: "ptz-autotrack", capScope: "device", addonId: null, access: "create" },
|
|
5349
6323
|
"ptzAutotrack.setSettings": { capName: "ptz-autotrack", capScope: "device", addonId: null, access: "create" },
|
|
5350
6324
|
"reboot.reboot": { capName: "reboot", capScope: "device", addonId: null, access: "create" },
|
|
5351
|
-
"recording.
|
|
5352
|
-
"recording.
|
|
5353
|
-
"recording.
|
|
5354
|
-
"
|
|
5355
|
-
"
|
|
5356
|
-
"
|
|
5357
|
-
"
|
|
5358
|
-
"recordingEngine.getAvailability": { capName: "recording-engine", capScope: "system", addonId: null, access: "view" },
|
|
5359
|
-
"recordingEngine.getConfig": { capName: "recording-engine", capScope: "system", addonId: null, access: "view" },
|
|
5360
|
-
"recordingEngine.getMotionStats": { capName: "recording-engine", capScope: "system", addonId: null, access: "view" },
|
|
5361
|
-
"recordingEngine.getPlaylist": { capName: "recording-engine", capScope: "system", addonId: null, access: "view" },
|
|
5362
|
-
"recordingEngine.getPolicy": { capName: "recording-engine", capScope: "system", addonId: null, access: "view" },
|
|
5363
|
-
"recordingEngine.getPolicyStatus": { capName: "recording-engine", capScope: "system", addonId: null, access: "view" },
|
|
5364
|
-
"recordingEngine.getRetentionConfig": { capName: "recording-engine", capScope: "system", addonId: null, access: "view" },
|
|
5365
|
-
"recordingEngine.getSegments": { capName: "recording-engine", capScope: "system", addonId: null, access: "view" },
|
|
5366
|
-
"recordingEngine.getStatus": { capName: "recording-engine", capScope: "system", addonId: null, access: "view" },
|
|
5367
|
-
"recordingEngine.getStorageUsage": { capName: "recording-engine", capScope: "system", addonId: null, access: "view" },
|
|
5368
|
-
"recordingEngine.getThumbnail": { capName: "recording-engine", capScope: "system", addonId: null, access: "view" },
|
|
5369
|
-
"recordingEngine.setPolicy": { capName: "recording-engine", capScope: "system", addonId: null, access: "create" },
|
|
5370
|
-
"recordingEngine.updateConfig": { capName: "recording-engine", capScope: "system", addonId: null, access: "create" },
|
|
5371
|
-
"recordingEngine.updateRetentionConfig": { capName: "recording-engine", capScope: "system", addonId: null, access: "create" },
|
|
6325
|
+
"recording.getAvailability": { capName: "recording", capScope: "system", addonId: null, access: "view" },
|
|
6326
|
+
"recording.getDeviceConfig": { capName: "recording", capScope: "system", addonId: null, access: "view" },
|
|
6327
|
+
"recording.getPlaybackManifest": { capName: "recording", capScope: "system", addonId: null, access: "view" },
|
|
6328
|
+
"recording.getStorageUsage": { capName: "recording", capScope: "system", addonId: null, access: "view" },
|
|
6329
|
+
"recording.pruneFootage": { capName: "recording", capScope: "system", addonId: null, access: "create" },
|
|
6330
|
+
"recording.rescanStorage": { capName: "recording", capScope: "system", addonId: null, access: "create" },
|
|
6331
|
+
"recording.setDeviceConfig": { capName: "recording", capScope: "system", addonId: null, access: "create" },
|
|
5372
6332
|
"restreamer.getExposedResources": { capName: "restreamer", capScope: "system", addonId: null, access: "view" },
|
|
5373
6333
|
"restreamer.registerDevice": { capName: "restreamer", capScope: "system", addonId: null, access: "create" },
|
|
5374
6334
|
"restreamer.unregisterDevice": { capName: "restreamer", capScope: "system", addonId: null, access: "delete" },
|
|
6335
|
+
"scriptRunner.run": { capName: "script-runner", capScope: "device", addonId: null, access: "create" },
|
|
6336
|
+
"scriptRunner.stop": { capName: "script-runner", capScope: "device", addonId: null, access: "create" },
|
|
5375
6337
|
"settingsStore.count": { capName: "settings-store", capScope: "system", addonId: null, access: "view" },
|
|
5376
6338
|
"settingsStore.declareCollection": { capName: "settings-store", capScope: "system", addonId: null, access: "create" },
|
|
5377
6339
|
"settingsStore.delete": { capName: "settings-store", capScope: "system", addonId: null, access: "delete" },
|
|
5378
6340
|
"settingsStore.get": { capName: "settings-store", capScope: "system", addonId: null, access: "view" },
|
|
6341
|
+
"settingsStore.histogram": { capName: "settings-store", capScope: "system", addonId: null, access: "view" },
|
|
5379
6342
|
"settingsStore.insert": { capName: "settings-store", capScope: "system", addonId: null, access: "create" },
|
|
5380
6343
|
"settingsStore.isEmpty": { capName: "settings-store", capScope: "system", addonId: null, access: "view" },
|
|
5381
6344
|
"settingsStore.query": { capName: "settings-store", capScope: "system", addonId: null, access: "view" },
|
|
@@ -5401,6 +6364,7 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5401
6364
|
"storage.getAvailableSpace": { capName: "storage", capScope: "system", addonId: null, access: "view" },
|
|
5402
6365
|
"storage.getDefaultLocation": { capName: "storage", capScope: "system", addonId: null, access: "view" },
|
|
5403
6366
|
"storage.list": { capName: "storage", capScope: "system", addonId: null, access: "view" },
|
|
6367
|
+
"storage.listLocationDeclarations": { capName: "storage", capScope: "system", addonId: null, access: "view" },
|
|
5404
6368
|
"storage.listLocations": { capName: "storage", capScope: "system", addonId: null, access: "view" },
|
|
5405
6369
|
"storage.listProviders": { capName: "storage", capScope: "system", addonId: null, access: "view" },
|
|
5406
6370
|
"storage.read": { capName: "storage", capScope: "system", addonId: null, access: "view" },
|
|
@@ -5411,6 +6375,8 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5411
6375
|
"storage.upsertLocation": { capName: "storage", capScope: "system", addonId: null, access: "create" },
|
|
5412
6376
|
"storage.write": { capName: "storage", capScope: "system", addonId: null, access: "create" },
|
|
5413
6377
|
"storage.writeChunk": { capName: "storage", capScope: "system", addonId: null, access: "create" },
|
|
6378
|
+
"storageEvictable.evict": { capName: "storage-evictable", capScope: "system", addonId: null, access: "create" },
|
|
6379
|
+
"storageEvictable.getEvictableUsage": { capName: "storage-evictable", capScope: "system", addonId: null, access: "view" },
|
|
5414
6380
|
"storageProvider.abortUpload": { capName: "storage-provider", capScope: "system", addonId: null, access: "create" },
|
|
5415
6381
|
"storageProvider.beginDownload": { capName: "storage-provider", capScope: "system", addonId: null, access: "create" },
|
|
5416
6382
|
"storageProvider.beginUpload": { capName: "storage-provider", capScope: "system", addonId: null, access: "create" },
|
|
@@ -5440,6 +6406,7 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5440
6406
|
"streamBroker.listAllCameraStreams": { capName: "stream-broker", capScope: "system", addonId: null, access: "view" },
|
|
5441
6407
|
"streamBroker.listAllProfileSlots": { capName: "stream-broker", capScope: "system", addonId: null, access: "view" },
|
|
5442
6408
|
"streamBroker.listClients": { capName: "stream-broker", capScope: "system", addonId: null, access: "view" },
|
|
6409
|
+
"streamBroker.probeStream": { capName: "stream-broker", capScope: "system", addonId: null, access: "create" },
|
|
5443
6410
|
"streamBroker.publishCameraStream": { capName: "stream-broker", capScope: "system", addonId: null, access: "create" },
|
|
5444
6411
|
"streamBroker.pullAudioChunks": { capName: "stream-broker", capScope: "system", addonId: null, access: "view" },
|
|
5445
6412
|
"streamBroker.pullFrameHandles": { capName: "stream-broker", capScope: "system", addonId: null, access: "view" },
|
|
@@ -5472,6 +6439,7 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5472
6439
|
"system.setRetentionConfig": { capName: "system", capScope: "system", addonId: null, access: "create" },
|
|
5473
6440
|
"toast.onToast": { capName: "toast", capScope: "system", addonId: null, access: "view" },
|
|
5474
6441
|
"turnProvider.getTurnServers": { capName: "turn-provider", capScope: "system", addonId: null, access: "view" },
|
|
6442
|
+
"update.installUpdate": { capName: "update", capScope: "device", addonId: null, access: "create" },
|
|
5475
6443
|
"userManagement.confirmTotp": { capName: "user-management", capScope: "system", addonId: null, access: "create" },
|
|
5476
6444
|
"userManagement.createApiKey": { capName: "user-management", capScope: "system", addonId: null, access: "create" },
|
|
5477
6445
|
"userManagement.createScopedToken": { capName: "user-management", capScope: "system", addonId: null, access: "create" },
|
|
@@ -5504,6 +6472,21 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5504
6472
|
"userPasskeys.finishRegistration": { capName: "user-passkeys", capScope: "system", addonId: null, access: "create" },
|
|
5505
6473
|
"userPasskeys.listPasskeys": { capName: "user-passkeys", capScope: "system", addonId: null, access: "view" },
|
|
5506
6474
|
"userPasskeys.removePasskey": { capName: "user-passkeys", capScope: "system", addonId: null, access: "delete" },
|
|
6475
|
+
"vacuumControl.locate": { capName: "vacuum-control", capScope: "device", addonId: null, access: "create" },
|
|
6476
|
+
"vacuumControl.pause": { capName: "vacuum-control", capScope: "device", addonId: null, access: "create" },
|
|
6477
|
+
"vacuumControl.returnToBase": { capName: "vacuum-control", capScope: "device", addonId: null, access: "create" },
|
|
6478
|
+
"vacuumControl.setFanSpeed": { capName: "vacuum-control", capScope: "device", addonId: null, access: "create" },
|
|
6479
|
+
"vacuumControl.start": { capName: "vacuum-control", capScope: "device", addonId: null, access: "create" },
|
|
6480
|
+
"vacuumControl.stop": { capName: "vacuum-control", capScope: "device", addonId: null, access: "create" },
|
|
6481
|
+
"valve.close": { capName: "valve", capScope: "device", addonId: null, access: "create" },
|
|
6482
|
+
"valve.open": { capName: "valve", capScope: "device", addonId: null, access: "create" },
|
|
6483
|
+
"valve.setPosition": { capName: "valve", capScope: "device", addonId: null, access: "create" },
|
|
6484
|
+
"valve.stop": { capName: "valve", capScope: "device", addonId: null, access: "create" },
|
|
6485
|
+
"videoclips.getClipPlayback": { capName: "videoclips", capScope: "device", addonId: null, access: "view" },
|
|
6486
|
+
"videoclips.listClips": { capName: "videoclips", capScope: "device", addonId: null, access: "view" },
|
|
6487
|
+
"waterHeater.setAway": { capName: "water-heater", capScope: "device", addonId: null, access: "create" },
|
|
6488
|
+
"waterHeater.setOperationMode": { capName: "water-heater", capScope: "device", addonId: null, access: "create" },
|
|
6489
|
+
"waterHeater.setTargetTemp": { capName: "water-heater", capScope: "device", addonId: null, access: "create" },
|
|
5507
6490
|
"webrtc.closeSession": { capName: "webrtc", capScope: "system", addonId: null, access: "create" },
|
|
5508
6491
|
"webrtc.createSession": { capName: "webrtc", capScope: "system", addonId: null, access: "create" },
|
|
5509
6492
|
"webrtc.handleAnswer": { capName: "webrtc", capScope: "system", addonId: null, access: "create" },
|
|
@@ -5516,6 +6499,7 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5516
6499
|
"webrtcSession.closeSession": { capName: "webrtc-session", capScope: "device", addonId: null, access: "create" },
|
|
5517
6500
|
"webrtcSession.createSession": { capName: "webrtc-session", capScope: "device", addonId: null, access: "create" },
|
|
5518
6501
|
"webrtcSession.getIceCandidates": { capName: "webrtc-session", capScope: "device", addonId: null, access: "view" },
|
|
6502
|
+
"webrtcSession.getSessionState": { capName: "webrtc-session", capScope: "device", addonId: null, access: "view" },
|
|
5519
6503
|
"webrtcSession.handleAnswer": { capName: "webrtc-session", capScope: "device", addonId: null, access: "create" },
|
|
5520
6504
|
"webrtcSession.handleOffer": { capName: "webrtc-session", capScope: "device", addonId: null, access: "create" },
|
|
5521
6505
|
"webrtcSession.hasAdaptiveBitrate": { capName: "webrtc-session", capScope: "device", addonId: null, access: "view" },
|
|
@@ -5532,6 +6516,7 @@ const METHOD_ACCESS_MAP = Object.freeze({
|
|
|
5532
6516
|
"zones.updateZone": { capName: "zones", capScope: "device", addonId: null, access: "create" }
|
|
5533
6517
|
});
|
|
5534
6518
|
const KNOWN_CAP_NAMES = [
|
|
6519
|
+
"accessories",
|
|
5535
6520
|
"addon-pages",
|
|
5536
6521
|
"addon-pages-source",
|
|
5537
6522
|
"addon-routes",
|
|
@@ -5541,17 +6526,28 @@ const KNOWN_CAP_NAMES = [
|
|
|
5541
6526
|
"addons",
|
|
5542
6527
|
"admin-ui",
|
|
5543
6528
|
"advanced-notifier",
|
|
6529
|
+
"alarm-panel",
|
|
5544
6530
|
"alerts",
|
|
5545
6531
|
"audio-analysis",
|
|
5546
6532
|
"audio-analyzer",
|
|
5547
6533
|
"audio-codec",
|
|
5548
6534
|
"audio-metrics",
|
|
5549
6535
|
"auth-provider",
|
|
6536
|
+
"automation-control",
|
|
5550
6537
|
"backup",
|
|
6538
|
+
"battery",
|
|
5551
6539
|
"brightness",
|
|
6540
|
+
"broker",
|
|
6541
|
+
"button",
|
|
5552
6542
|
"camera-credentials",
|
|
5553
6543
|
"camera-streams",
|
|
6544
|
+
"climate-control",
|
|
6545
|
+
"color",
|
|
6546
|
+
"consumables",
|
|
6547
|
+
"control",
|
|
6548
|
+
"cover",
|
|
5554
6549
|
"decoder",
|
|
6550
|
+
"device-adoption",
|
|
5555
6551
|
"device-discovery",
|
|
5556
6552
|
"device-export",
|
|
5557
6553
|
"device-manager",
|
|
@@ -5560,10 +6556,16 @@ const KNOWN_CAP_NAMES = [
|
|
|
5560
6556
|
"device-state",
|
|
5561
6557
|
"embedding-encoder",
|
|
5562
6558
|
"events",
|
|
6559
|
+
"fan-control",
|
|
6560
|
+
"filesystem-browse",
|
|
6561
|
+
"humidifier",
|
|
5563
6562
|
"integrations",
|
|
5564
6563
|
"intercom",
|
|
6564
|
+
"lawn-mower-control",
|
|
5565
6565
|
"local-network",
|
|
6566
|
+
"lock-control",
|
|
5566
6567
|
"log-destination",
|
|
6568
|
+
"media-player",
|
|
5567
6569
|
"mesh-network",
|
|
5568
6570
|
"metrics-provider",
|
|
5569
6571
|
"motion",
|
|
@@ -5576,6 +6578,7 @@ const KNOWN_CAP_NAMES = [
|
|
|
5576
6578
|
"network-quality",
|
|
5577
6579
|
"nodes",
|
|
5578
6580
|
"notification-output",
|
|
6581
|
+
"notifier",
|
|
5579
6582
|
"oauth-integration",
|
|
5580
6583
|
"osd",
|
|
5581
6584
|
"pipeline-analytics",
|
|
@@ -5588,14 +6591,15 @@ const KNOWN_CAP_NAMES = [
|
|
|
5588
6591
|
"ptz-autotrack",
|
|
5589
6592
|
"reboot",
|
|
5590
6593
|
"recording",
|
|
5591
|
-
"recording-engine",
|
|
5592
6594
|
"restreamer",
|
|
6595
|
+
"script-runner",
|
|
5593
6596
|
"settings-store",
|
|
5594
6597
|
"smtp-provider",
|
|
5595
6598
|
"snapshot",
|
|
5596
6599
|
"snapshot-provider",
|
|
5597
6600
|
"sso-bridge",
|
|
5598
6601
|
"storage",
|
|
6602
|
+
"storage-evictable",
|
|
5599
6603
|
"storage-provider",
|
|
5600
6604
|
"stream-broker",
|
|
5601
6605
|
"stream-catalog",
|
|
@@ -5605,8 +6609,13 @@ const KNOWN_CAP_NAMES = [
|
|
|
5605
6609
|
"system",
|
|
5606
6610
|
"toast",
|
|
5607
6611
|
"turn-provider",
|
|
6612
|
+
"update",
|
|
5608
6613
|
"user-management",
|
|
5609
6614
|
"user-passkeys",
|
|
6615
|
+
"vacuum-control",
|
|
6616
|
+
"valve",
|
|
6617
|
+
"videoclips",
|
|
6618
|
+
"water-heater",
|
|
5610
6619
|
"webrtc",
|
|
5611
6620
|
"webrtc-session",
|
|
5612
6621
|
"zone-analytics",
|
|
@@ -5614,31 +6623,52 @@ const KNOWN_CAP_NAMES = [
|
|
|
5614
6623
|
"zones"
|
|
5615
6624
|
];
|
|
5616
6625
|
const DEVICE_CAP_NAMES = [
|
|
6626
|
+
"accessories",
|
|
6627
|
+
"alarm-panel",
|
|
5617
6628
|
"audio-analysis",
|
|
5618
6629
|
"audio-metrics",
|
|
6630
|
+
"automation-control",
|
|
6631
|
+
"battery",
|
|
5619
6632
|
"brightness",
|
|
6633
|
+
"button",
|
|
5620
6634
|
"camera-credentials",
|
|
5621
6635
|
"camera-streams",
|
|
6636
|
+
"climate-control",
|
|
6637
|
+
"color",
|
|
6638
|
+
"consumables",
|
|
6639
|
+
"control",
|
|
6640
|
+
"cover",
|
|
5622
6641
|
"device-discovery",
|
|
5623
6642
|
"device-ops",
|
|
5624
6643
|
"events",
|
|
6644
|
+
"fan-control",
|
|
6645
|
+
"humidifier",
|
|
5625
6646
|
"intercom",
|
|
6647
|
+
"lawn-mower-control",
|
|
6648
|
+
"lock-control",
|
|
6649
|
+
"media-player",
|
|
5626
6650
|
"motion",
|
|
5627
6651
|
"motion-detection",
|
|
5628
6652
|
"motion-trigger",
|
|
5629
6653
|
"motion-zones",
|
|
5630
6654
|
"native-object-detection",
|
|
6655
|
+
"notifier",
|
|
5631
6656
|
"osd",
|
|
5632
6657
|
"pipeline-analytics",
|
|
5633
6658
|
"privacy-mask",
|
|
5634
6659
|
"ptz",
|
|
5635
6660
|
"ptz-autotrack",
|
|
5636
6661
|
"reboot",
|
|
5637
|
-
"
|
|
6662
|
+
"script-runner",
|
|
5638
6663
|
"snapshot",
|
|
5639
6664
|
"stream-catalog",
|
|
5640
6665
|
"stream-params",
|
|
5641
6666
|
"switch",
|
|
6667
|
+
"update",
|
|
6668
|
+
"vacuum-control",
|
|
6669
|
+
"valve",
|
|
6670
|
+
"videoclips",
|
|
6671
|
+
"water-heater",
|
|
5642
6672
|
"webrtc-session",
|
|
5643
6673
|
"zone-analytics",
|
|
5644
6674
|
"zone-rules",
|
|
@@ -5659,12 +6689,15 @@ const SYSTEM_CAP_NAMES = [
|
|
|
5659
6689
|
"audio-codec",
|
|
5660
6690
|
"auth-provider",
|
|
5661
6691
|
"backup",
|
|
6692
|
+
"broker",
|
|
5662
6693
|
"decoder",
|
|
6694
|
+
"device-adoption",
|
|
5663
6695
|
"device-export",
|
|
5664
6696
|
"device-manager",
|
|
5665
6697
|
"device-provider",
|
|
5666
6698
|
"device-state",
|
|
5667
6699
|
"embedding-encoder",
|
|
6700
|
+
"filesystem-browse",
|
|
5668
6701
|
"integrations",
|
|
5669
6702
|
"local-network",
|
|
5670
6703
|
"log-destination",
|
|
@@ -5680,13 +6713,14 @@ const SYSTEM_CAP_NAMES = [
|
|
|
5680
6713
|
"pipeline-orchestrator",
|
|
5681
6714
|
"pipeline-runner",
|
|
5682
6715
|
"platform-probe",
|
|
5683
|
-
"recording
|
|
6716
|
+
"recording",
|
|
5684
6717
|
"restreamer",
|
|
5685
6718
|
"settings-store",
|
|
5686
6719
|
"smtp-provider",
|
|
5687
6720
|
"snapshot-provider",
|
|
5688
6721
|
"sso-bridge",
|
|
5689
6722
|
"storage",
|
|
6723
|
+
"storage-evictable",
|
|
5690
6724
|
"storage-provider",
|
|
5691
6725
|
"stream-broker",
|
|
5692
6726
|
"streaming-engine",
|
|
@@ -5734,6 +6768,7 @@ const SCOPE_PRESETS = [
|
|
|
5734
6768
|
}
|
|
5735
6769
|
];
|
|
5736
6770
|
const CAP_PROVIDER_KIND_MAP = Object.freeze({
|
|
6771
|
+
"broker": "broker",
|
|
5737
6772
|
"device-export": "device-export",
|
|
5738
6773
|
"mesh-network": "mesh",
|
|
5739
6774
|
"mqtt-broker": "broker",
|
|
@@ -5741,6 +6776,7 @@ const CAP_PROVIDER_KIND_MAP = Object.freeze({
|
|
|
5741
6776
|
"smtp-provider": "email"
|
|
5742
6777
|
});
|
|
5743
6778
|
const PROVIDER_KIND_CAP_NAMES = [
|
|
6779
|
+
"broker",
|
|
5744
6780
|
"device-export",
|
|
5745
6781
|
"mesh-network",
|
|
5746
6782
|
"mqtt-broker",
|
|
@@ -5754,6 +6790,46 @@ function getCapsByProviderKind(kind) {
|
|
|
5754
6790
|
}
|
|
5755
6791
|
return out;
|
|
5756
6792
|
}
|
|
6793
|
+
function levenshtein(a, b) {
|
|
6794
|
+
const m = a.length;
|
|
6795
|
+
const n = b.length;
|
|
6796
|
+
if (m === 0) return n;
|
|
6797
|
+
if (n === 0) return m;
|
|
6798
|
+
const prevRow = Array.from({ length: n + 1 }, (_, k) => k);
|
|
6799
|
+
const currRow = Array.from({ length: n + 1 }, () => 0);
|
|
6800
|
+
for (let i = 1; i <= m; i++) {
|
|
6801
|
+
currRow[0] = i;
|
|
6802
|
+
let diagVal = prevRow[0] ?? 0;
|
|
6803
|
+
for (let j = 1; j <= n; j++) {
|
|
6804
|
+
const above = prevRow[j] ?? 0;
|
|
6805
|
+
const left = currRow[j - 1] ?? 0;
|
|
6806
|
+
const cost = a.charCodeAt(i - 1) === b.charCodeAt(j - 1) ? 0 : 1;
|
|
6807
|
+
currRow[j] = Math.min(above + 1, left + 1, diagVal + cost);
|
|
6808
|
+
diagVal = above;
|
|
6809
|
+
}
|
|
6810
|
+
for (let j = 0; j <= n; j++) prevRow[j] = currRow[j] ?? 0;
|
|
6811
|
+
}
|
|
6812
|
+
return prevRow[n] ?? 0;
|
|
6813
|
+
}
|
|
6814
|
+
function locationSimilarity(a, b) {
|
|
6815
|
+
const x = a.trim().toLowerCase();
|
|
6816
|
+
const y = b.trim().toLowerCase();
|
|
6817
|
+
if (x === y) return 1;
|
|
6818
|
+
if (x.length === 0 || y.length === 0) return 0;
|
|
6819
|
+
return 1 - levenshtein(x, y) / Math.max(x.length, y.length);
|
|
6820
|
+
}
|
|
6821
|
+
function bestLocationMatch(externalName, existing, threshold = 0.8) {
|
|
6822
|
+
let best = null;
|
|
6823
|
+
let bestScore = 0;
|
|
6824
|
+
for (const name of existing) {
|
|
6825
|
+
const score = locationSimilarity(externalName, name);
|
|
6826
|
+
if (score >= threshold && score > bestScore) {
|
|
6827
|
+
best = name;
|
|
6828
|
+
bestScore = score;
|
|
6829
|
+
}
|
|
6830
|
+
}
|
|
6831
|
+
return best;
|
|
6832
|
+
}
|
|
5757
6833
|
const CREDENTIAL_PARAM_PATTERNS = [
|
|
5758
6834
|
/^user$/i,
|
|
5759
6835
|
/^usr$/i,
|
|
@@ -5907,6 +6983,24 @@ function cellsToRects(cells, gridWidth, gridHeight, maxRegions) {
|
|
|
5907
6983
|
h: (block.rowEnd - block.rowStart + 1) / gridHeight
|
|
5908
6984
|
}));
|
|
5909
6985
|
}
|
|
6986
|
+
function sleep(ms) {
|
|
6987
|
+
return new Promise((resolve) => setTimeout(resolve, Math.max(0, ms)));
|
|
6988
|
+
}
|
|
6989
|
+
function sleepCancellable(ms, signal) {
|
|
6990
|
+
if (signal.aborted) return Promise.resolve();
|
|
6991
|
+
return new Promise((resolve) => {
|
|
6992
|
+
const timer = setTimeout(() => {
|
|
6993
|
+
signal.removeEventListener("abort", onAbort);
|
|
6994
|
+
resolve();
|
|
6995
|
+
}, Math.max(0, ms));
|
|
6996
|
+
const onAbort = () => {
|
|
6997
|
+
clearTimeout(timer);
|
|
6998
|
+
signal.removeEventListener("abort", onAbort);
|
|
6999
|
+
resolve();
|
|
7000
|
+
};
|
|
7001
|
+
signal.addEventListener("abort", onAbort, { once: true });
|
|
7002
|
+
});
|
|
7003
|
+
}
|
|
5910
7004
|
function bindAddonActions(api, addonId, catalog) {
|
|
5911
7005
|
const out = {};
|
|
5912
7006
|
for (const action of Object.keys(catalog)) {
|
|
@@ -5928,11 +7022,24 @@ exports.AddonAutoUpdateSchema = index.AddonAutoUpdateSchema;
|
|
|
5928
7022
|
exports.AddonListItemSchema = index.AddonListItemSchema;
|
|
5929
7023
|
exports.AddonPageDeclarationSchema = index.AddonPageDeclarationSchema;
|
|
5930
7024
|
exports.AddonPageInfoSchema = index.AddonPageInfoSchema;
|
|
7025
|
+
exports.AdoptionAdoptInputSchema = index.AdoptInputSchema;
|
|
7026
|
+
exports.AdoptionAdoptResultSchema = index.AdoptResultSchema;
|
|
7027
|
+
exports.AdoptionFilterSchema = index.AdoptionFilterSchema;
|
|
7028
|
+
exports.AdoptionGetCandidateInputSchema = index.GetCandidateInputSchema;
|
|
7029
|
+
exports.AdoptionListCandidatesInputSchema = index.ListCandidatesInputSchema;
|
|
7030
|
+
exports.AdoptionListCandidatesOutputSchema = index.ListCandidatesOutputSchema;
|
|
7031
|
+
exports.AdoptionReleaseInputSchema = index.ReleaseInputSchema;
|
|
7032
|
+
exports.AdoptionStatusSchema = index.AdoptionStatusSchema;
|
|
5931
7033
|
exports.AgentLoadSummarySchema = index.AgentLoadSummarySchema;
|
|
7034
|
+
exports.AirQualitySensorStatusSchema = index.AirQualitySensorStatusSchema;
|
|
7035
|
+
exports.AlarmArmModeSchema = index.AlarmArmModeSchema;
|
|
7036
|
+
exports.AlarmPanelStatusSchema = index.AlarmPanelStatusSchema;
|
|
7037
|
+
exports.AlarmStateSchema = index.AlarmStateSchema;
|
|
5932
7038
|
exports.AlertSchema = index.AlertSchema;
|
|
5933
7039
|
exports.AlertSeveritySchema = index.AlertSeveritySchema;
|
|
5934
7040
|
exports.AlertSourceSchema = index.AlertSourceSchema;
|
|
5935
7041
|
exports.AlertStatusSchema = index.AlertStatusSchema;
|
|
7042
|
+
exports.AmbientLightSensorStatusSchema = index.AmbientLightSensorStatusSchema;
|
|
5936
7043
|
exports.ApiKeyRecordSchema = index.ApiKeyRecordSchema;
|
|
5937
7044
|
exports.ApiKeySummarySchema = index.ApiKeySummarySchema;
|
|
5938
7045
|
exports.ArchiveEntrySchema = index.ArchiveEntrySchema;
|
|
@@ -5945,6 +7052,7 @@ exports.AudioClassificationLabelSchema = index.AudioClassificationLabelSchema;
|
|
|
5945
7052
|
exports.AudioClassificationResultSchema = index.AudioClassificationResultSchema;
|
|
5946
7053
|
exports.AudioCodecInfoSchema = index.AudioCodecInfoSchema;
|
|
5947
7054
|
exports.AudioDecodeSessionConfigSchema = index.AudioDecodeSessionConfigSchema;
|
|
7055
|
+
exports.AudioEncodeSchema = index.AudioEncodeSchema;
|
|
5948
7056
|
exports.AudioEncodeSessionConfigSchema = index.AudioEncodeSessionConfigSchema;
|
|
5949
7057
|
exports.AudioEncodedChunkSchema = index.AudioEncodedChunkSchema;
|
|
5950
7058
|
exports.AudioEventSchema = index.AudioEventSchema;
|
|
@@ -5955,21 +7063,36 @@ exports.AudioMetricsSnapshotSchema = index.AudioMetricsSnapshotSchema;
|
|
|
5955
7063
|
exports.AudioPcmChunkSchema = index.AudioPcmChunkSchema;
|
|
5956
7064
|
exports.AuthResultSchema = index.AuthResultSchema;
|
|
5957
7065
|
exports.AutoUpdateSettingsSchema = index.AutoUpdateSettingsSchema;
|
|
7066
|
+
exports.AutomationControlStatusSchema = index.AutomationControlStatusSchema;
|
|
5958
7067
|
exports.AvailableIntegrationTypeSchema = index.AvailableIntegrationTypeSchema;
|
|
5959
7068
|
exports.BATTERY_DEVICE_PROFILE = index.BATTERY_DEVICE_PROFILE;
|
|
5960
7069
|
exports.BackupDestinationInfoSchema = index.BackupDestinationInfoSchema;
|
|
5961
7070
|
exports.BackupEntrySchema = index.BackupEntrySchema;
|
|
5962
7071
|
exports.BatteryStatusSchema = index.BatteryStatusSchema;
|
|
7072
|
+
exports.BinaryStatusSchema = index.BinaryStatusSchema;
|
|
5963
7073
|
exports.BoundingBoxSchema = index.BoundingBoxSchema;
|
|
5964
7074
|
exports.BrightnessStatusSchema = index.BrightnessStatusSchema;
|
|
7075
|
+
exports.BrokerAddInputSchema = index.AddInputSchema;
|
|
5965
7076
|
exports.BrokerAudioClientSchema = index.BrokerAudioClientSchema;
|
|
5966
7077
|
exports.BrokerClientsSchema = index.BrokerClientsSchema;
|
|
5967
7078
|
exports.BrokerConnectionDetailsSchema = index.BrokerConnectionDetailsSchema;
|
|
7079
|
+
exports.BrokerConsumerAttributionSchema = index.BrokerConsumerAttributionSchema;
|
|
7080
|
+
exports.BrokerConsumerKindSchema = index.BrokerConsumerKindSchema;
|
|
5968
7081
|
exports.BrokerDecodedClientSchema = index.BrokerDecodedClientSchema;
|
|
7082
|
+
exports.BrokerEncodedClientSchema = index.BrokerEncodedClientSchema;
|
|
7083
|
+
exports.BrokerGetStateInputSchema = index.GetStateInputSchema;
|
|
5969
7084
|
exports.BrokerInfoSchema = index.BrokerInfoSchema;
|
|
7085
|
+
exports.BrokerProviderInfoSchema = index.BrokerProviderInfoSchema;
|
|
7086
|
+
exports.BrokerPublishInputSchema = index.PublishInputSchema;
|
|
7087
|
+
exports.BrokerRegistryStatusSchema = index.RegistryStatusSchema;
|
|
5970
7088
|
exports.BrokerRtspClientSchema = index.BrokerRtspClientSchema;
|
|
5971
7089
|
exports.BrokerStatsSchema = index.BrokerStatsSchema;
|
|
7090
|
+
exports.BrokerStatusEnum = index.BrokerStatusEnum;
|
|
5972
7091
|
exports.BrokerStatusSchema = index.BrokerStatusSchema;
|
|
7092
|
+
exports.BrokerSubscribeInputSchema = index.SubscribeInputSchema;
|
|
7093
|
+
exports.BrokerSubscribeResultSchema = index.SubscribeResultSchema;
|
|
7094
|
+
exports.BrokerTestConnectionResultSchema = index.TestConnectionResultSchema;
|
|
7095
|
+
exports.BrokerUnsubscribeInputSchema = index.UnsubscribeInputSchema;
|
|
5973
7096
|
exports.CAM_PROFILE_ORDER = index.CAM_PROFILE_ORDER;
|
|
5974
7097
|
exports.CamProfileSchema = index.CamProfileSchema;
|
|
5975
7098
|
exports.CamStreamDescriptorSchema = index.CamStreamDescriptorSchema;
|
|
@@ -5980,17 +7103,31 @@ exports.CameraCredentialsStatusSchema = index.CameraCredentialsStatusSchema;
|
|
|
5980
7103
|
exports.CameraMetricsSchema = index.CameraMetricsSchema;
|
|
5981
7104
|
exports.CameraMetricsWithDeviceIdSchema = index.CameraMetricsWithDeviceIdSchema;
|
|
5982
7105
|
exports.CameraStreamSchema = index.CameraStreamSchema;
|
|
7106
|
+
exports.CandidateQueryFilterSchema = index.CandidateQueryFilterSchema;
|
|
5983
7107
|
exports.CapScopeSchema = index.CapScopeSchema;
|
|
5984
7108
|
exports.CapabilityBindingsSchema = index.CapabilityBindingsSchema;
|
|
7109
|
+
exports.CarbonMonoxideStatusSchema = index.CarbonMonoxideStatusSchema;
|
|
5985
7110
|
exports.ChargingStatus = index.ChargingStatus;
|
|
5986
7111
|
exports.ClientNetworkStatsSchema = index.ClientNetworkStatsSchema;
|
|
7112
|
+
exports.ClimateControlStatusSchema = index.ClimateControlStatusSchema;
|
|
7113
|
+
exports.ClipPlaybackSchema = index.ClipPlaybackSchema;
|
|
7114
|
+
exports.ClipSchema = index.ClipSchema;
|
|
5987
7115
|
exports.ClusterAddonNodeDeploymentSchema = index.ClusterAddonNodeDeploymentSchema;
|
|
5988
7116
|
exports.ClusterAddonStatusEntrySchema = index.ClusterAddonStatusEntrySchema;
|
|
5989
7117
|
exports.CollectionColumnSchema = index.CollectionColumnSchema;
|
|
5990
7118
|
exports.CollectionIndexSchema = index.CollectionIndexSchema;
|
|
7119
|
+
exports.ColorStatusSchema = index.ColorStatusSchema;
|
|
5991
7120
|
exports.ConfigEntrySchema = index.ConfigEntrySchema;
|
|
5992
7121
|
exports.ConfigSectionWithValuesSchema = index.ConfigSectionWithValuesSchema;
|
|
5993
7122
|
exports.ConfigTabDeclarationSchema = index.ConfigTabDeclarationSchema;
|
|
7123
|
+
exports.ConnectivityStatusSchema = index.ConnectivityStatusSchema;
|
|
7124
|
+
exports.ConsumableItemSchema = index.ConsumableItemSchema;
|
|
7125
|
+
exports.ConsumablesStatusSchema = index.ConsumablesStatusSchema;
|
|
7126
|
+
exports.ContactStatusSchema = index.ContactStatusSchema;
|
|
7127
|
+
exports.ControlKindSchema = index.ControlKindSchema;
|
|
7128
|
+
exports.ControlStatusSchema = index.ControlStatusSchema;
|
|
7129
|
+
exports.CoverStateSchema = index.CoverStateSchema;
|
|
7130
|
+
exports.CoverStatusSchema = index.CoverStatusSchema;
|
|
5994
7131
|
exports.CreateApiKeyInputSchema = index.CreateApiKeyInputSchema;
|
|
5995
7132
|
exports.CreateApiKeyResultSchema = index.CreateApiKeyResultSchema;
|
|
5996
7133
|
exports.CreateIntegrationInputSchema = index.CreateIntegrationInputSchema;
|
|
@@ -6027,31 +7164,48 @@ exports.DoorbellPressEventSchema = index.DoorbellPressEventSchema;
|
|
|
6027
7164
|
exports.DoorbellStatusSchema = index.DoorbellStatusSchema;
|
|
6028
7165
|
exports.EmbeddingInfoSchema = index.EmbeddingInfoSchema;
|
|
6029
7166
|
exports.EmbeddingResultSchema = index.EmbeddingResultSchema;
|
|
7167
|
+
exports.EncodeProfileSchema = index.EncodeProfileSchema;
|
|
6030
7168
|
exports.EncodedPacketSchema = index.EncodedPacketSchema;
|
|
6031
7169
|
exports.EnrichedWidgetMetadataSchema = index.EnrichedWidgetMetadataSchema;
|
|
7170
|
+
exports.EnumSensorDateTimeFormatSchema = index.EnumSensorDateTimeFormatSchema;
|
|
7171
|
+
exports.EnumSensorStatusSchema = index.EnumSensorStatusSchema;
|
|
7172
|
+
exports.EventEmitterStatusSchema = index.EventEmitterStatusSchema;
|
|
7173
|
+
exports.EventFireSchema = index.EventFireSchema;
|
|
6032
7174
|
exports.EventItemSchema = index.EventItemSchema;
|
|
6033
7175
|
exports.EventKindSchema = index.EventKindSchema;
|
|
6034
7176
|
exports.ExportSetupFieldSchema = index.ExportSetupFieldSchema;
|
|
6035
7177
|
exports.ExportSetupSchema = index.ExportSetupSchema;
|
|
6036
7178
|
exports.ExposedDeviceSchema = index.ExposedDeviceSchema;
|
|
6037
7179
|
exports.ExposedResourceSchema = index.ExposedResourceSchema;
|
|
7180
|
+
exports.FanControlStatusSchema = index.FanControlStatusSchema;
|
|
7181
|
+
exports.FanDirectionSchema = index.FanDirectionSchema;
|
|
6038
7182
|
exports.FeatureManifestSchema = index.FeatureManifestSchema;
|
|
6039
7183
|
exports.FeatureProbeStatusSchema = index.FeatureProbeStatusSchema;
|
|
7184
|
+
exports.FloodStatusSchema = index.FloodStatusSchema;
|
|
6040
7185
|
exports.FrameHandleFormatSchema = index.FrameHandleFormatSchema;
|
|
6041
7186
|
exports.FrameHandleSchema = index.FrameHandleSchema;
|
|
6042
7187
|
exports.FrameInputSchema = index.FrameInputSchema;
|
|
7188
|
+
exports.GasStatusSchema = index.GasStatusSchema;
|
|
6043
7189
|
exports.GetStreamWithCodecInputSchema = index.GetStreamWithCodecInputSchema;
|
|
6044
7190
|
exports.GlobalMetricsSchema = index.GlobalMetricsSchema;
|
|
6045
7191
|
exports.HWACCEL_OPTIONS = index.HWACCEL_OPTIONS;
|
|
6046
7192
|
exports.HealthStatusSchema = index.HealthStatusSchema;
|
|
6047
7193
|
exports.HistoryPointSchema = index.HistoryPointSchema;
|
|
6048
7194
|
exports.HistoryResolutionEnum = index.HistoryResolutionEnum;
|
|
7195
|
+
exports.HumidifierStatusSchema = index.HumidifierStatusSchema;
|
|
7196
|
+
exports.HumiditySensorStatusSchema = index.HumiditySensorStatusSchema;
|
|
7197
|
+
exports.HvacModeSchema = index.HvacModeSchema;
|
|
7198
|
+
exports.ImageStatusSchema = index.ImageStatusSchema;
|
|
6049
7199
|
exports.InstalledPackageSchema = index.InstalledPackageSchema;
|
|
6050
7200
|
exports.IntegrationLiteSchema = index.IntegrationLiteSchema;
|
|
6051
7201
|
exports.IntegrationWithStateSchema = index.IntegrationWithStateSchema;
|
|
6052
7202
|
exports.IntercomAbilitySchema = index.IntercomAbilitySchema;
|
|
6053
7203
|
exports.IntercomStatusSchema = index.IntercomStatusSchema;
|
|
7204
|
+
exports.LawnMowerActivitySchema = index.LawnMowerActivitySchema;
|
|
7205
|
+
exports.LawnMowerControlStatusSchema = index.LawnMowerControlStatusSchema;
|
|
6054
7206
|
exports.LocationStatSchema = index.LocationStatSchema;
|
|
7207
|
+
exports.LockControlStatusSchema = index.LockControlStatusSchema;
|
|
7208
|
+
exports.LockStateSchema = index.LockStateSchema;
|
|
6055
7209
|
exports.LogEntrySchema = index.LogEntrySchema;
|
|
6056
7210
|
exports.LogLevelSchema = index.LogLevelSchema;
|
|
6057
7211
|
exports.LogStreamEntrySchema = index.LogStreamEntrySchema;
|
|
@@ -6066,6 +7220,9 @@ exports.MaskRectShapeSchema = index.MaskRectShapeSchema;
|
|
|
6066
7220
|
exports.MaskShapeKindSchema = index.MaskShapeKindSchema;
|
|
6067
7221
|
exports.MaskShapeSchema = index.MaskShapeSchema;
|
|
6068
7222
|
exports.MediaFileSchema = index.MediaFileSchema;
|
|
7223
|
+
exports.MediaPlayerRepeatSchema = index.MediaPlayerRepeatSchema;
|
|
7224
|
+
exports.MediaPlayerStateSchema = index.MediaPlayerStateSchema;
|
|
7225
|
+
exports.MediaPlayerStatusSchema = index.MediaPlayerStatusSchema;
|
|
6069
7226
|
exports.MeshPeerSchema = index.MeshPeerSchema;
|
|
6070
7227
|
exports.MeshStatusSchema = index.MeshStatusSchema;
|
|
6071
7228
|
exports.MethodAccessSchema = index.MethodAccessSchema;
|
|
@@ -6093,6 +7250,8 @@ exports.NetworkEndpointSchema = index.NetworkEndpointSchema;
|
|
|
6093
7250
|
exports.NotificationHistoryEntrySchema = index.NotificationHistoryEntrySchema;
|
|
6094
7251
|
exports.NotificationRuleSchema = index.NotificationRuleSchema;
|
|
6095
7252
|
exports.NotificationSchema = index.NotificationSchema;
|
|
7253
|
+
exports.NotifierStatusSchema = index.NotifierStatusSchema;
|
|
7254
|
+
exports.NumericSensorStatusSchema = index.NumericSensorStatusSchema;
|
|
6096
7255
|
exports.OauthIntegrationDescriptorSchema = index.OauthIntegrationDescriptorSchema;
|
|
6097
7256
|
exports.ObjectEventSchema = index.ObjectEventSchema;
|
|
6098
7257
|
exports.OrchestratorMetricsSchema = index.OrchestratorMetricsSchema;
|
|
@@ -6108,6 +7267,9 @@ exports.PackageVersionInfoSchema = index.PackageVersionInfoSchema;
|
|
|
6108
7267
|
exports.PasskeySummarySchema = index.PasskeySummarySchema;
|
|
6109
7268
|
exports.PcmSampleFormatSchema = index.PcmSampleFormatSchema;
|
|
6110
7269
|
exports.PerScopeBreakdownSchema = index.PerScopeBreakdownSchema;
|
|
7270
|
+
exports.PickStreamPreferencesSchema = index.PickStreamPreferencesSchema;
|
|
7271
|
+
exports.PickStreamRequirementsSchema = index.PickStreamRequirementsSchema;
|
|
7272
|
+
exports.PickedCamStreamSchema = index.PickedCamStreamSchema;
|
|
6111
7273
|
exports.PipelineAssignmentSchema = index.PipelineAssignmentSchema;
|
|
6112
7274
|
exports.PipelineDefaultStepSchema = index.PipelineDefaultStepSchema;
|
|
6113
7275
|
exports.PipelineEngineChoiceSchema = index.PipelineEngineChoiceSchema;
|
|
@@ -6115,11 +7277,15 @@ exports.PipelineRunResultBridge = index.PipelineRunResultBridge;
|
|
|
6115
7277
|
exports.PipelineStepInputSchema = index.PipelineStepInputSchema;
|
|
6116
7278
|
exports.PlaceholderReasonSchema = index.PlaceholderReasonSchema;
|
|
6117
7279
|
exports.PolygonPointSchema = index.PolygonPointSchema;
|
|
7280
|
+
exports.PowerMeterStatusSchema = index.PowerMeterStatusSchema;
|
|
7281
|
+
exports.PresenceStatusSchema = index.PresenceStatusSchema;
|
|
7282
|
+
exports.PressureSensorStatusSchema = index.PressureSensorStatusSchema;
|
|
6118
7283
|
exports.PrivacyMaskOptionsSchema = index.PrivacyMaskOptionsSchema;
|
|
6119
7284
|
exports.PrivacyMaskPatchSchema = index.PrivacyMaskPatchSchema;
|
|
6120
7285
|
exports.PrivacyMaskRegionSchema = index.PrivacyMaskRegionSchema;
|
|
6121
7286
|
exports.PrivacyMaskShapeSchema = index.PrivacyMaskShapeSchema;
|
|
6122
7287
|
exports.PrivacyMaskStatusSchema = index.PrivacyMaskStatusSchema;
|
|
7288
|
+
exports.ProfileRtspEntrySchema = index.ProfileRtspEntrySchema;
|
|
6123
7289
|
exports.ProfileSlotSchema = index.ProfileSlotSchema;
|
|
6124
7290
|
exports.ProfileSlotStatusSchema = index.ProfileSlotStatusSchema;
|
|
6125
7291
|
exports.ProviderStatusSchema = index.ProviderStatusSchema;
|
|
@@ -6132,6 +7298,25 @@ exports.PtzPositionSchema = index.PtzPositionSchema;
|
|
|
6132
7298
|
exports.PtzPresetSchema = index.PtzPresetSchema;
|
|
6133
7299
|
exports.PtzStatusSchema = index.PtzStatusSchema;
|
|
6134
7300
|
exports.QueryFilterSchema = index.QueryFilterSchema;
|
|
7301
|
+
exports.RawStateResultSchema = index.RawStateResultSchema;
|
|
7302
|
+
exports.RecordingAvailabilitySchema = index.RecordingAvailabilitySchema;
|
|
7303
|
+
exports.RecordingBandModeSchema = index.RecordingBandModeSchema;
|
|
7304
|
+
exports.RecordingBandSchema = index.RecordingBandSchema;
|
|
7305
|
+
exports.RecordingBandTriggersSchema = index.RecordingBandTriggersSchema;
|
|
7306
|
+
exports.RecordingConfigSchema = index.RecordingConfigSchema;
|
|
7307
|
+
exports.RecordingDeviceUsageSchema = index.RecordingDeviceUsageSchema;
|
|
7308
|
+
exports.RecordingLocationUsageSchema = index.RecordingLocationUsageSchema;
|
|
7309
|
+
exports.RecordingManifestSchema = index.RecordingManifestSchema;
|
|
7310
|
+
exports.RecordingModeSchema = index.RecordingModeSchema;
|
|
7311
|
+
exports.RecordingRangeSchema = index.RecordingRangeSchema;
|
|
7312
|
+
exports.RecordingRetentionSchema = index.RecordingRetentionSchema;
|
|
7313
|
+
exports.RecordingRuleSchema = index.RecordingRuleSchema;
|
|
7314
|
+
exports.RecordingScheduleSchema = index.RecordingScheduleSchema;
|
|
7315
|
+
exports.RecordingStatusSchema = index.RecordingStatusSchema;
|
|
7316
|
+
exports.RecordingStorageModeSchema = index.RecordingStorageModeSchema;
|
|
7317
|
+
exports.RecordingStorageUsageSchema = index.RecordingStorageUsageSchema;
|
|
7318
|
+
exports.RecordingTriggersSchema = index.RecordingTriggersSchema;
|
|
7319
|
+
exports.RecordingWeekdaySchema = index.RecordingWeekdaySchema;
|
|
6135
7320
|
exports.RegisteredStreamSchema = index.RegisteredStreamSchema;
|
|
6136
7321
|
exports.ReportMotionInputSchema = index.ReportMotionInputSchema;
|
|
6137
7322
|
exports.RtpSourceSchema = index.RtpSourceSchema;
|
|
@@ -6140,11 +7325,11 @@ exports.RunnerCameraConfigSchema = index.RunnerCameraConfigSchema;
|
|
|
6140
7325
|
exports.RunnerCameraDeviceUIFields = index.RunnerCameraDeviceUIFields;
|
|
6141
7326
|
exports.RunnerLocalLoadSchema = index.RunnerLocalLoadSchema;
|
|
6142
7327
|
exports.RunnerLocalMetricsSchema = index.RunnerLocalMetricsSchema;
|
|
6143
|
-
exports.
|
|
7328
|
+
exports.SOURCE_INFO_METADATA_KEY = index.SOURCE_INFO_METADATA_KEY;
|
|
6144
7329
|
exports.ScopedTokenSchema = index.ScopedTokenSchema;
|
|
6145
7330
|
exports.ScopedTokenSummarySchema = index.ScopedTokenSummarySchema;
|
|
7331
|
+
exports.ScriptRunnerStatusSchema = index.ScriptRunnerStatusSchema;
|
|
6146
7332
|
exports.SearchResultSchema = index.SearchResultSchema;
|
|
6147
|
-
exports.SegmentSchema = index.SegmentSchema;
|
|
6148
7333
|
exports.SendEmailInputSchema = index.SendEmailInputSchema;
|
|
6149
7334
|
exports.SendEmailResultSchema = index.SendEmailResultSchema;
|
|
6150
7335
|
exports.SettingsPatchSchema = index.SettingsPatchSchema;
|
|
@@ -6152,8 +7337,10 @@ exports.SettingsRecordSchema = index.SettingsRecordSchema;
|
|
|
6152
7337
|
exports.SettingsSchemaWithValuesSchema = index.SettingsSchemaWithValuesSchema;
|
|
6153
7338
|
exports.SettingsUpdateResultSchema = index.SettingsUpdateResultSchema;
|
|
6154
7339
|
exports.ShmRingStatsSchema = index.ShmRingStatsSchema;
|
|
7340
|
+
exports.SmokeStatusSchema = index.SmokeStatusSchema;
|
|
6155
7341
|
exports.SmtpStatusSchema = index.SmtpStatusSchema;
|
|
6156
7342
|
exports.SnapshotImageSchema = index.SnapshotImageSchema;
|
|
7343
|
+
exports.SourceInfoSchema = index.SourceInfoSchema;
|
|
6157
7344
|
exports.SpatialDetectionSchema = index.SpatialDetectionSchema;
|
|
6158
7345
|
exports.SsoBridgeClaimsSchema = index.SsoBridgeClaimsSchema;
|
|
6159
7346
|
exports.StartEmbeddedInputSchema = index.StartEmbeddedInputSchema;
|
|
@@ -6164,6 +7351,7 @@ exports.StorageBeginUploadInputSchema = index.BeginUploadInputSchema;
|
|
|
6164
7351
|
exports.StorageBeginUploadResultSchema = index.BeginUploadResultSchema;
|
|
6165
7352
|
exports.StorageEndDownloadInputSchema = index.EndDownloadInputSchema;
|
|
6166
7353
|
exports.StorageFinalizeUploadInputSchema = index.FinalizeUploadInputSchema;
|
|
7354
|
+
exports.StorageLocationDeclarationSchema = index.StorageLocationDeclarationSchema;
|
|
6167
7355
|
exports.StorageLocationRefSchema = index.StorageLocationRefSchema;
|
|
6168
7356
|
exports.StorageLocationSchema = index.StorageLocationSchema;
|
|
6169
7357
|
exports.StorageLocationTypeSchema = index.StorageLocationTypeSchema;
|
|
@@ -6171,6 +7359,7 @@ exports.StorageProviderInfoSchema = index.ProviderInfoSchema;
|
|
|
6171
7359
|
exports.StorageReadChunkInputSchema = index.ReadChunkInputSchema;
|
|
6172
7360
|
exports.StorageTestLocationResultSchema = index.TestLocationResultSchema;
|
|
6173
7361
|
exports.StorageWriteChunkInputSchema = index.WriteChunkInputSchema;
|
|
7362
|
+
exports.StreamCodecSchema = index.StreamCodecSchema;
|
|
6174
7363
|
exports.StreamFormatSchema = index.StreamFormatSchema;
|
|
6175
7364
|
exports.StreamInfoSchema = index.StreamInfoSchema;
|
|
6176
7365
|
exports.StreamNetworkStatsSchema = index.StreamNetworkStatsSchema;
|
|
@@ -6188,7 +7377,10 @@ exports.SubscribeFramesInputSchema = index.SubscribeFramesInputSchema;
|
|
|
6188
7377
|
exports.SubscribeFramesResultSchema = index.SubscribeFramesResultSchema;
|
|
6189
7378
|
exports.SwitchStatusSchema = index.SwitchStatusSchema;
|
|
6190
7379
|
exports.SystemMetricsSchema = index.SystemMetricsSchema;
|
|
6191
|
-
exports.
|
|
7380
|
+
exports.TamperStatusSchema = index.TamperStatusSchema;
|
|
7381
|
+
exports.TankStatusSchema = index.TankStatusSchema;
|
|
7382
|
+
exports.TemperatureSensorStatusSchema = index.TemperatureSensorStatusSchema;
|
|
7383
|
+
exports.TestConnectionResultSchema = index.TestConnectionResultSchema$1;
|
|
6192
7384
|
exports.ToastSchema = index.ToastSchema;
|
|
6193
7385
|
exports.TokenScopeSchema = index.TokenScopeSchema;
|
|
6194
7386
|
exports.TopologyNodeSchema = index.TopologyNodeSchema;
|
|
@@ -6198,12 +7390,22 @@ exports.TrackSchema = index.TrackSchema;
|
|
|
6198
7390
|
exports.TrackStateSchema = index.TrackStateSchema;
|
|
6199
7391
|
exports.TrackedDetectionSchema = index.TrackedDetectionSchema;
|
|
6200
7392
|
exports.TurnServerSchema = index.TurnServerSchema;
|
|
7393
|
+
exports.UnifiedBrokerInfoSchema = index.BrokerInfoSchema$1;
|
|
6201
7394
|
exports.UpdateIntegrationInputSchema = index.UpdateIntegrationInputSchema;
|
|
7395
|
+
exports.UpdateStatusSchema = index.UpdateStatusSchema;
|
|
6202
7396
|
exports.UpdateUserInputSchema = index.UpdateUserInputSchema;
|
|
6203
7397
|
exports.UserRecordSchema = index.UserRecordSchema;
|
|
6204
7398
|
exports.UserSummarySchema = index.UserSummarySchema;
|
|
7399
|
+
exports.VacuumControlStatusSchema = index.VacuumControlStatusSchema;
|
|
7400
|
+
exports.VacuumStateSchema = index.VacuumStateSchema;
|
|
7401
|
+
exports.ValveStateSchema = index.ValveStateSchema;
|
|
7402
|
+
exports.ValveStatusSchema = index.ValveStatusSchema;
|
|
7403
|
+
exports.VibrationStatusSchema = index.VibrationStatusSchema;
|
|
7404
|
+
exports.VideoEncodeSchema = index.VideoEncodeSchema;
|
|
6205
7405
|
exports.WELL_KNOWN_TABS = index.WELL_KNOWN_TABS;
|
|
6206
7406
|
exports.WELL_KNOWN_TAB_MAP = index.WELL_KNOWN_TAB_MAP;
|
|
7407
|
+
exports.WaterHeaterStatusSchema = index.WaterHeaterStatusSchema;
|
|
7408
|
+
exports.WeatherStatusSchema = index.WeatherStatusSchema;
|
|
6207
7409
|
exports.WebrtcStreamChoiceSchema = index.WebrtcStreamChoiceSchema;
|
|
6208
7410
|
exports.WebrtcStreamTargetSchema = index.WebrtcStreamTargetSchema;
|
|
6209
7411
|
exports.WidgetHostEnum = index.WidgetHostEnum;
|
|
@@ -6229,20 +7431,36 @@ exports.addonWidgetsSourceCapability = index.addonWidgetsSourceCapability;
|
|
|
6229
7431
|
exports.addonsCapability = index.addonsCapability;
|
|
6230
7432
|
exports.adminUiCapability = index.adminUiCapability;
|
|
6231
7433
|
exports.advancedNotifierCapability = index.advancedNotifierCapability;
|
|
7434
|
+
exports.airQualitySensorCapability = index.airQualitySensorCapability;
|
|
7435
|
+
exports.alarmPanelCapability = index.alarmPanelCapability;
|
|
6232
7436
|
exports.alertsCapability = index.alertsCapability;
|
|
7437
|
+
exports.ambientLightSensorCapability = index.ambientLightSensorCapability;
|
|
6233
7438
|
exports.audioAnalysisCapability = index.audioAnalysisCapability;
|
|
6234
7439
|
exports.audioAnalyzerCapability = index.audioAnalyzerCapability;
|
|
6235
7440
|
exports.audioCodecCapability = index.audioCodecCapability;
|
|
6236
7441
|
exports.audioMetricsCapability = index.audioMetricsCapability;
|
|
6237
7442
|
exports.authProviderCapability = index.authProviderCapability;
|
|
7443
|
+
exports.automationControlCapability = index.automationControlCapability;
|
|
6238
7444
|
exports.backupCapability = index.backupCapability;
|
|
6239
7445
|
exports.batteryCapability = index.batteryCapability;
|
|
7446
|
+
exports.binaryCapability = index.binaryCapability;
|
|
6240
7447
|
exports.brightnessCapability = index.brightnessCapability;
|
|
7448
|
+
exports.brokerCapability = index.brokerCapability;
|
|
7449
|
+
exports.buttonCapability = index.buttonCapability;
|
|
6241
7450
|
exports.cameraCredentialsCapability = index.cameraCredentialsCapability;
|
|
6242
7451
|
exports.cameraPipelineConfigCapability = index.cameraPipelineConfigCapability;
|
|
6243
7452
|
exports.cameraStreamsCapability = index.cameraStreamsCapability;
|
|
7453
|
+
exports.carbonMonoxideCapability = index.carbonMonoxideCapability;
|
|
7454
|
+
exports.climateControlCapability = index.climateControlCapability;
|
|
7455
|
+
exports.colorCapability = index.colorCapability;
|
|
7456
|
+
exports.connectivityCapability = index.connectivityCapability;
|
|
7457
|
+
exports.consumablesCapability = index.consumablesCapability;
|
|
7458
|
+
exports.contactCapability = index.contactCapability;
|
|
7459
|
+
exports.controlCapability = index.controlCapability;
|
|
7460
|
+
exports.coverCapability = index.coverCapability;
|
|
6244
7461
|
exports.decoderCapability = index.decoderCapability;
|
|
6245
7462
|
exports.detectionPipelineCapability = index.detectionPipelineCapability;
|
|
7463
|
+
exports.deviceAdoptionCapability = index.deviceAdoptionCapability;
|
|
6246
7464
|
exports.deviceDiscoveryCapability = index.deviceDiscoveryCapability;
|
|
6247
7465
|
exports.deviceExportCapability = index.deviceExportCapability;
|
|
6248
7466
|
exports.deviceManagerCapability = index.deviceManagerCapability;
|
|
@@ -6253,19 +7471,36 @@ exports.deviceStateCapability = index.deviceStateCapability;
|
|
|
6253
7471
|
exports.deviceStatusCapability = index.deviceStatusCapability;
|
|
6254
7472
|
exports.doorbellCapability = index.doorbellCapability;
|
|
6255
7473
|
exports.embeddingEncoderCapability = index.embeddingEncoderCapability;
|
|
7474
|
+
exports.encodeProfileFromStreamShape = index.encodeProfileFromStreamShape;
|
|
7475
|
+
exports.enumSensorCapability = index.enumSensorCapability;
|
|
6256
7476
|
exports.errMsg = index.errMsg;
|
|
6257
7477
|
exports.event = index.event;
|
|
7478
|
+
exports.eventEmitterCapability = index.eventEmitterCapability;
|
|
6258
7479
|
exports.eventsCapability = index.eventsCapability;
|
|
6259
7480
|
exports.expandCapMethods = index.expandCapMethods;
|
|
7481
|
+
exports.extractSourceInfoFromMetadata = index.extractSourceInfoFromMetadata;
|
|
7482
|
+
exports.fanControlCapability = index.fanControlCapability;
|
|
6260
7483
|
exports.featureProbeCapability = index.featureProbeCapability;
|
|
7484
|
+
exports.filesystemBrowseCapability = index.filesystemBrowseCapability;
|
|
7485
|
+
exports.floodCapability = index.floodCapability;
|
|
7486
|
+
exports.gasCapability = index.gasCapability;
|
|
6261
7487
|
exports.getAudioMacroClassIds = index.getAudioMacroClassIds;
|
|
7488
|
+
exports.humidifierCapability = index.humidifierCapability;
|
|
7489
|
+
exports.humiditySensorCapability = index.humiditySensorCapability;
|
|
6262
7490
|
exports.hydrateSchema = index.hydrateSchema;
|
|
7491
|
+
exports.imageCapability = index.imageCapability;
|
|
6263
7492
|
exports.integrationsCapability = index.integrationsCapability;
|
|
6264
7493
|
exports.intercomCapability = index.intercomCapability;
|
|
6265
7494
|
exports.isDeviceConfigCap = index.isDeviceConfigCap;
|
|
7495
|
+
exports.lawnMowerControlCapability = index.lawnMowerControlCapability;
|
|
6266
7496
|
exports.localNetworkCapability = index.localNetworkCapability;
|
|
7497
|
+
exports.lockControlCapability = index.lockControlCapability;
|
|
6267
7498
|
exports.logDestinationCapability = index.logDestinationCapability;
|
|
7499
|
+
exports.makeProfileBrokerId = index.makeProfileBrokerId;
|
|
7500
|
+
exports.makeSourceBrokerId = index.makeSourceBrokerId;
|
|
6268
7501
|
exports.mapAudioLabelToMacro = index.mapAudioLabelToMacro;
|
|
7502
|
+
exports.mediaPlayerCapability = index.mediaPlayerCapability;
|
|
7503
|
+
exports.mergeSourceInfo = index.mergeSourceInfo;
|
|
6269
7504
|
exports.meshNetworkCapability = index.meshNetworkCapability;
|
|
6270
7505
|
exports.method = index.method;
|
|
6271
7506
|
exports.metricsProviderCapability = index.metricsProviderCapability;
|
|
@@ -6278,39 +7513,59 @@ exports.nativeObjectDetectionCapability = index.nativeObjectDetectionCapability;
|
|
|
6278
7513
|
exports.networkAccessCapability = index.networkAccessCapability;
|
|
6279
7514
|
exports.networkQualityCapability = index.networkQualityCapability;
|
|
6280
7515
|
exports.nodesCapability = index.nodesCapability;
|
|
7516
|
+
exports.normalizeUnit = index.normalizeUnit;
|
|
6281
7517
|
exports.notificationOutputCapability = index.notificationOutputCapability;
|
|
7518
|
+
exports.notifierCapability = index.notifierCapability;
|
|
7519
|
+
exports.numericSensorCapability = index.numericSensorCapability;
|
|
6282
7520
|
exports.oauthIntegrationCapability = index.oauthIntegrationCapability;
|
|
6283
7521
|
exports.osdCapability = index.osdCapability;
|
|
7522
|
+
exports.parseProfileBrokerId = index.parseProfileBrokerId;
|
|
6284
7523
|
exports.pipelineAnalyticsCapability = index.pipelineAnalyticsCapability;
|
|
6285
7524
|
exports.pipelineExecutorCapability = index.pipelineExecutorCapability;
|
|
6286
7525
|
exports.pipelineOrchestratorCapability = index.pipelineOrchestratorCapability;
|
|
6287
7526
|
exports.pipelineRunnerCapability = index.pipelineRunnerCapability;
|
|
6288
7527
|
exports.platformProbeCapability = index.platformProbeCapability;
|
|
7528
|
+
exports.powerMeterCapability = index.powerMeterCapability;
|
|
7529
|
+
exports.presenceCapability = index.presenceCapability;
|
|
7530
|
+
exports.pressureSensorCapability = index.pressureSensorCapability;
|
|
6289
7531
|
exports.privacyMaskCapability = index.privacyMaskCapability;
|
|
6290
7532
|
exports.ptzAutotrackCapability = index.ptzAutotrackCapability;
|
|
6291
7533
|
exports.ptzCapability = index.ptzCapability;
|
|
6292
7534
|
exports.rebootCapability = index.rebootCapability;
|
|
6293
7535
|
exports.recordingCapability = index.recordingCapability;
|
|
6294
|
-
exports.recordingEngineCapability = index.recordingEngineCapability;
|
|
6295
7536
|
exports.resolveDeviceProfile = index.resolveDeviceProfile;
|
|
6296
7537
|
exports.restreamerCapability = index.restreamerCapability;
|
|
7538
|
+
exports.scriptRunnerCapability = index.scriptRunnerCapability;
|
|
7539
|
+
exports.selectAssignedProfileSlots = index.selectAssignedProfileSlots;
|
|
6297
7540
|
exports.settingsStoreCapability = index.settingsStoreCapability;
|
|
7541
|
+
exports.smokeCapability = index.smokeCapability;
|
|
6298
7542
|
exports.smtpProviderCapability = index.smtpProviderCapability;
|
|
6299
7543
|
exports.snapshotCapability = index.snapshotCapability;
|
|
6300
7544
|
exports.snapshotProviderCapability = index.snapshotProviderCapability;
|
|
6301
7545
|
exports.ssoBridgeCapability = index.ssoBridgeCapability;
|
|
6302
7546
|
exports.storageCapability = index.storageCapability;
|
|
7547
|
+
exports.storageEvictableCapability = index.storageEvictableCapability;
|
|
6303
7548
|
exports.storageProviderCapability = index.storageProviderCapability;
|
|
6304
7549
|
exports.streamBrokerCapability = index.streamBrokerCapability;
|
|
6305
7550
|
exports.streamCatalogCapability = index.streamCatalogCapability;
|
|
6306
7551
|
exports.streamParamsCapability = index.streamParamsCapability;
|
|
6307
7552
|
exports.streamingEngineCapability = index.streamingEngineCapability;
|
|
6308
7553
|
exports.switchCapability = index.switchCapability;
|
|
7554
|
+
exports.synthesizeSourceInfo = index.synthesizeSourceInfo;
|
|
6309
7555
|
exports.systemCapability = index.systemCapability;
|
|
7556
|
+
exports.tamperCapability = index.tamperCapability;
|
|
7557
|
+
exports.temperatureSensorCapability = index.temperatureSensorCapability;
|
|
6310
7558
|
exports.toastCapability = index.toastCapability;
|
|
6311
7559
|
exports.turnProviderCapability = index.turnProviderCapability;
|
|
7560
|
+
exports.updateCapability = index.updateCapability;
|
|
6312
7561
|
exports.userManagementCapability = index.userManagementCapability;
|
|
6313
7562
|
exports.userPasskeysCapability = index.userPasskeysCapability;
|
|
7563
|
+
exports.vacuumControlCapability = index.vacuumControlCapability;
|
|
7564
|
+
exports.valveCapability = index.valveCapability;
|
|
7565
|
+
exports.vibrationCapability = index.vibrationCapability;
|
|
7566
|
+
exports.videoclipsCapability = index.videoclipsCapability;
|
|
7567
|
+
exports.waterHeaterCapability = index.waterHeaterCapability;
|
|
7568
|
+
exports.weatherCapability = index.weatherCapability;
|
|
6314
7569
|
exports.webrtcCapability = index.webrtcCapability;
|
|
6315
7570
|
exports.webrtcClientHintsSchema = index.webrtcClientHintsSchema;
|
|
6316
7571
|
exports.webrtcSessionCapability = index.webrtcSessionCapability;
|
|
@@ -6333,9 +7588,9 @@ exports.CAP_NAMES_WITH_STATUS = CAP_NAMES_WITH_STATUS;
|
|
|
6333
7588
|
exports.CAP_PROVIDER_KIND_MAP = CAP_PROVIDER_KIND_MAP;
|
|
6334
7589
|
exports.COCO_80_LABELS = COCO_80_LABELS;
|
|
6335
7590
|
exports.COCO_TO_MACRO = COCO_TO_MACRO;
|
|
7591
|
+
exports.DATAPLANE_SECRET_HEADER = DATAPLANE_SECRET_HEADER;
|
|
6336
7592
|
exports.DEFAULT_ADDON_PLACEMENT = DEFAULT_ADDON_PLACEMENT;
|
|
6337
7593
|
exports.DEFAULT_FEATURES = DEFAULT_FEATURES;
|
|
6338
|
-
exports.DEFAULT_LOCATION_SUBDIRS = DEFAULT_LOCATION_SUBDIRS;
|
|
6339
7594
|
exports.DEFAULT_RETENTION = DEFAULT_RETENTION;
|
|
6340
7595
|
exports.DEVICE_CAP_NAMES = DEVICE_CAP_NAMES;
|
|
6341
7596
|
exports.DEVICE_TYPE_INFO = DEVICE_TYPE_INFO;
|
|
@@ -6359,18 +7614,20 @@ exports.ReadinessRegistry = ReadinessRegistry;
|
|
|
6359
7614
|
exports.ReadinessTimeoutError = ReadinessTimeoutError;
|
|
6360
7615
|
exports.RingBuffer = RingBuffer;
|
|
6361
7616
|
exports.SCOPE_PRESETS = SCOPE_PRESETS;
|
|
6362
|
-
exports.STORAGE_LOCATION_TYPES = STORAGE_LOCATION_TYPES;
|
|
6363
7617
|
exports.STREAM_PROFILE_META = STREAM_PROFILE_META;
|
|
6364
7618
|
exports.STREAM_QUALITY_LABELS = STREAM_QUALITY_LABELS;
|
|
6365
7619
|
exports.SUB_DETECTION_TYPES = SUB_DETECTION_TYPES;
|
|
6366
7620
|
exports.SYSTEM_CAP_NAMES = SYSTEM_CAP_NAMES;
|
|
6367
7621
|
exports.SystemMirror = SystemMirror;
|
|
7622
|
+
exports.TIMEZONES = TIMEZONES;
|
|
7623
|
+
exports.applyTransform = applyTransform;
|
|
6368
7624
|
exports.asBoolean = asBoolean;
|
|
6369
7625
|
exports.asJsonArray = asJsonArray;
|
|
6370
7626
|
exports.asJsonObject = asJsonObject;
|
|
6371
7627
|
exports.asNumber = asNumber;
|
|
6372
7628
|
exports.asString = asString;
|
|
6373
7629
|
exports.autoAssignProfiles = autoAssignProfiles;
|
|
7630
|
+
exports.bestLocationMatch = bestLocationMatch;
|
|
6374
7631
|
exports.bindAddonActions = bindAddonActions;
|
|
6375
7632
|
exports.buildAddonRouteProvider = buildAddonRouteProvider;
|
|
6376
7633
|
exports.buildStreamParamsConfigSchema = buildStreamParamsConfigSchema;
|
|
@@ -6379,6 +7636,7 @@ exports.classifyStream = classifyStream;
|
|
|
6379
7636
|
exports.classifyStreams = classifyStreams;
|
|
6380
7637
|
exports.cosineSimilarity = cosineSimilarity;
|
|
6381
7638
|
exports.createDeviceProxy = createDeviceProxy;
|
|
7639
|
+
exports.createDurableState = createDurableState;
|
|
6382
7640
|
exports.createEvent = createEvent;
|
|
6383
7641
|
exports.createLazyTrpcSource = createLazyTrpcSource;
|
|
6384
7642
|
exports.createMirrorSource = createMirrorSource;
|
|
@@ -6387,23 +7645,30 @@ exports.createSliceHandle = createSliceHandle;
|
|
|
6387
7645
|
exports.createSystemProxy = createSystemProxy;
|
|
6388
7646
|
exports.customAction = customAction;
|
|
6389
7647
|
exports.defineCustomActions = defineCustomActions;
|
|
7648
|
+
exports.deviceCustomAction = deviceCustomAction;
|
|
6390
7649
|
exports.emitDownForOwnedCaps = emitDownForOwnedCaps;
|
|
6391
7650
|
exports.emitReadiness = emitReadiness;
|
|
7651
|
+
exports.enumerateSchemaFields = enumerateSchemaFields;
|
|
6392
7652
|
exports.evaluateZoneRules = evaluateZoneRules;
|
|
7653
|
+
exports.findTimezone = findTimezone;
|
|
6393
7654
|
exports.formatForBackend = formatForBackend;
|
|
6394
7655
|
exports.formatForRuntime = formatForRuntime;
|
|
7656
|
+
exports.getByPath = getByPath;
|
|
6395
7657
|
exports.getCapsByProviderKind = getCapsByProviderKind;
|
|
6396
7658
|
exports.hfModelUrl = hfModelUrl;
|
|
6397
7659
|
exports.isAgentOnlyPlacement = isAgentOnlyPlacement;
|
|
6398
7660
|
exports.isDeployableToAgent = isDeployableToAgent;
|
|
6399
7661
|
exports.isEvent = isEvent;
|
|
7662
|
+
exports.locationSimilarity = locationSimilarity;
|
|
6400
7663
|
exports.maskUrlCredentials = maskUrlCredentials;
|
|
7664
|
+
exports.migrateConfigToBands = migrateConfigToBands;
|
|
6401
7665
|
exports.normalizeAddonInitResult = normalizeAddonInitResult;
|
|
6402
7666
|
exports.parseCameraStreamConfig = parseCameraStreamConfig;
|
|
6403
7667
|
exports.parseJsonArray = parseJsonArray;
|
|
6404
7668
|
exports.parseJsonObject = parseJsonObject;
|
|
6405
7669
|
exports.parseJsonUnknown = parseJsonUnknown;
|
|
6406
7670
|
exports.parseStreamParamsFormPatch = parseStreamParamsFormPatch;
|
|
7671
|
+
exports.pickPreferredRtspEntry = pickPreferredRtspEntry;
|
|
6407
7672
|
exports.pythonScriptForBackend = pythonScriptForBackend;
|
|
6408
7673
|
exports.readinessKey = readinessKey;
|
|
6409
7674
|
exports.rectsToCells = rectsToCells;
|
|
@@ -6417,6 +7682,9 @@ exports.resolveModelFormat = resolveModelFormat;
|
|
|
6417
7682
|
exports.resolveRunnerId = resolveRunnerId;
|
|
6418
7683
|
exports.runInferenceStep = runInferenceStep;
|
|
6419
7684
|
exports.scopeKey = scopeKey;
|
|
7685
|
+
exports.setByPath = setByPath;
|
|
7686
|
+
exports.sleep = sleep;
|
|
7687
|
+
exports.sleepCancellable = sleepCancellable;
|
|
6420
7688
|
exports.streamPixels = streamPixels;
|
|
6421
7689
|
exports.streamQualityLabel = streamQualityLabel;
|
|
6422
7690
|
exports.toDeviceSummary = toDeviceSummary;
|