@camstack/addon-provider-onvif 1.2.68 → 1.2.69

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
@@ -2,7 +2,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  //#region \0rolldown/runtime.js
3
3
  var __commonJSMin = (cb, mod) => () => (mod || (cb((mod = { exports: {} }).exports, mod), cb = null), mod.exports);
4
4
  //#endregion
5
- //#region ../types/dist/event-category-BZL-fdNj.mjs
5
+ //#region ../types/dist/event-category-zAv7pMUz.mjs
6
6
  var EventCategory = /* @__PURE__ */ function(EventCategory) {
7
7
  EventCategory["SystemBoot"] = "system.boot";
8
8
  EventCategory["SystemAddonsReady"] = "system.addons-ready";
@@ -374,6 +374,13 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
374
374
  */
375
375
  EventCategory["BatteryOnStatusChanged"] = "battery.onStatusChanged";
376
376
  /**
377
+ * Cap event fired by every device that registers the `network-link`
378
+ * capability. Mirrors the cap definition's `onStatusChanged`. Carries
379
+ * `{ deviceId, status: NetworkLinkStatus }` — a link switch or a signal
380
+ * reading that moved.
381
+ */
382
+ EventCategory["NetworkLinkOnStatusChanged"] = "network-link.onStatusChanged";
383
+ /**
377
384
  * Emitted by the battery cap provider WHEN `wakeForStream` enters the
378
385
  * "wake in progress" window — between the Baichuan wake-up issue and
379
386
  * the camera's first dialed-back RTP packet. The stream-broker
@@ -23365,6 +23372,39 @@ DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, meth
23365
23372
  deviceId: number(),
23366
23373
  status: BatteryStatusSchema
23367
23374
  });
23375
+ /**
23376
+ * Network-link snapshot. Same shape for every provider (a Reolink wifi
23377
+ * camera, a Home Assistant device with a signal-strength sensor, a Tapo
23378
+ * plug): one slice under `device.runtimeState['network-link']`, one badge,
23379
+ * one Home Assistant projection.
23380
+ */
23381
+ var NetworkLinkStatusSchema = object({
23382
+ /** The link the device is on. `'unknown'` = not read yet, not "no link". */
23383
+ type: _enum([
23384
+ "wifi",
23385
+ "ethernet",
23386
+ "cellular",
23387
+ "unknown"
23388
+ ]),
23389
+ /**
23390
+ * Link quality, 0..100 inclusive, normalised by the provider from whatever
23391
+ * the firmware reports (bars, RSSI, a vendor scale). **`null` means NOT
23392
+ * KNOWN or NOT APPLICABLE** — a wired link has no signal, and a wireless
23393
+ * one whose reading has not landed must not be drawn at 0 %. Consumers
23394
+ * SKIP a null rather than coerce it.
23395
+ */
23396
+ signalPercent: number().min(0).max(100).nullable(),
23397
+ /** Raw received signal strength in dBm, when the firmware reports one. */
23398
+ rssiDbm: number().optional(),
23399
+ /** Network name of a wireless link, when the firmware reports it. */
23400
+ ssid: string().optional(),
23401
+ /** Ms epoch of the last observation. Lets consumers reason about freshness. */
23402
+ lastUpdated: number()
23403
+ });
23404
+ DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.Light, DeviceType.Lock, DeviceType.Siren, object({
23405
+ deviceId: number(),
23406
+ status: NetworkLinkStatusSchema
23407
+ });
23368
23408
  object({
23369
23409
  on: boolean(),
23370
23410
  /** Ms epoch of the last transition. 0 if never observed. */
package/dist/addon.mjs CHANGED
@@ -3,7 +3,7 @@ import { createRequire } from "node:module";
3
3
  var __commonJSMin = (cb, mod) => () => (mod || (cb((mod = { exports: {} }).exports, mod), cb = null), mod.exports);
4
4
  var __require = /* @__PURE__ */ createRequire(import.meta.url);
5
5
  //#endregion
6
- //#region ../types/dist/event-category-BZL-fdNj.mjs
6
+ //#region ../types/dist/event-category-zAv7pMUz.mjs
7
7
  var EventCategory = /* @__PURE__ */ function(EventCategory) {
8
8
  EventCategory["SystemBoot"] = "system.boot";
9
9
  EventCategory["SystemAddonsReady"] = "system.addons-ready";
@@ -375,6 +375,13 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
375
375
  */
376
376
  EventCategory["BatteryOnStatusChanged"] = "battery.onStatusChanged";
377
377
  /**
378
+ * Cap event fired by every device that registers the `network-link`
379
+ * capability. Mirrors the cap definition's `onStatusChanged`. Carries
380
+ * `{ deviceId, status: NetworkLinkStatus }` — a link switch or a signal
381
+ * reading that moved.
382
+ */
383
+ EventCategory["NetworkLinkOnStatusChanged"] = "network-link.onStatusChanged";
384
+ /**
378
385
  * Emitted by the battery cap provider WHEN `wakeForStream` enters the
379
386
  * "wake in progress" window — between the Baichuan wake-up issue and
380
387
  * the camera's first dialed-back RTP packet. The stream-broker
@@ -23366,6 +23373,39 @@ DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, meth
23366
23373
  deviceId: number(),
23367
23374
  status: BatteryStatusSchema
23368
23375
  });
23376
+ /**
23377
+ * Network-link snapshot. Same shape for every provider (a Reolink wifi
23378
+ * camera, a Home Assistant device with a signal-strength sensor, a Tapo
23379
+ * plug): one slice under `device.runtimeState['network-link']`, one badge,
23380
+ * one Home Assistant projection.
23381
+ */
23382
+ var NetworkLinkStatusSchema = object({
23383
+ /** The link the device is on. `'unknown'` = not read yet, not "no link". */
23384
+ type: _enum([
23385
+ "wifi",
23386
+ "ethernet",
23387
+ "cellular",
23388
+ "unknown"
23389
+ ]),
23390
+ /**
23391
+ * Link quality, 0..100 inclusive, normalised by the provider from whatever
23392
+ * the firmware reports (bars, RSSI, a vendor scale). **`null` means NOT
23393
+ * KNOWN or NOT APPLICABLE** — a wired link has no signal, and a wireless
23394
+ * one whose reading has not landed must not be drawn at 0 %. Consumers
23395
+ * SKIP a null rather than coerce it.
23396
+ */
23397
+ signalPercent: number().min(0).max(100).nullable(),
23398
+ /** Raw received signal strength in dBm, when the firmware reports one. */
23399
+ rssiDbm: number().optional(),
23400
+ /** Network name of a wireless link, when the firmware reports it. */
23401
+ ssid: string().optional(),
23402
+ /** Ms epoch of the last observation. Lets consumers reason about freshness. */
23403
+ lastUpdated: number()
23404
+ });
23405
+ DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.Light, DeviceType.Lock, DeviceType.Siren, object({
23406
+ deviceId: number(),
23407
+ status: NetworkLinkStatusSchema
23408
+ });
23369
23409
  object({
23370
23410
  on: boolean(),
23371
23411
  /** Ms epoch of the last transition. 0 if never observed. */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-onvif",
3
- "version": "1.2.68",
3
+ "version": "1.2.69",
4
4
  "description": "ONVIF camera device provider addon for CamStack",
5
5
  "keywords": [
6
6
  "camstack",