@camstack/addon-provider-velux 0.1.1 → 0.1.3

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
@@ -17820,7 +17820,17 @@ var AgentAddonConfigSchema = object({
17820
17820
  });
17821
17821
  var AgentPipelineSettingsSchema = object({
17822
17822
  addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
17823
- maxCameras: number().int().nonnegative().nullable().default(null)
17823
+ maxCameras: number().int().nonnegative().nullable().default(null),
17824
+ /** Per-node detection weight (relative share for the quota balancer). */
17825
+ detectWeight: number().positive().optional(),
17826
+ /** Node is eligible to run the detection pipeline (decode + inference). */
17827
+ detect: boolean().optional(),
17828
+ /** Node is eligible to host decoder sessions. */
17829
+ decode: boolean().optional(),
17830
+ /** Node is eligible to run audio-analyzer sessions. */
17831
+ audio: boolean().optional(),
17832
+ /** Node is eligible to be the ingest / source-owner (serve the restream). */
17833
+ ingest: boolean().optional()
17824
17834
  });
17825
17835
  var CameraPipelineForAgentSchema = object({
17826
17836
  steps: array(PipelineStepInputSchema).readonly(),
@@ -17895,7 +17905,10 @@ var AgentLoadSummarySchema = object({
17895
17905
  online: boolean(),
17896
17906
  load: RunnerLocalLoadSchema,
17897
17907
  /** Computed score used by the L2 capacity balancer (lower = less loaded). */
17898
- score: number()
17908
+ score: number(),
17909
+ /** This node's decode hwaccel backend (per-node `probedBestHwaccel`), or null
17910
+ * when not yet probed — for the cluster Pipeline table UI (P0.2). */
17911
+ decodeHwaccel: string().nullable()
17899
17912
  });
17900
17913
  /**
17901
17914
  * Aggregate metrics across the whole detection cluster. Replaces the legacy
@@ -18123,6 +18136,21 @@ method(object({
18123
18136
  }), object({ success: literal(true) }), {
18124
18137
  kind: "mutation",
18125
18138
  auth: "admin"
18139
+ }), method(object({
18140
+ agentNodeId: string(),
18141
+ detectWeight: number().positive().nullable()
18142
+ }), object({ success: literal(true) }), {
18143
+ kind: "mutation",
18144
+ auth: "admin"
18145
+ }), method(object({
18146
+ agentNodeId: string(),
18147
+ detect: boolean().nullable().optional(),
18148
+ decode: boolean().nullable().optional(),
18149
+ audio: boolean().nullable().optional(),
18150
+ ingest: boolean().nullable().optional()
18151
+ }), object({ success: literal(true) }), {
18152
+ kind: "mutation",
18153
+ auth: "admin"
18126
18154
  }), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
18127
18155
  deviceId: number(),
18128
18156
  addonId: string(),
@@ -20431,7 +20459,7 @@ var HardwareEncoderIdSchema = _enum([
20431
20459
  "libx264",
20432
20460
  "libx265"
20433
20461
  ]);
20434
- var HardwareEncodersSchema = object({
20462
+ object({
20435
20463
  encoders: array(object({
20436
20464
  encoder: HardwareEncoderIdSchema,
20437
20465
  codec: _enum(["H264", "H265"]),
@@ -20450,15 +20478,7 @@ var HardwareEncodersSchema = object({
20450
20478
  defaultH265: HardwareEncoderIdSchema,
20451
20479
  probedAt: number()
20452
20480
  });
20453
- /**
20454
- * Decode-side companion to {@link HardwareEncodersSchema}: the `-hwaccel`
20455
- * methods the configured ffmpeg binary actually supports (parsed from
20456
- * `ffmpeg -hwaccels`). Used to gate decode-hwaccel attempts so the transcode
20457
- * egress never spends a spawn on a backend this build cannot offer. Per-stream
20458
- * decode fragility (e.g. VideoToolbox HEVC) is still handled by the egress's
20459
- * software fallback — this only filters out wholly-unsupported backends.
20460
- */
20461
- var HardwareDecodeAccelsSchema = object({
20481
+ object({
20462
20482
  methods: array(string()).readonly(),
20463
20483
  probedAt: number()
20464
20484
  });
@@ -20521,13 +20541,7 @@ var ResolvedInferenceConfigSchema = object({
20521
20541
  format: ModelFormatSchema,
20522
20542
  reason: string()
20523
20543
  });
20524
- method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema), method(_void(), HardwareEncodersSchema), method(_void(), HardwareEncodersSchema, {
20525
- kind: "mutation",
20526
- auth: "admin"
20527
- }), method(_void(), HardwareDecodeAccelsSchema), method(_void(), HardwareDecodeAccelsSchema, {
20528
- kind: "mutation",
20529
- auth: "admin"
20530
- });
20544
+ method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema);
20531
20545
  var PtzPresetSchema = object({
20532
20546
  id: string(),
20533
20547
  name: string()
@@ -23996,6 +24010,18 @@ Object.freeze({
23996
24010
  addonId: null,
23997
24011
  access: "create"
23998
24012
  },
24013
+ "pipelineOrchestrator.setAgentCapabilities": {
24014
+ capName: "pipeline-orchestrator",
24015
+ capScope: "system",
24016
+ addonId: null,
24017
+ access: "create"
24018
+ },
24019
+ "pipelineOrchestrator.setAgentDetectWeight": {
24020
+ capName: "pipeline-orchestrator",
24021
+ capScope: "system",
24022
+ addonId: null,
24023
+ access: "create"
24024
+ },
23999
24025
  "pipelineOrchestrator.setAgentMaxCameras": {
24000
24026
  capName: "pipeline-orchestrator",
24001
24027
  capScope: "system",
@@ -24152,30 +24178,6 @@ Object.freeze({
24152
24178
  addonId: null,
24153
24179
  access: "view"
24154
24180
  },
24155
- "platformProbe.getHardwareDecodeAccels": {
24156
- capName: "platform-probe",
24157
- capScope: "system",
24158
- addonId: null,
24159
- access: "view"
24160
- },
24161
- "platformProbe.getHardwareEncoders": {
24162
- capName: "platform-probe",
24163
- capScope: "system",
24164
- addonId: null,
24165
- access: "view"
24166
- },
24167
- "platformProbe.refreshHardwareDecodeAccels": {
24168
- capName: "platform-probe",
24169
- capScope: "system",
24170
- addonId: null,
24171
- access: "create"
24172
- },
24173
- "platformProbe.refreshHardwareEncoders": {
24174
- capName: "platform-probe",
24175
- capScope: "system",
24176
- addonId: null,
24177
- access: "create"
24178
- },
24179
24181
  "platformProbe.resolveHwAccel": {
24180
24182
  capName: "platform-probe",
24181
24183
  capScope: "system",
package/dist/addon.mjs CHANGED
@@ -17819,7 +17819,17 @@ var AgentAddonConfigSchema = object({
17819
17819
  });
17820
17820
  var AgentPipelineSettingsSchema = object({
17821
17821
  addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
17822
- maxCameras: number().int().nonnegative().nullable().default(null)
17822
+ maxCameras: number().int().nonnegative().nullable().default(null),
17823
+ /** Per-node detection weight (relative share for the quota balancer). */
17824
+ detectWeight: number().positive().optional(),
17825
+ /** Node is eligible to run the detection pipeline (decode + inference). */
17826
+ detect: boolean().optional(),
17827
+ /** Node is eligible to host decoder sessions. */
17828
+ decode: boolean().optional(),
17829
+ /** Node is eligible to run audio-analyzer sessions. */
17830
+ audio: boolean().optional(),
17831
+ /** Node is eligible to be the ingest / source-owner (serve the restream). */
17832
+ ingest: boolean().optional()
17823
17833
  });
17824
17834
  var CameraPipelineForAgentSchema = object({
17825
17835
  steps: array(PipelineStepInputSchema).readonly(),
@@ -17894,7 +17904,10 @@ var AgentLoadSummarySchema = object({
17894
17904
  online: boolean(),
17895
17905
  load: RunnerLocalLoadSchema,
17896
17906
  /** Computed score used by the L2 capacity balancer (lower = less loaded). */
17897
- score: number()
17907
+ score: number(),
17908
+ /** This node's decode hwaccel backend (per-node `probedBestHwaccel`), or null
17909
+ * when not yet probed — for the cluster Pipeline table UI (P0.2). */
17910
+ decodeHwaccel: string().nullable()
17898
17911
  });
17899
17912
  /**
17900
17913
  * Aggregate metrics across the whole detection cluster. Replaces the legacy
@@ -18122,6 +18135,21 @@ method(object({
18122
18135
  }), object({ success: literal(true) }), {
18123
18136
  kind: "mutation",
18124
18137
  auth: "admin"
18138
+ }), method(object({
18139
+ agentNodeId: string(),
18140
+ detectWeight: number().positive().nullable()
18141
+ }), object({ success: literal(true) }), {
18142
+ kind: "mutation",
18143
+ auth: "admin"
18144
+ }), method(object({
18145
+ agentNodeId: string(),
18146
+ detect: boolean().nullable().optional(),
18147
+ decode: boolean().nullable().optional(),
18148
+ audio: boolean().nullable().optional(),
18149
+ ingest: boolean().nullable().optional()
18150
+ }), object({ success: literal(true) }), {
18151
+ kind: "mutation",
18152
+ auth: "admin"
18125
18153
  }), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
18126
18154
  deviceId: number(),
18127
18155
  addonId: string(),
@@ -20430,7 +20458,7 @@ var HardwareEncoderIdSchema = _enum([
20430
20458
  "libx264",
20431
20459
  "libx265"
20432
20460
  ]);
20433
- var HardwareEncodersSchema = object({
20461
+ object({
20434
20462
  encoders: array(object({
20435
20463
  encoder: HardwareEncoderIdSchema,
20436
20464
  codec: _enum(["H264", "H265"]),
@@ -20449,15 +20477,7 @@ var HardwareEncodersSchema = object({
20449
20477
  defaultH265: HardwareEncoderIdSchema,
20450
20478
  probedAt: number()
20451
20479
  });
20452
- /**
20453
- * Decode-side companion to {@link HardwareEncodersSchema}: the `-hwaccel`
20454
- * methods the configured ffmpeg binary actually supports (parsed from
20455
- * `ffmpeg -hwaccels`). Used to gate decode-hwaccel attempts so the transcode
20456
- * egress never spends a spawn on a backend this build cannot offer. Per-stream
20457
- * decode fragility (e.g. VideoToolbox HEVC) is still handled by the egress's
20458
- * software fallback — this only filters out wholly-unsupported backends.
20459
- */
20460
- var HardwareDecodeAccelsSchema = object({
20480
+ object({
20461
20481
  methods: array(string()).readonly(),
20462
20482
  probedAt: number()
20463
20483
  });
@@ -20520,13 +20540,7 @@ var ResolvedInferenceConfigSchema = object({
20520
20540
  format: ModelFormatSchema,
20521
20541
  reason: string()
20522
20542
  });
20523
- method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema), method(_void(), HardwareEncodersSchema), method(_void(), HardwareEncodersSchema, {
20524
- kind: "mutation",
20525
- auth: "admin"
20526
- }), method(_void(), HardwareDecodeAccelsSchema), method(_void(), HardwareDecodeAccelsSchema, {
20527
- kind: "mutation",
20528
- auth: "admin"
20529
- });
20543
+ method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema);
20530
20544
  var PtzPresetSchema = object({
20531
20545
  id: string(),
20532
20546
  name: string()
@@ -23995,6 +24009,18 @@ Object.freeze({
23995
24009
  addonId: null,
23996
24010
  access: "create"
23997
24011
  },
24012
+ "pipelineOrchestrator.setAgentCapabilities": {
24013
+ capName: "pipeline-orchestrator",
24014
+ capScope: "system",
24015
+ addonId: null,
24016
+ access: "create"
24017
+ },
24018
+ "pipelineOrchestrator.setAgentDetectWeight": {
24019
+ capName: "pipeline-orchestrator",
24020
+ capScope: "system",
24021
+ addonId: null,
24022
+ access: "create"
24023
+ },
23998
24024
  "pipelineOrchestrator.setAgentMaxCameras": {
23999
24025
  capName: "pipeline-orchestrator",
24000
24026
  capScope: "system",
@@ -24151,30 +24177,6 @@ Object.freeze({
24151
24177
  addonId: null,
24152
24178
  access: "view"
24153
24179
  },
24154
- "platformProbe.getHardwareDecodeAccels": {
24155
- capName: "platform-probe",
24156
- capScope: "system",
24157
- addonId: null,
24158
- access: "view"
24159
- },
24160
- "platformProbe.getHardwareEncoders": {
24161
- capName: "platform-probe",
24162
- capScope: "system",
24163
- addonId: null,
24164
- access: "view"
24165
- },
24166
- "platformProbe.refreshHardwareDecodeAccels": {
24167
- capName: "platform-probe",
24168
- capScope: "system",
24169
- addonId: null,
24170
- access: "create"
24171
- },
24172
- "platformProbe.refreshHardwareEncoders": {
24173
- capName: "platform-probe",
24174
- capScope: "system",
24175
- addonId: null,
24176
- access: "create"
24177
- },
24178
24180
  "platformProbe.resolveHwAccel": {
24179
24181
  capName: "platform-probe",
24180
24182
  capScope: "system",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-velux",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "Velux KLF-200 device-provider addon for CamStack — local-gateway window + shutter covers (positional, no tilt)",
5
5
  "keywords": [
6
6
  "camstack",