@camstack/addon-static-turn 1.1.3 → 1.1.5
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/static-turn.addon.js +44 -11
- package/dist/static-turn.addon.mjs +44 -11
- package/package.json +1 -1
|
@@ -4628,7 +4628,7 @@ function _instanceof(cls, params = {}) {
|
|
|
4628
4628
|
return inst;
|
|
4629
4629
|
}
|
|
4630
4630
|
//#endregion
|
|
4631
|
-
//#region ../types/dist/sleep-
|
|
4631
|
+
//#region ../types/dist/sleep-NOH4yRwj.mjs
|
|
4632
4632
|
var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
4633
4633
|
EventCategory["SystemBoot"] = "system.boot";
|
|
4634
4634
|
EventCategory["SystemAddonsReady"] = "system.addons-ready";
|
|
@@ -5743,15 +5743,24 @@ var BaseAddon = class {
|
|
|
5743
5743
|
} catch {}
|
|
5744
5744
|
}
|
|
5745
5745
|
/**
|
|
5746
|
-
* Resolve the shared models directory
|
|
5747
|
-
*
|
|
5748
|
-
*
|
|
5746
|
+
* Resolve the shared, node-local models directory: `<nodeDataDir>/models`.
|
|
5747
|
+
*
|
|
5748
|
+
* This is the SINGLE centralized models-dir resolver for every inference addon
|
|
5749
|
+
* (detection-pipeline, audio-analyzer, embedding-encoder, model-studio). It is
|
|
5750
|
+
* anchored at the node's own writable data root (`ctx.nodeDataDir`, i.e.
|
|
5751
|
+
* `CAMSTACK_DATA` ?? the kernel boot dir) — never the hub-singleton `storage`
|
|
5752
|
+
* cap, which returns the hub's `/data/models` to every node and breaks any node
|
|
5753
|
+
* whose real data dir differs (e.g. the macOS electron agent).
|
|
5754
|
+
*
|
|
5755
|
+
* `node:path`/`node:fs` are imported dynamically so the `@camstack/types` root
|
|
5756
|
+
* barrel (re-exported into browser bundles) stays free of node builtins.
|
|
5749
5757
|
*/
|
|
5750
5758
|
async resolveModelsDir() {
|
|
5751
|
-
|
|
5752
|
-
|
|
5753
|
-
|
|
5754
|
-
|
|
5759
|
+
const { join } = await import("node:path");
|
|
5760
|
+
const { promises: fsp } = await import("node:fs");
|
|
5761
|
+
const dir = join(this.ctx.nodeDataDir, "models");
|
|
5762
|
+
await fsp.mkdir(dir, { recursive: true });
|
|
5763
|
+
return dir;
|
|
5755
5764
|
}
|
|
5756
5765
|
/**
|
|
5757
5766
|
* Access the runtime capability registry for in-process provider lookups.
|
|
@@ -12647,7 +12656,8 @@ method(object({
|
|
|
12647
12656
|
sessionId: string().optional()
|
|
12648
12657
|
}), ConvertResultSchema, {
|
|
12649
12658
|
kind: "mutation",
|
|
12650
|
-
auth: "admin"
|
|
12659
|
+
auth: "admin",
|
|
12660
|
+
timeoutMs: 6e5
|
|
12651
12661
|
});
|
|
12652
12662
|
var AddonHttpRouteSchema = object({
|
|
12653
12663
|
method: _enum([
|
|
@@ -14206,7 +14216,14 @@ var NotificationRuleConditionsSchema = object({
|
|
|
14206
14216
|
/** Match against `event.data.eventType` token (e.g. `'press_long'`). When non-empty, only events
|
|
14207
14217
|
* carrying a matching `data.eventType` string pass this condition. Rules without this field are
|
|
14208
14218
|
* unaffected (back-compat). Distinct from `rule.eventTypes` which holds EventCategory strings. */
|
|
14209
|
-
eventTypeTokens: array(string()).readonly().optional()
|
|
14219
|
+
eventTypeTokens: array(string()).readonly().optional(),
|
|
14220
|
+
/** Match detections whose CLIP image embedding is semantically similar to this free-text
|
|
14221
|
+
* description. Requires the embedding-encoder cap to have pre-warmed the text vector.
|
|
14222
|
+
* `minSimilarity` is the cosine similarity threshold in [0, 1]. */
|
|
14223
|
+
clipDescription: object({
|
|
14224
|
+
text: string().min(1),
|
|
14225
|
+
minSimilarity: number().min(0).max(1)
|
|
14226
|
+
}).optional()
|
|
14210
14227
|
});
|
|
14211
14228
|
var NotificationRuleTemplateSchema = object({
|
|
14212
14229
|
title: string(),
|
|
@@ -14448,6 +14465,16 @@ var TrackedDetectionSchema = object({
|
|
|
14448
14465
|
zones: array(string()).readonly(),
|
|
14449
14466
|
state: TrackStateSchema
|
|
14450
14467
|
});
|
|
14468
|
+
var ScoredObjectEventSchema = ObjectEventSchema.extend({ score: number() });
|
|
14469
|
+
var SearchObjectEventsInput = object({
|
|
14470
|
+
text: string(),
|
|
14471
|
+
deviceId: number().optional(),
|
|
14472
|
+
since: number().optional(),
|
|
14473
|
+
until: number().optional(),
|
|
14474
|
+
classFilter: string().optional(),
|
|
14475
|
+
limit: number().default(50),
|
|
14476
|
+
minScore: number().min(0).max(1).default(.2)
|
|
14477
|
+
});
|
|
14451
14478
|
DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).readonly()), method(object({
|
|
14452
14479
|
deviceId: number(),
|
|
14453
14480
|
trackId: string()
|
|
@@ -14482,7 +14509,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
14482
14509
|
}), method(object({
|
|
14483
14510
|
eventId: string(),
|
|
14484
14511
|
kind: MediaFileKindEnum.optional()
|
|
14485
|
-
}), array(MediaFileSchema).readonly()), method(object({ trackId: string() }), array(MediaFileSchema).readonly()), object({
|
|
14512
|
+
}), array(MediaFileSchema).readonly()), method(object({ trackId: string() }), array(MediaFileSchema).readonly()), method(SearchObjectEventsInput, array(ScoredObjectEventSchema).readonly()), object({
|
|
14486
14513
|
deviceId: number(),
|
|
14487
14514
|
timestamp: number(),
|
|
14488
14515
|
frameWidth: number(),
|
|
@@ -19132,6 +19159,12 @@ Object.freeze({
|
|
|
19132
19159
|
addonId: null,
|
|
19133
19160
|
access: "create"
|
|
19134
19161
|
},
|
|
19162
|
+
"pipelineAnalytics.searchObjectEvents": {
|
|
19163
|
+
capName: "pipeline-analytics",
|
|
19164
|
+
capScope: "device",
|
|
19165
|
+
addonId: null,
|
|
19166
|
+
access: "view"
|
|
19167
|
+
},
|
|
19135
19168
|
"pipelineExecutor.cacheFrameInPool": {
|
|
19136
19169
|
capName: "pipeline-executor",
|
|
19137
19170
|
capScope: "system",
|
|
@@ -4627,7 +4627,7 @@ function _instanceof(cls, params = {}) {
|
|
|
4627
4627
|
return inst;
|
|
4628
4628
|
}
|
|
4629
4629
|
//#endregion
|
|
4630
|
-
//#region ../types/dist/sleep-
|
|
4630
|
+
//#region ../types/dist/sleep-NOH4yRwj.mjs
|
|
4631
4631
|
var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
4632
4632
|
EventCategory["SystemBoot"] = "system.boot";
|
|
4633
4633
|
EventCategory["SystemAddonsReady"] = "system.addons-ready";
|
|
@@ -5742,15 +5742,24 @@ var BaseAddon = class {
|
|
|
5742
5742
|
} catch {}
|
|
5743
5743
|
}
|
|
5744
5744
|
/**
|
|
5745
|
-
* Resolve the shared models directory
|
|
5746
|
-
*
|
|
5747
|
-
*
|
|
5745
|
+
* Resolve the shared, node-local models directory: `<nodeDataDir>/models`.
|
|
5746
|
+
*
|
|
5747
|
+
* This is the SINGLE centralized models-dir resolver for every inference addon
|
|
5748
|
+
* (detection-pipeline, audio-analyzer, embedding-encoder, model-studio). It is
|
|
5749
|
+
* anchored at the node's own writable data root (`ctx.nodeDataDir`, i.e.
|
|
5750
|
+
* `CAMSTACK_DATA` ?? the kernel boot dir) — never the hub-singleton `storage`
|
|
5751
|
+
* cap, which returns the hub's `/data/models` to every node and breaks any node
|
|
5752
|
+
* whose real data dir differs (e.g. the macOS electron agent).
|
|
5753
|
+
*
|
|
5754
|
+
* `node:path`/`node:fs` are imported dynamically so the `@camstack/types` root
|
|
5755
|
+
* barrel (re-exported into browser bundles) stays free of node builtins.
|
|
5748
5756
|
*/
|
|
5749
5757
|
async resolveModelsDir() {
|
|
5750
|
-
|
|
5751
|
-
|
|
5752
|
-
|
|
5753
|
-
|
|
5758
|
+
const { join } = await import("node:path");
|
|
5759
|
+
const { promises: fsp } = await import("node:fs");
|
|
5760
|
+
const dir = join(this.ctx.nodeDataDir, "models");
|
|
5761
|
+
await fsp.mkdir(dir, { recursive: true });
|
|
5762
|
+
return dir;
|
|
5754
5763
|
}
|
|
5755
5764
|
/**
|
|
5756
5765
|
* Access the runtime capability registry for in-process provider lookups.
|
|
@@ -12646,7 +12655,8 @@ method(object({
|
|
|
12646
12655
|
sessionId: string().optional()
|
|
12647
12656
|
}), ConvertResultSchema, {
|
|
12648
12657
|
kind: "mutation",
|
|
12649
|
-
auth: "admin"
|
|
12658
|
+
auth: "admin",
|
|
12659
|
+
timeoutMs: 6e5
|
|
12650
12660
|
});
|
|
12651
12661
|
var AddonHttpRouteSchema = object({
|
|
12652
12662
|
method: _enum([
|
|
@@ -14205,7 +14215,14 @@ var NotificationRuleConditionsSchema = object({
|
|
|
14205
14215
|
/** Match against `event.data.eventType` token (e.g. `'press_long'`). When non-empty, only events
|
|
14206
14216
|
* carrying a matching `data.eventType` string pass this condition. Rules without this field are
|
|
14207
14217
|
* unaffected (back-compat). Distinct from `rule.eventTypes` which holds EventCategory strings. */
|
|
14208
|
-
eventTypeTokens: array(string()).readonly().optional()
|
|
14218
|
+
eventTypeTokens: array(string()).readonly().optional(),
|
|
14219
|
+
/** Match detections whose CLIP image embedding is semantically similar to this free-text
|
|
14220
|
+
* description. Requires the embedding-encoder cap to have pre-warmed the text vector.
|
|
14221
|
+
* `minSimilarity` is the cosine similarity threshold in [0, 1]. */
|
|
14222
|
+
clipDescription: object({
|
|
14223
|
+
text: string().min(1),
|
|
14224
|
+
minSimilarity: number().min(0).max(1)
|
|
14225
|
+
}).optional()
|
|
14209
14226
|
});
|
|
14210
14227
|
var NotificationRuleTemplateSchema = object({
|
|
14211
14228
|
title: string(),
|
|
@@ -14447,6 +14464,16 @@ var TrackedDetectionSchema = object({
|
|
|
14447
14464
|
zones: array(string()).readonly(),
|
|
14448
14465
|
state: TrackStateSchema
|
|
14449
14466
|
});
|
|
14467
|
+
var ScoredObjectEventSchema = ObjectEventSchema.extend({ score: number() });
|
|
14468
|
+
var SearchObjectEventsInput = object({
|
|
14469
|
+
text: string(),
|
|
14470
|
+
deviceId: number().optional(),
|
|
14471
|
+
since: number().optional(),
|
|
14472
|
+
until: number().optional(),
|
|
14473
|
+
classFilter: string().optional(),
|
|
14474
|
+
limit: number().default(50),
|
|
14475
|
+
minScore: number().min(0).max(1).default(.2)
|
|
14476
|
+
});
|
|
14450
14477
|
DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).readonly()), method(object({
|
|
14451
14478
|
deviceId: number(),
|
|
14452
14479
|
trackId: string()
|
|
@@ -14481,7 +14508,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
14481
14508
|
}), method(object({
|
|
14482
14509
|
eventId: string(),
|
|
14483
14510
|
kind: MediaFileKindEnum.optional()
|
|
14484
|
-
}), array(MediaFileSchema).readonly()), method(object({ trackId: string() }), array(MediaFileSchema).readonly()), object({
|
|
14511
|
+
}), array(MediaFileSchema).readonly()), method(object({ trackId: string() }), array(MediaFileSchema).readonly()), method(SearchObjectEventsInput, array(ScoredObjectEventSchema).readonly()), object({
|
|
14485
14512
|
deviceId: number(),
|
|
14486
14513
|
timestamp: number(),
|
|
14487
14514
|
frameWidth: number(),
|
|
@@ -19131,6 +19158,12 @@ Object.freeze({
|
|
|
19131
19158
|
addonId: null,
|
|
19132
19159
|
access: "create"
|
|
19133
19160
|
},
|
|
19161
|
+
"pipelineAnalytics.searchObjectEvents": {
|
|
19162
|
+
capName: "pipeline-analytics",
|
|
19163
|
+
capScope: "device",
|
|
19164
|
+
addonId: null,
|
|
19165
|
+
access: "view"
|
|
19166
|
+
},
|
|
19134
19167
|
"pipelineExecutor.cacheFrameInPool": {
|
|
19135
19168
|
capName: "pipeline-executor",
|
|
19136
19169
|
capScope: "system",
|