@camstack/addon-provider-hikvision 1.1.4 → 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/addon.js CHANGED
@@ -4631,7 +4631,7 @@ function _instanceof(cls, params = {}) {
4631
4631
  return inst;
4632
4632
  }
4633
4633
  //#endregion
4634
- //#region ../types/dist/sleep-_J5S7OEP.mjs
4634
+ //#region ../types/dist/sleep-NOH4yRwj.mjs
4635
4635
  var EventCategory = /* @__PURE__ */ function(EventCategory) {
4636
4636
  EventCategory["SystemBoot"] = "system.boot";
4637
4637
  EventCategory["SystemAddonsReady"] = "system.addons-ready";
@@ -15653,7 +15653,8 @@ method(object({
15653
15653
  sessionId: string().optional()
15654
15654
  }), ConvertResultSchema, {
15655
15655
  kind: "mutation",
15656
- auth: "admin"
15656
+ auth: "admin",
15657
+ timeoutMs: 6e5
15657
15658
  });
15658
15659
  var AddonHttpRouteSchema = object({
15659
15660
  method: _enum([
@@ -17232,7 +17233,14 @@ var NotificationRuleConditionsSchema = object({
17232
17233
  /** Match against `event.data.eventType` token (e.g. `'press_long'`). When non-empty, only events
17233
17234
  * carrying a matching `data.eventType` string pass this condition. Rules without this field are
17234
17235
  * unaffected (back-compat). Distinct from `rule.eventTypes` which holds EventCategory strings. */
17235
- eventTypeTokens: array(string()).readonly().optional()
17236
+ eventTypeTokens: array(string()).readonly().optional(),
17237
+ /** Match detections whose CLIP image embedding is semantically similar to this free-text
17238
+ * description. Requires the embedding-encoder cap to have pre-warmed the text vector.
17239
+ * `minSimilarity` is the cosine similarity threshold in [0, 1]. */
17240
+ clipDescription: object({
17241
+ text: string().min(1),
17242
+ minSimilarity: number().min(0).max(1)
17243
+ }).optional()
17236
17244
  });
17237
17245
  var NotificationRuleTemplateSchema = object({
17238
17246
  title: string(),
@@ -17474,6 +17482,16 @@ var TrackedDetectionSchema = object({
17474
17482
  zones: array(string()).readonly(),
17475
17483
  state: TrackStateSchema
17476
17484
  });
17485
+ var ScoredObjectEventSchema = ObjectEventSchema.extend({ score: number() });
17486
+ var SearchObjectEventsInput = object({
17487
+ text: string(),
17488
+ deviceId: number().optional(),
17489
+ since: number().optional(),
17490
+ until: number().optional(),
17491
+ classFilter: string().optional(),
17492
+ limit: number().default(50),
17493
+ minScore: number().min(0).max(1).default(.2)
17494
+ });
17477
17495
  DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).readonly()), method(object({
17478
17496
  deviceId: number(),
17479
17497
  trackId: string()
@@ -17508,7 +17526,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
17508
17526
  }), method(object({
17509
17527
  eventId: string(),
17510
17528
  kind: MediaFileKindEnum.optional()
17511
- }), array(MediaFileSchema).readonly()), method(object({ trackId: string() }), array(MediaFileSchema).readonly()), object({
17529
+ }), array(MediaFileSchema).readonly()), method(object({ trackId: string() }), array(MediaFileSchema).readonly()), method(SearchObjectEventsInput, array(ScoredObjectEventSchema).readonly()), object({
17512
17530
  deviceId: number(),
17513
17531
  timestamp: number(),
17514
17532
  frameWidth: number(),
@@ -22533,6 +22551,12 @@ Object.freeze({
22533
22551
  addonId: null,
22534
22552
  access: "create"
22535
22553
  },
22554
+ "pipelineAnalytics.searchObjectEvents": {
22555
+ capName: "pipeline-analytics",
22556
+ capScope: "device",
22557
+ addonId: null,
22558
+ access: "view"
22559
+ },
22536
22560
  "pipelineExecutor.cacheFrameInPool": {
22537
22561
  capName: "pipeline-executor",
22538
22562
  capScope: "system",
package/dist/addon.mjs CHANGED
@@ -4630,7 +4630,7 @@ function _instanceof(cls, params = {}) {
4630
4630
  return inst;
4631
4631
  }
4632
4632
  //#endregion
4633
- //#region ../types/dist/sleep-_J5S7OEP.mjs
4633
+ //#region ../types/dist/sleep-NOH4yRwj.mjs
4634
4634
  var EventCategory = /* @__PURE__ */ function(EventCategory) {
4635
4635
  EventCategory["SystemBoot"] = "system.boot";
4636
4636
  EventCategory["SystemAddonsReady"] = "system.addons-ready";
@@ -15652,7 +15652,8 @@ method(object({
15652
15652
  sessionId: string().optional()
15653
15653
  }), ConvertResultSchema, {
15654
15654
  kind: "mutation",
15655
- auth: "admin"
15655
+ auth: "admin",
15656
+ timeoutMs: 6e5
15656
15657
  });
15657
15658
  var AddonHttpRouteSchema = object({
15658
15659
  method: _enum([
@@ -17231,7 +17232,14 @@ var NotificationRuleConditionsSchema = object({
17231
17232
  /** Match against `event.data.eventType` token (e.g. `'press_long'`). When non-empty, only events
17232
17233
  * carrying a matching `data.eventType` string pass this condition. Rules without this field are
17233
17234
  * unaffected (back-compat). Distinct from `rule.eventTypes` which holds EventCategory strings. */
17234
- eventTypeTokens: array(string()).readonly().optional()
17235
+ eventTypeTokens: array(string()).readonly().optional(),
17236
+ /** Match detections whose CLIP image embedding is semantically similar to this free-text
17237
+ * description. Requires the embedding-encoder cap to have pre-warmed the text vector.
17238
+ * `minSimilarity` is the cosine similarity threshold in [0, 1]. */
17239
+ clipDescription: object({
17240
+ text: string().min(1),
17241
+ minSimilarity: number().min(0).max(1)
17242
+ }).optional()
17235
17243
  });
17236
17244
  var NotificationRuleTemplateSchema = object({
17237
17245
  title: string(),
@@ -17473,6 +17481,16 @@ var TrackedDetectionSchema = object({
17473
17481
  zones: array(string()).readonly(),
17474
17482
  state: TrackStateSchema
17475
17483
  });
17484
+ var ScoredObjectEventSchema = ObjectEventSchema.extend({ score: number() });
17485
+ var SearchObjectEventsInput = object({
17486
+ text: string(),
17487
+ deviceId: number().optional(),
17488
+ since: number().optional(),
17489
+ until: number().optional(),
17490
+ classFilter: string().optional(),
17491
+ limit: number().default(50),
17492
+ minScore: number().min(0).max(1).default(.2)
17493
+ });
17476
17494
  DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).readonly()), method(object({
17477
17495
  deviceId: number(),
17478
17496
  trackId: string()
@@ -17507,7 +17525,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
17507
17525
  }), method(object({
17508
17526
  eventId: string(),
17509
17527
  kind: MediaFileKindEnum.optional()
17510
- }), array(MediaFileSchema).readonly()), method(object({ trackId: string() }), array(MediaFileSchema).readonly()), object({
17528
+ }), array(MediaFileSchema).readonly()), method(object({ trackId: string() }), array(MediaFileSchema).readonly()), method(SearchObjectEventsInput, array(ScoredObjectEventSchema).readonly()), object({
17511
17529
  deviceId: number(),
17512
17530
  timestamp: number(),
17513
17531
  frameWidth: number(),
@@ -22532,6 +22550,12 @@ Object.freeze({
22532
22550
  addonId: null,
22533
22551
  access: "create"
22534
22552
  },
22553
+ "pipelineAnalytics.searchObjectEvents": {
22554
+ capName: "pipeline-analytics",
22555
+ capScope: "device",
22556
+ addonId: null,
22557
+ access: "view"
22558
+ },
22535
22559
  "pipelineExecutor.cacheFrameInPool": {
22536
22560
  capName: "pipeline-executor",
22537
22561
  capScope: "system",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-hikvision",
3
- "version": "1.1.4",
3
+ "version": "1.1.5",
4
4
  "description": "Hikvision camera device provider addon for CamStack — ISAPI over HTTP(S) with digest auth (snapshot, alarm stream, RTSP discovery)",
5
5
  "keywords": [
6
6
  "camstack",