@camstack/addon-mqtt-broker 1.1.14 → 1.1.16

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.
@@ -14994,7 +14994,17 @@ var AgentAddonConfigSchema = object({
14994
14994
  });
14995
14995
  var AgentPipelineSettingsSchema = object({
14996
14996
  addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
14997
- maxCameras: number().int().nonnegative().nullable().default(null)
14997
+ maxCameras: number().int().nonnegative().nullable().default(null),
14998
+ /** Per-node detection weight (relative share for the quota balancer). */
14999
+ detectWeight: number().positive().optional(),
15000
+ /** Node is eligible to run the detection pipeline (decode + inference). */
15001
+ detect: boolean().optional(),
15002
+ /** Node is eligible to host decoder sessions. */
15003
+ decode: boolean().optional(),
15004
+ /** Node is eligible to run audio-analyzer sessions. */
15005
+ audio: boolean().optional(),
15006
+ /** Node is eligible to be the ingest / source-owner (serve the restream). */
15007
+ ingest: boolean().optional()
14998
15008
  });
14999
15009
  var CameraPipelineForAgentSchema = object({
15000
15010
  steps: array(PipelineStepInputSchema).readonly(),
@@ -15069,7 +15079,10 @@ var AgentLoadSummarySchema = object({
15069
15079
  online: boolean(),
15070
15080
  load: RunnerLocalLoadSchema,
15071
15081
  /** Computed score used by the L2 capacity balancer (lower = less loaded). */
15072
- score: number()
15082
+ score: number(),
15083
+ /** This node's decode hwaccel backend (per-node `probedBestHwaccel`), or null
15084
+ * when not yet probed — for the cluster Pipeline table UI (P0.2). */
15085
+ decodeHwaccel: string().nullable()
15073
15086
  });
15074
15087
  /**
15075
15088
  * Aggregate metrics across the whole detection cluster. Replaces the legacy
@@ -15297,6 +15310,21 @@ method(object({
15297
15310
  }), object({ success: literal(true) }), {
15298
15311
  kind: "mutation",
15299
15312
  auth: "admin"
15313
+ }), method(object({
15314
+ agentNodeId: string(),
15315
+ detectWeight: number().positive().nullable()
15316
+ }), object({ success: literal(true) }), {
15317
+ kind: "mutation",
15318
+ auth: "admin"
15319
+ }), method(object({
15320
+ agentNodeId: string(),
15321
+ detect: boolean().nullable().optional(),
15322
+ decode: boolean().nullable().optional(),
15323
+ audio: boolean().nullable().optional(),
15324
+ ingest: boolean().nullable().optional()
15325
+ }), object({ success: literal(true) }), {
15326
+ kind: "mutation",
15327
+ auth: "admin"
15300
15328
  }), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
15301
15329
  deviceId: number(),
15302
15330
  addonId: string(),
@@ -17605,7 +17633,7 @@ var HardwareEncoderIdSchema = _enum([
17605
17633
  "libx264",
17606
17634
  "libx265"
17607
17635
  ]);
17608
- var HardwareEncodersSchema = object({
17636
+ object({
17609
17637
  encoders: array(object({
17610
17638
  encoder: HardwareEncoderIdSchema,
17611
17639
  codec: _enum(["H264", "H265"]),
@@ -17624,15 +17652,7 @@ var HardwareEncodersSchema = object({
17624
17652
  defaultH265: HardwareEncoderIdSchema,
17625
17653
  probedAt: number()
17626
17654
  });
17627
- /**
17628
- * Decode-side companion to {@link HardwareEncodersSchema}: the `-hwaccel`
17629
- * methods the configured ffmpeg binary actually supports (parsed from
17630
- * `ffmpeg -hwaccels`). Used to gate decode-hwaccel attempts so the transcode
17631
- * egress never spends a spawn on a backend this build cannot offer. Per-stream
17632
- * decode fragility (e.g. VideoToolbox HEVC) is still handled by the egress's
17633
- * software fallback — this only filters out wholly-unsupported backends.
17634
- */
17635
- var HardwareDecodeAccelsSchema = object({
17655
+ object({
17636
17656
  methods: array(string()).readonly(),
17637
17657
  probedAt: number()
17638
17658
  });
@@ -17695,13 +17715,7 @@ var ResolvedInferenceConfigSchema = object({
17695
17715
  format: ModelFormatSchema,
17696
17716
  reason: string()
17697
17717
  });
17698
- method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema), method(_void(), HardwareEncodersSchema), method(_void(), HardwareEncodersSchema, {
17699
- kind: "mutation",
17700
- auth: "admin"
17701
- }), method(_void(), HardwareDecodeAccelsSchema), method(_void(), HardwareDecodeAccelsSchema, {
17702
- kind: "mutation",
17703
- auth: "admin"
17704
- });
17718
+ method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema);
17705
17719
  var PtzPresetSchema = object({
17706
17720
  id: string(),
17707
17721
  name: string()
@@ -21170,6 +21184,18 @@ Object.freeze({
21170
21184
  addonId: null,
21171
21185
  access: "create"
21172
21186
  },
21187
+ "pipelineOrchestrator.setAgentCapabilities": {
21188
+ capName: "pipeline-orchestrator",
21189
+ capScope: "system",
21190
+ addonId: null,
21191
+ access: "create"
21192
+ },
21193
+ "pipelineOrchestrator.setAgentDetectWeight": {
21194
+ capName: "pipeline-orchestrator",
21195
+ capScope: "system",
21196
+ addonId: null,
21197
+ access: "create"
21198
+ },
21173
21199
  "pipelineOrchestrator.setAgentMaxCameras": {
21174
21200
  capName: "pipeline-orchestrator",
21175
21201
  capScope: "system",
@@ -21326,30 +21352,6 @@ Object.freeze({
21326
21352
  addonId: null,
21327
21353
  access: "view"
21328
21354
  },
21329
- "platformProbe.getHardwareDecodeAccels": {
21330
- capName: "platform-probe",
21331
- capScope: "system",
21332
- addonId: null,
21333
- access: "view"
21334
- },
21335
- "platformProbe.getHardwareEncoders": {
21336
- capName: "platform-probe",
21337
- capScope: "system",
21338
- addonId: null,
21339
- access: "view"
21340
- },
21341
- "platformProbe.refreshHardwareDecodeAccels": {
21342
- capName: "platform-probe",
21343
- capScope: "system",
21344
- addonId: null,
21345
- access: "create"
21346
- },
21347
- "platformProbe.refreshHardwareEncoders": {
21348
- capName: "platform-probe",
21349
- capScope: "system",
21350
- addonId: null,
21351
- access: "create"
21352
- },
21353
21355
  "platformProbe.resolveHwAccel": {
21354
21356
  capName: "platform-probe",
21355
21357
  capScope: "system",
@@ -14989,7 +14989,17 @@ var AgentAddonConfigSchema = object({
14989
14989
  });
14990
14990
  var AgentPipelineSettingsSchema = object({
14991
14991
  addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
14992
- maxCameras: number().int().nonnegative().nullable().default(null)
14992
+ maxCameras: number().int().nonnegative().nullable().default(null),
14993
+ /** Per-node detection weight (relative share for the quota balancer). */
14994
+ detectWeight: number().positive().optional(),
14995
+ /** Node is eligible to run the detection pipeline (decode + inference). */
14996
+ detect: boolean().optional(),
14997
+ /** Node is eligible to host decoder sessions. */
14998
+ decode: boolean().optional(),
14999
+ /** Node is eligible to run audio-analyzer sessions. */
15000
+ audio: boolean().optional(),
15001
+ /** Node is eligible to be the ingest / source-owner (serve the restream). */
15002
+ ingest: boolean().optional()
14993
15003
  });
14994
15004
  var CameraPipelineForAgentSchema = object({
14995
15005
  steps: array(PipelineStepInputSchema).readonly(),
@@ -15064,7 +15074,10 @@ var AgentLoadSummarySchema = object({
15064
15074
  online: boolean(),
15065
15075
  load: RunnerLocalLoadSchema,
15066
15076
  /** Computed score used by the L2 capacity balancer (lower = less loaded). */
15067
- score: number()
15077
+ score: number(),
15078
+ /** This node's decode hwaccel backend (per-node `probedBestHwaccel`), or null
15079
+ * when not yet probed — for the cluster Pipeline table UI (P0.2). */
15080
+ decodeHwaccel: string().nullable()
15068
15081
  });
15069
15082
  /**
15070
15083
  * Aggregate metrics across the whole detection cluster. Replaces the legacy
@@ -15292,6 +15305,21 @@ method(object({
15292
15305
  }), object({ success: literal(true) }), {
15293
15306
  kind: "mutation",
15294
15307
  auth: "admin"
15308
+ }), method(object({
15309
+ agentNodeId: string(),
15310
+ detectWeight: number().positive().nullable()
15311
+ }), object({ success: literal(true) }), {
15312
+ kind: "mutation",
15313
+ auth: "admin"
15314
+ }), method(object({
15315
+ agentNodeId: string(),
15316
+ detect: boolean().nullable().optional(),
15317
+ decode: boolean().nullable().optional(),
15318
+ audio: boolean().nullable().optional(),
15319
+ ingest: boolean().nullable().optional()
15320
+ }), object({ success: literal(true) }), {
15321
+ kind: "mutation",
15322
+ auth: "admin"
15295
15323
  }), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
15296
15324
  deviceId: number(),
15297
15325
  addonId: string(),
@@ -17600,7 +17628,7 @@ var HardwareEncoderIdSchema = _enum([
17600
17628
  "libx264",
17601
17629
  "libx265"
17602
17630
  ]);
17603
- var HardwareEncodersSchema = object({
17631
+ object({
17604
17632
  encoders: array(object({
17605
17633
  encoder: HardwareEncoderIdSchema,
17606
17634
  codec: _enum(["H264", "H265"]),
@@ -17619,15 +17647,7 @@ var HardwareEncodersSchema = object({
17619
17647
  defaultH265: HardwareEncoderIdSchema,
17620
17648
  probedAt: number()
17621
17649
  });
17622
- /**
17623
- * Decode-side companion to {@link HardwareEncodersSchema}: the `-hwaccel`
17624
- * methods the configured ffmpeg binary actually supports (parsed from
17625
- * `ffmpeg -hwaccels`). Used to gate decode-hwaccel attempts so the transcode
17626
- * egress never spends a spawn on a backend this build cannot offer. Per-stream
17627
- * decode fragility (e.g. VideoToolbox HEVC) is still handled by the egress's
17628
- * software fallback — this only filters out wholly-unsupported backends.
17629
- */
17630
- var HardwareDecodeAccelsSchema = object({
17650
+ object({
17631
17651
  methods: array(string()).readonly(),
17632
17652
  probedAt: number()
17633
17653
  });
@@ -17690,13 +17710,7 @@ var ResolvedInferenceConfigSchema = object({
17690
17710
  format: ModelFormatSchema,
17691
17711
  reason: string()
17692
17712
  });
17693
- method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema), method(_void(), HardwareEncodersSchema), method(_void(), HardwareEncodersSchema, {
17694
- kind: "mutation",
17695
- auth: "admin"
17696
- }), method(_void(), HardwareDecodeAccelsSchema), method(_void(), HardwareDecodeAccelsSchema, {
17697
- kind: "mutation",
17698
- auth: "admin"
17699
- });
17713
+ method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema);
17700
17714
  var PtzPresetSchema = object({
17701
17715
  id: string(),
17702
17716
  name: string()
@@ -21165,6 +21179,18 @@ Object.freeze({
21165
21179
  addonId: null,
21166
21180
  access: "create"
21167
21181
  },
21182
+ "pipelineOrchestrator.setAgentCapabilities": {
21183
+ capName: "pipeline-orchestrator",
21184
+ capScope: "system",
21185
+ addonId: null,
21186
+ access: "create"
21187
+ },
21188
+ "pipelineOrchestrator.setAgentDetectWeight": {
21189
+ capName: "pipeline-orchestrator",
21190
+ capScope: "system",
21191
+ addonId: null,
21192
+ access: "create"
21193
+ },
21168
21194
  "pipelineOrchestrator.setAgentMaxCameras": {
21169
21195
  capName: "pipeline-orchestrator",
21170
21196
  capScope: "system",
@@ -21321,30 +21347,6 @@ Object.freeze({
21321
21347
  addonId: null,
21322
21348
  access: "view"
21323
21349
  },
21324
- "platformProbe.getHardwareDecodeAccels": {
21325
- capName: "platform-probe",
21326
- capScope: "system",
21327
- addonId: null,
21328
- access: "view"
21329
- },
21330
- "platformProbe.getHardwareEncoders": {
21331
- capName: "platform-probe",
21332
- capScope: "system",
21333
- addonId: null,
21334
- access: "view"
21335
- },
21336
- "platformProbe.refreshHardwareDecodeAccels": {
21337
- capName: "platform-probe",
21338
- capScope: "system",
21339
- addonId: null,
21340
- access: "create"
21341
- },
21342
- "platformProbe.refreshHardwareEncoders": {
21343
- capName: "platform-probe",
21344
- capScope: "system",
21345
- addonId: null,
21346
- access: "create"
21347
- },
21348
21350
  "platformProbe.resolveHwAccel": {
21349
21351
  capName: "platform-probe",
21350
21352
  capScope: "system",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-mqtt-broker",
3
- "version": "1.1.14",
3
+ "version": "1.1.16",
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",