@camstack/addon-mqtt-broker 1.2.67 → 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.
@@ -19118,6 +19118,33 @@ var RecentTracksQueryInput = object({
19118
19118
  */
19119
19119
  classes: array(string()).optional()
19120
19120
  });
19121
+ /**
19122
+ * A Summary (D359): the per-camera session envelope that references tracks.
19123
+ * `groupShotKey` is the media key of its group shot (`ownerKind: 'summary'`,
19124
+ * served by the event-media plane by key), null until the first frame with a
19125
+ * member visible has been materialised.
19126
+ */
19127
+ var SummarySchema = object({
19128
+ id: string(),
19129
+ deviceId: number(),
19130
+ openedAt: number(),
19131
+ lastActiveAt: number(),
19132
+ sealedAt: number().nullable(),
19133
+ memberCount: number().int().nonnegative(),
19134
+ groupShotKey: string().nullable()
19135
+ });
19136
+ var SummariesQueryInput = object({
19137
+ deviceIds: array(number()).min(1),
19138
+ since: number().optional(),
19139
+ until: number().optional(),
19140
+ limit: number().int().min(1).max(200).default(50)
19141
+ });
19142
+ var SummariesPageSchema = object({ summaries: array(SummarySchema).readonly() });
19143
+ var SummaryDetailSchema = object({
19144
+ summary: SummarySchema,
19145
+ /** Member track ids, in absorption order. */
19146
+ trackIds: array(string()).readonly()
19147
+ });
19121
19148
  var RecentTracksPageSchema = object({
19122
19149
  /** Merged page, ordered by (`lastSeen` DESC, `trackId` DESC). */
19123
19150
  tracks: array(TrackSchema).readonly(),
@@ -19518,7 +19545,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
19518
19545
  * timeline would read as a camera that saw nothing.
19519
19546
  */
19520
19547
  classes: array(string()).optional()
19521
- }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(object({ deviceId: number() }), _void(), {
19548
+ }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(SummariesQueryInput, SummariesPageSchema), method(object({ id: string() }), SummaryDetailSchema.nullable()), method(object({ deviceId: number() }), _void(), {
19522
19549
  kind: "mutation",
19523
19550
  auth: "admin"
19524
19551
  }), 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({
@@ -20453,6 +20480,14 @@ var AgentPipelineSettingsSchema = object({
20453
20480
  /** Node is eligible to be the ingest / source-owner (serve the restream). */
20454
20481
  ingest: boolean().optional(),
20455
20482
  /**
20483
+ * This node's decode RAM budget, MB. Wins over the cluster
20484
+ * `nodeDecodeBudgetMb`; absent, the runner derives a share of the node's
20485
+ * own RAM unless the operator moved the cluster value (D365).
20486
+ */
20487
+ decodeBudgetMb: number().int().min(1024).max(65536).optional(),
20488
+ /** This node's live decode-worker cap. Wins over the cluster `maxLiveDecodeWorkers`. */
20489
+ maxLiveDecodeWorkers: number().int().min(1).max(32).optional(),
20490
+ /**
20456
20491
  * Operator override for the LAN host a cross-node decoder dials to reach
20457
20492
  * THIS node's restream (Cluster UI). Absent → auto-detect: a remote runner
20458
20493
  * falls back to its `CAMSTACK_HUB_URL`-derived host (the Moleculer address
@@ -20914,6 +20949,13 @@ method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
20914
20949
  }), object({ success: literal(true) }), {
20915
20950
  kind: "mutation",
20916
20951
  auth: "admin"
20952
+ }), method(object({
20953
+ agentNodeId: string(),
20954
+ decodeBudgetMb: number().int().min(1024).max(65536).nullable().optional(),
20955
+ maxLiveDecodeWorkers: number().int().min(1).max(32).nullable().optional()
20956
+ }), object({ success: literal(true) }), {
20957
+ kind: "mutation",
20958
+ auth: "admin"
20917
20959
  }), method(object({
20918
20960
  agentNodeId: string(),
20919
20961
  reachableHost: string().nullable()
@@ -32458,6 +32500,12 @@ Object.freeze({
32458
32500
  addonId: null,
32459
32501
  access: "view"
32460
32502
  },
32503
+ "pipelineAnalytics.getSummary": {
32504
+ capName: "pipeline-analytics",
32505
+ capScope: "device",
32506
+ addonId: null,
32507
+ access: "view"
32508
+ },
32461
32509
  "pipelineAnalytics.getTrack": {
32462
32510
  capName: "pipeline-analytics",
32463
32511
  capScope: "device",
@@ -32536,6 +32584,12 @@ Object.freeze({
32536
32584
  addonId: null,
32537
32585
  access: "view"
32538
32586
  },
32587
+ "pipelineAnalytics.listSummaries": {
32588
+ capName: "pipeline-analytics",
32589
+ capScope: "device",
32590
+ addonId: null,
32591
+ access: "view"
32592
+ },
32539
32593
  "pipelineAnalytics.listTrackMedia": {
32540
32594
  capName: "pipeline-analytics",
32541
32595
  capScope: "device",
@@ -33094,6 +33148,12 @@ Object.freeze({
33094
33148
  addonId: null,
33095
33149
  access: "create"
33096
33150
  },
33151
+ "pipelineOrchestrator.setAgentDecodeLimits": {
33152
+ capName: "pipeline-orchestrator",
33153
+ capScope: "system",
33154
+ addonId: null,
33155
+ access: "create"
33156
+ },
33097
33157
  "pipelineOrchestrator.setAgentDetectWeight": {
33098
33158
  capName: "pipeline-orchestrator",
33099
33159
  capScope: "system",
@@ -36225,6 +36285,11 @@ Object.freeze({
36225
36285
  form: "array",
36226
36286
  optional: true
36227
36287
  }],
36288
+ "pipelineAnalytics.listSummaries": [{
36289
+ name: "deviceIds",
36290
+ form: "array",
36291
+ optional: false
36292
+ }],
36228
36293
  "pipelineAnalytics.listTrackMedia": [{
36229
36294
  name: "deviceId",
36230
36295
  form: "single",
@@ -19113,6 +19113,33 @@ var RecentTracksQueryInput = object({
19113
19113
  */
19114
19114
  classes: array(string()).optional()
19115
19115
  });
19116
+ /**
19117
+ * A Summary (D359): the per-camera session envelope that references tracks.
19118
+ * `groupShotKey` is the media key of its group shot (`ownerKind: 'summary'`,
19119
+ * served by the event-media plane by key), null until the first frame with a
19120
+ * member visible has been materialised.
19121
+ */
19122
+ var SummarySchema = object({
19123
+ id: string(),
19124
+ deviceId: number(),
19125
+ openedAt: number(),
19126
+ lastActiveAt: number(),
19127
+ sealedAt: number().nullable(),
19128
+ memberCount: number().int().nonnegative(),
19129
+ groupShotKey: string().nullable()
19130
+ });
19131
+ var SummariesQueryInput = object({
19132
+ deviceIds: array(number()).min(1),
19133
+ since: number().optional(),
19134
+ until: number().optional(),
19135
+ limit: number().int().min(1).max(200).default(50)
19136
+ });
19137
+ var SummariesPageSchema = object({ summaries: array(SummarySchema).readonly() });
19138
+ var SummaryDetailSchema = object({
19139
+ summary: SummarySchema,
19140
+ /** Member track ids, in absorption order. */
19141
+ trackIds: array(string()).readonly()
19142
+ });
19116
19143
  var RecentTracksPageSchema = object({
19117
19144
  /** Merged page, ordered by (`lastSeen` DESC, `trackId` DESC). */
19118
19145
  tracks: array(TrackSchema).readonly(),
@@ -19513,7 +19540,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
19513
19540
  * timeline would read as a camera that saw nothing.
19514
19541
  */
19515
19542
  classes: array(string()).optional()
19516
- }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(object({ deviceId: number() }), _void(), {
19543
+ }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(SummariesQueryInput, SummariesPageSchema), method(object({ id: string() }), SummaryDetailSchema.nullable()), method(object({ deviceId: number() }), _void(), {
19517
19544
  kind: "mutation",
19518
19545
  auth: "admin"
19519
19546
  }), 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({
@@ -20448,6 +20475,14 @@ var AgentPipelineSettingsSchema = object({
20448
20475
  /** Node is eligible to be the ingest / source-owner (serve the restream). */
20449
20476
  ingest: boolean().optional(),
20450
20477
  /**
20478
+ * This node's decode RAM budget, MB. Wins over the cluster
20479
+ * `nodeDecodeBudgetMb`; absent, the runner derives a share of the node's
20480
+ * own RAM unless the operator moved the cluster value (D365).
20481
+ */
20482
+ decodeBudgetMb: number().int().min(1024).max(65536).optional(),
20483
+ /** This node's live decode-worker cap. Wins over the cluster `maxLiveDecodeWorkers`. */
20484
+ maxLiveDecodeWorkers: number().int().min(1).max(32).optional(),
20485
+ /**
20451
20486
  * Operator override for the LAN host a cross-node decoder dials to reach
20452
20487
  * THIS node's restream (Cluster UI). Absent → auto-detect: a remote runner
20453
20488
  * falls back to its `CAMSTACK_HUB_URL`-derived host (the Moleculer address
@@ -20909,6 +20944,13 @@ method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
20909
20944
  }), object({ success: literal(true) }), {
20910
20945
  kind: "mutation",
20911
20946
  auth: "admin"
20947
+ }), method(object({
20948
+ agentNodeId: string(),
20949
+ decodeBudgetMb: number().int().min(1024).max(65536).nullable().optional(),
20950
+ maxLiveDecodeWorkers: number().int().min(1).max(32).nullable().optional()
20951
+ }), object({ success: literal(true) }), {
20952
+ kind: "mutation",
20953
+ auth: "admin"
20912
20954
  }), method(object({
20913
20955
  agentNodeId: string(),
20914
20956
  reachableHost: string().nullable()
@@ -32453,6 +32495,12 @@ Object.freeze({
32453
32495
  addonId: null,
32454
32496
  access: "view"
32455
32497
  },
32498
+ "pipelineAnalytics.getSummary": {
32499
+ capName: "pipeline-analytics",
32500
+ capScope: "device",
32501
+ addonId: null,
32502
+ access: "view"
32503
+ },
32456
32504
  "pipelineAnalytics.getTrack": {
32457
32505
  capName: "pipeline-analytics",
32458
32506
  capScope: "device",
@@ -32531,6 +32579,12 @@ Object.freeze({
32531
32579
  addonId: null,
32532
32580
  access: "view"
32533
32581
  },
32582
+ "pipelineAnalytics.listSummaries": {
32583
+ capName: "pipeline-analytics",
32584
+ capScope: "device",
32585
+ addonId: null,
32586
+ access: "view"
32587
+ },
32534
32588
  "pipelineAnalytics.listTrackMedia": {
32535
32589
  capName: "pipeline-analytics",
32536
32590
  capScope: "device",
@@ -33089,6 +33143,12 @@ Object.freeze({
33089
33143
  addonId: null,
33090
33144
  access: "create"
33091
33145
  },
33146
+ "pipelineOrchestrator.setAgentDecodeLimits": {
33147
+ capName: "pipeline-orchestrator",
33148
+ capScope: "system",
33149
+ addonId: null,
33150
+ access: "create"
33151
+ },
33092
33152
  "pipelineOrchestrator.setAgentDetectWeight": {
33093
33153
  capName: "pipeline-orchestrator",
33094
33154
  capScope: "system",
@@ -36220,6 +36280,11 @@ Object.freeze({
36220
36280
  form: "array",
36221
36281
  optional: true
36222
36282
  }],
36283
+ "pipelineAnalytics.listSummaries": [{
36284
+ name: "deviceIds",
36285
+ form: "array",
36286
+ optional: false
36287
+ }],
36223
36288
  "pipelineAnalytics.listTrackMedia": [{
36224
36289
  name: "deviceId",
36225
36290
  form: "single",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-mqtt-broker",
3
- "version": "1.2.67",
3
+ "version": "1.2.69",
4
4
  "description": "MQTT broker registry addon for CamStack — manages external broker entries + an optional embedded aedes broker. Consumers spin up their own `mqtt.js` clients via the `mqtt-broker` cap.",
5
5
  "keywords": [
6
6
  "camstack",