@trillboards/edge-sdk 0.2.4 → 0.2.7
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/README.md +4 -3
- package/deploy/docker/Dockerfile.cloud-sense +117 -0
- package/deploy/docker/Dockerfile.cpu +30 -21
- package/deploy/docker/Dockerfile.cuda +30 -21
- package/deploy/docker/Dockerfile.openvino +30 -20
- package/deploy/docker/README.md +9 -5
- package/deploy/docker/connector-entrypoint.sh +122 -0
- package/deploy/helm/README.md +1 -1
- package/deploy/k8s/daemonset.yaml +1 -1
- package/deploy/macos/README.md +161 -0
- package/deploy/macos/TrillboardsSetupApp.m +603 -0
- package/deploy/macos/build-macos-pkg.sh +588 -0
- package/deploy/macos/com.trillboards.edge.plist +62 -0
- package/deploy/macos/com.trillboards.litertlm.plist +45 -0
- package/deploy/macos/pair.command +519 -0
- package/deploy/macos/scripts/ensure-litertlm.sh +62 -0
- package/deploy/macos/scripts/postinstall +153 -0
- package/deploy/macos/scripts/setup-litertlm.sh +272 -0
- package/deploy/macos/test-install-pair.sh +383 -0
- package/deploy/macos/test-setup-litertlm-reinstall.sh +109 -0
- package/deploy/systemd/install.sh +25 -15
- package/deploy/systemd/trillboards-edge.service +4 -1
- package/deploy/windows/README.md +70 -0
- package/deploy/windows/build-windows.ps1 +225 -0
- package/deploy/windows/bundle-windows-installer.ps1 +153 -0
- package/deploy/windows/check-feeds.js +26 -0
- package/deploy/windows/e2e/fixtures/person.jpg +0 -0
- package/deploy/windows/e2e/test-local-sense.ps1 +185 -0
- package/deploy/windows/install-service.ps1 +6 -1
- package/deploy/windows/install-update.ps1 +101 -0
- package/deploy/windows/installer.nsi +138 -0
- package/deploy/windows/register-litertlm-task.ps1 +42 -0
- package/deploy/windows/register-task.ps1 +44 -0
- package/deploy/windows/run-connector.ps1 +69 -0
- package/deploy/windows/setup-litertlm.ps1 +361 -0
- package/deploy/windows/stop-existing.ps1 +72 -0
- package/deploy/windows/trillboards-edge-task.vbs +25 -0
- package/deploy/windows/trillboards-edge.cmd +33 -0
- package/deploy/windows/trillboards-pair.cmd +276 -0
- package/deploy/windows/trillboards-setup.ps1 +456 -0
- package/deploy/windows/trillboards-setup.vbs +13 -0
- package/dist/AudienceAnalyzeClient.d.ts +136 -0
- package/dist/AudienceAnalyzeClient.d.ts.map +1 -0
- package/dist/AudienceAnalyzeClient.js +246 -0
- package/dist/AudienceAnalyzeClient.js.map +1 -0
- package/dist/ChannelProber.d.ts +150 -0
- package/dist/ChannelProber.d.ts.map +1 -0
- package/dist/ChannelProber.js +887 -0
- package/dist/ChannelProber.js.map +1 -0
- package/dist/CloudEscalationPolicy.d.ts +143 -0
- package/dist/CloudEscalationPolicy.d.ts.map +1 -0
- package/dist/CloudEscalationPolicy.js +137 -0
- package/dist/CloudEscalationPolicy.js.map +1 -0
- package/dist/CloudSensingManager.d.ts +557 -0
- package/dist/CloudSensingManager.d.ts.map +1 -0
- package/dist/CloudSensingManager.js +1267 -0
- package/dist/CloudSensingManager.js.map +1 -0
- package/dist/DiscoveryReportClient.d.ts +66 -0
- package/dist/DiscoveryReportClient.d.ts.map +1 -0
- package/dist/DiscoveryReportClient.js +85 -0
- package/dist/DiscoveryReportClient.js.map +1 -0
- package/dist/EdgeAgent.d.ts +12 -2
- package/dist/EdgeAgent.d.ts.map +1 -1
- package/dist/EdgeAgent.js +55 -13
- package/dist/EdgeAgent.js.map +1 -1
- package/dist/LiteRtVlmProvider.d.ts +193 -0
- package/dist/LiteRtVlmProvider.d.ts.map +1 -0
- package/dist/LiteRtVlmProvider.js +436 -0
- package/dist/LiteRtVlmProvider.js.map +1 -0
- package/dist/MosaicSource.d.ts +108 -0
- package/dist/MosaicSource.d.ts.map +1 -0
- package/dist/MosaicSource.js +274 -0
- package/dist/MosaicSource.js.map +1 -0
- package/dist/OnvifClient.d.ts +83 -0
- package/dist/OnvifClient.d.ts.map +1 -0
- package/dist/OnvifClient.js +209 -0
- package/dist/OnvifClient.js.map +1 -0
- package/dist/PairClient.d.ts +106 -0
- package/dist/PairClient.d.ts.map +1 -0
- package/dist/PairClient.js +186 -0
- package/dist/PairClient.js.map +1 -0
- package/dist/RecorderAddressRecovery.d.ts +53 -0
- package/dist/RecorderAddressRecovery.d.ts.map +1 -0
- package/dist/RecorderAddressRecovery.js +359 -0
- package/dist/RecorderAddressRecovery.js.map +1 -0
- package/dist/SceneChangeDetector.d.ts +291 -0
- package/dist/SceneChangeDetector.d.ts.map +1 -0
- package/dist/SceneChangeDetector.js +682 -0
- package/dist/SceneChangeDetector.js.map +1 -0
- package/dist/SensingProfileClient.d.ts +59 -0
- package/dist/SensingProfileClient.d.ts.map +1 -0
- package/dist/SensingProfileClient.js +78 -0
- package/dist/SensingProfileClient.js.map +1 -0
- package/dist/SetupSessionClient.d.ts +114 -0
- package/dist/SetupSessionClient.d.ts.map +1 -0
- package/dist/SetupSessionClient.js +95 -0
- package/dist/SetupSessionClient.js.map +1 -0
- package/dist/VlmAdmissionGate.d.ts +126 -0
- package/dist/VlmAdmissionGate.d.ts.map +1 -0
- package/dist/VlmAdmissionGate.js +166 -0
- package/dist/VlmAdmissionGate.js.map +1 -0
- package/dist/autoSense.d.ts +266 -0
- package/dist/autoSense.d.ts.map +1 -0
- package/dist/autoSense.js +606 -0
- package/dist/autoSense.js.map +1 -0
- package/dist/cli.d.ts +27 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +526 -27
- package/dist/cli.js.map +1 -1
- package/dist/combinedSense.d.ts +128 -0
- package/dist/combinedSense.d.ts.map +1 -0
- package/dist/combinedSense.js +261 -0
- package/dist/combinedSense.js.map +1 -0
- package/dist/config.d.ts +351 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +99 -2
- package/dist/config.js.map +1 -1
- package/dist/connectorCadence.d.ts +135 -0
- package/dist/connectorCadence.d.ts.map +1 -0
- package/dist/connectorCadence.js +151 -0
- package/dist/connectorCadence.js.map +1 -0
- package/dist/dataDir.d.ts +33 -0
- package/dist/dataDir.d.ts.map +1 -0
- package/dist/dataDir.js +76 -0
- package/dist/dataDir.js.map +1 -0
- package/dist/deployedCadence.d.ts +167 -0
- package/dist/deployedCadence.d.ts.map +1 -0
- package/dist/deployedCadence.js +209 -0
- package/dist/deployedCadence.js.map +1 -0
- package/dist/deployedCadenceSource.d.ts +48 -0
- package/dist/deployedCadenceSource.d.ts.map +1 -0
- package/dist/deployedCadenceSource.js +74 -0
- package/dist/deployedCadenceSource.js.map +1 -0
- package/dist/diagnose.d.ts +1 -1
- package/dist/diagnose.d.ts.map +1 -1
- package/dist/diagnose.js +15 -13
- package/dist/diagnose.js.map +1 -1
- package/dist/discovery.d.ts +131 -0
- package/dist/discovery.d.ts.map +1 -0
- package/dist/discovery.js +499 -0
- package/dist/discovery.js.map +1 -0
- package/dist/gemmaModelOta.d.ts +118 -0
- package/dist/gemmaModelOta.d.ts.map +1 -0
- package/dist/gemmaModelOta.js +291 -0
- package/dist/gemmaModelOta.js.map +1 -0
- package/dist/index.d.ts +16 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +40 -1
- package/dist/index.js.map +1 -1
- package/dist/init.d.ts.map +1 -1
- package/dist/init.js +25 -87
- package/dist/init.js.map +1 -1
- package/dist/keepAwake.d.ts +33 -0
- package/dist/keepAwake.d.ts.map +1 -0
- package/dist/keepAwake.js +54 -0
- package/dist/keepAwake.js.map +1 -0
- package/dist/legacyRecorderProfile.d.ts +20 -0
- package/dist/legacyRecorderProfile.d.ts.map +1 -0
- package/dist/legacyRecorderProfile.js +27 -0
- package/dist/legacyRecorderProfile.js.map +1 -0
- package/dist/localInferenceSchema.d.ts +132 -0
- package/dist/localInferenceSchema.d.ts.map +1 -0
- package/dist/localInferenceSchema.js +274 -0
- package/dist/localInferenceSchema.js.map +1 -0
- package/dist/localSenseE2eHarness.d.ts +101 -0
- package/dist/localSenseE2eHarness.d.ts.map +1 -0
- package/dist/localSenseE2eHarness.js +279 -0
- package/dist/localSenseE2eHarness.js.map +1 -0
- package/dist/localSensing.d.ts +284 -0
- package/dist/localSensing.d.ts.map +1 -0
- package/dist/localSensing.js +512 -0
- package/dist/localSensing.js.map +1 -0
- package/dist/mcp-server.d.ts.map +1 -1
- package/dist/mcp-server.js +3 -1
- package/dist/mcp-server.js.map +1 -1
- package/dist/modelIntegrity.d.ts +80 -0
- package/dist/modelIntegrity.d.ts.map +1 -0
- package/dist/modelIntegrity.js +194 -0
- package/dist/modelIntegrity.js.map +1 -0
- package/dist/pairVerify.d.ts +100 -0
- package/dist/pairVerify.d.ts.map +1 -0
- package/dist/pairVerify.js +296 -0
- package/dist/pairVerify.js.map +1 -0
- package/dist/qrScanner.d.ts +33 -0
- package/dist/qrScanner.d.ts.map +1 -0
- package/dist/qrScanner.js +103 -0
- package/dist/qrScanner.js.map +1 -0
- package/dist/runtimePaths.d.ts +10 -0
- package/dist/runtimePaths.d.ts.map +1 -0
- package/dist/runtimePaths.js +79 -0
- package/dist/runtimePaths.js.map +1 -0
- package/dist/sensingRunMode.d.ts +86 -0
- package/dist/sensingRunMode.d.ts.map +1 -0
- package/dist/sensingRunMode.js +346 -0
- package/dist/sensingRunMode.js.map +1 -0
- package/dist/setupMode.d.ts +98 -0
- package/dist/setupMode.d.ts.map +1 -0
- package/dist/setupMode.js +828 -0
- package/dist/setupMode.js.map +1 -0
- package/dist/setupProgress.d.ts +31 -0
- package/dist/setupProgress.d.ts.map +1 -0
- package/dist/setupProgress.js +173 -0
- package/dist/setupProgress.js.map +1 -0
- package/package.json +13 -4
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,qCAAsC;AACtC,2CAAwC;AACxC,iCAAiC;AACjC,qCAAqC;AACrC,yCAAyC;AACzC,iCAAiC;AACjC,2CAA6B;AAC7B,uCAAyB;AACzB,6CAA+B;AAE/B,MAAM,OAAO,GAAG,OAAO,CAAC;AAExB,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAExB,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,MAAM;YACT,MAAM,IAAA,cAAO,GAAE,CAAC;YAChB,MAAM;QACR,KAAK,MAAM;YACT,MAAM,IAAA,cAAO,GAAE,CAAC;YAChB,MAAM;QACR,KAAK,OAAO;YACV,MAAM,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAChC,MAAM;QACR,KAAK,QAAQ;YACX,MAAM,IAAA,kBAAS,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM;QACR,KAAK,UAAU;YACb,MAAM,IAAA,sBAAW,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACjC,MAAM;QACR,KAAK,KAAK;YACR,MAAM,cAAc,EAAE,CAAC;YACvB,MAAM;QACR,KAAK,iBAAiB;YACpB,MAAM,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM;QACR,KAAK,SAAS,CAAC;QACf,KAAK,WAAW,CAAC;QACjB,KAAK,IAAI;YACP,OAAO,CAAC,GAAG,CAAC,0BAA0B,OAAO,EAAE,CAAC,CAAC;YACjD,MAAM;QACR,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ,CAAC;QACd,KAAK,IAAI,CAAC;QACV;YACE,SAAS,EAAE,CAAC;YACZ,MAAM;IACV,CAAC;AACH,CAAC;AAED,KAAK,UAAU,cAAc;IAC3B,gEAAgE;IAChE,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAChD,MAAM,WAAW,EAAE,CAAC;AACtB,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,IAAc;IACtC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACtD,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACrB,CAAC,CAAC,yBAAyB,CAAC;IAE9B,OAAO,CAAC,GAAG,CAAC,4BAA4B,OAAO,EAAE,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,mBAAmB,UAAU,EAAE,CAAC,CAAC;IAE7C,MAAM,MAAM,GAAG,IAAA,mBAAU,EAAC,UAAU,CAAC,CAAC;IACtC,MAAM,KAAK,GAAG,IAAI,qBAAS,CAAC,MAAM,CAAC,CAAC;IAEpC,KAAK,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,EAAyC,EAAE,EAAE;QACnF,OAAO,CAAC,GAAG,CAAC,oBAAoB,WAAW,EAAE,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,QAAQ,IAAI,eAAe,EAAE,CAAC,CAAC;QACpE,OAAO,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QACtE,OAAO,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QACtE,OAAO,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,MAAM,EAAE,iBAAiB,IAAI,KAAK,EAAE,CAAC,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;IAEpB,2BAA2B;IAC3B,MAAM,IAAI,OAAO,CAAO,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,GAA2B;IACzC,gBAAgB,EAAE,uDAAuD;IACzE,aAAa,EAAE,2DAA2D;CAC3E,CAAC;AAEF,KAAK,UAAU,cAAc,CAAC,IAAc;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;IAElF,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACzC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,+BAA+B,QAAQ,EAAE,CAAC,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,KAAK,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC3C,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,YAAY,QAAQ,mBAAmB,CAAC,CAAC;YACrD,SAAS;QACX,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,YAAY,QAAQ,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC;YACH,MAAM,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAC9B,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAChC,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACvD,OAAO,CAAC,GAAG,CAAC,YAAY,QAAQ,KAAK,MAAM,MAAM,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,YAAY,QAAQ,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YACnF,0BAA0B;YAC1B,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,mEAAmE,CAAC,CAAC;AACnF,CAAC;AAED,SAAS,YAAY,CAAC,GAAW,EAAE,IAAY,EAAE,YAAY,GAAG,CAAC;IAC/D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,CAAC,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;YACxC,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE;YAC1C,IACE,QAAQ,CAAC,UAAU,KAAK,GAAG;gBAC3B,QAAQ,CAAC,UAAU,KAAK,GAAG;gBAC3B,QAAQ,CAAC,UAAU,KAAK,GAAG;gBAC3B,QAAQ,CAAC,UAAU,KAAK,GAAG,EAC3B,CAAC;gBACD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACb,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACpB,IAAI,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;oBAC9B,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBACxF,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAC;gBACxD,CAAC;gBACD,OAAO;YACT,CAAC;YACD,IAAI,QAAQ,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;gBAChC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACb,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACpB,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;gBACjD,OAAO;YACT,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;gBACrB,IAAI,CAAC,KAAK,EAAE,CAAC;gBACb,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YAC1B,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAC7C,MAAM,CAAC,GAAG,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,UAAU,CAAC,KAAM,EAAE,GAAG,EAAE;YAC9B,OAAO,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,CAAC,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,SAAS;IAChB,OAAO,CAAC,GAAG,CAAC;2BACa,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkEjC,CAAC,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,gBAAgB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { type EdgeAgentConfig } from './config';
|
|
2
|
+
import { type AutoSenseDeps, type AutoSenseTimerHandle } from './autoSense';
|
|
3
|
+
import { type ResolvedFeed } from './CloudSensingManager';
|
|
4
|
+
import { type SensingManager } from './sensingRunMode';
|
|
5
|
+
import type { SharedFrameSource } from './MosaicSource';
|
|
6
|
+
import type { CameraProvider } from '@trillboards/edge-core';
|
|
7
|
+
type StreamUrlResolver = (feed: ResolvedFeed, currentUrl: string, error: Error) => Promise<string | null>;
|
|
8
|
+
/**
|
|
9
|
+
* `combined-sense` (alias `sense`) — APK-parity sensing for the BYO-CCTV
|
|
10
|
+
* connector. The Android APK's AudienceSensingService runs the on-device ONNX
|
|
11
|
+
* ZOO (per-frame face/audio inference) AND the VLM (sampled, scene-level) inside
|
|
12
|
+
* ONE process on the SAME camera; this entrypoint mirrors that on a connector
|
|
13
|
+
* host by running BOTH concurrently in one Node process:
|
|
14
|
+
*
|
|
15
|
+
* - the ZOO = EdgeAgent → @trillboards/edge-sensing → onnxruntime-node,
|
|
16
|
+
* which socket-emits `audienceSignals`;
|
|
17
|
+
* - the VLM = the auto-sense supervisor (probe :9379 → on-device LiteRT-LM;
|
|
18
|
+
* wait locally while its model prepares), which POSTs
|
|
19
|
+
* `preAnalyzed` over REST.
|
|
20
|
+
*
|
|
21
|
+
* It COMPOSES the existing pieces verbatim — `EdgeAgent` and `runAutoSense` — and
|
|
22
|
+
* forks NEITHER. There is NO new data sink and no emission reconciliation here:
|
|
23
|
+
* the zoo's socket `audienceSignals` and the VLM's REST `preAnalyzed` already
|
|
24
|
+
* CONVERGE server-side at `ingestMetrics` (audienceMetricsService) → PG
|
|
25
|
+
* audience_metrics + observation_stream + ClickHouse.
|
|
26
|
+
*
|
|
27
|
+
* Slimness: EdgeAgent (→ the 200 MB+ ONNX stack) is lazy-`require`d in the
|
|
28
|
+
* default agent factory so this module can be loaded/unit-tested WITHOUT the
|
|
29
|
+
* local-inference stack — exactly the lazy pattern the cli `start` arm uses to
|
|
30
|
+
* keep the cloud-sense/pair connector bundle free of onnxruntime.
|
|
31
|
+
*/
|
|
32
|
+
/** The lifecycle surface the combined entrypoint needs from the zoo agent. */
|
|
33
|
+
export interface CombinedZooAgent {
|
|
34
|
+
start(): Promise<void>;
|
|
35
|
+
stop(): Promise<void>;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Injection points for runCombinedSense. All default to the real
|
|
39
|
+
* config/agent/auto-sense wiring; tests inject fakes so the composition is
|
|
40
|
+
* exercised without onnxruntime, RTSP, or a real litert-lm.
|
|
41
|
+
*/
|
|
42
|
+
export interface CombinedSenseDeps {
|
|
43
|
+
/** Loads the connector config. Defaults to loadConfig. */
|
|
44
|
+
loadConfig?: (configPath: string) => EdgeAgentConfig;
|
|
45
|
+
/**
|
|
46
|
+
* Build (NOT start) a ZOO agent. `camera` is supplied for the mosaic per-tile
|
|
47
|
+
* path (a CropViewProvider sharing the single pull) and omitted for the
|
|
48
|
+
* single-camera path (EdgeAgent builds its own from config.camera). Defaults to
|
|
49
|
+
* a lazy-required EdgeAgent (with the camera injected when present).
|
|
50
|
+
*/
|
|
51
|
+
buildAgent?: (config: EdgeAgentConfig, camera?: CameraProvider) => CombinedZooAgent;
|
|
52
|
+
/** RTSP provider factory for the per-tile zoo (tests inject fakes). Defaults to RTSPCameraProvider. */
|
|
53
|
+
zooRtspProviderFactory?: (feed: ResolvedFeed, streamUrlResolver?: StreamUrlResolver) => CameraProvider;
|
|
54
|
+
/** Recorder DHCP recovery injection for tests; production builds one from the local config. */
|
|
55
|
+
streamUrlResolver?: StreamUrlResolver;
|
|
56
|
+
/** Log sink (tests capture it). Defaults to console.log. */
|
|
57
|
+
log?: (msg: string) => void;
|
|
58
|
+
/** Register the combined shutdown handler. Defaults to SIGINT/SIGTERM listeners. */
|
|
59
|
+
registerShutdown?: (handler: () => void | Promise<void>) => void;
|
|
60
|
+
/** Block until shutdown (production never resolves; tests inject a resolved waiter). */
|
|
61
|
+
waitForShutdown?: () => Promise<void>;
|
|
62
|
+
/** Probe used to decide local-vs-cloud. Defaults to probeLiteRtLmHealth. */
|
|
63
|
+
probe?: AutoSenseDeps['probe'];
|
|
64
|
+
/** Build (NOT start) the local VLM manager. Defaults to buildLocalSensingManager(config). */
|
|
65
|
+
buildLocalManager?: () => SensingManager | null;
|
|
66
|
+
/** Build (NOT start) the cloud VLM manager. Defaults to buildCloudSensingManager(config). */
|
|
67
|
+
buildCloudManager?: () => SensingManager | null;
|
|
68
|
+
/** Sleep between startup re-probes (tests inject a no-op). */
|
|
69
|
+
sleep?: (ms: number) => Promise<void>;
|
|
70
|
+
/** Arm the steady-state re-probe timer. */
|
|
71
|
+
setTimer?: (cb: () => void, ms: number) => AutoSenseTimerHandle;
|
|
72
|
+
/** Clear the re-probe timer. */
|
|
73
|
+
clearTimer?: (handle: AutoSenseTimerHandle) => void;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Resolve the EdgeAgent config the ZOO should run, or `null` to skip the ZOO
|
|
77
|
+
* (the VLM still runs).
|
|
78
|
+
*
|
|
79
|
+
* The ZOO is single-screen and CANNOT crop a mosaic tile — `EdgeAgent.start()`
|
|
80
|
+
* ignores `cameras[]` entirely: it auths its socket with the top-level
|
|
81
|
+
* `deviceToken` and `loadCamera()` opens only `config.camera` (falling back to
|
|
82
|
+
* the local webcam when `camera.rtspUrl` is absent). So passing a paired
|
|
83
|
+
* multi-channel config (`cameras[]`, per-feed tokens, empty top-level token)
|
|
84
|
+
* straight through would make the ZOO sense `/dev/video0` under an empty token
|
|
85
|
+
* while the VLM uses the real NVR feeds.
|
|
86
|
+
*
|
|
87
|
+
* - `cameras[]` resolving to exactly ONE whole-frame feed (the paired
|
|
88
|
+
* single-camera shape — `pairedConfigToFile` ALWAYS emits `cameras[]`): MAP
|
|
89
|
+
* that feed into a single-camera EdgeAgent config so the ZOO senses it under
|
|
90
|
+
* the feed's own token + screen.
|
|
91
|
+
* - `cameras[]` with a lone tile (`crop`/`sourceFeedId`) but no resolvable
|
|
92
|
+
* whole-frame feed: return `null` (the VLM still senses it).
|
|
93
|
+
* - no `cameras[]` (single `camera.rtspUrl`, or a local webcam): use the config
|
|
94
|
+
* as-is — EdgeAgent already handles both.
|
|
95
|
+
*
|
|
96
|
+
* Only called for the single-feed path: runCombinedSense routes a multi-feed /
|
|
97
|
+
* mosaic `cameras[]` config to buildMosaicZooTiles (the per-tile zoo fan-out).
|
|
98
|
+
*/
|
|
99
|
+
export declare function resolveZooAgentConfig(config: EdgeAgentConfig): EdgeAgentConfig | null;
|
|
100
|
+
/**
|
|
101
|
+
* PR 1.2 — per-tile ZOO fan-out for a multi-feed/mosaic config. Builds N
|
|
102
|
+
* single-screen zoo agents (one per tile/feed), each sensing its own tile crop,
|
|
103
|
+
* REUSING the SAME tiling the VLM uses: buildTiledCameras groups mosaic tiles
|
|
104
|
+
* onto ONE SharedFrameSource (the single RTSP pull), and `sharedSources` is the
|
|
105
|
+
* registry the VLM rail also attaches to — so the zoo and VLM share that one
|
|
106
|
+
* pull. Each tile's CropViewProvider carves rgb24 (the ONNX FaceDetector's input)
|
|
107
|
+
* while the VLM carves the same pull to jpeg.
|
|
108
|
+
*
|
|
109
|
+
* Each tile becomes its own EdgeAgent (its own per-feed token + screenId socket,
|
|
110
|
+
* so each screen emits independently). The tiles are SENSING-only: kiosk + audio
|
|
111
|
+
* are forced off (a mosaic is one video stream; there is no per-tile browser or
|
|
112
|
+
* mic), and each gets a unique statusPort so their local status servers don't
|
|
113
|
+
* collide on 9090.
|
|
114
|
+
*/
|
|
115
|
+
export declare function buildMosaicZooTiles(config: EdgeAgentConfig, buildAgent: (config: EdgeAgentConfig, camera?: CameraProvider) => CombinedZooAgent, opts: {
|
|
116
|
+
sharedSources: Map<string, SharedFrameSource>;
|
|
117
|
+
rtspProviderFactory?: CombinedSenseDeps['zooRtspProviderFactory'];
|
|
118
|
+
streamUrlResolver?: StreamUrlResolver;
|
|
119
|
+
}): CombinedZooAgent[];
|
|
120
|
+
/**
|
|
121
|
+
* `combined-sense` entrypoint: start the ZOO, then run the VLM auto-sense
|
|
122
|
+
* supervisor in the same process, with a single composed shutdown that stops
|
|
123
|
+
* BOTH. Blocks until SIGINT/SIGTERM (the auto-sense re-probe timer keeps the
|
|
124
|
+
* event loop alive; EdgeAgent's own timers/socket do too).
|
|
125
|
+
*/
|
|
126
|
+
export declare function runCombinedSense(args: string[], deps?: CombinedSenseDeps): Promise<void>;
|
|
127
|
+
export {};
|
|
128
|
+
//# sourceMappingURL=combinedSense.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"combinedSense.d.ts","sourceRoot":"","sources":["../src/combinedSense.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.resolveZooAgentConfig = resolveZooAgentConfig;
|
|
4
|
+
exports.buildMosaicZooTiles = buildMosaicZooTiles;
|
|
5
|
+
exports.runCombinedSense = runCombinedSense;
|
|
6
|
+
const config_1 = require("./config");
|
|
7
|
+
const autoSense_1 = require("./autoSense");
|
|
8
|
+
const CloudSensingManager_1 = require("./CloudSensingManager");
|
|
9
|
+
const sensingRunMode_1 = require("./sensingRunMode");
|
|
10
|
+
const dataDir_1 = require("./dataDir");
|
|
11
|
+
const RecorderAddressRecovery_1 = require("./RecorderAddressRecovery");
|
|
12
|
+
const legacyRecorderProfile_1 = require("./legacyRecorderProfile");
|
|
13
|
+
/**
|
|
14
|
+
* Default ZOO factory: lazy-`require` EdgeAgent so loading/unit-testing this
|
|
15
|
+
* module never pulls in @trillboards/edge-sensing → onnxruntime-node. The zoo is
|
|
16
|
+
* built with manageProcessSignals already forced false by the caller; when a
|
|
17
|
+
* `camera` is supplied (mosaic per-tile path) it is injected as the zoo's camera.
|
|
18
|
+
*/
|
|
19
|
+
function defaultBuildAgent(config, camera) {
|
|
20
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
21
|
+
const { EdgeAgent } = require('./EdgeAgent');
|
|
22
|
+
return new EdgeAgent(config, camera ? { cameraProvider: camera } : undefined);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Default RTSP factory for the per-tile zoo. Mirrors buildSensingLoops' factory
|
|
26
|
+
* but defaults outputFormat to 'rgb24' (the ONNX FaceDetector consumes raw RGB).
|
|
27
|
+
* The shared mosaic grabber is forced to JPEG inside buildTiledCameras, so only
|
|
28
|
+
* the lone/fallback DIRECT providers honor this rgb24 default.
|
|
29
|
+
*/
|
|
30
|
+
function defaultZooRtspFactory(feed, streamUrlResolver) {
|
|
31
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
32
|
+
const { RTSPCameraProvider } = require('@trillboards/edge-platform-rtsp');
|
|
33
|
+
return new RTSPCameraProvider({
|
|
34
|
+
rtspUrl: feed.rtspUrl,
|
|
35
|
+
width: feed.width,
|
|
36
|
+
height: feed.height,
|
|
37
|
+
fps: feed.fps,
|
|
38
|
+
transport: feed.transport,
|
|
39
|
+
ffmpegPath: feed.ffmpegPath,
|
|
40
|
+
crop: feed.crop,
|
|
41
|
+
outputFormat: feed.outputFormat ?? 'rgb24',
|
|
42
|
+
jpegQuality: feed.jpegQuality,
|
|
43
|
+
...(streamUrlResolver
|
|
44
|
+
? {
|
|
45
|
+
streamUrlResolver: (currentUrl, error) => streamUrlResolver(feed, currentUrl, error),
|
|
46
|
+
}
|
|
47
|
+
: {}),
|
|
48
|
+
...(0, legacyRecorderProfile_1.legacyRecorderRtspOptions)(feed.sourceType),
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
function defaultRegisterShutdown(handler) {
|
|
52
|
+
process.on('SIGINT', handler);
|
|
53
|
+
process.on('SIGTERM', handler);
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Resolve the EdgeAgent config the ZOO should run, or `null` to skip the ZOO
|
|
57
|
+
* (the VLM still runs).
|
|
58
|
+
*
|
|
59
|
+
* The ZOO is single-screen and CANNOT crop a mosaic tile — `EdgeAgent.start()`
|
|
60
|
+
* ignores `cameras[]` entirely: it auths its socket with the top-level
|
|
61
|
+
* `deviceToken` and `loadCamera()` opens only `config.camera` (falling back to
|
|
62
|
+
* the local webcam when `camera.rtspUrl` is absent). So passing a paired
|
|
63
|
+
* multi-channel config (`cameras[]`, per-feed tokens, empty top-level token)
|
|
64
|
+
* straight through would make the ZOO sense `/dev/video0` under an empty token
|
|
65
|
+
* while the VLM uses the real NVR feeds.
|
|
66
|
+
*
|
|
67
|
+
* - `cameras[]` resolving to exactly ONE whole-frame feed (the paired
|
|
68
|
+
* single-camera shape — `pairedConfigToFile` ALWAYS emits `cameras[]`): MAP
|
|
69
|
+
* that feed into a single-camera EdgeAgent config so the ZOO senses it under
|
|
70
|
+
* the feed's own token + screen.
|
|
71
|
+
* - `cameras[]` with a lone tile (`crop`/`sourceFeedId`) but no resolvable
|
|
72
|
+
* whole-frame feed: return `null` (the VLM still senses it).
|
|
73
|
+
* - no `cameras[]` (single `camera.rtspUrl`, or a local webcam): use the config
|
|
74
|
+
* as-is — EdgeAgent already handles both.
|
|
75
|
+
*
|
|
76
|
+
* Only called for the single-feed path: runCombinedSense routes a multi-feed /
|
|
77
|
+
* mosaic `cameras[]` config to buildMosaicZooTiles (the per-tile zoo fan-out).
|
|
78
|
+
*/
|
|
79
|
+
function resolveZooAgentConfig(config) {
|
|
80
|
+
if (Array.isArray(config.cameras) && config.cameras.length > 0) {
|
|
81
|
+
const feeds = (0, CloudSensingManager_1.resolveFeeds)(config);
|
|
82
|
+
const soloWholeFrame = feeds.length === 1 && !feeds[0].crop && !feeds[0].sourceFeedId;
|
|
83
|
+
if (!soloWholeFrame)
|
|
84
|
+
return null; // multi-feed / mosaic → per-tile zoo (follow-up)
|
|
85
|
+
const feed = feeds[0];
|
|
86
|
+
return {
|
|
87
|
+
...config,
|
|
88
|
+
cameras: undefined, // collapse to EdgeAgent's single-camera path
|
|
89
|
+
deviceToken: feed.deviceToken,
|
|
90
|
+
screenId: feed.screenId ?? config.screenId,
|
|
91
|
+
camera: {
|
|
92
|
+
...config.camera,
|
|
93
|
+
enabled: true,
|
|
94
|
+
rtspUrl: feed.rtspUrl,
|
|
95
|
+
width: feed.width ?? config.camera?.width,
|
|
96
|
+
height: feed.height ?? config.camera?.height,
|
|
97
|
+
fps: feed.fps ?? config.camera?.fps,
|
|
98
|
+
transport: feed.transport ?? config.camera?.transport,
|
|
99
|
+
ffmpegPath: feed.ffmpegPath ?? config.camera?.ffmpegPath,
|
|
100
|
+
},
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
return config;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* PR 1.2 — per-tile ZOO fan-out for a multi-feed/mosaic config. Builds N
|
|
107
|
+
* single-screen zoo agents (one per tile/feed), each sensing its own tile crop,
|
|
108
|
+
* REUSING the SAME tiling the VLM uses: buildTiledCameras groups mosaic tiles
|
|
109
|
+
* onto ONE SharedFrameSource (the single RTSP pull), and `sharedSources` is the
|
|
110
|
+
* registry the VLM rail also attaches to — so the zoo and VLM share that one
|
|
111
|
+
* pull. Each tile's CropViewProvider carves rgb24 (the ONNX FaceDetector's input)
|
|
112
|
+
* while the VLM carves the same pull to jpeg.
|
|
113
|
+
*
|
|
114
|
+
* Each tile becomes its own EdgeAgent (its own per-feed token + screenId socket,
|
|
115
|
+
* so each screen emits independently). The tiles are SENSING-only: kiosk + audio
|
|
116
|
+
* are forced off (a mosaic is one video stream; there is no per-tile browser or
|
|
117
|
+
* mic), and each gets a unique statusPort so their local status servers don't
|
|
118
|
+
* collide on 9090.
|
|
119
|
+
*/
|
|
120
|
+
function buildMosaicZooTiles(config, buildAgent, opts) {
|
|
121
|
+
// The zoo needs raw RGB24 tiles (ONNX); the VLM carves the same pull to jpeg.
|
|
122
|
+
const feeds = (0, CloudSensingManager_1.resolveFeeds)(config).map((f) => ({ ...f, outputFormat: 'rgb24' }));
|
|
123
|
+
const rtspFactory = (feed) => (opts.rtspProviderFactory ?? defaultZooRtspFactory)(feed, opts.streamUrlResolver);
|
|
124
|
+
const baseStatusPort = config.statusPort ?? 9090;
|
|
125
|
+
return (0, CloudSensingManager_1.buildTiledCameras)(feeds, rtspFactory, {
|
|
126
|
+
sharedSources: opts.sharedSources,
|
|
127
|
+
cropOutputFormat: 'rgb24',
|
|
128
|
+
}).map(({ feed, camera }, i) => {
|
|
129
|
+
const tileConfig = {
|
|
130
|
+
...config,
|
|
131
|
+
cameras: undefined, // each tile is a single-screen EdgeAgent
|
|
132
|
+
deviceToken: feed.deviceToken,
|
|
133
|
+
screenId: feed.screenId ?? config.screenId,
|
|
134
|
+
camera: { ...config.camera, enabled: true },
|
|
135
|
+
kiosk: { ...config.kiosk, enabled: false }, // tiles sense; they don't display
|
|
136
|
+
audio: { enabled: false }, // a mosaic is video; audio doesn't tile
|
|
137
|
+
statusPort: baseStatusPort + i, // unique per tile (avoid the 9090 collision)
|
|
138
|
+
// Per-SCREEN state, for the same reason statusPort is per-tile. Each tile is
|
|
139
|
+
// its own EdgeAgent with its own deviceToken, but `...config` handed them all
|
|
140
|
+
// one dataDir — so they opened one signal_buffer.db (plus one health registry
|
|
141
|
+
// and one persistenceDir). flushBuffer() reads rows and DELETES them on
|
|
142
|
+
// success, so on reconnect screen A's buffered signals could go out under
|
|
143
|
+
// screen B's token, or be dropped by whichever tile flushed first. Note this
|
|
144
|
+
// bit even with dataDir unset, since the default (~/.trillboards) is shared too.
|
|
145
|
+
dataDir: (0, dataDir_1.tileDataDir)(config.dataDir, feed.screenId, i),
|
|
146
|
+
manageProcessSignals: false, // the combined supervisor owns shutdown
|
|
147
|
+
};
|
|
148
|
+
return buildAgent(tileConfig, camera);
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* `combined-sense` entrypoint: start the ZOO, then run the VLM auto-sense
|
|
153
|
+
* supervisor in the same process, with a single composed shutdown that stops
|
|
154
|
+
* BOTH. Blocks until SIGINT/SIGTERM (the auto-sense re-probe timer keeps the
|
|
155
|
+
* event loop alive; EdgeAgent's own timers/socket do too).
|
|
156
|
+
*/
|
|
157
|
+
async function runCombinedSense(args, deps = {}) {
|
|
158
|
+
const log = deps.log ?? ((m) => console.log(m));
|
|
159
|
+
const load = deps.loadConfig ?? config_1.loadConfig;
|
|
160
|
+
const configIdx = args.indexOf('--config');
|
|
161
|
+
const configPath = configIdx >= 0 && args[configIdx + 1] ? args[configIdx + 1] : 'trillboards.config.json';
|
|
162
|
+
const config = load(configPath);
|
|
163
|
+
const addressRecovery = new RecorderAddressRecovery_1.RecorderAddressRecovery(config, {
|
|
164
|
+
configPath,
|
|
165
|
+
log: (message) => log(message),
|
|
166
|
+
});
|
|
167
|
+
const streamUrlResolver = deps.streamUrlResolver ?? ((feed, currentUrl, error) => addressRecovery.recover(feed, currentUrl, error));
|
|
168
|
+
// 1) Start the ZOO (per-frame ONNX; socket-emits `audienceSignals`). Zoo agents
|
|
169
|
+
// must NOT install their own SIGINT/SIGTERM handlers — the combined shutdown
|
|
170
|
+
// below stops the zoo(s) AND the VLM together so nothing process.exit()s
|
|
171
|
+
// mid-teardown.
|
|
172
|
+
const buildAgent = deps.buildAgent ?? defaultBuildAgent;
|
|
173
|
+
const zooAgents = [];
|
|
174
|
+
// The cross-rail single-pull registry: each per-tile zoo AND the VLM attach to
|
|
175
|
+
// the SAME SharedFrameSource per mosaic source (one RTSP pull feeds both rails).
|
|
176
|
+
let sharedSources;
|
|
177
|
+
if (Array.isArray(config.cameras) && config.cameras.length > 1) {
|
|
178
|
+
// PR 1.2: a multi-feed / mosaic config → N single-screen zoo agents, one per
|
|
179
|
+
// tile crop, sharing the single mosaic pull with the VLM.
|
|
180
|
+
sharedSources = new Map();
|
|
181
|
+
const tiles = buildMosaicZooTiles(config, buildAgent, {
|
|
182
|
+
sharedSources,
|
|
183
|
+
rtspProviderFactory: deps.zooRtspProviderFactory,
|
|
184
|
+
streamUrlResolver,
|
|
185
|
+
});
|
|
186
|
+
zooAgents.push(...tiles);
|
|
187
|
+
log(`[combined-sense] mosaic/multi-feed: starting ${tiles.length} per-tile ZOO instance(s) ` +
|
|
188
|
+
'on the shared mosaic pull…');
|
|
189
|
+
}
|
|
190
|
+
else {
|
|
191
|
+
// Single-camera config (top-level camera.rtspUrl, a local webcam, or a lone
|
|
192
|
+
// cameras[] feed) → ONE zoo agent (EdgeAgent builds its own camera).
|
|
193
|
+
const zooConfig = resolveZooAgentConfig(config);
|
|
194
|
+
if (zooConfig) {
|
|
195
|
+
const singleFeed = Array.isArray(config.cameras) ? (0, CloudSensingManager_1.resolveFeeds)(config)[0] : undefined;
|
|
196
|
+
const camera = singleFeed
|
|
197
|
+
? (deps.zooRtspProviderFactory ?? defaultZooRtspFactory)(singleFeed, streamUrlResolver)
|
|
198
|
+
: undefined;
|
|
199
|
+
zooAgents.push(buildAgent({ ...zooConfig, manageProcessSignals: false }, camera));
|
|
200
|
+
log('[combined-sense] starting on-device ZOO (per-frame ONNX)…');
|
|
201
|
+
}
|
|
202
|
+
else {
|
|
203
|
+
log('[combined-sense] no ZOO camera resolved — running VLM only this pass.');
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
for (const a of zooAgents) {
|
|
207
|
+
await a.start();
|
|
208
|
+
}
|
|
209
|
+
// 2) Run the local-first VLM auto-sense supervisor (probe :9379 → on-device
|
|
210
|
+
// LOCAL VLM, waiting while it prepares) in the SAME process, REUSING
|
|
211
|
+
// runAutoSense verbatim —
|
|
212
|
+
// no forked sensing logic. Both rails converge server-side at ingestMetrics,
|
|
213
|
+
// so there is NO new sink here.
|
|
214
|
+
log('[combined-sense] starting local-first VLM sensing…');
|
|
215
|
+
await (0, autoSense_1.runAutoSense)(args, {
|
|
216
|
+
// Reuse the already-resolved config (one file read, shared with the zoo). The
|
|
217
|
+
// VLM builders default to the sharedSources-aware managers so the VLM attaches
|
|
218
|
+
// to the SAME mosaic pull(s) the per-tile zoo created (one RTSP pull per
|
|
219
|
+
// source). Tests inject their own fakes here.
|
|
220
|
+
loadConfig: () => config,
|
|
221
|
+
probe: deps.probe,
|
|
222
|
+
buildLocalManager: deps.buildLocalManager ?? (() => (0, sensingRunMode_1.buildLocalSensingManager)(config, sensingRunMode_1.consoleIo, { sharedSources, configPath, streamUrlResolver })),
|
|
223
|
+
buildCloudManager: deps.buildCloudManager ?? (() => (0, sensingRunMode_1.buildCloudSensingManager)(config, sensingRunMode_1.consoleIo, { sharedSources, configPath, streamUrlResolver })),
|
|
224
|
+
sleep: deps.sleep,
|
|
225
|
+
setTimer: deps.setTimer,
|
|
226
|
+
clearTimer: deps.clearTimer,
|
|
227
|
+
log,
|
|
228
|
+
// Combined mode is zoo + VLM. If the VLM resolves NO feeds (e.g. a locally
|
|
229
|
+
// attached webcam the zoo can sense but the RTSP feed resolver can't), DON'T
|
|
230
|
+
// kill the process — the zoo is already sensing. Degrade to ZOO-only with a
|
|
231
|
+
// clear warning instead of the standalone auto-sense default (process.exit).
|
|
232
|
+
onNoFeeds: () => log(zooAgents.length > 0
|
|
233
|
+
? `[combined-sense] no VLM camera feeds configured — running ${zooAgents.length} ZOO ` +
|
|
234
|
+
'instance(s) only.'
|
|
235
|
+
: '[combined-sense] no camera feeds for the ZOO or the VLM — nothing to sense. ' +
|
|
236
|
+
'Add `cameras: [...]` or `camera.rtspUrl` + `deviceToken`.'),
|
|
237
|
+
// SIGINT/SIGTERM must stop BOTH: the zoo FIRST, then the VLM supervisor
|
|
238
|
+
// (which clears its re-probe timer + stops the active manager, then exits).
|
|
239
|
+
registerShutdown: (autoSenseShutdown) => {
|
|
240
|
+
let stopping = false;
|
|
241
|
+
const composed = async () => {
|
|
242
|
+
if (stopping)
|
|
243
|
+
return; // both SIGINT and SIGTERM map to this one handler
|
|
244
|
+
stopping = true;
|
|
245
|
+
log('[combined-sense] shutting down ZOO + VLM…');
|
|
246
|
+
for (const a of zooAgents) {
|
|
247
|
+
try {
|
|
248
|
+
await a.stop();
|
|
249
|
+
}
|
|
250
|
+
catch (err) {
|
|
251
|
+
log(`[combined-sense] zoo stop error: ${err instanceof Error ? err.message : err}`);
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
await autoSenseShutdown(); // stops the VLM supervisor + process.exit(0)
|
|
255
|
+
};
|
|
256
|
+
(deps.registerShutdown ?? defaultRegisterShutdown)(composed);
|
|
257
|
+
},
|
|
258
|
+
waitForShutdown: deps.waitForShutdown,
|
|
259
|
+
});
|
|
260
|
+
}
|
|
261
|
+
//# sourceMappingURL=combinedSense.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"combinedSense.js","sourceRoot":"","sources":["../src/combinedSense.ts"],"names":[],"mappings":"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"}
|