@trillboards/edge-sdk 0.2.127 → 0.2.129
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/DetectorFieldProducer.d.ts +36 -0
- package/dist/DetectorFieldProducer.d.ts.map +1 -1
- package/dist/DetectorFieldProducer.js +67 -3
- package/dist/DetectorFieldProducer.js.map +1 -1
- package/dist/EdgeAgent.js +1 -1
- package/dist/SetupSessionClient.d.ts +52 -1
- package/dist/SetupSessionClient.d.ts.map +1 -1
- package/dist/SetupSessionClient.js +109 -4
- package/dist/SetupSessionClient.js.map +1 -1
- package/dist/diagnose.d.ts +1 -1
- package/dist/diagnose.js +1 -1
- package/dist/jpegFrameSize.d.ts +30 -0
- package/dist/jpegFrameSize.d.ts.map +1 -0
- package/dist/jpegFrameSize.js +94 -0
- package/dist/jpegFrameSize.js.map +1 -0
- package/dist/setupMode.d.ts +18 -1
- package/dist/setupMode.d.ts.map +1 -1
- package/dist/setupMode.js +95 -9
- package/dist/setupMode.js.map +1 -1
- package/dist/zoneContainment.d.ts +62 -0
- package/dist/zoneContainment.d.ts.map +1 -1
- package/dist/zoneContainment.js +108 -0
- package/dist/zoneContainment.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* The pixel dimensions of a JPEG, read from its own header.
|
|
4
|
+
*
|
|
5
|
+
* WHY THIS EXISTS AT ALL. A detector box arrives in PIXELS and an operator's
|
|
6
|
+
* region is NORMALIZED, so one of them has to be converted and neither the
|
|
7
|
+
* detector wire nor `DetectResult` carries a frame size. Asking the service for
|
|
8
|
+
* one would change a FROZEN contract (`cctv-detector-tier.md`: it carries
|
|
9
|
+
* `classes` and nothing else) to obtain a number already present in the bytes we
|
|
10
|
+
* just sent it.
|
|
11
|
+
*
|
|
12
|
+
* WHY NOT A DECODE. `sharp` is not a connector dependency and a full decode of
|
|
13
|
+
* every frame to learn two integers is a per-frame cost on the hot path. The SOF
|
|
14
|
+
* marker is 9 bytes into a segment that appears once, near the front.
|
|
15
|
+
*
|
|
16
|
+
* IT RETURNS NULL RATHER THAN GUESSING. A truncated or non-JPEG buffer has no
|
|
17
|
+
* dimensions, and inventing 1920x1080 would silently rescale every region — a
|
|
18
|
+
* doorway at x=0.4 lands somewhere else and the alert quietly watches the wrong
|
|
19
|
+
* part of the room. The caller must treat null as "no region can be applied",
|
|
20
|
+
* which degrades to the unfocused count rather than to zero.
|
|
21
|
+
*/
|
|
22
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
+
exports.readJpegFrameSize = readJpegFrameSize;
|
|
24
|
+
/**
|
|
25
|
+
* Every Start-Of-Frame marker. SOF0/1/2 are the common ones; the rest are
|
|
26
|
+
* arithmetic/progressive/lossless variants that carry the SAME 5-byte header.
|
|
27
|
+
*
|
|
28
|
+
* NOT in this set on purpose: 0xC4 (DHT), 0xC8 (JPG, reserved) and 0xCC (DAC)
|
|
29
|
+
* share the 0xC0-0xCF range and are NOT frame headers. Reading dimensions out of
|
|
30
|
+
* a Huffman table is how a frame ends up 1x1 with no error anywhere.
|
|
31
|
+
*/
|
|
32
|
+
const SOF_MARKERS = new Set([
|
|
33
|
+
0xc0, 0xc1, 0xc2, 0xc3,
|
|
34
|
+
0xc5, 0xc6, 0xc7,
|
|
35
|
+
0xc9, 0xca, 0xcb,
|
|
36
|
+
0xcd, 0xce, 0xcf,
|
|
37
|
+
]);
|
|
38
|
+
/**
|
|
39
|
+
* @param jpeg the raw bytes, exactly as posted to the detector
|
|
40
|
+
* @returns the frame size, or null when the buffer is not a readable JPEG
|
|
41
|
+
*/
|
|
42
|
+
function readJpegFrameSize(jpeg) {
|
|
43
|
+
if (!jpeg || jpeg.length < 4)
|
|
44
|
+
return null;
|
|
45
|
+
// SOI. A buffer that does not start with it is not a JPEG, and scanning on
|
|
46
|
+
// would find a "marker" in arbitrary payload bytes.
|
|
47
|
+
if (jpeg[0] !== 0xff || jpeg[1] !== 0xd8)
|
|
48
|
+
return null;
|
|
49
|
+
let i = 2;
|
|
50
|
+
while (i + 3 < jpeg.length) {
|
|
51
|
+
if (jpeg[i] !== 0xff) {
|
|
52
|
+
// Not at a marker. Resynchronising by scanning would read entropy-coded
|
|
53
|
+
// data as structure, so this refuses instead.
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
let marker = jpeg[i + 1];
|
|
57
|
+
// 0xFF fill bytes are legal padding before a marker.
|
|
58
|
+
let j = i + 1;
|
|
59
|
+
while (marker === 0xff && j + 1 < jpeg.length) {
|
|
60
|
+
j += 1;
|
|
61
|
+
marker = jpeg[j];
|
|
62
|
+
}
|
|
63
|
+
if (marker === 0xd8 || (marker >= 0xd0 && marker <= 0xd9)) {
|
|
64
|
+
i = j + 1;
|
|
65
|
+
continue;
|
|
66
|
+
}
|
|
67
|
+
// SOS: entropy-coded data begins and no SOF can follow. A JPEG that reaches
|
|
68
|
+
// here without one has no dimensions we can read.
|
|
69
|
+
if (marker === 0xda)
|
|
70
|
+
return null;
|
|
71
|
+
const lenAt = j + 1;
|
|
72
|
+
if (lenAt + 1 >= jpeg.length)
|
|
73
|
+
return null;
|
|
74
|
+
const segLen = (jpeg[lenAt] << 8) | jpeg[lenAt + 1];
|
|
75
|
+
if (segLen < 2)
|
|
76
|
+
return null;
|
|
77
|
+
if (SOF_MARKERS.has(marker)) {
|
|
78
|
+
// length(2) precision(1) height(2) width(2)
|
|
79
|
+
const h = lenAt + 3;
|
|
80
|
+
if (h + 3 >= jpeg.length)
|
|
81
|
+
return null;
|
|
82
|
+
const height = (jpeg[h] << 8) | jpeg[h + 1];
|
|
83
|
+
const width = (jpeg[h + 2] << 8) | jpeg[h + 3];
|
|
84
|
+
// A zero dimension is a malformed header, not a frame. Returning it would
|
|
85
|
+
// divide by zero downstream, or worse, be clamped to something plausible.
|
|
86
|
+
if (width <= 0 || height <= 0)
|
|
87
|
+
return null;
|
|
88
|
+
return { width, height };
|
|
89
|
+
}
|
|
90
|
+
i = lenAt + segLen;
|
|
91
|
+
}
|
|
92
|
+
return null;
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=jpegFrameSize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jpegFrameSize.js","sourceRoot":"","sources":["../src/jpegFrameSize.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;AA0BH,8CAyCC;AAjED;;;;;;;GAOG;AACH,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC;IAC1B,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;IACtB,IAAI,EAAE,IAAI,EAAE,IAAI;IAChB,IAAI,EAAE,IAAI,EAAE,IAAI;IAChB,IAAI,EAAE,IAAI,EAAE,IAAI;CACjB,CAAC,CAAC;AAOH;;;GAGG;AACH,SAAgB,iBAAiB,CAAC,IAAmC;IACnE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1C,2EAA2E;IAC3E,oDAAoD;IACpD,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAEtD,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAC3B,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACrB,wEAAwE;YACxE,8CAA8C;YAC9C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,MAAM,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACzB,qDAAqD;QACrD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,OAAO,MAAM,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YAAC,CAAC,IAAI,CAAC,CAAC;YAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAAC,CAAC;QAC5E,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,CAAC,EAAE,CAAC;YAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAAC,SAAS;QAAC,CAAC;QACnF,4EAA4E;QAC5E,kDAAkD;QAClD,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAEjC,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;QACpB,IAAI,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QAC1C,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACpD,IAAI,MAAM,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QAE5B,IAAI,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5B,4CAA4C;YAC5C,MAAM,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;YACpB,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM;gBAAE,OAAO,IAAI,CAAC;YACtC,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5C,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/C,0EAA0E;YAC1E,0EAA0E;YAC1E,IAAI,KAAK,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAC3B,CAAC;QACD,CAAC,GAAG,KAAK,GAAG,MAAM,CAAC;IACrB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/dist/setupMode.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SetupSessionClient } from './SetupSessionClient';
|
|
2
|
-
import { probeHost, type ChannelProbeResult } from './ChannelProber';
|
|
2
|
+
import { probeHost, grabOneFrameAnyTransport, type ChannelProbeResult } from './ChannelProber';
|
|
3
3
|
import { discoverOnvifHosts, sweepLanForRecorders } from './discovery';
|
|
4
4
|
import type { SetupProgressReporter } from './setupProgress';
|
|
5
5
|
/**
|
|
@@ -23,6 +23,21 @@ import type { SetupProgressReporter } from './setupProgress';
|
|
|
23
23
|
* NVR credentials live ONLY in memory here (delivered per probe command) and
|
|
24
24
|
* are persisted solely into the local config file (0600) at finalize.
|
|
25
25
|
*/
|
|
26
|
+
/**
|
|
27
|
+
* The heading over a refused claim, chosen by the SERVER'S code.
|
|
28
|
+
*
|
|
29
|
+
* This used to be the single string 'Use an account that can add cameras',
|
|
30
|
+
* written when a missing permission was the only way a claim could be refused.
|
|
31
|
+
* Three codes reach it now, and a paywall refusal rendered under that heading
|
|
32
|
+
* tells the owner to go and find a different account — which will not work,
|
|
33
|
+
* because nothing is wrong with the account they are using.
|
|
34
|
+
*
|
|
35
|
+
* The MESSAGE always comes from the server; only the heading is chosen here,
|
|
36
|
+
* and an unrecognised code gets a neutral one rather than a guessed reason. A
|
|
37
|
+
* fielded connector must never invent a cause for a refusal a newer server
|
|
38
|
+
* added after it shipped.
|
|
39
|
+
*/
|
|
40
|
+
export declare function claimIssueTitle(code: string | undefined): string;
|
|
26
41
|
export interface SetupModeOptions {
|
|
27
42
|
apiBaseUrl: string;
|
|
28
43
|
/** Portal opened for the automatic signed-in browser handoff. */
|
|
@@ -38,6 +53,8 @@ export interface SetupModeOptions {
|
|
|
38
53
|
discover?: typeof discoverOnvifHosts;
|
|
39
54
|
sweep?: typeof sweepLanForRecorders;
|
|
40
55
|
probe?: typeof probeHost;
|
|
56
|
+
/** Direct-URL frame grab. Injectable so the probe_url path is testable at all. */
|
|
57
|
+
grabFrame?: typeof grabOneFrameAnyTransport;
|
|
41
58
|
sleep?: (ms: number) => Promise<void>;
|
|
42
59
|
/** Injectable browser opener; false keeps the displayed-code fallback. */
|
|
43
60
|
openPortal?: (url: string) => Promise<boolean>;
|
package/dist/setupMode.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setupMode.d.ts","sourceRoot":"","sources":["../src/setupMode.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,kBAAkB,EAA+C,MAAM,sBAAsB,CAAC;AACvG,OAAO,EACL,SAAS,
|
|
1
|
+
{"version":3,"file":"setupMode.d.ts","sourceRoot":"","sources":["../src/setupMode.ts"],"names":[],"mappings":"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"}
|
package/dist/setupMode.js
CHANGED
|
@@ -34,6 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.DEFAULT_PORTAL_BASE_URL = void 0;
|
|
37
|
+
exports.claimIssueTitle = claimIssueTitle;
|
|
37
38
|
exports.setupHostFingerprint = setupHostFingerprint;
|
|
38
39
|
exports.buildSetupPortalUrl = buildSetupPortalUrl;
|
|
39
40
|
exports.openSetupPortal = openSetupPortal;
|
|
@@ -54,6 +55,53 @@ const recorderRanking_1 = require("./recorderRanking");
|
|
|
54
55
|
const connectorCadence_1 = require("./connectorCadence");
|
|
55
56
|
const legacyRecorderProfile_1 = require("./legacyRecorderProfile");
|
|
56
57
|
const RecorderAddressRecovery_1 = require("./RecorderAddressRecovery");
|
|
58
|
+
/**
|
|
59
|
+
* setupMode — `trillboards-edge setup`: the connector side of the
|
|
60
|
+
* validate-first onboarding flow (direction-inverted pairing).
|
|
61
|
+
*
|
|
62
|
+
* 1. start a SETUP SESSION and DISPLAY the short code (the owner claims it
|
|
63
|
+
* in the portal — the ad-screen direction: device shows, owner types)
|
|
64
|
+
* 2. poll; once claimed, run LAN discovery (ONVIF multicast + a TCP
|
|
65
|
+
* port-sweep for the huge no-ONVIF analog-DVR installed base) and report
|
|
66
|
+
* 3. execute probe/discover commands (ChannelProber — NVR-safe: auth
|
|
67
|
+
* circuit-breaker, session-slot caps, real enumeration), streaming
|
|
68
|
+
* per-channel results + thumbnails as they settle
|
|
69
|
+
* 4. when the owner finalizes, receive the config (screens + device tokens +
|
|
70
|
+
* credential-free connection recipes), reassemble full rtsp:// URLs from
|
|
71
|
+
* the LOCALLY-held credentials (they never round-trip through the
|
|
72
|
+
* server), write trillboards.config.json, and exit 0 — the platform
|
|
73
|
+
* wrapper then starts + verifies the background sensing service exactly
|
|
74
|
+
* as in the honest-pairing flow.
|
|
75
|
+
*
|
|
76
|
+
* NVR credentials live ONLY in memory here (delivered per probe command) and
|
|
77
|
+
* are persisted solely into the local config file (0600) at finalize.
|
|
78
|
+
*/
|
|
79
|
+
/**
|
|
80
|
+
* The heading over a refused claim, chosen by the SERVER'S code.
|
|
81
|
+
*
|
|
82
|
+
* This used to be the single string 'Use an account that can add cameras',
|
|
83
|
+
* written when a missing permission was the only way a claim could be refused.
|
|
84
|
+
* Three codes reach it now, and a paywall refusal rendered under that heading
|
|
85
|
+
* tells the owner to go and find a different account — which will not work,
|
|
86
|
+
* because nothing is wrong with the account they are using.
|
|
87
|
+
*
|
|
88
|
+
* The MESSAGE always comes from the server; only the heading is chosen here,
|
|
89
|
+
* and an unrecognised code gets a neutral one rather than a guessed reason. A
|
|
90
|
+
* fielded connector must never invent a cause for a refusal a newer server
|
|
91
|
+
* added after it shipped.
|
|
92
|
+
*/
|
|
93
|
+
function claimIssueTitle(code) {
|
|
94
|
+
switch (code) {
|
|
95
|
+
case 'ACCOUNT_PERMISSION_REQUIRED':
|
|
96
|
+
return 'Use an account that can add cameras';
|
|
97
|
+
case 'SUBSCRIPTION_REQUIRED':
|
|
98
|
+
return 'Choose a plan to finish setup';
|
|
99
|
+
case 'ENTITLEMENT_LAPSED':
|
|
100
|
+
return 'Update your payment details';
|
|
101
|
+
default:
|
|
102
|
+
return 'Finish setting up your account';
|
|
103
|
+
}
|
|
104
|
+
}
|
|
57
105
|
/** Stable, non-PII connector fingerprint (same derivation as cli.ts pairing). */
|
|
58
106
|
function setupHostFingerprint() {
|
|
59
107
|
const raw = `${os.hostname()}|${process.platform}|${os.arch()}`;
|
|
@@ -517,6 +565,8 @@ async function runSetupMode(opts) {
|
|
|
517
565
|
let discoveryReported = false;
|
|
518
566
|
const validatedChannelKeys = new Set();
|
|
519
567
|
const rejectedChannelKeys = new Set();
|
|
568
|
+
/** Channels the SERVER has acknowledged storing — not merely ones we probed. */
|
|
569
|
+
const acceptedChannelKeys = new Set();
|
|
520
570
|
const reportValidationProgress = () => {
|
|
521
571
|
progress({
|
|
522
572
|
stage: 'validating',
|
|
@@ -605,6 +655,12 @@ async function runSetupMode(opts) {
|
|
|
605
655
|
onResult: async (r) => {
|
|
606
656
|
sentAny = true;
|
|
607
657
|
probedByChannelKey.set(r.channelKey, r);
|
|
658
|
+
// Acceptance is about THIS result, not about the channel for the
|
|
659
|
+
// life of the run. A leased command is re-delivered, so a channel
|
|
660
|
+
// accepted on an earlier execution must not vouch for the result
|
|
661
|
+
// this one just produced — that would refuse to clear a tick the
|
|
662
|
+
// server never took, which is the exact mismatch being fixed.
|
|
663
|
+
acceptedChannelKeys.delete(r.channelKey);
|
|
608
664
|
try {
|
|
609
665
|
// Incremental posts are progress only. The API deliberately
|
|
610
666
|
// treats a results post carrying commandId as the terminal
|
|
@@ -612,6 +668,7 @@ async function runSetupMode(opts) {
|
|
|
612
668
|
// Recorder isolation comes from host-qualified channel keys;
|
|
613
669
|
// local credentials are independently keyed by recorder host.
|
|
614
670
|
await client.reportResults([r]);
|
|
671
|
+
acceptedChannelKeys.add(r.channelKey);
|
|
615
672
|
}
|
|
616
673
|
catch (err) {
|
|
617
674
|
if (err instanceof SetupSessionClient_1.SetupSessionExpiredError)
|
|
@@ -651,9 +708,24 @@ async function runSetupMode(opts) {
|
|
|
651
708
|
catch (err) {
|
|
652
709
|
if (err instanceof SetupSessionClient_1.SetupSessionExpiredError)
|
|
653
710
|
throw err;
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
711
|
+
// Same rule as the direct-stream probe: unreported is not validated,
|
|
712
|
+
// and leaving the command unacked is what lets the server re-deliver it.
|
|
713
|
+
log(' ✗ recorder channels — could not reach Sense Anything to save the results.');
|
|
714
|
+
log(` ${err.message}`);
|
|
715
|
+
log(' Retrying automatically — leave this window open.');
|
|
716
|
+
// Clear ONLY the channels the server never took. An incremental post
|
|
717
|
+
// that succeeded is already merged server-side by channelKey, and the
|
|
718
|
+
// portal is showing it — un-counting it here would make the installer
|
|
719
|
+
// contradict the page the customer is looking at.
|
|
720
|
+
for (const r of results) {
|
|
721
|
+
const key = r.channelKey;
|
|
722
|
+
if (key && !acceptedChannelKeys.has(key)) {
|
|
723
|
+
validatedChannelKeys.delete(key);
|
|
724
|
+
rejectedChannelKeys.delete(key);
|
|
725
|
+
}
|
|
726
|
+
}
|
|
727
|
+
reportValidationProgress();
|
|
728
|
+
return;
|
|
657
729
|
}
|
|
658
730
|
// Incremental channel results are progress, not completion. Keep a
|
|
659
731
|
// separate terminal marker so the portal cannot enable Finalize while a
|
|
@@ -669,7 +741,7 @@ async function runSetupMode(opts) {
|
|
|
669
741
|
await client.heartbeat('probing', 'direct stream link');
|
|
670
742
|
log(`Checking direct camera stream at ${(0, ChannelProber_1.sanitizeRtspUrlForLog)(streamUrl)}…`);
|
|
671
743
|
reportValidationProgress();
|
|
672
|
-
const grab = await (
|
|
744
|
+
const grab = await (opts.grabFrame ?? ChannelProber_1.grabOneFrameAnyTransport)(streamUrl, {
|
|
673
745
|
ffmpegPath: opts.ffmpegPath,
|
|
674
746
|
timeoutMs: 8000,
|
|
675
747
|
});
|
|
@@ -696,14 +768,25 @@ async function runSetupMode(opts) {
|
|
|
696
768
|
host: info.host,
|
|
697
769
|
port: info.port,
|
|
698
770
|
};
|
|
771
|
+
// A result the SERVER did not accept is not a result. The portal is the
|
|
772
|
+
// only place this camera can be picked, so a tick here on a report that
|
|
773
|
+
// never landed strands the customer: the installer says the camera works
|
|
774
|
+
// and the portal has nothing to select. Do NOT ack either — the server
|
|
775
|
+
// leases commands and re-delivers an unacked one, which is the only
|
|
776
|
+
// recovery path there is.
|
|
699
777
|
try {
|
|
700
778
|
await client.reportResults([result], command.commandId);
|
|
701
779
|
}
|
|
702
780
|
catch (err) {
|
|
703
781
|
if (err instanceof SetupSessionClient_1.SetupSessionExpiredError)
|
|
704
782
|
throw err;
|
|
705
|
-
log(`
|
|
706
|
-
|
|
783
|
+
log(` ✗ direct camera stream — could not reach Sense Anything to save the result.`);
|
|
784
|
+
log(` ${err.message}`);
|
|
785
|
+
log(' Retrying automatically — leave this window open.');
|
|
786
|
+
validatedChannelKeys.delete(result.channelKey);
|
|
787
|
+
rejectedChannelKeys.delete(result.channelKey);
|
|
788
|
+
reportValidationProgress();
|
|
789
|
+
return;
|
|
707
790
|
}
|
|
708
791
|
await client.heartbeat('probe_complete', command.commandId).catch(() => { });
|
|
709
792
|
log(result.status === 'validated'
|
|
@@ -755,7 +838,7 @@ async function runSetupMode(opts) {
|
|
|
755
838
|
progress({
|
|
756
839
|
stage: polled.claimIssue ? 'account_attention' : 'waiting_for_account',
|
|
757
840
|
title: polled.claimIssue
|
|
758
|
-
?
|
|
841
|
+
? claimIssueTitle(polled.claimIssue.code)
|
|
759
842
|
: 'Connect your Sense Anything account',
|
|
760
843
|
message: polled.claimIssue
|
|
761
844
|
? polled.claimIssue.message
|
|
@@ -780,10 +863,13 @@ async function runSetupMode(opts) {
|
|
|
780
863
|
}
|
|
781
864
|
if (polled.claimIssue && polled.claimIssue.atMs > lastClaimIssueAtMs) {
|
|
782
865
|
lastClaimIssueAtMs = polled.claimIssue.atMs;
|
|
783
|
-
|
|
866
|
+
// The server's own sentence, never a local guess: it is the only side
|
|
867
|
+
// that knows WHY the claim was refused, and a connector that predates
|
|
868
|
+
// the reason would otherwise state the wrong one confidently.
|
|
869
|
+
log(polled.claimIssue.message);
|
|
784
870
|
progress({
|
|
785
871
|
stage: 'account_attention',
|
|
786
|
-
title:
|
|
872
|
+
title: claimIssueTitle(polled.claimIssue.code),
|
|
787
873
|
message: polled.claimIssue.message,
|
|
788
874
|
displayCode: displayCodeFormatted,
|
|
789
875
|
...(portalUrl ? { portalUrl } : {}),
|
package/dist/setupMode.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setupMode.js","sourceRoot":"","sources":["../src/setupMode.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setupMode.js","sourceRoot":"","sources":["../src/setupMode.ts"],"names":[],"mappings":"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"}
|
|
@@ -62,6 +62,24 @@
|
|
|
62
62
|
* in a different package. Its clamping is the reason `assertNormalizedRect`
|
|
63
63
|
* can be strict — the rect always arrives already inside [0,1].
|
|
64
64
|
*/
|
|
65
|
+
/**
|
|
66
|
+
* The operator's region as a POLYGON, whichever shape it was saved as.
|
|
67
|
+
*
|
|
68
|
+
* A lasso is already a polygon; a rect is the four-corner polygon of itself.
|
|
69
|
+
* Collapsing them means containment has ONE branch instead of two — and the
|
|
70
|
+
* RECTANGLE form predates the lasso and leaks just as badly, so a fix that only
|
|
71
|
+
* handled polygons would leave the older shape exactly as broken.
|
|
72
|
+
*
|
|
73
|
+
* Mirrors `trillboard-api/services/fein/regionContainment.js`, which the
|
|
74
|
+
* region-obedience harness scores. `regionContainmentParity.test.ts` asserts the
|
|
75
|
+
* two agree on a shared fixture table, because two implementations of one
|
|
76
|
+
* predicate that nothing compares is how a focused alert means different things
|
|
77
|
+
* on the server and on the box.
|
|
78
|
+
*/
|
|
79
|
+
export interface NormalizedPoint {
|
|
80
|
+
x: number;
|
|
81
|
+
y: number;
|
|
82
|
+
}
|
|
65
83
|
/** A rectangle in normalized [0,1] frame coordinates, as the operator drew it. */
|
|
66
84
|
export interface NormalizedRect {
|
|
67
85
|
x: number;
|
|
@@ -144,5 +162,49 @@ export declare function evaluateZone(box: PixelBox, frame: FrameSize, rect: Norm
|
|
|
144
162
|
* existing behaviour rather than to zero. A zone that silently counts nothing is
|
|
145
163
|
* indistinguishable from a quiet venue, and that is the whole failure mode here.
|
|
146
164
|
*/
|
|
165
|
+
/**
|
|
166
|
+
* The four corners of a rect, in the order an operator's lasso would trace.
|
|
167
|
+
*/
|
|
168
|
+
export declare function rectAsPolygon(rect: NormalizedRect): NormalizedPoint[];
|
|
169
|
+
/**
|
|
170
|
+
* A polygon VERTEX in [0,1], refused loudly outside it.
|
|
171
|
+
*
|
|
172
|
+
* Separate from `assertNormalizedRect` because that one also requires a positive
|
|
173
|
+
* extent, which no vertex has. The failure it guards against is the same and is
|
|
174
|
+
* the reason both exist: pixels are numerically valid here, so a rect at x=640
|
|
175
|
+
* would clamp to the frame edge and every person would read as outside it, with
|
|
176
|
+
* no symptom but an alert that never fires.
|
|
177
|
+
*/
|
|
178
|
+
export declare function assertNormalizedPoint(p: NormalizedPoint): void;
|
|
179
|
+
/**
|
|
180
|
+
* Ray casting, with the boundary counted as INSIDE.
|
|
181
|
+
*
|
|
182
|
+
* Boundary-inclusive because an operator drawing a doorway draws it AROUND the
|
|
183
|
+
* doorway, and a foot on the line is in the doorway. The alternative loses
|
|
184
|
+
* exactly the cases the region was drawn for.
|
|
185
|
+
*/
|
|
186
|
+
export declare function pointInPolygon(px: number, py: number, poly: NormalizedPoint[]): boolean;
|
|
187
|
+
/**
|
|
188
|
+
* Ground contact of a pixel box against a normalized POLYGON.
|
|
189
|
+
*
|
|
190
|
+
* Same predicate as `evaluateZone`'s default and for the same physical reason: a
|
|
191
|
+
* person is in the doorway if their FEET are.
|
|
192
|
+
*/
|
|
193
|
+
export declare function boxInPolygon(box: PixelBox, frame: FrameSize, poly: NormalizedPoint[]): {
|
|
194
|
+
inside: boolean;
|
|
195
|
+
groundContact: NormalizedPoint;
|
|
196
|
+
};
|
|
197
|
+
/**
|
|
198
|
+
* How many detections fall inside the operator's region.
|
|
199
|
+
*
|
|
200
|
+
* A NULL region means none was drawn, and then the count is EVERY detection —
|
|
201
|
+
* what the unfocused field already means. Absence degrades to the existing
|
|
202
|
+
* behaviour and never to zero: a region that silently counts nothing is
|
|
203
|
+
* indistinguishable from a quiet venue, which is the failure this whole area
|
|
204
|
+
* keeps producing.
|
|
205
|
+
*/
|
|
206
|
+
export declare function countInRegion(boxes: PixelBox[], frame: FrameSize, region: {
|
|
207
|
+
points?: NormalizedPoint[];
|
|
208
|
+
} & Partial<NormalizedRect> | null | undefined): number;
|
|
147
209
|
export declare function countInZone(boxes: PixelBox[], frame: FrameSize, rect: NormalizedRect | null | undefined, predicate?: ZonePredicate): number;
|
|
148
210
|
//# sourceMappingURL=zoneContainment.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zoneContainment.d.ts","sourceRoot":"","sources":["../src/zoneContainment.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG;AAEH,kFAAkF;AAClF,MAAM,WAAW,cAAc;IAC7B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,uDAAuD;AACvD,MAAM,WAAW,QAAQ;IACvB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,eAAe,CAAA;CAAE,GACzB;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhD,eAAO,MAAM,sBAAsB,EAAE,aAAyC,CAAC;AAE/E,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,OAAO,CAAC;IAChB;;;;;;;;OAQG;IACH,eAAe,EAAE,MAAM,CAAC;IACxB,8EAA8E;IAC9E,aAAa,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACzC;AAQD;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI,CAgB/D;AAED,mFAAmF;AACnF,wBAAgB,YAAY,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,GAAG,cAAc,CAgB5E;AAiBD;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,QAAQ,EACb,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,cAAc,EACpB,SAAS,GAAE,aAAsC,GAChD,WAAW,CAmBb;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,QAAQ,EAAE,EACjB,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS,EACvC,SAAS,GAAE,aAAsC,GAChD,MAAM,CAGR"}
|
|
1
|
+
{"version":3,"file":"zoneContainment.d.ts","sourceRoot":"","sources":["../src/zoneContainment.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG;AAEH;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,eAAe;IAC9B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,kFAAkF;AAClF,MAAM,WAAW,cAAc;IAC7B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,uDAAuD;AACvD,MAAM,WAAW,QAAQ;IACvB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,eAAe,CAAA;CAAE,GACzB;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhD,eAAO,MAAM,sBAAsB,EAAE,aAAyC,CAAC;AAE/E,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,OAAO,CAAC;IAChB;;;;;;;;OAQG;IACH,eAAe,EAAE,MAAM,CAAC;IACxB,8EAA8E;IAC9E,aAAa,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACzC;AAQD;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI,CAgB/D;AAED,mFAAmF;AACnF,wBAAgB,YAAY,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,GAAG,cAAc,CAgB5E;AAiBD;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,QAAQ,EACb,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,cAAc,EACpB,SAAS,GAAE,aAAsC,GAChD,WAAW,CAmBb;AAED;;;;;;;;GAQG;AACH;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,eAAe,EAAE,CAQrE;AAID;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,eAAe,GAAG,IAAI,CAY9D;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,OAAO,CAmBvF;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,QAAQ,EACb,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,eAAe,EAAE,GACtB;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,aAAa,EAAE,eAAe,CAAA;CAAE,CAOrD;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,QAAQ,EAAE,EACjB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE;IAAE,MAAM,CAAC,EAAE,eAAe,EAAE,CAAA;CAAE,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,GAAG,SAAS,GAClF,MAAM,CAeR;AAED,wBAAgB,WAAW,CACzB,KAAK,EAAE,QAAQ,EAAE,EACjB,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS,EACvC,SAAS,GAAE,aAAsC,GAChD,MAAM,CAGR"}
|