@camstack/addon-post-analysis 1.2.633 → 1.2.635
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/THIRD_PARTY_MODELS.md +2 -2
- package/dist/{clip-model-registry-CeNmplcH.js → clip-model-registry-BHSAAWz-.js} +2109 -74
- package/dist/{clip-model-registry-CCbbEBYS.mjs → clip-model-registry-CySP4L5r.mjs} +2104 -75
- package/dist/embedding-encoder/index.js +1 -1
- package/dist/embedding-encoder/index.mjs +1 -1
- package/dist/pipeline-analytics/_stub.js +1 -1
- package/dist/pipeline-analytics/{_virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_analytics_widgets-ArpdWsMY.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_analytics_widgets-Cnd14w_u.mjs} +3 -3
- package/dist/pipeline-analytics/_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-j6sD2jfA.mjs +26 -0
- package/dist/pipeline-analytics/{hostInit-g5HpKRU7.mjs → hostInit-DxMujleG.mjs} +3 -3
- package/dist/pipeline-analytics/index.js +166 -1957
- package/dist/pipeline-analytics/index.mjs +165 -1956
- package/dist/pipeline-analytics/remoteEntry.js +1 -1
- package/package.json +1 -1
- package/dist/pipeline-analytics/_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BQq3WNOE.mjs +0 -26
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createHash } from "node:crypto";
|
|
2
|
-
//#region ../types/dist/event-category-
|
|
2
|
+
//#region ../types/dist/event-category-DHXxB8t9.mjs
|
|
3
3
|
var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
4
4
|
EventCategory["SystemBoot"] = "system.boot";
|
|
5
5
|
EventCategory["SystemAddonsReady"] = "system.addons-ready";
|
|
@@ -295,7 +295,7 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
295
295
|
* TRANSITION into that state (never per dispatch), and the node is dropped
|
|
296
296
|
* from the placement candidate set for as long as it holds.
|
|
297
297
|
*
|
|
298
|
-
* This exists because the state was previously invisible:
|
|
298
|
+
* This exists because the state was previously invisible: agent-a
|
|
299
299
|
* absorbed 283k inference errors in a day while still being handed cameras,
|
|
300
300
|
* and nothing in the system said so.
|
|
301
301
|
*
|
|
@@ -5632,7 +5632,7 @@ var ZodIssueCode = {
|
|
|
5632
5632
|
var ZodFirstPartyTypeKind;
|
|
5633
5633
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5634
5634
|
//#endregion
|
|
5635
|
-
//#region ../types/dist/sleep-
|
|
5635
|
+
//#region ../types/dist/sleep-BErAxhul.mjs
|
|
5636
5636
|
/**
|
|
5637
5637
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5638
5638
|
* window to float samples (D455).
|
|
@@ -8882,6 +8882,1981 @@ method(object({ deviceId: number() }), array(StreamSourceEntrySchema)), method(o
|
|
|
8882
8882
|
kind: "mutation",
|
|
8883
8883
|
auth: "admin"
|
|
8884
8884
|
}), method(object({ deviceId: number() }), unknown().nullable()), method(object({ deviceId: number() }), RawStateResultSchema.nullable(), { auth: "protected" });
|
|
8885
|
+
/** cap name -> the numeric state field whose strict advance IS the cap's one-shot event. */
|
|
8886
|
+
var CAP_ADVANCE_FIELDS = Object.freeze({ "doorbell": "lastPressedAt" });
|
|
8887
|
+
/** Every capability name, so addon code can check a name without the schema graph. */
|
|
8888
|
+
var CAP_NAMES = Object.freeze([
|
|
8889
|
+
"accessories",
|
|
8890
|
+
"addon-pages",
|
|
8891
|
+
"addon-pages-source",
|
|
8892
|
+
"addon-routes",
|
|
8893
|
+
"addon-settings",
|
|
8894
|
+
"addon-widgets",
|
|
8895
|
+
"addon-widgets-source",
|
|
8896
|
+
"addons",
|
|
8897
|
+
"admin-ui",
|
|
8898
|
+
"air-quality-sensor",
|
|
8899
|
+
"alarm-panel",
|
|
8900
|
+
"alerts",
|
|
8901
|
+
"ambient-light-sensor",
|
|
8902
|
+
"audio-analysis",
|
|
8903
|
+
"audio-analyzer",
|
|
8904
|
+
"audio-codec",
|
|
8905
|
+
"audio-metrics",
|
|
8906
|
+
"auth-provider",
|
|
8907
|
+
"automation-control",
|
|
8908
|
+
"backup",
|
|
8909
|
+
"battery",
|
|
8910
|
+
"binary",
|
|
8911
|
+
"brightness",
|
|
8912
|
+
"broker",
|
|
8913
|
+
"button",
|
|
8914
|
+
"calendar-source",
|
|
8915
|
+
"calendars",
|
|
8916
|
+
"camera-credentials",
|
|
8917
|
+
"camera-grid-layout",
|
|
8918
|
+
"camera-pipeline-config",
|
|
8919
|
+
"camera-streams",
|
|
8920
|
+
"carbon-monoxide",
|
|
8921
|
+
"climate-control",
|
|
8922
|
+
"color",
|
|
8923
|
+
"composer",
|
|
8924
|
+
"connection-test",
|
|
8925
|
+
"connectivity",
|
|
8926
|
+
"consumables",
|
|
8927
|
+
"contact",
|
|
8928
|
+
"control",
|
|
8929
|
+
"core-blocks",
|
|
8930
|
+
"cover",
|
|
8931
|
+
"custom-model-registry",
|
|
8932
|
+
"data-store-provider",
|
|
8933
|
+
"database-snapshot",
|
|
8934
|
+
"day-night",
|
|
8935
|
+
"decoder",
|
|
8936
|
+
"detection-pipeline",
|
|
8937
|
+
"device-admin-link",
|
|
8938
|
+
"device-adoption",
|
|
8939
|
+
"device-credentials",
|
|
8940
|
+
"device-discovery",
|
|
8941
|
+
"device-export",
|
|
8942
|
+
"device-extension",
|
|
8943
|
+
"device-history",
|
|
8944
|
+
"device-manager",
|
|
8945
|
+
"device-ops",
|
|
8946
|
+
"device-provider",
|
|
8947
|
+
"device-removal-hook",
|
|
8948
|
+
"device-state",
|
|
8949
|
+
"device-status",
|
|
8950
|
+
"dishwasher",
|
|
8951
|
+
"display-palette",
|
|
8952
|
+
"doorbell",
|
|
8953
|
+
"embedding-encoder",
|
|
8954
|
+
"enum-sensor",
|
|
8955
|
+
"event-emitter",
|
|
8956
|
+
"face-gallery",
|
|
8957
|
+
"failure-contribution",
|
|
8958
|
+
"fan-control",
|
|
8959
|
+
"feature-probe",
|
|
8960
|
+
"filesystem-browse",
|
|
8961
|
+
"flood",
|
|
8962
|
+
"gas",
|
|
8963
|
+
"heating-valve",
|
|
8964
|
+
"humidifier",
|
|
8965
|
+
"humidity-sensor",
|
|
8966
|
+
"image",
|
|
8967
|
+
"image-settings",
|
|
8968
|
+
"integrations",
|
|
8969
|
+
"intercom",
|
|
8970
|
+
"keychain",
|
|
8971
|
+
"keychain-admin",
|
|
8972
|
+
"lawn-mower-control",
|
|
8973
|
+
"llm",
|
|
8974
|
+
"llm-runtime",
|
|
8975
|
+
"load-contribution",
|
|
8976
|
+
"local-network",
|
|
8977
|
+
"lock-control",
|
|
8978
|
+
"log-channels",
|
|
8979
|
+
"log-destination",
|
|
8980
|
+
"login-method",
|
|
8981
|
+
"media-player",
|
|
8982
|
+
"mesh-network",
|
|
8983
|
+
"metrics-provider",
|
|
8984
|
+
"model-convert",
|
|
8985
|
+
"model-distributor",
|
|
8986
|
+
"motion",
|
|
8987
|
+
"motion-detection",
|
|
8988
|
+
"motion-trigger",
|
|
8989
|
+
"motion-zones",
|
|
8990
|
+
"mqtt-broker",
|
|
8991
|
+
"native-object-detection",
|
|
8992
|
+
"navigation",
|
|
8993
|
+
"network-access",
|
|
8994
|
+
"network-link",
|
|
8995
|
+
"network-quality",
|
|
8996
|
+
"node-certificates",
|
|
8997
|
+
"nodes",
|
|
8998
|
+
"notification-output",
|
|
8999
|
+
"notification-rules",
|
|
9000
|
+
"notifier",
|
|
9001
|
+
"numeric-sensor",
|
|
9002
|
+
"oauth-integration",
|
|
9003
|
+
"oidc-connections",
|
|
9004
|
+
"osd",
|
|
9005
|
+
"osd-manager",
|
|
9006
|
+
"pet-feeder",
|
|
9007
|
+
"pipeline-analytics",
|
|
9008
|
+
"pipeline-executor",
|
|
9009
|
+
"pipeline-orchestrator",
|
|
9010
|
+
"pipeline-runner",
|
|
9011
|
+
"plate-gallery",
|
|
9012
|
+
"platform-probe",
|
|
9013
|
+
"power-meter",
|
|
9014
|
+
"presence",
|
|
9015
|
+
"pressure-sensor",
|
|
9016
|
+
"privacy-mask",
|
|
9017
|
+
"ptz",
|
|
9018
|
+
"ptz-autotrack",
|
|
9019
|
+
"reboot",
|
|
9020
|
+
"record-entries",
|
|
9021
|
+
"recording",
|
|
9022
|
+
"recording-archive",
|
|
9023
|
+
"recording-export",
|
|
9024
|
+
"recording-onboard",
|
|
9025
|
+
"recording-signal",
|
|
9026
|
+
"records",
|
|
9027
|
+
"running-state",
|
|
9028
|
+
"scene-monitor",
|
|
9029
|
+
"script-runner",
|
|
9030
|
+
"server-management",
|
|
9031
|
+
"settings-store",
|
|
9032
|
+
"smoke",
|
|
9033
|
+
"smtp-provider",
|
|
9034
|
+
"snapshot",
|
|
9035
|
+
"sso-bridge",
|
|
9036
|
+
"storage",
|
|
9037
|
+
"storage-admin",
|
|
9038
|
+
"storage-evictable",
|
|
9039
|
+
"storage-migration",
|
|
9040
|
+
"storage-occupancy",
|
|
9041
|
+
"storage-provider",
|
|
9042
|
+
"stream-broker",
|
|
9043
|
+
"stream-catalog",
|
|
9044
|
+
"stream-params",
|
|
9045
|
+
"stream-signals",
|
|
9046
|
+
"switch",
|
|
9047
|
+
"system",
|
|
9048
|
+
"tamper",
|
|
9049
|
+
"temperature-sensor",
|
|
9050
|
+
"terminal-session",
|
|
9051
|
+
"toast",
|
|
9052
|
+
"training",
|
|
9053
|
+
"training-provider",
|
|
9054
|
+
"turn-provider",
|
|
9055
|
+
"update",
|
|
9056
|
+
"user-management",
|
|
9057
|
+
"user-passkeys",
|
|
9058
|
+
"vacuum-control",
|
|
9059
|
+
"valve",
|
|
9060
|
+
"vector-store",
|
|
9061
|
+
"vibration",
|
|
9062
|
+
"videoclips",
|
|
9063
|
+
"viewer-ui",
|
|
9064
|
+
"water-heater",
|
|
9065
|
+
"weather",
|
|
9066
|
+
"webrtc-session",
|
|
9067
|
+
"zone-analytics",
|
|
9068
|
+
"zone-rules",
|
|
9069
|
+
"zones"
|
|
9070
|
+
]);
|
|
9071
|
+
Object.freeze({
|
|
9072
|
+
"air-quality-sensor": [
|
|
9073
|
+
{
|
|
9074
|
+
"path": "co2Ppm",
|
|
9075
|
+
"valueType": "number"
|
|
9076
|
+
},
|
|
9077
|
+
{
|
|
9078
|
+
"path": "vocPpb",
|
|
9079
|
+
"valueType": "number"
|
|
9080
|
+
},
|
|
9081
|
+
{
|
|
9082
|
+
"path": "pm25",
|
|
9083
|
+
"valueType": "number"
|
|
9084
|
+
},
|
|
9085
|
+
{
|
|
9086
|
+
"path": "pm10",
|
|
9087
|
+
"valueType": "number"
|
|
9088
|
+
},
|
|
9089
|
+
{
|
|
9090
|
+
"path": "aqi",
|
|
9091
|
+
"valueType": "number"
|
|
9092
|
+
},
|
|
9093
|
+
{
|
|
9094
|
+
"path": "unit",
|
|
9095
|
+
"valueType": "string"
|
|
9096
|
+
},
|
|
9097
|
+
{
|
|
9098
|
+
"path": "precision",
|
|
9099
|
+
"valueType": "number"
|
|
9100
|
+
}
|
|
9101
|
+
],
|
|
9102
|
+
"alarm-panel": [
|
|
9103
|
+
{
|
|
9104
|
+
"path": "state",
|
|
9105
|
+
"valueType": "enum",
|
|
9106
|
+
"enumValues": [
|
|
9107
|
+
"disarmed",
|
|
9108
|
+
"armed_home",
|
|
9109
|
+
"armed_away",
|
|
9110
|
+
"armed_night",
|
|
9111
|
+
"armed_vacation",
|
|
9112
|
+
"armed_custom_bypass",
|
|
9113
|
+
"arming",
|
|
9114
|
+
"disarming",
|
|
9115
|
+
"pending",
|
|
9116
|
+
"triggered"
|
|
9117
|
+
]
|
|
9118
|
+
},
|
|
9119
|
+
{
|
|
9120
|
+
"path": "targetMode",
|
|
9121
|
+
"valueType": "enum",
|
|
9122
|
+
"enumValues": [
|
|
9123
|
+
"home",
|
|
9124
|
+
"away",
|
|
9125
|
+
"night",
|
|
9126
|
+
"vacation",
|
|
9127
|
+
"custom_bypass"
|
|
9128
|
+
]
|
|
9129
|
+
},
|
|
9130
|
+
{
|
|
9131
|
+
"path": "requiresCode",
|
|
9132
|
+
"valueType": "boolean"
|
|
9133
|
+
}
|
|
9134
|
+
],
|
|
9135
|
+
"ambient-light-sensor": [
|
|
9136
|
+
{
|
|
9137
|
+
"path": "lux",
|
|
9138
|
+
"valueType": "number"
|
|
9139
|
+
},
|
|
9140
|
+
{
|
|
9141
|
+
"path": "unit",
|
|
9142
|
+
"valueType": "string"
|
|
9143
|
+
},
|
|
9144
|
+
{
|
|
9145
|
+
"path": "precision",
|
|
9146
|
+
"valueType": "number"
|
|
9147
|
+
}
|
|
9148
|
+
],
|
|
9149
|
+
"audio-metrics": [
|
|
9150
|
+
{
|
|
9151
|
+
"path": "ts",
|
|
9152
|
+
"valueType": "number"
|
|
9153
|
+
},
|
|
9154
|
+
{
|
|
9155
|
+
"path": "windowSec",
|
|
9156
|
+
"valueType": "number"
|
|
9157
|
+
},
|
|
9158
|
+
{
|
|
9159
|
+
"path": "level.rms",
|
|
9160
|
+
"valueType": "number"
|
|
9161
|
+
},
|
|
9162
|
+
{
|
|
9163
|
+
"path": "level.dbfs",
|
|
9164
|
+
"valueType": "number"
|
|
9165
|
+
},
|
|
9166
|
+
{
|
|
9167
|
+
"path": "peakDbfs",
|
|
9168
|
+
"valueType": "number"
|
|
9169
|
+
},
|
|
9170
|
+
{
|
|
9171
|
+
"path": "avgDbfs",
|
|
9172
|
+
"valueType": "number"
|
|
9173
|
+
},
|
|
9174
|
+
{
|
|
9175
|
+
"path": "current.className",
|
|
9176
|
+
"valueType": "string"
|
|
9177
|
+
},
|
|
9178
|
+
{
|
|
9179
|
+
"path": "current.score",
|
|
9180
|
+
"valueType": "number"
|
|
9181
|
+
},
|
|
9182
|
+
{
|
|
9183
|
+
"path": "current.timestamp",
|
|
9184
|
+
"valueType": "number"
|
|
9185
|
+
}
|
|
9186
|
+
],
|
|
9187
|
+
"automation-control": [
|
|
9188
|
+
{
|
|
9189
|
+
"path": "enabled",
|
|
9190
|
+
"valueType": "boolean"
|
|
9191
|
+
},
|
|
9192
|
+
{
|
|
9193
|
+
"path": "isRunning",
|
|
9194
|
+
"valueType": "boolean"
|
|
9195
|
+
},
|
|
9196
|
+
{
|
|
9197
|
+
"path": "lastTriggeredAt",
|
|
9198
|
+
"valueType": "number"
|
|
9199
|
+
},
|
|
9200
|
+
{
|
|
9201
|
+
"path": "lastError",
|
|
9202
|
+
"valueType": "string"
|
|
9203
|
+
}
|
|
9204
|
+
],
|
|
9205
|
+
"battery": [
|
|
9206
|
+
{
|
|
9207
|
+
"path": "percentage",
|
|
9208
|
+
"valueType": "number"
|
|
9209
|
+
},
|
|
9210
|
+
{
|
|
9211
|
+
"path": "charging",
|
|
9212
|
+
"valueType": "enum",
|
|
9213
|
+
"enumValues": [
|
|
9214
|
+
"dc",
|
|
9215
|
+
"solar",
|
|
9216
|
+
"none",
|
|
9217
|
+
"unknown"
|
|
9218
|
+
]
|
|
9219
|
+
},
|
|
9220
|
+
{
|
|
9221
|
+
"path": "sleeping",
|
|
9222
|
+
"valueType": "boolean"
|
|
9223
|
+
},
|
|
9224
|
+
{
|
|
9225
|
+
"path": "lastUpdated",
|
|
9226
|
+
"valueType": "number"
|
|
9227
|
+
},
|
|
9228
|
+
{
|
|
9229
|
+
"path": "lastContactAt",
|
|
9230
|
+
"valueType": "number"
|
|
9231
|
+
},
|
|
9232
|
+
{
|
|
9233
|
+
"path": "lastFullRefreshAt",
|
|
9234
|
+
"valueType": "number"
|
|
9235
|
+
},
|
|
9236
|
+
{
|
|
9237
|
+
"path": "binary",
|
|
9238
|
+
"valueType": "boolean"
|
|
9239
|
+
}
|
|
9240
|
+
],
|
|
9241
|
+
"binary": [{
|
|
9242
|
+
"path": "on",
|
|
9243
|
+
"valueType": "boolean"
|
|
9244
|
+
}],
|
|
9245
|
+
"brightness": [{
|
|
9246
|
+
"path": "percentage",
|
|
9247
|
+
"valueType": "number"
|
|
9248
|
+
}],
|
|
9249
|
+
"broker": [{
|
|
9250
|
+
"path": "brokerCount",
|
|
9251
|
+
"valueType": "number"
|
|
9252
|
+
}, {
|
|
9253
|
+
"path": "connectedCount",
|
|
9254
|
+
"valueType": "number"
|
|
9255
|
+
}],
|
|
9256
|
+
"camera-credentials": [
|
|
9257
|
+
{
|
|
9258
|
+
"path": "host",
|
|
9259
|
+
"valueType": "string"
|
|
9260
|
+
},
|
|
9261
|
+
{
|
|
9262
|
+
"path": "port",
|
|
9263
|
+
"valueType": "number"
|
|
9264
|
+
},
|
|
9265
|
+
{
|
|
9266
|
+
"path": "onvifPort",
|
|
9267
|
+
"valueType": "number"
|
|
9268
|
+
},
|
|
9269
|
+
{
|
|
9270
|
+
"path": "rtspPort",
|
|
9271
|
+
"valueType": "number"
|
|
9272
|
+
},
|
|
9273
|
+
{
|
|
9274
|
+
"path": "https",
|
|
9275
|
+
"valueType": "boolean"
|
|
9276
|
+
},
|
|
9277
|
+
{
|
|
9278
|
+
"path": "hasUsername",
|
|
9279
|
+
"valueType": "boolean"
|
|
9280
|
+
},
|
|
9281
|
+
{
|
|
9282
|
+
"path": "hasPassword",
|
|
9283
|
+
"valueType": "boolean"
|
|
9284
|
+
},
|
|
9285
|
+
{
|
|
9286
|
+
"path": "onvifProfile",
|
|
9287
|
+
"valueType": "string"
|
|
9288
|
+
}
|
|
9289
|
+
],
|
|
9290
|
+
"camera-streams": [
|
|
9291
|
+
{
|
|
9292
|
+
"path": "online",
|
|
9293
|
+
"valueType": "boolean"
|
|
9294
|
+
},
|
|
9295
|
+
{
|
|
9296
|
+
"path": "slotStatuses.high",
|
|
9297
|
+
"valueType": "enum",
|
|
9298
|
+
"enumValues": [
|
|
9299
|
+
"unassigned",
|
|
9300
|
+
"idle",
|
|
9301
|
+
"connecting",
|
|
9302
|
+
"streaming",
|
|
9303
|
+
"error"
|
|
9304
|
+
]
|
|
9305
|
+
},
|
|
9306
|
+
{
|
|
9307
|
+
"path": "slotStatuses.mid",
|
|
9308
|
+
"valueType": "enum",
|
|
9309
|
+
"enumValues": [
|
|
9310
|
+
"unassigned",
|
|
9311
|
+
"idle",
|
|
9312
|
+
"connecting",
|
|
9313
|
+
"streaming",
|
|
9314
|
+
"error"
|
|
9315
|
+
]
|
|
9316
|
+
},
|
|
9317
|
+
{
|
|
9318
|
+
"path": "slotStatuses.low",
|
|
9319
|
+
"valueType": "enum",
|
|
9320
|
+
"enumValues": [
|
|
9321
|
+
"unassigned",
|
|
9322
|
+
"idle",
|
|
9323
|
+
"connecting",
|
|
9324
|
+
"streaming",
|
|
9325
|
+
"error"
|
|
9326
|
+
]
|
|
9327
|
+
},
|
|
9328
|
+
{
|
|
9329
|
+
"path": "slotErrors.high",
|
|
9330
|
+
"valueType": "string"
|
|
9331
|
+
},
|
|
9332
|
+
{
|
|
9333
|
+
"path": "slotErrors.mid",
|
|
9334
|
+
"valueType": "string"
|
|
9335
|
+
},
|
|
9336
|
+
{
|
|
9337
|
+
"path": "slotErrors.low",
|
|
9338
|
+
"valueType": "string"
|
|
9339
|
+
}
|
|
9340
|
+
],
|
|
9341
|
+
"carbon-monoxide": [{
|
|
9342
|
+
"path": "detected",
|
|
9343
|
+
"valueType": "boolean"
|
|
9344
|
+
}],
|
|
9345
|
+
"climate-control": [
|
|
9346
|
+
{
|
|
9347
|
+
"path": "mode",
|
|
9348
|
+
"valueType": "enum",
|
|
9349
|
+
"enumValues": [
|
|
9350
|
+
"off",
|
|
9351
|
+
"heat",
|
|
9352
|
+
"cool",
|
|
9353
|
+
"auto",
|
|
9354
|
+
"heat_cool",
|
|
9355
|
+
"fan_only",
|
|
9356
|
+
"dry"
|
|
9357
|
+
]
|
|
9358
|
+
},
|
|
9359
|
+
{
|
|
9360
|
+
"path": "fanMode",
|
|
9361
|
+
"valueType": "string"
|
|
9362
|
+
},
|
|
9363
|
+
{
|
|
9364
|
+
"path": "preset",
|
|
9365
|
+
"valueType": "string"
|
|
9366
|
+
},
|
|
9367
|
+
{
|
|
9368
|
+
"path": "target",
|
|
9369
|
+
"valueType": "number"
|
|
9370
|
+
},
|
|
9371
|
+
{
|
|
9372
|
+
"path": "targetHigh",
|
|
9373
|
+
"valueType": "number"
|
|
9374
|
+
},
|
|
9375
|
+
{
|
|
9376
|
+
"path": "targetLow",
|
|
9377
|
+
"valueType": "number"
|
|
9378
|
+
},
|
|
9379
|
+
{
|
|
9380
|
+
"path": "targetHumidity",
|
|
9381
|
+
"valueType": "number"
|
|
9382
|
+
},
|
|
9383
|
+
{
|
|
9384
|
+
"path": "currentTemp",
|
|
9385
|
+
"valueType": "number"
|
|
9386
|
+
},
|
|
9387
|
+
{
|
|
9388
|
+
"path": "currentHumidity",
|
|
9389
|
+
"valueType": "number"
|
|
9390
|
+
},
|
|
9391
|
+
{
|
|
9392
|
+
"path": "swingVertical",
|
|
9393
|
+
"valueType": "boolean"
|
|
9394
|
+
},
|
|
9395
|
+
{
|
|
9396
|
+
"path": "swingHorizontal",
|
|
9397
|
+
"valueType": "boolean"
|
|
9398
|
+
},
|
|
9399
|
+
{
|
|
9400
|
+
"path": "minTemp",
|
|
9401
|
+
"valueType": "number"
|
|
9402
|
+
},
|
|
9403
|
+
{
|
|
9404
|
+
"path": "maxTemp",
|
|
9405
|
+
"valueType": "number"
|
|
9406
|
+
},
|
|
9407
|
+
{
|
|
9408
|
+
"path": "tempStep",
|
|
9409
|
+
"valueType": "number"
|
|
9410
|
+
}
|
|
9411
|
+
],
|
|
9412
|
+
"color": [
|
|
9413
|
+
{
|
|
9414
|
+
"path": "mode",
|
|
9415
|
+
"valueType": "enum",
|
|
9416
|
+
"enumValues": [
|
|
9417
|
+
"rgb",
|
|
9418
|
+
"hsv",
|
|
9419
|
+
"mired"
|
|
9420
|
+
]
|
|
9421
|
+
},
|
|
9422
|
+
{
|
|
9423
|
+
"path": "rgb.r",
|
|
9424
|
+
"valueType": "number"
|
|
9425
|
+
},
|
|
9426
|
+
{
|
|
9427
|
+
"path": "rgb.g",
|
|
9428
|
+
"valueType": "number"
|
|
9429
|
+
},
|
|
9430
|
+
{
|
|
9431
|
+
"path": "rgb.b",
|
|
9432
|
+
"valueType": "number"
|
|
9433
|
+
},
|
|
9434
|
+
{
|
|
9435
|
+
"path": "hsv.h",
|
|
9436
|
+
"valueType": "number"
|
|
9437
|
+
},
|
|
9438
|
+
{
|
|
9439
|
+
"path": "hsv.s",
|
|
9440
|
+
"valueType": "number"
|
|
9441
|
+
},
|
|
9442
|
+
{
|
|
9443
|
+
"path": "hsv.v",
|
|
9444
|
+
"valueType": "number"
|
|
9445
|
+
},
|
|
9446
|
+
{
|
|
9447
|
+
"path": "mireds",
|
|
9448
|
+
"valueType": "number"
|
|
9449
|
+
}
|
|
9450
|
+
],
|
|
9451
|
+
"connectivity": [{
|
|
9452
|
+
"path": "connected",
|
|
9453
|
+
"valueType": "boolean"
|
|
9454
|
+
}],
|
|
9455
|
+
"contact": [{
|
|
9456
|
+
"path": "entryOpen",
|
|
9457
|
+
"valueType": "boolean"
|
|
9458
|
+
}],
|
|
9459
|
+
"control": [
|
|
9460
|
+
{
|
|
9461
|
+
"path": "kind",
|
|
9462
|
+
"valueType": "enum",
|
|
9463
|
+
"enumValues": [
|
|
9464
|
+
"numeric",
|
|
9465
|
+
"select",
|
|
9466
|
+
"text",
|
|
9467
|
+
"datetime"
|
|
9468
|
+
]
|
|
9469
|
+
},
|
|
9470
|
+
{
|
|
9471
|
+
"path": "unit",
|
|
9472
|
+
"valueType": "string"
|
|
9473
|
+
},
|
|
9474
|
+
{
|
|
9475
|
+
"path": "min",
|
|
9476
|
+
"valueType": "number"
|
|
9477
|
+
},
|
|
9478
|
+
{
|
|
9479
|
+
"path": "max",
|
|
9480
|
+
"valueType": "number"
|
|
9481
|
+
},
|
|
9482
|
+
{
|
|
9483
|
+
"path": "step",
|
|
9484
|
+
"valueType": "number"
|
|
9485
|
+
},
|
|
9486
|
+
{
|
|
9487
|
+
"path": "precision",
|
|
9488
|
+
"valueType": "number"
|
|
9489
|
+
},
|
|
9490
|
+
{
|
|
9491
|
+
"path": "format",
|
|
9492
|
+
"valueType": "enum",
|
|
9493
|
+
"enumValues": [
|
|
9494
|
+
"date",
|
|
9495
|
+
"time",
|
|
9496
|
+
"datetime"
|
|
9497
|
+
]
|
|
9498
|
+
}
|
|
9499
|
+
],
|
|
9500
|
+
"cover": [
|
|
9501
|
+
{
|
|
9502
|
+
"path": "state",
|
|
9503
|
+
"valueType": "enum",
|
|
9504
|
+
"enumValues": [
|
|
9505
|
+
"open",
|
|
9506
|
+
"opening",
|
|
9507
|
+
"closing",
|
|
9508
|
+
"closed",
|
|
9509
|
+
"stopped"
|
|
9510
|
+
]
|
|
9511
|
+
},
|
|
9512
|
+
{
|
|
9513
|
+
"path": "position",
|
|
9514
|
+
"valueType": "number"
|
|
9515
|
+
},
|
|
9516
|
+
{
|
|
9517
|
+
"path": "tiltPosition",
|
|
9518
|
+
"valueType": "number"
|
|
9519
|
+
}
|
|
9520
|
+
],
|
|
9521
|
+
"day-night": [
|
|
9522
|
+
{
|
|
9523
|
+
"path": "mode",
|
|
9524
|
+
"valueType": "enum",
|
|
9525
|
+
"enumValues": [
|
|
9526
|
+
"auto",
|
|
9527
|
+
"day",
|
|
9528
|
+
"night",
|
|
9529
|
+
"schedule"
|
|
9530
|
+
]
|
|
9531
|
+
},
|
|
9532
|
+
{
|
|
9533
|
+
"path": "sensitivity",
|
|
9534
|
+
"valueType": "number"
|
|
9535
|
+
},
|
|
9536
|
+
{
|
|
9537
|
+
"path": "switchDelaySec",
|
|
9538
|
+
"valueType": "number"
|
|
9539
|
+
}
|
|
9540
|
+
],
|
|
9541
|
+
"device-adoption": [
|
|
9542
|
+
{
|
|
9543
|
+
"path": "lastDiscoveryAt",
|
|
9544
|
+
"valueType": "number"
|
|
9545
|
+
},
|
|
9546
|
+
{
|
|
9547
|
+
"path": "candidateCount",
|
|
9548
|
+
"valueType": "number"
|
|
9549
|
+
},
|
|
9550
|
+
{
|
|
9551
|
+
"path": "adoptedCount",
|
|
9552
|
+
"valueType": "number"
|
|
9553
|
+
},
|
|
9554
|
+
{
|
|
9555
|
+
"path": "lastError",
|
|
9556
|
+
"valueType": "string"
|
|
9557
|
+
}
|
|
9558
|
+
],
|
|
9559
|
+
"device-discovery": [{
|
|
9560
|
+
"path": "lastDiscoveryAt",
|
|
9561
|
+
"valueType": "number"
|
|
9562
|
+
}, {
|
|
9563
|
+
"path": "lastError",
|
|
9564
|
+
"valueType": "string"
|
|
9565
|
+
}],
|
|
9566
|
+
"device-export": [
|
|
9567
|
+
{
|
|
9568
|
+
"path": "linkState",
|
|
9569
|
+
"valueType": "enum",
|
|
9570
|
+
"enumValues": [
|
|
9571
|
+
"unlinked",
|
|
9572
|
+
"linked",
|
|
9573
|
+
"error"
|
|
9574
|
+
]
|
|
9575
|
+
},
|
|
9576
|
+
{
|
|
9577
|
+
"path": "exposedDeviceCount",
|
|
9578
|
+
"valueType": "number"
|
|
9579
|
+
},
|
|
9580
|
+
{
|
|
9581
|
+
"path": "error",
|
|
9582
|
+
"valueType": "string"
|
|
9583
|
+
},
|
|
9584
|
+
{
|
|
9585
|
+
"path": "setup.qr",
|
|
9586
|
+
"valueType": "string"
|
|
9587
|
+
},
|
|
9588
|
+
{
|
|
9589
|
+
"path": "setup.note",
|
|
9590
|
+
"valueType": "string"
|
|
9591
|
+
}
|
|
9592
|
+
],
|
|
9593
|
+
"device-status": [{
|
|
9594
|
+
"path": "online",
|
|
9595
|
+
"valueType": "boolean"
|
|
9596
|
+
}],
|
|
9597
|
+
"dishwasher": [
|
|
9598
|
+
{
|
|
9599
|
+
"path": "availability",
|
|
9600
|
+
"valueType": "enum",
|
|
9601
|
+
"enumValues": [
|
|
9602
|
+
"available",
|
|
9603
|
+
"offline",
|
|
9604
|
+
"description-missing"
|
|
9605
|
+
]
|
|
9606
|
+
},
|
|
9607
|
+
{
|
|
9608
|
+
"path": "state",
|
|
9609
|
+
"valueType": "enum",
|
|
9610
|
+
"enumValues": [
|
|
9611
|
+
"idle",
|
|
9612
|
+
"running",
|
|
9613
|
+
"paused",
|
|
9614
|
+
"finished",
|
|
9615
|
+
"error",
|
|
9616
|
+
"unavailable"
|
|
9617
|
+
]
|
|
9618
|
+
},
|
|
9619
|
+
{
|
|
9620
|
+
"path": "operationState",
|
|
9621
|
+
"valueType": "enum",
|
|
9622
|
+
"enumValues": [
|
|
9623
|
+
"Inactive",
|
|
9624
|
+
"Ready",
|
|
9625
|
+
"DelayedStart",
|
|
9626
|
+
"Run",
|
|
9627
|
+
"Pause",
|
|
9628
|
+
"ActionRequired",
|
|
9629
|
+
"Finished",
|
|
9630
|
+
"Error",
|
|
9631
|
+
"Aborting"
|
|
9632
|
+
]
|
|
9633
|
+
},
|
|
9634
|
+
{
|
|
9635
|
+
"path": "program",
|
|
9636
|
+
"valueType": "string"
|
|
9637
|
+
},
|
|
9638
|
+
{
|
|
9639
|
+
"path": "selectedProgram",
|
|
9640
|
+
"valueType": "string"
|
|
9641
|
+
},
|
|
9642
|
+
{
|
|
9643
|
+
"path": "remainingSeconds",
|
|
9644
|
+
"valueType": "number"
|
|
9645
|
+
},
|
|
9646
|
+
{
|
|
9647
|
+
"path": "delayedStartSeconds",
|
|
9648
|
+
"valueType": "number"
|
|
9649
|
+
},
|
|
9650
|
+
{
|
|
9651
|
+
"path": "progressPercent",
|
|
9652
|
+
"valueType": "number"
|
|
9653
|
+
},
|
|
9654
|
+
{
|
|
9655
|
+
"path": "doorOpen",
|
|
9656
|
+
"valueType": "boolean"
|
|
9657
|
+
},
|
|
9658
|
+
{
|
|
9659
|
+
"path": "doorLocked",
|
|
9660
|
+
"valueType": "boolean"
|
|
9661
|
+
},
|
|
9662
|
+
{
|
|
9663
|
+
"path": "remoteStartAllowed",
|
|
9664
|
+
"valueType": "boolean"
|
|
9665
|
+
},
|
|
9666
|
+
{
|
|
9667
|
+
"path": "remoteControlActive",
|
|
9668
|
+
"valueType": "boolean"
|
|
9669
|
+
},
|
|
9670
|
+
{
|
|
9671
|
+
"path": "localControlActive",
|
|
9672
|
+
"valueType": "boolean"
|
|
9673
|
+
},
|
|
9674
|
+
{
|
|
9675
|
+
"path": "powerOn",
|
|
9676
|
+
"valueType": "boolean"
|
|
9677
|
+
},
|
|
9678
|
+
{
|
|
9679
|
+
"path": "powerState",
|
|
9680
|
+
"valueType": "string"
|
|
9681
|
+
},
|
|
9682
|
+
{
|
|
9683
|
+
"path": "filterCleaningDue",
|
|
9684
|
+
"valueType": "boolean"
|
|
9685
|
+
},
|
|
9686
|
+
{
|
|
9687
|
+
"path": "machineCareDue",
|
|
9688
|
+
"valueType": "boolean"
|
|
9689
|
+
},
|
|
9690
|
+
{
|
|
9691
|
+
"path": "machineCareRemainingRuns",
|
|
9692
|
+
"valueType": "number"
|
|
9693
|
+
},
|
|
9694
|
+
{
|
|
9695
|
+
"path": "halfLoad",
|
|
9696
|
+
"valueType": "boolean"
|
|
9697
|
+
},
|
|
9698
|
+
{
|
|
9699
|
+
"path": "hygienePlus",
|
|
9700
|
+
"valueType": "boolean"
|
|
9701
|
+
},
|
|
9702
|
+
{
|
|
9703
|
+
"path": "extraDry",
|
|
9704
|
+
"valueType": "boolean"
|
|
9705
|
+
},
|
|
9706
|
+
{
|
|
9707
|
+
"path": "intensiveZone",
|
|
9708
|
+
"valueType": "boolean"
|
|
9709
|
+
},
|
|
9710
|
+
{
|
|
9711
|
+
"path": "varioSpeedPlus",
|
|
9712
|
+
"valueType": "boolean"
|
|
9713
|
+
},
|
|
9714
|
+
{
|
|
9715
|
+
"path": "childLock",
|
|
9716
|
+
"valueType": "boolean"
|
|
9717
|
+
},
|
|
9718
|
+
{
|
|
9719
|
+
"path": "errorCode",
|
|
9720
|
+
"valueType": "number"
|
|
9721
|
+
},
|
|
9722
|
+
{
|
|
9723
|
+
"path": "errorLabel",
|
|
9724
|
+
"valueType": "string"
|
|
9725
|
+
}
|
|
9726
|
+
],
|
|
9727
|
+
"doorbell": [{
|
|
9728
|
+
"path": "lastPressedAt",
|
|
9729
|
+
"valueType": "number"
|
|
9730
|
+
}, {
|
|
9731
|
+
"path": "pressCountSinceStart",
|
|
9732
|
+
"valueType": "number"
|
|
9733
|
+
}],
|
|
9734
|
+
"enum-sensor": [{
|
|
9735
|
+
"path": "value",
|
|
9736
|
+
"valueType": "string"
|
|
9737
|
+
}, {
|
|
9738
|
+
"path": "format",
|
|
9739
|
+
"valueType": "enum",
|
|
9740
|
+
"enumValues": [
|
|
9741
|
+
"date",
|
|
9742
|
+
"time",
|
|
9743
|
+
"datetime"
|
|
9744
|
+
]
|
|
9745
|
+
}],
|
|
9746
|
+
"event-emitter": [
|
|
9747
|
+
{
|
|
9748
|
+
"path": "lastEvent.deviceId",
|
|
9749
|
+
"valueType": "number"
|
|
9750
|
+
},
|
|
9751
|
+
{
|
|
9752
|
+
"path": "lastEvent.eventType",
|
|
9753
|
+
"valueType": "string"
|
|
9754
|
+
},
|
|
9755
|
+
{
|
|
9756
|
+
"path": "lastEvent.timestamp",
|
|
9757
|
+
"valueType": "number"
|
|
9758
|
+
},
|
|
9759
|
+
{
|
|
9760
|
+
"path": "lastEvent.seq",
|
|
9761
|
+
"valueType": "number"
|
|
9762
|
+
},
|
|
9763
|
+
{
|
|
9764
|
+
"path": "eventCountSinceStart",
|
|
9765
|
+
"valueType": "number"
|
|
9766
|
+
}
|
|
9767
|
+
],
|
|
9768
|
+
"fan-control": [
|
|
9769
|
+
{
|
|
9770
|
+
"path": "percentage",
|
|
9771
|
+
"valueType": "number"
|
|
9772
|
+
},
|
|
9773
|
+
{
|
|
9774
|
+
"path": "percentageStep",
|
|
9775
|
+
"valueType": "number"
|
|
9776
|
+
},
|
|
9777
|
+
{
|
|
9778
|
+
"path": "preset",
|
|
9779
|
+
"valueType": "string"
|
|
9780
|
+
},
|
|
9781
|
+
{
|
|
9782
|
+
"path": "direction",
|
|
9783
|
+
"valueType": "enum",
|
|
9784
|
+
"enumValues": ["forward", "reverse"]
|
|
9785
|
+
},
|
|
9786
|
+
{
|
|
9787
|
+
"path": "oscillating",
|
|
9788
|
+
"valueType": "boolean"
|
|
9789
|
+
}
|
|
9790
|
+
],
|
|
9791
|
+
"feature-probe": [
|
|
9792
|
+
{
|
|
9793
|
+
"path": "deviceType",
|
|
9794
|
+
"valueType": "string"
|
|
9795
|
+
},
|
|
9796
|
+
{
|
|
9797
|
+
"path": "model",
|
|
9798
|
+
"valueType": "string"
|
|
9799
|
+
},
|
|
9800
|
+
{
|
|
9801
|
+
"path": "channelCount",
|
|
9802
|
+
"valueType": "number"
|
|
9803
|
+
},
|
|
9804
|
+
{
|
|
9805
|
+
"path": "lastProbedAt",
|
|
9806
|
+
"valueType": "number"
|
|
9807
|
+
}
|
|
9808
|
+
],
|
|
9809
|
+
"flood": [{
|
|
9810
|
+
"path": "flooded",
|
|
9811
|
+
"valueType": "boolean"
|
|
9812
|
+
}],
|
|
9813
|
+
"gas": [{
|
|
9814
|
+
"path": "detected",
|
|
9815
|
+
"valueType": "boolean"
|
|
9816
|
+
}],
|
|
9817
|
+
"heating-valve": [{
|
|
9818
|
+
"path": "position",
|
|
9819
|
+
"valueType": "number"
|
|
9820
|
+
}],
|
|
9821
|
+
"humidifier": [
|
|
9822
|
+
{
|
|
9823
|
+
"path": "on",
|
|
9824
|
+
"valueType": "boolean"
|
|
9825
|
+
},
|
|
9826
|
+
{
|
|
9827
|
+
"path": "currentHumidity",
|
|
9828
|
+
"valueType": "number"
|
|
9829
|
+
},
|
|
9830
|
+
{
|
|
9831
|
+
"path": "targetHumidity",
|
|
9832
|
+
"valueType": "number"
|
|
9833
|
+
},
|
|
9834
|
+
{
|
|
9835
|
+
"path": "mode",
|
|
9836
|
+
"valueType": "string"
|
|
9837
|
+
},
|
|
9838
|
+
{
|
|
9839
|
+
"path": "action",
|
|
9840
|
+
"valueType": "string"
|
|
9841
|
+
},
|
|
9842
|
+
{
|
|
9843
|
+
"path": "minHumidity",
|
|
9844
|
+
"valueType": "number"
|
|
9845
|
+
},
|
|
9846
|
+
{
|
|
9847
|
+
"path": "maxHumidity",
|
|
9848
|
+
"valueType": "number"
|
|
9849
|
+
}
|
|
9850
|
+
],
|
|
9851
|
+
"humidity-sensor": [
|
|
9852
|
+
{
|
|
9853
|
+
"path": "percent",
|
|
9854
|
+
"valueType": "number"
|
|
9855
|
+
},
|
|
9856
|
+
{
|
|
9857
|
+
"path": "unit",
|
|
9858
|
+
"valueType": "string"
|
|
9859
|
+
},
|
|
9860
|
+
{
|
|
9861
|
+
"path": "precision",
|
|
9862
|
+
"valueType": "number"
|
|
9863
|
+
}
|
|
9864
|
+
],
|
|
9865
|
+
"image": [{
|
|
9866
|
+
"path": "url",
|
|
9867
|
+
"valueType": "string"
|
|
9868
|
+
}, {
|
|
9869
|
+
"path": "lastUpdated",
|
|
9870
|
+
"valueType": "number"
|
|
9871
|
+
}],
|
|
9872
|
+
"image-settings": [
|
|
9873
|
+
{
|
|
9874
|
+
"path": "brightness",
|
|
9875
|
+
"valueType": "number"
|
|
9876
|
+
},
|
|
9877
|
+
{
|
|
9878
|
+
"path": "contrast",
|
|
9879
|
+
"valueType": "number"
|
|
9880
|
+
},
|
|
9881
|
+
{
|
|
9882
|
+
"path": "saturation",
|
|
9883
|
+
"valueType": "number"
|
|
9884
|
+
},
|
|
9885
|
+
{
|
|
9886
|
+
"path": "sharpness",
|
|
9887
|
+
"valueType": "number"
|
|
9888
|
+
},
|
|
9889
|
+
{
|
|
9890
|
+
"path": "mirror",
|
|
9891
|
+
"valueType": "boolean"
|
|
9892
|
+
},
|
|
9893
|
+
{
|
|
9894
|
+
"path": "flip",
|
|
9895
|
+
"valueType": "boolean"
|
|
9896
|
+
},
|
|
9897
|
+
{
|
|
9898
|
+
"path": "rotate",
|
|
9899
|
+
"valueType": "enum",
|
|
9900
|
+
"enumValues": [
|
|
9901
|
+
"0",
|
|
9902
|
+
"90",
|
|
9903
|
+
"180",
|
|
9904
|
+
"270"
|
|
9905
|
+
]
|
|
9906
|
+
},
|
|
9907
|
+
{
|
|
9908
|
+
"path": "whiteBalance",
|
|
9909
|
+
"valueType": "enum",
|
|
9910
|
+
"enumValues": ["auto", "manual"]
|
|
9911
|
+
},
|
|
9912
|
+
{
|
|
9913
|
+
"path": "warmth",
|
|
9914
|
+
"valueType": "number"
|
|
9915
|
+
},
|
|
9916
|
+
{
|
|
9917
|
+
"path": "exposureMode",
|
|
9918
|
+
"valueType": "enum",
|
|
9919
|
+
"enumValues": ["auto", "manual"]
|
|
9920
|
+
},
|
|
9921
|
+
{
|
|
9922
|
+
"path": "backlightMode",
|
|
9923
|
+
"valueType": "enum",
|
|
9924
|
+
"enumValues": [
|
|
9925
|
+
"off",
|
|
9926
|
+
"blc",
|
|
9927
|
+
"wdr",
|
|
9928
|
+
"hlc"
|
|
9929
|
+
]
|
|
9930
|
+
}
|
|
9931
|
+
],
|
|
9932
|
+
"intercom": [
|
|
9933
|
+
{
|
|
9934
|
+
"path": "talking",
|
|
9935
|
+
"valueType": "boolean"
|
|
9936
|
+
},
|
|
9937
|
+
{
|
|
9938
|
+
"path": "lastSessionAt",
|
|
9939
|
+
"valueType": "number"
|
|
9940
|
+
},
|
|
9941
|
+
{
|
|
9942
|
+
"path": "ability.sampleRate",
|
|
9943
|
+
"valueType": "number"
|
|
9944
|
+
},
|
|
9945
|
+
{
|
|
9946
|
+
"path": "ability.duplex",
|
|
9947
|
+
"valueType": "enum",
|
|
9948
|
+
"enumValues": ["half", "full"]
|
|
9949
|
+
},
|
|
9950
|
+
{
|
|
9951
|
+
"path": "ability.maxBacklogMs",
|
|
9952
|
+
"valueType": "number"
|
|
9953
|
+
}
|
|
9954
|
+
],
|
|
9955
|
+
"lawn-mower-control": [
|
|
9956
|
+
{
|
|
9957
|
+
"path": "activity",
|
|
9958
|
+
"valueType": "enum",
|
|
9959
|
+
"enumValues": [
|
|
9960
|
+
"idle",
|
|
9961
|
+
"mowing",
|
|
9962
|
+
"paused",
|
|
9963
|
+
"docked",
|
|
9964
|
+
"error"
|
|
9965
|
+
]
|
|
9966
|
+
},
|
|
9967
|
+
{
|
|
9968
|
+
"path": "batteryLevel",
|
|
9969
|
+
"valueType": "number"
|
|
9970
|
+
},
|
|
9971
|
+
{
|
|
9972
|
+
"path": "progressPercent",
|
|
9973
|
+
"valueType": "number"
|
|
9974
|
+
},
|
|
9975
|
+
{
|
|
9976
|
+
"path": "currentCode",
|
|
9977
|
+
"valueType": "number"
|
|
9978
|
+
},
|
|
9979
|
+
{
|
|
9980
|
+
"path": "currentCodeLabel",
|
|
9981
|
+
"valueType": "string"
|
|
9982
|
+
},
|
|
9983
|
+
{
|
|
9984
|
+
"path": "severity",
|
|
9985
|
+
"valueType": "enum",
|
|
9986
|
+
"enumValues": [
|
|
9987
|
+
"info",
|
|
9988
|
+
"warning",
|
|
9989
|
+
"error"
|
|
9990
|
+
]
|
|
9991
|
+
}
|
|
9992
|
+
],
|
|
9993
|
+
"lock-control": [{
|
|
9994
|
+
"path": "state",
|
|
9995
|
+
"valueType": "enum",
|
|
9996
|
+
"enumValues": [
|
|
9997
|
+
"locked",
|
|
9998
|
+
"unlocked",
|
|
9999
|
+
"locking",
|
|
10000
|
+
"unlocking",
|
|
10001
|
+
"jammed"
|
|
10002
|
+
]
|
|
10003
|
+
}],
|
|
10004
|
+
"media-player": [
|
|
10005
|
+
{
|
|
10006
|
+
"path": "state",
|
|
10007
|
+
"valueType": "enum",
|
|
10008
|
+
"enumValues": [
|
|
10009
|
+
"off",
|
|
10010
|
+
"on",
|
|
10011
|
+
"idle",
|
|
10012
|
+
"playing",
|
|
10013
|
+
"paused",
|
|
10014
|
+
"buffering",
|
|
10015
|
+
"standby"
|
|
10016
|
+
]
|
|
10017
|
+
},
|
|
10018
|
+
{
|
|
10019
|
+
"path": "volumeLevel",
|
|
10020
|
+
"valueType": "number"
|
|
10021
|
+
},
|
|
10022
|
+
{
|
|
10023
|
+
"path": "isMuted",
|
|
10024
|
+
"valueType": "boolean"
|
|
10025
|
+
},
|
|
10026
|
+
{
|
|
10027
|
+
"path": "source",
|
|
10028
|
+
"valueType": "string"
|
|
10029
|
+
},
|
|
10030
|
+
{
|
|
10031
|
+
"path": "currentMedia.type",
|
|
10032
|
+
"valueType": "string"
|
|
10033
|
+
},
|
|
10034
|
+
{
|
|
10035
|
+
"path": "currentMedia.title",
|
|
10036
|
+
"valueType": "string"
|
|
10037
|
+
},
|
|
10038
|
+
{
|
|
10039
|
+
"path": "currentMedia.artist",
|
|
10040
|
+
"valueType": "string"
|
|
10041
|
+
},
|
|
10042
|
+
{
|
|
10043
|
+
"path": "currentMedia.album",
|
|
10044
|
+
"valueType": "string"
|
|
10045
|
+
},
|
|
10046
|
+
{
|
|
10047
|
+
"path": "currentMedia.imageUrl",
|
|
10048
|
+
"valueType": "string"
|
|
10049
|
+
},
|
|
10050
|
+
{
|
|
10051
|
+
"path": "positionMs",
|
|
10052
|
+
"valueType": "number"
|
|
10053
|
+
},
|
|
10054
|
+
{
|
|
10055
|
+
"path": "durationMs",
|
|
10056
|
+
"valueType": "number"
|
|
10057
|
+
},
|
|
10058
|
+
{
|
|
10059
|
+
"path": "shuffle",
|
|
10060
|
+
"valueType": "boolean"
|
|
10061
|
+
},
|
|
10062
|
+
{
|
|
10063
|
+
"path": "repeat",
|
|
10064
|
+
"valueType": "enum",
|
|
10065
|
+
"enumValues": [
|
|
10066
|
+
"off",
|
|
10067
|
+
"all",
|
|
10068
|
+
"one"
|
|
10069
|
+
]
|
|
10070
|
+
}
|
|
10071
|
+
],
|
|
10072
|
+
"motion": [
|
|
10073
|
+
{
|
|
10074
|
+
"path": "detected",
|
|
10075
|
+
"valueType": "boolean"
|
|
10076
|
+
},
|
|
10077
|
+
{
|
|
10078
|
+
"path": "lastDetectedAt",
|
|
10079
|
+
"valueType": "number"
|
|
10080
|
+
},
|
|
10081
|
+
{
|
|
10082
|
+
"path": "autoClearAfterMs",
|
|
10083
|
+
"valueType": "number"
|
|
10084
|
+
}
|
|
10085
|
+
],
|
|
10086
|
+
"motion-trigger": [{
|
|
10087
|
+
"path": "enabled",
|
|
10088
|
+
"valueType": "boolean"
|
|
10089
|
+
}],
|
|
10090
|
+
"motion-zones": [{
|
|
10091
|
+
"path": "enabled",
|
|
10092
|
+
"valueType": "boolean"
|
|
10093
|
+
}, {
|
|
10094
|
+
"path": "sensitivity",
|
|
10095
|
+
"valueType": "number"
|
|
10096
|
+
}],
|
|
10097
|
+
"mqtt-broker": [{
|
|
10098
|
+
"path": "brokerCount",
|
|
10099
|
+
"valueType": "number"
|
|
10100
|
+
}, {
|
|
10101
|
+
"path": "embeddedRunning",
|
|
10102
|
+
"valueType": "boolean"
|
|
10103
|
+
}],
|
|
10104
|
+
"native-object-detection": [{
|
|
10105
|
+
"path": "enabled",
|
|
10106
|
+
"valueType": "boolean"
|
|
10107
|
+
}],
|
|
10108
|
+
"navigation": [
|
|
10109
|
+
{
|
|
10110
|
+
"path": "mode",
|
|
10111
|
+
"valueType": "enum",
|
|
10112
|
+
"enumValues": [
|
|
10113
|
+
"idle",
|
|
10114
|
+
"cleaning",
|
|
10115
|
+
"spot",
|
|
10116
|
+
"following",
|
|
10117
|
+
"goto",
|
|
10118
|
+
"returning",
|
|
10119
|
+
"paused",
|
|
10120
|
+
"unknown"
|
|
10121
|
+
]
|
|
10122
|
+
},
|
|
10123
|
+
{
|
|
10124
|
+
"path": "following",
|
|
10125
|
+
"valueType": "boolean"
|
|
10126
|
+
},
|
|
10127
|
+
{
|
|
10128
|
+
"path": "flash",
|
|
10129
|
+
"valueType": "boolean"
|
|
10130
|
+
},
|
|
10131
|
+
{
|
|
10132
|
+
"path": "lightMode",
|
|
10133
|
+
"valueType": "enum",
|
|
10134
|
+
"enumValues": ["auto", "manual"]
|
|
10135
|
+
},
|
|
10136
|
+
{
|
|
10137
|
+
"path": "lightLevel",
|
|
10138
|
+
"valueType": "number"
|
|
10139
|
+
}
|
|
10140
|
+
],
|
|
10141
|
+
"network-link": [
|
|
10142
|
+
{
|
|
10143
|
+
"path": "type",
|
|
10144
|
+
"valueType": "enum",
|
|
10145
|
+
"enumValues": [
|
|
10146
|
+
"wifi",
|
|
10147
|
+
"ethernet",
|
|
10148
|
+
"cellular",
|
|
10149
|
+
"unknown"
|
|
10150
|
+
]
|
|
10151
|
+
},
|
|
10152
|
+
{
|
|
10153
|
+
"path": "signalPercent",
|
|
10154
|
+
"valueType": "number"
|
|
10155
|
+
},
|
|
10156
|
+
{
|
|
10157
|
+
"path": "rssiDbm",
|
|
10158
|
+
"valueType": "number"
|
|
10159
|
+
},
|
|
10160
|
+
{
|
|
10161
|
+
"path": "ssid",
|
|
10162
|
+
"valueType": "string"
|
|
10163
|
+
},
|
|
10164
|
+
{
|
|
10165
|
+
"path": "lastUpdated",
|
|
10166
|
+
"valueType": "number"
|
|
10167
|
+
}
|
|
10168
|
+
],
|
|
10169
|
+
"notifier": [
|
|
10170
|
+
{
|
|
10171
|
+
"path": "lastSentAt",
|
|
10172
|
+
"valueType": "number"
|
|
10173
|
+
},
|
|
10174
|
+
{
|
|
10175
|
+
"path": "lastError",
|
|
10176
|
+
"valueType": "string"
|
|
10177
|
+
},
|
|
10178
|
+
{
|
|
10179
|
+
"path": "queueDepth",
|
|
10180
|
+
"valueType": "number"
|
|
10181
|
+
},
|
|
10182
|
+
{
|
|
10183
|
+
"path": "supports.image",
|
|
10184
|
+
"valueType": "boolean"
|
|
10185
|
+
},
|
|
10186
|
+
{
|
|
10187
|
+
"path": "supports.priority",
|
|
10188
|
+
"valueType": "boolean"
|
|
10189
|
+
},
|
|
10190
|
+
{
|
|
10191
|
+
"path": "supports.data",
|
|
10192
|
+
"valueType": "boolean"
|
|
10193
|
+
},
|
|
10194
|
+
{
|
|
10195
|
+
"path": "supports.actions",
|
|
10196
|
+
"valueType": "boolean"
|
|
10197
|
+
},
|
|
10198
|
+
{
|
|
10199
|
+
"path": "supports.recipients",
|
|
10200
|
+
"valueType": "boolean"
|
|
10201
|
+
}
|
|
10202
|
+
],
|
|
10203
|
+
"numeric-sensor": [
|
|
10204
|
+
{
|
|
10205
|
+
"path": "value",
|
|
10206
|
+
"valueType": "number"
|
|
10207
|
+
},
|
|
10208
|
+
{
|
|
10209
|
+
"path": "unit",
|
|
10210
|
+
"valueType": "string"
|
|
10211
|
+
},
|
|
10212
|
+
{
|
|
10213
|
+
"path": "precision",
|
|
10214
|
+
"valueType": "number"
|
|
10215
|
+
}
|
|
10216
|
+
],
|
|
10217
|
+
"pet-feeder": [
|
|
10218
|
+
{
|
|
10219
|
+
"path": "foodLevel",
|
|
10220
|
+
"valueType": "number"
|
|
10221
|
+
},
|
|
10222
|
+
{
|
|
10223
|
+
"path": "food1",
|
|
10224
|
+
"valueType": "number"
|
|
10225
|
+
},
|
|
10226
|
+
{
|
|
10227
|
+
"path": "food2",
|
|
10228
|
+
"valueType": "number"
|
|
10229
|
+
},
|
|
10230
|
+
{
|
|
10231
|
+
"path": "lowFood",
|
|
10232
|
+
"valueType": "boolean"
|
|
10233
|
+
},
|
|
10234
|
+
{
|
|
10235
|
+
"path": "batteryPower",
|
|
10236
|
+
"valueType": "number"
|
|
10237
|
+
},
|
|
10238
|
+
{
|
|
10239
|
+
"path": "desiccantLeftDays",
|
|
10240
|
+
"valueType": "number"
|
|
10241
|
+
},
|
|
10242
|
+
{
|
|
10243
|
+
"path": "feeding",
|
|
10244
|
+
"valueType": "boolean"
|
|
10245
|
+
},
|
|
10246
|
+
{
|
|
10247
|
+
"path": "status",
|
|
10248
|
+
"valueType": "enum",
|
|
10249
|
+
"enumValues": [
|
|
10250
|
+
"normal",
|
|
10251
|
+
"offline",
|
|
10252
|
+
"on_batteries"
|
|
10253
|
+
]
|
|
10254
|
+
},
|
|
10255
|
+
{
|
|
10256
|
+
"path": "error",
|
|
10257
|
+
"valueType": "string"
|
|
10258
|
+
},
|
|
10259
|
+
{
|
|
10260
|
+
"path": "errorCode",
|
|
10261
|
+
"valueType": "number"
|
|
10262
|
+
},
|
|
10263
|
+
{
|
|
10264
|
+
"path": "isDualHopper",
|
|
10265
|
+
"valueType": "boolean"
|
|
10266
|
+
},
|
|
10267
|
+
{
|
|
10268
|
+
"path": "childLock",
|
|
10269
|
+
"valueType": "boolean"
|
|
10270
|
+
},
|
|
10271
|
+
{
|
|
10272
|
+
"path": "indicatorLight",
|
|
10273
|
+
"valueType": "boolean"
|
|
10274
|
+
},
|
|
10275
|
+
{
|
|
10276
|
+
"path": "feedSound",
|
|
10277
|
+
"valueType": "boolean"
|
|
10278
|
+
},
|
|
10279
|
+
{
|
|
10280
|
+
"path": "volume",
|
|
10281
|
+
"valueType": "number"
|
|
10282
|
+
}
|
|
10283
|
+
],
|
|
10284
|
+
"power-meter": [
|
|
10285
|
+
{
|
|
10286
|
+
"path": "watts",
|
|
10287
|
+
"valueType": "number"
|
|
10288
|
+
},
|
|
10289
|
+
{
|
|
10290
|
+
"path": "kwhTotal",
|
|
10291
|
+
"valueType": "number"
|
|
10292
|
+
},
|
|
10293
|
+
{
|
|
10294
|
+
"path": "volts",
|
|
10295
|
+
"valueType": "number"
|
|
10296
|
+
},
|
|
10297
|
+
{
|
|
10298
|
+
"path": "amps",
|
|
10299
|
+
"valueType": "number"
|
|
10300
|
+
},
|
|
10301
|
+
{
|
|
10302
|
+
"path": "va",
|
|
10303
|
+
"valueType": "number"
|
|
10304
|
+
},
|
|
10305
|
+
{
|
|
10306
|
+
"path": "powerFactor",
|
|
10307
|
+
"valueType": "number"
|
|
10308
|
+
},
|
|
10309
|
+
{
|
|
10310
|
+
"path": "unit",
|
|
10311
|
+
"valueType": "string"
|
|
10312
|
+
},
|
|
10313
|
+
{
|
|
10314
|
+
"path": "precision",
|
|
10315
|
+
"valueType": "number"
|
|
10316
|
+
}
|
|
10317
|
+
],
|
|
10318
|
+
"presence": [
|
|
10319
|
+
{
|
|
10320
|
+
"path": "state",
|
|
10321
|
+
"valueType": "string"
|
|
10322
|
+
},
|
|
10323
|
+
{
|
|
10324
|
+
"path": "location",
|
|
10325
|
+
"valueType": "string"
|
|
10326
|
+
},
|
|
10327
|
+
{
|
|
10328
|
+
"path": "gps.latitude",
|
|
10329
|
+
"valueType": "number"
|
|
10330
|
+
},
|
|
10331
|
+
{
|
|
10332
|
+
"path": "gps.longitude",
|
|
10333
|
+
"valueType": "number"
|
|
10334
|
+
},
|
|
10335
|
+
{
|
|
10336
|
+
"path": "gps.accuracyMeters",
|
|
10337
|
+
"valueType": "number"
|
|
10338
|
+
},
|
|
10339
|
+
{
|
|
10340
|
+
"path": "batteryPercent",
|
|
10341
|
+
"valueType": "number"
|
|
10342
|
+
}
|
|
10343
|
+
],
|
|
10344
|
+
"pressure-sensor": [
|
|
10345
|
+
{
|
|
10346
|
+
"path": "hpa",
|
|
10347
|
+
"valueType": "number"
|
|
10348
|
+
},
|
|
10349
|
+
{
|
|
10350
|
+
"path": "unit",
|
|
10351
|
+
"valueType": "string"
|
|
10352
|
+
},
|
|
10353
|
+
{
|
|
10354
|
+
"path": "precision",
|
|
10355
|
+
"valueType": "number"
|
|
10356
|
+
}
|
|
10357
|
+
],
|
|
10358
|
+
"privacy-mask": [{
|
|
10359
|
+
"path": "enabled",
|
|
10360
|
+
"valueType": "boolean"
|
|
10361
|
+
}, {
|
|
10362
|
+
"path": "audioEnabled",
|
|
10363
|
+
"valueType": "boolean"
|
|
10364
|
+
}],
|
|
10365
|
+
"ptz": [
|
|
10366
|
+
{
|
|
10367
|
+
"path": "pan",
|
|
10368
|
+
"valueType": "number"
|
|
10369
|
+
},
|
|
10370
|
+
{
|
|
10371
|
+
"path": "tilt",
|
|
10372
|
+
"valueType": "number"
|
|
10373
|
+
},
|
|
10374
|
+
{
|
|
10375
|
+
"path": "zoom",
|
|
10376
|
+
"valueType": "number"
|
|
10377
|
+
},
|
|
10378
|
+
{
|
|
10379
|
+
"path": "autofocus",
|
|
10380
|
+
"valueType": "boolean"
|
|
10381
|
+
}
|
|
10382
|
+
],
|
|
10383
|
+
"ptz-autotrack": [
|
|
10384
|
+
{
|
|
10385
|
+
"path": "enabled",
|
|
10386
|
+
"valueType": "boolean"
|
|
10387
|
+
},
|
|
10388
|
+
{
|
|
10389
|
+
"path": "currentSettings.targetType",
|
|
10390
|
+
"valueType": "string"
|
|
10391
|
+
},
|
|
10392
|
+
{
|
|
10393
|
+
"path": "currentSettings.stopDelaySeconds",
|
|
10394
|
+
"valueType": "number"
|
|
10395
|
+
},
|
|
10396
|
+
{
|
|
10397
|
+
"path": "currentSettings.disappearDelaySeconds",
|
|
10398
|
+
"valueType": "number"
|
|
10399
|
+
}
|
|
10400
|
+
],
|
|
10401
|
+
"recording-archive": [
|
|
10402
|
+
{
|
|
10403
|
+
"path": "deviceId",
|
|
10404
|
+
"valueType": "number"
|
|
10405
|
+
},
|
|
10406
|
+
{
|
|
10407
|
+
"path": "enabled",
|
|
10408
|
+
"valueType": "boolean"
|
|
10409
|
+
},
|
|
10410
|
+
{
|
|
10411
|
+
"path": "activeMode",
|
|
10412
|
+
"valueType": "enum",
|
|
10413
|
+
"enumValues": [
|
|
10414
|
+
"off",
|
|
10415
|
+
"events",
|
|
10416
|
+
"continuous",
|
|
10417
|
+
"on-device-decision"
|
|
10418
|
+
]
|
|
10419
|
+
},
|
|
10420
|
+
{
|
|
10421
|
+
"path": "nodeId",
|
|
10422
|
+
"valueType": "string"
|
|
10423
|
+
},
|
|
10424
|
+
{
|
|
10425
|
+
"path": "storageBytes",
|
|
10426
|
+
"valueType": "number"
|
|
10427
|
+
}
|
|
10428
|
+
],
|
|
10429
|
+
"recording-onboard": [
|
|
10430
|
+
{
|
|
10431
|
+
"path": "primaryTrackId",
|
|
10432
|
+
"valueType": "string"
|
|
10433
|
+
},
|
|
10434
|
+
{
|
|
10435
|
+
"path": "enabled",
|
|
10436
|
+
"valueType": "boolean"
|
|
10437
|
+
},
|
|
10438
|
+
{
|
|
10439
|
+
"path": "overwriteWhenFull",
|
|
10440
|
+
"valueType": "boolean"
|
|
10441
|
+
},
|
|
10442
|
+
{
|
|
10443
|
+
"path": "preRecordSec",
|
|
10444
|
+
"valueType": "number"
|
|
10445
|
+
},
|
|
10446
|
+
{
|
|
10447
|
+
"path": "postRecordSec",
|
|
10448
|
+
"valueType": "number"
|
|
10449
|
+
},
|
|
10450
|
+
{
|
|
10451
|
+
"path": "segmentMinutes",
|
|
10452
|
+
"valueType": "number"
|
|
10453
|
+
},
|
|
10454
|
+
{
|
|
10455
|
+
"path": "unreadableWindows",
|
|
10456
|
+
"valueType": "number"
|
|
10457
|
+
},
|
|
10458
|
+
{
|
|
10459
|
+
"path": "recordingToNowhere",
|
|
10460
|
+
"valueType": "boolean"
|
|
10461
|
+
}
|
|
10462
|
+
],
|
|
10463
|
+
"recording-signal": [{
|
|
10464
|
+
"path": "active",
|
|
10465
|
+
"valueType": "boolean"
|
|
10466
|
+
}, {
|
|
10467
|
+
"path": "reason",
|
|
10468
|
+
"valueType": "string"
|
|
10469
|
+
}],
|
|
10470
|
+
"running-state": [
|
|
10471
|
+
{
|
|
10472
|
+
"path": "running",
|
|
10473
|
+
"valueType": "boolean"
|
|
10474
|
+
},
|
|
10475
|
+
{
|
|
10476
|
+
"path": "since",
|
|
10477
|
+
"valueType": "number"
|
|
10478
|
+
},
|
|
10479
|
+
{
|
|
10480
|
+
"path": "source",
|
|
10481
|
+
"valueType": "enum",
|
|
10482
|
+
"enumValues": ["native", "assigned"]
|
|
10483
|
+
},
|
|
10484
|
+
{
|
|
10485
|
+
"path": "phase",
|
|
10486
|
+
"valueType": "string"
|
|
10487
|
+
}
|
|
10488
|
+
],
|
|
10489
|
+
"script-runner": [
|
|
10490
|
+
{
|
|
10491
|
+
"path": "isRunning",
|
|
10492
|
+
"valueType": "boolean"
|
|
10493
|
+
},
|
|
10494
|
+
{
|
|
10495
|
+
"path": "lastRunAt",
|
|
10496
|
+
"valueType": "number"
|
|
10497
|
+
},
|
|
10498
|
+
{
|
|
10499
|
+
"path": "lastRunSuccess",
|
|
10500
|
+
"valueType": "boolean"
|
|
10501
|
+
},
|
|
10502
|
+
{
|
|
10503
|
+
"path": "lastError",
|
|
10504
|
+
"valueType": "string"
|
|
10505
|
+
}
|
|
10506
|
+
],
|
|
10507
|
+
"smoke": [{
|
|
10508
|
+
"path": "detected",
|
|
10509
|
+
"valueType": "boolean"
|
|
10510
|
+
}],
|
|
10511
|
+
"snapshot": [
|
|
10512
|
+
{
|
|
10513
|
+
"path": "lastCapturedAt",
|
|
10514
|
+
"valueType": "number"
|
|
10515
|
+
},
|
|
10516
|
+
{
|
|
10517
|
+
"path": "cacheAgeMs",
|
|
10518
|
+
"valueType": "number"
|
|
10519
|
+
},
|
|
10520
|
+
{
|
|
10521
|
+
"path": "lastBytes",
|
|
10522
|
+
"valueType": "number"
|
|
10523
|
+
},
|
|
10524
|
+
{
|
|
10525
|
+
"path": "lastStreamId",
|
|
10526
|
+
"valueType": "string"
|
|
10527
|
+
}
|
|
10528
|
+
],
|
|
10529
|
+
"stream-params": [
|
|
10530
|
+
{
|
|
10531
|
+
"path": "main.width",
|
|
10532
|
+
"valueType": "number"
|
|
10533
|
+
},
|
|
10534
|
+
{
|
|
10535
|
+
"path": "main.height",
|
|
10536
|
+
"valueType": "number"
|
|
10537
|
+
},
|
|
10538
|
+
{
|
|
10539
|
+
"path": "main.codec",
|
|
10540
|
+
"valueType": "enum",
|
|
10541
|
+
"enumValues": ["h264", "h265"]
|
|
10542
|
+
},
|
|
10543
|
+
{
|
|
10544
|
+
"path": "main.framerate",
|
|
10545
|
+
"valueType": "number"
|
|
10546
|
+
},
|
|
10547
|
+
{
|
|
10548
|
+
"path": "main.bitrate",
|
|
10549
|
+
"valueType": "number"
|
|
10550
|
+
},
|
|
10551
|
+
{
|
|
10552
|
+
"path": "main.bitrateMode",
|
|
10553
|
+
"valueType": "enum",
|
|
10554
|
+
"enumValues": ["vbr", "cbr"]
|
|
10555
|
+
},
|
|
10556
|
+
{
|
|
10557
|
+
"path": "main.encoderProfile",
|
|
10558
|
+
"valueType": "enum",
|
|
10559
|
+
"enumValues": [
|
|
10560
|
+
"high",
|
|
10561
|
+
"main",
|
|
10562
|
+
"baseline"
|
|
10563
|
+
]
|
|
10564
|
+
},
|
|
10565
|
+
{
|
|
10566
|
+
"path": "main.gop",
|
|
10567
|
+
"valueType": "number"
|
|
10568
|
+
},
|
|
10569
|
+
{
|
|
10570
|
+
"path": "main.audio",
|
|
10571
|
+
"valueType": "boolean"
|
|
10572
|
+
},
|
|
10573
|
+
{
|
|
10574
|
+
"path": "sub.width",
|
|
10575
|
+
"valueType": "number"
|
|
10576
|
+
},
|
|
10577
|
+
{
|
|
10578
|
+
"path": "sub.height",
|
|
10579
|
+
"valueType": "number"
|
|
10580
|
+
},
|
|
10581
|
+
{
|
|
10582
|
+
"path": "sub.codec",
|
|
10583
|
+
"valueType": "enum",
|
|
10584
|
+
"enumValues": ["h264", "h265"]
|
|
10585
|
+
},
|
|
10586
|
+
{
|
|
10587
|
+
"path": "sub.framerate",
|
|
10588
|
+
"valueType": "number"
|
|
10589
|
+
},
|
|
10590
|
+
{
|
|
10591
|
+
"path": "sub.bitrate",
|
|
10592
|
+
"valueType": "number"
|
|
10593
|
+
},
|
|
10594
|
+
{
|
|
10595
|
+
"path": "sub.bitrateMode",
|
|
10596
|
+
"valueType": "enum",
|
|
10597
|
+
"enumValues": ["vbr", "cbr"]
|
|
10598
|
+
},
|
|
10599
|
+
{
|
|
10600
|
+
"path": "sub.encoderProfile",
|
|
10601
|
+
"valueType": "enum",
|
|
10602
|
+
"enumValues": [
|
|
10603
|
+
"high",
|
|
10604
|
+
"main",
|
|
10605
|
+
"baseline"
|
|
10606
|
+
]
|
|
10607
|
+
},
|
|
10608
|
+
{
|
|
10609
|
+
"path": "sub.gop",
|
|
10610
|
+
"valueType": "number"
|
|
10611
|
+
},
|
|
10612
|
+
{
|
|
10613
|
+
"path": "sub.audio",
|
|
10614
|
+
"valueType": "boolean"
|
|
10615
|
+
},
|
|
10616
|
+
{
|
|
10617
|
+
"path": "ext.width",
|
|
10618
|
+
"valueType": "number"
|
|
10619
|
+
},
|
|
10620
|
+
{
|
|
10621
|
+
"path": "ext.height",
|
|
10622
|
+
"valueType": "number"
|
|
10623
|
+
},
|
|
10624
|
+
{
|
|
10625
|
+
"path": "ext.codec",
|
|
10626
|
+
"valueType": "enum",
|
|
10627
|
+
"enumValues": ["h264", "h265"]
|
|
10628
|
+
},
|
|
10629
|
+
{
|
|
10630
|
+
"path": "ext.framerate",
|
|
10631
|
+
"valueType": "number"
|
|
10632
|
+
},
|
|
10633
|
+
{
|
|
10634
|
+
"path": "ext.bitrate",
|
|
10635
|
+
"valueType": "number"
|
|
10636
|
+
},
|
|
10637
|
+
{
|
|
10638
|
+
"path": "ext.bitrateMode",
|
|
10639
|
+
"valueType": "enum",
|
|
10640
|
+
"enumValues": ["vbr", "cbr"]
|
|
10641
|
+
},
|
|
10642
|
+
{
|
|
10643
|
+
"path": "ext.encoderProfile",
|
|
10644
|
+
"valueType": "enum",
|
|
10645
|
+
"enumValues": [
|
|
10646
|
+
"high",
|
|
10647
|
+
"main",
|
|
10648
|
+
"baseline"
|
|
10649
|
+
]
|
|
10650
|
+
},
|
|
10651
|
+
{
|
|
10652
|
+
"path": "ext.gop",
|
|
10653
|
+
"valueType": "number"
|
|
10654
|
+
},
|
|
10655
|
+
{
|
|
10656
|
+
"path": "ext.audio",
|
|
10657
|
+
"valueType": "boolean"
|
|
10658
|
+
}
|
|
10659
|
+
],
|
|
10660
|
+
"switch": [{
|
|
10661
|
+
"path": "on",
|
|
10662
|
+
"valueType": "boolean"
|
|
10663
|
+
}],
|
|
10664
|
+
"tamper": [{
|
|
10665
|
+
"path": "tampered",
|
|
10666
|
+
"valueType": "boolean"
|
|
10667
|
+
}],
|
|
10668
|
+
"temperature-sensor": [
|
|
10669
|
+
{
|
|
10670
|
+
"path": "celsius",
|
|
10671
|
+
"valueType": "number"
|
|
10672
|
+
},
|
|
10673
|
+
{
|
|
10674
|
+
"path": "unit",
|
|
10675
|
+
"valueType": "string"
|
|
10676
|
+
},
|
|
10677
|
+
{
|
|
10678
|
+
"path": "precision",
|
|
10679
|
+
"valueType": "number"
|
|
10680
|
+
}
|
|
10681
|
+
],
|
|
10682
|
+
"update": [
|
|
10683
|
+
{
|
|
10684
|
+
"path": "currentVersion",
|
|
10685
|
+
"valueType": "string"
|
|
10686
|
+
},
|
|
10687
|
+
{
|
|
10688
|
+
"path": "availableVersion",
|
|
10689
|
+
"valueType": "string"
|
|
10690
|
+
},
|
|
10691
|
+
{
|
|
10692
|
+
"path": "updatable",
|
|
10693
|
+
"valueType": "boolean"
|
|
10694
|
+
},
|
|
10695
|
+
{
|
|
10696
|
+
"path": "state",
|
|
10697
|
+
"valueType": "string"
|
|
10698
|
+
},
|
|
10699
|
+
{
|
|
10700
|
+
"path": "inProgress",
|
|
10701
|
+
"valueType": "boolean"
|
|
10702
|
+
}
|
|
10703
|
+
],
|
|
10704
|
+
"vacuum-control": [
|
|
10705
|
+
{
|
|
10706
|
+
"path": "state",
|
|
10707
|
+
"valueType": "enum",
|
|
10708
|
+
"enumValues": [
|
|
10709
|
+
"idle",
|
|
10710
|
+
"cleaning",
|
|
10711
|
+
"paused",
|
|
10712
|
+
"returning",
|
|
10713
|
+
"docked",
|
|
10714
|
+
"drying",
|
|
10715
|
+
"error"
|
|
10716
|
+
]
|
|
10717
|
+
},
|
|
10718
|
+
{
|
|
10719
|
+
"path": "batteryLevel",
|
|
10720
|
+
"valueType": "number"
|
|
10721
|
+
},
|
|
10722
|
+
{
|
|
10723
|
+
"path": "fanSpeed",
|
|
10724
|
+
"valueType": "string"
|
|
10725
|
+
},
|
|
10726
|
+
{
|
|
10727
|
+
"path": "progressPercent",
|
|
10728
|
+
"valueType": "number"
|
|
10729
|
+
},
|
|
10730
|
+
{
|
|
10731
|
+
"path": "errorCode",
|
|
10732
|
+
"valueType": "number"
|
|
10733
|
+
},
|
|
10734
|
+
{
|
|
10735
|
+
"path": "errorLabel",
|
|
10736
|
+
"valueType": "string"
|
|
10737
|
+
}
|
|
10738
|
+
],
|
|
10739
|
+
"valve": [{
|
|
10740
|
+
"path": "state",
|
|
10741
|
+
"valueType": "enum",
|
|
10742
|
+
"enumValues": [
|
|
10743
|
+
"open",
|
|
10744
|
+
"opening",
|
|
10745
|
+
"closing",
|
|
10746
|
+
"closed",
|
|
10747
|
+
"stopped"
|
|
10748
|
+
]
|
|
10749
|
+
}, {
|
|
10750
|
+
"path": "position",
|
|
10751
|
+
"valueType": "number"
|
|
10752
|
+
}],
|
|
10753
|
+
"vibration": [{
|
|
10754
|
+
"path": "detected",
|
|
10755
|
+
"valueType": "boolean"
|
|
10756
|
+
}],
|
|
10757
|
+
"water-heater": [
|
|
10758
|
+
{
|
|
10759
|
+
"path": "currentTemp",
|
|
10760
|
+
"valueType": "number"
|
|
10761
|
+
},
|
|
10762
|
+
{
|
|
10763
|
+
"path": "targetTemp",
|
|
10764
|
+
"valueType": "number"
|
|
10765
|
+
},
|
|
10766
|
+
{
|
|
10767
|
+
"path": "operationMode",
|
|
10768
|
+
"valueType": "string"
|
|
10769
|
+
},
|
|
10770
|
+
{
|
|
10771
|
+
"path": "away",
|
|
10772
|
+
"valueType": "boolean"
|
|
10773
|
+
},
|
|
10774
|
+
{
|
|
10775
|
+
"path": "minTemp",
|
|
10776
|
+
"valueType": "number"
|
|
10777
|
+
},
|
|
10778
|
+
{
|
|
10779
|
+
"path": "maxTemp",
|
|
10780
|
+
"valueType": "number"
|
|
10781
|
+
}
|
|
10782
|
+
],
|
|
10783
|
+
"weather": [
|
|
10784
|
+
{
|
|
10785
|
+
"path": "condition",
|
|
10786
|
+
"valueType": "string"
|
|
10787
|
+
},
|
|
10788
|
+
{
|
|
10789
|
+
"path": "temperature",
|
|
10790
|
+
"valueType": "number"
|
|
10791
|
+
},
|
|
10792
|
+
{
|
|
10793
|
+
"path": "temperatureUnit",
|
|
10794
|
+
"valueType": "string"
|
|
10795
|
+
},
|
|
10796
|
+
{
|
|
10797
|
+
"path": "humidity",
|
|
10798
|
+
"valueType": "number"
|
|
10799
|
+
},
|
|
10800
|
+
{
|
|
10801
|
+
"path": "pressure",
|
|
10802
|
+
"valueType": "number"
|
|
10803
|
+
},
|
|
10804
|
+
{
|
|
10805
|
+
"path": "pressureUnit",
|
|
10806
|
+
"valueType": "string"
|
|
10807
|
+
},
|
|
10808
|
+
{
|
|
10809
|
+
"path": "windSpeed",
|
|
10810
|
+
"valueType": "number"
|
|
10811
|
+
},
|
|
10812
|
+
{
|
|
10813
|
+
"path": "windSpeedUnit",
|
|
10814
|
+
"valueType": "string"
|
|
10815
|
+
},
|
|
10816
|
+
{
|
|
10817
|
+
"path": "windBearing",
|
|
10818
|
+
"valueType": "number"
|
|
10819
|
+
}
|
|
10820
|
+
],
|
|
10821
|
+
"zone-analytics": [
|
|
10822
|
+
{
|
|
10823
|
+
"path": "ts",
|
|
10824
|
+
"valueType": "number"
|
|
10825
|
+
},
|
|
10826
|
+
{
|
|
10827
|
+
"path": "frameWidth",
|
|
10828
|
+
"valueType": "number"
|
|
10829
|
+
},
|
|
10830
|
+
{
|
|
10831
|
+
"path": "frameHeight",
|
|
10832
|
+
"valueType": "number"
|
|
10833
|
+
},
|
|
10834
|
+
{
|
|
10835
|
+
"path": "frame.totalObjects",
|
|
10836
|
+
"valueType": "number"
|
|
10837
|
+
},
|
|
10838
|
+
{
|
|
10839
|
+
"path": "frame.standingObjects",
|
|
10840
|
+
"valueType": "number"
|
|
10841
|
+
},
|
|
10842
|
+
{
|
|
10843
|
+
"path": "frame.transientObjects",
|
|
10844
|
+
"valueType": "number"
|
|
10845
|
+
},
|
|
10846
|
+
{
|
|
10847
|
+
"path": "unzoned.totalObjects",
|
|
10848
|
+
"valueType": "number"
|
|
10849
|
+
},
|
|
10850
|
+
{
|
|
10851
|
+
"path": "unzoned.standingObjects",
|
|
10852
|
+
"valueType": "number"
|
|
10853
|
+
},
|
|
10854
|
+
{
|
|
10855
|
+
"path": "unzoned.transientObjects",
|
|
10856
|
+
"valueType": "number"
|
|
10857
|
+
}
|
|
10858
|
+
]
|
|
10859
|
+
});
|
|
8885
10860
|
/**
|
|
8886
10861
|
* AUTO-GENERATED by scripts/generate-device-scoped-caps.ts — DO NOT EDIT.
|
|
8887
10862
|
*
|
|
@@ -9381,7 +11356,7 @@ function errMsg(err) {
|
|
|
9381
11356
|
return String(err);
|
|
9382
11357
|
}
|
|
9383
11358
|
//#endregion
|
|
9384
|
-
//#region ../types/dist/composition-
|
|
11359
|
+
//#region ../types/dist/composition-kEl9mevu.mjs
|
|
9385
11360
|
/**
|
|
9386
11361
|
* Deterministic SHA-256 hash of an arbitrary serialisable value. The
|
|
9387
11362
|
* canonical form sorts object keys alphabetically at every depth so two
|
|
@@ -10634,7 +12609,7 @@ function gifDeriveSpeed(gifSpeed, videoSpeed) {
|
|
|
10634
12609
|
* runs at `fps / speed` in SOURCE time and `setpts` multiplies what survived.
|
|
10635
12610
|
* The trailing `fps` re-declares the rate, which is NOT redundant: `setpts`
|
|
10636
12611
|
* leaves the filter link advertising the sampled rate and the gif muxer
|
|
10637
|
-
* believes the link — measured on
|
|
12612
|
+
* believes the link — measured on 101 as a 3.01 s gif of ten frames.
|
|
10638
12613
|
*/
|
|
10639
12614
|
function gifFilterComplex(input) {
|
|
10640
12615
|
const speed = input.speed > 0 ? input.speed : 1;
|
|
@@ -11520,7 +13495,7 @@ function retrainRevisionConflictMessage(frameId, conflict) {
|
|
|
11520
13495
|
* ── Why a TABLE and not a log line ─────────────────────────────────────────
|
|
11521
13496
|
* `logs.query` is an in-memory ring. Measured on the live hub on 2026-09-08 it
|
|
11522
13497
|
* held 40 000 entries covering 38 minutes — the whole ring is under an hour of
|
|
11523
|
-
* fleet traffic. Every question this data is for ("how often, on camera
|
|
13498
|
+
* fleet traffic. Every question this data is for ("how often, on camera 102,
|
|
11524
13499
|
* over the week the operator complained about") outlives that ring by two
|
|
11525
13500
|
* orders of magnitude, and a previous investigation in this repo was blocked
|
|
11526
13501
|
* for precisely this reason. The gate ALREADY writes a log line per decision
|
|
@@ -11779,7 +13754,7 @@ var BirthDecisionQueryInputSchema = object({
|
|
|
11779
13754
|
* - A per-device bound multiplies by the fleet — 30 cameras at 500 each is
|
|
11780
13755
|
* 15 000 rows to protect a corpus that only ever gets read fleet-wide (the
|
|
11781
13756
|
* thing being mined is "what keeps going wrong", not "what goes wrong on
|
|
11782
|
-
*
|
|
13757
|
+
* 102"). One global ceiling is one number to reason about.
|
|
11783
13758
|
* - An AGE bound would delete the corpus for being old, which is the failure
|
|
11784
13759
|
* being fixed: a note from six months ago is the most valuable row in the
|
|
11785
13760
|
* table precisely because the pattern it describes has had time to repeat.
|
|
@@ -13328,7 +15303,7 @@ var LogChannelDescriptorSchema = object({
|
|
|
13328
15303
|
* `true` is a PROMISE with two halves, and both must hold: the gate is
|
|
13329
15304
|
* consulted with the numeric device id, AND every line the channel admits
|
|
13330
15305
|
* carries `tags: { deviceId }` with that same numeric id. The second half is
|
|
13331
|
-
* what makes `| json | deviceId="
|
|
15306
|
+
* what makes `| json | deviceId="102"` work in Loki — `loki-payload.ts`
|
|
13332
15307
|
* keeps `deviceId` out of the stream labels for cardinality, so the tag in
|
|
13333
15308
|
* the body is the only way to filter.
|
|
13334
15309
|
*
|
|
@@ -13704,7 +15679,7 @@ var ModelVariantGroupSchema = object({
|
|
|
13704
15679
|
precision: _enum(["fp32", "int8"]).optional(),
|
|
13705
15680
|
/**
|
|
13706
15681
|
* Training / latency-variant axis. Omit ⇒ the standard build. `test` marks
|
|
13707
|
-
* an alternate training of the same family (
|
|
15682
|
+
* an alternate training of the same family (plugin catalog `relu_test`); chip
|
|
13708
15683
|
* label is "Test".
|
|
13709
15684
|
*/
|
|
13710
15685
|
optimization: _enum(["standard", "test"]).optional(),
|
|
@@ -13956,8 +15931,8 @@ var ModelCatalogEntrySchema = object({
|
|
|
13956
15931
|
provider: ModelProviderIdSchema.optional(),
|
|
13957
15932
|
/**
|
|
13958
15933
|
* Per-MODEL class map override. Absent ⇒ the step's `StepDefinition.classMap`
|
|
13959
|
-
* applies (
|
|
13960
|
-
* labels already ARE the CamStack macros (
|
|
15934
|
+
* applies (plus catalog / COCO public catalog). Set on a custom model whose raw
|
|
15935
|
+
* labels already ARE the CamStack macros (plugin catalog identity map).
|
|
13961
15936
|
*/
|
|
13962
15937
|
classMap: DetectionCatalogClassMapSchema.optional(),
|
|
13963
15938
|
/**
|
|
@@ -16945,7 +18920,7 @@ method(object({
|
|
|
16945
18920
|
* `1` is real time and is the ONLY value that allows the copy branch —
|
|
16946
18921
|
* anything else forces `libx264` over the window. That was priced
|
|
16947
18922
|
* before it was chosen: a per-event burst measured at 0.23 s and 254 KB
|
|
16948
|
-
* on a real
|
|
18923
|
+
* on a real 101 720p cut, against 922 KB for the copy it replaces. A
|
|
16949
18924
|
* re-encode is capped at 720p (`EVENT_CLIP_ENCODE_MAX_WIDTH`), because
|
|
16950
18925
|
* once the decode is forced the width stops being free.
|
|
16951
18926
|
*/
|
|
@@ -17475,6 +19450,7 @@ var CompositionRunStatusSchema = _enum([
|
|
|
17475
19450
|
"starting",
|
|
17476
19451
|
"running",
|
|
17477
19452
|
"degraded",
|
|
19453
|
+
"incomplete",
|
|
17478
19454
|
"failed"
|
|
17479
19455
|
]);
|
|
17480
19456
|
var CompositionFieldStateKindSchema = _enum([
|
|
@@ -17695,6 +19671,7 @@ var CoreBlockStatusSchema = _enum([
|
|
|
17695
19671
|
"starting",
|
|
17696
19672
|
"running",
|
|
17697
19673
|
"degraded",
|
|
19674
|
+
"incomplete",
|
|
17698
19675
|
"failed"
|
|
17699
19676
|
]);
|
|
17700
19677
|
/** path → TypeScript source for a multi-file block. */
|
|
@@ -39729,7 +41706,7 @@ var PRIMARY_CATEGORIES = new Set(ENTRIES.map((e) => e.primaryCategory));
|
|
|
39729
41706
|
* `locationKey` is ALWAYS {@link locationIconKey} of the label — never the
|
|
39730
41707
|
* operator's casing. The registry matches labels trimmed + case-insensitively
|
|
39731
41708
|
* everywhere (`addLocation`, `removeLocation`, `renameLocation`), and a
|
|
39732
|
-
* case-only rename (`
|
|
41709
|
+
* case-only rename (`kitchen` → `Kitchen`) is a real edit this repo supports; a
|
|
39733
41710
|
* map keyed on the displayed casing would orphan its entry on exactly that
|
|
39734
41711
|
* edit. Consumers join by keying their own label through `locationIconKey`.
|
|
39735
41712
|
*/
|
|
@@ -39754,7 +41731,7 @@ var LocationDescriptionAssignmentSchema = object({
|
|
|
39754
41731
|
/**
|
|
39755
41732
|
* A SITE ZONE — a named part of the property that several locations belong to.
|
|
39756
41733
|
*
|
|
39757
|
-
* "
|
|
41734
|
+
* "Night zone" holds every bedroom; "Zona giorno" the living room and the
|
|
39758
41735
|
* kitchen. A camera belongs to exactly one location, and a location to at most
|
|
39759
41736
|
* one zone, so a camera's zone is derived and never stored on the device: the
|
|
39760
41737
|
* whole point of this entity is that grouping rooms touches no device row.
|
|
@@ -39783,7 +41760,7 @@ var LocationDescriptionAssignmentSchema = object({
|
|
|
39783
41760
|
* the locations inside it.
|
|
39784
41761
|
*
|
|
39785
41762
|
* The LABEL is carried alongside the key because the key is lossy on purpose —
|
|
39786
|
-
* a surface must show "
|
|
41763
|
+
* a surface must show "Night zone", not "night zone". Locations are carried
|
|
39787
41764
|
* here, rather than left to a second call, because every consumer wants both
|
|
39788
41765
|
* at once and a viewer that asked twice could render a zone whose membership
|
|
39789
41766
|
* it has not fetched yet.
|
|
@@ -42093,8 +44070,8 @@ var LoadContributionSchema = object({
|
|
|
42093
44070
|
"unattributable"
|
|
42094
44071
|
]),
|
|
42095
44072
|
/**
|
|
42096
|
-
* What ONE entry is, in the contributor's own words — `
|
|
42097
|
-
* `
|
|
44073
|
+
* What ONE entry is, in the contributor's own words — `101/high`,
|
|
44074
|
+
* `102/native`, `cuda:0 shared pool`. Free text because the unit differs per
|
|
42098
44075
|
* family and inventing a common one would lose the only information that
|
|
42099
44076
|
* makes two entries for the same camera distinguishable.
|
|
42100
44077
|
*/
|
|
@@ -45161,7 +47138,7 @@ var NcConditionsSchema = object({
|
|
|
45161
47138
|
* with the list under it is worse than no switch (D62).
|
|
45162
47139
|
*
|
|
45163
47140
|
* MEMBERS ARE FACE-GALLERY `Identity.id`s (uuid), not display names. A name is
|
|
45164
|
-
* renameable, and a rule authored on "
|
|
47141
|
+
* renameable, and a rule authored on "Alice" went silently dark the moment
|
|
45165
47142
|
* the operator fixed the spelling. The id reaches the record on
|
|
45166
47143
|
* `LabelAttribution.identityId`; the name is what the editor shows and what
|
|
45167
47144
|
* `{{label}}` renders.
|
|
@@ -45744,7 +47721,7 @@ var NcRulePatchSchema = NcRuleInputSchema.partial().extend({
|
|
|
45744
47721
|
* A rule scoped to one camera and one zone silently became a rule that
|
|
45745
47722
|
* matches EVERY event on EVERY camera, and lost its `media` policy
|
|
45746
47723
|
* (zoneCrop / gif / clip / frame) and its `priority` at the same time. Seen
|
|
45747
|
-
* live on 2026-08-12: a rule scoped to device
|
|
47724
|
+
* live on 2026-08-12: a rule scoped to device 102 fired on 104 and 101
|
|
45748
47725
|
* within a minute of a two-field patch.
|
|
45749
47726
|
*
|
|
45750
47727
|
* So every defaulted field is re-declared here WITHOUT its default. The
|
|
@@ -47272,8 +49249,8 @@ var NcAlarmSensorsSchema = object({
|
|
|
47272
49249
|
* own `sustainSeconds` (29 s on this hub), so its clip is anchored well in the
|
|
47273
49250
|
* past — and the other source, the recordings, cannot cover a recent moment:
|
|
47274
49251
|
* measured against `recording.getAvailability` for a 10 s window at several
|
|
47275
|
-
* anchors, full coverage arrived at −18 s on device
|
|
47276
|
-
*
|
|
49252
|
+
* anchors, full coverage arrived at −18 s on device 104 and −26 s on 101 and
|
|
49253
|
+
* 102. That edge is a PHASE of the 10-second segment cycle, not a number. The
|
|
47277
49254
|
* ring therefore has to hold the moment until the recordings can take it over:
|
|
47278
49255
|
* the worst measured phase (26 s) plus the confirmation lag (29 s) is 55 s, and
|
|
47279
49256
|
* 60 is the round number above it.
|
|
@@ -48478,7 +50455,7 @@ var LabelAttributionSchema = object({
|
|
|
48478
50455
|
* `Identity.id` or a plate-gallery `Vehicle.id` (both `randomUUID`).
|
|
48479
50456
|
*
|
|
48480
50457
|
* The text alone is a DISPLAY NAME, and a display name is renameable: a
|
|
48481
|
-
* notification rule authored on "
|
|
50458
|
+
* notification rule authored on "Alice" stopped matching the moment the
|
|
48482
50459
|
* operator fixed the spelling in the gallery, and nothing said so. The id is
|
|
48483
50460
|
* the thing that does not move, so it is what a rule matches on
|
|
48484
50461
|
* (`NcConditions.identities`) and the text is what a human is shown.
|
|
@@ -51265,7 +53242,7 @@ var pipelineAnalyticsCapability = {
|
|
|
51265
53242
|
* audio, stopping at the first hit — so on the live hub, where object
|
|
51266
53243
|
* events own no media of their own and 299 883 of 300 559 media rows are
|
|
51267
53244
|
* motion-owned, EVERY object event resolved to its motion namesake. A
|
|
51268
|
-
* track from 17:34 on camera
|
|
53245
|
+
* track from 17:34 on camera 101 was served a snapshot from 22:35 eleven
|
|
51269
53246
|
* days earlier, silently.
|
|
51270
53247
|
*
|
|
51271
53248
|
* D476 had already disambiguated the KEY (`motion:` vs `object:`); this is
|
|
@@ -51815,7 +53792,7 @@ method(_void(), array(PipelineEngineChoiceSchema)), method(_void(), PipelineEngi
|
|
|
51815
53792
|
/**
|
|
51816
53793
|
* Root-supplied detections for the tree's ROOT step (D730). Set by
|
|
51817
53794
|
* `runDetailSubtree` when the camera's root model supplies a crop-kind
|
|
51818
|
-
* step (a
|
|
53795
|
+
* step (a plus catalog `license_plate` for `plate-detection`): the step is
|
|
51819
53796
|
* NOT inferred, these boxes are its output, and its children (the plate
|
|
51820
53797
|
* reader) run on them through their own crop policy. Boxes are in the
|
|
51821
53798
|
* PIXELS of the image this call carries. Absent ⇒ the root step runs.
|
|
@@ -53492,7 +55469,7 @@ var RunnerCameraConfigSchema = object({
|
|
|
53492
55469
|
* detection session that asks for history. What shipped was a last-moment
|
|
53493
55470
|
* discard — `FrameSlot`'s throttle compares wall clocks, and ~4 s of media
|
|
53494
55471
|
* arriving inside a few hundred ms of wall clock looks to it like one frame's
|
|
53495
|
-
* worth. Device
|
|
55472
|
+
* worth. Device 102, 2026-09-08: a re-run of the SAME model over the stored
|
|
53496
55473
|
* recording scored the subject `vehicle 0.5669` — above the 0.50 floor —
|
|
53497
55474
|
* 1.68 s BEFORE the live track was born, on a frame that was in the pre-roll,
|
|
53498
55475
|
* was decoded, and was freed.
|
|
@@ -55570,7 +57547,7 @@ method(_void(), ProviderInfoSchema, { auth: "admin" }), method(object({ config:
|
|
|
55570
57547
|
* The signals a device can emit to WAKE its own stream.
|
|
55571
57548
|
*
|
|
55572
57549
|
* A camera whose stream is built on demand sleeps until something asks for it,
|
|
55573
|
-
* and "something" cannot be a consumer that is merely attached — a
|
|
57550
|
+
* and "something" cannot be a consumer that is merely attached — a external-catalog
|
|
55574
57551
|
* puller holds a session open for ever, and treating that as demand would keep
|
|
55575
57552
|
* a battery camera awake for ever, which is the whole thing the battery is for
|
|
55576
57553
|
* (D173). So the wake has to come from the CAMERA: an event it noticed by
|
|
@@ -56304,7 +58281,7 @@ var ClipSchema = object({
|
|
|
56304
58281
|
* {@link MAX_CLIP_EVENT_IDS}. Empty on footage-only clips.
|
|
56305
58282
|
*
|
|
56306
58283
|
* Bounded because it is not a payload the surface pages through: one visit on
|
|
56307
|
-
* device
|
|
58284
|
+
* device 101 carried 2 345 ids, and `eventIds` was 99% of a 153 KB
|
|
56308
58285
|
* camera-day. Read {@link eventCount} for the true total.
|
|
56309
58286
|
*/
|
|
56310
58287
|
eventIds: array(string()).optional(),
|
|
@@ -56449,7 +58426,7 @@ var ClipPlaybackSchema = object({
|
|
|
56449
58426
|
* camera has no recordings", which is the defect this whole line of work is
|
|
56450
58427
|
* about: a battery camera nobody woke (`sleeping`), a camera that could not be
|
|
56451
58428
|
* reached at all (`unreachable`, also what a provider that THREW reports), a
|
|
56452
|
-
* camera whose SD card is not mounted (`no-storage`, measured on
|
|
58429
|
+
* camera whose SD card is not mounted (`no-storage`, measured on 106 —
|
|
56453
58430
|
* `HddInfo mount 0`, honestly nothing to list rather than "no clips"), and a
|
|
56454
58431
|
* camera whose OWN index disagrees with its OWN calendar (`index-empty`,
|
|
56455
58432
|
* measured on 618: the calendar marks 3–20 September, days 6–20 list zero
|
|
@@ -56714,7 +58691,7 @@ DeviceType.Camera, method(object({
|
|
|
56714
58691
|
*
|
|
56715
58692
|
* It was optional, documented as "absent means the device's BOUND
|
|
56716
58693
|
* provider, which is CamStack on every camera". No code implemented
|
|
56717
|
-
* that. Measured on the live hub 2026-09-20 — device
|
|
58694
|
+
* that. Measured on the live hub 2026-09-20 — device 107, bound to
|
|
56718
58695
|
* `recorder` AND `provider-reolink` — a bare call with `limit: 3`
|
|
56719
58696
|
* answered SIX rows, three from each source, merged newest-first:
|
|
56720
58697
|
* `device-collection-dispatch.ts` simply left the fan-out un-narrowed,
|
|
@@ -57857,7 +59834,10 @@ var airQualitySensorCapability = {
|
|
|
57857
59834
|
*/
|
|
57858
59835
|
var AmbientLightSensorStatusSchema = object({
|
|
57859
59836
|
/** Current illuminance in lux (lx). */
|
|
57860
|
-
lux: number().min(0)
|
|
59837
|
+
lux: number().min(0).meta({
|
|
59838
|
+
unit: "lx",
|
|
59839
|
+
label: "Illuminance"
|
|
59840
|
+
}),
|
|
57861
59841
|
/** Ms epoch when the slice was last updated. */
|
|
57862
59842
|
lastFetchedAt: number(),
|
|
57863
59843
|
/** Live display unit from the upstream source (e.g. HA
|
|
@@ -57900,7 +59880,12 @@ var ambientLightSensorCapability = {
|
|
|
57900
59880
|
} } },
|
|
57901
59881
|
/** Clock fields: written, but excluded from the compare that decides
|
|
57902
59882
|
* whether persisting is worth a SQLite commit. */
|
|
57903
|
-
volatileStateFields: ["lastFetchedAt"]
|
|
59883
|
+
volatileStateFields: ["lastFetchedAt"],
|
|
59884
|
+
customize: {
|
|
59885
|
+
version: 1,
|
|
59886
|
+
advanced: "derive",
|
|
59887
|
+
targets: []
|
|
59888
|
+
}
|
|
57904
59889
|
};
|
|
57905
59890
|
/**
|
|
57906
59891
|
* Per-class audio metrics aggregated over a sliding window.
|
|
@@ -58127,7 +60112,10 @@ var BatteryStatusSchema = object({
|
|
|
58127
60112
|
* Consumers must SKIP a null rather than coerce it — `battery-band` already
|
|
58128
60113
|
* declines to band a non-finite reading, which is the correct shape.
|
|
58129
60114
|
*/
|
|
58130
|
-
percentage: number().min(0).max(100).nullable()
|
|
60115
|
+
percentage: number().min(0).max(100).nullable().meta({
|
|
60116
|
+
unit: "%",
|
|
60117
|
+
label: "Charge"
|
|
60118
|
+
}),
|
|
58131
60119
|
/**
|
|
58132
60120
|
* Charging source. `'dc'` covers wall/USB adapters; `'solar'` is
|
|
58133
60121
|
* Reolink-specific for the Solar Panel 2 accessory (will become
|
|
@@ -58146,13 +60134,13 @@ var BatteryStatusSchema = object({
|
|
|
58146
60134
|
"solar",
|
|
58147
60135
|
"none",
|
|
58148
60136
|
"unknown"
|
|
58149
|
-
]),
|
|
60137
|
+
]).meta({ label: "Charging source" }),
|
|
58150
60138
|
/**
|
|
58151
60139
|
* True when the camera firmware has gone into low-power mode. Battery
|
|
58152
60140
|
* providers MUST avoid polling during sleep — reading the battery
|
|
58153
60141
|
* wakes the camera up and drains charge.
|
|
58154
60142
|
*/
|
|
58155
|
-
sleeping: boolean(),
|
|
60143
|
+
sleeping: boolean().meta({ label: "Sleeping" }),
|
|
58156
60144
|
/** Ms epoch of the last observation. Lets consumers reason about freshness. */
|
|
58157
60145
|
lastUpdated: number(),
|
|
58158
60146
|
/**
|
|
@@ -58192,7 +60180,7 @@ var BatteryStatusSchema = object({
|
|
|
58192
60180
|
* sub-threshold = low). UI MUST render "Normal"/"Low" instead of a
|
|
58193
60181
|
* misleading exact percentage. Absent/false → genuine 0–100 % reading.
|
|
58194
60182
|
*/
|
|
58195
|
-
binary: boolean().optional()
|
|
60183
|
+
binary: boolean().optional().meta({ label: "Binary indicator" })
|
|
58196
60184
|
});
|
|
58197
60185
|
var BATTERY_DEVICE_TYPES = [
|
|
58198
60186
|
DeviceType.Camera,
|
|
@@ -58206,6 +60194,7 @@ var BATTERY_DEVICE_TYPES = [
|
|
|
58206
60194
|
/** Generic Customize target for the percentage reading (D936). */
|
|
58207
60195
|
var batteryCustomize = {
|
|
58208
60196
|
version: 1,
|
|
60197
|
+
advanced: "derive",
|
|
58209
60198
|
targets: [{
|
|
58210
60199
|
id: "percentage",
|
|
58211
60200
|
cardinality: "scalar",
|
|
@@ -58356,7 +60345,7 @@ onStatusChanged: { data: object({
|
|
|
58356
60345
|
* with the right HomeKit / Alexa display category.
|
|
58357
60346
|
*/
|
|
58358
60347
|
var BinaryStatusSchema = object({
|
|
58359
|
-
on: boolean(),
|
|
60348
|
+
on: boolean().meta({ label: "On" }),
|
|
58360
60349
|
/** Ms epoch of the last transition. 0 if never observed. */
|
|
58361
60350
|
lastChangedAt: number()
|
|
58362
60351
|
});
|
|
@@ -58385,7 +60374,12 @@ var binaryCapability = {
|
|
|
58385
60374
|
history: { fields: { on: { kind: "boolean" } } },
|
|
58386
60375
|
/** Clock fields: written, but excluded from the compare that decides
|
|
58387
60376
|
* whether persisting is worth a SQLite commit. */
|
|
58388
|
-
volatileStateFields: ["lastChangedAt"]
|
|
60377
|
+
volatileStateFields: ["lastChangedAt"],
|
|
60378
|
+
customize: {
|
|
60379
|
+
version: 1,
|
|
60380
|
+
advanced: "derive",
|
|
60381
|
+
targets: []
|
|
60382
|
+
}
|
|
58389
60383
|
};
|
|
58390
60384
|
/**
|
|
58391
60385
|
* Dimmable-light brightness control. Co-exists with `switch` on the
|
|
@@ -58718,7 +60712,7 @@ var GridLayoutCellSchema = object({
|
|
|
58718
60712
|
*
|
|
58719
60713
|
* A grid's `high` composes its sources' `high` and its `low` their `low`, so a
|
|
58720
60714
|
* profile is on offer only when EVERY source can serve it. The refusal NAMES
|
|
58721
|
-
* the sources, because "this grid has no low" is not a finding — "
|
|
60715
|
+
* the sources, because "this grid has no low" is not a finding — "101 has no
|
|
58722
60716
|
* low" is, and it is the one an operator can act on.
|
|
58723
60717
|
*/
|
|
58724
60718
|
var GridProfileOfferSchema = object({
|
|
@@ -61312,7 +63306,10 @@ var humidifierCapability = {
|
|
|
61312
63306
|
*/
|
|
61313
63307
|
var HumiditySensorStatusSchema = object({
|
|
61314
63308
|
/** Current relative humidity, 0..100. */
|
|
61315
|
-
percent: number().min(0).max(100)
|
|
63309
|
+
percent: number().min(0).max(100).meta({
|
|
63310
|
+
unit: "%",
|
|
63311
|
+
label: "Humidity"
|
|
63312
|
+
}),
|
|
61316
63313
|
/** Ms epoch when the slice was last updated. */
|
|
61317
63314
|
lastFetchedAt: number(),
|
|
61318
63315
|
/** Live display unit from the upstream source (e.g. HA
|
|
@@ -61354,7 +63351,12 @@ var humiditySensorCapability = {
|
|
|
61354
63351
|
} } },
|
|
61355
63352
|
/** Clock fields: written, but excluded from the compare that decides
|
|
61356
63353
|
* whether persisting is worth a SQLite commit. */
|
|
61357
|
-
volatileStateFields: ["lastFetchedAt"]
|
|
63354
|
+
volatileStateFields: ["lastFetchedAt"],
|
|
63355
|
+
customize: {
|
|
63356
|
+
version: 1,
|
|
63357
|
+
advanced: "derive",
|
|
63358
|
+
targets: []
|
|
63359
|
+
}
|
|
61358
63360
|
};
|
|
61359
63361
|
/**
|
|
61360
63362
|
* Image display cap. Models a single still image exposed by an integration —
|
|
@@ -65068,9 +67070,15 @@ method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema)
|
|
|
65068
67070
|
*/
|
|
65069
67071
|
var PowerMeterStatusSchema = object({
|
|
65070
67072
|
/** Instantaneous power draw in watts. */
|
|
65071
|
-
watts: number().optional()
|
|
67073
|
+
watts: number().optional().meta({
|
|
67074
|
+
unit: "W",
|
|
67075
|
+
label: "Power"
|
|
67076
|
+
}),
|
|
65072
67077
|
/** Cumulative energy in kilowatt-hours since the meter was reset. */
|
|
65073
|
-
kwhTotal: number().optional()
|
|
67078
|
+
kwhTotal: number().optional().meta({
|
|
67079
|
+
unit: "kWh",
|
|
67080
|
+
label: "Energy"
|
|
67081
|
+
}),
|
|
65074
67082
|
/** Voltage in volts. */
|
|
65075
67083
|
volts: number().optional(),
|
|
65076
67084
|
/** Current in amperes. */
|
|
@@ -65155,7 +67163,12 @@ var powerMeterCapability = {
|
|
|
65155
67163
|
} },
|
|
65156
67164
|
/** Clock fields: written, but excluded from the compare that decides
|
|
65157
67165
|
* whether persisting is worth a SQLite commit. */
|
|
65158
|
-
volatileStateFields: ["lastFetchedAt"]
|
|
67166
|
+
volatileStateFields: ["lastFetchedAt"],
|
|
67167
|
+
customize: {
|
|
67168
|
+
version: 1,
|
|
67169
|
+
advanced: "derive",
|
|
67170
|
+
targets: []
|
|
67171
|
+
}
|
|
65159
67172
|
};
|
|
65160
67173
|
/**
|
|
65161
67174
|
* Presence cap. Models HA `person.*` and `device_tracker.*` entities
|
|
@@ -65577,9 +67590,9 @@ var PtzOptionsSchema = object({
|
|
|
65577
67590
|
* Reolink preset 0, Hikvision preset '1', Dahua preset 1 -- and on this fleet
|
|
65578
67591
|
* not one of the three cameras honours its own:
|
|
65579
67592
|
*
|
|
65580
|
-
*
|
|
65581
|
-
* 1438
|
|
65582
|
-
* 3836
|
|
67593
|
+
* 107 Camera camera Carol (reolink) preset 0 holds "stanza"
|
|
67594
|
+
* 1438 Camera dispensa (hikvision) preset 1 holds "Credenza"
|
|
67595
|
+
* 3836 Camera studio (amcrest) preset 1 holds "Preset1"
|
|
65583
67596
|
*
|
|
65584
67597
|
* So `goHome` meant "go wherever the operator happened to save in slot 0 or 1",
|
|
65585
67598
|
* and two of the three swallowed the failure in a bare `catch`. For autotrack
|
|
@@ -65823,7 +67836,7 @@ var RunningStateStatusSchema = object({
|
|
|
65823
67836
|
running: boolean().nullable(),
|
|
65824
67837
|
/** Epoch ms the current boolean began; null while `running` is null. */
|
|
65825
67838
|
since: number().nullable(),
|
|
65826
|
-
source: RunningStateSourceSchema,
|
|
67839
|
+
source: RunningStateSourceSchema.meta({ label: "Source" }),
|
|
65827
67840
|
phase: string().nullable(),
|
|
65828
67841
|
/** null until a reading has been published (D393). */
|
|
65829
67842
|
lastFetchedAt: number().nullable()
|
|
@@ -65837,6 +67850,7 @@ var RUNNING_DEVICE_TYPES = Object.values(DeviceType);
|
|
|
65837
67850
|
/** Generic Customize target for the running boolean (D936). */
|
|
65838
67851
|
var runningCustomize = {
|
|
65839
67852
|
version: 1,
|
|
67853
|
+
advanced: "derive",
|
|
65840
67854
|
targets: [{
|
|
65841
67855
|
id: "running",
|
|
65842
67856
|
cardinality: "scalar",
|
|
@@ -65978,7 +67992,7 @@ var RecordingAvailabilitySchema = object({
|
|
|
65978
67992
|
* would look identical. But the answer used to say nothing about that, so a
|
|
65979
67993
|
* caller asking "what can I export?" read the single preferred profile as
|
|
65980
67994
|
* the only one that exists — on this deployment every camera records `high`
|
|
65981
|
-
* AND `low`, the low tree holding 14 GB for camera
|
|
67995
|
+
* AND `low`, the low tree holding 14 GB for camera 101 alone, and the export
|
|
65982
67996
|
* UI could not see it.
|
|
65983
67997
|
*
|
|
65984
67998
|
* Cheap: it is the same shallow directory read the profile CHOICE already
|
|
@@ -66077,7 +68091,7 @@ var RecordingSourceOptionsSchema = object({
|
|
|
66077
68091
|
* `sparse` = gaps are the absence of one, and must be drawn as such.
|
|
66078
68092
|
*
|
|
66079
68093
|
* Not an onboard-only concession: measured 2026-09-24, OUR bar covers 98.8 %
|
|
66080
|
-
* of
|
|
68094
|
+
* of 107's day and 1.2 % of 1436's. It is a fact about a (source, camera)
|
|
66081
68095
|
* pair, and ours answers it per camera from `deriveRecordingMode`. */
|
|
66082
68096
|
coverage: _enum(["continuous", "sparse"]),
|
|
66083
68097
|
/** Where the playhead may be put.
|
|
@@ -66153,7 +68167,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(RecordingSourceS
|
|
|
66153
68167
|
* merely discouraged (D554 amended).
|
|
66154
68168
|
*
|
|
66155
68169
|
* It was learned the expensive way on `videoclips.listClips`: measured
|
|
66156
|
-
* on the live hub 2026-09-20, device
|
|
68170
|
+
* on the live hub 2026-09-20, device 107 bound to `recorder` AND
|
|
66157
68171
|
* `provider-reolink`, a bare call with `limit: 3` answered SIX rows,
|
|
66158
68172
|
* three from each source, merged — `device-collection-dispatch.ts`
|
|
66159
68173
|
* leaves an unpinned fan-out un-narrowed, so absence buys the union the
|
|
@@ -66754,7 +68768,7 @@ var ExportSpeedSchema = number().min(.25).max(32);
|
|
|
66754
68768
|
* on a 10 h window holding 29,393 s of footage every range landed late by the
|
|
66755
68769
|
* gap accumulated before it — up to 6,607 s, well past EOF. Nothing matched,
|
|
66756
68770
|
* the video was a uniform timelapse, and the log line reported the five ranges
|
|
66757
|
-
* that had been ASKED for (2026-08-13, export `57d14363`, camera
|
|
68771
|
+
* that had been ASKED for (2026-08-13, export `57d14363`, camera 101).
|
|
66758
68772
|
*
|
|
66759
68773
|
* Relative and not absolute epoch, because an absolute epoch would make every
|
|
66760
68774
|
* call site responsible for the same subtraction.
|
|
@@ -67494,7 +69508,7 @@ getStatus: method(object({ deviceId: number() }), RecordingSignalStatusSchema) }
|
|
|
67494
69508
|
* which put a "Scenes" tab on one camera's detail page. That is the wrong shape
|
|
67495
69509
|
* for the thing: a scene is a standing question about the property ("is the bin
|
|
67496
69510
|
* still out"), and the operator's question is "which of my scenes have tripped",
|
|
67497
|
-
* across every camera at once — not "what does camera
|
|
69511
|
+
* across every camera at once — not "what does camera 102 think". Buried one
|
|
67498
69512
|
* camera deep it also could not be found. The surface is now a top-level admin
|
|
67499
69513
|
* page (`/scenes`, `pages/Scenes.tsx`) that lists every scene on every camera and
|
|
67500
69514
|
* picks the camera inside the create flow, the same shape Events and Faces have.
|
|
@@ -68371,7 +70385,7 @@ var streamParamsCapability = {
|
|
|
68371
70385
|
* `getSettingsUISchema()` surface.
|
|
68372
70386
|
*/
|
|
68373
70387
|
var SwitchStatusSchema = object({
|
|
68374
|
-
on: boolean(),
|
|
70388
|
+
on: boolean().meta({ label: "On" }),
|
|
68375
70389
|
/** Ms epoch of the last state change. Useful for UI "X minutes ago". */
|
|
68376
70390
|
lastChangedAt: number()
|
|
68377
70391
|
});
|
|
@@ -68430,7 +70444,12 @@ var switchCapability = {
|
|
|
68430
70444
|
label: "On",
|
|
68431
70445
|
kind: "boolean"
|
|
68432
70446
|
}
|
|
68433
|
-
}] }
|
|
70447
|
+
}] },
|
|
70448
|
+
customize: {
|
|
70449
|
+
version: 1,
|
|
70450
|
+
advanced: "derive",
|
|
70451
|
+
targets: []
|
|
70452
|
+
}
|
|
68434
70453
|
};
|
|
68435
70454
|
/** C0 controls, DEL and the C1 range: none of them belongs in a name. */
|
|
68436
70455
|
function hasControlCharacter(value) {
|
|
@@ -69026,7 +71045,10 @@ var tamperCapability = {
|
|
|
69026
71045
|
*/
|
|
69027
71046
|
var TemperatureSensorStatusSchema = object({
|
|
69028
71047
|
/** Current temperature in Celsius. */
|
|
69029
|
-
celsius: number()
|
|
71048
|
+
celsius: number().meta({
|
|
71049
|
+
unit: "°C",
|
|
71050
|
+
label: "Temperature"
|
|
71051
|
+
}),
|
|
69030
71052
|
/** Ms epoch when the slice was last updated (push or poll). */
|
|
69031
71053
|
lastFetchedAt: number(),
|
|
69032
71054
|
/** Live display unit from the upstream source (e.g. HA
|
|
@@ -69069,7 +71091,12 @@ var temperatureSensorCapability = {
|
|
|
69069
71091
|
} } },
|
|
69070
71092
|
/** Clock fields: written, but excluded from the compare that decides
|
|
69071
71093
|
* whether persisting is worth a SQLite commit. */
|
|
69072
|
-
volatileStateFields: ["lastFetchedAt"]
|
|
71094
|
+
volatileStateFields: ["lastFetchedAt"],
|
|
71095
|
+
customize: {
|
|
71096
|
+
version: 1,
|
|
71097
|
+
advanced: "derive",
|
|
71098
|
+
targets: []
|
|
71099
|
+
}
|
|
69073
71100
|
};
|
|
69074
71101
|
/**
|
|
69075
71102
|
* toast — system-scoped singleton capability that streams toast
|
|
@@ -70615,6 +72642,10 @@ method(object({}), array(TrainingBaseModelSchema).readonly(), { auth: "admin" })
|
|
|
70615
72642
|
auth: "admin"
|
|
70616
72643
|
});
|
|
70617
72644
|
SOURCE_CAPS.filter((cap) => cap !== "switch" && cap !== "motion");
|
|
72645
|
+
DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.PetFeeder, DeviceType.Container, DeviceType.Thermostat, DeviceType.Camera, DeviceType.Hub, DeviceType.Light, DeviceType.Siren, DeviceType.Switch, DeviceType.Sensor, DeviceType.Thermostat, DeviceType.Climate, DeviceType.Button, DeviceType.EventEmitter, DeviceType.Update, DeviceType.Generic, DeviceType.Notifier, DeviceType.Script, DeviceType.Automation, DeviceType.Lock, DeviceType.Cover, DeviceType.Valve, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.Fan, DeviceType.MediaPlayer, DeviceType.AlarmPanel, DeviceType.Control, DeviceType.Presence, DeviceType.Weather, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.Container, DeviceType.Image, DeviceType.PetFeeder, DeviceType.Dishwasher, DeviceType.Camera, DeviceType.Camera, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.MediaPlayer, DeviceType.WaterHeater, DeviceType.Humidifier, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.PetFeeder;
|
|
72646
|
+
String.raw`rose\(active(\d+), changed(\d+), (\d+(?:\.\d+)?)\)`;
|
|
72647
|
+
DeviceRole.BinarySensor, DeviceRole.MotionSensor;
|
|
72648
|
+
new Set(CAP_NAMES);
|
|
70618
72649
|
Object.freeze({
|
|
70619
72650
|
person: .5,
|
|
70620
72651
|
vehicle: .5,
|
|
@@ -84666,7 +86697,7 @@ var SENSOR_CAP_VOCABULARY = {
|
|
|
84666
86697
|
state: [{
|
|
84667
86698
|
kind: "boolean",
|
|
84668
86699
|
field: "on",
|
|
84669
|
-
label: t("
|
|
86700
|
+
label: t("On", "Acceso"),
|
|
84670
86701
|
whenTrue: t("When {device} turns active", "Quando {device} si attiva"),
|
|
84671
86702
|
whenFalse: t("When {device} turns inactive", "Quando {device} si disattiva"),
|
|
84672
86703
|
icon: "toggle-right"
|
|
@@ -88187,7 +90218,6 @@ var BucketAccumulator = class {
|
|
|
88187
90218
|
}
|
|
88188
90219
|
};
|
|
88189
90220
|
DeviceType.Camera;
|
|
88190
|
-
DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.PetFeeder, DeviceType.Container, DeviceType.Thermostat, DeviceType.Camera, DeviceType.Hub, DeviceType.Light, DeviceType.Siren, DeviceType.Switch, DeviceType.Sensor, DeviceType.Thermostat, DeviceType.Climate, DeviceType.Button, DeviceType.EventEmitter, DeviceType.Update, DeviceType.Generic, DeviceType.Notifier, DeviceType.Script, DeviceType.Automation, DeviceType.Lock, DeviceType.Cover, DeviceType.Valve, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.Fan, DeviceType.MediaPlayer, DeviceType.AlarmPanel, DeviceType.Control, DeviceType.Presence, DeviceType.Weather, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.Container, DeviceType.Image, DeviceType.PetFeeder, DeviceType.Dishwasher, DeviceType.Camera, DeviceType.Camera, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.MediaPlayer, DeviceType.WaterHeater, DeviceType.Humidifier, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.PetFeeder;
|
|
88191
90221
|
/**
|
|
88192
90222
|
* A saved Customize assignment (D936). The schema is the type: callers use
|
|
88193
90223
|
* `z.infer`, they do not restate the shape.
|
|
@@ -88276,7 +90306,6 @@ object({
|
|
|
88276
90306
|
]),
|
|
88277
90307
|
reason: string().nullable()
|
|
88278
90308
|
});
|
|
88279
|
-
String.raw`rose\(active(\d+), changed(\d+), (\d+(?:\.\d+)?)\)`;
|
|
88280
90309
|
var G711_SCALE_CORRECTION_DB = {
|
|
88281
90310
|
PCMU: 20 * Math.log10(4),
|
|
88282
90311
|
PCMA: 20 * Math.log10(8)
|
|
@@ -90027,7 +92056,7 @@ var STATE_SUMMARY_SECTION_VARS = [
|
|
|
90027
92056
|
{
|
|
90028
92057
|
name: "summaryStreams",
|
|
90029
92058
|
label: "Summary: streams offline",
|
|
90030
|
-
example: "
|
|
92059
|
+
example: "Front door (high) — since 06:40",
|
|
90031
92060
|
kinds: ["stream-offline", "stream-online"]
|
|
90032
92061
|
},
|
|
90033
92062
|
{
|
|
@@ -90045,13 +92074,13 @@ var STATE_SUMMARY_SECTION_VARS = [
|
|
|
90045
92074
|
{
|
|
90046
92075
|
name: "summaryDetection",
|
|
90047
92076
|
label: "Summary: cameras detecting nothing",
|
|
90048
|
-
example: "
|
|
92077
|
+
example: "Front door — since 05:10",
|
|
90049
92078
|
kinds: ["detection-blind"]
|
|
90050
92079
|
},
|
|
90051
92080
|
{
|
|
90052
92081
|
name: "summaryNodes",
|
|
90053
92082
|
label: "Summary: nodes",
|
|
90054
|
-
example: "
|
|
92083
|
+
example: "agent-a — offline since 03:00",
|
|
90055
92084
|
kinds: [
|
|
90056
92085
|
"node-offline",
|
|
90057
92086
|
"node-online",
|
|
@@ -90135,7 +92164,7 @@ var NC_TEMPLATE_VARS = [
|
|
|
90135
92164
|
{
|
|
90136
92165
|
name: "camera",
|
|
90137
92166
|
label: "Camera",
|
|
90138
|
-
example: "
|
|
92167
|
+
example: "Front door",
|
|
90139
92168
|
group: "subject",
|
|
90140
92169
|
families: ["rule", "timelapse"],
|
|
90141
92170
|
systemEventKinds: [...DEVICE_EVENTS, "export-completed"]
|
|
@@ -90303,7 +92332,7 @@ var NC_TEMPLATE_VARS = [
|
|
|
90303
92332
|
{
|
|
90304
92333
|
name: "rule",
|
|
90305
92334
|
label: "Rule name",
|
|
90306
|
-
example: "
|
|
92335
|
+
example: "Front door notte",
|
|
90307
92336
|
group: "rule",
|
|
90308
92337
|
families: [
|
|
90309
92338
|
"rule",
|
|
@@ -90404,7 +92433,7 @@ var NC_TEMPLATE_VARS = [
|
|
|
90404
92433
|
{
|
|
90405
92434
|
name: "deviceName",
|
|
90406
92435
|
label: "Device",
|
|
90407
|
-
example: "
|
|
92436
|
+
example: "Front door",
|
|
90408
92437
|
group: "system",
|
|
90409
92438
|
families: ["rule"],
|
|
90410
92439
|
fields: [...RULE_TEXT],
|
|
@@ -90414,7 +92443,7 @@ var NC_TEMPLATE_VARS = [
|
|
|
90414
92443
|
{
|
|
90415
92444
|
name: "locations",
|
|
90416
92445
|
label: "Intrusion locations",
|
|
90417
|
-
example: "
|
|
92446
|
+
example: "Front door, Hallway, Hall",
|
|
90418
92447
|
group: "system",
|
|
90419
92448
|
families: ["rule"],
|
|
90420
92449
|
fields: [...RULE_TEXT],
|
|
@@ -90424,7 +92453,7 @@ var NC_TEMPLATE_VARS = [
|
|
|
90424
92453
|
{
|
|
90425
92454
|
name: "deviceId",
|
|
90426
92455
|
label: "Device id",
|
|
90427
|
-
example: "
|
|
92456
|
+
example: "102",
|
|
90428
92457
|
group: "system",
|
|
90429
92458
|
families: ["rule"],
|
|
90430
92459
|
fields: [...RULE_TEXT],
|
|
@@ -90512,7 +92541,7 @@ var NC_TEMPLATE_VARS = [
|
|
|
90512
92541
|
{
|
|
90513
92542
|
name: "nodeName",
|
|
90514
92543
|
label: "Node name",
|
|
90515
|
-
example: "
|
|
92544
|
+
example: "agent-a",
|
|
90516
92545
|
group: "system",
|
|
90517
92546
|
families: ["rule"],
|
|
90518
92547
|
fields: [...RULE_TEXT],
|
|
@@ -90533,7 +92562,7 @@ var NC_TEMPLATE_VARS = [
|
|
|
90533
92562
|
name: "devices",
|
|
90534
92563
|
label: "Devices",
|
|
90535
92564
|
description: "node-inference-unavailable: the affected cameras, comma-joined. Alarm arm / arming / refusal: HOW MANY devices are armed (or open).",
|
|
90536
|
-
example: "
|
|
92565
|
+
example: "Front door, Garage",
|
|
90537
92566
|
group: "system",
|
|
90538
92567
|
families: ["rule"],
|
|
90539
92568
|
fields: [...RULE_TEXT],
|
|
@@ -90734,7 +92763,7 @@ var NC_TEMPLATE_VARS = [
|
|
|
90734
92763
|
name: "nodes",
|
|
90735
92764
|
label: "Nodes",
|
|
90736
92765
|
description: "Comma-joined node ids, when an update spans more than one — the single-node case names it through {{nodeId}} instead. `incomingFromUpdateAvailable` (event-intake.ts) fills `nodes` from ONE shared textParams object for both addon- and server-update-available, exactly like packageName/currentVersion/latestVersion/count — only the shipped TEXT (system.server-update-available.body.onNodes) reads it today, but the var is real on both kinds.",
|
|
90737
|
-
example: "hub,
|
|
92766
|
+
example: "hub, agent-a",
|
|
90738
92767
|
group: "system",
|
|
90739
92768
|
families: ["rule"],
|
|
90740
92769
|
fields: [...RULE_TEXT],
|
|
@@ -90845,7 +92874,7 @@ var NC_TEMPLATE_VARS = [
|
|
|
90845
92874
|
{
|
|
90846
92875
|
name: "title",
|
|
90847
92876
|
label: "Export or alert title",
|
|
90848
|
-
example: "
|
|
92877
|
+
example: "Front door 08:00",
|
|
90849
92878
|
group: "system",
|
|
90850
92879
|
families: ["rule"],
|
|
90851
92880
|
fields: [...RULE_TEXT],
|
|
@@ -90959,7 +92988,7 @@ var NC_TEMPLATE_VARS = [
|
|
|
90959
92988
|
name: "names",
|
|
90960
92989
|
label: "Device names",
|
|
90961
92990
|
description: "Armed / arming: the Active devices (or every skipped name when none are Active). Refusal: the open sensors.",
|
|
90962
|
-
example: "
|
|
92991
|
+
example: "Front door, Garage",
|
|
90963
92992
|
group: "system",
|
|
90964
92993
|
families: ["rule"],
|
|
90965
92994
|
fields: [...RULE_TEXT],
|
|
@@ -91007,7 +93036,7 @@ var NC_TEMPLATE_VARS = [
|
|
|
91007
93036
|
name: "bypassedNames",
|
|
91008
93037
|
label: "Bypassed sensors",
|
|
91009
93038
|
description: "Sensors the operator armed around because they were open.",
|
|
91010
|
-
example: "Finestra
|
|
93039
|
+
example: "Finestra porch",
|
|
91011
93040
|
group: "system",
|
|
91012
93041
|
families: ["rule"],
|
|
91013
93042
|
fields: [...RULE_TEXT],
|
|
@@ -92059,7 +94088,7 @@ var TimelapseRuleInputSchema = object({
|
|
|
92059
94088
|
* The caption a rule that never set one gets.
|
|
92060
94089
|
*
|
|
92061
94090
|
* Rendered through the ordinary `{{var}}` pass at delivery, so a rule created
|
|
92062
|
-
* before this field existed still reads "Timelapse
|
|
94091
|
+
* before this field existed still reads "Timelapse Camera front door" and
|
|
92063
94092
|
* not the literal braces.
|
|
92064
94093
|
*/
|
|
92065
94094
|
var DEFAULT_TIMELAPSE_PREVIEW_TEXT = "Timelapse {{camera}}";
|
|
@@ -93177,4 +95206,4 @@ function buildClipModelRegistry(entries) {
|
|
|
93177
95206
|
/** The built-in catalog's registry. */
|
|
93178
95207
|
var BUILTIN_CLIP_MODELS = buildClipModelRegistry(CLIP_IMAGE_MODELS);
|
|
93179
95208
|
//#endregion
|
|
93180
|
-
export { MediaFileKindEnum as $,
|
|
95209
|
+
export { MediaFileKindEnum as $, CAP_ADVANCE_FIELDS as $i, cloneAlarmSettings as $n, paintHex as $r, OpsLogEntrySchema as $t, DeclaredDevices as A, EventCategory as Aa, subKindsOf as Ai, TrackSideSchema as An, isAudioClassName as Ar, NcAlarmSensorsInputSchema as At, FULL_IMAGE_BBOX as B, templateCarriesSummary as Bi, applyModeDelaysEdits as Bn, isRootSuppliableStepId as Br, NcRuleUpdateInputSchema as Bt, ClearTrackRelationResultSchema as C, record as Ca, ruleKindOf as Ci, TimelapseRuleInputSchema as Cn, failureContributionCapability as Cr, NC_SNOOZE_MAX_MINUTES as Ct, DEFAULT_TIMELAPSE_PREVIEW_TEXT as D, tuple as Da, servedTemplateVars as Di, TrackPuritySchema as Dn, isAlertEpisodeOpen as Dr, NC_TEMPLATE_VARS as Dt, DEFAULT_EVENT_COLOR as E, templateLiteral as Ea, sensorRaisedOf as Ei, TrackPlacementSchema as En, isAlarmControllableCap as Er, NC_TAXONOMY as Et, EVENT_DENSITY_BATCH_MAX as F, systemEventDeliveryProblems as Fi, alarmPanelCapability as Fn, isEventOwnerType as Fr, NcRuleActionSchema as Ft, ListTrackRelationsResultSchema as G, zoneAnalyticsCapability as Gi, audioMetricsCapability as Gn, kebabToCamel as Gr, NcSnoozeSuppressedSchema as Gt, LABEL_SUPPLY_MACRO as H, vectorDimFromBase64 as Hi, applySecureOnArmEdit as Hn, isSystemDelivery as Hr, NcSharedSequenceSchema as Ht, EVENT_KIND_BY_CAP as I, systemEventFamilyProblems as Ii, alertEpisodeId as In, isKnownTemplateVar as Ir, NcRuleInputSchema as It, MAX_BIRTH_DECISION_RECORDS as J, evaluateSensorEdge as Ji, buildSubjectPath as Jn, memoizePinnedFfmpeg as Jr, NcTaxonomySchema as Jt, LockStateSchema as K, DEFAULT_FIRST_SIGHTING_FRESHNESS_MS as Ki, audioModeOf as Kn, linkedStepOf as Kr, NcStateSummarySectionIdSchema as Kt, EVENT_OWNER_TYPES as L, systemEventFilterApplies as Li, alertEpisodeKind as Ln, isLabelSupplyStepId as Lr, NcRulePatchSchema as Lt, EMBEDDING_MODEL_FAILED as M, subjectPathSvgPoints as Mi, activateAlarmProfile as Mn, isDetectionMacroClass as Mr, NcAlarmSettingsPatchSchema as Mt, EMBEDDING_REQUIREMENTS_FAILED as N, summarizeReview as Ni, addonWidgetsSourceCapability as Nn, isDrawableSubjectPath as Nr, NcConditionDescriptorSchema as Nt, DETECTION_MACRO_CLASSES as O, union as Oa, startMoverUnderClearance as Oi, TrackRelationKindSchema as On, isAlertEpisodeSeverity as Or, NcAlarmConfigSchema as Ot, EMBEDDING_REQUIREMENTS_UNAVAILABLE as P, syncActiveAlarmProfileSettings as Pi, alarmDeviceSecureOnArm as Pn, isEventKindLabelKey as Pr, NcConditionsSchema as Pt, MOTION_CLOSE_AFTER_MS as Q, BaseAddon as Qi, classifyRetrainReview as Qn, occupancyScope as Qr, OPS_LOG_DEFAULT_LIMIT as Qt, EXPORT_DENSE_MAX_RANGES as R, systemEventSummaryScheduleOf as Ri, alertEpisodePayload as Rn, isMediaOwnerType as Rr, NcRuleSchema as Rt, ClearTrackRelationInputSchema as S, partialRecord as Sa, ruleGroupingApplies as Si, TRACK_RELATIONS_DEFAULT_LIMIT as Sn, faceGalleryCapability as Sr, NC_SENSOR_TRANSITION_KINDS as St, DEFAULT_DETAIL_CROP_CONVENTION as T, string as Ta, secureActuationFor as Ti, TimelapseRuleSchema as Tn, gifFromMp4Args as Tr, NC_SYSTEM_EVENT_KIND_GROUP_SPECS as Tt, LabelAttributionSchema as U, viewerLinkBaseOf as Ui, armRemovalReconcile as Un, isSystemEventSummaryRule as Ur, NcSnoozeInputSchema as Ut, FailureCounters as V, templateVarsFor as Vi, applyNonBlockingEdit as Vn, isScheduleActive as Vr, NcScheduleSchema as Vt, ListTrackRelationsInputSchema as W, withSystemEventClasses as Wi, assertTimelapseCadences as Wn, isVectorIndexDimConflict as Wr, NcSnoozeSchema as Wt, MAX_TRACK_PURITIES as X, DeviceType as Xi, bundledCamstack as Xn, normalizeNcMediaPolicy as Xr, NcTemplatePreviewSchema as Xt, MAX_BIRTH_LATENCY_PROXY_MS as Y, isSourceCap as Yi, buildViewerLink as Yn, ncMediaPolicyError as Yr, NcTemplatePreviewInputSchema as Yt, MAX_TRACK_RELATIONS as Z, errMsg as Zi, calendarEventLocalSpan as Zn, notificationRulesCapability as Zr, NcTemplateVarDescriptorSchema as Zt, BIRTH_DECISION_DEFAULT_LIMIT as _, discriminatedUnion as _a, retrainRevisionConflictMessage as _i, SceneMonitorSchema as _n, embeddingRequirementsUnavailableError as _r, NC_CONSUMABLE_SYSTEM_EVENT_KINDS as _t, CLIP_EMBEDDING_STEP_ID as a, customAction as aa, plateGalleryCapability as ai, RetrainDismissedSchema as an, deleteAlarmProfile as ar, NC_ALARM_NOTIFY_FIELDS as at, BucketAccumulator as b, number as ba, ruleBelongsToAlarm as bi, SetTrackRelationInputSchema as bn, eventKindLabel as br, NC_GROUPING_MAX_SEC as bt, readClusterModelPinStrict as c, hydrateSchema as ca, readMotionTriggeredBy as ci, SCENE_CONFIRM_DEFAULT_MAX_IMAGE_PX as cn, deriveRecordingMode as cr, NC_AUDIO_CONFIRM_HITS_DEFAULT as ct, APPEARANCE_BLOCKS as d, normalizeNodeId as da, resolveClipSearchMinScore as di, SCENE_DEFAULT_CHECK_INTERVAL_SEC as dn, deviceAttentionKind as dr, NC_CLIP_PRE_ROLL_DEFAULT_SEC as dt, CamProfileSchema as ea, paletteResultSchema as ei, PackageLlmVerdictSchema as en, consumableFormOf as er, MotionTriggeredBySchema as et, APPEARANCE_RESOLVES_AMBIGUITY_DEFAULT as f, sleep as fa, resolveLocationMode as fi, SCENE_DEFAULT_OBSERVATION_SPACING_SEC as fn, deviceRemovalHookCapability as fr, NC_CLIP_RETENTION_MAX_SEC as ft, ArchivedDebugNoteSchema as g, boolean as ga, resolvePoolMemoryPolicy as gi, SCENE_RESET_RECAPTURES as gn, embeddingRequirementsFailedError as gr, NC_CONSUMABLE_LOW_PERCENT_DEFAULT as gt, AlarmArmModeSchema as h, array as ha, resolveNcMediaImage as hi, SCENE_DIVERGED as hn, embeddingRefusalOf as hr, NC_CONFIRM_DEFAULT_TIMEOUT_MS as ht, CLIP_TEXT_MODELS as i, createEvent as ia, pipelineAnalyticsCapability as ii, RebuildObjectEmbeddingsRefusalSchema as in, createAlarmProfile as ir, NC_ALARM_DELAY_MAX_SEC as it, DetectionSourceSchema as j, subjectPathSampleFromBox as ji, TrackSourceSchema as jn, isDefaultAlarmProfileId as jr, NcAlarmSensorsSchema as jt, DETECTION_PIPELINE_CAP_NAME as k, unknown as ka, storageOccupancyCapability as ki, TrackRelationSchema as kn, isAppLinkBase as kr, NcAlarmPostTriggeredActionSchema as kt, resolveClusterModelPin as l, isDeviceScopedCap as la, readTimelapseGeneratedAt as li, SCENE_CONFIRM_DEFAULT_TIMEOUT_MS as ln, describeSystemEventDeliveryProblem as lr, NC_AUDIO_CONFIRM_WINDOW_SEC_DEFAULT as lt, AUDIO_MACRO_LABELS as m, _enum as ma, resolveModeNotifyPolicy as mi, SCENE_DEFAULT_UNCOVERED_POLICY as mn, embeddingModelFailedError as mr, NC_CONFIRM_DEFAULT_MAX_IMAGE_PX as mt, DEFAULT_CLIP_MODEL as n, RECORD_MAX_DATA_BYTES as na, parseProcStatus as ni, RECORDING_EXPORT_MAX_READ_BYTES as nn, coreBlockIdFromAddonId as nr, NC_ALARM_DEFAULT_TRIGGERED_DURATION_SEC as nt, CLUSTER_MODEL_OWNER_ADDON_ID as o, defineCustomActions as oa, projectSubjectPath as oi, RetrainOriginSchema as on, deriveDetailCropRect as or, NC_ALARM_SYSTEM_EVENT_KINDS as ot, ARCHIVED_DEBUG_NOTES_DEFAULT_LIMIT as p, ZodObject as pa, resolveModeDelays as pi, SCENE_DEFAULT_QUIET_SECONDS as pn, embeddingEncoderCapability as pr, NC_CONDITION_CATALOG as pt, MAX_ARCHIVED_DEBUG_NOTES as q, canonicalHash as qi, buildEventKindDescriptor as qn, mayWriteToLocation as qr, NcSystemEventKindSchema as qt, CLIP_IMAGE_MODELS as r, RECORD_QUERY_MAX as ra, pickFaceRescoreIntervalMinutes as ri, RECORDING_SOURCE_CAMSTACK_ADDON as rn, cosineSimilarity as rr, NC_ALARM_DELAY_FIELDS as rt, FACE_EMBEDDING_STEP_ID as s, defineRecordKinds as sa, readDeviceStateFrom as si, RetrainStatusSchema as sn, derivePostTriggeredAction as sr, NC_ALARM_TRIGGERED_MAX_SEC as st, BUILTIN_CLIP_MODELS as t, InvalidRecordError as ta, parseAlertEpisodePayload as ti, PoolMemoryWatchdog as tn, consumableLowPercentOf as tr, NC_ALARM_DEFAULT_PROFILE_ID as tt, APPEARANCE_BIN_COUNT as u, nodePin as ua, renameAlarmProfile as ui, SCENE_DEFAULT_ANCHOR_THRESHOLD as un, describeSystemEventFamilyProblem as ur, NC_CLIP_POST_ROLL_DEFAULT_SEC as ut, BaseDevice as v, literal as va, rootSupplyServes as vi, SetTrackPurityInputSchema as vn, encodeVectorBase64 as vr, NC_DEFAULT_SNOOZE_MINUTES as vt, CoverStateSchema as w, strictObject as wa, sceneMonitorCapability as wi, TimelapseRulePatchSchema as wn, gifDeriveSpeed as wr, NC_STATE_SUMMARY_SECTION_IDS as wt, COCO_TO_MACRO as x, object as xa, ruleDeviceCompatCapQueries as xi, TIMELAPSE_DENSE_FLOOR_SEC as xn, evictionPolicyOfLocation as xr, NC_GROUPING_MIN_SEC as xt, BirthDecisionRecordSchema as y, looseObject as ya, ruleAutoTriggersAlarm as yi, SetTrackPurityResultSchema as yn, ensureAlarmProfiles as yr, NC_GROUPING_DEFAULT_SEC as yt, FIRST_LEVEL_MACRO_CLASSES as z, systemEventSummarySplitOf as zi, applyBlockingEdit as zn, isRetiredClearKey as zr, NcRuleTargetSchema as zt };
|