@camstack/addon-provider-homeassistant 1.2.152 → 1.2.154
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.js +164 -10
- package/dist/addon.mjs +164 -10
- package/dist/{dist-BITMr6s5.mjs → dist-CvzpCuzm.mjs} +787 -121
- package/dist/{dist-nbfaHTXG.js → dist-DLQgcqQT.js} +792 -120
- package/dist/ha-export/ha-export.addon.js +1 -1
- package/dist/ha-export/ha-export.addon.mjs +1 -1
- package/package.json +4 -3
|
@@ -7480,7 +7480,7 @@ function errMsg(err) {
|
|
|
7480
7480
|
return String(err);
|
|
7481
7481
|
}
|
|
7482
7482
|
//#endregion
|
|
7483
|
-
//#region ../types/dist/composition-
|
|
7483
|
+
//#region ../types/dist/composition-Bzr7GwgP.mjs
|
|
7484
7484
|
/**
|
|
7485
7485
|
* The ffmpeg build every CamStack node downloads, per platform and arch.
|
|
7486
7486
|
*
|
|
@@ -7568,6 +7568,8 @@ var SOURCE_CAP_ACTIVE_FIELD = {
|
|
|
7568
7568
|
vibration: "detected",
|
|
7569
7569
|
tamper: "tampered"
|
|
7570
7570
|
};
|
|
7571
|
+
/** Cap names whose presence in a device's bindings qualify it as a source. */
|
|
7572
|
+
var SOURCE_CAPS = Object.keys(SOURCE_CAP_ACTIVE_FIELD);
|
|
7571
7573
|
/**
|
|
7572
7574
|
* Error types for the safe expression engine. Two distinct classes so callers
|
|
7573
7575
|
* can tell a compile-time (grammar) failure from a runtime (evaluation)
|
|
@@ -12230,7 +12232,7 @@ var BrokerStatusEnum = _enum([
|
|
|
12230
12232
|
"unreachable",
|
|
12231
12233
|
"error"
|
|
12232
12234
|
]);
|
|
12233
|
-
var BrokerInfoSchema
|
|
12235
|
+
var BrokerInfoSchema = object({
|
|
12234
12236
|
/** Stable broker id. Persisted; survives addon restarts. */
|
|
12235
12237
|
id: string(),
|
|
12236
12238
|
/** Addon id of the provider that OWNS this broker.
|
|
@@ -12373,8 +12375,8 @@ var brokerCapability = {
|
|
|
12373
12375
|
kind: "poll"
|
|
12374
12376
|
},
|
|
12375
12377
|
methods: {
|
|
12376
|
-
list: method(ListInputSchema, array(BrokerInfoSchema
|
|
12377
|
-
get: method(GetInputSchema, BrokerInfoSchema
|
|
12378
|
+
list: method(ListInputSchema, array(BrokerInfoSchema)),
|
|
12379
|
+
get: method(GetInputSchema, BrokerInfoSchema.nullable()),
|
|
12378
12380
|
/** Enumerate which addon provides which broker kind(s) for the
|
|
12379
12381
|
* unified create picker. The auto-mount fans this array across
|
|
12380
12382
|
* every registered `broker` provider (array-output method), so the
|
|
@@ -17823,7 +17825,7 @@ var BrokerStatusSchema$1 = _enum([
|
|
|
17823
17825
|
"unreachable",
|
|
17824
17826
|
"tls-error"
|
|
17825
17827
|
]);
|
|
17826
|
-
var BrokerInfoSchema = object({
|
|
17828
|
+
var BrokerInfoSchema$1 = object({
|
|
17827
17829
|
id: string(),
|
|
17828
17830
|
name: string(),
|
|
17829
17831
|
url: string(),
|
|
@@ -17886,7 +17888,7 @@ var StatusSchema = object({
|
|
|
17886
17888
|
brokerCount: number(),
|
|
17887
17889
|
embeddedRunning: boolean()
|
|
17888
17890
|
});
|
|
17889
|
-
method(_void(), array(BrokerInfoSchema)), method(IdInputSchema, BrokerConnectionDetailsSchema, { auth: "admin" }), method(AddBrokerInputSchema, AddBrokerResultSchema, {
|
|
17891
|
+
method(_void(), array(BrokerInfoSchema$1)), method(IdInputSchema, BrokerConnectionDetailsSchema, { auth: "admin" }), method(AddBrokerInputSchema, AddBrokerResultSchema, {
|
|
17890
17892
|
kind: "mutation",
|
|
17891
17893
|
auth: "admin"
|
|
17892
17894
|
}), method(IdInputSchema, _void(), {
|
|
@@ -20114,78 +20116,16 @@ var NcRuleInputSchema = object({
|
|
|
20114
20116
|
*/
|
|
20115
20117
|
confirm: NcConfirmSchema.optional(),
|
|
20116
20118
|
/**
|
|
20117
|
-
*
|
|
20118
|
-
*
|
|
20119
|
-
*
|
|
20120
|
-
*
|
|
20121
|
-
*
|
|
20122
|
-
*
|
|
20123
|
-
*
|
|
20124
|
-
*
|
|
20125
|
-
*
|
|
20126
|
-
* Only two honest answers exist, and this flag picks between them. It has
|
|
20127
|
-
* effect ONLY on a rule that declares a recognition scope
|
|
20128
|
-
* ({@link NcConditions.identities} or {@link NcConditions.plates}) — on any
|
|
20129
|
-
* other rule there is nothing to wait for and the flag is inert.
|
|
20130
|
-
*
|
|
20131
|
-
* | value | what happens |
|
|
20132
|
-
* | --- | --- |
|
|
20133
|
-
* | `true` | the rule stops firing on the object event and fires at TRACK CLOSE instead, once, with the name — later, and complete |
|
|
20134
|
-
* | absent / `false` | it fires at once WITHOUT the name, and if recognition lands before the track closes a SECOND, "…is Gianluca" notification follows (one per track, per rule, per target) |
|
|
20135
|
-
*
|
|
20136
|
-
* `.optional()` and deliberately NOT `.default()`: a Zod default does not run
|
|
20137
|
-
* on the addon cap path, and absent has to keep meaning exactly what every
|
|
20138
|
-
* rule authored before this field meant.
|
|
20139
|
-
*
|
|
20140
|
-
* The cost of `true` is stated here because the editor states it too: a rule
|
|
20141
|
-
* that waits also inherits track-close SEMANTICS — its `zones` condition
|
|
20142
|
-
* tests every zone the track visited and a `crossing` condition can no longer
|
|
20143
|
-
* be satisfied, because a closed track carries no crossing.
|
|
20144
|
-
*/
|
|
20145
|
-
waitForEnhancement: boolean().optional(),
|
|
20146
|
-
/**
|
|
20147
|
-
* GROUP a burst of subjects into ONE notification that grows.
|
|
20148
|
-
*
|
|
20149
|
-
* Seconds of quiet after the last matching subject before the burst is
|
|
20150
|
-
* considered over. While it is open, the first subject enqueues immediately —
|
|
20151
|
-
* **exactly as today, with no added latency** — and every real growth (a new
|
|
20152
|
-
* subject, or a name confirmed on one already in it) REPLACES that
|
|
20153
|
-
* notification with an updated one naming everybody. The push carries the
|
|
20154
|
-
* group's own coalescing tag, so the phone replaces rather than stacks.
|
|
20155
|
-
*
|
|
20156
|
-
* `0` / absent = off, and off is today's behaviour byte for byte.
|
|
20157
|
-
*
|
|
20158
|
-
* ### Why an idle cutoff and not a window
|
|
20159
|
-
*
|
|
20160
|
-
* The measured seven-person arrival on device 590 spans 110 s with every
|
|
20161
|
-
* internal gap under 30 s. A 12 s fixed window cuts it into three groups; an
|
|
20162
|
-
* idle cutoff holds it as one and ends it when the arrival actually ends.
|
|
20163
|
-
* 30 s is a widely shipped value for the same decision.
|
|
20164
|
-
*
|
|
20165
|
-
* ### What it replaces
|
|
20166
|
-
*
|
|
20167
|
-
* The blind cooldown, which collapses a burst by DISCARDING it. Measured on
|
|
20168
|
-
* device 615 / *Persona su Uscio* over six days: 116 qualifying tracks → 74
|
|
20169
|
-
* notifications, **44 (37.9%) suppressed outright**, 23 of them overlapping a
|
|
20170
|
-
* track that did fire and 7 carrying a confirmed identity nobody heard about.
|
|
20171
|
-
* A group collapses the same volume by MERGING, so the cooldown becomes a
|
|
20172
|
-
* budget over GROUPS — which is what it always meant — and a growth is never
|
|
20173
|
-
* throttled by the window its own first member spent.
|
|
20174
|
-
*
|
|
20175
|
-
* ### Interaction with {@link waitForEnhancement}
|
|
20176
|
-
*
|
|
20177
|
-
* They compose, and the order matters. `waitForEnhancement` defers the rule to
|
|
20178
|
-
* TRACK CLOSE, so with both set the group is opened by the first member to
|
|
20179
|
-
* CLOSE — already carrying its name — and grows as later members close. That
|
|
20180
|
-
* is later, and complete. With grouping alone the group opens on the first
|
|
20181
|
-
* object event and picks up names as they are confirmed, through the growth
|
|
20182
|
-
* path. Neither combination fires twice for one subject.
|
|
20183
|
-
*
|
|
20184
|
-
* `.optional()` and deliberately NOT `.default()`: a Zod default does not run
|
|
20185
|
-
* on the addon cap path, so absent must keep meaning what it meant before this
|
|
20186
|
-
* field existed.
|
|
20119
|
+
* IMMEDIATE GROUPED (D692): the first matching subject opens a window of this many
|
|
20120
|
+
* seconds; the rule sends ONE message when the window closes — early, once every
|
|
20121
|
+
* subject in it is final, never before {@link NC_GROUPING_MIN_SEC} — naming everybody
|
|
20122
|
+
* the rule matched, with one mosaic tile per subject.
|
|
20123
|
+
* Absent = plain immediate (one message per track, at the first match).
|
|
20124
|
+
* Only an `immediate` DETECTION rule may carry it (`ruleGroupingApplies`, enforced on
|
|
20125
|
+
* save by the hub's grouping guard). `.optional()`, never `.default()`: the addon cap
|
|
20126
|
+
* path does not run Zod defaults.
|
|
20187
20127
|
*/
|
|
20188
|
-
|
|
20128
|
+
groupingSec: number().int().min(5).max(60).optional()
|
|
20189
20129
|
});
|
|
20190
20130
|
/**
|
|
20191
20131
|
* Partial patch for `updateRule` — any subset of the input fields, plus the
|
|
@@ -20233,9 +20173,10 @@ var NcRuleClearableKeySchema = _enum([
|
|
|
20233
20173
|
"targetUsers",
|
|
20234
20174
|
"snoozeOptions",
|
|
20235
20175
|
"snoozeAllowGlobal",
|
|
20236
|
-
"waitForEnhancement",
|
|
20237
20176
|
"actions",
|
|
20238
20177
|
"confirm",
|
|
20178
|
+
"groupingSec",
|
|
20179
|
+
"waitForEnhancement",
|
|
20239
20180
|
"groupIdleSec"
|
|
20240
20181
|
]);
|
|
20241
20182
|
var NcRuleUpdateInputSchema = object({
|
|
@@ -20257,9 +20198,25 @@ var NcRuleSchema = NcRuleInputSchema.extend({
|
|
|
20257
20198
|
*/
|
|
20258
20199
|
disabledTargetIds: array(string()).default([])
|
|
20259
20200
|
});
|
|
20201
|
+
/**
|
|
20202
|
+
* The state-summary SECTIONS (D647 / D698): the D637 kind groups that report a
|
|
20203
|
+
* still-true state. `backups-exports` and `alarm` are not sections — a completed
|
|
20204
|
+
* job is not an open state, and the alarm stays instant.
|
|
20205
|
+
*/
|
|
20206
|
+
var NcStateSummarySectionIdSchema = _enum([
|
|
20207
|
+
"device-state",
|
|
20208
|
+
"streams",
|
|
20209
|
+
"battery",
|
|
20210
|
+
"consumables",
|
|
20211
|
+
"tanks",
|
|
20212
|
+
"detection-blind",
|
|
20213
|
+
"nodes",
|
|
20214
|
+
"addons",
|
|
20215
|
+
"updates"
|
|
20216
|
+
]);
|
|
20260
20217
|
/** One section of a previewed state summary. `unavailable` = its state could not be read. */
|
|
20261
20218
|
var NcStateSummaryPreviewSectionSchema = object({
|
|
20262
|
-
id:
|
|
20219
|
+
id: NcStateSummarySectionIdSchema,
|
|
20263
20220
|
status: _enum(["read", "unavailable"]),
|
|
20264
20221
|
items: number().int().nonnegative(),
|
|
20265
20222
|
reason: string().optional()
|
|
@@ -20269,7 +20226,7 @@ var NcStateSummaryPreviewSectionSchema = object({
|
|
|
20269
20226
|
* a `rule` split (no `section`), one section's on a `section` split.
|
|
20270
20227
|
*/
|
|
20271
20228
|
var NcStateSummaryPreviewRowSchema = object({
|
|
20272
|
-
section:
|
|
20229
|
+
section: NcStateSummarySectionIdSchema.optional(),
|
|
20273
20230
|
/** The section's name on a per-section row; every reported section's, joined, on a combined one. */
|
|
20274
20231
|
title: string(),
|
|
20275
20232
|
text: string(),
|
|
@@ -20730,14 +20687,52 @@ var NcAlarmNonBlockingEditSchema = object({
|
|
|
20730
20687
|
nonBlocking: boolean()
|
|
20731
20688
|
});
|
|
20732
20689
|
/**
|
|
20690
|
+
* Controllable openings: opt IN to blocking (default is do not block). Contacts
|
|
20691
|
+
* keep using {@link NcAlarmNonBlockingEditSchema}.
|
|
20692
|
+
*/
|
|
20693
|
+
var NcAlarmBlockingEditSchema = object({
|
|
20694
|
+
mode: AlarmArmModeSchema,
|
|
20695
|
+
deviceId: number().int().positive(),
|
|
20696
|
+
/** true = on the list (blocks when open); false = off the list (default). */
|
|
20697
|
+
blocking: boolean()
|
|
20698
|
+
});
|
|
20699
|
+
/**
|
|
20700
|
+
* Controllable openings: opt OUT of secure-on-arm (default is secure ON —
|
|
20701
|
+
* close / lock / turn off when this mode arms).
|
|
20702
|
+
*/
|
|
20703
|
+
var NcAlarmSecureOnArmEditSchema = object({
|
|
20704
|
+
mode: AlarmArmModeSchema,
|
|
20705
|
+
deviceId: number().int().positive(),
|
|
20706
|
+
/** true = secure on arm (default); false = do not actuate on arm. */
|
|
20707
|
+
secureOnArm: boolean()
|
|
20708
|
+
});
|
|
20709
|
+
/**
|
|
20710
|
+
* One arm mode's device-id list (non-blocking, blocking, or secure-on-arm-off).
|
|
20711
|
+
*/
|
|
20712
|
+
var NcAlarmModeDeviceListSchema = object({
|
|
20713
|
+
mode: AlarmArmModeSchema,
|
|
20714
|
+
deviceIds: array(number().int()).max(200)
|
|
20715
|
+
});
|
|
20716
|
+
/**
|
|
20717
|
+
* One arm mode's non-blocking list: devices that may be open when that mode
|
|
20718
|
+
* arms, without the arm being refused.
|
|
20719
|
+
*/
|
|
20720
|
+
var NcAlarmNonBlockingSchema = NcAlarmModeDeviceListSchema;
|
|
20721
|
+
/** Controllable devices that DO block when open (opt-in; default empty). */
|
|
20722
|
+
var NcAlarmBlockingSchema = NcAlarmModeDeviceListSchema;
|
|
20723
|
+
/**
|
|
20724
|
+
* Controllable devices that do NOT secure on arm (opt-out; default empty =
|
|
20725
|
+
* every controllable secures).
|
|
20726
|
+
*/
|
|
20727
|
+
var NcAlarmSecureOnArmOffSchema = NcAlarmModeDeviceListSchema;
|
|
20728
|
+
/**
|
|
20733
20729
|
* The per-mode lists, at most one per mode. Two lists for one mode have no
|
|
20734
20730
|
* meaning a reader could agree on (union? the last one?), so they are refused
|
|
20735
20731
|
* at the boundary rather than interpreted.
|
|
20736
20732
|
*/
|
|
20737
|
-
var NcAlarmNonBlockingListSchema = array(
|
|
20738
|
-
|
|
20739
|
-
|
|
20740
|
-
})).max(8).refine(uniqueModes, { message: "nonBlocking: at most one list per arm mode" });
|
|
20733
|
+
var NcAlarmNonBlockingListSchema = array(NcAlarmNonBlockingSchema).max(8).refine(uniqueModes, { message: "nonBlocking: at most one list per arm mode" });
|
|
20734
|
+
var NcAlarmBlockingListSchema = array(NcAlarmBlockingSchema).max(8).refine(uniqueModes, { message: "blocking: at most one list per arm mode" });
|
|
20735
|
+
var NcAlarmSecureOnArmOffListSchema = array(NcAlarmSecureOnArmOffSchema).max(8).refine(uniqueModes, { message: "secureOnArmOff: at most one list per arm mode" });
|
|
20741
20736
|
/**
|
|
20742
20737
|
* The three durations — global, and per mode since D697 — the panel's state
|
|
20743
20738
|
* machine runs on, who hears about its transitions, and which openings each mode tolerates.
|
|
@@ -20780,9 +20775,23 @@ var NcAlarmSettingsSchema = object({
|
|
|
20780
20775
|
* arm (a window left ajar for the cat under `home`, say). At most one entry
|
|
20781
20776
|
* per mode is meaningful. Defaulted to `[]` so a blob stored before D630
|
|
20782
20777
|
* parses as "every opening blocks" — the behaviour it was written under.
|
|
20778
|
+
* Contacts use this list; controllable openings use {@link blocking} instead
|
|
20779
|
+
* (default: do not block).
|
|
20783
20780
|
*/
|
|
20784
20781
|
nonBlocking: NcAlarmNonBlockingListSchema.default([]),
|
|
20785
20782
|
/**
|
|
20783
|
+
* Per arm mode, controllable openings that DO refuse the arm when open.
|
|
20784
|
+
* Default `[]` = none block (secure-on-arm closes them instead). Absent on a
|
|
20785
|
+
* blob older than this field — read as empty.
|
|
20786
|
+
*/
|
|
20787
|
+
blocking: NcAlarmBlockingListSchema.default([]),
|
|
20788
|
+
/**
|
|
20789
|
+
* Per arm mode, controllable openings that must NOT be actuated on arm.
|
|
20790
|
+
* Default `[]` = every controllable secures (close / lock / off). Absent on
|
|
20791
|
+
* an older blob — read as empty (secure ON).
|
|
20792
|
+
*/
|
|
20793
|
+
secureOnArmOff: NcAlarmSecureOnArmOffListSchema.default([]),
|
|
20794
|
+
/**
|
|
20786
20795
|
* Per arm mode, the delays that mode OVERRIDES (D697). A mode with no entry, or an entry
|
|
20787
20796
|
* without a field, uses the global value above — so `[]`, the default, is exactly the
|
|
20788
20797
|
* behaviour of a blob stored before this field existed. Read through `resolveModeDelays`.
|
|
@@ -20792,7 +20801,7 @@ var NcAlarmSettingsSchema = object({
|
|
|
20792
20801
|
/**
|
|
20793
20802
|
* Every field optional — a tab edits one control at a time.
|
|
20794
20803
|
*
|
|
20795
|
-
*
|
|
20804
|
+
* List fields and `modeDelays` are re-declared WITHOUT their defaults:
|
|
20796
20805
|
* `.partial()` does not remove an inner `.default()`, so a patch that never
|
|
20797
20806
|
* named the field would parse to `[]` and wipe every mode's list on an
|
|
20798
20807
|
* unrelated edit (the same trap {@link NcRulePatchSchema} documents). Here
|
|
@@ -20800,11 +20809,15 @@ var NcAlarmSettingsSchema = object({
|
|
|
20800
20809
|
*/
|
|
20801
20810
|
var NcAlarmSettingsPatchSchema = NcAlarmSettingsSchema.extend({
|
|
20802
20811
|
nonBlocking: NcAlarmNonBlockingListSchema,
|
|
20812
|
+
blocking: NcAlarmBlockingListSchema,
|
|
20813
|
+
secureOnArmOff: NcAlarmSecureOnArmOffListSchema,
|
|
20803
20814
|
/** Per-mode, per-field edits — NOT the whole list (see NcAlarmModeDelaysEditSchema). */
|
|
20804
20815
|
modeDelays: NcAlarmModeDelaysEditListSchema,
|
|
20805
20816
|
/** ONE membership change; the panel applies it to the list it holds at its turn. */
|
|
20806
|
-
nonBlockingEdit: NcAlarmNonBlockingEditSchema
|
|
20807
|
-
|
|
20817
|
+
nonBlockingEdit: NcAlarmNonBlockingEditSchema,
|
|
20818
|
+
blockingEdit: NcAlarmBlockingEditSchema,
|
|
20819
|
+
secureOnArmEdit: NcAlarmSecureOnArmEditSchema
|
|
20820
|
+
}).partial().refine((p) => p.nonBlocking === void 0 || p.nonBlockingEdit === void 0, { message: "nonBlocking and nonBlockingEdit are exclusive — send the whole lists or one edit" }).refine((p) => p.blocking === void 0 || p.blockingEdit === void 0, { message: "blocking and blockingEdit are exclusive — send the whole lists or one edit" }).refine((p) => p.secureOnArmOff === void 0 || p.secureOnArmEdit === void 0, { message: "secureOnArmOff and secureOnArmEdit are exclusive — send the whole lists or one edit" });
|
|
20808
20821
|
/**
|
|
20809
20822
|
* What one arm mode actually arms, DERIVED from the enabled rules gated on it.
|
|
20810
20823
|
* Never authored, never stored — see `alarm-mode-coverage.ts` for why a stored
|
|
@@ -20919,7 +20932,13 @@ var NcAlarmSensorStateSchema = object({
|
|
|
20919
20932
|
/** Why `unknown`: the read failed, or the slice holds no word its cap defines (a placeholder included). */
|
|
20920
20933
|
unknownWhy: _enum(["read-failed", "unknown-word"]).nullable(),
|
|
20921
20934
|
/** The device manager's liveness as the centre mirrors it; null = not known. */
|
|
20922
|
-
online: boolean().nullable()
|
|
20935
|
+
online: boolean().nullable(),
|
|
20936
|
+
/**
|
|
20937
|
+
* True when the opening is a cover / lock / switch — the table shows the
|
|
20938
|
+
* Secure-on-arm switch and uses the controllable defaults. False for contacts
|
|
20939
|
+
* and for non-openings. Defaulted so an older hub answer still parses.
|
|
20940
|
+
*/
|
|
20941
|
+
controllable: boolean().default(false)
|
|
20923
20942
|
});
|
|
20924
20943
|
var NcAlarmSensorsInputSchema = object({ deviceIds: array(number().int().positive()).max(500) });
|
|
20925
20944
|
var NcAlarmSensorsSchema = object({
|
|
@@ -22802,6 +22821,7 @@ var KeyEventSchema = object({
|
|
|
22802
22821
|
bestEventId: string(),
|
|
22803
22822
|
/** Track lifetime in ms (lastSeen - firstSeen). */
|
|
22804
22823
|
windowMs: number().optional(),
|
|
22824
|
+
audioLabels: array(TrackAudioLabelSchema).readonly().optional(),
|
|
22805
22825
|
...TrackFlagFields,
|
|
22806
22826
|
...TrackRetrainFields
|
|
22807
22827
|
});
|
|
@@ -29437,6 +29457,74 @@ var buttonCapability = {
|
|
|
29437
29457
|
}) }
|
|
29438
29458
|
};
|
|
29439
29459
|
/**
|
|
29460
|
+
* `calendar-source` — collection cap exposing per-provider calendars and
|
|
29461
|
+
* their events. Every addon that contributes calendars (Home Assistant,
|
|
29462
|
+
* a future Google Calendar addon, …) registers a provider here. The hub
|
|
29463
|
+
* singleton `calendars` walks the collection and merges the answers.
|
|
29464
|
+
*
|
|
29465
|
+
* Mirrors `addon-pages-source`: the public listing is a different shape
|
|
29466
|
+
* (source-stamped ids) and lives on the aggregator.
|
|
29467
|
+
*/
|
|
29468
|
+
var CalendarSourceKindSchema = _enum(["ha", "addon"]);
|
|
29469
|
+
var CalendarInfoSchema = object({
|
|
29470
|
+
/** Provider-local id (e.g. HA `calendar.family`). The aggregator prefixes. */
|
|
29471
|
+
id: string().min(1),
|
|
29472
|
+
name: string().min(1),
|
|
29473
|
+
source: CalendarSourceKindSchema,
|
|
29474
|
+
enabled: boolean()
|
|
29475
|
+
});
|
|
29476
|
+
var CalendarEventSchema = object({
|
|
29477
|
+
id: string().min(1),
|
|
29478
|
+
calendarId: string().min(1),
|
|
29479
|
+
title: string(),
|
|
29480
|
+
startMs: number().int(),
|
|
29481
|
+
endMs: number().int(),
|
|
29482
|
+
allDay: boolean().optional(),
|
|
29483
|
+
description: string().optional(),
|
|
29484
|
+
location: string().optional()
|
|
29485
|
+
});
|
|
29486
|
+
var CalendarListEventsInputSchema = object({
|
|
29487
|
+
calendarIds: array(string().min(1)).max(64).optional(),
|
|
29488
|
+
startMs: number().int(),
|
|
29489
|
+
endMs: number().int()
|
|
29490
|
+
});
|
|
29491
|
+
var calendarSourceCapability = {
|
|
29492
|
+
name: "calendar-source",
|
|
29493
|
+
scope: "system",
|
|
29494
|
+
mode: "collection",
|
|
29495
|
+
internal: true,
|
|
29496
|
+
methods: {
|
|
29497
|
+
listCalendars: method(_void(), array(CalendarInfoSchema).readonly(), { auth: "admin" }),
|
|
29498
|
+
listEvents: method(CalendarListEventsInputSchema, array(CalendarEventSchema).readonly(), { auth: "admin" })
|
|
29499
|
+
}
|
|
29500
|
+
};
|
|
29501
|
+
/**
|
|
29502
|
+
* `calendars` — system-scoped singleton. Public surface admin-ui and the
|
|
29503
|
+
* notification-center calendar-events producer consume.
|
|
29504
|
+
*
|
|
29505
|
+
* Walks every `calendar-source` provider, stamps each calendar with a
|
|
29506
|
+
* cluster-stable id (`<sourceAddonId>:<localId>`) and the providing
|
|
29507
|
+
* addon's id, and fans `listEvents` out the same way. Home Assistant
|
|
29508
|
+
* import is a built-in refresh of the HA source rather than a second
|
|
29509
|
+
* registry — `importFromHomeAssistant` asks that source to re-discover.
|
|
29510
|
+
*/
|
|
29511
|
+
var CalendarEntrySchema = CalendarInfoSchema.extend({
|
|
29512
|
+
/** Cluster-stable id: `<providerAddonId>:<localId>`. */
|
|
29513
|
+
id: string().min(1),
|
|
29514
|
+
/** The addon that registered the calendar-source provider. */
|
|
29515
|
+
providerAddonId: string().min(1).optional()
|
|
29516
|
+
});
|
|
29517
|
+
var CalendarImportResultSchema = object({
|
|
29518
|
+
imported: number().int().nonnegative(),
|
|
29519
|
+
/** Absent when no HA calendar-source provider was reachable. */
|
|
29520
|
+
providerAddonId: string().min(1).optional(),
|
|
29521
|
+
error: string().optional()
|
|
29522
|
+
});
|
|
29523
|
+
method(_void(), array(CalendarEntrySchema).readonly(), { auth: "admin" }), method(CalendarListEventsInputSchema, array(CalendarEventSchema).readonly(), { auth: "admin" }), method(_void(), CalendarImportResultSchema, {
|
|
29524
|
+
auth: "admin",
|
|
29525
|
+
kind: "mutation"
|
|
29526
|
+
});
|
|
29527
|
+
/**
|
|
29440
29528
|
* camera-credentials — device-scoped cap exposing the camera's network
|
|
29441
29529
|
* + auth surface in a vendor-neutral shape.
|
|
29442
29530
|
*
|
|
@@ -33985,38 +34073,52 @@ DeviceType.Camera, method(object({
|
|
|
33985
34073
|
deviceId: number(),
|
|
33986
34074
|
status: OsdStatusSchema
|
|
33987
34075
|
});
|
|
34076
|
+
_enum([
|
|
34077
|
+
"value",
|
|
34078
|
+
"unit",
|
|
34079
|
+
"full"
|
|
34080
|
+
]);
|
|
34081
|
+
_enum([
|
|
34082
|
+
"value+unit",
|
|
34083
|
+
"value",
|
|
34084
|
+
"unit"
|
|
34085
|
+
]);
|
|
34086
|
+
/**
|
|
34087
|
+
* How the operator reached the leaf device. `deviceId` is ALWAYS the
|
|
34088
|
+
* OSD-supported leaf that is read; `containerId` is set when the pick
|
|
34089
|
+
* went through a container (gateway) first.
|
|
34090
|
+
*/
|
|
34091
|
+
var OsdTemplatePickSchema = object({
|
|
34092
|
+
containerId: number().int().optional(),
|
|
34093
|
+
deviceId: number().int()
|
|
34094
|
+
});
|
|
33988
34095
|
/**
|
|
33989
|
-
*
|
|
33990
|
-
*
|
|
33991
|
-
*
|
|
33992
|
-
*
|
|
33993
|
-
* comes from, and it must not — a driver that grew a "show the temperature
|
|
33994
|
-
* here" feature would grow it once per vendor.
|
|
33995
|
-
*
|
|
33996
|
-
* This cap owns the other half: a per-(camera, slot) BINDING that says
|
|
33997
|
-
* which value feeds the slot, how it is formatted, and under which
|
|
33998
|
-
* conditions it is shown at all. One addon renders every binding on every
|
|
33999
|
-
* camera, so a new source costs zero driver code.
|
|
34000
|
-
*
|
|
34001
|
-
* Three deliberate choices, each with a rejected alternative:
|
|
34002
|
-
*
|
|
34003
|
-
* 1. A source is `(capName, valuePath)` over the kernel's device
|
|
34004
|
-
* runtime-state mirror — NOT a closed enum of source kinds. Every
|
|
34005
|
-
* cap-keyed slice a device publishes is bindable the day the cap
|
|
34006
|
-
* ships. The rejected alternative (one enum member per source, with
|
|
34007
|
-
* a resolver branch each) is what makes "add the humidity too" a
|
|
34008
|
-
* code change.
|
|
34009
|
-
* 2. The display gate reuses `NcConditionsSchema` verbatim — the
|
|
34010
|
-
* notification centre's condition vocabulary — rather than a parallel
|
|
34011
|
-
* model. An operator who has learned one condition editor has learned
|
|
34012
|
-
* both.
|
|
34013
|
-
* 3. Because the renderer's facts are device STATE and not a detection
|
|
34014
|
-
* record, only a SUBSET of that vocabulary can be answered here.
|
|
34015
|
-
* `setSlotBinding` REJECTS the rest at write time (see
|
|
34016
|
-
* `getConditionSupport`). It does not accept-then-fail-closed: a
|
|
34017
|
-
* condition that can never be true renders a permanently blank
|
|
34018
|
-
* overlay, and a blank overlay looks exactly like a broken camera.
|
|
34096
|
+
* One named binding inside a multi-device template: device path + unit
|
|
34097
|
+
* selection + precision. The parser expands `{alias}`, `{alias.value}`,
|
|
34098
|
+
* `{alias.unit}`, or `{alias.full}` from the same binding — there is no
|
|
34099
|
+
* per-binding format lock.
|
|
34019
34100
|
*/
|
|
34101
|
+
var OsdTemplateBindingSchema = object({
|
|
34102
|
+
/** Token stem in the parser, e.g. `t` → `{t}` / `{t.value}`. Unique within the template. */
|
|
34103
|
+
alias: string().min(1).max(32).regex(/^[A-Za-z][A-Za-z0-9_-]*$/, "alias must start with a letter"),
|
|
34104
|
+
pick: OsdTemplatePickSchema,
|
|
34105
|
+
capName: string().min(1).max(64),
|
|
34106
|
+
valuePath: string().min(1).max(64),
|
|
34107
|
+
/** Convert TO this unit at render (`tryConvertUnit`). Absent = source unit. */
|
|
34108
|
+
displayUnit: string().max(16).optional(),
|
|
34109
|
+
maxDecimals: number().int().min(0).max(4).default(1)
|
|
34110
|
+
});
|
|
34111
|
+
/**
|
|
34112
|
+
* A named template: bindings (alias → leaf field) + a parser that
|
|
34113
|
+
* references `{alias}` / `{alias.value}` / `{alias.unit}` / `{alias.full}`.
|
|
34114
|
+
*/
|
|
34115
|
+
var OsdNamedTemplateSchema = object({
|
|
34116
|
+
id: string().min(1).max(64),
|
|
34117
|
+
name: string().min(1).max(64),
|
|
34118
|
+
bindings: array(OsdTemplateBindingSchema).max(32).default([]),
|
|
34119
|
+
/** Parser with alias placeholders, e.g. `{t.value} {t.unit} / {h}`. */
|
|
34120
|
+
parser: string().max(256).default("")
|
|
34121
|
+
});
|
|
34020
34122
|
/** Where a slot's value comes from. */
|
|
34021
34123
|
var OsdSourceSchema = discriminatedUnion("kind", [
|
|
34022
34124
|
object({
|
|
@@ -34035,11 +34137,17 @@ var OsdSourceSchema = discriminatedUnion("kind", [
|
|
|
34035
34137
|
deviceId: number().int().optional(),
|
|
34036
34138
|
capName: string().min(1).max(64),
|
|
34037
34139
|
/** Dot path inside the slice, e.g. `detected`, `value`, `mode`. */
|
|
34038
|
-
valuePath: string().min(1).max(64)
|
|
34140
|
+
valuePath: string().min(1).max(64),
|
|
34141
|
+
/** Convert TO this unit at render. Absent = no conversion. */
|
|
34142
|
+
displayUnit: string().max(16).optional()
|
|
34039
34143
|
}),
|
|
34040
34144
|
object({
|
|
34041
34145
|
kind: literal("latest-recognition"),
|
|
34042
34146
|
recognition: _enum(["person", "plate"])
|
|
34147
|
+
}),
|
|
34148
|
+
object({
|
|
34149
|
+
kind: literal("template"),
|
|
34150
|
+
templateId: string().min(1).max(64)
|
|
34043
34151
|
})
|
|
34044
34152
|
]);
|
|
34045
34153
|
var OsdSlotBindingSchema = object({
|
|
@@ -34055,7 +34163,10 @@ var OsdSlotBindingSchema = object({
|
|
|
34055
34163
|
* documented workaround for firmwares that reject `.` in overlay text.
|
|
34056
34164
|
*/
|
|
34057
34165
|
maxDecimals: number().int().min(0).max(4).default(1),
|
|
34058
|
-
/**
|
|
34166
|
+
/**
|
|
34167
|
+
* Appended via `${unit}` when no unit conversion produces a label.
|
|
34168
|
+
* Prefer `source.displayUnit` for converted device-state values.
|
|
34169
|
+
*/
|
|
34059
34170
|
unitLabel: string().max(8).optional(),
|
|
34060
34171
|
/** Raw value → display text, e.g. `{"true":"MOTION","false":""}`. */
|
|
34061
34172
|
valueMap: record(string(), string()).optional(),
|
|
@@ -34164,6 +34275,12 @@ method(object({ deviceId: number().int() }), object({
|
|
|
34164
34275
|
}), method(object({ deviceId: number().int() }), object({ results: array(OsdRenderResultSchema) }), {
|
|
34165
34276
|
kind: "mutation",
|
|
34166
34277
|
auth: "admin"
|
|
34278
|
+
}), method(object({}), object({ templates: array(OsdNamedTemplateSchema) }), { auth: "admin" }), method(object({ template: OsdNamedTemplateSchema }), object({ template: OsdNamedTemplateSchema }), {
|
|
34279
|
+
kind: "mutation",
|
|
34280
|
+
auth: "admin"
|
|
34281
|
+
}), method(object({ templateId: string().min(1).max(64) }), object({ success: literal(true) }), {
|
|
34282
|
+
kind: "mutation",
|
|
34283
|
+
auth: "admin"
|
|
34167
34284
|
});
|
|
34168
34285
|
/**
|
|
34169
34286
|
* Feeder connectivity / power status — mirrors the HA petkit device-status
|
|
@@ -39287,6 +39404,7 @@ var zoneRulesCapability = {
|
|
|
39287
39404
|
*/
|
|
39288
39405
|
durability: "restored"
|
|
39289
39406
|
};
|
|
39407
|
+
SOURCE_CAPS.filter((cap) => cap !== "switch" && cap !== "motion");
|
|
39290
39408
|
/**
|
|
39291
39409
|
* Accessory device helpers — shared across drivers.
|
|
39292
39410
|
*
|
|
@@ -42957,6 +43075,36 @@ Object.freeze({
|
|
|
42957
43075
|
addonId: null,
|
|
42958
43076
|
access: "create"
|
|
42959
43077
|
},
|
|
43078
|
+
"calendars.importFromHomeAssistant": {
|
|
43079
|
+
capName: "calendars",
|
|
43080
|
+
capScope: "system",
|
|
43081
|
+
addonId: null,
|
|
43082
|
+
access: "create"
|
|
43083
|
+
},
|
|
43084
|
+
"calendars.listCalendars": {
|
|
43085
|
+
capName: "calendars",
|
|
43086
|
+
capScope: "system",
|
|
43087
|
+
addonId: null,
|
|
43088
|
+
access: "view"
|
|
43089
|
+
},
|
|
43090
|
+
"calendars.listEvents": {
|
|
43091
|
+
capName: "calendars",
|
|
43092
|
+
capScope: "system",
|
|
43093
|
+
addonId: null,
|
|
43094
|
+
access: "view"
|
|
43095
|
+
},
|
|
43096
|
+
"calendarSource.listCalendars": {
|
|
43097
|
+
capName: "calendar-source",
|
|
43098
|
+
capScope: "system",
|
|
43099
|
+
addonId: null,
|
|
43100
|
+
access: "view"
|
|
43101
|
+
},
|
|
43102
|
+
"calendarSource.listEvents": {
|
|
43103
|
+
capName: "calendar-source",
|
|
43104
|
+
capScope: "system",
|
|
43105
|
+
addonId: null,
|
|
43106
|
+
access: "view"
|
|
43107
|
+
},
|
|
42960
43108
|
"cameraCredentials.getCredentials": {
|
|
42961
43109
|
capName: "camera-credentials",
|
|
42962
43110
|
capScope: "device",
|
|
@@ -45951,6 +46099,12 @@ Object.freeze({
|
|
|
45951
46099
|
addonId: null,
|
|
45952
46100
|
access: "create"
|
|
45953
46101
|
},
|
|
46102
|
+
"osdManager.deleteTemplate": {
|
|
46103
|
+
capName: "osd-manager",
|
|
46104
|
+
capScope: "system",
|
|
46105
|
+
addonId: null,
|
|
46106
|
+
access: "delete"
|
|
46107
|
+
},
|
|
45954
46108
|
"osdManager.getConditionSupport": {
|
|
45955
46109
|
capName: "osd-manager",
|
|
45956
46110
|
capScope: "system",
|
|
@@ -45969,6 +46123,12 @@ Object.freeze({
|
|
|
45969
46123
|
addonId: null,
|
|
45970
46124
|
access: "view"
|
|
45971
46125
|
},
|
|
46126
|
+
"osdManager.listTemplates": {
|
|
46127
|
+
capName: "osd-manager",
|
|
46128
|
+
capScope: "system",
|
|
46129
|
+
addonId: null,
|
|
46130
|
+
access: "view"
|
|
46131
|
+
},
|
|
45972
46132
|
"osdManager.previewSlot": {
|
|
45973
46133
|
capName: "osd-manager",
|
|
45974
46134
|
capScope: "system",
|
|
@@ -45987,6 +46147,12 @@ Object.freeze({
|
|
|
45987
46147
|
addonId: null,
|
|
45988
46148
|
access: "create"
|
|
45989
46149
|
},
|
|
46150
|
+
"osdManager.upsertTemplate": {
|
|
46151
|
+
capName: "osd-manager",
|
|
46152
|
+
capScope: "system",
|
|
46153
|
+
addonId: null,
|
|
46154
|
+
access: "create"
|
|
46155
|
+
},
|
|
45990
46156
|
"petFeeder.callPet": {
|
|
45991
46157
|
capName: "pet-feeder",
|
|
45992
46158
|
capScope: "device",
|
|
@@ -49373,6 +49539,11 @@ Object.freeze({
|
|
|
49373
49539
|
}
|
|
49374
49540
|
});
|
|
49375
49541
|
Object.freeze({
|
|
49542
|
+
"accessories.getStatus": [{
|
|
49543
|
+
name: "deviceId",
|
|
49544
|
+
form: "single",
|
|
49545
|
+
optional: false
|
|
49546
|
+
}],
|
|
49376
49547
|
"accessories.setChildHidden": [{
|
|
49377
49548
|
name: "childDeviceId",
|
|
49378
49549
|
form: "single",
|
|
@@ -49392,6 +49563,11 @@ Object.freeze({
|
|
|
49392
49563
|
form: "single",
|
|
49393
49564
|
optional: false
|
|
49394
49565
|
}],
|
|
49566
|
+
"airQualitySensor.getStatus": [{
|
|
49567
|
+
name: "deviceId",
|
|
49568
|
+
form: "single",
|
|
49569
|
+
optional: false
|
|
49570
|
+
}],
|
|
49395
49571
|
"alarmPanel.arm": [{
|
|
49396
49572
|
name: "deviceId",
|
|
49397
49573
|
form: "single",
|
|
@@ -49402,11 +49578,36 @@ Object.freeze({
|
|
|
49402
49578
|
form: "single",
|
|
49403
49579
|
optional: false
|
|
49404
49580
|
}],
|
|
49581
|
+
"alarmPanel.getStatus": [{
|
|
49582
|
+
name: "deviceId",
|
|
49583
|
+
form: "single",
|
|
49584
|
+
optional: false
|
|
49585
|
+
}],
|
|
49405
49586
|
"alarmPanel.trigger": [{
|
|
49406
49587
|
name: "deviceId",
|
|
49407
49588
|
form: "single",
|
|
49408
49589
|
optional: false
|
|
49409
49590
|
}],
|
|
49591
|
+
"ambientLightSensor.getStatus": [{
|
|
49592
|
+
name: "deviceId",
|
|
49593
|
+
form: "single",
|
|
49594
|
+
optional: false
|
|
49595
|
+
}],
|
|
49596
|
+
"audioAnalysis.applyDeviceSettingsPatch": [{
|
|
49597
|
+
name: "deviceId",
|
|
49598
|
+
form: "single",
|
|
49599
|
+
optional: false
|
|
49600
|
+
}],
|
|
49601
|
+
"audioAnalysis.getDeviceLiveContribution": [{
|
|
49602
|
+
name: "deviceId",
|
|
49603
|
+
form: "single",
|
|
49604
|
+
optional: false
|
|
49605
|
+
}],
|
|
49606
|
+
"audioAnalysis.getDeviceSettingsContribution": [{
|
|
49607
|
+
name: "deviceId",
|
|
49608
|
+
form: "single",
|
|
49609
|
+
optional: false
|
|
49610
|
+
}],
|
|
49410
49611
|
"audioAnalysis.resolveDeviceSettings": [{
|
|
49411
49612
|
name: "deviceId",
|
|
49412
49613
|
form: "single",
|
|
@@ -49447,16 +49648,36 @@ Object.freeze({
|
|
|
49447
49648
|
form: "single",
|
|
49448
49649
|
optional: false
|
|
49449
49650
|
}],
|
|
49651
|
+
"automationControl.getStatus": [{
|
|
49652
|
+
name: "deviceId",
|
|
49653
|
+
form: "single",
|
|
49654
|
+
optional: false
|
|
49655
|
+
}],
|
|
49450
49656
|
"automationControl.trigger": [{
|
|
49451
49657
|
name: "deviceId",
|
|
49452
49658
|
form: "single",
|
|
49453
49659
|
optional: false
|
|
49454
49660
|
}],
|
|
49661
|
+
"battery.getStatus": [{
|
|
49662
|
+
name: "deviceId",
|
|
49663
|
+
form: "single",
|
|
49664
|
+
optional: false
|
|
49665
|
+
}],
|
|
49455
49666
|
"battery.wakeForStream": [{
|
|
49456
49667
|
name: "deviceId",
|
|
49457
49668
|
form: "single",
|
|
49458
49669
|
optional: false
|
|
49459
49670
|
}],
|
|
49671
|
+
"binary.getStatus": [{
|
|
49672
|
+
name: "deviceId",
|
|
49673
|
+
form: "single",
|
|
49674
|
+
optional: false
|
|
49675
|
+
}],
|
|
49676
|
+
"brightness.getStatus": [{
|
|
49677
|
+
name: "deviceId",
|
|
49678
|
+
form: "single",
|
|
49679
|
+
optional: false
|
|
49680
|
+
}],
|
|
49460
49681
|
"brightness.setBrightness": [{
|
|
49461
49682
|
name: "deviceId",
|
|
49462
49683
|
form: "single",
|
|
@@ -49472,6 +49693,26 @@ Object.freeze({
|
|
|
49472
49693
|
form: "single",
|
|
49473
49694
|
optional: false
|
|
49474
49695
|
}],
|
|
49696
|
+
"cameraCredentials.getStatus": [{
|
|
49697
|
+
name: "deviceId",
|
|
49698
|
+
form: "single",
|
|
49699
|
+
optional: false
|
|
49700
|
+
}],
|
|
49701
|
+
"cameraGridLayout.applyDeviceSettingsPatch": [{
|
|
49702
|
+
name: "deviceId",
|
|
49703
|
+
form: "single",
|
|
49704
|
+
optional: false
|
|
49705
|
+
}],
|
|
49706
|
+
"cameraGridLayout.getDeviceLiveContribution": [{
|
|
49707
|
+
name: "deviceId",
|
|
49708
|
+
form: "single",
|
|
49709
|
+
optional: false
|
|
49710
|
+
}],
|
|
49711
|
+
"cameraGridLayout.getDeviceSettingsContribution": [{
|
|
49712
|
+
name: "deviceId",
|
|
49713
|
+
form: "single",
|
|
49714
|
+
optional: false
|
|
49715
|
+
}],
|
|
49475
49716
|
"cameraGridLayout.getLayout": [{
|
|
49476
49717
|
name: "deviceId",
|
|
49477
49718
|
form: "single",
|
|
@@ -49487,6 +49728,21 @@ Object.freeze({
|
|
|
49487
49728
|
form: "single",
|
|
49488
49729
|
optional: false
|
|
49489
49730
|
}],
|
|
49731
|
+
"cameraPipelineConfig.applyDeviceSettingsPatch": [{
|
|
49732
|
+
name: "deviceId",
|
|
49733
|
+
form: "single",
|
|
49734
|
+
optional: false
|
|
49735
|
+
}],
|
|
49736
|
+
"cameraPipelineConfig.getDeviceLiveContribution": [{
|
|
49737
|
+
name: "deviceId",
|
|
49738
|
+
form: "single",
|
|
49739
|
+
optional: false
|
|
49740
|
+
}],
|
|
49741
|
+
"cameraPipelineConfig.getDeviceSettingsContribution": [{
|
|
49742
|
+
name: "deviceId",
|
|
49743
|
+
form: "single",
|
|
49744
|
+
optional: false
|
|
49745
|
+
}],
|
|
49490
49746
|
"cameraStreams.getBrokerStreams": [{
|
|
49491
49747
|
name: "deviceId",
|
|
49492
49748
|
form: "single",
|
|
@@ -49512,6 +49768,16 @@ Object.freeze({
|
|
|
49512
49768
|
form: "single",
|
|
49513
49769
|
optional: false
|
|
49514
49770
|
}],
|
|
49771
|
+
"carbonMonoxide.getStatus": [{
|
|
49772
|
+
name: "deviceId",
|
|
49773
|
+
form: "single",
|
|
49774
|
+
optional: false
|
|
49775
|
+
}],
|
|
49776
|
+
"climateControl.getStatus": [{
|
|
49777
|
+
name: "deviceId",
|
|
49778
|
+
form: "single",
|
|
49779
|
+
optional: false
|
|
49780
|
+
}],
|
|
49515
49781
|
"climateControl.setFanMode": [{
|
|
49516
49782
|
name: "deviceId",
|
|
49517
49783
|
form: "single",
|
|
@@ -49552,16 +49818,41 @@ Object.freeze({
|
|
|
49552
49818
|
form: "single",
|
|
49553
49819
|
optional: false
|
|
49554
49820
|
}],
|
|
49821
|
+
"color.getStatus": [{
|
|
49822
|
+
name: "deviceId",
|
|
49823
|
+
form: "single",
|
|
49824
|
+
optional: false
|
|
49825
|
+
}],
|
|
49555
49826
|
"color.setColor": [{
|
|
49556
49827
|
name: "deviceId",
|
|
49557
49828
|
form: "single",
|
|
49558
49829
|
optional: false
|
|
49559
49830
|
}],
|
|
49831
|
+
"connectivity.getStatus": [{
|
|
49832
|
+
name: "deviceId",
|
|
49833
|
+
form: "single",
|
|
49834
|
+
optional: false
|
|
49835
|
+
}],
|
|
49836
|
+
"consumables.getStatus": [{
|
|
49837
|
+
name: "deviceId",
|
|
49838
|
+
form: "single",
|
|
49839
|
+
optional: false
|
|
49840
|
+
}],
|
|
49560
49841
|
"consumables.reset": [{
|
|
49561
49842
|
name: "deviceId",
|
|
49562
49843
|
form: "single",
|
|
49563
49844
|
optional: false
|
|
49564
49845
|
}],
|
|
49846
|
+
"contact.getStatus": [{
|
|
49847
|
+
name: "deviceId",
|
|
49848
|
+
form: "single",
|
|
49849
|
+
optional: false
|
|
49850
|
+
}],
|
|
49851
|
+
"control.getStatus": [{
|
|
49852
|
+
name: "deviceId",
|
|
49853
|
+
form: "single",
|
|
49854
|
+
optional: false
|
|
49855
|
+
}],
|
|
49565
49856
|
"control.setValue": [{
|
|
49566
49857
|
name: "deviceId",
|
|
49567
49858
|
form: "single",
|
|
@@ -49572,6 +49863,11 @@ Object.freeze({
|
|
|
49572
49863
|
form: "single",
|
|
49573
49864
|
optional: false
|
|
49574
49865
|
}],
|
|
49866
|
+
"cover.getStatus": [{
|
|
49867
|
+
name: "deviceId",
|
|
49868
|
+
form: "single",
|
|
49869
|
+
optional: false
|
|
49870
|
+
}],
|
|
49575
49871
|
"cover.open": [{
|
|
49576
49872
|
name: "deviceId",
|
|
49577
49873
|
form: "single",
|
|
@@ -49597,6 +49893,11 @@ Object.freeze({
|
|
|
49597
49893
|
form: "single",
|
|
49598
49894
|
optional: false
|
|
49599
49895
|
}],
|
|
49896
|
+
"dayNight.getStatus": [{
|
|
49897
|
+
name: "deviceId",
|
|
49898
|
+
form: "single",
|
|
49899
|
+
optional: false
|
|
49900
|
+
}],
|
|
49600
49901
|
"dayNight.setSettings": [{
|
|
49601
49902
|
name: "deviceId",
|
|
49602
49903
|
form: "single",
|
|
@@ -49607,11 +49908,31 @@ Object.freeze({
|
|
|
49607
49908
|
form: "single",
|
|
49608
49909
|
optional: true
|
|
49609
49910
|
}],
|
|
49911
|
+
"detectionPipeline.applyDeviceSettingsPatch": [{
|
|
49912
|
+
name: "deviceId",
|
|
49913
|
+
form: "single",
|
|
49914
|
+
optional: false
|
|
49915
|
+
}],
|
|
49916
|
+
"detectionPipeline.getDeviceLiveContribution": [{
|
|
49917
|
+
name: "deviceId",
|
|
49918
|
+
form: "single",
|
|
49919
|
+
optional: false
|
|
49920
|
+
}],
|
|
49921
|
+
"detectionPipeline.getDeviceSettingsContribution": [{
|
|
49922
|
+
name: "deviceId",
|
|
49923
|
+
form: "single",
|
|
49924
|
+
optional: false
|
|
49925
|
+
}],
|
|
49610
49926
|
"deviceAdminLink.getAdminLink": [{
|
|
49611
49927
|
name: "deviceId",
|
|
49612
49928
|
form: "single",
|
|
49613
49929
|
optional: false
|
|
49614
49930
|
}],
|
|
49931
|
+
"deviceAdoption.getStatus": [{
|
|
49932
|
+
name: "deviceId",
|
|
49933
|
+
form: "single",
|
|
49934
|
+
optional: false
|
|
49935
|
+
}],
|
|
49615
49936
|
"deviceAdoption.release": [{
|
|
49616
49937
|
name: "camDeviceId",
|
|
49617
49938
|
form: "single",
|
|
@@ -49627,6 +49948,11 @@ Object.freeze({
|
|
|
49627
49948
|
form: "single",
|
|
49628
49949
|
optional: false
|
|
49629
49950
|
}],
|
|
49951
|
+
"deviceDiscovery.getStatus": [{
|
|
49952
|
+
name: "deviceId",
|
|
49953
|
+
form: "single",
|
|
49954
|
+
optional: false
|
|
49955
|
+
}],
|
|
49630
49956
|
"deviceDiscovery.listDiscovered": [{
|
|
49631
49957
|
name: "deviceId",
|
|
49632
49958
|
form: "single",
|
|
@@ -49646,6 +49972,21 @@ Object.freeze({
|
|
|
49646
49972
|
form: "single",
|
|
49647
49973
|
optional: false
|
|
49648
49974
|
}],
|
|
49975
|
+
"deviceExport.applyDeviceSettingsPatch": [{
|
|
49976
|
+
name: "deviceId",
|
|
49977
|
+
form: "single",
|
|
49978
|
+
optional: false
|
|
49979
|
+
}],
|
|
49980
|
+
"deviceExport.getDeviceLiveContribution": [{
|
|
49981
|
+
name: "deviceId",
|
|
49982
|
+
form: "single",
|
|
49983
|
+
optional: false
|
|
49984
|
+
}],
|
|
49985
|
+
"deviceExport.getDeviceSettingsContribution": [{
|
|
49986
|
+
name: "deviceId",
|
|
49987
|
+
form: "single",
|
|
49988
|
+
optional: false
|
|
49989
|
+
}],
|
|
49649
49990
|
"deviceExtension.listCandidates": [{
|
|
49650
49991
|
name: "deviceId",
|
|
49651
49992
|
form: "single",
|
|
@@ -49994,6 +50335,26 @@ Object.freeze({
|
|
|
49994
50335
|
form: "single",
|
|
49995
50336
|
optional: false
|
|
49996
50337
|
}],
|
|
50338
|
+
"deviceStatus.getStatus": [{
|
|
50339
|
+
name: "deviceId",
|
|
50340
|
+
form: "single",
|
|
50341
|
+
optional: false
|
|
50342
|
+
}],
|
|
50343
|
+
"doorbell.getStatus": [{
|
|
50344
|
+
name: "deviceId",
|
|
50345
|
+
form: "single",
|
|
50346
|
+
optional: false
|
|
50347
|
+
}],
|
|
50348
|
+
"enumSensor.getStatus": [{
|
|
50349
|
+
name: "deviceId",
|
|
50350
|
+
form: "single",
|
|
50351
|
+
optional: false
|
|
50352
|
+
}],
|
|
50353
|
+
"eventEmitter.getStatus": [{
|
|
50354
|
+
name: "deviceId",
|
|
50355
|
+
form: "single",
|
|
50356
|
+
optional: false
|
|
50357
|
+
}],
|
|
49997
50358
|
"faceGallery.getFaceByTrack": [{
|
|
49998
50359
|
name: "deviceId",
|
|
49999
50360
|
form: "single",
|
|
@@ -50008,6 +50369,11 @@ Object.freeze({
|
|
|
50008
50369
|
form: "array",
|
|
50009
50370
|
optional: true
|
|
50010
50371
|
}],
|
|
50372
|
+
"fanControl.getStatus": [{
|
|
50373
|
+
name: "deviceId",
|
|
50374
|
+
form: "single",
|
|
50375
|
+
optional: false
|
|
50376
|
+
}],
|
|
50011
50377
|
"fanControl.setDirection": [{
|
|
50012
50378
|
name: "deviceId",
|
|
50013
50379
|
form: "single",
|
|
@@ -50028,6 +50394,26 @@ Object.freeze({
|
|
|
50028
50394
|
form: "single",
|
|
50029
50395
|
optional: false
|
|
50030
50396
|
}],
|
|
50397
|
+
"featureProbe.getStatus": [{
|
|
50398
|
+
name: "deviceId",
|
|
50399
|
+
form: "single",
|
|
50400
|
+
optional: false
|
|
50401
|
+
}],
|
|
50402
|
+
"flood.getStatus": [{
|
|
50403
|
+
name: "deviceId",
|
|
50404
|
+
form: "single",
|
|
50405
|
+
optional: false
|
|
50406
|
+
}],
|
|
50407
|
+
"gas.getStatus": [{
|
|
50408
|
+
name: "deviceId",
|
|
50409
|
+
form: "single",
|
|
50410
|
+
optional: false
|
|
50411
|
+
}],
|
|
50412
|
+
"humidifier.getStatus": [{
|
|
50413
|
+
name: "deviceId",
|
|
50414
|
+
form: "single",
|
|
50415
|
+
optional: false
|
|
50416
|
+
}],
|
|
50031
50417
|
"humidifier.setMode": [{
|
|
50032
50418
|
name: "deviceId",
|
|
50033
50419
|
form: "single",
|
|
@@ -50043,11 +50429,26 @@ Object.freeze({
|
|
|
50043
50429
|
form: "single",
|
|
50044
50430
|
optional: false
|
|
50045
50431
|
}],
|
|
50432
|
+
"humiditySensor.getStatus": [{
|
|
50433
|
+
name: "deviceId",
|
|
50434
|
+
form: "single",
|
|
50435
|
+
optional: false
|
|
50436
|
+
}],
|
|
50437
|
+
"image.getStatus": [{
|
|
50438
|
+
name: "deviceId",
|
|
50439
|
+
form: "single",
|
|
50440
|
+
optional: false
|
|
50441
|
+
}],
|
|
50046
50442
|
"imageSettings.getOptions": [{
|
|
50047
50443
|
name: "deviceId",
|
|
50048
50444
|
form: "single",
|
|
50049
50445
|
optional: false
|
|
50050
50446
|
}],
|
|
50447
|
+
"imageSettings.getStatus": [{
|
|
50448
|
+
name: "deviceId",
|
|
50449
|
+
form: "single",
|
|
50450
|
+
optional: false
|
|
50451
|
+
}],
|
|
50051
50452
|
"imageSettings.setSettings": [{
|
|
50052
50453
|
name: "deviceId",
|
|
50053
50454
|
form: "single",
|
|
@@ -50058,6 +50459,11 @@ Object.freeze({
|
|
|
50058
50459
|
form: "single",
|
|
50059
50460
|
optional: false
|
|
50060
50461
|
}],
|
|
50462
|
+
"intercom.getStatus": [{
|
|
50463
|
+
name: "deviceId",
|
|
50464
|
+
form: "single",
|
|
50465
|
+
optional: false
|
|
50466
|
+
}],
|
|
50061
50467
|
"intercom.handleAnswer": [{
|
|
50062
50468
|
name: "deviceId",
|
|
50063
50469
|
form: "single",
|
|
@@ -50088,6 +50494,11 @@ Object.freeze({
|
|
|
50088
50494
|
form: "single",
|
|
50089
50495
|
optional: false
|
|
50090
50496
|
}],
|
|
50497
|
+
"lawnMowerControl.getStatus": [{
|
|
50498
|
+
name: "deviceId",
|
|
50499
|
+
form: "single",
|
|
50500
|
+
optional: false
|
|
50501
|
+
}],
|
|
50091
50502
|
"lawnMowerControl.pause": [{
|
|
50092
50503
|
name: "deviceId",
|
|
50093
50504
|
form: "single",
|
|
@@ -50098,6 +50509,11 @@ Object.freeze({
|
|
|
50098
50509
|
form: "single",
|
|
50099
50510
|
optional: false
|
|
50100
50511
|
}],
|
|
50512
|
+
"lockControl.getStatus": [{
|
|
50513
|
+
name: "deviceId",
|
|
50514
|
+
form: "single",
|
|
50515
|
+
optional: false
|
|
50516
|
+
}],
|
|
50101
50517
|
"lockControl.lock": [{
|
|
50102
50518
|
name: "deviceId",
|
|
50103
50519
|
form: "single",
|
|
@@ -50113,6 +50529,11 @@ Object.freeze({
|
|
|
50113
50529
|
form: "single",
|
|
50114
50530
|
optional: false
|
|
50115
50531
|
}],
|
|
50532
|
+
"mediaPlayer.getStatus": [{
|
|
50533
|
+
name: "deviceId",
|
|
50534
|
+
form: "single",
|
|
50535
|
+
optional: false
|
|
50536
|
+
}],
|
|
50116
50537
|
"mediaPlayer.next": [{
|
|
50117
50538
|
name: "deviceId",
|
|
50118
50539
|
form: "single",
|
|
@@ -50173,6 +50594,11 @@ Object.freeze({
|
|
|
50173
50594
|
form: "single",
|
|
50174
50595
|
optional: false
|
|
50175
50596
|
}],
|
|
50597
|
+
"motion.getStatus": [{
|
|
50598
|
+
name: "deviceId",
|
|
50599
|
+
form: "single",
|
|
50600
|
+
optional: false
|
|
50601
|
+
}],
|
|
50176
50602
|
"motion.isDetected": [{
|
|
50177
50603
|
name: "deviceId",
|
|
50178
50604
|
form: "single",
|
|
@@ -50183,11 +50609,31 @@ Object.freeze({
|
|
|
50183
50609
|
form: "single",
|
|
50184
50610
|
optional: false
|
|
50185
50611
|
}],
|
|
50612
|
+
"motionDetection.applyDeviceSettingsPatch": [{
|
|
50613
|
+
name: "deviceId",
|
|
50614
|
+
form: "single",
|
|
50615
|
+
optional: false
|
|
50616
|
+
}],
|
|
50617
|
+
"motionDetection.getDeviceLiveContribution": [{
|
|
50618
|
+
name: "deviceId",
|
|
50619
|
+
form: "single",
|
|
50620
|
+
optional: false
|
|
50621
|
+
}],
|
|
50622
|
+
"motionDetection.getDeviceSettingsContribution": [{
|
|
50623
|
+
name: "deviceId",
|
|
50624
|
+
form: "single",
|
|
50625
|
+
optional: false
|
|
50626
|
+
}],
|
|
50186
50627
|
"motionDetection.removeCamera": [{
|
|
50187
50628
|
name: "deviceId",
|
|
50188
50629
|
form: "single",
|
|
50189
50630
|
optional: false
|
|
50190
50631
|
}],
|
|
50632
|
+
"motionTrigger.getStatus": [{
|
|
50633
|
+
name: "deviceId",
|
|
50634
|
+
form: "single",
|
|
50635
|
+
optional: false
|
|
50636
|
+
}],
|
|
50191
50637
|
"motionTrigger.setMotionTrigger": [{
|
|
50192
50638
|
name: "deviceId",
|
|
50193
50639
|
form: "single",
|
|
@@ -50198,6 +50644,11 @@ Object.freeze({
|
|
|
50198
50644
|
form: "single",
|
|
50199
50645
|
optional: false
|
|
50200
50646
|
}],
|
|
50647
|
+
"motionZones.getStatus": [{
|
|
50648
|
+
name: "deviceId",
|
|
50649
|
+
form: "single",
|
|
50650
|
+
optional: false
|
|
50651
|
+
}],
|
|
50201
50652
|
"motionZones.setZone": [{
|
|
50202
50653
|
name: "deviceId",
|
|
50203
50654
|
form: "single",
|
|
@@ -50208,6 +50659,11 @@ Object.freeze({
|
|
|
50208
50659
|
form: "single",
|
|
50209
50660
|
optional: false
|
|
50210
50661
|
}],
|
|
50662
|
+
"nativeObjectDetection.getStatus": [{
|
|
50663
|
+
name: "deviceId",
|
|
50664
|
+
form: "single",
|
|
50665
|
+
optional: false
|
|
50666
|
+
}],
|
|
50211
50667
|
"nativeObjectDetection.setEnabled": [{
|
|
50212
50668
|
name: "deviceId",
|
|
50213
50669
|
form: "single",
|
|
@@ -50223,6 +50679,11 @@ Object.freeze({
|
|
|
50223
50679
|
form: "single",
|
|
50224
50680
|
optional: false
|
|
50225
50681
|
}],
|
|
50682
|
+
"navigation.getStatus": [{
|
|
50683
|
+
name: "deviceId",
|
|
50684
|
+
form: "single",
|
|
50685
|
+
optional: false
|
|
50686
|
+
}],
|
|
50226
50687
|
"navigation.goToPoint": [{
|
|
50227
50688
|
name: "deviceId",
|
|
50228
50689
|
form: "single",
|
|
@@ -50268,6 +50729,11 @@ Object.freeze({
|
|
|
50268
50729
|
form: "single",
|
|
50269
50730
|
optional: false
|
|
50270
50731
|
}],
|
|
50732
|
+
"networkLink.getStatus": [{
|
|
50733
|
+
name: "deviceId",
|
|
50734
|
+
form: "single",
|
|
50735
|
+
optional: false
|
|
50736
|
+
}],
|
|
50271
50737
|
"networkQuality.getDeviceStats": [{
|
|
50272
50738
|
name: "deviceId",
|
|
50273
50739
|
form: "single",
|
|
@@ -50293,11 +50759,26 @@ Object.freeze({
|
|
|
50293
50759
|
form: "single",
|
|
50294
50760
|
optional: false
|
|
50295
50761
|
}],
|
|
50762
|
+
"notifier.getStatus": [{
|
|
50763
|
+
name: "deviceId",
|
|
50764
|
+
form: "single",
|
|
50765
|
+
optional: false
|
|
50766
|
+
}],
|
|
50296
50767
|
"notifier.send": [{
|
|
50297
50768
|
name: "deviceId",
|
|
50298
50769
|
form: "single",
|
|
50299
50770
|
optional: false
|
|
50300
50771
|
}],
|
|
50772
|
+
"numericSensor.getStatus": [{
|
|
50773
|
+
name: "deviceId",
|
|
50774
|
+
form: "single",
|
|
50775
|
+
optional: false
|
|
50776
|
+
}],
|
|
50777
|
+
"osd.getStatus": [{
|
|
50778
|
+
name: "deviceId",
|
|
50779
|
+
form: "single",
|
|
50780
|
+
optional: false
|
|
50781
|
+
}],
|
|
50301
50782
|
"osd.setOverlay": [{
|
|
50302
50783
|
name: "deviceId",
|
|
50303
50784
|
form: "single",
|
|
@@ -50357,6 +50838,11 @@ Object.freeze({
|
|
|
50357
50838
|
form: "single",
|
|
50358
50839
|
optional: false
|
|
50359
50840
|
}],
|
|
50841
|
+
"petFeeder.getStatus": [{
|
|
50842
|
+
name: "deviceId",
|
|
50843
|
+
form: "single",
|
|
50844
|
+
optional: false
|
|
50845
|
+
}],
|
|
50360
50846
|
"petFeeder.markFoodReplenished": [{
|
|
50361
50847
|
name: "deviceId",
|
|
50362
50848
|
form: "single",
|
|
@@ -50392,6 +50878,11 @@ Object.freeze({
|
|
|
50392
50878
|
form: "single",
|
|
50393
50879
|
optional: false
|
|
50394
50880
|
}],
|
|
50881
|
+
"pipelineAnalytics.applyDeviceSettingsPatch": [{
|
|
50882
|
+
name: "deviceId",
|
|
50883
|
+
form: "single",
|
|
50884
|
+
optional: false
|
|
50885
|
+
}],
|
|
50395
50886
|
"pipelineAnalytics.clearTrackRelation": [{
|
|
50396
50887
|
name: "deviceId",
|
|
50397
50888
|
form: "single",
|
|
@@ -50432,6 +50923,16 @@ Object.freeze({
|
|
|
50432
50923
|
form: "single",
|
|
50433
50924
|
optional: false
|
|
50434
50925
|
}],
|
|
50926
|
+
"pipelineAnalytics.getDeviceLiveContribution": [{
|
|
50927
|
+
name: "deviceId",
|
|
50928
|
+
form: "single",
|
|
50929
|
+
optional: false
|
|
50930
|
+
}],
|
|
50931
|
+
"pipelineAnalytics.getDeviceSettingsContribution": [{
|
|
50932
|
+
name: "deviceId",
|
|
50933
|
+
form: "single",
|
|
50934
|
+
optional: false
|
|
50935
|
+
}],
|
|
50435
50936
|
"pipelineAnalytics.getEventDensity": [{
|
|
50436
50937
|
name: "deviceId",
|
|
50437
50938
|
form: "single",
|
|
@@ -50647,6 +51148,11 @@ Object.freeze({
|
|
|
50647
51148
|
form: "single",
|
|
50648
51149
|
optional: true
|
|
50649
51150
|
}],
|
|
51151
|
+
"pipelineOrchestrator.applyDeviceSettingsPatch": [{
|
|
51152
|
+
name: "deviceId",
|
|
51153
|
+
form: "single",
|
|
51154
|
+
optional: false
|
|
51155
|
+
}],
|
|
50650
51156
|
"pipelineOrchestrator.assignAudio": [{
|
|
50651
51157
|
name: "deviceId",
|
|
50652
51158
|
form: "single",
|
|
@@ -50692,6 +51198,16 @@ Object.freeze({
|
|
|
50692
51198
|
form: "single",
|
|
50693
51199
|
optional: false
|
|
50694
51200
|
}],
|
|
51201
|
+
"pipelineOrchestrator.getDeviceLiveContribution": [{
|
|
51202
|
+
name: "deviceId",
|
|
51203
|
+
form: "single",
|
|
51204
|
+
optional: false
|
|
51205
|
+
}],
|
|
51206
|
+
"pipelineOrchestrator.getDeviceSettingsContribution": [{
|
|
51207
|
+
name: "deviceId",
|
|
51208
|
+
form: "single",
|
|
51209
|
+
optional: false
|
|
51210
|
+
}],
|
|
50695
51211
|
"pipelineOrchestrator.getPipelineAssignment": [{
|
|
50696
51212
|
name: "deviceId",
|
|
50697
51213
|
form: "single",
|
|
@@ -50812,11 +51328,31 @@ Object.freeze({
|
|
|
50812
51328
|
form: "single",
|
|
50813
51329
|
optional: true
|
|
50814
51330
|
}],
|
|
51331
|
+
"powerMeter.getStatus": [{
|
|
51332
|
+
name: "deviceId",
|
|
51333
|
+
form: "single",
|
|
51334
|
+
optional: false
|
|
51335
|
+
}],
|
|
51336
|
+
"presence.getStatus": [{
|
|
51337
|
+
name: "deviceId",
|
|
51338
|
+
form: "single",
|
|
51339
|
+
optional: false
|
|
51340
|
+
}],
|
|
51341
|
+
"pressureSensor.getStatus": [{
|
|
51342
|
+
name: "deviceId",
|
|
51343
|
+
form: "single",
|
|
51344
|
+
optional: false
|
|
51345
|
+
}],
|
|
50815
51346
|
"privacyMask.getOptions": [{
|
|
50816
51347
|
name: "deviceId",
|
|
50817
51348
|
form: "single",
|
|
50818
51349
|
optional: false
|
|
50819
51350
|
}],
|
|
51351
|
+
"privacyMask.getStatus": [{
|
|
51352
|
+
name: "deviceId",
|
|
51353
|
+
form: "single",
|
|
51354
|
+
optional: false
|
|
51355
|
+
}],
|
|
50820
51356
|
"privacyMask.setAudioEnabled": [{
|
|
50821
51357
|
name: "deviceId",
|
|
50822
51358
|
form: "single",
|
|
@@ -50867,6 +51403,11 @@ Object.freeze({
|
|
|
50867
51403
|
form: "single",
|
|
50868
51404
|
optional: false
|
|
50869
51405
|
}],
|
|
51406
|
+
"ptz.getStatus": [{
|
|
51407
|
+
name: "deviceId",
|
|
51408
|
+
form: "single",
|
|
51409
|
+
optional: false
|
|
51410
|
+
}],
|
|
50870
51411
|
"ptz.goHome": [{
|
|
50871
51412
|
name: "deviceId",
|
|
50872
51413
|
form: "single",
|
|
@@ -50957,6 +51498,11 @@ Object.freeze({
|
|
|
50957
51498
|
form: "single",
|
|
50958
51499
|
optional: false
|
|
50959
51500
|
}],
|
|
51501
|
+
"recordingArchive.applyDeviceSettingsPatch": [{
|
|
51502
|
+
name: "deviceId",
|
|
51503
|
+
form: "single",
|
|
51504
|
+
optional: false
|
|
51505
|
+
}],
|
|
50960
51506
|
"recordingArchive.deleteFootprint": [{
|
|
50961
51507
|
name: "deviceId",
|
|
50962
51508
|
form: "single",
|
|
@@ -50977,6 +51523,21 @@ Object.freeze({
|
|
|
50977
51523
|
form: "single",
|
|
50978
51524
|
optional: false
|
|
50979
51525
|
}],
|
|
51526
|
+
"recordingArchive.getDeviceLiveContribution": [{
|
|
51527
|
+
name: "deviceId",
|
|
51528
|
+
form: "single",
|
|
51529
|
+
optional: false
|
|
51530
|
+
}],
|
|
51531
|
+
"recordingArchive.getDeviceSettingsContribution": [{
|
|
51532
|
+
name: "deviceId",
|
|
51533
|
+
form: "single",
|
|
51534
|
+
optional: false
|
|
51535
|
+
}],
|
|
51536
|
+
"recordingArchive.getStatus": [{
|
|
51537
|
+
name: "deviceId",
|
|
51538
|
+
form: "single",
|
|
51539
|
+
optional: false
|
|
51540
|
+
}],
|
|
50980
51541
|
"recordingArchive.listOpsLog": [{
|
|
50981
51542
|
name: "deviceId",
|
|
50982
51543
|
form: "single",
|
|
@@ -51062,6 +51623,11 @@ Object.freeze({
|
|
|
51062
51623
|
form: "single",
|
|
51063
51624
|
optional: false
|
|
51064
51625
|
}],
|
|
51626
|
+
"recordingOnboard.getStatus": [{
|
|
51627
|
+
name: "deviceId",
|
|
51628
|
+
form: "single",
|
|
51629
|
+
optional: false
|
|
51630
|
+
}],
|
|
51065
51631
|
"recordingOnboard.setSettings": [{
|
|
51066
51632
|
name: "deviceId",
|
|
51067
51633
|
form: "single",
|
|
@@ -51092,6 +51658,11 @@ Object.freeze({
|
|
|
51092
51658
|
form: "single",
|
|
51093
51659
|
optional: false
|
|
51094
51660
|
}],
|
|
51661
|
+
"sceneMonitor.getStatus": [{
|
|
51662
|
+
name: "deviceId",
|
|
51663
|
+
form: "single",
|
|
51664
|
+
optional: false
|
|
51665
|
+
}],
|
|
51095
51666
|
"sceneMonitor.listScenes": [{
|
|
51096
51667
|
name: "deviceId",
|
|
51097
51668
|
form: "single",
|
|
@@ -51117,6 +51688,11 @@ Object.freeze({
|
|
|
51117
51688
|
form: "single",
|
|
51118
51689
|
optional: false
|
|
51119
51690
|
}],
|
|
51691
|
+
"scriptRunner.getStatus": [{
|
|
51692
|
+
name: "deviceId",
|
|
51693
|
+
form: "single",
|
|
51694
|
+
optional: false
|
|
51695
|
+
}],
|
|
51120
51696
|
"scriptRunner.run": [{
|
|
51121
51697
|
name: "deviceId",
|
|
51122
51698
|
form: "single",
|
|
@@ -51127,11 +51703,31 @@ Object.freeze({
|
|
|
51127
51703
|
form: "single",
|
|
51128
51704
|
optional: false
|
|
51129
51705
|
}],
|
|
51706
|
+
"smoke.getStatus": [{
|
|
51707
|
+
name: "deviceId",
|
|
51708
|
+
form: "single",
|
|
51709
|
+
optional: false
|
|
51710
|
+
}],
|
|
51711
|
+
"snapshot.applyDeviceSettingsPatch": [{
|
|
51712
|
+
name: "deviceId",
|
|
51713
|
+
form: "single",
|
|
51714
|
+
optional: false
|
|
51715
|
+
}],
|
|
51130
51716
|
"snapshot.getDebugState": [{
|
|
51131
51717
|
name: "deviceId",
|
|
51132
51718
|
form: "single",
|
|
51133
51719
|
optional: false
|
|
51134
51720
|
}],
|
|
51721
|
+
"snapshot.getDeviceLiveContribution": [{
|
|
51722
|
+
name: "deviceId",
|
|
51723
|
+
form: "single",
|
|
51724
|
+
optional: false
|
|
51725
|
+
}],
|
|
51726
|
+
"snapshot.getDeviceSettingsContribution": [{
|
|
51727
|
+
name: "deviceId",
|
|
51728
|
+
form: "single",
|
|
51729
|
+
optional: false
|
|
51730
|
+
}],
|
|
51135
51731
|
"snapshot.getSnapshot": [{
|
|
51136
51732
|
name: "deviceId",
|
|
51137
51733
|
form: "single",
|
|
@@ -51148,6 +51744,11 @@ Object.freeze({
|
|
|
51148
51744
|
form: "array",
|
|
51149
51745
|
optional: false
|
|
51150
51746
|
}],
|
|
51747
|
+
"snapshot.getStatus": [{
|
|
51748
|
+
name: "deviceId",
|
|
51749
|
+
form: "single",
|
|
51750
|
+
optional: false
|
|
51751
|
+
}],
|
|
51151
51752
|
"snapshot.invalidateCache": [{
|
|
51152
51753
|
name: "deviceId",
|
|
51153
51754
|
form: "single",
|
|
@@ -51158,6 +51759,11 @@ Object.freeze({
|
|
|
51158
51759
|
form: "single",
|
|
51159
51760
|
optional: false
|
|
51160
51761
|
}],
|
|
51762
|
+
"streamBroker.applyDeviceSettingsPatch": [{
|
|
51763
|
+
name: "deviceId",
|
|
51764
|
+
form: "single",
|
|
51765
|
+
optional: false
|
|
51766
|
+
}],
|
|
51161
51767
|
"streamBroker.assignProfile": [{
|
|
51162
51768
|
name: "deviceId",
|
|
51163
51769
|
form: "single",
|
|
@@ -51173,6 +51779,16 @@ Object.freeze({
|
|
|
51173
51779
|
form: "single",
|
|
51174
51780
|
optional: false
|
|
51175
51781
|
}],
|
|
51782
|
+
"streamBroker.getDeviceLiveContribution": [{
|
|
51783
|
+
name: "deviceId",
|
|
51784
|
+
form: "single",
|
|
51785
|
+
optional: false
|
|
51786
|
+
}],
|
|
51787
|
+
"streamBroker.getDeviceSettingsContribution": [{
|
|
51788
|
+
name: "deviceId",
|
|
51789
|
+
form: "single",
|
|
51790
|
+
optional: false
|
|
51791
|
+
}],
|
|
51176
51792
|
"streamBroker.getStreamWithCodec": [{
|
|
51177
51793
|
name: "deviceId",
|
|
51178
51794
|
form: "single",
|
|
@@ -51233,16 +51849,46 @@ Object.freeze({
|
|
|
51233
51849
|
form: "single",
|
|
51234
51850
|
optional: false
|
|
51235
51851
|
}],
|
|
51852
|
+
"streamParams.getStatus": [{
|
|
51853
|
+
name: "deviceId",
|
|
51854
|
+
form: "single",
|
|
51855
|
+
optional: false
|
|
51856
|
+
}],
|
|
51236
51857
|
"streamParams.setProfile": [{
|
|
51237
51858
|
name: "deviceId",
|
|
51238
51859
|
form: "single",
|
|
51239
51860
|
optional: false
|
|
51240
51861
|
}],
|
|
51862
|
+
"switch.getStatus": [{
|
|
51863
|
+
name: "deviceId",
|
|
51864
|
+
form: "single",
|
|
51865
|
+
optional: false
|
|
51866
|
+
}],
|
|
51241
51867
|
"switch.setState": [{
|
|
51242
51868
|
name: "deviceId",
|
|
51243
51869
|
form: "single",
|
|
51244
51870
|
optional: false
|
|
51245
51871
|
}],
|
|
51872
|
+
"tamper.getStatus": [{
|
|
51873
|
+
name: "deviceId",
|
|
51874
|
+
form: "single",
|
|
51875
|
+
optional: false
|
|
51876
|
+
}],
|
|
51877
|
+
"temperatureSensor.getStatus": [{
|
|
51878
|
+
name: "deviceId",
|
|
51879
|
+
form: "single",
|
|
51880
|
+
optional: false
|
|
51881
|
+
}],
|
|
51882
|
+
"update.getStatus": [{
|
|
51883
|
+
name: "deviceId",
|
|
51884
|
+
form: "single",
|
|
51885
|
+
optional: false
|
|
51886
|
+
}],
|
|
51887
|
+
"vacuumControl.getStatus": [{
|
|
51888
|
+
name: "deviceId",
|
|
51889
|
+
form: "single",
|
|
51890
|
+
optional: false
|
|
51891
|
+
}],
|
|
51246
51892
|
"vacuumControl.locate": [{
|
|
51247
51893
|
name: "deviceId",
|
|
51248
51894
|
form: "single",
|
|
@@ -51278,6 +51924,11 @@ Object.freeze({
|
|
|
51278
51924
|
form: "single",
|
|
51279
51925
|
optional: false
|
|
51280
51926
|
}],
|
|
51927
|
+
"valve.getStatus": [{
|
|
51928
|
+
name: "deviceId",
|
|
51929
|
+
form: "single",
|
|
51930
|
+
optional: false
|
|
51931
|
+
}],
|
|
51281
51932
|
"valve.open": [{
|
|
51282
51933
|
name: "deviceId",
|
|
51283
51934
|
form: "single",
|
|
@@ -51293,6 +51944,11 @@ Object.freeze({
|
|
|
51293
51944
|
form: "single",
|
|
51294
51945
|
optional: false
|
|
51295
51946
|
}],
|
|
51947
|
+
"vibration.getStatus": [{
|
|
51948
|
+
name: "deviceId",
|
|
51949
|
+
form: "single",
|
|
51950
|
+
optional: false
|
|
51951
|
+
}],
|
|
51296
51952
|
"videoclips.dialClipStream": [{
|
|
51297
51953
|
name: "deviceId",
|
|
51298
51954
|
form: "single",
|
|
@@ -51328,6 +51984,11 @@ Object.freeze({
|
|
|
51328
51984
|
form: "single",
|
|
51329
51985
|
optional: false
|
|
51330
51986
|
}],
|
|
51987
|
+
"waterHeater.getStatus": [{
|
|
51988
|
+
name: "deviceId",
|
|
51989
|
+
form: "single",
|
|
51990
|
+
optional: false
|
|
51991
|
+
}],
|
|
51331
51992
|
"waterHeater.setAway": [{
|
|
51332
51993
|
name: "deviceId",
|
|
51333
51994
|
form: "single",
|
|
@@ -51343,6 +52004,11 @@ Object.freeze({
|
|
|
51343
52004
|
form: "single",
|
|
51344
52005
|
optional: false
|
|
51345
52006
|
}],
|
|
52007
|
+
"weather.getStatus": [{
|
|
52008
|
+
name: "deviceId",
|
|
52009
|
+
form: "single",
|
|
52010
|
+
optional: false
|
|
52011
|
+
}],
|
|
51346
52012
|
"webrtcSession.addIceCandidate": [{
|
|
51347
52013
|
name: "deviceId",
|
|
51348
52014
|
form: "single",
|
|
@@ -52661,4 +53327,4 @@ function bestLocationMatch(externalName, existing, threshold = .8) {
|
|
|
52661
53327
|
var MB = 1024 * 1024;
|
|
52662
53328
|
1024 * MB, 3072 * MB;
|
|
52663
53329
|
//#endregion
|
|
52664
|
-
export {
|
|
53330
|
+
export { oauthIntegrationCapability as $, connectivityCapability as A, string as At, floodCapability as B, buildAddonRouteProvider as C, _enum as Ct, carbonMonoxideCapability as D, number as Dt, calendarSourceCapability as E, literal as Et, deviceAdoptionCapability as F, lawnMowerControlCapability as G, humidifierCapability as H, deviceExportCapability as I, motionCapability as J, lockControlCapability as K, enumSensorCapability as L, controlCapability as M, unknown as Mt, coverCapability as N, url as Nt, climateControlCapability as O, object as Ot, deviceAdminLinkCapability as P, EventCategory as Pt, numericSensorCapability as Q, eventEmitterCapability as R, brokerCapability as S, nodePin as St, buttonCapability as T, discriminatedUnion as Tt, humiditySensorCapability as U, gasCapability as V, imageCapability as W, notificationOutputCapability as X, normalizeUnit as Y, notifierCapability as Z, automationControlCapability as _, DeviceRole as _t, COCO_TO_MACRO as a, scriptRunnerCapability as at, binaryCapability as b, BaseAddon as bt, FanDirectionSchema as c, tamperCapability as ct, TargetSchema as d, vacuumControlCapability as dt, parseAdminBase as et, accessoriesCapability as f, valveCapability as ft, ambientLightSensorCapability as g, DeviceFeature as gt, alarmPanelCapability as h, weatherCapability as ht, CAMERA_SWITCH_ORDER as i, pressureSensorCapability as it, contactCapability as j, union as jt, colorCapability as k, record as kt, HvacModeSchema as l, temperatureSensorCapability as lt, airQualitySensorCapability as m, waterHeaterCapability as mt, BaseDevice as n, prepareNotification as nt, CameraSwitchIdSchema as o, smokeCapability as ot, addonRoutesCapability as p, vibrationCapability as pt, mediaPlayerCapability as q, BaseDeviceProvider as r, presenceCapability as rt, EnumSensorDateTimeFormatSchema as s, switchCapability as st, AlarmArmModeSchema as t, powerMeterCapability as tt, MediaPlayerRepeatSchema as u, updateCapability as ut, batteryCapability as v, DeviceType as vt, buildDeviceAdminUrl as w, array as wt, brightnessCapability as x, createEvent as xt, bestLocationMatch as y, errMsg as yt, fanControlCapability as z };
|