@camstack/addon-agent-ui 1.2.136 → 1.2.138
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/addon.js
CHANGED
|
@@ -5361,7 +5361,7 @@ var ZodIssueCode = {
|
|
|
5361
5361
|
var ZodFirstPartyTypeKind;
|
|
5362
5362
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5363
5363
|
//#endregion
|
|
5364
|
-
//#region ../types/dist/sleep-
|
|
5364
|
+
//#region ../types/dist/sleep-De1BvmWo.mjs
|
|
5365
5365
|
/**
|
|
5366
5366
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5367
5367
|
* window to float samples (D455).
|
|
@@ -7786,10 +7786,20 @@ var CameraSwitchAuthoritySchema = discriminatedUnion("kind", [
|
|
|
7786
7786
|
var CameraSwitchUnavailableReasonSchema = _enum([
|
|
7787
7787
|
"no-provider",
|
|
7788
7788
|
"source-unreachable",
|
|
7789
|
-
"not-configured",
|
|
7790
7789
|
"device-disabled"
|
|
7791
7790
|
]);
|
|
7792
7791
|
/**
|
|
7792
|
+
* Something true about a switch that is nonetheless OFFERED.
|
|
7793
|
+
*
|
|
7794
|
+
* The distinction from {@link CameraSwitchUnavailableReasonSchema} is the
|
|
7795
|
+
* whole point: a reason replaces the control, a warning travels WITH it. The
|
|
7796
|
+
* privacy mask taught us the difference — greying the one button that starts
|
|
7797
|
+
* the feature teaches the operator the feature is broken, while a live toggle
|
|
7798
|
+
* that flips nothing teaches them the switch is broken. Neither is true; the
|
|
7799
|
+
* honest surface is a working toggle that says what is missing.
|
|
7800
|
+
*/
|
|
7801
|
+
var CameraSwitchWarningSchema = _enum(["no-privacy-zones"]);
|
|
7802
|
+
/**
|
|
7793
7803
|
* One switch, resolved for one camera.
|
|
7794
7804
|
*
|
|
7795
7805
|
* `label` and `costWhenOff` travel ON THE WIRE rather than being looked up
|
|
@@ -7808,6 +7818,11 @@ var CameraSwitchSchema = object({
|
|
|
7808
7818
|
/** False = do not render a control. `unavailableReason` says why. */
|
|
7809
7819
|
available: boolean(),
|
|
7810
7820
|
unavailableReason: CameraSwitchUnavailableReasonSchema.optional(),
|
|
7821
|
+
/**
|
|
7822
|
+
* Present on an AVAILABLE switch only. Rendered beside the live control;
|
|
7823
|
+
* never a substitute for one.
|
|
7824
|
+
*/
|
|
7825
|
+
warning: CameraSwitchWarningSchema.optional(),
|
|
7811
7826
|
/** Current state. Meaningless when `available` is false — read it as `true`. */
|
|
7812
7827
|
enabled: boolean(),
|
|
7813
7828
|
authority: CameraSwitchAuthoritySchema
|
|
@@ -24259,6 +24274,82 @@ var ClipBytesSchema = object({
|
|
|
24259
24274
|
*/
|
|
24260
24275
|
durationMs: number().positive().optional()
|
|
24261
24276
|
});
|
|
24277
|
+
/**
|
|
24278
|
+
* Where a clip's STREAM can be dialled (D597) — the answer to
|
|
24279
|
+
* {@link videoclipsCapability.methods.dialClipStream}.
|
|
24280
|
+
*
|
|
24281
|
+
* `url` is plain `http://` on the provider's own token-gated listener, one
|
|
24282
|
+
* shot, short-lived. It is NOT the hub-proxied `/addon/<id>/clip-stream/…`
|
|
24283
|
+
* path: that plane takes only a user credential, which an addon does not
|
|
24284
|
+
* hold, and the framework offers no addon→addon byte transport — the one
|
|
24285
|
+
* precedent is the broker's own restream URLs (`getStreamWithCodec`), which
|
|
24286
|
+
* a consumer dials directly, and this is that precedent one addon over.
|
|
24287
|
+
*/
|
|
24288
|
+
/**
|
|
24289
|
+
* The audio a clip stream can be asked for, and the audio it carries.
|
|
24290
|
+
*
|
|
24291
|
+
* The camera stores AAC and no WebRTC session speaks it, so a stream that
|
|
24292
|
+
* carries sound carries it TRANSCODED, muxed as a second track beside the
|
|
24293
|
+
* video by the one ffmpeg the provider already runs (D600). `opus` is
|
|
24294
|
+
* 48 kHz mono, `pcmu` is 8 kHz µ-law — the two codecs a broker session
|
|
24295
|
+
* negotiates — and `none` is a stream asked for, or served, without sound.
|
|
24296
|
+
*/
|
|
24297
|
+
var ClipStreamAudioSchema = _enum([
|
|
24298
|
+
"opus",
|
|
24299
|
+
"pcmu",
|
|
24300
|
+
"none"
|
|
24301
|
+
]);
|
|
24302
|
+
/**
|
|
24303
|
+
* Why a stream that was ASKED for sound is not carrying it (D600).
|
|
24304
|
+
*
|
|
24305
|
+
* Only ever set beside `servedAudio: 'none'` after a non-`none` ask. Absent
|
|
24306
|
+
* means the ask was honoured, or there was no ask.
|
|
24307
|
+
*
|
|
24308
|
+
* - `not-requested` — the caller asked for `none`.
|
|
24309
|
+
* - `unsupported-ask` — the provider cannot produce that codec.
|
|
24310
|
+
*
|
|
24311
|
+
* Whether the RECORDING has sound at all is not knowable here: the camera
|
|
24312
|
+
* declares no audio track before its first frame arrives. That answer is in
|
|
24313
|
+
* the stream itself — an fMP4 with no audio track — and the broker reads it
|
|
24314
|
+
* there. A dial that says `opus` promises the codec, never the content.
|
|
24315
|
+
*/
|
|
24316
|
+
var ClipStreamAudioReasonSchema = _enum(["not-requested", "unsupported-ask"]);
|
|
24317
|
+
var ClipStreamDialSchema = object({
|
|
24318
|
+
url: string().min(1),
|
|
24319
|
+
/** After this the token is gone and the URL answers 404 `dial-expired`. */
|
|
24320
|
+
expiresAtMs: number(),
|
|
24321
|
+
/** What the stream IS — a consumer that cannot honour it must not dial. */
|
|
24322
|
+
transport: literal("forward-only"),
|
|
24323
|
+
/**
|
|
24324
|
+
* Which twin the stream ACTUALLY carries — not what was asked for.
|
|
24325
|
+
*
|
|
24326
|
+
* The stream serves every profile (D599), and a recording whose main twin
|
|
24327
|
+
* does not exist is streamed as its sub copy, which this field reports as
|
|
24328
|
+
* `low`. That is the whole reason the dial no longer refuses `high`:
|
|
24329
|
+
* stating what was served is what makes accepting honest, where a silent
|
|
24330
|
+
* substitution would be the 33x lie D576 forbids. Stated rather than
|
|
24331
|
+
* assumed, the way {@link ClipPlaybackSchema.served} is (D549 15).
|
|
24332
|
+
*/
|
|
24333
|
+
served: CamProfileSchema,
|
|
24334
|
+
/**
|
|
24335
|
+
* Which audio the stream will ACTUALLY carry — `served`'s companion for
|
|
24336
|
+
* sound, and the same reasoning (D599, D600).
|
|
24337
|
+
*
|
|
24338
|
+
* The broker asks for the codec its WebRTC session negotiated, and the
|
|
24339
|
+
* provider either muxes that codec or carries none. Stating it is what
|
|
24340
|
+
* lets the broker wire the matching sink before the first byte, and what
|
|
24341
|
+
* keeps a session from being handed a codec it cannot send — the audio
|
|
24342
|
+
* shape of the substitution `served` exists to prevent.
|
|
24343
|
+
*
|
|
24344
|
+
* It is a promise about the CODEC, not about the content: a recording with
|
|
24345
|
+
* no microphone track answers `opus` here and then arrives with no audio
|
|
24346
|
+
* track at all. That second answer is in the stream, and the broker reads
|
|
24347
|
+
* it from the `moov`.
|
|
24348
|
+
*/
|
|
24349
|
+
servedAudio: ClipStreamAudioSchema,
|
|
24350
|
+
/** Why `servedAudio` is `none` although sound was asked for. */
|
|
24351
|
+
audioReason: ClipStreamAudioReasonSchema.optional()
|
|
24352
|
+
});
|
|
24262
24353
|
var ClipSourceAvailabilitySchema = object({
|
|
24263
24354
|
state: _enum([
|
|
24264
24355
|
"ok",
|
|
@@ -24378,6 +24469,23 @@ DeviceType.Camera, method(object({
|
|
|
24378
24469
|
deviceId: number(),
|
|
24379
24470
|
clipId: string().min(1),
|
|
24380
24471
|
/**
|
|
24472
|
+
* WHICH provider holds the bytes — the `addonId` a
|
|
24473
|
+
* {@link ClipSourceSchema} row carries. **Required**, for the reason
|
|
24474
|
+
* `listClips` states one method above and for a second one this method
|
|
24475
|
+
* learned the hard way.
|
|
24476
|
+
*
|
|
24477
|
+
* The caller is the stream broker, and the broker lives in
|
|
24478
|
+
* `addon-pipeline` — the same addon that registers the RECORDER's
|
|
24479
|
+
* videoclips provider. With no provider named, the in-process
|
|
24480
|
+
* resolution handed it its own sibling, which implements this method
|
|
24481
|
+
* solely to explain that an analytics visit has no file behind it. So
|
|
24482
|
+
* every onboard clip answered with that sentence, a flash of video and
|
|
24483
|
+
* nothing more, while the SAME call from outside the addon reached the
|
|
24484
|
+
* right provider and returned the bytes (measured on 3628,
|
|
24485
|
+
* 2026-09-21).
|
|
24486
|
+
*/
|
|
24487
|
+
provider: string().min(1),
|
|
24488
|
+
/**
|
|
24381
24489
|
* Which twin to fetch, on the mapping D549 15 already fixed:
|
|
24382
24490
|
* `low | mid` → the sub file, `high` → the main twin. `auto` is not
|
|
24383
24491
|
* accepted here for the same reason it is not accepted by
|
|
@@ -24401,6 +24509,27 @@ DeviceType.Camera, method(object({
|
|
|
24401
24509
|
}), ClipBytesSchema, {
|
|
24402
24510
|
kind: "query",
|
|
24403
24511
|
auth: "protected"
|
|
24512
|
+
}), optionalMethod(object({
|
|
24513
|
+
deviceId: number(),
|
|
24514
|
+
clipId: string().min(1),
|
|
24515
|
+
/** WHICH provider holds the camera — see `readClipBytes.provider`. */
|
|
24516
|
+
provider: string().min(1),
|
|
24517
|
+
/** Which twin — `high` → the main file, everything else the sub (D599). */
|
|
24518
|
+
profile: CamProfileSchema.optional(),
|
|
24519
|
+
/**
|
|
24520
|
+
* Which audio codec the caller's session negotiated, so the provider
|
|
24521
|
+
* can mux it (D600). The ask travels on the DIAL because the mux is
|
|
24522
|
+
* spawned once, before the first byte, and cannot gain a track later.
|
|
24523
|
+
*
|
|
24524
|
+
* ABSENT IS `none`, never a guess: a caller that does not state an
|
|
24525
|
+
* ask is served the video-only stream that shipped first, so a broker
|
|
24526
|
+
* older than this field keeps working unchanged (D382 — an unstated
|
|
24527
|
+
* ask is zero).
|
|
24528
|
+
*/
|
|
24529
|
+
audio: ClipStreamAudioSchema.optional()
|
|
24530
|
+
}), ClipStreamDialSchema, {
|
|
24531
|
+
kind: "query",
|
|
24532
|
+
auth: "protected"
|
|
24404
24533
|
});
|
|
24405
24534
|
/**
|
|
24406
24535
|
* Optional client-side hints sent at session creation to help the provider
|
|
@@ -30103,7 +30232,7 @@ method(object({
|
|
|
30103
30232
|
auth: "admin"
|
|
30104
30233
|
}), method(object({ deviceId: number() }), RecordingConfigSchema, {
|
|
30105
30234
|
kind: "query",
|
|
30106
|
-
auth: "
|
|
30235
|
+
auth: "protected"
|
|
30107
30236
|
}), method(object({
|
|
30108
30237
|
deviceId: number(),
|
|
30109
30238
|
profile: string(),
|
|
@@ -32324,7 +32453,1336 @@ AccessoryKind.Siren, AccessoryKind.Floodlight, AccessoryKind.Spotlight, Accessor
|
|
|
32324
32453
|
DeviceType.Cover, DeviceType.Valve, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.Camera, DeviceType.Hub, DeviceType.Switch, DeviceType.Siren, DeviceType.Light, DeviceType.Fan, DeviceType.Sensor, DeviceType.Thermostat, DeviceType.Climate, DeviceType.Button, DeviceType.EventEmitter, DeviceType.Update, DeviceType.Generic, DeviceType.Notifier, DeviceType.Script, DeviceType.Automation, DeviceType.Lock, DeviceType.MediaPlayer, DeviceType.AlarmPanel, DeviceType.Control, DeviceType.Presence, DeviceType.Weather, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.Container, DeviceType.Image, DeviceType.PetFeeder;
|
|
32325
32454
|
new Set(Object.values(DeviceType));
|
|
32326
32455
|
DeviceFeature.BatteryOperated;
|
|
32456
|
+
/**
|
|
32457
|
+
* The vocabulary, in the order a picker offers it.
|
|
32458
|
+
*
|
|
32459
|
+
* Adding a key here is not enough to make it pickable: both glyph tables must
|
|
32460
|
+
* gain it too, and their tests fail until they do. That is the intended
|
|
32461
|
+
* friction — it is the only thing that keeps the two surfaces honest.
|
|
32462
|
+
*/
|
|
32463
|
+
var DISPLAY_ICON_VOCABULARY = [
|
|
32464
|
+
{
|
|
32465
|
+
key: "camera",
|
|
32466
|
+
group: "device",
|
|
32467
|
+
synonyms: [
|
|
32468
|
+
"telecamera",
|
|
32469
|
+
"videocamera",
|
|
32470
|
+
"camera",
|
|
32471
|
+
"cam"
|
|
32472
|
+
]
|
|
32473
|
+
},
|
|
32474
|
+
{
|
|
32475
|
+
key: "network",
|
|
32476
|
+
group: "device",
|
|
32477
|
+
synonyms: [
|
|
32478
|
+
"rete",
|
|
32479
|
+
"network",
|
|
32480
|
+
"lan"
|
|
32481
|
+
]
|
|
32482
|
+
},
|
|
32483
|
+
{
|
|
32484
|
+
key: "toggle-left",
|
|
32485
|
+
group: "device",
|
|
32486
|
+
synonyms: [
|
|
32487
|
+
"interruttore",
|
|
32488
|
+
"switch",
|
|
32489
|
+
"toggle"
|
|
32490
|
+
]
|
|
32491
|
+
},
|
|
32492
|
+
{
|
|
32493
|
+
key: "toggle-right",
|
|
32494
|
+
group: "device",
|
|
32495
|
+
synonyms: [
|
|
32496
|
+
"interruttore",
|
|
32497
|
+
"switch",
|
|
32498
|
+
"toggle",
|
|
32499
|
+
"acceso"
|
|
32500
|
+
]
|
|
32501
|
+
},
|
|
32502
|
+
{
|
|
32503
|
+
key: "circle-dot",
|
|
32504
|
+
group: "device",
|
|
32505
|
+
synonyms: [
|
|
32506
|
+
"pulsante",
|
|
32507
|
+
"bottone",
|
|
32508
|
+
"button",
|
|
32509
|
+
"dot"
|
|
32510
|
+
]
|
|
32511
|
+
},
|
|
32512
|
+
{
|
|
32513
|
+
key: "refresh-cw",
|
|
32514
|
+
group: "device",
|
|
32515
|
+
synonyms: [
|
|
32516
|
+
"aggiorna",
|
|
32517
|
+
"ricarica",
|
|
32518
|
+
"refresh",
|
|
32519
|
+
"reload",
|
|
32520
|
+
"ciclo"
|
|
32521
|
+
]
|
|
32522
|
+
},
|
|
32523
|
+
{
|
|
32524
|
+
key: "box",
|
|
32525
|
+
group: "device",
|
|
32526
|
+
synonyms: [
|
|
32527
|
+
"scatola",
|
|
32528
|
+
"box",
|
|
32529
|
+
"contenitore"
|
|
32530
|
+
]
|
|
32531
|
+
},
|
|
32532
|
+
{
|
|
32533
|
+
key: "scroll-text",
|
|
32534
|
+
group: "device",
|
|
32535
|
+
synonyms: [
|
|
32536
|
+
"registro",
|
|
32537
|
+
"log",
|
|
32538
|
+
"testo"
|
|
32539
|
+
]
|
|
32540
|
+
},
|
|
32541
|
+
{
|
|
32542
|
+
key: "workflow",
|
|
32543
|
+
group: "device",
|
|
32544
|
+
synonyms: [
|
|
32545
|
+
"automazione",
|
|
32546
|
+
"flusso",
|
|
32547
|
+
"workflow",
|
|
32548
|
+
"scenario"
|
|
32549
|
+
]
|
|
32550
|
+
},
|
|
32551
|
+
{
|
|
32552
|
+
key: "lock",
|
|
32553
|
+
group: "device",
|
|
32554
|
+
synonyms: [
|
|
32555
|
+
"serratura",
|
|
32556
|
+
"chiave",
|
|
32557
|
+
"lucchetto",
|
|
32558
|
+
"chiuso",
|
|
32559
|
+
"locked"
|
|
32560
|
+
]
|
|
32561
|
+
},
|
|
32562
|
+
{
|
|
32563
|
+
key: "lock-open",
|
|
32564
|
+
group: "device",
|
|
32565
|
+
synonyms: [
|
|
32566
|
+
"serratura",
|
|
32567
|
+
"aperta",
|
|
32568
|
+
"sbloccato",
|
|
32569
|
+
"unlocked"
|
|
32570
|
+
]
|
|
32571
|
+
},
|
|
32572
|
+
{
|
|
32573
|
+
key: "blinds",
|
|
32574
|
+
group: "device",
|
|
32575
|
+
synonyms: [
|
|
32576
|
+
"tapparella",
|
|
32577
|
+
"persiana",
|
|
32578
|
+
"serranda",
|
|
32579
|
+
"avvolgibile",
|
|
32580
|
+
"shutter",
|
|
32581
|
+
"blind",
|
|
32582
|
+
"veneziana"
|
|
32583
|
+
]
|
|
32584
|
+
},
|
|
32585
|
+
{
|
|
32586
|
+
key: "air-vent",
|
|
32587
|
+
group: "device",
|
|
32588
|
+
synonyms: [
|
|
32589
|
+
"bocchetta",
|
|
32590
|
+
"aria",
|
|
32591
|
+
"ventilazione",
|
|
32592
|
+
"condizionatore",
|
|
32593
|
+
"vent"
|
|
32594
|
+
]
|
|
32595
|
+
},
|
|
32596
|
+
{
|
|
32597
|
+
key: "monitor-play",
|
|
32598
|
+
group: "device",
|
|
32599
|
+
synonyms: [
|
|
32600
|
+
"schermo",
|
|
32601
|
+
"riproduzione",
|
|
32602
|
+
"player",
|
|
32603
|
+
"display"
|
|
32604
|
+
]
|
|
32605
|
+
},
|
|
32606
|
+
{
|
|
32607
|
+
key: "sliders-horizontal",
|
|
32608
|
+
group: "device",
|
|
32609
|
+
synonyms: [
|
|
32610
|
+
"regolazione",
|
|
32611
|
+
"cursori",
|
|
32612
|
+
"impostazioni",
|
|
32613
|
+
"slider"
|
|
32614
|
+
]
|
|
32615
|
+
},
|
|
32616
|
+
{
|
|
32617
|
+
key: "map-pin",
|
|
32618
|
+
group: "device",
|
|
32619
|
+
synonyms: [
|
|
32620
|
+
"posizione",
|
|
32621
|
+
"luogo",
|
|
32622
|
+
"mappa",
|
|
32623
|
+
"pin"
|
|
32624
|
+
]
|
|
32625
|
+
},
|
|
32626
|
+
{
|
|
32627
|
+
key: "bot",
|
|
32628
|
+
group: "device",
|
|
32629
|
+
synonyms: [
|
|
32630
|
+
"robot",
|
|
32631
|
+
"aspirapolvere",
|
|
32632
|
+
"bot"
|
|
32633
|
+
]
|
|
32634
|
+
},
|
|
32635
|
+
{
|
|
32636
|
+
key: "tractor",
|
|
32637
|
+
group: "device",
|
|
32638
|
+
synonyms: [
|
|
32639
|
+
"trattore",
|
|
32640
|
+
"tosaerba",
|
|
32641
|
+
"giardino"
|
|
32642
|
+
]
|
|
32643
|
+
},
|
|
32644
|
+
{
|
|
32645
|
+
key: "image",
|
|
32646
|
+
group: "device",
|
|
32647
|
+
synonyms: [
|
|
32648
|
+
"immagine",
|
|
32649
|
+
"foto",
|
|
32650
|
+
"snapshot"
|
|
32651
|
+
]
|
|
32652
|
+
},
|
|
32653
|
+
{
|
|
32654
|
+
key: "bone",
|
|
32655
|
+
group: "device",
|
|
32656
|
+
synonyms: ["osso", "cane"]
|
|
32657
|
+
},
|
|
32658
|
+
{
|
|
32659
|
+
key: "door-closed",
|
|
32660
|
+
group: "device",
|
|
32661
|
+
synonyms: [
|
|
32662
|
+
"porta",
|
|
32663
|
+
"chiusa",
|
|
32664
|
+
"contatto"
|
|
32665
|
+
]
|
|
32666
|
+
},
|
|
32667
|
+
{
|
|
32668
|
+
key: "door-open",
|
|
32669
|
+
group: "device",
|
|
32670
|
+
synonyms: [
|
|
32671
|
+
"porta",
|
|
32672
|
+
"aperta",
|
|
32673
|
+
"contatto",
|
|
32674
|
+
"ingresso",
|
|
32675
|
+
"uscita"
|
|
32676
|
+
]
|
|
32677
|
+
},
|
|
32678
|
+
{
|
|
32679
|
+
key: "crosshair",
|
|
32680
|
+
group: "device",
|
|
32681
|
+
synonyms: [
|
|
32682
|
+
"mirino",
|
|
32683
|
+
"puntamento",
|
|
32684
|
+
"centro"
|
|
32685
|
+
]
|
|
32686
|
+
},
|
|
32687
|
+
{
|
|
32688
|
+
key: "eye",
|
|
32689
|
+
group: "device",
|
|
32690
|
+
synonyms: [
|
|
32691
|
+
"occhio",
|
|
32692
|
+
"visibile",
|
|
32693
|
+
"visto"
|
|
32694
|
+
]
|
|
32695
|
+
},
|
|
32696
|
+
{
|
|
32697
|
+
key: "eye-off",
|
|
32698
|
+
group: "device",
|
|
32699
|
+
synonyms: [
|
|
32700
|
+
"privacy",
|
|
32701
|
+
"nascosto",
|
|
32702
|
+
"oscurato",
|
|
32703
|
+
"mascherato",
|
|
32704
|
+
"invisibile"
|
|
32705
|
+
]
|
|
32706
|
+
},
|
|
32707
|
+
{
|
|
32708
|
+
key: "smartphone",
|
|
32709
|
+
group: "device",
|
|
32710
|
+
synonyms: [
|
|
32711
|
+
"telefono",
|
|
32712
|
+
"cellulare",
|
|
32713
|
+
"smartphone"
|
|
32714
|
+
]
|
|
32715
|
+
},
|
|
32716
|
+
{
|
|
32717
|
+
key: "phone",
|
|
32718
|
+
group: "device",
|
|
32719
|
+
synonyms: ["telefono", "chiamata"]
|
|
32720
|
+
},
|
|
32721
|
+
{
|
|
32722
|
+
key: "tablet",
|
|
32723
|
+
group: "device",
|
|
32724
|
+
synonyms: ["tablet", "ipad"]
|
|
32725
|
+
},
|
|
32726
|
+
{
|
|
32727
|
+
key: "laptop",
|
|
32728
|
+
group: "device",
|
|
32729
|
+
synonyms: [
|
|
32730
|
+
"portatile",
|
|
32731
|
+
"laptop",
|
|
32732
|
+
"notebook"
|
|
32733
|
+
]
|
|
32734
|
+
},
|
|
32735
|
+
{
|
|
32736
|
+
key: "monitor",
|
|
32737
|
+
group: "device",
|
|
32738
|
+
synonyms: ["monitor", "schermo"]
|
|
32739
|
+
},
|
|
32740
|
+
{
|
|
32741
|
+
key: "tv",
|
|
32742
|
+
group: "device",
|
|
32743
|
+
synonyms: ["televisore", "tv"]
|
|
32744
|
+
},
|
|
32745
|
+
{
|
|
32746
|
+
key: "speaker",
|
|
32747
|
+
group: "device",
|
|
32748
|
+
synonyms: [
|
|
32749
|
+
"altoparlante",
|
|
32750
|
+
"cassa",
|
|
32751
|
+
"speaker"
|
|
32752
|
+
]
|
|
32753
|
+
},
|
|
32754
|
+
{
|
|
32755
|
+
key: "printer",
|
|
32756
|
+
group: "device",
|
|
32757
|
+
synonyms: ["stampante"]
|
|
32758
|
+
},
|
|
32759
|
+
{
|
|
32760
|
+
key: "projector",
|
|
32761
|
+
group: "device",
|
|
32762
|
+
synonyms: ["proiettore"]
|
|
32763
|
+
},
|
|
32764
|
+
{
|
|
32765
|
+
key: "gamepad-2",
|
|
32766
|
+
group: "device",
|
|
32767
|
+
synonyms: [
|
|
32768
|
+
"console",
|
|
32769
|
+
"gioco",
|
|
32770
|
+
"joystick"
|
|
32771
|
+
]
|
|
32772
|
+
},
|
|
32773
|
+
{
|
|
32774
|
+
key: "radio",
|
|
32775
|
+
group: "device",
|
|
32776
|
+
synonyms: ["radio"]
|
|
32777
|
+
},
|
|
32778
|
+
{
|
|
32779
|
+
key: "router",
|
|
32780
|
+
group: "device",
|
|
32781
|
+
synonyms: ["router", "modem"]
|
|
32782
|
+
},
|
|
32783
|
+
{
|
|
32784
|
+
key: "bluetooth",
|
|
32785
|
+
group: "device",
|
|
32786
|
+
synonyms: ["bluetooth"]
|
|
32787
|
+
},
|
|
32788
|
+
{
|
|
32789
|
+
key: "cpu",
|
|
32790
|
+
group: "device",
|
|
32791
|
+
synonyms: [
|
|
32792
|
+
"processore",
|
|
32793
|
+
"cpu",
|
|
32794
|
+
"chip",
|
|
32795
|
+
"dispositivo"
|
|
32796
|
+
]
|
|
32797
|
+
},
|
|
32798
|
+
{
|
|
32799
|
+
key: "hard-drive",
|
|
32800
|
+
group: "device",
|
|
32801
|
+
synonyms: [
|
|
32802
|
+
"disco",
|
|
32803
|
+
"hdd",
|
|
32804
|
+
"archiviazione",
|
|
32805
|
+
"storage"
|
|
32806
|
+
]
|
|
32807
|
+
},
|
|
32808
|
+
{
|
|
32809
|
+
key: "server",
|
|
32810
|
+
group: "device",
|
|
32811
|
+
synonyms: ["server", "nas"]
|
|
32812
|
+
},
|
|
32813
|
+
{
|
|
32814
|
+
key: "mic",
|
|
32815
|
+
group: "device",
|
|
32816
|
+
synonyms: ["microfono", "audio"]
|
|
32817
|
+
},
|
|
32818
|
+
{
|
|
32819
|
+
key: "mic-off",
|
|
32820
|
+
group: "device",
|
|
32821
|
+
synonyms: [
|
|
32822
|
+
"microfono",
|
|
32823
|
+
"spento",
|
|
32824
|
+
"muto"
|
|
32825
|
+
]
|
|
32826
|
+
},
|
|
32827
|
+
{
|
|
32828
|
+
key: "video",
|
|
32829
|
+
group: "device",
|
|
32830
|
+
synonyms: ["video"]
|
|
32831
|
+
},
|
|
32832
|
+
{
|
|
32833
|
+
key: "video-off",
|
|
32834
|
+
group: "device",
|
|
32835
|
+
synonyms: ["video", "spento"]
|
|
32836
|
+
},
|
|
32837
|
+
{
|
|
32838
|
+
key: "music",
|
|
32839
|
+
group: "device",
|
|
32840
|
+
synonyms: ["musica"]
|
|
32841
|
+
},
|
|
32842
|
+
{
|
|
32843
|
+
key: "plug",
|
|
32844
|
+
group: "device",
|
|
32845
|
+
synonyms: [
|
|
32846
|
+
"presa",
|
|
32847
|
+
"spina",
|
|
32848
|
+
"plug"
|
|
32849
|
+
]
|
|
32850
|
+
},
|
|
32851
|
+
{
|
|
32852
|
+
key: "plug-zap",
|
|
32853
|
+
group: "device",
|
|
32854
|
+
synonyms: ["presa", "alimentata"]
|
|
32855
|
+
},
|
|
32856
|
+
{
|
|
32857
|
+
key: "power",
|
|
32858
|
+
group: "device",
|
|
32859
|
+
synonyms: [
|
|
32860
|
+
"accensione",
|
|
32861
|
+
"alimentazione",
|
|
32862
|
+
"power"
|
|
32863
|
+
]
|
|
32864
|
+
},
|
|
32865
|
+
{
|
|
32866
|
+
key: "power-off",
|
|
32867
|
+
group: "device",
|
|
32868
|
+
synonyms: ["spegnimento", "spento"]
|
|
32869
|
+
},
|
|
32870
|
+
{
|
|
32871
|
+
key: "cable",
|
|
32872
|
+
group: "device",
|
|
32873
|
+
synonyms: ["cavo"]
|
|
32874
|
+
},
|
|
32875
|
+
{
|
|
32876
|
+
key: "battery",
|
|
32877
|
+
group: "device",
|
|
32878
|
+
synonyms: ["batteria"]
|
|
32879
|
+
},
|
|
32880
|
+
{
|
|
32881
|
+
key: "battery-charging",
|
|
32882
|
+
group: "device",
|
|
32883
|
+
synonyms: [
|
|
32884
|
+
"batteria",
|
|
32885
|
+
"carica",
|
|
32886
|
+
"ricarica"
|
|
32887
|
+
]
|
|
32888
|
+
},
|
|
32889
|
+
{
|
|
32890
|
+
key: "battery-full",
|
|
32891
|
+
group: "device",
|
|
32892
|
+
synonyms: [
|
|
32893
|
+
"batteria",
|
|
32894
|
+
"carica",
|
|
32895
|
+
"piena"
|
|
32896
|
+
]
|
|
32897
|
+
},
|
|
32898
|
+
{
|
|
32899
|
+
key: "battery-low",
|
|
32900
|
+
group: "device",
|
|
32901
|
+
synonyms: ["batteria", "scarica"]
|
|
32902
|
+
},
|
|
32903
|
+
{
|
|
32904
|
+
key: "key",
|
|
32905
|
+
group: "device",
|
|
32906
|
+
synonyms: ["chiave"]
|
|
32907
|
+
},
|
|
32908
|
+
{
|
|
32909
|
+
key: "key-round",
|
|
32910
|
+
group: "device",
|
|
32911
|
+
synonyms: ["chiave", "tonda"]
|
|
32912
|
+
},
|
|
32913
|
+
{
|
|
32914
|
+
key: "mailbox",
|
|
32915
|
+
group: "device",
|
|
32916
|
+
synonyms: [
|
|
32917
|
+
"cassetta",
|
|
32918
|
+
"postale",
|
|
32919
|
+
"posta"
|
|
32920
|
+
]
|
|
32921
|
+
},
|
|
32922
|
+
{
|
|
32923
|
+
key: "package",
|
|
32924
|
+
group: "device",
|
|
32925
|
+
synonyms: ["pacco", "consegna"]
|
|
32926
|
+
},
|
|
32927
|
+
{
|
|
32928
|
+
key: "shield",
|
|
32929
|
+
group: "device",
|
|
32930
|
+
synonyms: [
|
|
32931
|
+
"scudo",
|
|
32932
|
+
"protezione",
|
|
32933
|
+
"sicurezza",
|
|
32934
|
+
"allarme"
|
|
32935
|
+
]
|
|
32936
|
+
},
|
|
32937
|
+
{
|
|
32938
|
+
key: "shield-check",
|
|
32939
|
+
group: "device",
|
|
32940
|
+
synonyms: [
|
|
32941
|
+
"protetto",
|
|
32942
|
+
"sicuro",
|
|
32943
|
+
"armato"
|
|
32944
|
+
]
|
|
32945
|
+
},
|
|
32946
|
+
{
|
|
32947
|
+
key: "shield-off",
|
|
32948
|
+
group: "device",
|
|
32949
|
+
synonyms: [
|
|
32950
|
+
"protezione",
|
|
32951
|
+
"disattivata",
|
|
32952
|
+
"disarmato"
|
|
32953
|
+
]
|
|
32954
|
+
},
|
|
32955
|
+
{
|
|
32956
|
+
key: "briefcase",
|
|
32957
|
+
group: "device",
|
|
32958
|
+
synonyms: [
|
|
32959
|
+
"ufficio",
|
|
32960
|
+
"lavoro",
|
|
32961
|
+
"valigetta",
|
|
32962
|
+
"studio"
|
|
32963
|
+
]
|
|
32964
|
+
},
|
|
32965
|
+
{
|
|
32966
|
+
key: "lightbulb",
|
|
32967
|
+
group: "lighting",
|
|
32968
|
+
synonyms: [
|
|
32969
|
+
"luce",
|
|
32970
|
+
"lampadina",
|
|
32971
|
+
"lampada",
|
|
32972
|
+
"light"
|
|
32973
|
+
]
|
|
32974
|
+
},
|
|
32975
|
+
{
|
|
32976
|
+
key: "lamp",
|
|
32977
|
+
group: "lighting",
|
|
32978
|
+
synonyms: ["lampada", "abatjour"]
|
|
32979
|
+
},
|
|
32980
|
+
{
|
|
32981
|
+
key: "lamp-ceiling",
|
|
32982
|
+
group: "lighting",
|
|
32983
|
+
synonyms: [
|
|
32984
|
+
"plafoniera",
|
|
32985
|
+
"lampadario",
|
|
32986
|
+
"luce",
|
|
32987
|
+
"soffitto"
|
|
32988
|
+
]
|
|
32989
|
+
},
|
|
32990
|
+
{
|
|
32991
|
+
key: "lamp-desk",
|
|
32992
|
+
group: "lighting",
|
|
32993
|
+
synonyms: [
|
|
32994
|
+
"lampada",
|
|
32995
|
+
"scrivania",
|
|
32996
|
+
"abatjour"
|
|
32997
|
+
]
|
|
32998
|
+
},
|
|
32999
|
+
{
|
|
33000
|
+
key: "lamp-floor",
|
|
33001
|
+
group: "lighting",
|
|
33002
|
+
synonyms: [
|
|
33003
|
+
"piantana",
|
|
33004
|
+
"lampada",
|
|
33005
|
+
"terra"
|
|
33006
|
+
]
|
|
33007
|
+
},
|
|
33008
|
+
{
|
|
33009
|
+
key: "flashlight",
|
|
33010
|
+
group: "lighting",
|
|
33011
|
+
synonyms: [
|
|
33012
|
+
"faretto",
|
|
33013
|
+
"torcia",
|
|
33014
|
+
"spot",
|
|
33015
|
+
"faro"
|
|
33016
|
+
]
|
|
33017
|
+
},
|
|
33018
|
+
{
|
|
33019
|
+
key: "heater",
|
|
33020
|
+
group: "lighting",
|
|
33021
|
+
synonyms: [
|
|
33022
|
+
"riscaldamento",
|
|
33023
|
+
"termosifone",
|
|
33024
|
+
"stufa",
|
|
33025
|
+
"calore"
|
|
33026
|
+
]
|
|
33027
|
+
},
|
|
33028
|
+
{
|
|
33029
|
+
key: "snowflake",
|
|
33030
|
+
group: "lighting",
|
|
33031
|
+
synonyms: [
|
|
33032
|
+
"freddo",
|
|
33033
|
+
"raffrescamento",
|
|
33034
|
+
"aria",
|
|
33035
|
+
"condizionata",
|
|
33036
|
+
"neve"
|
|
33037
|
+
]
|
|
33038
|
+
},
|
|
33039
|
+
{
|
|
33040
|
+
key: "thermometer-sun",
|
|
33041
|
+
group: "lighting",
|
|
33042
|
+
synonyms: [
|
|
33043
|
+
"caldo",
|
|
33044
|
+
"temperatura",
|
|
33045
|
+
"alta"
|
|
33046
|
+
]
|
|
33047
|
+
},
|
|
33048
|
+
{
|
|
33049
|
+
key: "thermometer-snowflake",
|
|
33050
|
+
group: "lighting",
|
|
33051
|
+
synonyms: [
|
|
33052
|
+
"freddo",
|
|
33053
|
+
"temperatura",
|
|
33054
|
+
"bassa"
|
|
33055
|
+
]
|
|
33056
|
+
},
|
|
33057
|
+
{
|
|
33058
|
+
key: "refrigerator",
|
|
33059
|
+
group: "lighting",
|
|
33060
|
+
synonyms: ["frigorifero", "frigo"]
|
|
33061
|
+
},
|
|
33062
|
+
{
|
|
33063
|
+
key: "microwave",
|
|
33064
|
+
group: "lighting",
|
|
33065
|
+
synonyms: ["microonde", "forno"]
|
|
33066
|
+
},
|
|
33067
|
+
{
|
|
33068
|
+
key: "washing-machine",
|
|
33069
|
+
group: "lighting",
|
|
33070
|
+
synonyms: [
|
|
33071
|
+
"lavatrice",
|
|
33072
|
+
"lavastoviglie",
|
|
33073
|
+
"asciugatrice"
|
|
33074
|
+
]
|
|
33075
|
+
},
|
|
33076
|
+
{
|
|
33077
|
+
key: "cooking-pot",
|
|
33078
|
+
group: "lighting",
|
|
33079
|
+
synonyms: [
|
|
33080
|
+
"pentola",
|
|
33081
|
+
"cucina",
|
|
33082
|
+
"fornello"
|
|
33083
|
+
]
|
|
33084
|
+
},
|
|
33085
|
+
{
|
|
33086
|
+
key: "utensils",
|
|
33087
|
+
group: "lighting",
|
|
33088
|
+
synonyms: [
|
|
33089
|
+
"cucina",
|
|
33090
|
+
"posate",
|
|
33091
|
+
"sala",
|
|
33092
|
+
"pranzo"
|
|
33093
|
+
]
|
|
33094
|
+
},
|
|
33095
|
+
{
|
|
33096
|
+
key: "thermometer",
|
|
33097
|
+
group: "sensing",
|
|
33098
|
+
synonyms: [
|
|
33099
|
+
"temperatura",
|
|
33100
|
+
"termometro",
|
|
33101
|
+
"termostato"
|
|
33102
|
+
]
|
|
33103
|
+
},
|
|
33104
|
+
{
|
|
33105
|
+
key: "droplets",
|
|
33106
|
+
group: "sensing",
|
|
33107
|
+
synonyms: [
|
|
33108
|
+
"umidita",
|
|
33109
|
+
"acqua",
|
|
33110
|
+
"allagamento",
|
|
33111
|
+
"perdita"
|
|
33112
|
+
]
|
|
33113
|
+
},
|
|
33114
|
+
{
|
|
33115
|
+
key: "droplet",
|
|
33116
|
+
group: "sensing",
|
|
33117
|
+
synonyms: [
|
|
33118
|
+
"goccia",
|
|
33119
|
+
"acqua",
|
|
33120
|
+
"perdita",
|
|
33121
|
+
"allagamento"
|
|
33122
|
+
]
|
|
33123
|
+
},
|
|
33124
|
+
{
|
|
33125
|
+
key: "gauge",
|
|
33126
|
+
group: "sensing",
|
|
33127
|
+
synonyms: [
|
|
33128
|
+
"misura",
|
|
33129
|
+
"livello",
|
|
33130
|
+
"pressione",
|
|
33131
|
+
"indicatore"
|
|
33132
|
+
]
|
|
33133
|
+
},
|
|
33134
|
+
{
|
|
33135
|
+
key: "gauge2",
|
|
33136
|
+
group: "sensing",
|
|
33137
|
+
synonyms: [
|
|
33138
|
+
"misura",
|
|
33139
|
+
"livello",
|
|
33140
|
+
"pressione",
|
|
33141
|
+
"indicatore"
|
|
33142
|
+
],
|
|
33143
|
+
aliasOf: "gauge"
|
|
33144
|
+
},
|
|
33145
|
+
{
|
|
33146
|
+
key: "sun",
|
|
33147
|
+
group: "sensing",
|
|
33148
|
+
synonyms: [
|
|
33149
|
+
"sole",
|
|
33150
|
+
"luminosita",
|
|
33151
|
+
"giorno",
|
|
33152
|
+
"esterno"
|
|
33153
|
+
]
|
|
33154
|
+
},
|
|
33155
|
+
{
|
|
33156
|
+
key: "sun-medium",
|
|
33157
|
+
group: "sensing",
|
|
33158
|
+
synonyms: ["sole", "luminosita"]
|
|
33159
|
+
},
|
|
33160
|
+
{
|
|
33161
|
+
key: "sunrise",
|
|
33162
|
+
group: "sensing",
|
|
33163
|
+
synonyms: ["alba"]
|
|
33164
|
+
},
|
|
33165
|
+
{
|
|
33166
|
+
key: "moon",
|
|
33167
|
+
group: "sensing",
|
|
33168
|
+
synonyms: [
|
|
33169
|
+
"notte",
|
|
33170
|
+
"luna",
|
|
33171
|
+
"notturna",
|
|
33172
|
+
"nightvision"
|
|
33173
|
+
]
|
|
33174
|
+
},
|
|
33175
|
+
{
|
|
33176
|
+
key: "wind",
|
|
33177
|
+
group: "sensing",
|
|
33178
|
+
synonyms: [
|
|
33179
|
+
"vento",
|
|
33180
|
+
"aria",
|
|
33181
|
+
"gas",
|
|
33182
|
+
"monossido",
|
|
33183
|
+
"co"
|
|
33184
|
+
]
|
|
33185
|
+
},
|
|
33186
|
+
{
|
|
33187
|
+
key: "cloud",
|
|
33188
|
+
group: "sensing",
|
|
33189
|
+
synonyms: ["nuvola", "nuvoloso"]
|
|
33190
|
+
},
|
|
33191
|
+
{
|
|
33192
|
+
key: "cloud-rain",
|
|
33193
|
+
group: "sensing",
|
|
33194
|
+
synonyms: ["pioggia"]
|
|
33195
|
+
},
|
|
33196
|
+
{
|
|
33197
|
+
key: "cloud-sun",
|
|
33198
|
+
group: "sensing",
|
|
33199
|
+
synonyms: [
|
|
33200
|
+
"variabile",
|
|
33201
|
+
"sole",
|
|
33202
|
+
"nuvole"
|
|
33203
|
+
]
|
|
33204
|
+
},
|
|
33205
|
+
{
|
|
33206
|
+
key: "waves",
|
|
33207
|
+
group: "sensing",
|
|
33208
|
+
synonyms: [
|
|
33209
|
+
"onde",
|
|
33210
|
+
"acqua",
|
|
33211
|
+
"vibrazione"
|
|
33212
|
+
]
|
|
33213
|
+
},
|
|
33214
|
+
{
|
|
33215
|
+
key: "sprout",
|
|
33216
|
+
group: "sensing",
|
|
33217
|
+
synonyms: [
|
|
33218
|
+
"irrigazione",
|
|
33219
|
+
"pianta",
|
|
33220
|
+
"germoglio",
|
|
33221
|
+
"orto"
|
|
33222
|
+
]
|
|
33223
|
+
},
|
|
33224
|
+
{
|
|
33225
|
+
key: "leaf",
|
|
33226
|
+
group: "sensing",
|
|
33227
|
+
synonyms: [
|
|
33228
|
+
"foglia",
|
|
33229
|
+
"pianta",
|
|
33230
|
+
"verde"
|
|
33231
|
+
]
|
|
33232
|
+
},
|
|
33233
|
+
{
|
|
33234
|
+
key: "flower",
|
|
33235
|
+
group: "sensing",
|
|
33236
|
+
synonyms: ["fiore", "pianta"]
|
|
33237
|
+
},
|
|
33238
|
+
{
|
|
33239
|
+
key: "zap",
|
|
33240
|
+
group: "sensing",
|
|
33241
|
+
synonyms: [
|
|
33242
|
+
"energia",
|
|
33243
|
+
"corrente",
|
|
33244
|
+
"consumo",
|
|
33245
|
+
"watt",
|
|
33246
|
+
"elettricita"
|
|
33247
|
+
]
|
|
33248
|
+
},
|
|
33249
|
+
{
|
|
33250
|
+
key: "flame",
|
|
33251
|
+
group: "sensing",
|
|
33252
|
+
synonyms: [
|
|
33253
|
+
"fiamma",
|
|
33254
|
+
"gas",
|
|
33255
|
+
"fuoco",
|
|
33256
|
+
"incendio"
|
|
33257
|
+
]
|
|
33258
|
+
},
|
|
33259
|
+
{
|
|
33260
|
+
key: "bell",
|
|
33261
|
+
group: "sensing",
|
|
33262
|
+
synonyms: [
|
|
33263
|
+
"campanello",
|
|
33264
|
+
"suoneria",
|
|
33265
|
+
"notifica",
|
|
33266
|
+
"bell",
|
|
33267
|
+
"chime"
|
|
33268
|
+
]
|
|
33269
|
+
},
|
|
33270
|
+
{
|
|
33271
|
+
key: "bell-ring",
|
|
33272
|
+
group: "sensing",
|
|
33273
|
+
synonyms: [
|
|
33274
|
+
"campanello",
|
|
33275
|
+
"suona",
|
|
33276
|
+
"doorbell",
|
|
33277
|
+
"notifica"
|
|
33278
|
+
]
|
|
33279
|
+
},
|
|
33280
|
+
{
|
|
33281
|
+
key: "bell-off",
|
|
33282
|
+
group: "sensing",
|
|
33283
|
+
synonyms: [
|
|
33284
|
+
"silenzioso",
|
|
33285
|
+
"notifiche",
|
|
33286
|
+
"disattivate",
|
|
33287
|
+
"muto"
|
|
33288
|
+
]
|
|
33289
|
+
},
|
|
33290
|
+
{
|
|
33291
|
+
key: "siren",
|
|
33292
|
+
group: "sensing",
|
|
33293
|
+
synonyms: ["sirena", "allarme"]
|
|
33294
|
+
},
|
|
33295
|
+
{
|
|
33296
|
+
key: "radar",
|
|
33297
|
+
group: "sensing",
|
|
33298
|
+
synonyms: [
|
|
33299
|
+
"movimento",
|
|
33300
|
+
"presenza",
|
|
33301
|
+
"pir",
|
|
33302
|
+
"rilevamento",
|
|
33303
|
+
"radar"
|
|
33304
|
+
]
|
|
33305
|
+
},
|
|
33306
|
+
{
|
|
33307
|
+
key: "activity",
|
|
33308
|
+
group: "sensing",
|
|
33309
|
+
synonyms: [
|
|
33310
|
+
"attivita",
|
|
33311
|
+
"sensore",
|
|
33312
|
+
"generico"
|
|
33313
|
+
]
|
|
33314
|
+
},
|
|
33315
|
+
{
|
|
33316
|
+
key: "hash",
|
|
33317
|
+
group: "sensing",
|
|
33318
|
+
synonyms: [
|
|
33319
|
+
"numero",
|
|
33320
|
+
"contatore",
|
|
33321
|
+
"valore"
|
|
33322
|
+
]
|
|
33323
|
+
},
|
|
33324
|
+
{
|
|
33325
|
+
key: "clock",
|
|
33326
|
+
group: "sensing",
|
|
33327
|
+
synonyms: [
|
|
33328
|
+
"orologio",
|
|
33329
|
+
"ora",
|
|
33330
|
+
"tempo"
|
|
33331
|
+
]
|
|
33332
|
+
},
|
|
33333
|
+
{
|
|
33334
|
+
key: "timer",
|
|
33335
|
+
group: "sensing",
|
|
33336
|
+
synonyms: [
|
|
33337
|
+
"timer",
|
|
33338
|
+
"conto",
|
|
33339
|
+
"rovescia"
|
|
33340
|
+
]
|
|
33341
|
+
},
|
|
33342
|
+
{
|
|
33343
|
+
key: "calendar",
|
|
33344
|
+
group: "sensing",
|
|
33345
|
+
synonyms: [
|
|
33346
|
+
"calendario",
|
|
33347
|
+
"data",
|
|
33348
|
+
"pianificazione"
|
|
33349
|
+
]
|
|
33350
|
+
},
|
|
33351
|
+
{
|
|
33352
|
+
key: "pipette",
|
|
33353
|
+
group: "sensing",
|
|
33354
|
+
synonyms: [
|
|
33355
|
+
"qualita",
|
|
33356
|
+
"aria",
|
|
33357
|
+
"misura",
|
|
33358
|
+
"campione"
|
|
33359
|
+
]
|
|
33360
|
+
},
|
|
33361
|
+
{
|
|
33362
|
+
key: "fan",
|
|
33363
|
+
group: "sensing",
|
|
33364
|
+
synonyms: [
|
|
33365
|
+
"ventilatore",
|
|
33366
|
+
"ventola",
|
|
33367
|
+
"aria"
|
|
33368
|
+
]
|
|
33369
|
+
},
|
|
33370
|
+
{
|
|
33371
|
+
key: "bath",
|
|
33372
|
+
group: "sensing",
|
|
33373
|
+
synonyms: [
|
|
33374
|
+
"bagno",
|
|
33375
|
+
"vasca",
|
|
33376
|
+
"doccia"
|
|
33377
|
+
]
|
|
33378
|
+
},
|
|
33379
|
+
{
|
|
33380
|
+
key: "footprints",
|
|
33381
|
+
group: "sensing",
|
|
33382
|
+
synonyms: [
|
|
33383
|
+
"movimento",
|
|
33384
|
+
"passi",
|
|
33385
|
+
"presenza",
|
|
33386
|
+
"motion"
|
|
33387
|
+
]
|
|
33388
|
+
},
|
|
33389
|
+
{
|
|
33390
|
+
key: "alarm-smoke",
|
|
33391
|
+
group: "sensing",
|
|
33392
|
+
synonyms: [
|
|
33393
|
+
"fumo",
|
|
33394
|
+
"antincendio",
|
|
33395
|
+
"rilevatore"
|
|
33396
|
+
]
|
|
33397
|
+
},
|
|
33398
|
+
{
|
|
33399
|
+
key: "shield-alert",
|
|
33400
|
+
group: "sensing",
|
|
33401
|
+
synonyms: [
|
|
33402
|
+
"manomissione",
|
|
33403
|
+
"allarme",
|
|
33404
|
+
"tamper",
|
|
33405
|
+
"avviso"
|
|
33406
|
+
]
|
|
33407
|
+
},
|
|
33408
|
+
{
|
|
33409
|
+
key: "vibrate",
|
|
33410
|
+
group: "sensing",
|
|
33411
|
+
synonyms: [
|
|
33412
|
+
"vibrazione",
|
|
33413
|
+
"urto",
|
|
33414
|
+
"tamper"
|
|
33415
|
+
]
|
|
33416
|
+
},
|
|
33417
|
+
{
|
|
33418
|
+
key: "wifi",
|
|
33419
|
+
group: "sensing",
|
|
33420
|
+
synonyms: [
|
|
33421
|
+
"wifi",
|
|
33422
|
+
"rete",
|
|
33423
|
+
"segnale"
|
|
33424
|
+
]
|
|
33425
|
+
},
|
|
33426
|
+
{
|
|
33427
|
+
key: "wifi-off",
|
|
33428
|
+
group: "sensing",
|
|
33429
|
+
synonyms: [
|
|
33430
|
+
"wifi",
|
|
33431
|
+
"assente",
|
|
33432
|
+
"offline",
|
|
33433
|
+
"disconnesso"
|
|
33434
|
+
]
|
|
33435
|
+
},
|
|
33436
|
+
{
|
|
33437
|
+
key: "volume-2",
|
|
33438
|
+
group: "sensing",
|
|
33439
|
+
synonyms: [
|
|
33440
|
+
"volume",
|
|
33441
|
+
"audio",
|
|
33442
|
+
"altoparlante",
|
|
33443
|
+
"suono"
|
|
33444
|
+
]
|
|
33445
|
+
},
|
|
33446
|
+
{
|
|
33447
|
+
key: "volume-x",
|
|
33448
|
+
group: "sensing",
|
|
33449
|
+
synonyms: [
|
|
33450
|
+
"muto",
|
|
33451
|
+
"silenziato",
|
|
33452
|
+
"volume",
|
|
33453
|
+
"spento"
|
|
33454
|
+
]
|
|
33455
|
+
},
|
|
33456
|
+
{
|
|
33457
|
+
key: "heart",
|
|
33458
|
+
group: "sensing",
|
|
33459
|
+
synonyms: [
|
|
33460
|
+
"cuore",
|
|
33461
|
+
"preferito",
|
|
33462
|
+
"salute"
|
|
33463
|
+
]
|
|
33464
|
+
},
|
|
33465
|
+
{
|
|
33466
|
+
key: "heart-pulse",
|
|
33467
|
+
group: "sensing",
|
|
33468
|
+
synonyms: [
|
|
33469
|
+
"battito",
|
|
33470
|
+
"salute",
|
|
33471
|
+
"monitoraggio"
|
|
33472
|
+
]
|
|
33473
|
+
},
|
|
33474
|
+
{
|
|
33475
|
+
key: "star",
|
|
33476
|
+
group: "sensing",
|
|
33477
|
+
synonyms: [
|
|
33478
|
+
"preferito",
|
|
33479
|
+
"stella",
|
|
33480
|
+
"importante"
|
|
33481
|
+
]
|
|
33482
|
+
},
|
|
33483
|
+
{
|
|
33484
|
+
key: "sparkles",
|
|
33485
|
+
group: "sensing",
|
|
33486
|
+
synonyms: [
|
|
33487
|
+
"automatico",
|
|
33488
|
+
"intelligente",
|
|
33489
|
+
"ai",
|
|
33490
|
+
"scena"
|
|
33491
|
+
]
|
|
33492
|
+
},
|
|
33493
|
+
{
|
|
33494
|
+
key: "house",
|
|
33495
|
+
group: "place",
|
|
33496
|
+
synonyms: [
|
|
33497
|
+
"casa",
|
|
33498
|
+
"abitazione",
|
|
33499
|
+
"home"
|
|
33500
|
+
]
|
|
33501
|
+
},
|
|
33502
|
+
{
|
|
33503
|
+
key: "sofa",
|
|
33504
|
+
group: "place",
|
|
33505
|
+
synonyms: [
|
|
33506
|
+
"salone",
|
|
33507
|
+
"soggiorno",
|
|
33508
|
+
"divano",
|
|
33509
|
+
"living"
|
|
33510
|
+
]
|
|
33511
|
+
},
|
|
33512
|
+
{
|
|
33513
|
+
key: "bed-double",
|
|
33514
|
+
group: "place",
|
|
33515
|
+
synonyms: [
|
|
33516
|
+
"camera",
|
|
33517
|
+
"letto",
|
|
33518
|
+
"matrimoniale"
|
|
33519
|
+
]
|
|
33520
|
+
},
|
|
33521
|
+
{
|
|
33522
|
+
key: "bed",
|
|
33523
|
+
group: "place",
|
|
33524
|
+
synonyms: [
|
|
33525
|
+
"cameretta",
|
|
33526
|
+
"letto",
|
|
33527
|
+
"singolo"
|
|
33528
|
+
]
|
|
33529
|
+
},
|
|
33530
|
+
{
|
|
33531
|
+
key: "warehouse",
|
|
33532
|
+
group: "place",
|
|
33533
|
+
synonyms: [
|
|
33534
|
+
"magazzino",
|
|
33535
|
+
"capanno",
|
|
33536
|
+
"deposito",
|
|
33537
|
+
"cantina"
|
|
33538
|
+
]
|
|
33539
|
+
},
|
|
33540
|
+
{
|
|
33541
|
+
key: "trees",
|
|
33542
|
+
group: "place",
|
|
33543
|
+
synonyms: [
|
|
33544
|
+
"giardino",
|
|
33545
|
+
"alberi",
|
|
33546
|
+
"esterno",
|
|
33547
|
+
"parco"
|
|
33548
|
+
]
|
|
33549
|
+
},
|
|
33550
|
+
{
|
|
33551
|
+
key: "tree-pine",
|
|
33552
|
+
group: "place",
|
|
33553
|
+
synonyms: [
|
|
33554
|
+
"albero",
|
|
33555
|
+
"pino",
|
|
33556
|
+
"giardino"
|
|
33557
|
+
]
|
|
33558
|
+
},
|
|
33559
|
+
{
|
|
33560
|
+
key: "fence",
|
|
33561
|
+
group: "place",
|
|
33562
|
+
synonyms: [
|
|
33563
|
+
"recinto",
|
|
33564
|
+
"cancello",
|
|
33565
|
+
"staccionata",
|
|
33566
|
+
"perimetro"
|
|
33567
|
+
]
|
|
33568
|
+
},
|
|
33569
|
+
{
|
|
33570
|
+
key: "store",
|
|
33571
|
+
group: "place",
|
|
33572
|
+
synonyms: [
|
|
33573
|
+
"negozio",
|
|
33574
|
+
"ingresso",
|
|
33575
|
+
"vetrina"
|
|
33576
|
+
]
|
|
33577
|
+
},
|
|
33578
|
+
{
|
|
33579
|
+
key: "building",
|
|
33580
|
+
group: "place",
|
|
33581
|
+
synonyms: ["edificio", "palazzo"]
|
|
33582
|
+
},
|
|
33583
|
+
{
|
|
33584
|
+
key: "building-2",
|
|
33585
|
+
group: "place",
|
|
33586
|
+
synonyms: [
|
|
33587
|
+
"edificio",
|
|
33588
|
+
"uffici",
|
|
33589
|
+
"condominio"
|
|
33590
|
+
]
|
|
33591
|
+
},
|
|
33592
|
+
{
|
|
33593
|
+
key: "mountain",
|
|
33594
|
+
group: "place",
|
|
33595
|
+
synonyms: [
|
|
33596
|
+
"montagna",
|
|
33597
|
+
"esterno",
|
|
33598
|
+
"panorama"
|
|
33599
|
+
]
|
|
33600
|
+
},
|
|
33601
|
+
{
|
|
33602
|
+
key: "umbrella",
|
|
33603
|
+
group: "place",
|
|
33604
|
+
synonyms: [
|
|
33605
|
+
"tenda",
|
|
33606
|
+
"markise",
|
|
33607
|
+
"ombrellone",
|
|
33608
|
+
"pergola",
|
|
33609
|
+
"veranda"
|
|
33610
|
+
]
|
|
33611
|
+
},
|
|
33612
|
+
{
|
|
33613
|
+
key: "dumbbell",
|
|
33614
|
+
group: "place",
|
|
33615
|
+
synonyms: ["palestra", "attrezzi"]
|
|
33616
|
+
},
|
|
33617
|
+
{
|
|
33618
|
+
key: "wrench",
|
|
33619
|
+
group: "place",
|
|
33620
|
+
synonyms: [
|
|
33621
|
+
"officina",
|
|
33622
|
+
"manutenzione",
|
|
33623
|
+
"attrezzi",
|
|
33624
|
+
"utenze"
|
|
33625
|
+
]
|
|
33626
|
+
},
|
|
33627
|
+
{
|
|
33628
|
+
key: "hammer",
|
|
33629
|
+
group: "place",
|
|
33630
|
+
synonyms: [
|
|
33631
|
+
"officina",
|
|
33632
|
+
"martello",
|
|
33633
|
+
"lavori"
|
|
33634
|
+
]
|
|
33635
|
+
},
|
|
33636
|
+
{
|
|
33637
|
+
key: "drill",
|
|
33638
|
+
group: "place",
|
|
33639
|
+
synonyms: [
|
|
33640
|
+
"officina",
|
|
33641
|
+
"trapano",
|
|
33642
|
+
"lavori"
|
|
33643
|
+
]
|
|
33644
|
+
},
|
|
33645
|
+
{
|
|
33646
|
+
key: "waves-ladder",
|
|
33647
|
+
group: "place",
|
|
33648
|
+
synonyms: ["piscina", "vasca"]
|
|
33649
|
+
},
|
|
33650
|
+
{
|
|
33651
|
+
key: "circle-parking",
|
|
33652
|
+
group: "place",
|
|
33653
|
+
synonyms: [
|
|
33654
|
+
"parcheggio",
|
|
33655
|
+
"posto",
|
|
33656
|
+
"auto",
|
|
33657
|
+
"garage"
|
|
33658
|
+
]
|
|
33659
|
+
},
|
|
33660
|
+
{
|
|
33661
|
+
key: "route",
|
|
33662
|
+
group: "place",
|
|
33663
|
+
synonyms: [
|
|
33664
|
+
"percorso",
|
|
33665
|
+
"strada",
|
|
33666
|
+
"vialetto",
|
|
33667
|
+
"tragitto"
|
|
33668
|
+
]
|
|
33669
|
+
},
|
|
33670
|
+
{
|
|
33671
|
+
key: "car",
|
|
33672
|
+
group: "life",
|
|
33673
|
+
synonyms: [
|
|
33674
|
+
"auto",
|
|
33675
|
+
"macchina",
|
|
33676
|
+
"veicolo",
|
|
33677
|
+
"parcheggio"
|
|
33678
|
+
]
|
|
33679
|
+
},
|
|
33680
|
+
{
|
|
33681
|
+
key: "bike",
|
|
33682
|
+
group: "life",
|
|
33683
|
+
synonyms: [
|
|
33684
|
+
"bicicletta",
|
|
33685
|
+
"bici",
|
|
33686
|
+
"moto"
|
|
33687
|
+
]
|
|
33688
|
+
},
|
|
33689
|
+
{
|
|
33690
|
+
key: "bus",
|
|
33691
|
+
group: "life",
|
|
33692
|
+
synonyms: ["autobus", "pullman"]
|
|
33693
|
+
},
|
|
33694
|
+
{
|
|
33695
|
+
key: "truck",
|
|
33696
|
+
group: "life",
|
|
33697
|
+
synonyms: [
|
|
33698
|
+
"camion",
|
|
33699
|
+
"furgone",
|
|
33700
|
+
"consegna"
|
|
33701
|
+
]
|
|
33702
|
+
},
|
|
33703
|
+
{
|
|
33704
|
+
key: "plane",
|
|
33705
|
+
group: "life",
|
|
33706
|
+
synonyms: ["aereo"]
|
|
33707
|
+
},
|
|
33708
|
+
{
|
|
33709
|
+
key: "train-front",
|
|
33710
|
+
group: "life",
|
|
33711
|
+
synonyms: ["treno"]
|
|
33712
|
+
},
|
|
33713
|
+
{
|
|
33714
|
+
key: "sailboat",
|
|
33715
|
+
group: "life",
|
|
33716
|
+
synonyms: ["barca", "imbarcazione"]
|
|
33717
|
+
},
|
|
33718
|
+
{
|
|
33719
|
+
key: "dog",
|
|
33720
|
+
group: "life",
|
|
33721
|
+
synonyms: ["cane", "animale"]
|
|
33722
|
+
},
|
|
33723
|
+
{
|
|
33724
|
+
key: "cat",
|
|
33725
|
+
group: "life",
|
|
33726
|
+
synonyms: ["gatto", "animale"]
|
|
33727
|
+
},
|
|
33728
|
+
{
|
|
33729
|
+
key: "bird",
|
|
33730
|
+
group: "life",
|
|
33731
|
+
synonyms: ["uccello", "animale"]
|
|
33732
|
+
},
|
|
33733
|
+
{
|
|
33734
|
+
key: "paw-print",
|
|
33735
|
+
group: "life",
|
|
33736
|
+
synonyms: [
|
|
33737
|
+
"animale",
|
|
33738
|
+
"zampa",
|
|
33739
|
+
"pet"
|
|
33740
|
+
]
|
|
33741
|
+
},
|
|
33742
|
+
{
|
|
33743
|
+
key: "baby",
|
|
33744
|
+
group: "life",
|
|
33745
|
+
synonyms: [
|
|
33746
|
+
"neonato",
|
|
33747
|
+
"bimbo",
|
|
33748
|
+
"cameretta",
|
|
33749
|
+
"babymonitor"
|
|
33750
|
+
]
|
|
33751
|
+
},
|
|
33752
|
+
{
|
|
33753
|
+
key: "user",
|
|
33754
|
+
group: "life",
|
|
33755
|
+
synonyms: ["persona", "utente"]
|
|
33756
|
+
},
|
|
33757
|
+
{
|
|
33758
|
+
key: "users",
|
|
33759
|
+
group: "life",
|
|
33760
|
+
synonyms: [
|
|
33761
|
+
"persone",
|
|
33762
|
+
"gruppo",
|
|
33763
|
+
"famiglia"
|
|
33764
|
+
]
|
|
33765
|
+
},
|
|
33766
|
+
{
|
|
33767
|
+
key: "person-standing",
|
|
33768
|
+
group: "life",
|
|
33769
|
+
synonyms: [
|
|
33770
|
+
"persona",
|
|
33771
|
+
"piedi",
|
|
33772
|
+
"presenza"
|
|
33773
|
+
]
|
|
33774
|
+
}
|
|
33775
|
+
];
|
|
33776
|
+
DISPLAY_ICON_VOCABULARY.map((e) => e.key);
|
|
33777
|
+
DISPLAY_ICON_VOCABULARY.filter((e) => e.aliasOf === void 0).map((e) => e.key);
|
|
33778
|
+
new Map(DISPLAY_ICON_VOCABULARY.map((e) => [e.key, e]));
|
|
32327
33779
|
Object.freeze({
|
|
33780
|
+
"accessories.getStatus": {
|
|
33781
|
+
capName: "accessories",
|
|
33782
|
+
capScope: "device",
|
|
33783
|
+
addonId: null,
|
|
33784
|
+
access: "view"
|
|
33785
|
+
},
|
|
32328
33786
|
"accessories.setChildHidden": {
|
|
32329
33787
|
capName: "accessories",
|
|
32330
33788
|
capScope: "device",
|
|
@@ -32607,6 +34065,12 @@ Object.freeze({
|
|
|
32607
34065
|
addonId: null,
|
|
32608
34066
|
access: "view"
|
|
32609
34067
|
},
|
|
34068
|
+
"airQualitySensor.getStatus": {
|
|
34069
|
+
capName: "air-quality-sensor",
|
|
34070
|
+
capScope: "device",
|
|
34071
|
+
addonId: null,
|
|
34072
|
+
access: "view"
|
|
34073
|
+
},
|
|
32610
34074
|
"alarmPanel.arm": {
|
|
32611
34075
|
capName: "alarm-panel",
|
|
32612
34076
|
capScope: "device",
|
|
@@ -32619,6 +34083,12 @@ Object.freeze({
|
|
|
32619
34083
|
addonId: null,
|
|
32620
34084
|
access: "create"
|
|
32621
34085
|
},
|
|
34086
|
+
"alarmPanel.getStatus": {
|
|
34087
|
+
capName: "alarm-panel",
|
|
34088
|
+
capScope: "device",
|
|
34089
|
+
addonId: null,
|
|
34090
|
+
access: "view"
|
|
34091
|
+
},
|
|
32622
34092
|
"alarmPanel.trigger": {
|
|
32623
34093
|
capName: "alarm-panel",
|
|
32624
34094
|
capScope: "device",
|
|
@@ -32667,6 +34137,30 @@ Object.freeze({
|
|
|
32667
34137
|
addonId: null,
|
|
32668
34138
|
access: "create"
|
|
32669
34139
|
},
|
|
34140
|
+
"ambientLightSensor.getStatus": {
|
|
34141
|
+
capName: "ambient-light-sensor",
|
|
34142
|
+
capScope: "device",
|
|
34143
|
+
addonId: null,
|
|
34144
|
+
access: "view"
|
|
34145
|
+
},
|
|
34146
|
+
"audioAnalysis.applyDeviceSettingsPatch": {
|
|
34147
|
+
capName: "audio-analysis",
|
|
34148
|
+
capScope: "device",
|
|
34149
|
+
addonId: null,
|
|
34150
|
+
access: "create"
|
|
34151
|
+
},
|
|
34152
|
+
"audioAnalysis.getDeviceLiveContribution": {
|
|
34153
|
+
capName: "audio-analysis",
|
|
34154
|
+
capScope: "device",
|
|
34155
|
+
addonId: null,
|
|
34156
|
+
access: "view"
|
|
34157
|
+
},
|
|
34158
|
+
"audioAnalysis.getDeviceSettingsContribution": {
|
|
34159
|
+
capName: "audio-analysis",
|
|
34160
|
+
capScope: "device",
|
|
34161
|
+
addonId: null,
|
|
34162
|
+
access: "view"
|
|
34163
|
+
},
|
|
32670
34164
|
"audioAnalysis.resolveDeviceSettings": {
|
|
32671
34165
|
capName: "audio-analysis",
|
|
32672
34166
|
capScope: "device",
|
|
@@ -32829,6 +34323,12 @@ Object.freeze({
|
|
|
32829
34323
|
addonId: null,
|
|
32830
34324
|
access: "create"
|
|
32831
34325
|
},
|
|
34326
|
+
"automationControl.getStatus": {
|
|
34327
|
+
capName: "automation-control",
|
|
34328
|
+
capScope: "device",
|
|
34329
|
+
addonId: null,
|
|
34330
|
+
access: "view"
|
|
34331
|
+
},
|
|
32832
34332
|
"automationControl.trigger": {
|
|
32833
34333
|
capName: "automation-control",
|
|
32834
34334
|
capScope: "device",
|
|
@@ -32925,12 +34425,30 @@ Object.freeze({
|
|
|
32925
34425
|
addonId: null,
|
|
32926
34426
|
access: "create"
|
|
32927
34427
|
},
|
|
34428
|
+
"battery.getStatus": {
|
|
34429
|
+
capName: "battery",
|
|
34430
|
+
capScope: "device",
|
|
34431
|
+
addonId: null,
|
|
34432
|
+
access: "view"
|
|
34433
|
+
},
|
|
32928
34434
|
"battery.wakeForStream": {
|
|
32929
34435
|
capName: "battery",
|
|
32930
34436
|
capScope: "device",
|
|
32931
34437
|
addonId: null,
|
|
32932
34438
|
access: "create"
|
|
32933
34439
|
},
|
|
34440
|
+
"binary.getStatus": {
|
|
34441
|
+
capName: "binary",
|
|
34442
|
+
capScope: "device",
|
|
34443
|
+
addonId: null,
|
|
34444
|
+
access: "view"
|
|
34445
|
+
},
|
|
34446
|
+
"brightness.getStatus": {
|
|
34447
|
+
capName: "brightness",
|
|
34448
|
+
capScope: "device",
|
|
34449
|
+
addonId: null,
|
|
34450
|
+
access: "view"
|
|
34451
|
+
},
|
|
32934
34452
|
"brightness.setBrightness": {
|
|
32935
34453
|
capName: "brightness",
|
|
32936
34454
|
capScope: "device",
|
|
@@ -33045,6 +34563,30 @@ Object.freeze({
|
|
|
33045
34563
|
addonId: null,
|
|
33046
34564
|
access: "view"
|
|
33047
34565
|
},
|
|
34566
|
+
"cameraCredentials.getStatus": {
|
|
34567
|
+
capName: "camera-credentials",
|
|
34568
|
+
capScope: "device",
|
|
34569
|
+
addonId: null,
|
|
34570
|
+
access: "view"
|
|
34571
|
+
},
|
|
34572
|
+
"cameraGridLayout.applyDeviceSettingsPatch": {
|
|
34573
|
+
capName: "camera-grid-layout",
|
|
34574
|
+
capScope: "device",
|
|
34575
|
+
addonId: null,
|
|
34576
|
+
access: "create"
|
|
34577
|
+
},
|
|
34578
|
+
"cameraGridLayout.getDeviceLiveContribution": {
|
|
34579
|
+
capName: "camera-grid-layout",
|
|
34580
|
+
capScope: "device",
|
|
34581
|
+
addonId: null,
|
|
34582
|
+
access: "view"
|
|
34583
|
+
},
|
|
34584
|
+
"cameraGridLayout.getDeviceSettingsContribution": {
|
|
34585
|
+
capName: "camera-grid-layout",
|
|
34586
|
+
capScope: "device",
|
|
34587
|
+
addonId: null,
|
|
34588
|
+
access: "view"
|
|
34589
|
+
},
|
|
33048
34590
|
"cameraGridLayout.getLayout": {
|
|
33049
34591
|
capName: "camera-grid-layout",
|
|
33050
34592
|
capScope: "device",
|
|
@@ -33057,6 +34599,24 @@ Object.freeze({
|
|
|
33057
34599
|
addonId: null,
|
|
33058
34600
|
access: "create"
|
|
33059
34601
|
},
|
|
34602
|
+
"cameraPipelineConfig.applyDeviceSettingsPatch": {
|
|
34603
|
+
capName: "camera-pipeline-config",
|
|
34604
|
+
capScope: "device",
|
|
34605
|
+
addonId: null,
|
|
34606
|
+
access: "create"
|
|
34607
|
+
},
|
|
34608
|
+
"cameraPipelineConfig.getDeviceLiveContribution": {
|
|
34609
|
+
capName: "camera-pipeline-config",
|
|
34610
|
+
capScope: "device",
|
|
34611
|
+
addonId: null,
|
|
34612
|
+
access: "view"
|
|
34613
|
+
},
|
|
34614
|
+
"cameraPipelineConfig.getDeviceSettingsContribution": {
|
|
34615
|
+
capName: "camera-pipeline-config",
|
|
34616
|
+
capScope: "device",
|
|
34617
|
+
addonId: null,
|
|
34618
|
+
access: "view"
|
|
34619
|
+
},
|
|
33060
34620
|
"cameraStreams.getBrokerStreams": {
|
|
33061
34621
|
capName: "camera-streams",
|
|
33062
34622
|
capScope: "device",
|
|
@@ -33087,6 +34647,18 @@ Object.freeze({
|
|
|
33087
34647
|
addonId: null,
|
|
33088
34648
|
access: "view"
|
|
33089
34649
|
},
|
|
34650
|
+
"carbonMonoxide.getStatus": {
|
|
34651
|
+
capName: "carbon-monoxide",
|
|
34652
|
+
capScope: "device",
|
|
34653
|
+
addonId: null,
|
|
34654
|
+
access: "view"
|
|
34655
|
+
},
|
|
34656
|
+
"climateControl.getStatus": {
|
|
34657
|
+
capName: "climate-control",
|
|
34658
|
+
capScope: "device",
|
|
34659
|
+
addonId: null,
|
|
34660
|
+
access: "view"
|
|
34661
|
+
},
|
|
33090
34662
|
"climateControl.setFanMode": {
|
|
33091
34663
|
capName: "climate-control",
|
|
33092
34664
|
capScope: "device",
|
|
@@ -33135,6 +34707,12 @@ Object.freeze({
|
|
|
33135
34707
|
addonId: null,
|
|
33136
34708
|
access: "create"
|
|
33137
34709
|
},
|
|
34710
|
+
"color.getStatus": {
|
|
34711
|
+
capName: "color",
|
|
34712
|
+
capScope: "device",
|
|
34713
|
+
addonId: null,
|
|
34714
|
+
access: "view"
|
|
34715
|
+
},
|
|
33138
34716
|
"color.setColor": {
|
|
33139
34717
|
capName: "color",
|
|
33140
34718
|
capScope: "device",
|
|
@@ -33153,12 +34731,36 @@ Object.freeze({
|
|
|
33153
34731
|
addonId: null,
|
|
33154
34732
|
access: "create"
|
|
33155
34733
|
},
|
|
34734
|
+
"connectivity.getStatus": {
|
|
34735
|
+
capName: "connectivity",
|
|
34736
|
+
capScope: "device",
|
|
34737
|
+
addonId: null,
|
|
34738
|
+
access: "view"
|
|
34739
|
+
},
|
|
34740
|
+
"consumables.getStatus": {
|
|
34741
|
+
capName: "consumables",
|
|
34742
|
+
capScope: "device",
|
|
34743
|
+
addonId: null,
|
|
34744
|
+
access: "view"
|
|
34745
|
+
},
|
|
33156
34746
|
"consumables.reset": {
|
|
33157
34747
|
capName: "consumables",
|
|
33158
34748
|
capScope: "device",
|
|
33159
34749
|
addonId: null,
|
|
33160
34750
|
access: "delete"
|
|
33161
34751
|
},
|
|
34752
|
+
"contact.getStatus": {
|
|
34753
|
+
capName: "contact",
|
|
34754
|
+
capScope: "device",
|
|
34755
|
+
addonId: null,
|
|
34756
|
+
access: "view"
|
|
34757
|
+
},
|
|
34758
|
+
"control.getStatus": {
|
|
34759
|
+
capName: "control",
|
|
34760
|
+
capScope: "device",
|
|
34761
|
+
addonId: null,
|
|
34762
|
+
access: "view"
|
|
34763
|
+
},
|
|
33162
34764
|
"control.setValue": {
|
|
33163
34765
|
capName: "control",
|
|
33164
34766
|
capScope: "device",
|
|
@@ -33225,6 +34827,12 @@ Object.freeze({
|
|
|
33225
34827
|
addonId: null,
|
|
33226
34828
|
access: "create"
|
|
33227
34829
|
},
|
|
34830
|
+
"cover.getStatus": {
|
|
34831
|
+
capName: "cover",
|
|
34832
|
+
capScope: "device",
|
|
34833
|
+
addonId: null,
|
|
34834
|
+
access: "view"
|
|
34835
|
+
},
|
|
33228
34836
|
"cover.open": {
|
|
33229
34837
|
capName: "cover",
|
|
33230
34838
|
capScope: "device",
|
|
@@ -33357,6 +34965,12 @@ Object.freeze({
|
|
|
33357
34965
|
addonId: null,
|
|
33358
34966
|
access: "view"
|
|
33359
34967
|
},
|
|
34968
|
+
"dayNight.getStatus": {
|
|
34969
|
+
capName: "day-night",
|
|
34970
|
+
capScope: "device",
|
|
34971
|
+
addonId: null,
|
|
34972
|
+
access: "view"
|
|
34973
|
+
},
|
|
33360
34974
|
"dayNight.setSettings": {
|
|
33361
34975
|
capName: "day-night",
|
|
33362
34976
|
capScope: "device",
|
|
@@ -33447,6 +35061,24 @@ Object.freeze({
|
|
|
33447
35061
|
addonId: null,
|
|
33448
35062
|
access: "view"
|
|
33449
35063
|
},
|
|
35064
|
+
"detectionPipeline.applyDeviceSettingsPatch": {
|
|
35065
|
+
capName: "detection-pipeline",
|
|
35066
|
+
capScope: "device",
|
|
35067
|
+
addonId: null,
|
|
35068
|
+
access: "create"
|
|
35069
|
+
},
|
|
35070
|
+
"detectionPipeline.getDeviceLiveContribution": {
|
|
35071
|
+
capName: "detection-pipeline",
|
|
35072
|
+
capScope: "device",
|
|
35073
|
+
addonId: null,
|
|
35074
|
+
access: "view"
|
|
35075
|
+
},
|
|
35076
|
+
"detectionPipeline.getDeviceSettingsContribution": {
|
|
35077
|
+
capName: "detection-pipeline",
|
|
35078
|
+
capScope: "device",
|
|
35079
|
+
addonId: null,
|
|
35080
|
+
access: "view"
|
|
35081
|
+
},
|
|
33450
35082
|
"deviceAdoption.adopt": {
|
|
33451
35083
|
capName: "device-adoption",
|
|
33452
35084
|
capScope: "system",
|
|
@@ -33459,6 +35091,12 @@ Object.freeze({
|
|
|
33459
35091
|
addonId: null,
|
|
33460
35092
|
access: "view"
|
|
33461
35093
|
},
|
|
35094
|
+
"deviceAdoption.getStatus": {
|
|
35095
|
+
capName: "device-adoption",
|
|
35096
|
+
capScope: "system",
|
|
35097
|
+
addonId: null,
|
|
35098
|
+
access: "view"
|
|
35099
|
+
},
|
|
33462
35100
|
"deviceAdoption.listCandidateFilters": {
|
|
33463
35101
|
capName: "device-adoption",
|
|
33464
35102
|
capScope: "system",
|
|
@@ -33495,6 +35133,12 @@ Object.freeze({
|
|
|
33495
35133
|
addonId: null,
|
|
33496
35134
|
access: "create"
|
|
33497
35135
|
},
|
|
35136
|
+
"deviceDiscovery.getStatus": {
|
|
35137
|
+
capName: "device-discovery",
|
|
35138
|
+
capScope: "device",
|
|
35139
|
+
addonId: null,
|
|
35140
|
+
access: "view"
|
|
35141
|
+
},
|
|
33498
35142
|
"deviceDiscovery.listDiscovered": {
|
|
33499
35143
|
capName: "device-discovery",
|
|
33500
35144
|
capScope: "device",
|
|
@@ -33513,12 +35157,30 @@ Object.freeze({
|
|
|
33513
35157
|
addonId: null,
|
|
33514
35158
|
access: "create"
|
|
33515
35159
|
},
|
|
35160
|
+
"deviceExport.applyDeviceSettingsPatch": {
|
|
35161
|
+
capName: "device-export",
|
|
35162
|
+
capScope: "system",
|
|
35163
|
+
addonId: null,
|
|
35164
|
+
access: "create"
|
|
35165
|
+
},
|
|
33516
35166
|
"deviceExport.exposeDevice": {
|
|
33517
35167
|
capName: "device-export",
|
|
33518
35168
|
capScope: "system",
|
|
33519
35169
|
addonId: null,
|
|
33520
35170
|
access: "create"
|
|
33521
35171
|
},
|
|
35172
|
+
"deviceExport.getDeviceLiveContribution": {
|
|
35173
|
+
capName: "device-export",
|
|
35174
|
+
capScope: "system",
|
|
35175
|
+
addonId: null,
|
|
35176
|
+
access: "view"
|
|
35177
|
+
},
|
|
35178
|
+
"deviceExport.getDeviceSettingsContribution": {
|
|
35179
|
+
capName: "device-export",
|
|
35180
|
+
capScope: "system",
|
|
35181
|
+
addonId: null,
|
|
35182
|
+
access: "view"
|
|
35183
|
+
},
|
|
33522
35184
|
"deviceExport.getStatus": {
|
|
33523
35185
|
capName: "device-export",
|
|
33524
35186
|
capScope: "system",
|
|
@@ -33615,6 +35277,12 @@ Object.freeze({
|
|
|
33615
35277
|
addonId: null,
|
|
33616
35278
|
access: "create"
|
|
33617
35279
|
},
|
|
35280
|
+
"deviceManager.applyDeviceSettingsPatch": {
|
|
35281
|
+
capName: "device-manager",
|
|
35282
|
+
capScope: "system",
|
|
35283
|
+
addonId: null,
|
|
35284
|
+
access: "create"
|
|
35285
|
+
},
|
|
33618
35286
|
"deviceManager.applyInitialMeta": {
|
|
33619
35287
|
capName: "device-manager",
|
|
33620
35288
|
capScope: "system",
|
|
@@ -33717,6 +35385,12 @@ Object.freeze({
|
|
|
33717
35385
|
addonId: null,
|
|
33718
35386
|
access: "view"
|
|
33719
35387
|
},
|
|
35388
|
+
"deviceManager.getDeviceLiveContribution": {
|
|
35389
|
+
capName: "device-manager",
|
|
35390
|
+
capScope: "system",
|
|
35391
|
+
addonId: null,
|
|
35392
|
+
access: "view"
|
|
35393
|
+
},
|
|
33720
35394
|
"deviceManager.getDeviceLiveInfoAggregate": {
|
|
33721
35395
|
capName: "device-manager",
|
|
33722
35396
|
capScope: "system",
|
|
@@ -33729,6 +35403,12 @@ Object.freeze({
|
|
|
33729
35403
|
addonId: null,
|
|
33730
35404
|
access: "view"
|
|
33731
35405
|
},
|
|
35406
|
+
"deviceManager.getDeviceSettingsContribution": {
|
|
35407
|
+
capName: "device-manager",
|
|
35408
|
+
capScope: "system",
|
|
35409
|
+
addonId: null,
|
|
35410
|
+
access: "view"
|
|
35411
|
+
},
|
|
33732
35412
|
"deviceManager.getDeviceStatusAggregate": {
|
|
33733
35413
|
capName: "device-manager",
|
|
33734
35414
|
capScope: "system",
|
|
@@ -34221,6 +35901,36 @@ Object.freeze({
|
|
|
34221
35901
|
addonId: null,
|
|
34222
35902
|
access: "create"
|
|
34223
35903
|
},
|
|
35904
|
+
"deviceStatus.getStatus": {
|
|
35905
|
+
capName: "device-status",
|
|
35906
|
+
capScope: "device",
|
|
35907
|
+
addonId: null,
|
|
35908
|
+
access: "view"
|
|
35909
|
+
},
|
|
35910
|
+
"doorbell.applyDeviceSettingsPatch": {
|
|
35911
|
+
capName: "doorbell",
|
|
35912
|
+
capScope: "device",
|
|
35913
|
+
addonId: null,
|
|
35914
|
+
access: "create"
|
|
35915
|
+
},
|
|
35916
|
+
"doorbell.getDeviceLiveContribution": {
|
|
35917
|
+
capName: "doorbell",
|
|
35918
|
+
capScope: "device",
|
|
35919
|
+
addonId: null,
|
|
35920
|
+
access: "view"
|
|
35921
|
+
},
|
|
35922
|
+
"doorbell.getDeviceSettingsContribution": {
|
|
35923
|
+
capName: "doorbell",
|
|
35924
|
+
capScope: "device",
|
|
35925
|
+
addonId: null,
|
|
35926
|
+
access: "view"
|
|
35927
|
+
},
|
|
35928
|
+
"doorbell.getStatus": {
|
|
35929
|
+
capName: "doorbell",
|
|
35930
|
+
capScope: "device",
|
|
35931
|
+
addonId: null,
|
|
35932
|
+
access: "view"
|
|
35933
|
+
},
|
|
34224
35934
|
"embeddingEncoder.encode": {
|
|
34225
35935
|
capName: "embedding-encoder",
|
|
34226
35936
|
capScope: "system",
|
|
@@ -34239,6 +35949,18 @@ Object.freeze({
|
|
|
34239
35949
|
addonId: null,
|
|
34240
35950
|
access: "view"
|
|
34241
35951
|
},
|
|
35952
|
+
"enumSensor.getStatus": {
|
|
35953
|
+
capName: "enum-sensor",
|
|
35954
|
+
capScope: "device",
|
|
35955
|
+
addonId: null,
|
|
35956
|
+
access: "view"
|
|
35957
|
+
},
|
|
35958
|
+
"eventEmitter.getStatus": {
|
|
35959
|
+
capName: "event-emitter",
|
|
35960
|
+
capScope: "device",
|
|
35961
|
+
addonId: null,
|
|
35962
|
+
access: "view"
|
|
35963
|
+
},
|
|
34242
35964
|
"events.getEventClipUrl": {
|
|
34243
35965
|
capName: "events",
|
|
34244
35966
|
capScope: "device",
|
|
@@ -34359,6 +36081,12 @@ Object.freeze({
|
|
|
34359
36081
|
addonId: null,
|
|
34360
36082
|
access: "view"
|
|
34361
36083
|
},
|
|
36084
|
+
"fanControl.getStatus": {
|
|
36085
|
+
capName: "fan-control",
|
|
36086
|
+
capScope: "device",
|
|
36087
|
+
addonId: null,
|
|
36088
|
+
access: "view"
|
|
36089
|
+
},
|
|
34362
36090
|
"fanControl.setDirection": {
|
|
34363
36091
|
capName: "fan-control",
|
|
34364
36092
|
capScope: "device",
|
|
@@ -34383,6 +36111,12 @@ Object.freeze({
|
|
|
34383
36111
|
addonId: null,
|
|
34384
36112
|
access: "create"
|
|
34385
36113
|
},
|
|
36114
|
+
"featureProbe.getStatus": {
|
|
36115
|
+
capName: "feature-probe",
|
|
36116
|
+
capScope: "device",
|
|
36117
|
+
addonId: null,
|
|
36118
|
+
access: "view"
|
|
36119
|
+
},
|
|
34386
36120
|
"filesystemBrowse.browse": {
|
|
34387
36121
|
capName: "filesystem-browse",
|
|
34388
36122
|
capScope: "system",
|
|
@@ -34401,6 +36135,24 @@ Object.freeze({
|
|
|
34401
36135
|
addonId: null,
|
|
34402
36136
|
access: "view"
|
|
34403
36137
|
},
|
|
36138
|
+
"flood.getStatus": {
|
|
36139
|
+
capName: "flood",
|
|
36140
|
+
capScope: "device",
|
|
36141
|
+
addonId: null,
|
|
36142
|
+
access: "view"
|
|
36143
|
+
},
|
|
36144
|
+
"gas.getStatus": {
|
|
36145
|
+
capName: "gas",
|
|
36146
|
+
capScope: "device",
|
|
36147
|
+
addonId: null,
|
|
36148
|
+
access: "view"
|
|
36149
|
+
},
|
|
36150
|
+
"humidifier.getStatus": {
|
|
36151
|
+
capName: "humidifier",
|
|
36152
|
+
capScope: "device",
|
|
36153
|
+
addonId: null,
|
|
36154
|
+
access: "view"
|
|
36155
|
+
},
|
|
34404
36156
|
"humidifier.setMode": {
|
|
34405
36157
|
capName: "humidifier",
|
|
34406
36158
|
capScope: "device",
|
|
@@ -34419,12 +36171,30 @@ Object.freeze({
|
|
|
34419
36171
|
addonId: null,
|
|
34420
36172
|
access: "create"
|
|
34421
36173
|
},
|
|
36174
|
+
"humiditySensor.getStatus": {
|
|
36175
|
+
capName: "humidity-sensor",
|
|
36176
|
+
capScope: "device",
|
|
36177
|
+
addonId: null,
|
|
36178
|
+
access: "view"
|
|
36179
|
+
},
|
|
36180
|
+
"image.getStatus": {
|
|
36181
|
+
capName: "image",
|
|
36182
|
+
capScope: "device",
|
|
36183
|
+
addonId: null,
|
|
36184
|
+
access: "view"
|
|
36185
|
+
},
|
|
34422
36186
|
"imageSettings.getOptions": {
|
|
34423
36187
|
capName: "image-settings",
|
|
34424
36188
|
capScope: "device",
|
|
34425
36189
|
addonId: null,
|
|
34426
36190
|
access: "view"
|
|
34427
36191
|
},
|
|
36192
|
+
"imageSettings.getStatus": {
|
|
36193
|
+
capName: "image-settings",
|
|
36194
|
+
capScope: "device",
|
|
36195
|
+
addonId: null,
|
|
36196
|
+
access: "view"
|
|
36197
|
+
},
|
|
34428
36198
|
"imageSettings.setSettings": {
|
|
34429
36199
|
capName: "image-settings",
|
|
34430
36200
|
capScope: "device",
|
|
@@ -34497,6 +36267,12 @@ Object.freeze({
|
|
|
34497
36267
|
addonId: null,
|
|
34498
36268
|
access: "create"
|
|
34499
36269
|
},
|
|
36270
|
+
"intercom.getStatus": {
|
|
36271
|
+
capName: "intercom",
|
|
36272
|
+
capScope: "device",
|
|
36273
|
+
addonId: null,
|
|
36274
|
+
access: "view"
|
|
36275
|
+
},
|
|
34500
36276
|
"intercom.handleAnswer": {
|
|
34501
36277
|
capName: "intercom",
|
|
34502
36278
|
capScope: "device",
|
|
@@ -34533,6 +36309,12 @@ Object.freeze({
|
|
|
34533
36309
|
addonId: null,
|
|
34534
36310
|
access: "create"
|
|
34535
36311
|
},
|
|
36312
|
+
"lawnMowerControl.getStatus": {
|
|
36313
|
+
capName: "lawn-mower-control",
|
|
36314
|
+
capScope: "device",
|
|
36315
|
+
addonId: null,
|
|
36316
|
+
access: "view"
|
|
36317
|
+
},
|
|
34536
36318
|
"lawnMowerControl.pause": {
|
|
34537
36319
|
capName: "lawn-mower-control",
|
|
34538
36320
|
capScope: "device",
|
|
@@ -34815,6 +36597,12 @@ Object.freeze({
|
|
|
34815
36597
|
addonId: null,
|
|
34816
36598
|
access: "create"
|
|
34817
36599
|
},
|
|
36600
|
+
"lockControl.getStatus": {
|
|
36601
|
+
capName: "lock-control",
|
|
36602
|
+
capScope: "device",
|
|
36603
|
+
addonId: null,
|
|
36604
|
+
access: "view"
|
|
36605
|
+
},
|
|
34818
36606
|
"lockControl.lock": {
|
|
34819
36607
|
capName: "lock-control",
|
|
34820
36608
|
capScope: "device",
|
|
@@ -34863,6 +36651,12 @@ Object.freeze({
|
|
|
34863
36651
|
addonId: null,
|
|
34864
36652
|
access: "view"
|
|
34865
36653
|
},
|
|
36654
|
+
"mediaPlayer.getStatus": {
|
|
36655
|
+
capName: "media-player",
|
|
36656
|
+
capScope: "device",
|
|
36657
|
+
addonId: null,
|
|
36658
|
+
access: "view"
|
|
36659
|
+
},
|
|
34866
36660
|
"mediaPlayer.next": {
|
|
34867
36661
|
capName: "media-player",
|
|
34868
36662
|
capScope: "device",
|
|
@@ -35055,6 +36849,12 @@ Object.freeze({
|
|
|
35055
36849
|
addonId: null,
|
|
35056
36850
|
access: "create"
|
|
35057
36851
|
},
|
|
36852
|
+
"motion.getStatus": {
|
|
36853
|
+
capName: "motion",
|
|
36854
|
+
capScope: "device",
|
|
36855
|
+
addonId: null,
|
|
36856
|
+
access: "view"
|
|
36857
|
+
},
|
|
35058
36858
|
"motion.isDetected": {
|
|
35059
36859
|
capName: "motion",
|
|
35060
36860
|
capScope: "device",
|
|
@@ -35067,6 +36867,24 @@ Object.freeze({
|
|
|
35067
36867
|
addonId: null,
|
|
35068
36868
|
access: "create"
|
|
35069
36869
|
},
|
|
36870
|
+
"motionDetection.applyDeviceSettingsPatch": {
|
|
36871
|
+
capName: "motion-detection",
|
|
36872
|
+
capScope: "device",
|
|
36873
|
+
addonId: null,
|
|
36874
|
+
access: "create"
|
|
36875
|
+
},
|
|
36876
|
+
"motionDetection.getDeviceLiveContribution": {
|
|
36877
|
+
capName: "motion-detection",
|
|
36878
|
+
capScope: "device",
|
|
36879
|
+
addonId: null,
|
|
36880
|
+
access: "view"
|
|
36881
|
+
},
|
|
36882
|
+
"motionDetection.getDeviceSettingsContribution": {
|
|
36883
|
+
capName: "motion-detection",
|
|
36884
|
+
capScope: "device",
|
|
36885
|
+
addonId: null,
|
|
36886
|
+
access: "view"
|
|
36887
|
+
},
|
|
35070
36888
|
"motionDetection.removeCamera": {
|
|
35071
36889
|
capName: "motion-detection",
|
|
35072
36890
|
capScope: "device",
|
|
@@ -35079,6 +36897,12 @@ Object.freeze({
|
|
|
35079
36897
|
addonId: null,
|
|
35080
36898
|
access: "delete"
|
|
35081
36899
|
},
|
|
36900
|
+
"motionTrigger.getStatus": {
|
|
36901
|
+
capName: "motion-trigger",
|
|
36902
|
+
capScope: "device",
|
|
36903
|
+
addonId: null,
|
|
36904
|
+
access: "view"
|
|
36905
|
+
},
|
|
35082
36906
|
"motionTrigger.setMotionTrigger": {
|
|
35083
36907
|
capName: "motion-trigger",
|
|
35084
36908
|
capScope: "device",
|
|
@@ -35091,6 +36915,12 @@ Object.freeze({
|
|
|
35091
36915
|
addonId: null,
|
|
35092
36916
|
access: "view"
|
|
35093
36917
|
},
|
|
36918
|
+
"motionZones.getStatus": {
|
|
36919
|
+
capName: "motion-zones",
|
|
36920
|
+
capScope: "device",
|
|
36921
|
+
addonId: null,
|
|
36922
|
+
access: "view"
|
|
36923
|
+
},
|
|
35094
36924
|
"motionZones.setZone": {
|
|
35095
36925
|
capName: "motion-zones",
|
|
35096
36926
|
capScope: "device",
|
|
@@ -35151,6 +36981,12 @@ Object.freeze({
|
|
|
35151
36981
|
addonId: null,
|
|
35152
36982
|
access: "view"
|
|
35153
36983
|
},
|
|
36984
|
+
"nativeObjectDetection.getStatus": {
|
|
36985
|
+
capName: "native-object-detection",
|
|
36986
|
+
capScope: "device",
|
|
36987
|
+
addonId: null,
|
|
36988
|
+
access: "view"
|
|
36989
|
+
},
|
|
35154
36990
|
"nativeObjectDetection.setEnabled": {
|
|
35155
36991
|
capName: "native-object-detection",
|
|
35156
36992
|
capScope: "device",
|
|
@@ -35169,6 +37005,12 @@ Object.freeze({
|
|
|
35169
37005
|
addonId: null,
|
|
35170
37006
|
access: "view"
|
|
35171
37007
|
},
|
|
37008
|
+
"navigation.getStatus": {
|
|
37009
|
+
capName: "navigation",
|
|
37010
|
+
capScope: "device",
|
|
37011
|
+
addonId: null,
|
|
37012
|
+
access: "view"
|
|
37013
|
+
},
|
|
35172
37014
|
"navigation.goToPoint": {
|
|
35173
37015
|
capName: "navigation",
|
|
35174
37016
|
capScope: "device",
|
|
@@ -35253,6 +37095,12 @@ Object.freeze({
|
|
|
35253
37095
|
addonId: null,
|
|
35254
37096
|
access: "create"
|
|
35255
37097
|
},
|
|
37098
|
+
"networkLink.getStatus": {
|
|
37099
|
+
capName: "network-link",
|
|
37100
|
+
capScope: "device",
|
|
37101
|
+
addonId: null,
|
|
37102
|
+
access: "view"
|
|
37103
|
+
},
|
|
35256
37104
|
"networkQuality.getAllStats": {
|
|
35257
37105
|
capName: "network-quality",
|
|
35258
37106
|
capScope: "system",
|
|
@@ -35511,18 +37359,36 @@ Object.freeze({
|
|
|
35511
37359
|
addonId: null,
|
|
35512
37360
|
access: "create"
|
|
35513
37361
|
},
|
|
37362
|
+
"notifier.getStatus": {
|
|
37363
|
+
capName: "notifier",
|
|
37364
|
+
capScope: "device",
|
|
37365
|
+
addonId: null,
|
|
37366
|
+
access: "view"
|
|
37367
|
+
},
|
|
35514
37368
|
"notifier.send": {
|
|
35515
37369
|
capName: "notifier",
|
|
35516
37370
|
capScope: "device",
|
|
35517
37371
|
addonId: null,
|
|
35518
37372
|
access: "create"
|
|
35519
37373
|
},
|
|
37374
|
+
"numericSensor.getStatus": {
|
|
37375
|
+
capName: "numeric-sensor",
|
|
37376
|
+
capScope: "device",
|
|
37377
|
+
addonId: null,
|
|
37378
|
+
access: "view"
|
|
37379
|
+
},
|
|
35520
37380
|
"oauthIntegration.getDescriptor": {
|
|
35521
37381
|
capName: "oauth-integration",
|
|
35522
37382
|
capScope: "system",
|
|
35523
37383
|
addonId: null,
|
|
35524
37384
|
access: "view"
|
|
35525
37385
|
},
|
|
37386
|
+
"osd.getStatus": {
|
|
37387
|
+
capName: "osd",
|
|
37388
|
+
capScope: "device",
|
|
37389
|
+
addonId: null,
|
|
37390
|
+
access: "view"
|
|
37391
|
+
},
|
|
35526
37392
|
"osd.setOverlay": {
|
|
35527
37393
|
capName: "osd",
|
|
35528
37394
|
capScope: "device",
|
|
@@ -35595,6 +37461,12 @@ Object.freeze({
|
|
|
35595
37461
|
addonId: null,
|
|
35596
37462
|
access: "create"
|
|
35597
37463
|
},
|
|
37464
|
+
"petFeeder.getStatus": {
|
|
37465
|
+
capName: "pet-feeder",
|
|
37466
|
+
capScope: "device",
|
|
37467
|
+
addonId: null,
|
|
37468
|
+
access: "view"
|
|
37469
|
+
},
|
|
35598
37470
|
"petFeeder.markFoodReplenished": {
|
|
35599
37471
|
capName: "pet-feeder",
|
|
35600
37472
|
capScope: "device",
|
|
@@ -35637,6 +37509,12 @@ Object.freeze({
|
|
|
35637
37509
|
addonId: null,
|
|
35638
37510
|
access: "create"
|
|
35639
37511
|
},
|
|
37512
|
+
"pipelineAnalytics.applyDeviceSettingsPatch": {
|
|
37513
|
+
capName: "pipeline-analytics",
|
|
37514
|
+
capScope: "device",
|
|
37515
|
+
addonId: null,
|
|
37516
|
+
access: "create"
|
|
37517
|
+
},
|
|
35640
37518
|
"pipelineAnalytics.cancelRelocateMedia": {
|
|
35641
37519
|
capName: "pipeline-analytics",
|
|
35642
37520
|
capScope: "device",
|
|
@@ -35703,6 +37581,18 @@ Object.freeze({
|
|
|
35703
37581
|
addonId: null,
|
|
35704
37582
|
access: "view"
|
|
35705
37583
|
},
|
|
37584
|
+
"pipelineAnalytics.getDeviceLiveContribution": {
|
|
37585
|
+
capName: "pipeline-analytics",
|
|
37586
|
+
capScope: "device",
|
|
37587
|
+
addonId: null,
|
|
37588
|
+
access: "view"
|
|
37589
|
+
},
|
|
37590
|
+
"pipelineAnalytics.getDeviceSettingsContribution": {
|
|
37591
|
+
capName: "pipeline-analytics",
|
|
37592
|
+
capScope: "device",
|
|
37593
|
+
addonId: null,
|
|
37594
|
+
access: "view"
|
|
37595
|
+
},
|
|
35706
37596
|
"pipelineAnalytics.getEventDensity": {
|
|
35707
37597
|
capName: "pipeline-analytics",
|
|
35708
37598
|
capScope: "device",
|
|
@@ -36273,6 +38163,12 @@ Object.freeze({
|
|
|
36273
38163
|
addonId: null,
|
|
36274
38164
|
access: "view"
|
|
36275
38165
|
},
|
|
38166
|
+
"pipelineOrchestrator.applyDeviceSettingsPatch": {
|
|
38167
|
+
capName: "pipeline-orchestrator",
|
|
38168
|
+
capScope: "system",
|
|
38169
|
+
addonId: null,
|
|
38170
|
+
access: "create"
|
|
38171
|
+
},
|
|
36276
38172
|
"pipelineOrchestrator.assignAudio": {
|
|
36277
38173
|
capName: "pipeline-orchestrator",
|
|
36278
38174
|
capScope: "system",
|
|
@@ -36363,6 +38259,18 @@ Object.freeze({
|
|
|
36363
38259
|
addonId: null,
|
|
36364
38260
|
access: "view"
|
|
36365
38261
|
},
|
|
38262
|
+
"pipelineOrchestrator.getDeviceLiveContribution": {
|
|
38263
|
+
capName: "pipeline-orchestrator",
|
|
38264
|
+
capScope: "system",
|
|
38265
|
+
addonId: null,
|
|
38266
|
+
access: "view"
|
|
38267
|
+
},
|
|
38268
|
+
"pipelineOrchestrator.getDeviceSettingsContribution": {
|
|
38269
|
+
capName: "pipeline-orchestrator",
|
|
38270
|
+
capScope: "system",
|
|
38271
|
+
addonId: null,
|
|
38272
|
+
access: "view"
|
|
38273
|
+
},
|
|
36366
38274
|
"pipelineOrchestrator.getGlobalMetrics": {
|
|
36367
38275
|
capName: "pipeline-orchestrator",
|
|
36368
38276
|
capScope: "system",
|
|
@@ -36771,12 +38679,36 @@ Object.freeze({
|
|
|
36771
38679
|
addonId: null,
|
|
36772
38680
|
access: "view"
|
|
36773
38681
|
},
|
|
38682
|
+
"powerMeter.getStatus": {
|
|
38683
|
+
capName: "power-meter",
|
|
38684
|
+
capScope: "device",
|
|
38685
|
+
addonId: null,
|
|
38686
|
+
access: "view"
|
|
38687
|
+
},
|
|
38688
|
+
"presence.getStatus": {
|
|
38689
|
+
capName: "presence",
|
|
38690
|
+
capScope: "device",
|
|
38691
|
+
addonId: null,
|
|
38692
|
+
access: "view"
|
|
38693
|
+
},
|
|
38694
|
+
"pressureSensor.getStatus": {
|
|
38695
|
+
capName: "pressure-sensor",
|
|
38696
|
+
capScope: "device",
|
|
38697
|
+
addonId: null,
|
|
38698
|
+
access: "view"
|
|
38699
|
+
},
|
|
36774
38700
|
"privacyMask.getOptions": {
|
|
36775
38701
|
capName: "privacy-mask",
|
|
36776
38702
|
capScope: "device",
|
|
36777
38703
|
addonId: null,
|
|
36778
38704
|
access: "view"
|
|
36779
38705
|
},
|
|
38706
|
+
"privacyMask.getStatus": {
|
|
38707
|
+
capName: "privacy-mask",
|
|
38708
|
+
capScope: "device",
|
|
38709
|
+
addonId: null,
|
|
38710
|
+
access: "view"
|
|
38711
|
+
},
|
|
36780
38712
|
"privacyMask.setAudioEnabled": {
|
|
36781
38713
|
capName: "privacy-mask",
|
|
36782
38714
|
capScope: "device",
|
|
@@ -36837,6 +38769,12 @@ Object.freeze({
|
|
|
36837
38769
|
addonId: null,
|
|
36838
38770
|
access: "view"
|
|
36839
38771
|
},
|
|
38772
|
+
"ptz.getStatus": {
|
|
38773
|
+
capName: "ptz",
|
|
38774
|
+
capScope: "device",
|
|
38775
|
+
addonId: null,
|
|
38776
|
+
access: "view"
|
|
38777
|
+
},
|
|
36840
38778
|
"ptz.goHome": {
|
|
36841
38779
|
capName: "ptz",
|
|
36842
38780
|
capScope: "device",
|
|
@@ -36915,6 +38853,12 @@ Object.freeze({
|
|
|
36915
38853
|
addonId: null,
|
|
36916
38854
|
access: "create"
|
|
36917
38855
|
},
|
|
38856
|
+
"recording.applyDeviceSettingsPatch": {
|
|
38857
|
+
capName: "recording",
|
|
38858
|
+
capScope: "system",
|
|
38859
|
+
addonId: null,
|
|
38860
|
+
access: "create"
|
|
38861
|
+
},
|
|
36918
38862
|
"recording.cancelRelocateJob": {
|
|
36919
38863
|
capName: "recording",
|
|
36920
38864
|
capScope: "system",
|
|
@@ -36963,6 +38907,18 @@ Object.freeze({
|
|
|
36963
38907
|
addonId: null,
|
|
36964
38908
|
access: "view"
|
|
36965
38909
|
},
|
|
38910
|
+
"recording.getDeviceLiveContribution": {
|
|
38911
|
+
capName: "recording",
|
|
38912
|
+
capScope: "system",
|
|
38913
|
+
addonId: null,
|
|
38914
|
+
access: "view"
|
|
38915
|
+
},
|
|
38916
|
+
"recording.getDeviceSettingsContribution": {
|
|
38917
|
+
capName: "recording",
|
|
38918
|
+
capScope: "system",
|
|
38919
|
+
addonId: null,
|
|
38920
|
+
access: "view"
|
|
38921
|
+
},
|
|
36966
38922
|
"recording.getPlacement": {
|
|
36967
38923
|
capName: "recording",
|
|
36968
38924
|
capScope: "system",
|
|
@@ -36981,6 +38937,12 @@ Object.freeze({
|
|
|
36981
38937
|
addonId: null,
|
|
36982
38938
|
access: "view"
|
|
36983
38939
|
},
|
|
38940
|
+
"recording.getStatus": {
|
|
38941
|
+
capName: "recording",
|
|
38942
|
+
capScope: "system",
|
|
38943
|
+
addonId: null,
|
|
38944
|
+
access: "view"
|
|
38945
|
+
},
|
|
36984
38946
|
"recording.getStorageMigrationMoveStatus": {
|
|
36985
38947
|
capName: "recording",
|
|
36986
38948
|
capScope: "system",
|
|
@@ -37185,6 +39147,12 @@ Object.freeze({
|
|
|
37185
39147
|
addonId: null,
|
|
37186
39148
|
access: "delete"
|
|
37187
39149
|
},
|
|
39150
|
+
"sceneMonitor.getStatus": {
|
|
39151
|
+
capName: "scene-monitor",
|
|
39152
|
+
capScope: "device",
|
|
39153
|
+
addonId: null,
|
|
39154
|
+
access: "view"
|
|
39155
|
+
},
|
|
37188
39156
|
"sceneMonitor.listScenes": {
|
|
37189
39157
|
capName: "scene-monitor",
|
|
37190
39158
|
capScope: "device",
|
|
@@ -37215,6 +39183,12 @@ Object.freeze({
|
|
|
37215
39183
|
addonId: null,
|
|
37216
39184
|
access: "create"
|
|
37217
39185
|
},
|
|
39186
|
+
"scriptRunner.getStatus": {
|
|
39187
|
+
capName: "script-runner",
|
|
39188
|
+
capScope: "device",
|
|
39189
|
+
addonId: null,
|
|
39190
|
+
access: "view"
|
|
39191
|
+
},
|
|
37218
39192
|
"scriptRunner.run": {
|
|
37219
39193
|
capName: "script-runner",
|
|
37220
39194
|
capScope: "device",
|
|
@@ -37347,6 +39321,12 @@ Object.freeze({
|
|
|
37347
39321
|
addonId: null,
|
|
37348
39322
|
access: "create"
|
|
37349
39323
|
},
|
|
39324
|
+
"smoke.getStatus": {
|
|
39325
|
+
capName: "smoke",
|
|
39326
|
+
capScope: "device",
|
|
39327
|
+
addonId: null,
|
|
39328
|
+
access: "view"
|
|
39329
|
+
},
|
|
37350
39330
|
"smtpProvider.getStatus": {
|
|
37351
39331
|
capName: "smtp-provider",
|
|
37352
39332
|
capScope: "system",
|
|
@@ -37365,12 +39345,30 @@ Object.freeze({
|
|
|
37365
39345
|
addonId: null,
|
|
37366
39346
|
access: "view"
|
|
37367
39347
|
},
|
|
39348
|
+
"snapshot.applyDeviceSettingsPatch": {
|
|
39349
|
+
capName: "snapshot",
|
|
39350
|
+
capScope: "device",
|
|
39351
|
+
addonId: null,
|
|
39352
|
+
access: "create"
|
|
39353
|
+
},
|
|
37368
39354
|
"snapshot.getDebugState": {
|
|
37369
39355
|
capName: "snapshot",
|
|
37370
39356
|
capScope: "device",
|
|
37371
39357
|
addonId: null,
|
|
37372
39358
|
access: "view"
|
|
37373
39359
|
},
|
|
39360
|
+
"snapshot.getDeviceLiveContribution": {
|
|
39361
|
+
capName: "snapshot",
|
|
39362
|
+
capScope: "device",
|
|
39363
|
+
addonId: null,
|
|
39364
|
+
access: "view"
|
|
39365
|
+
},
|
|
39366
|
+
"snapshot.getDeviceSettingsContribution": {
|
|
39367
|
+
capName: "snapshot",
|
|
39368
|
+
capScope: "device",
|
|
39369
|
+
addonId: null,
|
|
39370
|
+
access: "view"
|
|
39371
|
+
},
|
|
37374
39372
|
"snapshot.getSnapshot": {
|
|
37375
39373
|
capName: "snapshot",
|
|
37376
39374
|
capScope: "device",
|
|
@@ -37389,6 +39387,12 @@ Object.freeze({
|
|
|
37389
39387
|
addonId: null,
|
|
37390
39388
|
access: "view"
|
|
37391
39389
|
},
|
|
39390
|
+
"snapshot.getStatus": {
|
|
39391
|
+
capName: "snapshot",
|
|
39392
|
+
capScope: "device",
|
|
39393
|
+
addonId: null,
|
|
39394
|
+
access: "view"
|
|
39395
|
+
},
|
|
37392
39396
|
"snapshot.invalidateCache": {
|
|
37393
39397
|
capName: "snapshot",
|
|
37394
39398
|
capScope: "device",
|
|
@@ -37725,6 +39729,12 @@ Object.freeze({
|
|
|
37725
39729
|
addonId: null,
|
|
37726
39730
|
access: "create"
|
|
37727
39731
|
},
|
|
39732
|
+
"streamBroker.applyDeviceSettingsPatch": {
|
|
39733
|
+
capName: "stream-broker",
|
|
39734
|
+
capScope: "system",
|
|
39735
|
+
addonId: null,
|
|
39736
|
+
access: "create"
|
|
39737
|
+
},
|
|
37728
39738
|
"streamBroker.assignProfile": {
|
|
37729
39739
|
capName: "stream-broker",
|
|
37730
39740
|
capScope: "system",
|
|
@@ -37761,6 +39771,18 @@ Object.freeze({
|
|
|
37761
39771
|
addonId: null,
|
|
37762
39772
|
access: "view"
|
|
37763
39773
|
},
|
|
39774
|
+
"streamBroker.getDeviceLiveContribution": {
|
|
39775
|
+
capName: "stream-broker",
|
|
39776
|
+
capScope: "system",
|
|
39777
|
+
addonId: null,
|
|
39778
|
+
access: "view"
|
|
39779
|
+
},
|
|
39780
|
+
"streamBroker.getDeviceSettingsContribution": {
|
|
39781
|
+
capName: "stream-broker",
|
|
39782
|
+
capScope: "system",
|
|
39783
|
+
addonId: null,
|
|
39784
|
+
access: "view"
|
|
39785
|
+
},
|
|
37764
39786
|
"streamBroker.getPreBufferInfo": {
|
|
37765
39787
|
capName: "stream-broker",
|
|
37766
39788
|
capScope: "system",
|
|
@@ -37959,6 +39981,12 @@ Object.freeze({
|
|
|
37959
39981
|
addonId: null,
|
|
37960
39982
|
access: "view"
|
|
37961
39983
|
},
|
|
39984
|
+
"streamParams.getStatus": {
|
|
39985
|
+
capName: "stream-params",
|
|
39986
|
+
capScope: "device",
|
|
39987
|
+
addonId: null,
|
|
39988
|
+
access: "view"
|
|
39989
|
+
},
|
|
37962
39990
|
"streamParams.setProfile": {
|
|
37963
39991
|
capName: "stream-params",
|
|
37964
39992
|
capScope: "device",
|
|
@@ -37971,6 +39999,12 @@ Object.freeze({
|
|
|
37971
39999
|
addonId: null,
|
|
37972
40000
|
access: "view"
|
|
37973
40001
|
},
|
|
40002
|
+
"switch.getStatus": {
|
|
40003
|
+
capName: "switch",
|
|
40004
|
+
capScope: "device",
|
|
40005
|
+
addonId: null,
|
|
40006
|
+
access: "view"
|
|
40007
|
+
},
|
|
37974
40008
|
"switch.setState": {
|
|
37975
40009
|
capName: "switch",
|
|
37976
40010
|
capScope: "device",
|
|
@@ -38067,6 +40101,18 @@ Object.freeze({
|
|
|
38067
40101
|
addonId: null,
|
|
38068
40102
|
access: "create"
|
|
38069
40103
|
},
|
|
40104
|
+
"tamper.getStatus": {
|
|
40105
|
+
capName: "tamper",
|
|
40106
|
+
capScope: "device",
|
|
40107
|
+
addonId: null,
|
|
40108
|
+
access: "view"
|
|
40109
|
+
},
|
|
40110
|
+
"temperatureSensor.getStatus": {
|
|
40111
|
+
capName: "temperature-sensor",
|
|
40112
|
+
capScope: "device",
|
|
40113
|
+
addonId: null,
|
|
40114
|
+
access: "view"
|
|
40115
|
+
},
|
|
38070
40116
|
"terminalSession.adoptLegacyMonitor": {
|
|
38071
40117
|
capName: "terminal-session",
|
|
38072
40118
|
capScope: "system",
|
|
@@ -38163,6 +40209,12 @@ Object.freeze({
|
|
|
38163
40209
|
addonId: null,
|
|
38164
40210
|
access: "view"
|
|
38165
40211
|
},
|
|
40212
|
+
"update.getStatus": {
|
|
40213
|
+
capName: "update",
|
|
40214
|
+
capScope: "device",
|
|
40215
|
+
addonId: null,
|
|
40216
|
+
access: "view"
|
|
40217
|
+
},
|
|
38166
40218
|
"update.installUpdate": {
|
|
38167
40219
|
capName: "update",
|
|
38168
40220
|
capScope: "device",
|
|
@@ -38385,6 +40437,12 @@ Object.freeze({
|
|
|
38385
40437
|
addonId: null,
|
|
38386
40438
|
access: "create"
|
|
38387
40439
|
},
|
|
40440
|
+
"vacuumControl.getStatus": {
|
|
40441
|
+
capName: "vacuum-control",
|
|
40442
|
+
capScope: "device",
|
|
40443
|
+
addonId: null,
|
|
40444
|
+
access: "view"
|
|
40445
|
+
},
|
|
38388
40446
|
"vacuumControl.locate": {
|
|
38389
40447
|
capName: "vacuum-control",
|
|
38390
40448
|
capScope: "device",
|
|
@@ -38427,6 +40485,12 @@ Object.freeze({
|
|
|
38427
40485
|
addonId: null,
|
|
38428
40486
|
access: "create"
|
|
38429
40487
|
},
|
|
40488
|
+
"valve.getStatus": {
|
|
40489
|
+
capName: "valve",
|
|
40490
|
+
capScope: "device",
|
|
40491
|
+
addonId: null,
|
|
40492
|
+
access: "view"
|
|
40493
|
+
},
|
|
38430
40494
|
"valve.open": {
|
|
38431
40495
|
capName: "valve",
|
|
38432
40496
|
capScope: "device",
|
|
@@ -38499,6 +40563,18 @@ Object.freeze({
|
|
|
38499
40563
|
addonId: null,
|
|
38500
40564
|
access: "create"
|
|
38501
40565
|
},
|
|
40566
|
+
"vibration.getStatus": {
|
|
40567
|
+
capName: "vibration",
|
|
40568
|
+
capScope: "device",
|
|
40569
|
+
addonId: null,
|
|
40570
|
+
access: "view"
|
|
40571
|
+
},
|
|
40572
|
+
"videoclips.dialClipStream": {
|
|
40573
|
+
capName: "videoclips",
|
|
40574
|
+
capScope: "device",
|
|
40575
|
+
addonId: null,
|
|
40576
|
+
access: "view"
|
|
40577
|
+
},
|
|
38502
40578
|
"videoclips.getClipPlayback": {
|
|
38503
40579
|
capName: "videoclips",
|
|
38504
40580
|
capScope: "device",
|
|
@@ -38535,6 +40611,12 @@ Object.freeze({
|
|
|
38535
40611
|
addonId: null,
|
|
38536
40612
|
access: "view"
|
|
38537
40613
|
},
|
|
40614
|
+
"waterHeater.getStatus": {
|
|
40615
|
+
capName: "water-heater",
|
|
40616
|
+
capScope: "device",
|
|
40617
|
+
addonId: null,
|
|
40618
|
+
access: "view"
|
|
40619
|
+
},
|
|
38538
40620
|
"waterHeater.setAway": {
|
|
38539
40621
|
capName: "water-heater",
|
|
38540
40622
|
capScope: "device",
|
|
@@ -38553,6 +40635,12 @@ Object.freeze({
|
|
|
38553
40635
|
addonId: null,
|
|
38554
40636
|
access: "create"
|
|
38555
40637
|
},
|
|
40638
|
+
"weather.getStatus": {
|
|
40639
|
+
capName: "weather",
|
|
40640
|
+
capScope: "device",
|
|
40641
|
+
addonId: null,
|
|
40642
|
+
access: "view"
|
|
40643
|
+
},
|
|
38556
40644
|
"webrtcSession.addIceCandidate": {
|
|
38557
40645
|
capName: "webrtc-session",
|
|
38558
40646
|
capScope: "device",
|
|
@@ -40526,6 +42614,11 @@ Object.freeze({
|
|
|
40526
42614
|
form: "single",
|
|
40527
42615
|
optional: false
|
|
40528
42616
|
}],
|
|
42617
|
+
"videoclips.dialClipStream": [{
|
|
42618
|
+
name: "deviceId",
|
|
42619
|
+
form: "single",
|
|
42620
|
+
optional: false
|
|
42621
|
+
}],
|
|
40529
42622
|
"videoclips.getClipPlayback": [{
|
|
40530
42623
|
name: "deviceId",
|
|
40531
42624
|
form: "single",
|
|
@@ -41225,7 +43318,7 @@ var AgentUIAddon = class extends BaseAddon {
|
|
|
41225
43318
|
capability: adminUiCapability,
|
|
41226
43319
|
provider: {
|
|
41227
43320
|
getStaticDir: async () => ({ staticDir: path.resolve(__dirname) }),
|
|
41228
|
-
getVersion: async () => ({ version: "1.2.
|
|
43321
|
+
getVersion: async () => ({ version: "1.2.138" })
|
|
41229
43322
|
}
|
|
41230
43323
|
}];
|
|
41231
43324
|
}
|