@camstack/addon-notifiers 1.1.16 → 1.1.18
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 +45 -43
- package/dist/addon.mjs +45 -43
- package/package.json +1 -1
package/dist/addon.js
CHANGED
|
@@ -15091,7 +15091,17 @@ var AgentAddonConfigSchema = object({
|
|
|
15091
15091
|
});
|
|
15092
15092
|
var AgentPipelineSettingsSchema = object({
|
|
15093
15093
|
addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
|
|
15094
|
-
maxCameras: number().int().nonnegative().nullable().default(null)
|
|
15094
|
+
maxCameras: number().int().nonnegative().nullable().default(null),
|
|
15095
|
+
/** Per-node detection weight (relative share for the quota balancer). */
|
|
15096
|
+
detectWeight: number().positive().optional(),
|
|
15097
|
+
/** Node is eligible to run the detection pipeline (decode + inference). */
|
|
15098
|
+
detect: boolean().optional(),
|
|
15099
|
+
/** Node is eligible to host decoder sessions. */
|
|
15100
|
+
decode: boolean().optional(),
|
|
15101
|
+
/** Node is eligible to run audio-analyzer sessions. */
|
|
15102
|
+
audio: boolean().optional(),
|
|
15103
|
+
/** Node is eligible to be the ingest / source-owner (serve the restream). */
|
|
15104
|
+
ingest: boolean().optional()
|
|
15095
15105
|
});
|
|
15096
15106
|
var CameraPipelineForAgentSchema = object({
|
|
15097
15107
|
steps: array(PipelineStepInputSchema).readonly(),
|
|
@@ -15166,7 +15176,10 @@ var AgentLoadSummarySchema = object({
|
|
|
15166
15176
|
online: boolean(),
|
|
15167
15177
|
load: RunnerLocalLoadSchema,
|
|
15168
15178
|
/** Computed score used by the L2 capacity balancer (lower = less loaded). */
|
|
15169
|
-
score: number()
|
|
15179
|
+
score: number(),
|
|
15180
|
+
/** This node's decode hwaccel backend (per-node `probedBestHwaccel`), or null
|
|
15181
|
+
* when not yet probed — for the cluster Pipeline table UI (P0.2). */
|
|
15182
|
+
decodeHwaccel: string().nullable()
|
|
15170
15183
|
});
|
|
15171
15184
|
/**
|
|
15172
15185
|
* Aggregate metrics across the whole detection cluster. Replaces the legacy
|
|
@@ -15394,6 +15407,21 @@ method(object({
|
|
|
15394
15407
|
}), object({ success: literal(true) }), {
|
|
15395
15408
|
kind: "mutation",
|
|
15396
15409
|
auth: "admin"
|
|
15410
|
+
}), method(object({
|
|
15411
|
+
agentNodeId: string(),
|
|
15412
|
+
detectWeight: number().positive().nullable()
|
|
15413
|
+
}), object({ success: literal(true) }), {
|
|
15414
|
+
kind: "mutation",
|
|
15415
|
+
auth: "admin"
|
|
15416
|
+
}), method(object({
|
|
15417
|
+
agentNodeId: string(),
|
|
15418
|
+
detect: boolean().nullable().optional(),
|
|
15419
|
+
decode: boolean().nullable().optional(),
|
|
15420
|
+
audio: boolean().nullable().optional(),
|
|
15421
|
+
ingest: boolean().nullable().optional()
|
|
15422
|
+
}), object({ success: literal(true) }), {
|
|
15423
|
+
kind: "mutation",
|
|
15424
|
+
auth: "admin"
|
|
15397
15425
|
}), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
|
|
15398
15426
|
deviceId: number(),
|
|
15399
15427
|
addonId: string(),
|
|
@@ -17702,7 +17730,7 @@ var HardwareEncoderIdSchema = _enum([
|
|
|
17702
17730
|
"libx264",
|
|
17703
17731
|
"libx265"
|
|
17704
17732
|
]);
|
|
17705
|
-
|
|
17733
|
+
object({
|
|
17706
17734
|
encoders: array(object({
|
|
17707
17735
|
encoder: HardwareEncoderIdSchema,
|
|
17708
17736
|
codec: _enum(["H264", "H265"]),
|
|
@@ -17721,15 +17749,7 @@ var HardwareEncodersSchema = object({
|
|
|
17721
17749
|
defaultH265: HardwareEncoderIdSchema,
|
|
17722
17750
|
probedAt: number()
|
|
17723
17751
|
});
|
|
17724
|
-
|
|
17725
|
-
* Decode-side companion to {@link HardwareEncodersSchema}: the `-hwaccel`
|
|
17726
|
-
* methods the configured ffmpeg binary actually supports (parsed from
|
|
17727
|
-
* `ffmpeg -hwaccels`). Used to gate decode-hwaccel attempts so the transcode
|
|
17728
|
-
* egress never spends a spawn on a backend this build cannot offer. Per-stream
|
|
17729
|
-
* decode fragility (e.g. VideoToolbox HEVC) is still handled by the egress's
|
|
17730
|
-
* software fallback — this only filters out wholly-unsupported backends.
|
|
17731
|
-
*/
|
|
17732
|
-
var HardwareDecodeAccelsSchema = object({
|
|
17752
|
+
object({
|
|
17733
17753
|
methods: array(string()).readonly(),
|
|
17734
17754
|
probedAt: number()
|
|
17735
17755
|
});
|
|
@@ -17792,13 +17812,7 @@ var ResolvedInferenceConfigSchema = object({
|
|
|
17792
17812
|
format: ModelFormatSchema,
|
|
17793
17813
|
reason: string()
|
|
17794
17814
|
});
|
|
17795
|
-
method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema)
|
|
17796
|
-
kind: "mutation",
|
|
17797
|
-
auth: "admin"
|
|
17798
|
-
}), method(_void(), HardwareDecodeAccelsSchema), method(_void(), HardwareDecodeAccelsSchema, {
|
|
17799
|
-
kind: "mutation",
|
|
17800
|
-
auth: "admin"
|
|
17801
|
-
});
|
|
17815
|
+
method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema);
|
|
17802
17816
|
var PtzPresetSchema = object({
|
|
17803
17817
|
id: string(),
|
|
17804
17818
|
name: string()
|
|
@@ -21267,6 +21281,18 @@ Object.freeze({
|
|
|
21267
21281
|
addonId: null,
|
|
21268
21282
|
access: "create"
|
|
21269
21283
|
},
|
|
21284
|
+
"pipelineOrchestrator.setAgentCapabilities": {
|
|
21285
|
+
capName: "pipeline-orchestrator",
|
|
21286
|
+
capScope: "system",
|
|
21287
|
+
addonId: null,
|
|
21288
|
+
access: "create"
|
|
21289
|
+
},
|
|
21290
|
+
"pipelineOrchestrator.setAgentDetectWeight": {
|
|
21291
|
+
capName: "pipeline-orchestrator",
|
|
21292
|
+
capScope: "system",
|
|
21293
|
+
addonId: null,
|
|
21294
|
+
access: "create"
|
|
21295
|
+
},
|
|
21270
21296
|
"pipelineOrchestrator.setAgentMaxCameras": {
|
|
21271
21297
|
capName: "pipeline-orchestrator",
|
|
21272
21298
|
capScope: "system",
|
|
@@ -21423,30 +21449,6 @@ Object.freeze({
|
|
|
21423
21449
|
addonId: null,
|
|
21424
21450
|
access: "view"
|
|
21425
21451
|
},
|
|
21426
|
-
"platformProbe.getHardwareDecodeAccels": {
|
|
21427
|
-
capName: "platform-probe",
|
|
21428
|
-
capScope: "system",
|
|
21429
|
-
addonId: null,
|
|
21430
|
-
access: "view"
|
|
21431
|
-
},
|
|
21432
|
-
"platformProbe.getHardwareEncoders": {
|
|
21433
|
-
capName: "platform-probe",
|
|
21434
|
-
capScope: "system",
|
|
21435
|
-
addonId: null,
|
|
21436
|
-
access: "view"
|
|
21437
|
-
},
|
|
21438
|
-
"platformProbe.refreshHardwareDecodeAccels": {
|
|
21439
|
-
capName: "platform-probe",
|
|
21440
|
-
capScope: "system",
|
|
21441
|
-
addonId: null,
|
|
21442
|
-
access: "create"
|
|
21443
|
-
},
|
|
21444
|
-
"platformProbe.refreshHardwareEncoders": {
|
|
21445
|
-
capName: "platform-probe",
|
|
21446
|
-
capScope: "system",
|
|
21447
|
-
addonId: null,
|
|
21448
|
-
access: "create"
|
|
21449
|
-
},
|
|
21450
21452
|
"platformProbe.resolveHwAccel": {
|
|
21451
21453
|
capName: "platform-probe",
|
|
21452
21454
|
capScope: "system",
|
package/dist/addon.mjs
CHANGED
|
@@ -15087,7 +15087,17 @@ var AgentAddonConfigSchema = object({
|
|
|
15087
15087
|
});
|
|
15088
15088
|
var AgentPipelineSettingsSchema = object({
|
|
15089
15089
|
addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
|
|
15090
|
-
maxCameras: number().int().nonnegative().nullable().default(null)
|
|
15090
|
+
maxCameras: number().int().nonnegative().nullable().default(null),
|
|
15091
|
+
/** Per-node detection weight (relative share for the quota balancer). */
|
|
15092
|
+
detectWeight: number().positive().optional(),
|
|
15093
|
+
/** Node is eligible to run the detection pipeline (decode + inference). */
|
|
15094
|
+
detect: boolean().optional(),
|
|
15095
|
+
/** Node is eligible to host decoder sessions. */
|
|
15096
|
+
decode: boolean().optional(),
|
|
15097
|
+
/** Node is eligible to run audio-analyzer sessions. */
|
|
15098
|
+
audio: boolean().optional(),
|
|
15099
|
+
/** Node is eligible to be the ingest / source-owner (serve the restream). */
|
|
15100
|
+
ingest: boolean().optional()
|
|
15091
15101
|
});
|
|
15092
15102
|
var CameraPipelineForAgentSchema = object({
|
|
15093
15103
|
steps: array(PipelineStepInputSchema).readonly(),
|
|
@@ -15162,7 +15172,10 @@ var AgentLoadSummarySchema = object({
|
|
|
15162
15172
|
online: boolean(),
|
|
15163
15173
|
load: RunnerLocalLoadSchema,
|
|
15164
15174
|
/** Computed score used by the L2 capacity balancer (lower = less loaded). */
|
|
15165
|
-
score: number()
|
|
15175
|
+
score: number(),
|
|
15176
|
+
/** This node's decode hwaccel backend (per-node `probedBestHwaccel`), or null
|
|
15177
|
+
* when not yet probed — for the cluster Pipeline table UI (P0.2). */
|
|
15178
|
+
decodeHwaccel: string().nullable()
|
|
15166
15179
|
});
|
|
15167
15180
|
/**
|
|
15168
15181
|
* Aggregate metrics across the whole detection cluster. Replaces the legacy
|
|
@@ -15390,6 +15403,21 @@ method(object({
|
|
|
15390
15403
|
}), object({ success: literal(true) }), {
|
|
15391
15404
|
kind: "mutation",
|
|
15392
15405
|
auth: "admin"
|
|
15406
|
+
}), method(object({
|
|
15407
|
+
agentNodeId: string(),
|
|
15408
|
+
detectWeight: number().positive().nullable()
|
|
15409
|
+
}), object({ success: literal(true) }), {
|
|
15410
|
+
kind: "mutation",
|
|
15411
|
+
auth: "admin"
|
|
15412
|
+
}), method(object({
|
|
15413
|
+
agentNodeId: string(),
|
|
15414
|
+
detect: boolean().nullable().optional(),
|
|
15415
|
+
decode: boolean().nullable().optional(),
|
|
15416
|
+
audio: boolean().nullable().optional(),
|
|
15417
|
+
ingest: boolean().nullable().optional()
|
|
15418
|
+
}), object({ success: literal(true) }), {
|
|
15419
|
+
kind: "mutation",
|
|
15420
|
+
auth: "admin"
|
|
15393
15421
|
}), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
|
|
15394
15422
|
deviceId: number(),
|
|
15395
15423
|
addonId: string(),
|
|
@@ -17698,7 +17726,7 @@ var HardwareEncoderIdSchema = _enum([
|
|
|
17698
17726
|
"libx264",
|
|
17699
17727
|
"libx265"
|
|
17700
17728
|
]);
|
|
17701
|
-
|
|
17729
|
+
object({
|
|
17702
17730
|
encoders: array(object({
|
|
17703
17731
|
encoder: HardwareEncoderIdSchema,
|
|
17704
17732
|
codec: _enum(["H264", "H265"]),
|
|
@@ -17717,15 +17745,7 @@ var HardwareEncodersSchema = object({
|
|
|
17717
17745
|
defaultH265: HardwareEncoderIdSchema,
|
|
17718
17746
|
probedAt: number()
|
|
17719
17747
|
});
|
|
17720
|
-
|
|
17721
|
-
* Decode-side companion to {@link HardwareEncodersSchema}: the `-hwaccel`
|
|
17722
|
-
* methods the configured ffmpeg binary actually supports (parsed from
|
|
17723
|
-
* `ffmpeg -hwaccels`). Used to gate decode-hwaccel attempts so the transcode
|
|
17724
|
-
* egress never spends a spawn on a backend this build cannot offer. Per-stream
|
|
17725
|
-
* decode fragility (e.g. VideoToolbox HEVC) is still handled by the egress's
|
|
17726
|
-
* software fallback — this only filters out wholly-unsupported backends.
|
|
17727
|
-
*/
|
|
17728
|
-
var HardwareDecodeAccelsSchema = object({
|
|
17748
|
+
object({
|
|
17729
17749
|
methods: array(string()).readonly(),
|
|
17730
17750
|
probedAt: number()
|
|
17731
17751
|
});
|
|
@@ -17788,13 +17808,7 @@ var ResolvedInferenceConfigSchema = object({
|
|
|
17788
17808
|
format: ModelFormatSchema,
|
|
17789
17809
|
reason: string()
|
|
17790
17810
|
});
|
|
17791
|
-
method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema)
|
|
17792
|
-
kind: "mutation",
|
|
17793
|
-
auth: "admin"
|
|
17794
|
-
}), method(_void(), HardwareDecodeAccelsSchema), method(_void(), HardwareDecodeAccelsSchema, {
|
|
17795
|
-
kind: "mutation",
|
|
17796
|
-
auth: "admin"
|
|
17797
|
-
});
|
|
17811
|
+
method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema);
|
|
17798
17812
|
var PtzPresetSchema = object({
|
|
17799
17813
|
id: string(),
|
|
17800
17814
|
name: string()
|
|
@@ -21263,6 +21277,18 @@ Object.freeze({
|
|
|
21263
21277
|
addonId: null,
|
|
21264
21278
|
access: "create"
|
|
21265
21279
|
},
|
|
21280
|
+
"pipelineOrchestrator.setAgentCapabilities": {
|
|
21281
|
+
capName: "pipeline-orchestrator",
|
|
21282
|
+
capScope: "system",
|
|
21283
|
+
addonId: null,
|
|
21284
|
+
access: "create"
|
|
21285
|
+
},
|
|
21286
|
+
"pipelineOrchestrator.setAgentDetectWeight": {
|
|
21287
|
+
capName: "pipeline-orchestrator",
|
|
21288
|
+
capScope: "system",
|
|
21289
|
+
addonId: null,
|
|
21290
|
+
access: "create"
|
|
21291
|
+
},
|
|
21266
21292
|
"pipelineOrchestrator.setAgentMaxCameras": {
|
|
21267
21293
|
capName: "pipeline-orchestrator",
|
|
21268
21294
|
capScope: "system",
|
|
@@ -21419,30 +21445,6 @@ Object.freeze({
|
|
|
21419
21445
|
addonId: null,
|
|
21420
21446
|
access: "view"
|
|
21421
21447
|
},
|
|
21422
|
-
"platformProbe.getHardwareDecodeAccels": {
|
|
21423
|
-
capName: "platform-probe",
|
|
21424
|
-
capScope: "system",
|
|
21425
|
-
addonId: null,
|
|
21426
|
-
access: "view"
|
|
21427
|
-
},
|
|
21428
|
-
"platformProbe.getHardwareEncoders": {
|
|
21429
|
-
capName: "platform-probe",
|
|
21430
|
-
capScope: "system",
|
|
21431
|
-
addonId: null,
|
|
21432
|
-
access: "view"
|
|
21433
|
-
},
|
|
21434
|
-
"platformProbe.refreshHardwareDecodeAccels": {
|
|
21435
|
-
capName: "platform-probe",
|
|
21436
|
-
capScope: "system",
|
|
21437
|
-
addonId: null,
|
|
21438
|
-
access: "create"
|
|
21439
|
-
},
|
|
21440
|
-
"platformProbe.refreshHardwareEncoders": {
|
|
21441
|
-
capName: "platform-probe",
|
|
21442
|
-
capScope: "system",
|
|
21443
|
-
addonId: null,
|
|
21444
|
-
access: "create"
|
|
21445
|
-
},
|
|
21446
21448
|
"platformProbe.resolveHwAccel": {
|
|
21447
21449
|
capName: "platform-probe",
|
|
21448
21450
|
capScope: "system",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camstack/addon-notifiers",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.18",
|
|
4
4
|
"description": "System notifiers addon for CamStack — a `notification-output` collection provider hosting per-kind notifier adapters (ntfy, pushover, gotify, telegram, discord, webhook, zentik).",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|