@trillboards/api-client 1.2.3 → 1.2.4

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.
@@ -429,7 +429,7 @@ type CreatePartnerSensingRouteRequest = {
429
429
  name: string;
430
430
  /** Bind to a named Sense Anything profile (stable across redeploys). */
431
431
  profileName?: string;
432
- /** Optional per-camera selected areas. Every entry must reference screenMongoIds. Supported only for visual threshold alerts using once_per_episode, on_escalation, or nag_until_resolved cadence; not digest, group-targeted, non-visual, or per_new_entity routes. */
432
+ /** Optional per-camera rectangles or polygon lassos. Every entry must reference screenMongoIds. Supported only for visual threshold alerts using once_per_episode, on_escalation, or nag_until_resolved cadence; not digest, group-targeted, non-visual, or per_new_entity routes. */
433
433
  screenFocusRegions?: Array<SensingRouteScreenFocusRegion>;
434
434
  /** Screens to watch — all owned by this partner (foreign → 403). Provide EITHER screenMongoIds OR targetGroupId, not both. */
435
435
  screenMongoIds?: Array<string>;
@@ -2015,10 +2015,15 @@ type SensingRouteCondition = {
2015
2015
  value?: number | string | boolean;
2016
2016
  };
2017
2017
  /**
2018
- * A normalized camera rectangle used only by this alert. Coordinates are fractions of the full frame; omitted cameras use the whole view.
2018
+ * A normalized camera area used only by this alert. The rectangle is the compatibility bounding box; optional ordered points define the exact lasso perimeter. Omitted cameras use the whole view.
2019
2019
  */
2020
2020
  type SensingRouteScreenFocusRegion = {
2021
2021
  height: number;
2022
+ /** Ordered non-self-intersecting lasso vertices, normalized to a 0.01 coordinate grid so the saved perimeter is represented exactly in model instructions. The perimeter closes from the last point to the first. */
2023
+ points?: Array<{
2024
+ x: number;
2025
+ y: number;
2026
+ }>;
2022
2027
  screenMongoId: string;
2023
2028
  width: number;
2024
2029
  x: number;
@@ -2160,7 +2165,7 @@ type UpdatePartnerSensingRouteRequest = {
2160
2165
  enabled?: boolean;
2161
2166
  name?: string;
2162
2167
  profileName?: string | null;
2163
- /** Replace all selected areas for the route; send [] to return every camera to whole view. Entries must target the route's explicit screenMongoIds. */
2168
+ /** Replace all selected rectangles or polygon lassos for the route; send [] to return every camera to whole view. Entries must target the route's explicit screenMongoIds. */
2164
2169
  screenFocusRegions?: Array<SensingRouteScreenFocusRegion>;
2165
2170
  screenMongoIds?: Array<string>;
2166
2171
  /** DEPRECATED and rejected on write with 400. A duration expressed as N readings inside a fixed window can only be satisfied by a screen reporting faster than window/(N-1) seconds, and nothing knows that rate when the route is saved - so the route saves cleanly and then never fires at all. Send sustainSeconds instead. Still honoured for rows that already carry it. */
@@ -429,7 +429,7 @@ type CreatePartnerSensingRouteRequest = {
429
429
  name: string;
430
430
  /** Bind to a named Sense Anything profile (stable across redeploys). */
431
431
  profileName?: string;
432
- /** Optional per-camera selected areas. Every entry must reference screenMongoIds. Supported only for visual threshold alerts using once_per_episode, on_escalation, or nag_until_resolved cadence; not digest, group-targeted, non-visual, or per_new_entity routes. */
432
+ /** Optional per-camera rectangles or polygon lassos. Every entry must reference screenMongoIds. Supported only for visual threshold alerts using once_per_episode, on_escalation, or nag_until_resolved cadence; not digest, group-targeted, non-visual, or per_new_entity routes. */
433
433
  screenFocusRegions?: Array<SensingRouteScreenFocusRegion>;
434
434
  /** Screens to watch — all owned by this partner (foreign → 403). Provide EITHER screenMongoIds OR targetGroupId, not both. */
435
435
  screenMongoIds?: Array<string>;
@@ -2015,10 +2015,15 @@ type SensingRouteCondition = {
2015
2015
  value?: number | string | boolean;
2016
2016
  };
2017
2017
  /**
2018
- * A normalized camera rectangle used only by this alert. Coordinates are fractions of the full frame; omitted cameras use the whole view.
2018
+ * A normalized camera area used only by this alert. The rectangle is the compatibility bounding box; optional ordered points define the exact lasso perimeter. Omitted cameras use the whole view.
2019
2019
  */
2020
2020
  type SensingRouteScreenFocusRegion = {
2021
2021
  height: number;
2022
+ /** Ordered non-self-intersecting lasso vertices, normalized to a 0.01 coordinate grid so the saved perimeter is represented exactly in model instructions. The perimeter closes from the last point to the first. */
2023
+ points?: Array<{
2024
+ x: number;
2025
+ y: number;
2026
+ }>;
2022
2027
  screenMongoId: string;
2023
2028
  width: number;
2024
2029
  x: number;
@@ -2160,7 +2165,7 @@ type UpdatePartnerSensingRouteRequest = {
2160
2165
  enabled?: boolean;
2161
2166
  name?: string;
2162
2167
  profileName?: string | null;
2163
- /** Replace all selected areas for the route; send [] to return every camera to whole view. Entries must target the route's explicit screenMongoIds. */
2168
+ /** Replace all selected rectangles or polygon lassos for the route; send [] to return every camera to whole view. Entries must target the route's explicit screenMongoIds. */
2164
2169
  screenFocusRegions?: Array<SensingRouteScreenFocusRegion>;
2165
2170
  screenMongoIds?: Array<string>;
2166
2171
  /** DEPRECATED and rejected on write with 400. A duration expressed as N readings inside a fixed window can only be satisfied by a screen reporting faster than window/(N-1) seconds, and nothing knows that rate when the route is saved - so the route saves cleanly and then never fires at all. Send sustainSeconds instead. Still honoured for rows that already carry it. */