@camstack/addon-provider-tuya 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 +45 -43
- package/dist/addon.mjs +45 -43
- package/package.json +1 -1
package/dist/addon.js
CHANGED
|
@@ -17841,7 +17841,17 @@ var AgentAddonConfigSchema = object({
|
|
|
17841
17841
|
});
|
|
17842
17842
|
var AgentPipelineSettingsSchema = object({
|
|
17843
17843
|
addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
|
|
17844
|
-
maxCameras: number().int().nonnegative().nullable().default(null)
|
|
17844
|
+
maxCameras: number().int().nonnegative().nullable().default(null),
|
|
17845
|
+
/** Per-node detection weight (relative share for the quota balancer). */
|
|
17846
|
+
detectWeight: number().positive().optional(),
|
|
17847
|
+
/** Node is eligible to run the detection pipeline (decode + inference). */
|
|
17848
|
+
detect: boolean().optional(),
|
|
17849
|
+
/** Node is eligible to host decoder sessions. */
|
|
17850
|
+
decode: boolean().optional(),
|
|
17851
|
+
/** Node is eligible to run audio-analyzer sessions. */
|
|
17852
|
+
audio: boolean().optional(),
|
|
17853
|
+
/** Node is eligible to be the ingest / source-owner (serve the restream). */
|
|
17854
|
+
ingest: boolean().optional()
|
|
17845
17855
|
});
|
|
17846
17856
|
var CameraPipelineForAgentSchema = object({
|
|
17847
17857
|
steps: array(PipelineStepInputSchema).readonly(),
|
|
@@ -17916,7 +17926,10 @@ var AgentLoadSummarySchema = object({
|
|
|
17916
17926
|
online: boolean(),
|
|
17917
17927
|
load: RunnerLocalLoadSchema,
|
|
17918
17928
|
/** Computed score used by the L2 capacity balancer (lower = less loaded). */
|
|
17919
|
-
score: number()
|
|
17929
|
+
score: number(),
|
|
17930
|
+
/** This node's decode hwaccel backend (per-node `probedBestHwaccel`), or null
|
|
17931
|
+
* when not yet probed — for the cluster Pipeline table UI (P0.2). */
|
|
17932
|
+
decodeHwaccel: string().nullable()
|
|
17920
17933
|
});
|
|
17921
17934
|
/**
|
|
17922
17935
|
* Aggregate metrics across the whole detection cluster. Replaces the legacy
|
|
@@ -18144,6 +18157,21 @@ method(object({
|
|
|
18144
18157
|
}), object({ success: literal(true) }), {
|
|
18145
18158
|
kind: "mutation",
|
|
18146
18159
|
auth: "admin"
|
|
18160
|
+
}), method(object({
|
|
18161
|
+
agentNodeId: string(),
|
|
18162
|
+
detectWeight: number().positive().nullable()
|
|
18163
|
+
}), object({ success: literal(true) }), {
|
|
18164
|
+
kind: "mutation",
|
|
18165
|
+
auth: "admin"
|
|
18166
|
+
}), method(object({
|
|
18167
|
+
agentNodeId: string(),
|
|
18168
|
+
detect: boolean().nullable().optional(),
|
|
18169
|
+
decode: boolean().nullable().optional(),
|
|
18170
|
+
audio: boolean().nullable().optional(),
|
|
18171
|
+
ingest: boolean().nullable().optional()
|
|
18172
|
+
}), object({ success: literal(true) }), {
|
|
18173
|
+
kind: "mutation",
|
|
18174
|
+
auth: "admin"
|
|
18147
18175
|
}), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
|
|
18148
18176
|
deviceId: number(),
|
|
18149
18177
|
addonId: string(),
|
|
@@ -20452,7 +20480,7 @@ var HardwareEncoderIdSchema = _enum([
|
|
|
20452
20480
|
"libx264",
|
|
20453
20481
|
"libx265"
|
|
20454
20482
|
]);
|
|
20455
|
-
|
|
20483
|
+
object({
|
|
20456
20484
|
encoders: array(object({
|
|
20457
20485
|
encoder: HardwareEncoderIdSchema,
|
|
20458
20486
|
codec: _enum(["H264", "H265"]),
|
|
@@ -20471,15 +20499,7 @@ var HardwareEncodersSchema = object({
|
|
|
20471
20499
|
defaultH265: HardwareEncoderIdSchema,
|
|
20472
20500
|
probedAt: number()
|
|
20473
20501
|
});
|
|
20474
|
-
|
|
20475
|
-
* Decode-side companion to {@link HardwareEncodersSchema}: the `-hwaccel`
|
|
20476
|
-
* methods the configured ffmpeg binary actually supports (parsed from
|
|
20477
|
-
* `ffmpeg -hwaccels`). Used to gate decode-hwaccel attempts so the transcode
|
|
20478
|
-
* egress never spends a spawn on a backend this build cannot offer. Per-stream
|
|
20479
|
-
* decode fragility (e.g. VideoToolbox HEVC) is still handled by the egress's
|
|
20480
|
-
* software fallback — this only filters out wholly-unsupported backends.
|
|
20481
|
-
*/
|
|
20482
|
-
var HardwareDecodeAccelsSchema = object({
|
|
20502
|
+
object({
|
|
20483
20503
|
methods: array(string()).readonly(),
|
|
20484
20504
|
probedAt: number()
|
|
20485
20505
|
});
|
|
@@ -20542,13 +20562,7 @@ var ResolvedInferenceConfigSchema = object({
|
|
|
20542
20562
|
format: ModelFormatSchema,
|
|
20543
20563
|
reason: string()
|
|
20544
20564
|
});
|
|
20545
|
-
method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema)
|
|
20546
|
-
kind: "mutation",
|
|
20547
|
-
auth: "admin"
|
|
20548
|
-
}), method(_void(), HardwareDecodeAccelsSchema), method(_void(), HardwareDecodeAccelsSchema, {
|
|
20549
|
-
kind: "mutation",
|
|
20550
|
-
auth: "admin"
|
|
20551
|
-
});
|
|
20565
|
+
method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema);
|
|
20552
20566
|
var PtzPresetSchema = object({
|
|
20553
20567
|
id: string(),
|
|
20554
20568
|
name: string()
|
|
@@ -24017,6 +24031,18 @@ Object.freeze({
|
|
|
24017
24031
|
addonId: null,
|
|
24018
24032
|
access: "create"
|
|
24019
24033
|
},
|
|
24034
|
+
"pipelineOrchestrator.setAgentCapabilities": {
|
|
24035
|
+
capName: "pipeline-orchestrator",
|
|
24036
|
+
capScope: "system",
|
|
24037
|
+
addonId: null,
|
|
24038
|
+
access: "create"
|
|
24039
|
+
},
|
|
24040
|
+
"pipelineOrchestrator.setAgentDetectWeight": {
|
|
24041
|
+
capName: "pipeline-orchestrator",
|
|
24042
|
+
capScope: "system",
|
|
24043
|
+
addonId: null,
|
|
24044
|
+
access: "create"
|
|
24045
|
+
},
|
|
24020
24046
|
"pipelineOrchestrator.setAgentMaxCameras": {
|
|
24021
24047
|
capName: "pipeline-orchestrator",
|
|
24022
24048
|
capScope: "system",
|
|
@@ -24173,30 +24199,6 @@ Object.freeze({
|
|
|
24173
24199
|
addonId: null,
|
|
24174
24200
|
access: "view"
|
|
24175
24201
|
},
|
|
24176
|
-
"platformProbe.getHardwareDecodeAccels": {
|
|
24177
|
-
capName: "platform-probe",
|
|
24178
|
-
capScope: "system",
|
|
24179
|
-
addonId: null,
|
|
24180
|
-
access: "view"
|
|
24181
|
-
},
|
|
24182
|
-
"platformProbe.getHardwareEncoders": {
|
|
24183
|
-
capName: "platform-probe",
|
|
24184
|
-
capScope: "system",
|
|
24185
|
-
addonId: null,
|
|
24186
|
-
access: "view"
|
|
24187
|
-
},
|
|
24188
|
-
"platformProbe.refreshHardwareDecodeAccels": {
|
|
24189
|
-
capName: "platform-probe",
|
|
24190
|
-
capScope: "system",
|
|
24191
|
-
addonId: null,
|
|
24192
|
-
access: "create"
|
|
24193
|
-
},
|
|
24194
|
-
"platformProbe.refreshHardwareEncoders": {
|
|
24195
|
-
capName: "platform-probe",
|
|
24196
|
-
capScope: "system",
|
|
24197
|
-
addonId: null,
|
|
24198
|
-
access: "create"
|
|
24199
|
-
},
|
|
24200
24202
|
"platformProbe.resolveHwAccel": {
|
|
24201
24203
|
capName: "platform-probe",
|
|
24202
24204
|
capScope: "system",
|
package/dist/addon.mjs
CHANGED
|
@@ -17840,7 +17840,17 @@ var AgentAddonConfigSchema = object({
|
|
|
17840
17840
|
});
|
|
17841
17841
|
var AgentPipelineSettingsSchema = object({
|
|
17842
17842
|
addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
|
|
17843
|
-
maxCameras: number().int().nonnegative().nullable().default(null)
|
|
17843
|
+
maxCameras: number().int().nonnegative().nullable().default(null),
|
|
17844
|
+
/** Per-node detection weight (relative share for the quota balancer). */
|
|
17845
|
+
detectWeight: number().positive().optional(),
|
|
17846
|
+
/** Node is eligible to run the detection pipeline (decode + inference). */
|
|
17847
|
+
detect: boolean().optional(),
|
|
17848
|
+
/** Node is eligible to host decoder sessions. */
|
|
17849
|
+
decode: boolean().optional(),
|
|
17850
|
+
/** Node is eligible to run audio-analyzer sessions. */
|
|
17851
|
+
audio: boolean().optional(),
|
|
17852
|
+
/** Node is eligible to be the ingest / source-owner (serve the restream). */
|
|
17853
|
+
ingest: boolean().optional()
|
|
17844
17854
|
});
|
|
17845
17855
|
var CameraPipelineForAgentSchema = object({
|
|
17846
17856
|
steps: array(PipelineStepInputSchema).readonly(),
|
|
@@ -17915,7 +17925,10 @@ var AgentLoadSummarySchema = object({
|
|
|
17915
17925
|
online: boolean(),
|
|
17916
17926
|
load: RunnerLocalLoadSchema,
|
|
17917
17927
|
/** Computed score used by the L2 capacity balancer (lower = less loaded). */
|
|
17918
|
-
score: number()
|
|
17928
|
+
score: number(),
|
|
17929
|
+
/** This node's decode hwaccel backend (per-node `probedBestHwaccel`), or null
|
|
17930
|
+
* when not yet probed — for the cluster Pipeline table UI (P0.2). */
|
|
17931
|
+
decodeHwaccel: string().nullable()
|
|
17919
17932
|
});
|
|
17920
17933
|
/**
|
|
17921
17934
|
* Aggregate metrics across the whole detection cluster. Replaces the legacy
|
|
@@ -18143,6 +18156,21 @@ method(object({
|
|
|
18143
18156
|
}), object({ success: literal(true) }), {
|
|
18144
18157
|
kind: "mutation",
|
|
18145
18158
|
auth: "admin"
|
|
18159
|
+
}), method(object({
|
|
18160
|
+
agentNodeId: string(),
|
|
18161
|
+
detectWeight: number().positive().nullable()
|
|
18162
|
+
}), object({ success: literal(true) }), {
|
|
18163
|
+
kind: "mutation",
|
|
18164
|
+
auth: "admin"
|
|
18165
|
+
}), method(object({
|
|
18166
|
+
agentNodeId: string(),
|
|
18167
|
+
detect: boolean().nullable().optional(),
|
|
18168
|
+
decode: boolean().nullable().optional(),
|
|
18169
|
+
audio: boolean().nullable().optional(),
|
|
18170
|
+
ingest: boolean().nullable().optional()
|
|
18171
|
+
}), object({ success: literal(true) }), {
|
|
18172
|
+
kind: "mutation",
|
|
18173
|
+
auth: "admin"
|
|
18146
18174
|
}), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
|
|
18147
18175
|
deviceId: number(),
|
|
18148
18176
|
addonId: string(),
|
|
@@ -20451,7 +20479,7 @@ var HardwareEncoderIdSchema = _enum([
|
|
|
20451
20479
|
"libx264",
|
|
20452
20480
|
"libx265"
|
|
20453
20481
|
]);
|
|
20454
|
-
|
|
20482
|
+
object({
|
|
20455
20483
|
encoders: array(object({
|
|
20456
20484
|
encoder: HardwareEncoderIdSchema,
|
|
20457
20485
|
codec: _enum(["H264", "H265"]),
|
|
@@ -20470,15 +20498,7 @@ var HardwareEncodersSchema = object({
|
|
|
20470
20498
|
defaultH265: HardwareEncoderIdSchema,
|
|
20471
20499
|
probedAt: number()
|
|
20472
20500
|
});
|
|
20473
|
-
|
|
20474
|
-
* Decode-side companion to {@link HardwareEncodersSchema}: the `-hwaccel`
|
|
20475
|
-
* methods the configured ffmpeg binary actually supports (parsed from
|
|
20476
|
-
* `ffmpeg -hwaccels`). Used to gate decode-hwaccel attempts so the transcode
|
|
20477
|
-
* egress never spends a spawn on a backend this build cannot offer. Per-stream
|
|
20478
|
-
* decode fragility (e.g. VideoToolbox HEVC) is still handled by the egress's
|
|
20479
|
-
* software fallback — this only filters out wholly-unsupported backends.
|
|
20480
|
-
*/
|
|
20481
|
-
var HardwareDecodeAccelsSchema = object({
|
|
20501
|
+
object({
|
|
20482
20502
|
methods: array(string()).readonly(),
|
|
20483
20503
|
probedAt: number()
|
|
20484
20504
|
});
|
|
@@ -20541,13 +20561,7 @@ var ResolvedInferenceConfigSchema = object({
|
|
|
20541
20561
|
format: ModelFormatSchema,
|
|
20542
20562
|
reason: string()
|
|
20543
20563
|
});
|
|
20544
|
-
method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema)
|
|
20545
|
-
kind: "mutation",
|
|
20546
|
-
auth: "admin"
|
|
20547
|
-
}), method(_void(), HardwareDecodeAccelsSchema), method(_void(), HardwareDecodeAccelsSchema, {
|
|
20548
|
-
kind: "mutation",
|
|
20549
|
-
auth: "admin"
|
|
20550
|
-
});
|
|
20564
|
+
method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema);
|
|
20551
20565
|
var PtzPresetSchema = object({
|
|
20552
20566
|
id: string(),
|
|
20553
20567
|
name: string()
|
|
@@ -24016,6 +24030,18 @@ Object.freeze({
|
|
|
24016
24030
|
addonId: null,
|
|
24017
24031
|
access: "create"
|
|
24018
24032
|
},
|
|
24033
|
+
"pipelineOrchestrator.setAgentCapabilities": {
|
|
24034
|
+
capName: "pipeline-orchestrator",
|
|
24035
|
+
capScope: "system",
|
|
24036
|
+
addonId: null,
|
|
24037
|
+
access: "create"
|
|
24038
|
+
},
|
|
24039
|
+
"pipelineOrchestrator.setAgentDetectWeight": {
|
|
24040
|
+
capName: "pipeline-orchestrator",
|
|
24041
|
+
capScope: "system",
|
|
24042
|
+
addonId: null,
|
|
24043
|
+
access: "create"
|
|
24044
|
+
},
|
|
24019
24045
|
"pipelineOrchestrator.setAgentMaxCameras": {
|
|
24020
24046
|
capName: "pipeline-orchestrator",
|
|
24021
24047
|
capScope: "system",
|
|
@@ -24172,30 +24198,6 @@ Object.freeze({
|
|
|
24172
24198
|
addonId: null,
|
|
24173
24199
|
access: "view"
|
|
24174
24200
|
},
|
|
24175
|
-
"platformProbe.getHardwareDecodeAccels": {
|
|
24176
|
-
capName: "platform-probe",
|
|
24177
|
-
capScope: "system",
|
|
24178
|
-
addonId: null,
|
|
24179
|
-
access: "view"
|
|
24180
|
-
},
|
|
24181
|
-
"platformProbe.getHardwareEncoders": {
|
|
24182
|
-
capName: "platform-probe",
|
|
24183
|
-
capScope: "system",
|
|
24184
|
-
addonId: null,
|
|
24185
|
-
access: "view"
|
|
24186
|
-
},
|
|
24187
|
-
"platformProbe.refreshHardwareDecodeAccels": {
|
|
24188
|
-
capName: "platform-probe",
|
|
24189
|
-
capScope: "system",
|
|
24190
|
-
addonId: null,
|
|
24191
|
-
access: "create"
|
|
24192
|
-
},
|
|
24193
|
-
"platformProbe.refreshHardwareEncoders": {
|
|
24194
|
-
capName: "platform-probe",
|
|
24195
|
-
capScope: "system",
|
|
24196
|
-
addonId: null,
|
|
24197
|
-
access: "create"
|
|
24198
|
-
},
|
|
24199
24201
|
"platformProbe.resolveHwAccel": {
|
|
24200
24202
|
capName: "platform-probe",
|
|
24201
24203
|
capScope: "system",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camstack/addon-provider-tuya",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3",
|
|
4
4
|
"description": "Tuya / Smart Life device-provider addon for CamStack — account-onboarded (Tuya IoT cloud fetch of device localKeys) + LOCAL DP control via the @apocaliss92/nodetuya encrypted-LAN client, exposing switch / water-heater-family kettle entities",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|