@camstack/addon-provider-dreo 0.2.67 → 0.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
@@ -19442,6 +19442,33 @@ var RecentTracksQueryInput = object({
19442
19442
  */
19443
19443
  classes: array(string()).optional()
19444
19444
  });
19445
+ /**
19446
+ * A Summary (D359): the per-camera session envelope that references tracks.
19447
+ * `groupShotKey` is the media key of its group shot (`ownerKind: 'summary'`,
19448
+ * served by the event-media plane by key), null until the first frame with a
19449
+ * member visible has been materialised.
19450
+ */
19451
+ var SummarySchema = object({
19452
+ id: string(),
19453
+ deviceId: number(),
19454
+ openedAt: number(),
19455
+ lastActiveAt: number(),
19456
+ sealedAt: number().nullable(),
19457
+ memberCount: number().int().nonnegative(),
19458
+ groupShotKey: string().nullable()
19459
+ });
19460
+ var SummariesQueryInput = object({
19461
+ deviceIds: array(number()).min(1),
19462
+ since: number().optional(),
19463
+ until: number().optional(),
19464
+ limit: number().int().min(1).max(200).default(50)
19465
+ });
19466
+ var SummariesPageSchema = object({ summaries: array(SummarySchema).readonly() });
19467
+ var SummaryDetailSchema = object({
19468
+ summary: SummarySchema,
19469
+ /** Member track ids, in absorption order. */
19470
+ trackIds: array(string()).readonly()
19471
+ });
19445
19472
  var RecentTracksPageSchema = object({
19446
19473
  /** Merged page, ordered by (`lastSeen` DESC, `trackId` DESC). */
19447
19474
  tracks: array(TrackSchema).readonly(),
@@ -19842,7 +19869,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
19842
19869
  * timeline would read as a camera that saw nothing.
19843
19870
  */
19844
19871
  classes: array(string()).optional()
19845
- }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(object({ deviceId: number() }), _void(), {
19872
+ }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(SummariesQueryInput, SummariesPageSchema), method(object({ id: string() }), SummaryDetailSchema.nullable()), method(object({ deviceId: number() }), _void(), {
19846
19873
  kind: "mutation",
19847
19874
  auth: "admin"
19848
19875
  }), method(DeviceEventQueryInput, array(MotionEventSchema).readonly()), method(ObjectEventQueryInput, array(ObjectEventSchema).readonly()), method(DeviceEventQueryInput, array(AudioEventSchema).readonly()), method(object({ deviceId: number() }), array(EventKindDescriptorSchema).readonly()), method(object({ deviceIds: array(number()).min(1).max(200) }), array(EventKindsForDeviceSchema).readonly()), method(object({
@@ -20777,6 +20804,14 @@ var AgentPipelineSettingsSchema = object({
20777
20804
  /** Node is eligible to be the ingest / source-owner (serve the restream). */
20778
20805
  ingest: boolean().optional(),
20779
20806
  /**
20807
+ * This node's decode RAM budget, MB. Wins over the cluster
20808
+ * `nodeDecodeBudgetMb`; absent, the runner derives a share of the node's
20809
+ * own RAM unless the operator moved the cluster value (D365).
20810
+ */
20811
+ decodeBudgetMb: number().int().min(1024).max(65536).optional(),
20812
+ /** This node's live decode-worker cap. Wins over the cluster `maxLiveDecodeWorkers`. */
20813
+ maxLiveDecodeWorkers: number().int().min(1).max(32).optional(),
20814
+ /**
20780
20815
  * Operator override for the LAN host a cross-node decoder dials to reach
20781
20816
  * THIS node's restream (Cluster UI). Absent → auto-detect: a remote runner
20782
20817
  * falls back to its `CAMSTACK_HUB_URL`-derived host (the Moleculer address
@@ -21238,6 +21273,13 @@ method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
21238
21273
  }), object({ success: literal(true) }), {
21239
21274
  kind: "mutation",
21240
21275
  auth: "admin"
21276
+ }), method(object({
21277
+ agentNodeId: string(),
21278
+ decodeBudgetMb: number().int().min(1024).max(65536).nullable().optional(),
21279
+ maxLiveDecodeWorkers: number().int().min(1).max(32).nullable().optional()
21280
+ }), object({ success: literal(true) }), {
21281
+ kind: "mutation",
21282
+ auth: "admin"
21241
21283
  }), method(object({
21242
21284
  agentNodeId: string(),
21243
21285
  reachableHost: string().nullable()
@@ -36569,6 +36611,12 @@ Object.freeze({
36569
36611
  addonId: null,
36570
36612
  access: "view"
36571
36613
  },
36614
+ "pipelineAnalytics.getSummary": {
36615
+ capName: "pipeline-analytics",
36616
+ capScope: "device",
36617
+ addonId: null,
36618
+ access: "view"
36619
+ },
36572
36620
  "pipelineAnalytics.getTrack": {
36573
36621
  capName: "pipeline-analytics",
36574
36622
  capScope: "device",
@@ -36647,6 +36695,12 @@ Object.freeze({
36647
36695
  addonId: null,
36648
36696
  access: "view"
36649
36697
  },
36698
+ "pipelineAnalytics.listSummaries": {
36699
+ capName: "pipeline-analytics",
36700
+ capScope: "device",
36701
+ addonId: null,
36702
+ access: "view"
36703
+ },
36650
36704
  "pipelineAnalytics.listTrackMedia": {
36651
36705
  capName: "pipeline-analytics",
36652
36706
  capScope: "device",
@@ -37205,6 +37259,12 @@ Object.freeze({
37205
37259
  addonId: null,
37206
37260
  access: "create"
37207
37261
  },
37262
+ "pipelineOrchestrator.setAgentDecodeLimits": {
37263
+ capName: "pipeline-orchestrator",
37264
+ capScope: "system",
37265
+ addonId: null,
37266
+ access: "create"
37267
+ },
37208
37268
  "pipelineOrchestrator.setAgentDetectWeight": {
37209
37269
  capName: "pipeline-orchestrator",
37210
37270
  capScope: "system",
@@ -40336,6 +40396,11 @@ Object.freeze({
40336
40396
  form: "array",
40337
40397
  optional: true
40338
40398
  }],
40399
+ "pipelineAnalytics.listSummaries": [{
40400
+ name: "deviceIds",
40401
+ form: "array",
40402
+ optional: false
40403
+ }],
40339
40404
  "pipelineAnalytics.listTrackMedia": [{
40340
40405
  name: "deviceId",
40341
40406
  form: "single",
package/dist/addon.mjs CHANGED
@@ -19443,6 +19443,33 @@ var RecentTracksQueryInput = object({
19443
19443
  */
19444
19444
  classes: array(string()).optional()
19445
19445
  });
19446
+ /**
19447
+ * A Summary (D359): the per-camera session envelope that references tracks.
19448
+ * `groupShotKey` is the media key of its group shot (`ownerKind: 'summary'`,
19449
+ * served by the event-media plane by key), null until the first frame with a
19450
+ * member visible has been materialised.
19451
+ */
19452
+ var SummarySchema = object({
19453
+ id: string(),
19454
+ deviceId: number(),
19455
+ openedAt: number(),
19456
+ lastActiveAt: number(),
19457
+ sealedAt: number().nullable(),
19458
+ memberCount: number().int().nonnegative(),
19459
+ groupShotKey: string().nullable()
19460
+ });
19461
+ var SummariesQueryInput = object({
19462
+ deviceIds: array(number()).min(1),
19463
+ since: number().optional(),
19464
+ until: number().optional(),
19465
+ limit: number().int().min(1).max(200).default(50)
19466
+ });
19467
+ var SummariesPageSchema = object({ summaries: array(SummarySchema).readonly() });
19468
+ var SummaryDetailSchema = object({
19469
+ summary: SummarySchema,
19470
+ /** Member track ids, in absorption order. */
19471
+ trackIds: array(string()).readonly()
19472
+ });
19446
19473
  var RecentTracksPageSchema = object({
19447
19474
  /** Merged page, ordered by (`lastSeen` DESC, `trackId` DESC). */
19448
19475
  tracks: array(TrackSchema).readonly(),
@@ -19843,7 +19870,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
19843
19870
  * timeline would read as a camera that saw nothing.
19844
19871
  */
19845
19872
  classes: array(string()).optional()
19846
- }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(object({ deviceId: number() }), _void(), {
19873
+ }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(SummariesQueryInput, SummariesPageSchema), method(object({ id: string() }), SummaryDetailSchema.nullable()), method(object({ deviceId: number() }), _void(), {
19847
19874
  kind: "mutation",
19848
19875
  auth: "admin"
19849
19876
  }), method(DeviceEventQueryInput, array(MotionEventSchema).readonly()), method(ObjectEventQueryInput, array(ObjectEventSchema).readonly()), method(DeviceEventQueryInput, array(AudioEventSchema).readonly()), method(object({ deviceId: number() }), array(EventKindDescriptorSchema).readonly()), method(object({ deviceIds: array(number()).min(1).max(200) }), array(EventKindsForDeviceSchema).readonly()), method(object({
@@ -20778,6 +20805,14 @@ var AgentPipelineSettingsSchema = object({
20778
20805
  /** Node is eligible to be the ingest / source-owner (serve the restream). */
20779
20806
  ingest: boolean().optional(),
20780
20807
  /**
20808
+ * This node's decode RAM budget, MB. Wins over the cluster
20809
+ * `nodeDecodeBudgetMb`; absent, the runner derives a share of the node's
20810
+ * own RAM unless the operator moved the cluster value (D365).
20811
+ */
20812
+ decodeBudgetMb: number().int().min(1024).max(65536).optional(),
20813
+ /** This node's live decode-worker cap. Wins over the cluster `maxLiveDecodeWorkers`. */
20814
+ maxLiveDecodeWorkers: number().int().min(1).max(32).optional(),
20815
+ /**
20781
20816
  * Operator override for the LAN host a cross-node decoder dials to reach
20782
20817
  * THIS node's restream (Cluster UI). Absent → auto-detect: a remote runner
20783
20818
  * falls back to its `CAMSTACK_HUB_URL`-derived host (the Moleculer address
@@ -21239,6 +21274,13 @@ method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
21239
21274
  }), object({ success: literal(true) }), {
21240
21275
  kind: "mutation",
21241
21276
  auth: "admin"
21277
+ }), method(object({
21278
+ agentNodeId: string(),
21279
+ decodeBudgetMb: number().int().min(1024).max(65536).nullable().optional(),
21280
+ maxLiveDecodeWorkers: number().int().min(1).max(32).nullable().optional()
21281
+ }), object({ success: literal(true) }), {
21282
+ kind: "mutation",
21283
+ auth: "admin"
21242
21284
  }), method(object({
21243
21285
  agentNodeId: string(),
21244
21286
  reachableHost: string().nullable()
@@ -36570,6 +36612,12 @@ Object.freeze({
36570
36612
  addonId: null,
36571
36613
  access: "view"
36572
36614
  },
36615
+ "pipelineAnalytics.getSummary": {
36616
+ capName: "pipeline-analytics",
36617
+ capScope: "device",
36618
+ addonId: null,
36619
+ access: "view"
36620
+ },
36573
36621
  "pipelineAnalytics.getTrack": {
36574
36622
  capName: "pipeline-analytics",
36575
36623
  capScope: "device",
@@ -36648,6 +36696,12 @@ Object.freeze({
36648
36696
  addonId: null,
36649
36697
  access: "view"
36650
36698
  },
36699
+ "pipelineAnalytics.listSummaries": {
36700
+ capName: "pipeline-analytics",
36701
+ capScope: "device",
36702
+ addonId: null,
36703
+ access: "view"
36704
+ },
36651
36705
  "pipelineAnalytics.listTrackMedia": {
36652
36706
  capName: "pipeline-analytics",
36653
36707
  capScope: "device",
@@ -37206,6 +37260,12 @@ Object.freeze({
37206
37260
  addonId: null,
37207
37261
  access: "create"
37208
37262
  },
37263
+ "pipelineOrchestrator.setAgentDecodeLimits": {
37264
+ capName: "pipeline-orchestrator",
37265
+ capScope: "system",
37266
+ addonId: null,
37267
+ access: "create"
37268
+ },
37209
37269
  "pipelineOrchestrator.setAgentDetectWeight": {
37210
37270
  capName: "pipeline-orchestrator",
37211
37271
  capScope: "system",
@@ -40337,6 +40397,11 @@ Object.freeze({
40337
40397
  form: "array",
40338
40398
  optional: true
40339
40399
  }],
40400
+ "pipelineAnalytics.listSummaries": [{
40401
+ name: "deviceIds",
40402
+ form: "array",
40403
+ optional: false
40404
+ }],
40340
40405
  "pipelineAnalytics.listTrackMedia": [{
40341
40406
  name: "deviceId",
40342
40407
  form: "single",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-dreo",
3
- "version": "0.2.67",
3
+ "version": "0.2.69",
4
4
  "description": "Dreo smart-device (fan / air-circulator / purifier / heater / humidifier) device-provider addon for CamStack — wraps the @apocaliss92/nodedreo Dreo cloud client (REST + WebSocket)",
5
5
  "keywords": [
6
6
  "camstack",