@camstack/addon-provider-homematic 1.2.68 → 1.2.70

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
@@ -19464,6 +19464,33 @@ var RecentTracksQueryInput = object({
19464
19464
  */
19465
19465
  classes: array(string()).optional()
19466
19466
  });
19467
+ /**
19468
+ * A Summary (D359): the per-camera session envelope that references tracks.
19469
+ * `groupShotKey` is the media key of its group shot (`ownerKind: 'summary'`,
19470
+ * served by the event-media plane by key), null until the first frame with a
19471
+ * member visible has been materialised.
19472
+ */
19473
+ var SummarySchema = object({
19474
+ id: string(),
19475
+ deviceId: number(),
19476
+ openedAt: number(),
19477
+ lastActiveAt: number(),
19478
+ sealedAt: number().nullable(),
19479
+ memberCount: number().int().nonnegative(),
19480
+ groupShotKey: string().nullable()
19481
+ });
19482
+ var SummariesQueryInput = object({
19483
+ deviceIds: array(number()).min(1),
19484
+ since: number().optional(),
19485
+ until: number().optional(),
19486
+ limit: number().int().min(1).max(200).default(50)
19487
+ });
19488
+ var SummariesPageSchema = object({ summaries: array(SummarySchema).readonly() });
19489
+ var SummaryDetailSchema = object({
19490
+ summary: SummarySchema,
19491
+ /** Member track ids, in absorption order. */
19492
+ trackIds: array(string()).readonly()
19493
+ });
19467
19494
  var RecentTracksPageSchema = object({
19468
19495
  /** Merged page, ordered by (`lastSeen` DESC, `trackId` DESC). */
19469
19496
  tracks: array(TrackSchema).readonly(),
@@ -19864,7 +19891,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
19864
19891
  * timeline would read as a camera that saw nothing.
19865
19892
  */
19866
19893
  classes: array(string()).optional()
19867
- }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(object({ deviceId: number() }), _void(), {
19894
+ }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(SummariesQueryInput, SummariesPageSchema), method(object({ id: string() }), SummaryDetailSchema.nullable()), method(object({ deviceId: number() }), _void(), {
19868
19895
  kind: "mutation",
19869
19896
  auth: "admin"
19870
19897
  }), 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({
@@ -20799,6 +20826,14 @@ var AgentPipelineSettingsSchema = object({
20799
20826
  /** Node is eligible to be the ingest / source-owner (serve the restream). */
20800
20827
  ingest: boolean().optional(),
20801
20828
  /**
20829
+ * This node's decode RAM budget, MB. Wins over the cluster
20830
+ * `nodeDecodeBudgetMb`; absent, the runner derives a share of the node's
20831
+ * own RAM unless the operator moved the cluster value (D365).
20832
+ */
20833
+ decodeBudgetMb: number().int().min(1024).max(65536).optional(),
20834
+ /** This node's live decode-worker cap. Wins over the cluster `maxLiveDecodeWorkers`. */
20835
+ maxLiveDecodeWorkers: number().int().min(1).max(32).optional(),
20836
+ /**
20802
20837
  * Operator override for the LAN host a cross-node decoder dials to reach
20803
20838
  * THIS node's restream (Cluster UI). Absent → auto-detect: a remote runner
20804
20839
  * falls back to its `CAMSTACK_HUB_URL`-derived host (the Moleculer address
@@ -21260,6 +21295,13 @@ method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
21260
21295
  }), object({ success: literal(true) }), {
21261
21296
  kind: "mutation",
21262
21297
  auth: "admin"
21298
+ }), method(object({
21299
+ agentNodeId: string(),
21300
+ decodeBudgetMb: number().int().min(1024).max(65536).nullable().optional(),
21301
+ maxLiveDecodeWorkers: number().int().min(1).max(32).nullable().optional()
21302
+ }), object({ success: literal(true) }), {
21303
+ kind: "mutation",
21304
+ auth: "admin"
21263
21305
  }), method(object({
21264
21306
  agentNodeId: string(),
21265
21307
  reachableHost: string().nullable()
@@ -36583,6 +36625,12 @@ Object.freeze({
36583
36625
  addonId: null,
36584
36626
  access: "view"
36585
36627
  },
36628
+ "pipelineAnalytics.getSummary": {
36629
+ capName: "pipeline-analytics",
36630
+ capScope: "device",
36631
+ addonId: null,
36632
+ access: "view"
36633
+ },
36586
36634
  "pipelineAnalytics.getTrack": {
36587
36635
  capName: "pipeline-analytics",
36588
36636
  capScope: "device",
@@ -36661,6 +36709,12 @@ Object.freeze({
36661
36709
  addonId: null,
36662
36710
  access: "view"
36663
36711
  },
36712
+ "pipelineAnalytics.listSummaries": {
36713
+ capName: "pipeline-analytics",
36714
+ capScope: "device",
36715
+ addonId: null,
36716
+ access: "view"
36717
+ },
36664
36718
  "pipelineAnalytics.listTrackMedia": {
36665
36719
  capName: "pipeline-analytics",
36666
36720
  capScope: "device",
@@ -37219,6 +37273,12 @@ Object.freeze({
37219
37273
  addonId: null,
37220
37274
  access: "create"
37221
37275
  },
37276
+ "pipelineOrchestrator.setAgentDecodeLimits": {
37277
+ capName: "pipeline-orchestrator",
37278
+ capScope: "system",
37279
+ addonId: null,
37280
+ access: "create"
37281
+ },
37222
37282
  "pipelineOrchestrator.setAgentDetectWeight": {
37223
37283
  capName: "pipeline-orchestrator",
37224
37284
  capScope: "system",
@@ -40350,6 +40410,11 @@ Object.freeze({
40350
40410
  form: "array",
40351
40411
  optional: true
40352
40412
  }],
40413
+ "pipelineAnalytics.listSummaries": [{
40414
+ name: "deviceIds",
40415
+ form: "array",
40416
+ optional: false
40417
+ }],
40353
40418
  "pipelineAnalytics.listTrackMedia": [{
40354
40419
  name: "deviceId",
40355
40420
  form: "single",
package/dist/addon.mjs CHANGED
@@ -19465,6 +19465,33 @@ var RecentTracksQueryInput = object({
19465
19465
  */
19466
19466
  classes: array(string()).optional()
19467
19467
  });
19468
+ /**
19469
+ * A Summary (D359): the per-camera session envelope that references tracks.
19470
+ * `groupShotKey` is the media key of its group shot (`ownerKind: 'summary'`,
19471
+ * served by the event-media plane by key), null until the first frame with a
19472
+ * member visible has been materialised.
19473
+ */
19474
+ var SummarySchema = object({
19475
+ id: string(),
19476
+ deviceId: number(),
19477
+ openedAt: number(),
19478
+ lastActiveAt: number(),
19479
+ sealedAt: number().nullable(),
19480
+ memberCount: number().int().nonnegative(),
19481
+ groupShotKey: string().nullable()
19482
+ });
19483
+ var SummariesQueryInput = object({
19484
+ deviceIds: array(number()).min(1),
19485
+ since: number().optional(),
19486
+ until: number().optional(),
19487
+ limit: number().int().min(1).max(200).default(50)
19488
+ });
19489
+ var SummariesPageSchema = object({ summaries: array(SummarySchema).readonly() });
19490
+ var SummaryDetailSchema = object({
19491
+ summary: SummarySchema,
19492
+ /** Member track ids, in absorption order. */
19493
+ trackIds: array(string()).readonly()
19494
+ });
19468
19495
  var RecentTracksPageSchema = object({
19469
19496
  /** Merged page, ordered by (`lastSeen` DESC, `trackId` DESC). */
19470
19497
  tracks: array(TrackSchema).readonly(),
@@ -19865,7 +19892,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
19865
19892
  * timeline would read as a camera that saw nothing.
19866
19893
  */
19867
19894
  classes: array(string()).optional()
19868
- }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(object({ deviceId: number() }), _void(), {
19895
+ }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(SummariesQueryInput, SummariesPageSchema), method(object({ id: string() }), SummaryDetailSchema.nullable()), method(object({ deviceId: number() }), _void(), {
19869
19896
  kind: "mutation",
19870
19897
  auth: "admin"
19871
19898
  }), 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({
@@ -20800,6 +20827,14 @@ var AgentPipelineSettingsSchema = object({
20800
20827
  /** Node is eligible to be the ingest / source-owner (serve the restream). */
20801
20828
  ingest: boolean().optional(),
20802
20829
  /**
20830
+ * This node's decode RAM budget, MB. Wins over the cluster
20831
+ * `nodeDecodeBudgetMb`; absent, the runner derives a share of the node's
20832
+ * own RAM unless the operator moved the cluster value (D365).
20833
+ */
20834
+ decodeBudgetMb: number().int().min(1024).max(65536).optional(),
20835
+ /** This node's live decode-worker cap. Wins over the cluster `maxLiveDecodeWorkers`. */
20836
+ maxLiveDecodeWorkers: number().int().min(1).max(32).optional(),
20837
+ /**
20803
20838
  * Operator override for the LAN host a cross-node decoder dials to reach
20804
20839
  * THIS node's restream (Cluster UI). Absent → auto-detect: a remote runner
20805
20840
  * falls back to its `CAMSTACK_HUB_URL`-derived host (the Moleculer address
@@ -21261,6 +21296,13 @@ method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
21261
21296
  }), object({ success: literal(true) }), {
21262
21297
  kind: "mutation",
21263
21298
  auth: "admin"
21299
+ }), method(object({
21300
+ agentNodeId: string(),
21301
+ decodeBudgetMb: number().int().min(1024).max(65536).nullable().optional(),
21302
+ maxLiveDecodeWorkers: number().int().min(1).max(32).nullable().optional()
21303
+ }), object({ success: literal(true) }), {
21304
+ kind: "mutation",
21305
+ auth: "admin"
21264
21306
  }), method(object({
21265
21307
  agentNodeId: string(),
21266
21308
  reachableHost: string().nullable()
@@ -36584,6 +36626,12 @@ Object.freeze({
36584
36626
  addonId: null,
36585
36627
  access: "view"
36586
36628
  },
36629
+ "pipelineAnalytics.getSummary": {
36630
+ capName: "pipeline-analytics",
36631
+ capScope: "device",
36632
+ addonId: null,
36633
+ access: "view"
36634
+ },
36587
36635
  "pipelineAnalytics.getTrack": {
36588
36636
  capName: "pipeline-analytics",
36589
36637
  capScope: "device",
@@ -36662,6 +36710,12 @@ Object.freeze({
36662
36710
  addonId: null,
36663
36711
  access: "view"
36664
36712
  },
36713
+ "pipelineAnalytics.listSummaries": {
36714
+ capName: "pipeline-analytics",
36715
+ capScope: "device",
36716
+ addonId: null,
36717
+ access: "view"
36718
+ },
36665
36719
  "pipelineAnalytics.listTrackMedia": {
36666
36720
  capName: "pipeline-analytics",
36667
36721
  capScope: "device",
@@ -37220,6 +37274,12 @@ Object.freeze({
37220
37274
  addonId: null,
37221
37275
  access: "create"
37222
37276
  },
37277
+ "pipelineOrchestrator.setAgentDecodeLimits": {
37278
+ capName: "pipeline-orchestrator",
37279
+ capScope: "system",
37280
+ addonId: null,
37281
+ access: "create"
37282
+ },
37223
37283
  "pipelineOrchestrator.setAgentDetectWeight": {
37224
37284
  capName: "pipeline-orchestrator",
37225
37285
  capScope: "system",
@@ -40351,6 +40411,11 @@ Object.freeze({
40351
40411
  form: "array",
40352
40412
  optional: true
40353
40413
  }],
40414
+ "pipelineAnalytics.listSummaries": [{
40415
+ name: "deviceIds",
40416
+ form: "array",
40417
+ optional: false
40418
+ }],
40354
40419
  "pipelineAnalytics.listTrackMedia": [{
40355
40420
  name: "deviceId",
40356
40421
  form: "single",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-homematic",
3
- "version": "1.2.68",
3
+ "version": "1.2.70",
4
4
  "description": "Homematic / HomematicIP (CCU3 / RaspberryMatic) device-provider addon for CamStack — wraps the nodehomematic library",
5
5
  "keywords": [
6
6
  "camstack",