@camstack/addon-provider-hikvision 1.2.75 → 1.2.77

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
@@ -19696,6 +19696,33 @@ var RecentTracksQueryInput = object({
19696
19696
  */
19697
19697
  classes: array(string()).optional()
19698
19698
  });
19699
+ /**
19700
+ * A Summary (D359): the per-camera session envelope that references tracks.
19701
+ * `groupShotKey` is the media key of its group shot (`ownerKind: 'summary'`,
19702
+ * served by the event-media plane by key), null until the first frame with a
19703
+ * member visible has been materialised.
19704
+ */
19705
+ var SummarySchema = object({
19706
+ id: string(),
19707
+ deviceId: number(),
19708
+ openedAt: number(),
19709
+ lastActiveAt: number(),
19710
+ sealedAt: number().nullable(),
19711
+ memberCount: number().int().nonnegative(),
19712
+ groupShotKey: string().nullable()
19713
+ });
19714
+ var SummariesQueryInput = object({
19715
+ deviceIds: array(number()).min(1),
19716
+ since: number().optional(),
19717
+ until: number().optional(),
19718
+ limit: number().int().min(1).max(200).default(50)
19719
+ });
19720
+ var SummariesPageSchema = object({ summaries: array(SummarySchema).readonly() });
19721
+ var SummaryDetailSchema = object({
19722
+ summary: SummarySchema,
19723
+ /** Member track ids, in absorption order. */
19724
+ trackIds: array(string()).readonly()
19725
+ });
19699
19726
  var RecentTracksPageSchema = object({
19700
19727
  /** Merged page, ordered by (`lastSeen` DESC, `trackId` DESC). */
19701
19728
  tracks: array(TrackSchema).readonly(),
@@ -20096,7 +20123,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
20096
20123
  * timeline would read as a camera that saw nothing.
20097
20124
  */
20098
20125
  classes: array(string()).optional()
20099
- }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(object({ deviceId: number() }), _void(), {
20126
+ }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(SummariesQueryInput, SummariesPageSchema), method(object({ id: string() }), SummaryDetailSchema.nullable()), method(object({ deviceId: number() }), _void(), {
20100
20127
  kind: "mutation",
20101
20128
  auth: "admin"
20102
20129
  }), 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({
@@ -21031,6 +21058,14 @@ var AgentPipelineSettingsSchema = object({
21031
21058
  /** Node is eligible to be the ingest / source-owner (serve the restream). */
21032
21059
  ingest: boolean().optional(),
21033
21060
  /**
21061
+ * This node's decode RAM budget, MB. Wins over the cluster
21062
+ * `nodeDecodeBudgetMb`; absent, the runner derives a share of the node's
21063
+ * own RAM unless the operator moved the cluster value (D365).
21064
+ */
21065
+ decodeBudgetMb: number().int().min(1024).max(65536).optional(),
21066
+ /** This node's live decode-worker cap. Wins over the cluster `maxLiveDecodeWorkers`. */
21067
+ maxLiveDecodeWorkers: number().int().min(1).max(32).optional(),
21068
+ /**
21034
21069
  * Operator override for the LAN host a cross-node decoder dials to reach
21035
21070
  * THIS node's restream (Cluster UI). Absent → auto-detect: a remote runner
21036
21071
  * falls back to its `CAMSTACK_HUB_URL`-derived host (the Moleculer address
@@ -21492,6 +21527,13 @@ method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
21492
21527
  }), object({ success: literal(true) }), {
21493
21528
  kind: "mutation",
21494
21529
  auth: "admin"
21530
+ }), method(object({
21531
+ agentNodeId: string(),
21532
+ decodeBudgetMb: number().int().min(1024).max(65536).nullable().optional(),
21533
+ maxLiveDecodeWorkers: number().int().min(1).max(32).nullable().optional()
21534
+ }), object({ success: literal(true) }), {
21535
+ kind: "mutation",
21536
+ auth: "admin"
21495
21537
  }), method(object({
21496
21538
  agentNodeId: string(),
21497
21539
  reachableHost: string().nullable()
@@ -37483,6 +37525,12 @@ Object.freeze({
37483
37525
  addonId: null,
37484
37526
  access: "view"
37485
37527
  },
37528
+ "pipelineAnalytics.getSummary": {
37529
+ capName: "pipeline-analytics",
37530
+ capScope: "device",
37531
+ addonId: null,
37532
+ access: "view"
37533
+ },
37486
37534
  "pipelineAnalytics.getTrack": {
37487
37535
  capName: "pipeline-analytics",
37488
37536
  capScope: "device",
@@ -37561,6 +37609,12 @@ Object.freeze({
37561
37609
  addonId: null,
37562
37610
  access: "view"
37563
37611
  },
37612
+ "pipelineAnalytics.listSummaries": {
37613
+ capName: "pipeline-analytics",
37614
+ capScope: "device",
37615
+ addonId: null,
37616
+ access: "view"
37617
+ },
37564
37618
  "pipelineAnalytics.listTrackMedia": {
37565
37619
  capName: "pipeline-analytics",
37566
37620
  capScope: "device",
@@ -38119,6 +38173,12 @@ Object.freeze({
38119
38173
  addonId: null,
38120
38174
  access: "create"
38121
38175
  },
38176
+ "pipelineOrchestrator.setAgentDecodeLimits": {
38177
+ capName: "pipeline-orchestrator",
38178
+ capScope: "system",
38179
+ addonId: null,
38180
+ access: "create"
38181
+ },
38122
38182
  "pipelineOrchestrator.setAgentDetectWeight": {
38123
38183
  capName: "pipeline-orchestrator",
38124
38184
  capScope: "system",
@@ -41250,6 +41310,11 @@ Object.freeze({
41250
41310
  form: "array",
41251
41311
  optional: true
41252
41312
  }],
41313
+ "pipelineAnalytics.listSummaries": [{
41314
+ name: "deviceIds",
41315
+ form: "array",
41316
+ optional: false
41317
+ }],
41253
41318
  "pipelineAnalytics.listTrackMedia": [{
41254
41319
  name: "deviceId",
41255
41320
  form: "single",
package/dist/addon.mjs CHANGED
@@ -19697,6 +19697,33 @@ var RecentTracksQueryInput = object({
19697
19697
  */
19698
19698
  classes: array(string()).optional()
19699
19699
  });
19700
+ /**
19701
+ * A Summary (D359): the per-camera session envelope that references tracks.
19702
+ * `groupShotKey` is the media key of its group shot (`ownerKind: 'summary'`,
19703
+ * served by the event-media plane by key), null until the first frame with a
19704
+ * member visible has been materialised.
19705
+ */
19706
+ var SummarySchema = object({
19707
+ id: string(),
19708
+ deviceId: number(),
19709
+ openedAt: number(),
19710
+ lastActiveAt: number(),
19711
+ sealedAt: number().nullable(),
19712
+ memberCount: number().int().nonnegative(),
19713
+ groupShotKey: string().nullable()
19714
+ });
19715
+ var SummariesQueryInput = object({
19716
+ deviceIds: array(number()).min(1),
19717
+ since: number().optional(),
19718
+ until: number().optional(),
19719
+ limit: number().int().min(1).max(200).default(50)
19720
+ });
19721
+ var SummariesPageSchema = object({ summaries: array(SummarySchema).readonly() });
19722
+ var SummaryDetailSchema = object({
19723
+ summary: SummarySchema,
19724
+ /** Member track ids, in absorption order. */
19725
+ trackIds: array(string()).readonly()
19726
+ });
19700
19727
  var RecentTracksPageSchema = object({
19701
19728
  /** Merged page, ordered by (`lastSeen` DESC, `trackId` DESC). */
19702
19729
  tracks: array(TrackSchema).readonly(),
@@ -20097,7 +20124,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
20097
20124
  * timeline would read as a camera that saw nothing.
20098
20125
  */
20099
20126
  classes: array(string()).optional()
20100
- }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(object({ deviceId: number() }), _void(), {
20127
+ }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(SummariesQueryInput, SummariesPageSchema), method(object({ id: string() }), SummaryDetailSchema.nullable()), method(object({ deviceId: number() }), _void(), {
20101
20128
  kind: "mutation",
20102
20129
  auth: "admin"
20103
20130
  }), 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({
@@ -21032,6 +21059,14 @@ var AgentPipelineSettingsSchema = object({
21032
21059
  /** Node is eligible to be the ingest / source-owner (serve the restream). */
21033
21060
  ingest: boolean().optional(),
21034
21061
  /**
21062
+ * This node's decode RAM budget, MB. Wins over the cluster
21063
+ * `nodeDecodeBudgetMb`; absent, the runner derives a share of the node's
21064
+ * own RAM unless the operator moved the cluster value (D365).
21065
+ */
21066
+ decodeBudgetMb: number().int().min(1024).max(65536).optional(),
21067
+ /** This node's live decode-worker cap. Wins over the cluster `maxLiveDecodeWorkers`. */
21068
+ maxLiveDecodeWorkers: number().int().min(1).max(32).optional(),
21069
+ /**
21035
21070
  * Operator override for the LAN host a cross-node decoder dials to reach
21036
21071
  * THIS node's restream (Cluster UI). Absent → auto-detect: a remote runner
21037
21072
  * falls back to its `CAMSTACK_HUB_URL`-derived host (the Moleculer address
@@ -21493,6 +21528,13 @@ method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
21493
21528
  }), object({ success: literal(true) }), {
21494
21529
  kind: "mutation",
21495
21530
  auth: "admin"
21531
+ }), method(object({
21532
+ agentNodeId: string(),
21533
+ decodeBudgetMb: number().int().min(1024).max(65536).nullable().optional(),
21534
+ maxLiveDecodeWorkers: number().int().min(1).max(32).nullable().optional()
21535
+ }), object({ success: literal(true) }), {
21536
+ kind: "mutation",
21537
+ auth: "admin"
21496
21538
  }), method(object({
21497
21539
  agentNodeId: string(),
21498
21540
  reachableHost: string().nullable()
@@ -37484,6 +37526,12 @@ Object.freeze({
37484
37526
  addonId: null,
37485
37527
  access: "view"
37486
37528
  },
37529
+ "pipelineAnalytics.getSummary": {
37530
+ capName: "pipeline-analytics",
37531
+ capScope: "device",
37532
+ addonId: null,
37533
+ access: "view"
37534
+ },
37487
37535
  "pipelineAnalytics.getTrack": {
37488
37536
  capName: "pipeline-analytics",
37489
37537
  capScope: "device",
@@ -37562,6 +37610,12 @@ Object.freeze({
37562
37610
  addonId: null,
37563
37611
  access: "view"
37564
37612
  },
37613
+ "pipelineAnalytics.listSummaries": {
37614
+ capName: "pipeline-analytics",
37615
+ capScope: "device",
37616
+ addonId: null,
37617
+ access: "view"
37618
+ },
37565
37619
  "pipelineAnalytics.listTrackMedia": {
37566
37620
  capName: "pipeline-analytics",
37567
37621
  capScope: "device",
@@ -38120,6 +38174,12 @@ Object.freeze({
38120
38174
  addonId: null,
38121
38175
  access: "create"
38122
38176
  },
38177
+ "pipelineOrchestrator.setAgentDecodeLimits": {
38178
+ capName: "pipeline-orchestrator",
38179
+ capScope: "system",
38180
+ addonId: null,
38181
+ access: "create"
38182
+ },
38123
38183
  "pipelineOrchestrator.setAgentDetectWeight": {
38124
38184
  capName: "pipeline-orchestrator",
38125
38185
  capScope: "system",
@@ -41251,6 +41311,11 @@ Object.freeze({
41251
41311
  form: "array",
41252
41312
  optional: true
41253
41313
  }],
41314
+ "pipelineAnalytics.listSummaries": [{
41315
+ name: "deviceIds",
41316
+ form: "array",
41317
+ optional: false
41318
+ }],
41254
41319
  "pipelineAnalytics.listTrackMedia": [{
41255
41320
  name: "deviceId",
41256
41321
  form: "single",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-hikvision",
3
- "version": "1.2.75",
3
+ "version": "1.2.77",
4
4
  "description": "Hikvision camera device provider addon for CamStack — ISAPI over HTTP(S) with digest auth (snapshot, alarm stream, RTSP discovery)",
5
5
  "keywords": [
6
6
  "camstack",