Alta Local Camera Discovery

Standalone Electron utility for discovering Alta cloud-native cameras on the technician's current LAN. It listens for _vaioncam._tcp.local mDNS announcements and reports each camera's Alta Key, IP address, and hostname Web UI URL without Alta credentials or camera configuration changes.

The original Python web prototype remains available in app.py; the Electron app performs discovery directly in its main process through a narrow, isolated preload bridge. src/scan-session.js owns the single-flight scan lifecycle, defensive result snapshot, and latest-scan camera URL authorization so Electron bootstrap code remains small and testable.

Run the Electron app

npm install
npm start

Use

  1. Connect the computer to the same LAN/VLAN as the cameras.
  2. Select Start discovery.
  3. Copy an individual Alta Key or select Export CSV.
  4. Select a camera hostname to open its local HTTPS Web UI.

The CSV filename is alta-camera-keys.csv and its columns are:

Alta Key,IP Address,Hostname URL

Download

The current Windows x64 portable release is available from GitPeji:

No installer or Alta credentials are required. The current Windows release is unsigned and may trigger Microsoft Defender SmartScreen; verify its SHA-256 against the checksum published with the release.

Build

npm run build:win       # Windows x64 portable EXE
npm run build:linux     # Linux x64 AppImage

Artifacts are written under dist/. The Electron app icon is assets/icon.png / assets/icon.ico: the approved radar artwork in the Alta colourway with the Alta A layered above it. Release artifacts are built from clean, tagged source revisions and are not committed to the repository.

Verify

npm run check
npm run scan
npm run build-test
npm run build-test:win

npm run scan exercises the same Node mDNS engine used by Electron. The legacy Python scanner can still be checked with:

.venv/bin/python -m unittest -v test_app.py

Security and limits

  • Renderer Node integration is disabled; context isolation and sandboxing are enabled.
  • The UI is served from an allowlisted app:// protocol; arbitrary local files and renderer permissions are denied.
  • IPC accepts only the app's main frame at the exact packaged application URL.
  • Discovery requires matching Alta Key/hostname, HTTPS port 443, and a valid private or link-local address; scans are concurrency- and result-bounded.
  • External navigation is denied except a root HTTPS camera URL from the latest successful scan.
  • CSV content is generated in the main process and written only through a native save dialog.
  • Release builds are configured to disable Electron's Node/inspection/file-privilege fuses and enable ASAR integrity enforcement.
  • mDNS normally does not cross VLANs or routed boundaries.
  • mDNS advertisements are not cryptographically authenticated; results are correlated and constrained local announcements, not proof of device identity.
  • Only powered, reachable cameras advertising _vaioncam._tcp.local are shown.
S
Description
Standalone LAN discovery utility for Alta cloud-native cameras
Readme 360 KiB
2026-09-01 18:13:18 +00:00
Languages
JavaScript 74.9%
Python 15.7%
HTML 9.4%