@camstack/addon-provider-wyze 0.2.70 → 0.2.72
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 +30 -1
- package/dist/addon.mjs +30 -1
- package/package.json +1 -1
package/dist/addon.js
CHANGED
|
@@ -20773,6 +20773,14 @@ var AgentPipelineSettingsSchema = object({
|
|
|
20773
20773
|
/** Node is eligible to be the ingest / source-owner (serve the restream). */
|
|
20774
20774
|
ingest: boolean().optional(),
|
|
20775
20775
|
/**
|
|
20776
|
+
* This node's decode RAM budget, MB. Wins over the cluster
|
|
20777
|
+
* `nodeDecodeBudgetMb`; absent, the runner derives a share of the node's
|
|
20778
|
+
* own RAM unless the operator moved the cluster value (D365).
|
|
20779
|
+
*/
|
|
20780
|
+
decodeBudgetMb: number().int().min(1024).max(65536).optional(),
|
|
20781
|
+
/** This node's live decode-worker cap. Wins over the cluster `maxLiveDecodeWorkers`. */
|
|
20782
|
+
maxLiveDecodeWorkers: number().int().min(1).max(32).optional(),
|
|
20783
|
+
/**
|
|
20776
20784
|
* Operator override for the LAN host a cross-node decoder dials to reach
|
|
20777
20785
|
* THIS node's restream (Cluster UI). Absent → auto-detect: a remote runner
|
|
20778
20786
|
* falls back to its `CAMSTACK_HUB_URL`-derived host (the Moleculer address
|
|
@@ -21234,6 +21242,13 @@ method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
|
|
|
21234
21242
|
}), object({ success: literal(true) }), {
|
|
21235
21243
|
kind: "mutation",
|
|
21236
21244
|
auth: "admin"
|
|
21245
|
+
}), method(object({
|
|
21246
|
+
agentNodeId: string(),
|
|
21247
|
+
decodeBudgetMb: number().int().min(1024).max(65536).nullable().optional(),
|
|
21248
|
+
maxLiveDecodeWorkers: number().int().min(1).max(32).nullable().optional()
|
|
21249
|
+
}), object({ success: literal(true) }), {
|
|
21250
|
+
kind: "mutation",
|
|
21251
|
+
auth: "admin"
|
|
21237
21252
|
}), method(object({
|
|
21238
21253
|
agentNodeId: string(),
|
|
21239
21254
|
reachableHost: string().nullable()
|
|
@@ -33264,7 +33279,15 @@ var BaseDeviceProvider = class extends BaseAddon {
|
|
|
33264
33279
|
if (!Class) throw new Error(`no device class registered for type "${saved.type}"`);
|
|
33265
33280
|
if (saved.parentDeviceId !== null && !restored.has(saved.parentDeviceId)) throw new Error(`parent device ${saved.parentDeviceId} not restored`);
|
|
33266
33281
|
await this.healSavedConfig(saved, savedDevices);
|
|
33267
|
-
|
|
33282
|
+
try {
|
|
33283
|
+
await this.ctx.kernel.devices.create(saved.stableId, Class, {}, saved.parentDeviceId);
|
|
33284
|
+
} catch (err) {
|
|
33285
|
+
if (!(await this.ctx.kernel.devices.getAll()).some((device) => device.stableId === saved.stableId)) throw err;
|
|
33286
|
+
this.ctx.logger.debug("Restore row came to life during its own dial — kept", { tags: {
|
|
33287
|
+
deviceId: saved.id,
|
|
33288
|
+
stableId: saved.stableId
|
|
33289
|
+
} });
|
|
33290
|
+
}
|
|
33268
33291
|
restored.add(saved.id);
|
|
33269
33292
|
};
|
|
33270
33293
|
const topLevel = savedDevices.filter((saved) => saved.parentDeviceId === null);
|
|
@@ -37297,6 +37320,12 @@ Object.freeze({
|
|
|
37297
37320
|
addonId: null,
|
|
37298
37321
|
access: "create"
|
|
37299
37322
|
},
|
|
37323
|
+
"pipelineOrchestrator.setAgentDecodeLimits": {
|
|
37324
|
+
capName: "pipeline-orchestrator",
|
|
37325
|
+
capScope: "system",
|
|
37326
|
+
addonId: null,
|
|
37327
|
+
access: "create"
|
|
37328
|
+
},
|
|
37300
37329
|
"pipelineOrchestrator.setAgentDetectWeight": {
|
|
37301
37330
|
capName: "pipeline-orchestrator",
|
|
37302
37331
|
capScope: "system",
|
package/dist/addon.mjs
CHANGED
|
@@ -20752,6 +20752,14 @@ var AgentPipelineSettingsSchema = object({
|
|
|
20752
20752
|
/** Node is eligible to be the ingest / source-owner (serve the restream). */
|
|
20753
20753
|
ingest: boolean().optional(),
|
|
20754
20754
|
/**
|
|
20755
|
+
* This node's decode RAM budget, MB. Wins over the cluster
|
|
20756
|
+
* `nodeDecodeBudgetMb`; absent, the runner derives a share of the node's
|
|
20757
|
+
* own RAM unless the operator moved the cluster value (D365).
|
|
20758
|
+
*/
|
|
20759
|
+
decodeBudgetMb: number().int().min(1024).max(65536).optional(),
|
|
20760
|
+
/** This node's live decode-worker cap. Wins over the cluster `maxLiveDecodeWorkers`. */
|
|
20761
|
+
maxLiveDecodeWorkers: number().int().min(1).max(32).optional(),
|
|
20762
|
+
/**
|
|
20755
20763
|
* Operator override for the LAN host a cross-node decoder dials to reach
|
|
20756
20764
|
* THIS node's restream (Cluster UI). Absent → auto-detect: a remote runner
|
|
20757
20765
|
* falls back to its `CAMSTACK_HUB_URL`-derived host (the Moleculer address
|
|
@@ -21213,6 +21221,13 @@ method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
|
|
|
21213
21221
|
}), object({ success: literal(true) }), {
|
|
21214
21222
|
kind: "mutation",
|
|
21215
21223
|
auth: "admin"
|
|
21224
|
+
}), method(object({
|
|
21225
|
+
agentNodeId: string(),
|
|
21226
|
+
decodeBudgetMb: number().int().min(1024).max(65536).nullable().optional(),
|
|
21227
|
+
maxLiveDecodeWorkers: number().int().min(1).max(32).nullable().optional()
|
|
21228
|
+
}), object({ success: literal(true) }), {
|
|
21229
|
+
kind: "mutation",
|
|
21230
|
+
auth: "admin"
|
|
21216
21231
|
}), method(object({
|
|
21217
21232
|
agentNodeId: string(),
|
|
21218
21233
|
reachableHost: string().nullable()
|
|
@@ -33243,7 +33258,15 @@ var BaseDeviceProvider = class extends BaseAddon {
|
|
|
33243
33258
|
if (!Class) throw new Error(`no device class registered for type "${saved.type}"`);
|
|
33244
33259
|
if (saved.parentDeviceId !== null && !restored.has(saved.parentDeviceId)) throw new Error(`parent device ${saved.parentDeviceId} not restored`);
|
|
33245
33260
|
await this.healSavedConfig(saved, savedDevices);
|
|
33246
|
-
|
|
33261
|
+
try {
|
|
33262
|
+
await this.ctx.kernel.devices.create(saved.stableId, Class, {}, saved.parentDeviceId);
|
|
33263
|
+
} catch (err) {
|
|
33264
|
+
if (!(await this.ctx.kernel.devices.getAll()).some((device) => device.stableId === saved.stableId)) throw err;
|
|
33265
|
+
this.ctx.logger.debug("Restore row came to life during its own dial — kept", { tags: {
|
|
33266
|
+
deviceId: saved.id,
|
|
33267
|
+
stableId: saved.stableId
|
|
33268
|
+
} });
|
|
33269
|
+
}
|
|
33247
33270
|
restored.add(saved.id);
|
|
33248
33271
|
};
|
|
33249
33272
|
const topLevel = savedDevices.filter((saved) => saved.parentDeviceId === null);
|
|
@@ -37276,6 +37299,12 @@ Object.freeze({
|
|
|
37276
37299
|
addonId: null,
|
|
37277
37300
|
access: "create"
|
|
37278
37301
|
},
|
|
37302
|
+
"pipelineOrchestrator.setAgentDecodeLimits": {
|
|
37303
|
+
capName: "pipeline-orchestrator",
|
|
37304
|
+
capScope: "system",
|
|
37305
|
+
addonId: null,
|
|
37306
|
+
access: "create"
|
|
37307
|
+
},
|
|
37279
37308
|
"pipelineOrchestrator.setAgentDetectWeight": {
|
|
37280
37309
|
capName: "pipeline-orchestrator",
|
|
37281
37310
|
capScope: "system",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camstack/addon-provider-wyze",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.72",
|
|
4
4
|
"description": "Wyze camera device-provider addon for CamStack — wraps the @apocaliss92/wyze-bridge-js P2P/DTLS client, feeding the stream-broker via the pull-rfc4571 lazy-publish path (a structural twin of addon-provider-reolink)",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|