@camstack/addon-provider-homeassistant 1.2.27 → 1.2.29

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.
@@ -2996,6 +2996,9 @@ function handlePipeResult(left, next, ctx) {
2996
2996
  fallback: left.fallback
2997
2997
  }, ctx);
2998
2998
  }
2999
+ var $ZodPreprocess = /*@__PURE__*/ $constructor("$ZodPreprocess", (inst, def) => {
3000
+ $ZodPipe.init(inst, def);
3001
+ });
2999
3002
  var $ZodReadonly = /*@__PURE__*/ $constructor("$ZodReadonly", (inst, def) => {
3000
3003
  $ZodType.init(inst, def);
3001
3004
  defineLazy(inst._zod, "propValues", () => def.innerType._zod.propValues);
@@ -5181,6 +5184,10 @@ function pipe(in_, out) {
5181
5184
  out
5182
5185
  });
5183
5186
  }
5187
+ var ZodPreprocess = /*@__PURE__*/ $constructor("ZodPreprocess", (inst, def) => {
5188
+ ZodPipe.init(inst, def);
5189
+ $ZodPreprocess.init(inst, def);
5190
+ });
5184
5191
  var ZodReadonly = /*@__PURE__*/ $constructor("ZodReadonly", (inst, def) => {
5185
5192
  $ZodReadonly.init(inst, def);
5186
5193
  ZodType.init(inst, def);
@@ -5239,6 +5246,13 @@ function _instanceof(cls, params = {}) {
5239
5246
  };
5240
5247
  return inst;
5241
5248
  }
5249
+ function preprocess(fn, schema) {
5250
+ return new ZodPreprocess({
5251
+ type: "pipe",
5252
+ in: transform(fn),
5253
+ out: schema
5254
+ });
5255
+ }
5242
5256
  //#endregion
5243
5257
  //#region ../../node_modules/zod/v4/classic/compat.js
5244
5258
  /** @deprecated Use the raw string literal codes instead, e.g. "invalid_type". */
@@ -13474,11 +13488,33 @@ var NotificationFormatSchema = _enum([
13474
13488
  * Named by INTENT, never by glyph. "check" would tie the vocabulary to one
13475
13489
  * renderer's icon set; "acknowledge" survives an adapter that draws it
13476
13490
  * differently.
13491
+ *
13492
+ * ── A TOKEN IS NOT A WIRE VALUE ─────────────────────────────────────
13493
+ *
13494
+ * These names are for US. **No adapter may forward one verbatim.** Each maps
13495
+ * the whole set onto its own renderer's vocabulary through a
13496
+ * `Record<NotificationActionIcon, string>` — a Record, never a lookup with a
13497
+ * fallback, so adding a member here fails every adapter's build until someone
13498
+ * decides its glyph, which is the only place that decision can be made
13499
+ * honestly.
13500
+ *
13501
+ * This paragraph is the bug. Zentik declared `actionIcons: true` and passed
13502
+ * `disarm` straight through; iOS feeds that string to
13503
+ * `UNNotificationActionIcon(systemImageName:)`, `disarm` is not an SF Symbol,
13504
+ * and every snooze and alarm button arrived BLANK. A pass-through is not a
13505
+ * mapping, and "the field is documented" is not "the value renders".
13506
+ *
13507
+ * Adding a member is TRAIN-BOUND. The enum lives in the published
13508
+ * `@camstack/server` closure and the cap seam validates against the HUB's copy,
13509
+ * so an addon that emits a token the running hub does not know does not lose an
13510
+ * icon — its whole `send` fails Zod validation and the notification never
13511
+ * arrives. Never emit a new token from an addon before the train carrying it.
13477
13512
  */
13478
13513
  var NotificationActionIconSchema = _enum([
13479
13514
  "acknowledge",
13480
13515
  "dismiss",
13481
13516
  "silence",
13517
+ "snooze",
13482
13518
  "view",
13483
13519
  "play",
13484
13520
  "open",
@@ -13486,9 +13522,13 @@ var NotificationActionIconSchema = _enum([
13486
13522
  "lock",
13487
13523
  "unlock",
13488
13524
  "arm",
13525
+ "arm-home",
13526
+ "arm-away",
13527
+ "arm-night",
13489
13528
  "disarm",
13490
13529
  "light",
13491
- "alert"
13530
+ "alert",
13531
+ "camera"
13492
13532
  ]);
13493
13533
  /** A single tap-through action button. */
13494
13534
  var NotificationActionSchema = object({
@@ -13702,6 +13742,24 @@ var notificationOutputCapability = {
13702
13742
  }), _void(), { kind: "mutation" })
13703
13743
  }
13704
13744
  };
13745
+ new Set([
13746
+ {
13747
+ id: "person",
13748
+ name: "Person"
13749
+ },
13750
+ {
13751
+ id: "vehicle",
13752
+ name: "Vehicle"
13753
+ },
13754
+ {
13755
+ id: "animal",
13756
+ name: "Animal"
13757
+ },
13758
+ {
13759
+ id: "package",
13760
+ name: "Package"
13761
+ }
13762
+ ].map((l) => l.id));
13705
13763
  var COCO_TO_MACRO = {
13706
13764
  mapping: {
13707
13765
  person: "person",
@@ -14537,6 +14595,8 @@ var NcSystemEventKindSchema = _enum([
14537
14595
  "alarm-triggered",
14538
14596
  "alarm-armed",
14539
14597
  "alarm-disarmed",
14598
+ "alarm-arming",
14599
+ "alarm-arm-refused",
14540
14600
  "camera-online",
14541
14601
  "camera-offline",
14542
14602
  "camera-disabled",
@@ -15745,7 +15805,87 @@ var MethodAccessSchema = _enum([
15745
15805
  var AllowedProviderSchema = union([literal("*"), array(string())]);
15746
15806
  var AllowedDevicesSchema = record(string(), union([literal("*"), array(string())]));
15747
15807
  var CapScopeSchema = _enum(["device", "system"]);
15748
- var TokenScopeSchema = discriminatedUnion("type", [
15808
+ /**
15809
+ * DeviceSelector (scope model v3 — 2026-08-12).
15810
+ *
15811
+ * A `device` grant no longer carries a frozen list of deviceIds. It carries
15812
+ * a SELECTOR the matcher resolves against the live fleet, so the grant can be
15813
+ * DYNAMIC: a `types:['camera']` selector automatically covers a camera added
15814
+ * AFTER the grant was minted — no re-grant, no re-login.
15815
+ *
15816
+ * - `all` — every device in the deployment. The broad viewer/operator
15817
+ * lever without a `category` grant (a `category` grant also covers device
15818
+ * caps that carry no deviceId; `all` is specifically the device set).
15819
+ * - `ids` — an explicit deviceId list. This is what a v2 `device:[…]`
15820
+ * grant migrates to (see {@link TokenScopeSchema}); STATIC — a new camera
15821
+ * is NOT covered until the grant is edited.
15822
+ * - `types` — every device of a `DeviceType` (e.g. every `camera`).
15823
+ * DYNAMIC. A device that changes type, or a new device of the type,
15824
+ * re-resolves on the next request.
15825
+ * - `locations` — every device whose operator-assigned `location` label is
15826
+ * in the set (e.g. "Garden", "Front door"). DYNAMIC. A device with a
15827
+ * null/unset location matches NO `locations` selector.
15828
+ */
15829
+ var DeviceSelectorSchema = discriminatedUnion("kind", [
15830
+ object({ kind: literal("all") }),
15831
+ object({
15832
+ kind: literal("ids"),
15833
+ ids: array(number().int()).min(1)
15834
+ }),
15835
+ object({
15836
+ kind: literal("types"),
15837
+ types: array(_enum(DeviceType)).min(1)
15838
+ }),
15839
+ object({
15840
+ kind: literal("locations"),
15841
+ locations: array(string().min(1)).min(1)
15842
+ })
15843
+ ]);
15844
+ var DeviceTokenScopeSchema = object({
15845
+ type: literal("device"),
15846
+ /** The device SET this grant covers — resolved against the live fleet. */
15847
+ selector: DeviceSelectorSchema,
15848
+ access: array(MethodAccessSchema).min(1),
15849
+ /**
15850
+ * Whether a grant on a PARENT device transparently covers its accessory
15851
+ * CHILDREN (siren / floodlight / PIR) via the persisted-parentage walk.
15852
+ * Direction is parent → children ONLY.
15853
+ *
15854
+ * Absent → the matcher DERIVES it from the access flavour: `view`
15855
+ * inherits (a camera viewer sees the camera's accessories), `create` /
15856
+ * `delete` do NOT (actuating/removing a child is an explicit act the
15857
+ * operator must grant on the child, not inherit from the parent). Set it
15858
+ * explicitly to override that default per grant.
15859
+ */
15860
+ includeLinked: boolean().optional()
15861
+ });
15862
+ /**
15863
+ * v2 → v3 lazy migration. A pre-v3 `device` grant carried
15864
+ * `targets: string[]` (stringified deviceIds); it rewrites to the equivalent
15865
+ * `selector: {kind:'ids', ids}`. Applied as a `preprocess` so it runs on
15866
+ * EVERY parse path — stored records AND the JWT-carried scope arrays
15867
+ * normalised at the request boundary ({@link normalizeTokenScopes} in
15868
+ * `device-selector.ts`). Chosen over a one-time DB migration because a
15869
+ * migration cannot reach a JWT already in a client's hands; parse-time
15870
+ * migration covers both without a flag day. No cast — the raw object is read
15871
+ * through `Reflect.get` (its static type is `unknown`).
15872
+ */
15873
+ function migrateLegacyTokenScope(raw) {
15874
+ if (raw === null || typeof raw !== "object" || Array.isArray(raw)) return raw;
15875
+ if (Reflect.get(raw, "type") !== "device") return raw;
15876
+ if (Reflect.get(raw, "selector") !== void 0) return raw;
15877
+ const targets = Reflect.get(raw, "targets");
15878
+ if (!Array.isArray(targets)) return raw;
15879
+ return {
15880
+ type: "device",
15881
+ selector: {
15882
+ kind: "ids",
15883
+ ids: targets.map((t) => typeof t === "string" ? Number(t) : t).filter((n) => typeof n === "number" && Number.isInteger(n))
15884
+ },
15885
+ access: Reflect.get(raw, "access")
15886
+ };
15887
+ }
15888
+ var TokenScopeSchema = preprocess(migrateLegacyTokenScope, discriminatedUnion("type", [
15749
15889
  object({
15750
15890
  type: literal("category"),
15751
15891
  target: CapScopeSchema,
@@ -15761,18 +15901,8 @@ var TokenScopeSchema = discriminatedUnion("type", [
15761
15901
  target: string(),
15762
15902
  access: array(MethodAccessSchema).min(1)
15763
15903
  }),
15764
- object({
15765
- type: literal("device"),
15766
- /**
15767
- * One or more deviceIds (serialised as strings for wire-format
15768
- * consistency with the rest of the union). Matcher accepts if
15769
- * `input.deviceId` ∈ `targets`. Array shape avoids the row-explosion
15770
- * of one scope-per-device when granting access to a set of cameras.
15771
- */
15772
- targets: array(string()).min(1),
15773
- access: array(MethodAccessSchema).min(1)
15774
- })
15775
- ]);
15904
+ DeviceTokenScopeSchema
15905
+ ]));
15776
15906
  object({
15777
15907
  id: string(),
15778
15908
  username: string(),
@@ -17815,10 +17945,26 @@ var detectionFpsField = {
17815
17945
  default: 10,
17816
17946
  step: 1
17817
17947
  };
17948
+ /**
17949
+ * The occupancy re-check interval. DEFAULT 300 s (2026-08-13 — was 30 s).
17950
+ *
17951
+ * The recheck is now on by default (a parked car is invisible to occupancy
17952
+ * rules until the stationary registry has been rebuilt by motion, which after a
17953
+ * restart may be never on a quiet camera). Each cycle re-subscribes a detection
17954
+ * session — an RTSP re-dial — so the switch is only affordable at a WIDE
17955
+ * interval: 300 s is ~12 re-dials an hour per camera, against 120 at the old
17956
+ * 30 s. A parked car is therefore counted within 5 minutes of a restart.
17957
+ *
17958
+ * Why not wider: `max` is 300 and raising it is TRAIN-BOUND, not addon-bound —
17959
+ * the host validates `attachCamera` against ITS copy of this schema, so a
17960
+ * runner asked for 600 would be rejected by the hub until a `@camstack/server`
17961
+ * carrying the wider bound is installed everywhere. 300 is the widest value
17962
+ * that ships with an addon deploy.
17963
+ */
17818
17964
  var occupancyRecheckSecField = {
17819
17965
  min: 0,
17820
17966
  max: 300,
17821
- default: 30,
17967
+ default: 300,
17822
17968
  step: 5
17823
17969
  };
17824
17970
  var occupancyRecheckFramesField = {
@@ -18016,15 +18162,21 @@ var RunnerCameraConfigSchema = object({
18016
18162
  */
18017
18163
  onboardMotionDrivesAnalyzer: boolean().default(true),
18018
18164
  /**
18019
- * Master toggle for the occupancy re-check. When `false` (DEFAULT) the runner
18020
- * never arms the periodic recheck timer, regardless of `occupancyRecheckSec`
18021
- * this is off by default because the recheck re-subscribes a detection session
18022
- * every N seconds while `watching`, a major source of pull-decoder re-dial
18023
- * churn (each cycle creates+tears a session → RTSP re-dial → latency). The
18165
+ * Master toggle for the occupancy re-check. When `false` the runner never arms
18166
+ * the periodic recheck timer, regardless of `occupancyRecheckSec`; the
18024
18167
  * `occupancyRecheckSec` / `occupancyRecheckFrames` sliders only take effect
18025
18168
  * (and only render) when this is enabled.
18026
- */
18027
- occupancyRecheckEnabled: boolean().default(false),
18169
+ *
18170
+ * DEFAULT `true` since 2026-08-13 (was `false`). It was off because the
18171
+ * recheck re-subscribes a detection session every N seconds while `watching`
18172
+ * — each cycle creates+tears a session ⇒ an RTSP re-dial ⇒ latency, a major
18173
+ * pull-decoder churn source. What that bought was a blind spot: a STATIONARY
18174
+ * object is counted only while the stationary registry holds it, and the
18175
+ * registry rebuilds from motion, so after a restart a parked car was invisible
18176
+ * to every occupancy rule until something moved in front of it. The churn is
18177
+ * now paid on the interval instead — see `occupancyRecheckSecField`.
18178
+ */
18179
+ occupancyRecheckEnabled: boolean().default(true),
18028
18180
  occupancyRecheckSec: number().min(occupancyRecheckSecField.min).max(occupancyRecheckSecField.max).default(occupancyRecheckSecField.default),
18029
18181
  occupancyRecheckFrames: number().min(occupancyRecheckFramesField.min).max(occupancyRecheckFramesField.max).default(occupancyRecheckFramesField.default),
18030
18182
  /**
@@ -23075,54 +23227,139 @@ var TalkAudioCodecSchema = _enum([
23075
23227
  "g711ulaw",
23076
23228
  "g711alaw"
23077
23229
  ]);
23078
- DeviceType.Camera, method(object({ deviceId: number() }), object({
23079
- sessionId: string(),
23080
- sdpOffer: string()
23081
- }), {
23082
- kind: "mutation",
23083
- auth: "admin"
23084
- }), method(object({
23085
- deviceId: number(),
23086
- sessionId: string(),
23087
- sdpAnswer: string()
23088
- }), _void(), {
23089
- kind: "mutation",
23090
- auth: "admin"
23091
- }), method(object({
23092
- deviceId: number(),
23093
- sessionId: string()
23094
- }), _void(), {
23095
- kind: "mutation",
23096
- auth: "admin"
23097
- }), method(object({ deviceId: number() }), object({ sessionId: string() }), {
23098
- kind: "mutation",
23099
- auth: "admin"
23100
- }), method(object({
23101
- deviceId: number(),
23102
- /** Audio bytes for ONE frame, base64-encoded so the payload
23103
- * survives tRPC JSON serialization. */
23104
- audioBase64: string(),
23105
- /** Wire codec of the payload. Omit to let the provider default
23106
- * to its native expected format (s16le @ provider-native rate,
23107
- * mono). See {@link TalkAudioCodecSchema} for the supported set. */
23108
- codec: TalkAudioCodecSchema.optional(),
23109
- /** Sample rate (Hz). REQUIRED for `s16le`; advisory for
23110
- * `opus` (encoder clock); ignored for `g711*` (implied 8000). */
23111
- sampleRate: number().int().positive().optional(),
23112
- /** Channel count. Default 1. */
23113
- channels: number().int().positive().optional(),
23114
- /** Sequence number for ordering / dropping out-of-order frames. */
23115
- sequenceNumber: number().int()
23116
- }), object({ accepted: boolean() }), {
23117
- kind: "mutation",
23118
- auth: "admin"
23119
- }), method(object({ deviceId: number() }), _void(), {
23120
- kind: "mutation",
23121
- auth: "admin"
23122
- }), object({
23123
- deviceId: number(),
23124
- status: IntercomStatusSchema
23125
- });
23230
+ var intercomCapability = {
23231
+ name: "intercom",
23232
+ scope: "device",
23233
+ deviceNative: true,
23234
+ mode: "singleton",
23235
+ deviceTypes: [DeviceType.Camera],
23236
+ methods: {
23237
+ /**
23238
+ * Open a server-side WebRTC audio-only session. Returns an SDP
23239
+ * offer with a single sendonly audio m-line the client answers
23240
+ * (client → server direction). The server wakes battery cams
23241
+ * transparently before opening the upstream talk channel.
23242
+ */
23243
+ startSession: method(object({ deviceId: number() }), object({
23244
+ sessionId: string(),
23245
+ sdpOffer: string()
23246
+ }), {
23247
+ kind: "mutation",
23248
+ auth: "admin"
23249
+ }),
23250
+ handleAnswer: method(object({
23251
+ deviceId: number(),
23252
+ sessionId: string(),
23253
+ sdpAnswer: string()
23254
+ }), _void(), {
23255
+ kind: "mutation",
23256
+ auth: "admin"
23257
+ }),
23258
+ /** Close explicitly. Server also auto-closes on 30s idle. */
23259
+ stopSession: method(object({
23260
+ deviceId: number(),
23261
+ sessionId: string()
23262
+ }), _void(), {
23263
+ kind: "mutation",
23264
+ auth: "admin"
23265
+ }),
23266
+ /**
23267
+ * Open a raw-PCM talk session (no WebRTC SDP plumbing). Used by
23268
+ * non-WebRTC consumers (HomeKit export, Alexa raw audio, test
23269
+ * harnesses) that already have decoded PCM frames and just need a
23270
+ * direct path onto the camera's talk channel. Mutually exclusive
23271
+ * with `startSession` (an active WebRTC session must be stopped
23272
+ * before a raw-PCM session can be opened on the same device, and
23273
+ * vice versa).
23274
+ */
23275
+ startTalkSession: method(object({ deviceId: number() }), object({ sessionId: string() }), {
23276
+ kind: "mutation",
23277
+ auth: "admin"
23278
+ }),
23279
+ /**
23280
+ * Push one chunk of talk-back audio onto the active talk session.
23281
+ * The cap is codec-agnostic: the caller declares (or omits) the
23282
+ * wire format via `codec`; the provider decides between passthrough
23283
+ * (when the wire codec matches the camera's native talk channel),
23284
+ * transcoding via the `audio-codec` cap, or rejecting the call.
23285
+ *
23286
+ * Callers do NOT need to know the camera's wire format or sample
23287
+ * rate — that information lives entirely inside the provider.
23288
+ *
23289
+ * Sequence numbers MUST be monotonic per talk session; older frames
23290
+ * arriving after newer ones are dropped to avoid smearing the
23291
+ * downstream encoder state (G.711 is stateless but IMA ADPCM's
23292
+ * predictor would corrupt with re-ordering).
23293
+ */
23294
+ pushTalkAudio: method(object({
23295
+ deviceId: number(),
23296
+ /** Audio bytes for ONE frame, base64-encoded so the payload
23297
+ * survives tRPC JSON serialization. */
23298
+ audioBase64: string(),
23299
+ /** Wire codec of the payload. Omit to let the provider default
23300
+ * to its native expected format (s16le @ provider-native rate,
23301
+ * mono). See {@link TalkAudioCodecSchema} for the supported set. */
23302
+ codec: TalkAudioCodecSchema.optional(),
23303
+ /** Sample rate (Hz). REQUIRED for `s16le`; advisory for
23304
+ * `opus` (encoder clock); ignored for `g711*` (implied 8000). */
23305
+ sampleRate: number().int().positive().optional(),
23306
+ /** Channel count. Default 1. */
23307
+ channels: number().int().positive().optional(),
23308
+ /** Sequence number for ordering / dropping out-of-order frames. */
23309
+ sequenceNumber: number().int()
23310
+ }), object({ accepted: boolean() }), {
23311
+ kind: "mutation",
23312
+ auth: "admin"
23313
+ }),
23314
+ /** Close the raw-PCM talk session. Idempotent. */
23315
+ endTalkSession: method(object({ deviceId: number() }), _void(), {
23316
+ kind: "mutation",
23317
+ auth: "admin"
23318
+ })
23319
+ },
23320
+ events: { onStatusChanged: { data: object({
23321
+ deviceId: number(),
23322
+ status: IntercomStatusSchema
23323
+ }) } },
23324
+ status: {
23325
+ schema: IntercomStatusSchema,
23326
+ kind: "command-driven"
23327
+ },
23328
+ /**
23329
+ * Runtime-state slice — mirrored by the kernel.
23330
+ *
23331
+ * The cap declared `status` and nothing else, so the only two sources an
23332
+ * exporter has for a value — the `device.state-changed` slice event and the
23333
+ * `deviceState.getAllSnapshots` snapshot, both built from runtime state —
23334
+ * carried nothing for `intercom`. A talk-back entity in Home Assistant would
23335
+ * have been published and never received a value, which is the defect the
23336
+ * export's two classification tables exist to prevent (177 of them, once), so
23337
+ * `intercom` was excluded rather than exported.
23338
+ *
23339
+ * The shape is the status shape: there is exactly one truth about talk-back
23340
+ * and duplicating it into a second schema is how two halves of one capability
23341
+ * come to disagree. Providers write it through
23342
+ * `this.runtimeState.setCapState('intercom', …)` at the four points that open
23343
+ * and close a session, and seed it at registration so the slice exists before
23344
+ * the first session rather than after it.
23345
+ *
23346
+ * **Bound, named rather than hidden:** `talking` mirrors the provider's own
23347
+ * session handle, so a session torn down by a transport death that never
23348
+ * reaches `stopSession` / `endTalkSession` leaves it latched until the next
23349
+ * session or the next restart. That is why the slice is `session` and not
23350
+ * `restored` — a restart must never restore "talking".
23351
+ */
23352
+ runtimeState: IntercomStatusSchema,
23353
+ /**
23354
+ * Runtime-state durability: **session** — `talking` describes a live audio
23355
+ * session, which by definition does not survive the process that held it.
23356
+ * Restoring it would publish a camera as talking to nobody.
23357
+ *
23358
+ * See `RuntimeStateDurability`. Enforced by
23359
+ * `scripts/check-runtime-state-durability.ts`.
23360
+ */
23361
+ durability: "session"
23362
+ };
23126
23363
  /**
23127
23364
  * Robotic lawn-mower cap. Models HA `lawn_mower.*` entities — anything
23128
23365
  * with a mowing lifecycle plus a dock action.
@@ -25819,7 +26056,7 @@ method(object({
25819
26056
  toMs: number()
25820
26057
  }), RecordingAvailabilitySchema, {
25821
26058
  kind: "query",
25822
- auth: "admin"
26059
+ auth: "protected"
25823
26060
  }), method(object({
25824
26061
  deviceId: number(),
25825
26062
  fromMs: number(),
@@ -25827,14 +26064,14 @@ method(object({
25827
26064
  tzOffsetMinutes: number()
25828
26065
  }), RecordingDaysSchema, {
25829
26066
  kind: "query",
25830
- auth: "admin"
26067
+ auth: "protected"
25831
26068
  }), method(object({
25832
26069
  deviceId: number(),
25833
26070
  fromMs: number(),
25834
26071
  toMs: number()
25835
26072
  }), RecordingManifestSchema, {
25836
26073
  kind: "query",
25837
- auth: "admin"
26074
+ auth: "protected"
25838
26075
  }), method(object({}), RecordingStorageUsageSchema, {
25839
26076
  kind: "query",
25840
26077
  auth: "admin"
@@ -28084,6 +28321,7 @@ var DEVICE_LOCAL_STATE_CAPS = {
28084
28321
  humiditySensor: humiditySensorCapability,
28085
28322
  image: imageCapability,
28086
28323
  imageSettings: imageSettingsCapability,
28324
+ intercom: intercomCapability,
28087
28325
  lawnMowerControl: lawnMowerControlCapability,
28088
28326
  lockControl: lockControlCapability,
28089
28327
  mediaPlayer: mediaPlayerCapability,
@@ -34440,6 +34678,1678 @@ Object.freeze({
34440
34678
  access: "create"
34441
34679
  }
34442
34680
  });
34681
+ Object.freeze({
34682
+ "accessories.setChildHidden": [{
34683
+ name: "childDeviceId",
34684
+ form: "single",
34685
+ optional: false
34686
+ }, {
34687
+ name: "deviceId",
34688
+ form: "single",
34689
+ optional: false
34690
+ }],
34691
+ "addonSettings.getDeviceSettings": [{
34692
+ name: "deviceId",
34693
+ form: "single",
34694
+ optional: false
34695
+ }],
34696
+ "addonSettings.updateDeviceSettings": [{
34697
+ name: "deviceId",
34698
+ form: "single",
34699
+ optional: false
34700
+ }],
34701
+ "alarmPanel.arm": [{
34702
+ name: "deviceId",
34703
+ form: "single",
34704
+ optional: false
34705
+ }],
34706
+ "alarmPanel.disarm": [{
34707
+ name: "deviceId",
34708
+ form: "single",
34709
+ optional: false
34710
+ }],
34711
+ "alarmPanel.trigger": [{
34712
+ name: "deviceId",
34713
+ form: "single",
34714
+ optional: false
34715
+ }],
34716
+ "audioAnalysis.resolveDeviceSettings": [{
34717
+ name: "deviceId",
34718
+ form: "single",
34719
+ optional: false
34720
+ }],
34721
+ "audioAnalyzer.classify": [{
34722
+ name: "deviceId",
34723
+ form: "single",
34724
+ optional: true
34725
+ }],
34726
+ "audioMetrics.getCurrentSnapshot": [{
34727
+ name: "deviceId",
34728
+ form: "single",
34729
+ optional: false
34730
+ }],
34731
+ "audioMetrics.getHistory": [{
34732
+ name: "deviceId",
34733
+ form: "single",
34734
+ optional: false
34735
+ }],
34736
+ "automationControl.disable": [{
34737
+ name: "deviceId",
34738
+ form: "single",
34739
+ optional: false
34740
+ }],
34741
+ "automationControl.enable": [{
34742
+ name: "deviceId",
34743
+ form: "single",
34744
+ optional: false
34745
+ }],
34746
+ "automationControl.trigger": [{
34747
+ name: "deviceId",
34748
+ form: "single",
34749
+ optional: false
34750
+ }],
34751
+ "battery.wakeForStream": [{
34752
+ name: "deviceId",
34753
+ form: "single",
34754
+ optional: false
34755
+ }],
34756
+ "brightness.setBrightness": [{
34757
+ name: "deviceId",
34758
+ form: "single",
34759
+ optional: false
34760
+ }],
34761
+ "button.press": [{
34762
+ name: "deviceId",
34763
+ form: "single",
34764
+ optional: false
34765
+ }],
34766
+ "cameraCredentials.getCredentials": [{
34767
+ name: "deviceId",
34768
+ form: "single",
34769
+ optional: false
34770
+ }],
34771
+ "cameraStreams.getBrokerStreams": [{
34772
+ name: "deviceId",
34773
+ form: "single",
34774
+ optional: false
34775
+ }],
34776
+ "cameraStreams.getCameraStreams": [{
34777
+ name: "deviceId",
34778
+ form: "single",
34779
+ optional: false
34780
+ }],
34781
+ "cameraStreams.getProfileRtspEntries": [{
34782
+ name: "deviceId",
34783
+ form: "single",
34784
+ optional: false
34785
+ }],
34786
+ "cameraStreams.getRtspEntries": [{
34787
+ name: "deviceId",
34788
+ form: "single",
34789
+ optional: false
34790
+ }],
34791
+ "cameraStreams.pickStream": [{
34792
+ name: "deviceId",
34793
+ form: "single",
34794
+ optional: false
34795
+ }],
34796
+ "climateControl.setFanMode": [{
34797
+ name: "deviceId",
34798
+ form: "single",
34799
+ optional: false
34800
+ }],
34801
+ "climateControl.setMode": [{
34802
+ name: "deviceId",
34803
+ form: "single",
34804
+ optional: false
34805
+ }],
34806
+ "climateControl.setPreset": [{
34807
+ name: "deviceId",
34808
+ form: "single",
34809
+ optional: false
34810
+ }],
34811
+ "climateControl.setSwingHorizontal": [{
34812
+ name: "deviceId",
34813
+ form: "single",
34814
+ optional: false
34815
+ }],
34816
+ "climateControl.setSwingVertical": [{
34817
+ name: "deviceId",
34818
+ form: "single",
34819
+ optional: false
34820
+ }],
34821
+ "climateControl.setTarget": [{
34822
+ name: "deviceId",
34823
+ form: "single",
34824
+ optional: false
34825
+ }],
34826
+ "climateControl.setTargetHumidity": [{
34827
+ name: "deviceId",
34828
+ form: "single",
34829
+ optional: false
34830
+ }],
34831
+ "climateControl.setTargetRange": [{
34832
+ name: "deviceId",
34833
+ form: "single",
34834
+ optional: false
34835
+ }],
34836
+ "color.setColor": [{
34837
+ name: "deviceId",
34838
+ form: "single",
34839
+ optional: false
34840
+ }],
34841
+ "consumables.reset": [{
34842
+ name: "deviceId",
34843
+ form: "single",
34844
+ optional: false
34845
+ }],
34846
+ "control.setValue": [{
34847
+ name: "deviceId",
34848
+ form: "single",
34849
+ optional: false
34850
+ }],
34851
+ "cover.close": [{
34852
+ name: "deviceId",
34853
+ form: "single",
34854
+ optional: false
34855
+ }],
34856
+ "cover.open": [{
34857
+ name: "deviceId",
34858
+ form: "single",
34859
+ optional: false
34860
+ }],
34861
+ "cover.setPosition": [{
34862
+ name: "deviceId",
34863
+ form: "single",
34864
+ optional: false
34865
+ }],
34866
+ "cover.setTiltPosition": [{
34867
+ name: "deviceId",
34868
+ form: "single",
34869
+ optional: false
34870
+ }],
34871
+ "cover.stop": [{
34872
+ name: "deviceId",
34873
+ form: "single",
34874
+ optional: false
34875
+ }],
34876
+ "dayNight.getOptions": [{
34877
+ name: "deviceId",
34878
+ form: "single",
34879
+ optional: false
34880
+ }],
34881
+ "dayNight.setSettings": [{
34882
+ name: "deviceId",
34883
+ form: "single",
34884
+ optional: false
34885
+ }],
34886
+ "decoder.createSession": [{
34887
+ name: "deviceId",
34888
+ form: "single",
34889
+ optional: true
34890
+ }],
34891
+ "deviceAdoption.release": [{
34892
+ name: "camDeviceId",
34893
+ form: "single",
34894
+ optional: false
34895
+ }],
34896
+ "deviceAdoption.resync": [{
34897
+ name: "camDeviceId",
34898
+ form: "single",
34899
+ optional: false
34900
+ }],
34901
+ "deviceDiscovery.adoptDevice": [{
34902
+ name: "deviceId",
34903
+ form: "single",
34904
+ optional: false
34905
+ }],
34906
+ "deviceDiscovery.listDiscovered": [{
34907
+ name: "deviceId",
34908
+ form: "single",
34909
+ optional: false
34910
+ }],
34911
+ "deviceDiscovery.refreshDiscovery": [{
34912
+ name: "deviceId",
34913
+ form: "single",
34914
+ optional: false
34915
+ }],
34916
+ "deviceDiscovery.releaseDevice": [{
34917
+ name: "childDeviceId",
34918
+ form: "single",
34919
+ optional: false
34920
+ }, {
34921
+ name: "deviceId",
34922
+ form: "single",
34923
+ optional: false
34924
+ }],
34925
+ "deviceManager.adoptionRelease": [{
34926
+ name: "camDeviceId",
34927
+ form: "single",
34928
+ optional: false
34929
+ }],
34930
+ "deviceManager.adoptionResync": [{
34931
+ name: "camDeviceId",
34932
+ form: "single",
34933
+ optional: false
34934
+ }],
34935
+ "deviceManager.applyInitialMeta": [{
34936
+ name: "deviceId",
34937
+ form: "single",
34938
+ optional: false
34939
+ }, {
34940
+ name: "linkDeviceId",
34941
+ form: "single",
34942
+ optional: true
34943
+ }],
34944
+ "deviceManager.disable": [{
34945
+ name: "deviceId",
34946
+ form: "single",
34947
+ optional: false
34948
+ }],
34949
+ "deviceManager.enable": [{
34950
+ name: "deviceId",
34951
+ form: "single",
34952
+ optional: false
34953
+ }],
34954
+ "deviceManager.getBindings": [{
34955
+ name: "deviceId",
34956
+ form: "single",
34957
+ optional: false
34958
+ }],
34959
+ "deviceManager.getChildren": [{
34960
+ name: "parentDeviceId",
34961
+ form: "single",
34962
+ optional: false
34963
+ }],
34964
+ "deviceManager.getConfigSchema": [{
34965
+ name: "deviceId",
34966
+ form: "single",
34967
+ optional: false
34968
+ }],
34969
+ "deviceManager.getDevice": [{
34970
+ name: "deviceId",
34971
+ form: "single",
34972
+ optional: false
34973
+ }],
34974
+ "deviceManager.getDeviceAggregate": [{
34975
+ name: "deviceId",
34976
+ form: "single",
34977
+ optional: false
34978
+ }],
34979
+ "deviceManager.getDeviceLiveInfoAggregate": [{
34980
+ name: "deviceId",
34981
+ form: "single",
34982
+ optional: false
34983
+ }],
34984
+ "deviceManager.getDeviceSettingsAggregate": [{
34985
+ name: "deviceId",
34986
+ form: "single",
34987
+ optional: false
34988
+ }],
34989
+ "deviceManager.getDeviceStatusAggregate": [{
34990
+ name: "deviceId",
34991
+ form: "single",
34992
+ optional: false
34993
+ }],
34994
+ "deviceManager.getDeviceStatusAggregateBatch": [{
34995
+ name: "deviceIds",
34996
+ form: "array",
34997
+ optional: false
34998
+ }],
34999
+ "deviceManager.getLinkedDevices": [{
35000
+ name: "deviceId",
35001
+ form: "single",
35002
+ optional: false
35003
+ }],
35004
+ "deviceManager.getSettingsSchema": [{
35005
+ name: "deviceId",
35006
+ form: "single",
35007
+ optional: false
35008
+ }],
35009
+ "deviceManager.getStreamProfileMap": [{
35010
+ name: "deviceId",
35011
+ form: "single",
35012
+ optional: false
35013
+ }],
35014
+ "deviceManager.getStreamSources": [{
35015
+ name: "deviceId",
35016
+ form: "single",
35017
+ optional: false
35018
+ }],
35019
+ "deviceManager.getWireableFields": [{
35020
+ name: "deviceId",
35021
+ form: "single",
35022
+ optional: false
35023
+ }],
35024
+ "deviceManager.loadConfig": [{
35025
+ name: "deviceId",
35026
+ form: "single",
35027
+ optional: false
35028
+ }],
35029
+ "deviceManager.loadMeta": [{
35030
+ name: "deviceId",
35031
+ form: "single",
35032
+ optional: false
35033
+ }],
35034
+ "deviceManager.loadRuntimeState": [{
35035
+ name: "deviceId",
35036
+ form: "single",
35037
+ optional: false
35038
+ }],
35039
+ "deviceManager.persistConfig": [{
35040
+ name: "deviceId",
35041
+ form: "single",
35042
+ optional: false
35043
+ }],
35044
+ "deviceManager.probeStreams": [{
35045
+ name: "deviceId",
35046
+ form: "single",
35047
+ optional: false
35048
+ }],
35049
+ "deviceManager.registerDevice": [{
35050
+ name: "parentDeviceId",
35051
+ form: "single",
35052
+ optional: true
35053
+ }],
35054
+ "deviceManager.remove": [{
35055
+ name: "deviceId",
35056
+ form: "single",
35057
+ optional: false
35058
+ }],
35059
+ "deviceManager.removeDevice": [{
35060
+ name: "deviceId",
35061
+ form: "single",
35062
+ optional: false
35063
+ }],
35064
+ "deviceManager.runDeviceAction": [{
35065
+ name: "deviceId",
35066
+ form: "single",
35067
+ optional: false
35068
+ }],
35069
+ "deviceManager.setChildLayout": [{
35070
+ name: "deviceId",
35071
+ form: "single",
35072
+ optional: false
35073
+ }],
35074
+ "deviceManager.setDisabled": [{
35075
+ name: "deviceId",
35076
+ form: "single",
35077
+ optional: false
35078
+ }],
35079
+ "deviceManager.setDisplay": [{
35080
+ name: "deviceId",
35081
+ form: "single",
35082
+ optional: false
35083
+ }],
35084
+ "deviceManager.setIntegrationId": [{
35085
+ name: "deviceId",
35086
+ form: "single",
35087
+ optional: false
35088
+ }],
35089
+ "deviceManager.setLinkDeviceId": [{
35090
+ name: "deviceId",
35091
+ form: "single",
35092
+ optional: false
35093
+ }, {
35094
+ name: "linkDeviceId",
35095
+ form: "single",
35096
+ optional: true
35097
+ }],
35098
+ "deviceManager.setLocation": [{
35099
+ name: "deviceId",
35100
+ form: "single",
35101
+ optional: false
35102
+ }],
35103
+ "deviceManager.setMetadata": [{
35104
+ name: "deviceId",
35105
+ form: "single",
35106
+ optional: false
35107
+ }],
35108
+ "deviceManager.setName": [{
35109
+ name: "deviceId",
35110
+ form: "single",
35111
+ optional: false
35112
+ }],
35113
+ "deviceManager.setPrimaryChildEntityId": [{
35114
+ name: "deviceId",
35115
+ form: "single",
35116
+ optional: false
35117
+ }],
35118
+ "deviceManager.setRole": [{
35119
+ name: "deviceId",
35120
+ form: "single",
35121
+ optional: false
35122
+ }],
35123
+ "deviceManager.setStreamProfileMap": [{
35124
+ name: "deviceId",
35125
+ form: "single",
35126
+ optional: false
35127
+ }],
35128
+ "deviceManager.setType": [{
35129
+ name: "deviceId",
35130
+ form: "single",
35131
+ optional: false
35132
+ }],
35133
+ "deviceManager.setWrapperActive": [{
35134
+ name: "deviceId",
35135
+ form: "single",
35136
+ optional: false
35137
+ }],
35138
+ "deviceManager.testField": [{
35139
+ name: "deviceId",
35140
+ form: "single",
35141
+ optional: false
35142
+ }],
35143
+ "deviceManager.updateConfig": [{
35144
+ name: "deviceId",
35145
+ form: "single",
35146
+ optional: false
35147
+ }],
35148
+ "deviceManager.updateDeviceField": [{
35149
+ name: "deviceId",
35150
+ form: "single",
35151
+ optional: false
35152
+ }],
35153
+ "deviceManager.updateDeviceFieldsBatch": [{
35154
+ name: "deviceId",
35155
+ form: "single",
35156
+ optional: false
35157
+ }],
35158
+ "deviceOps.getConfigEntries": [{
35159
+ name: "deviceId",
35160
+ form: "single",
35161
+ optional: false
35162
+ }],
35163
+ "deviceOps.getRawState": [{
35164
+ name: "deviceId",
35165
+ form: "single",
35166
+ optional: false
35167
+ }],
35168
+ "deviceOps.getSettingsSchema": [{
35169
+ name: "deviceId",
35170
+ form: "single",
35171
+ optional: false
35172
+ }],
35173
+ "deviceOps.getStreamSources": [{
35174
+ name: "deviceId",
35175
+ form: "single",
35176
+ optional: false
35177
+ }],
35178
+ "deviceOps.removeDevice": [{
35179
+ name: "deviceId",
35180
+ form: "single",
35181
+ optional: false
35182
+ }],
35183
+ "deviceOps.runAction": [{
35184
+ name: "deviceId",
35185
+ form: "single",
35186
+ optional: false
35187
+ }],
35188
+ "deviceOps.setConfig": [{
35189
+ name: "deviceId",
35190
+ form: "single",
35191
+ optional: false
35192
+ }],
35193
+ "deviceState.getCapSlice": [{
35194
+ name: "deviceId",
35195
+ form: "single",
35196
+ optional: false
35197
+ }],
35198
+ "deviceState.getSnapshot": [{
35199
+ name: "deviceId",
35200
+ form: "single",
35201
+ optional: false
35202
+ }],
35203
+ "deviceState.setCapSlice": [{
35204
+ name: "deviceId",
35205
+ form: "single",
35206
+ optional: false
35207
+ }],
35208
+ "events.getEventClipUrl": [{
35209
+ name: "deviceId",
35210
+ form: "single",
35211
+ optional: false
35212
+ }],
35213
+ "events.getEvents": [{
35214
+ name: "deviceId",
35215
+ form: "single",
35216
+ optional: false
35217
+ }],
35218
+ "events.getEventThumbnail": [{
35219
+ name: "deviceId",
35220
+ form: "single",
35221
+ optional: false
35222
+ }],
35223
+ "faceGallery.getFaceByTrack": [{
35224
+ name: "deviceId",
35225
+ form: "single",
35226
+ optional: false
35227
+ }],
35228
+ "faceGallery.listRecentFaces": [{
35229
+ name: "deviceId",
35230
+ form: "single",
35231
+ optional: true
35232
+ }],
35233
+ "fanControl.setDirection": [{
35234
+ name: "deviceId",
35235
+ form: "single",
35236
+ optional: false
35237
+ }],
35238
+ "fanControl.setOscillating": [{
35239
+ name: "deviceId",
35240
+ form: "single",
35241
+ optional: false
35242
+ }],
35243
+ "fanControl.setPercentage": [{
35244
+ name: "deviceId",
35245
+ form: "single",
35246
+ optional: false
35247
+ }],
35248
+ "fanControl.setPreset": [{
35249
+ name: "deviceId",
35250
+ form: "single",
35251
+ optional: false
35252
+ }],
35253
+ "humidifier.setMode": [{
35254
+ name: "deviceId",
35255
+ form: "single",
35256
+ optional: false
35257
+ }],
35258
+ "humidifier.setOn": [{
35259
+ name: "deviceId",
35260
+ form: "single",
35261
+ optional: false
35262
+ }],
35263
+ "humidifier.setTargetHumidity": [{
35264
+ name: "deviceId",
35265
+ form: "single",
35266
+ optional: false
35267
+ }],
35268
+ "imageSettings.getOptions": [{
35269
+ name: "deviceId",
35270
+ form: "single",
35271
+ optional: false
35272
+ }],
35273
+ "imageSettings.setSettings": [{
35274
+ name: "deviceId",
35275
+ form: "single",
35276
+ optional: false
35277
+ }],
35278
+ "intercom.endTalkSession": [{
35279
+ name: "deviceId",
35280
+ form: "single",
35281
+ optional: false
35282
+ }],
35283
+ "intercom.handleAnswer": [{
35284
+ name: "deviceId",
35285
+ form: "single",
35286
+ optional: false
35287
+ }],
35288
+ "intercom.pushTalkAudio": [{
35289
+ name: "deviceId",
35290
+ form: "single",
35291
+ optional: false
35292
+ }],
35293
+ "intercom.startSession": [{
35294
+ name: "deviceId",
35295
+ form: "single",
35296
+ optional: false
35297
+ }],
35298
+ "intercom.startTalkSession": [{
35299
+ name: "deviceId",
35300
+ form: "single",
35301
+ optional: false
35302
+ }],
35303
+ "intercom.stopSession": [{
35304
+ name: "deviceId",
35305
+ form: "single",
35306
+ optional: false
35307
+ }],
35308
+ "lawnMowerControl.dock": [{
35309
+ name: "deviceId",
35310
+ form: "single",
35311
+ optional: false
35312
+ }],
35313
+ "lawnMowerControl.pause": [{
35314
+ name: "deviceId",
35315
+ form: "single",
35316
+ optional: false
35317
+ }],
35318
+ "lawnMowerControl.startMowing": [{
35319
+ name: "deviceId",
35320
+ form: "single",
35321
+ optional: false
35322
+ }],
35323
+ "lockControl.lock": [{
35324
+ name: "deviceId",
35325
+ form: "single",
35326
+ optional: false
35327
+ }],
35328
+ "lockControl.open": [{
35329
+ name: "deviceId",
35330
+ form: "single",
35331
+ optional: false
35332
+ }],
35333
+ "lockControl.unlock": [{
35334
+ name: "deviceId",
35335
+ form: "single",
35336
+ optional: false
35337
+ }],
35338
+ "mediaPlayer.next": [{
35339
+ name: "deviceId",
35340
+ form: "single",
35341
+ optional: false
35342
+ }],
35343
+ "mediaPlayer.pause": [{
35344
+ name: "deviceId",
35345
+ form: "single",
35346
+ optional: false
35347
+ }],
35348
+ "mediaPlayer.play": [{
35349
+ name: "deviceId",
35350
+ form: "single",
35351
+ optional: false
35352
+ }],
35353
+ "mediaPlayer.playMedia": [{
35354
+ name: "deviceId",
35355
+ form: "single",
35356
+ optional: false
35357
+ }],
35358
+ "mediaPlayer.previous": [{
35359
+ name: "deviceId",
35360
+ form: "single",
35361
+ optional: false
35362
+ }],
35363
+ "mediaPlayer.seek": [{
35364
+ name: "deviceId",
35365
+ form: "single",
35366
+ optional: false
35367
+ }],
35368
+ "mediaPlayer.selectSource": [{
35369
+ name: "deviceId",
35370
+ form: "single",
35371
+ optional: false
35372
+ }],
35373
+ "mediaPlayer.setMute": [{
35374
+ name: "deviceId",
35375
+ form: "single",
35376
+ optional: false
35377
+ }],
35378
+ "mediaPlayer.setRepeat": [{
35379
+ name: "deviceId",
35380
+ form: "single",
35381
+ optional: false
35382
+ }],
35383
+ "mediaPlayer.setShuffle": [{
35384
+ name: "deviceId",
35385
+ form: "single",
35386
+ optional: false
35387
+ }],
35388
+ "mediaPlayer.setVolume": [{
35389
+ name: "deviceId",
35390
+ form: "single",
35391
+ optional: false
35392
+ }],
35393
+ "mediaPlayer.stop": [{
35394
+ name: "deviceId",
35395
+ form: "single",
35396
+ optional: false
35397
+ }],
35398
+ "motion.isDetected": [{
35399
+ name: "deviceId",
35400
+ form: "single",
35401
+ optional: false
35402
+ }],
35403
+ "motionDetection.analyze": [{
35404
+ name: "deviceId",
35405
+ form: "single",
35406
+ optional: false
35407
+ }],
35408
+ "motionDetection.removeCamera": [{
35409
+ name: "deviceId",
35410
+ form: "single",
35411
+ optional: false
35412
+ }],
35413
+ "motionTrigger.setMotionTrigger": [{
35414
+ name: "deviceId",
35415
+ form: "single",
35416
+ optional: false
35417
+ }],
35418
+ "motionZones.getOptions": [{
35419
+ name: "deviceId",
35420
+ form: "single",
35421
+ optional: false
35422
+ }],
35423
+ "motionZones.setZone": [{
35424
+ name: "deviceId",
35425
+ form: "single",
35426
+ optional: false
35427
+ }],
35428
+ "nativeObjectDetection.setEnabled": [{
35429
+ name: "deviceId",
35430
+ form: "single",
35431
+ optional: false
35432
+ }],
35433
+ "networkQuality.getDeviceStats": [{
35434
+ name: "deviceId",
35435
+ form: "single",
35436
+ optional: false
35437
+ }],
35438
+ "networkQuality.reportClientStats": [{
35439
+ name: "deviceId",
35440
+ form: "single",
35441
+ optional: false
35442
+ }],
35443
+ "notificationRules.setDeviceMuted": [{
35444
+ name: "deviceId",
35445
+ form: "single",
35446
+ optional: false
35447
+ }],
35448
+ "notifier.cancel": [{
35449
+ name: "deviceId",
35450
+ form: "single",
35451
+ optional: false
35452
+ }],
35453
+ "notifier.send": [{
35454
+ name: "deviceId",
35455
+ form: "single",
35456
+ optional: false
35457
+ }],
35458
+ "osd.setOverlay": [{
35459
+ name: "deviceId",
35460
+ form: "single",
35461
+ optional: false
35462
+ }],
35463
+ "osdManager.clearSlotBinding": [{
35464
+ name: "deviceId",
35465
+ form: "single",
35466
+ optional: false
35467
+ }],
35468
+ "osdManager.copyDeviceConfiguration": [{
35469
+ name: "sourceDeviceId",
35470
+ form: "single",
35471
+ optional: false
35472
+ }, {
35473
+ name: "targetDeviceId",
35474
+ form: "single",
35475
+ optional: false
35476
+ }],
35477
+ "osdManager.getDeviceOsd": [{
35478
+ name: "deviceId",
35479
+ form: "single",
35480
+ optional: false
35481
+ }],
35482
+ "osdManager.getSourceCatalog": [{
35483
+ name: "deviceId",
35484
+ form: "single",
35485
+ optional: false
35486
+ }],
35487
+ "osdManager.previewSlot": [{
35488
+ name: "deviceId",
35489
+ form: "single",
35490
+ optional: false
35491
+ }],
35492
+ "osdManager.renderDevice": [{
35493
+ name: "deviceId",
35494
+ form: "single",
35495
+ optional: false
35496
+ }],
35497
+ "osdManager.setSlotBinding": [{
35498
+ name: "deviceId",
35499
+ form: "single",
35500
+ optional: false
35501
+ }],
35502
+ "petFeeder.callPet": [{
35503
+ name: "deviceId",
35504
+ form: "single",
35505
+ optional: false
35506
+ }],
35507
+ "petFeeder.cancelFeed": [{
35508
+ name: "deviceId",
35509
+ form: "single",
35510
+ optional: false
35511
+ }],
35512
+ "petFeeder.feed": [{
35513
+ name: "deviceId",
35514
+ form: "single",
35515
+ optional: false
35516
+ }],
35517
+ "petFeeder.markFoodReplenished": [{
35518
+ name: "deviceId",
35519
+ form: "single",
35520
+ optional: false
35521
+ }],
35522
+ "petFeeder.playSound": [{
35523
+ name: "deviceId",
35524
+ form: "single",
35525
+ optional: false
35526
+ }],
35527
+ "petFeeder.resetDesiccant": [{
35528
+ name: "deviceId",
35529
+ form: "single",
35530
+ optional: false
35531
+ }],
35532
+ "petFeeder.setChildLock": [{
35533
+ name: "deviceId",
35534
+ form: "single",
35535
+ optional: false
35536
+ }],
35537
+ "petFeeder.setFeedSound": [{
35538
+ name: "deviceId",
35539
+ form: "single",
35540
+ optional: false
35541
+ }],
35542
+ "petFeeder.setIndicatorLight": [{
35543
+ name: "deviceId",
35544
+ form: "single",
35545
+ optional: false
35546
+ }],
35547
+ "petFeeder.setVolume": [{
35548
+ name: "deviceId",
35549
+ form: "single",
35550
+ optional: false
35551
+ }],
35552
+ "pipelineAnalytics.clearTracks": [{
35553
+ name: "deviceId",
35554
+ form: "single",
35555
+ optional: false
35556
+ }],
35557
+ "pipelineAnalytics.completeRetrainTrack": [{
35558
+ name: "deviceId",
35559
+ form: "single",
35560
+ optional: false
35561
+ }],
35562
+ "pipelineAnalytics.deleteDeviceEvents": [{
35563
+ name: "deviceId",
35564
+ form: "single",
35565
+ optional: false
35566
+ }],
35567
+ "pipelineAnalytics.deleteTracks": [{
35568
+ name: "deviceId",
35569
+ form: "single",
35570
+ optional: false
35571
+ }],
35572
+ "pipelineAnalytics.deselectRetrainFrame": [{
35573
+ name: "deviceId",
35574
+ form: "single",
35575
+ optional: false
35576
+ }],
35577
+ "pipelineAnalytics.getActiveTracks": [{
35578
+ name: "deviceId",
35579
+ form: "single",
35580
+ optional: false
35581
+ }],
35582
+ "pipelineAnalytics.getAudioEvents": [{
35583
+ name: "deviceId",
35584
+ form: "single",
35585
+ optional: false
35586
+ }],
35587
+ "pipelineAnalytics.getEventDensity": [{
35588
+ name: "deviceId",
35589
+ form: "single",
35590
+ optional: false
35591
+ }],
35592
+ "pipelineAnalytics.getKeyEvents": [{
35593
+ name: "deviceId",
35594
+ form: "single",
35595
+ optional: false
35596
+ }],
35597
+ "pipelineAnalytics.getMotionEvents": [{
35598
+ name: "deviceId",
35599
+ form: "single",
35600
+ optional: false
35601
+ }],
35602
+ "pipelineAnalytics.getObjectEvents": [{
35603
+ name: "deviceId",
35604
+ form: "single",
35605
+ optional: false
35606
+ }],
35607
+ "pipelineAnalytics.getRetrainExportUrl": [{
35608
+ name: "deviceIds",
35609
+ form: "array",
35610
+ optional: true
35611
+ }],
35612
+ "pipelineAnalytics.getSensorEvents": [{
35613
+ name: "deviceId",
35614
+ form: "single",
35615
+ optional: false
35616
+ }],
35617
+ "pipelineAnalytics.getTrack": [{
35618
+ name: "deviceId",
35619
+ form: "single",
35620
+ optional: false
35621
+ }],
35622
+ "pipelineAnalytics.getTrainingExportSummary": [{
35623
+ name: "deviceIds",
35624
+ form: "array",
35625
+ optional: true
35626
+ }],
35627
+ "pipelineAnalytics.getTrainingExportUrl": [{
35628
+ name: "deviceIds",
35629
+ form: "array",
35630
+ optional: true
35631
+ }],
35632
+ "pipelineAnalytics.listEventKinds": [{
35633
+ name: "deviceId",
35634
+ form: "single",
35635
+ optional: false
35636
+ }],
35637
+ "pipelineAnalytics.listEventKindsBatch": [{
35638
+ name: "deviceIds",
35639
+ form: "array",
35640
+ optional: false
35641
+ }],
35642
+ "pipelineAnalytics.listOpsLog": [{
35643
+ name: "deviceId",
35644
+ form: "single",
35645
+ optional: true
35646
+ }],
35647
+ "pipelineAnalytics.listRecentTracks": [{
35648
+ name: "deviceIds",
35649
+ form: "array",
35650
+ optional: false
35651
+ }],
35652
+ "pipelineAnalytics.listRetrainStaging": [{
35653
+ name: "deviceIds",
35654
+ form: "array",
35655
+ optional: true
35656
+ }],
35657
+ "pipelineAnalytics.listTracks": [{
35658
+ name: "deviceId",
35659
+ form: "single",
35660
+ optional: false
35661
+ }],
35662
+ "pipelineAnalytics.proposeRetrainAnnotations": [{
35663
+ name: "deviceId",
35664
+ form: "single",
35665
+ optional: false
35666
+ }],
35667
+ "pipelineAnalytics.pruneEventsBefore": [{
35668
+ name: "deviceId",
35669
+ form: "single",
35670
+ optional: false
35671
+ }],
35672
+ "pipelineAnalytics.pruneTracksBefore": [{
35673
+ name: "deviceId",
35674
+ form: "single",
35675
+ optional: false
35676
+ }],
35677
+ "pipelineAnalytics.rebuildObjectEmbeddings": [{
35678
+ name: "deviceId",
35679
+ form: "single",
35680
+ optional: true
35681
+ }],
35682
+ "pipelineAnalytics.restageRetrainTrack": [{
35683
+ name: "deviceId",
35684
+ form: "single",
35685
+ optional: false
35686
+ }],
35687
+ "pipelineAnalytics.saveRetrainAnnotations": [{
35688
+ name: "deviceId",
35689
+ form: "single",
35690
+ optional: false
35691
+ }],
35692
+ "pipelineAnalytics.searchObjectEvents": [{
35693
+ name: "deviceId",
35694
+ form: "single",
35695
+ optional: true
35696
+ }],
35697
+ "pipelineAnalytics.selectRetrainFrames": [{
35698
+ name: "deviceId",
35699
+ form: "single",
35700
+ optional: false
35701
+ }],
35702
+ "pipelineAnalytics.setTrackFlags": [{
35703
+ name: "deviceId",
35704
+ form: "single",
35705
+ optional: false
35706
+ }],
35707
+ "pipelineAnalytics.wipeAllAnalytics": [{
35708
+ name: "deviceId",
35709
+ form: "single",
35710
+ optional: false
35711
+ }],
35712
+ "pipelineExecutor.runPipeline": [{
35713
+ name: "deviceId",
35714
+ form: "single",
35715
+ optional: true
35716
+ }],
35717
+ "pipelineExecutor.runPipelineBatch": [{
35718
+ name: "deviceId",
35719
+ form: "single",
35720
+ optional: true
35721
+ }],
35722
+ "pipelineOrchestrator.assignAudio": [{
35723
+ name: "deviceId",
35724
+ form: "single",
35725
+ optional: false
35726
+ }],
35727
+ "pipelineOrchestrator.assignPipeline": [{
35728
+ name: "deviceId",
35729
+ form: "single",
35730
+ optional: false
35731
+ }],
35732
+ "pipelineOrchestrator.getAudioAssignment": [{
35733
+ name: "deviceId",
35734
+ form: "single",
35735
+ optional: false
35736
+ }],
35737
+ "pipelineOrchestrator.getCameraMetrics": [{
35738
+ name: "deviceId",
35739
+ form: "single",
35740
+ optional: false
35741
+ }],
35742
+ "pipelineOrchestrator.getCameraSettings": [{
35743
+ name: "deviceId",
35744
+ form: "single",
35745
+ optional: false
35746
+ }],
35747
+ "pipelineOrchestrator.getCameraStatus": [{
35748
+ name: "deviceId",
35749
+ form: "single",
35750
+ optional: false
35751
+ }],
35752
+ "pipelineOrchestrator.getCameraStatuses": [{
35753
+ name: "deviceIds",
35754
+ form: "array",
35755
+ optional: true
35756
+ }],
35757
+ "pipelineOrchestrator.getCameraStepOverrides": [{
35758
+ name: "deviceId",
35759
+ form: "single",
35760
+ optional: false
35761
+ }],
35762
+ "pipelineOrchestrator.getCameraSwitches": [{
35763
+ name: "deviceId",
35764
+ form: "single",
35765
+ optional: false
35766
+ }],
35767
+ "pipelineOrchestrator.getPipelineAssignment": [{
35768
+ name: "deviceId",
35769
+ form: "single",
35770
+ optional: false
35771
+ }],
35772
+ "pipelineOrchestrator.getPipelineDevicePin": [{
35773
+ name: "deviceId",
35774
+ form: "single",
35775
+ optional: false
35776
+ }],
35777
+ "pipelineOrchestrator.resolvePipeline": [{
35778
+ name: "deviceId",
35779
+ form: "single",
35780
+ optional: false
35781
+ }],
35782
+ "pipelineOrchestrator.setCameraPipelineForAgent": [{
35783
+ name: "deviceId",
35784
+ form: "single",
35785
+ optional: false
35786
+ }],
35787
+ "pipelineOrchestrator.setCameraStepOverride": [{
35788
+ name: "deviceId",
35789
+ form: "single",
35790
+ optional: false
35791
+ }],
35792
+ "pipelineOrchestrator.setCameraStepToggle": [{
35793
+ name: "deviceId",
35794
+ form: "single",
35795
+ optional: false
35796
+ }],
35797
+ "pipelineOrchestrator.setCameraSwitch": [{
35798
+ name: "deviceId",
35799
+ form: "single",
35800
+ optional: false
35801
+ }],
35802
+ "pipelineOrchestrator.setPipelineDevicePin": [{
35803
+ name: "deviceId",
35804
+ form: "single",
35805
+ optional: false
35806
+ }],
35807
+ "pipelineOrchestrator.unassignAudio": [{
35808
+ name: "deviceId",
35809
+ form: "single",
35810
+ optional: false
35811
+ }],
35812
+ "pipelineOrchestrator.unassignPipeline": [{
35813
+ name: "deviceId",
35814
+ form: "single",
35815
+ optional: false
35816
+ }],
35817
+ "pipelineRunner.attachCamera": [{
35818
+ name: "deviceId",
35819
+ form: "single",
35820
+ optional: false
35821
+ }],
35822
+ "pipelineRunner.detachCamera": [{
35823
+ name: "deviceId",
35824
+ form: "single",
35825
+ optional: false
35826
+ }],
35827
+ "pipelineRunner.getCameraMetrics": [{
35828
+ name: "deviceId",
35829
+ form: "single",
35830
+ optional: false
35831
+ }],
35832
+ "pipelineRunner.reportMotion": [{
35833
+ name: "deviceId",
35834
+ form: "single",
35835
+ optional: false
35836
+ }],
35837
+ "pipelineRunner.runDetailSubtree": [{
35838
+ name: "deviceId",
35839
+ form: "single",
35840
+ optional: false
35841
+ }],
35842
+ "pipelineRunner.runStatelessStep": [{
35843
+ name: "sourceDeviceId",
35844
+ form: "single",
35845
+ optional: false
35846
+ }],
35847
+ "plateGallery.getPlateByTrack": [{
35848
+ name: "deviceId",
35849
+ form: "single",
35850
+ optional: false
35851
+ }],
35852
+ "plateGallery.listPlates": [{
35853
+ name: "deviceId",
35854
+ form: "single",
35855
+ optional: true
35856
+ }],
35857
+ "privacyMask.getOptions": [{
35858
+ name: "deviceId",
35859
+ form: "single",
35860
+ optional: false
35861
+ }],
35862
+ "privacyMask.setAudioEnabled": [{
35863
+ name: "deviceId",
35864
+ form: "single",
35865
+ optional: false
35866
+ }],
35867
+ "privacyMask.setMask": [{
35868
+ name: "deviceId",
35869
+ form: "single",
35870
+ optional: false
35871
+ }],
35872
+ "ptz.continuousMove": [{
35873
+ name: "deviceId",
35874
+ form: "single",
35875
+ optional: false
35876
+ }],
35877
+ "ptz.deletePreset": [{
35878
+ name: "deviceId",
35879
+ form: "single",
35880
+ optional: false
35881
+ }],
35882
+ "ptz.getOptions": [{
35883
+ name: "deviceId",
35884
+ form: "single",
35885
+ optional: false
35886
+ }],
35887
+ "ptz.getPosition": [{
35888
+ name: "deviceId",
35889
+ form: "single",
35890
+ optional: false
35891
+ }],
35892
+ "ptz.getPresets": [{
35893
+ name: "deviceId",
35894
+ form: "single",
35895
+ optional: false
35896
+ }],
35897
+ "ptz.goHome": [{
35898
+ name: "deviceId",
35899
+ form: "single",
35900
+ optional: false
35901
+ }],
35902
+ "ptz.goToPreset": [{
35903
+ name: "deviceId",
35904
+ form: "single",
35905
+ optional: false
35906
+ }],
35907
+ "ptz.move": [{
35908
+ name: "deviceId",
35909
+ form: "single",
35910
+ optional: false
35911
+ }],
35912
+ "ptz.savePreset": [{
35913
+ name: "deviceId",
35914
+ form: "single",
35915
+ optional: false
35916
+ }],
35917
+ "ptz.setAutofocus": [{
35918
+ name: "deviceId",
35919
+ form: "single",
35920
+ optional: false
35921
+ }],
35922
+ "ptz.stop": [{
35923
+ name: "deviceId",
35924
+ form: "single",
35925
+ optional: false
35926
+ }],
35927
+ "ptzAutotrack.getSettings": [{
35928
+ name: "deviceId",
35929
+ form: "single",
35930
+ optional: false
35931
+ }],
35932
+ "ptzAutotrack.getStatus": [{
35933
+ name: "deviceId",
35934
+ form: "single",
35935
+ optional: false
35936
+ }],
35937
+ "ptzAutotrack.setEnabled": [{
35938
+ name: "deviceId",
35939
+ form: "single",
35940
+ optional: false
35941
+ }],
35942
+ "ptzAutotrack.setSettings": [{
35943
+ name: "deviceId",
35944
+ form: "single",
35945
+ optional: false
35946
+ }],
35947
+ "reboot.reboot": [{
35948
+ name: "deviceId",
35949
+ form: "single",
35950
+ optional: false
35951
+ }],
35952
+ "recording.deleteFootprint": [{
35953
+ name: "deviceId",
35954
+ form: "single",
35955
+ optional: false
35956
+ }],
35957
+ "recording.getAvailability": [{
35958
+ name: "deviceId",
35959
+ form: "single",
35960
+ optional: false
35961
+ }],
35962
+ "recording.getDaysWithRecordings": [{
35963
+ name: "deviceId",
35964
+ form: "single",
35965
+ optional: false
35966
+ }],
35967
+ "recording.getDeviceConfig": [{
35968
+ name: "deviceId",
35969
+ form: "single",
35970
+ optional: false
35971
+ }],
35972
+ "recording.getPlaybackManifest": [{
35973
+ name: "deviceId",
35974
+ form: "single",
35975
+ optional: false
35976
+ }],
35977
+ "recording.listOpsLog": [{
35978
+ name: "deviceId",
35979
+ form: "single",
35980
+ optional: true
35981
+ }],
35982
+ "recording.locateSegment": [{
35983
+ name: "deviceId",
35984
+ form: "single",
35985
+ optional: false
35986
+ }],
35987
+ "recording.pruneFootage": [{
35988
+ name: "deviceId",
35989
+ form: "single",
35990
+ optional: false
35991
+ }],
35992
+ "recording.readGopBytes": [{
35993
+ name: "deviceId",
35994
+ form: "single",
35995
+ optional: false
35996
+ }],
35997
+ "recording.readSegmentBytes": [{
35998
+ name: "deviceId",
35999
+ form: "single",
36000
+ optional: false
36001
+ }],
36002
+ "recording.relocateFootage": [{
36003
+ name: "deviceId",
36004
+ form: "single",
36005
+ optional: true
36006
+ }],
36007
+ "recording.renderClip": [{
36008
+ name: "deviceId",
36009
+ form: "single",
36010
+ optional: false
36011
+ }],
36012
+ "recording.renderGif": [{
36013
+ name: "deviceId",
36014
+ form: "single",
36015
+ optional: false
36016
+ }],
36017
+ "recording.rescanStorage": [{
36018
+ name: "deviceId",
36019
+ form: "single",
36020
+ optional: false
36021
+ }],
36022
+ "recording.setDeviceConfig": [{
36023
+ name: "deviceId",
36024
+ form: "single",
36025
+ optional: false
36026
+ }],
36027
+ "recording.startStorageMigrationMove": [{
36028
+ name: "deviceId",
36029
+ form: "single",
36030
+ optional: true
36031
+ }],
36032
+ "recordingExport.createExport": [{
36033
+ name: "deviceId",
36034
+ form: "single",
36035
+ optional: false
36036
+ }],
36037
+ "recordingExport.listExports": [{
36038
+ name: "deviceId",
36039
+ form: "single",
36040
+ optional: true
36041
+ }],
36042
+ "sceneMonitor.captureReference": [{
36043
+ name: "deviceId",
36044
+ form: "single",
36045
+ optional: false
36046
+ }],
36047
+ "sceneMonitor.createScene": [{
36048
+ name: "deviceId",
36049
+ form: "single",
36050
+ optional: false
36051
+ }],
36052
+ "sceneMonitor.deleteReference": [{
36053
+ name: "deviceId",
36054
+ form: "single",
36055
+ optional: false
36056
+ }],
36057
+ "sceneMonitor.deleteScene": [{
36058
+ name: "deviceId",
36059
+ form: "single",
36060
+ optional: false
36061
+ }],
36062
+ "sceneMonitor.listScenes": [{
36063
+ name: "deviceId",
36064
+ form: "single",
36065
+ optional: false
36066
+ }],
36067
+ "sceneMonitor.recheckNow": [{
36068
+ name: "deviceId",
36069
+ form: "single",
36070
+ optional: false
36071
+ }],
36072
+ "sceneMonitor.updateScene": [{
36073
+ name: "deviceId",
36074
+ form: "single",
36075
+ optional: false
36076
+ }],
36077
+ "scriptRunner.run": [{
36078
+ name: "deviceId",
36079
+ form: "single",
36080
+ optional: false
36081
+ }],
36082
+ "scriptRunner.stop": [{
36083
+ name: "deviceId",
36084
+ form: "single",
36085
+ optional: false
36086
+ }],
36087
+ "snapshot.getSnapshot": [{
36088
+ name: "deviceId",
36089
+ form: "single",
36090
+ optional: false
36091
+ }],
36092
+ "snapshot.getSnapshotOverview": [{
36093
+ name: "deviceIds",
36094
+ form: "array",
36095
+ optional: false
36096
+ }],
36097
+ "snapshot.invalidateCache": [{
36098
+ name: "deviceId",
36099
+ form: "single",
36100
+ optional: false
36101
+ }],
36102
+ "streamBroker.acquireEgressTranscode": [{
36103
+ name: "deviceId",
36104
+ form: "single",
36105
+ optional: false
36106
+ }],
36107
+ "streamBroker.assignProfile": [{
36108
+ name: "deviceId",
36109
+ form: "single",
36110
+ optional: false
36111
+ }],
36112
+ "streamBroker.getDeviceAudioMute": [{
36113
+ name: "deviceId",
36114
+ form: "single",
36115
+ optional: false
36116
+ }],
36117
+ "streamBroker.getStreamWithCodec": [{
36118
+ name: "deviceId",
36119
+ form: "single",
36120
+ optional: false
36121
+ }],
36122
+ "streamBroker.produceEventMedia": [{
36123
+ name: "deviceId",
36124
+ form: "single",
36125
+ optional: false
36126
+ }],
36127
+ "streamBroker.publishCameraStream": [{
36128
+ name: "deviceId",
36129
+ form: "single",
36130
+ optional: false
36131
+ }],
36132
+ "streamBroker.renderPreBufferClip": [{
36133
+ name: "deviceId",
36134
+ form: "single",
36135
+ optional: false
36136
+ }],
36137
+ "streamBroker.restartProfile": [{
36138
+ name: "deviceId",
36139
+ form: "single",
36140
+ optional: false
36141
+ }],
36142
+ "streamBroker.retractCameraStream": [{
36143
+ name: "deviceId",
36144
+ form: "single",
36145
+ optional: false
36146
+ }],
36147
+ "streamBroker.setDeviceAudioMute": [{
36148
+ name: "deviceId",
36149
+ form: "single",
36150
+ optional: false
36151
+ }],
36152
+ "streamBroker.unassignProfile": [{
36153
+ name: "deviceId",
36154
+ form: "single",
36155
+ optional: false
36156
+ }],
36157
+ "streamCatalog.getCatalog": [{
36158
+ name: "deviceId",
36159
+ form: "single",
36160
+ optional: false
36161
+ }],
36162
+ "streamParams.getConfigSchema": [{
36163
+ name: "deviceId",
36164
+ form: "single",
36165
+ optional: false
36166
+ }],
36167
+ "streamParams.getOptions": [{
36168
+ name: "deviceId",
36169
+ form: "single",
36170
+ optional: false
36171
+ }],
36172
+ "streamParams.setProfile": [{
36173
+ name: "deviceId",
36174
+ form: "single",
36175
+ optional: false
36176
+ }],
36177
+ "switch.setState": [{
36178
+ name: "deviceId",
36179
+ form: "single",
36180
+ optional: false
36181
+ }],
36182
+ "vacuumControl.locate": [{
36183
+ name: "deviceId",
36184
+ form: "single",
36185
+ optional: false
36186
+ }],
36187
+ "vacuumControl.pause": [{
36188
+ name: "deviceId",
36189
+ form: "single",
36190
+ optional: false
36191
+ }],
36192
+ "vacuumControl.returnToBase": [{
36193
+ name: "deviceId",
36194
+ form: "single",
36195
+ optional: false
36196
+ }],
36197
+ "vacuumControl.setFanSpeed": [{
36198
+ name: "deviceId",
36199
+ form: "single",
36200
+ optional: false
36201
+ }],
36202
+ "vacuumControl.start": [{
36203
+ name: "deviceId",
36204
+ form: "single",
36205
+ optional: false
36206
+ }],
36207
+ "vacuumControl.stop": [{
36208
+ name: "deviceId",
36209
+ form: "single",
36210
+ optional: false
36211
+ }],
36212
+ "valve.close": [{
36213
+ name: "deviceId",
36214
+ form: "single",
36215
+ optional: false
36216
+ }],
36217
+ "valve.open": [{
36218
+ name: "deviceId",
36219
+ form: "single",
36220
+ optional: false
36221
+ }],
36222
+ "valve.setPosition": [{
36223
+ name: "deviceId",
36224
+ form: "single",
36225
+ optional: false
36226
+ }],
36227
+ "valve.stop": [{
36228
+ name: "deviceId",
36229
+ form: "single",
36230
+ optional: false
36231
+ }],
36232
+ "videoclips.getClipPlayback": [{
36233
+ name: "deviceId",
36234
+ form: "single",
36235
+ optional: false
36236
+ }],
36237
+ "videoclips.listClips": [{
36238
+ name: "deviceId",
36239
+ form: "single",
36240
+ optional: false
36241
+ }],
36242
+ "waterHeater.setAway": [{
36243
+ name: "deviceId",
36244
+ form: "single",
36245
+ optional: false
36246
+ }],
36247
+ "waterHeater.setOperationMode": [{
36248
+ name: "deviceId",
36249
+ form: "single",
36250
+ optional: false
36251
+ }],
36252
+ "waterHeater.setTargetTemp": [{
36253
+ name: "deviceId",
36254
+ form: "single",
36255
+ optional: false
36256
+ }],
36257
+ "webrtcSession.addIceCandidate": [{
36258
+ name: "deviceId",
36259
+ form: "single",
36260
+ optional: false
36261
+ }],
36262
+ "webrtcSession.closeSession": [{
36263
+ name: "deviceId",
36264
+ form: "single",
36265
+ optional: false
36266
+ }],
36267
+ "webrtcSession.createSession": [{
36268
+ name: "deviceId",
36269
+ form: "single",
36270
+ optional: false
36271
+ }],
36272
+ "webrtcSession.getIceCandidates": [{
36273
+ name: "deviceId",
36274
+ form: "single",
36275
+ optional: false
36276
+ }],
36277
+ "webrtcSession.getSessionState": [{
36278
+ name: "deviceId",
36279
+ form: "single",
36280
+ optional: false
36281
+ }],
36282
+ "webrtcSession.handleAnswer": [{
36283
+ name: "deviceId",
36284
+ form: "single",
36285
+ optional: false
36286
+ }],
36287
+ "webrtcSession.handleOffer": [{
36288
+ name: "deviceId",
36289
+ form: "single",
36290
+ optional: false
36291
+ }],
36292
+ "webrtcSession.hasAdaptiveBitrate": [{
36293
+ name: "deviceId",
36294
+ form: "single",
36295
+ optional: false
36296
+ }],
36297
+ "webrtcSession.listStreams": [{
36298
+ name: "deviceId",
36299
+ form: "single",
36300
+ optional: false
36301
+ }],
36302
+ "zoneAnalytics.getCameraHistory": [{
36303
+ name: "deviceId",
36304
+ form: "single",
36305
+ optional: false
36306
+ }],
36307
+ "zoneAnalytics.getCurrentSnapshot": [{
36308
+ name: "deviceId",
36309
+ form: "single",
36310
+ optional: false
36311
+ }],
36312
+ "zoneAnalytics.getUnzonedHistory": [{
36313
+ name: "deviceId",
36314
+ form: "single",
36315
+ optional: false
36316
+ }],
36317
+ "zoneAnalytics.getZoneHistory": [{
36318
+ name: "deviceId",
36319
+ form: "single",
36320
+ optional: false
36321
+ }],
36322
+ "zoneRules.listRules": [{
36323
+ name: "deviceId",
36324
+ form: "single",
36325
+ optional: false
36326
+ }],
36327
+ "zoneRules.setRules": [{
36328
+ name: "deviceId",
36329
+ form: "single",
36330
+ optional: false
36331
+ }],
36332
+ "zones.addZone": [{
36333
+ name: "deviceId",
36334
+ form: "single",
36335
+ optional: false
36336
+ }],
36337
+ "zones.listZones": [{
36338
+ name: "deviceId",
36339
+ form: "single",
36340
+ optional: false
36341
+ }],
36342
+ "zones.removeZone": [{
36343
+ name: "deviceId",
36344
+ form: "single",
36345
+ optional: false
36346
+ }],
36347
+ "zones.updateZone": [{
36348
+ name: "deviceId",
36349
+ form: "single",
36350
+ optional: false
36351
+ }]
36352
+ });
34443
36353
  Object.freeze({
34444
36354
  "broker": "broker",
34445
36355
  "device-export": "device-export",
@@ -35078,4 +36988,4 @@ function bestLocationMatch(externalName, existing, threshold = .8) {
35078
36988
  return best;
35079
36989
  }
35080
36990
  //#endregion
35081
- export { tamperCapability as $, eventEmitterCapability as A, motionCapability as B, connectivityCapability as C, url as Ct, deviceAdoptionCapability as D, coverCapability as E, humiditySensorCapability as F, oauthIntegrationCapability as G, notificationOutputCapability as H, imageCapability as I, presenceCapability as J, powerMeterCapability as K, lawnMowerControlCapability as L, floodCapability as M, gasCapability as N, deviceExportCapability as O, humidifierCapability as P, switchCapability as Q, lockControlCapability as R, colorCapability as S, unknown as St, controlCapability as T, notifierCapability as U, normalizeUnit as V, numericSensorCapability as W, scriptRunnerCapability as X, pressureSensorCapability as Y, smokeCapability as Z, brokerCapability as _, number as _t, EnumSensorDateTimeFormatSchema as a, waterHeaterCapability as at, carbonMonoxideCapability as b, string as bt, addonRoutesCapability as c, BaseAddon as ct, ambientLightSensorCapability as d, DeviceType as dt, temperatureSensorCapability as et, automationControlCapability as f, createEvent as ft, brightnessCapability as g, literal as gt, binaryCapability as h, discriminatedUnion as ht, CameraSwitchIdSchema as i, vibrationCapability as it, fanControlCapability as j, enumSensorCapability as k, airQualitySensorCapability as l, DeviceFeature as lt, bestLocationMatch as m, array as mt, BaseDeviceProvider as n, vacuumControlCapability as nt, TargetSchema as o, weatherCapability as ot, batteryCapability as p, _enum as pt, prepareNotification as q, COCO_TO_MACRO as r, valveCapability as rt, accessoriesCapability as s, errMsg as st, BaseDevice as t, updateCapability as tt, alarmPanelCapability as u, DeviceRole as ut, buildAddonRouteProvider as v, object as vt, contactCapability as w, EventCategory as wt, climateControlCapability as x, union as xt, buttonCapability as y, record as yt, mediaPlayerCapability as z };
36991
+ export { pressureSensorCapability as $, coverCapability as A, imageCapability as B, buttonCapability as C, record as Ct, connectivityCapability as D, url as Dt, colorCapability as E, unknown as Et, fanControlCapability as F, normalizeUnit as G, lockControlCapability as H, floodCapability as I, numericSensorCapability as J, notificationOutputCapability as K, gasCapability as L, deviceExportCapability as M, enumSensorCapability as N, contactCapability as O, EventCategory as Ot, eventEmitterCapability as P, presenceCapability as Q, humidifierCapability as R, buildAddonRouteProvider as S, object as St, climateControlCapability as T, union as Tt, mediaPlayerCapability as U, lawnMowerControlCapability as V, motionCapability as W, powerMeterCapability as X, oauthIntegrationCapability as Y, prepareNotification as Z, batteryCapability as _, _enum as _t, CameraSwitchIdSchema as a, updateCapability as at, brightnessCapability as b, literal as bt, HvacModeSchema as c, vibrationCapability as ct, accessoriesCapability as d, errMsg as dt, scriptRunnerCapability as et, addonRoutesCapability as f, BaseAddon as ft, automationControlCapability as g, createEvent as gt, ambientLightSensorCapability as h, DeviceType as ht, COCO_TO_MACRO as i, temperatureSensorCapability as it, deviceAdoptionCapability as j, controlCapability as k, MediaPlayerRepeatSchema as l, waterHeaterCapability as lt, alarmPanelCapability as m, DeviceRole as mt, BaseDevice as n, switchCapability as nt, EnumSensorDateTimeFormatSchema as o, vacuumControlCapability as ot, airQualitySensorCapability as p, DeviceFeature as pt, notifierCapability as q, BaseDeviceProvider as r, tamperCapability as rt, FanDirectionSchema as s, valveCapability as st, AlarmArmModeSchema as t, smokeCapability as tt, TargetSchema as u, weatherCapability as ut, bestLocationMatch as v, array as vt, carbonMonoxideCapability as w, string as wt, brokerCapability as x, number as xt, binaryCapability as y, discriminatedUnion as yt, humiditySensorCapability as z };