Skip to content

[DEMO] First-slice CCTV — run on a Windows T3000 box before merge - #491

Closed
MauriceDuteau wants to merge 6 commits into
masterfrom
cursor/onvif-nvr-sidecar-dd58
Closed

MauriceDuteau wants to merge 6 commits into
masterfrom
cursor/onvif-nvr-sidecar-dd58

Conversation

@MauriceDuteau

@MauriceDuteau MauriceDuteau commented Aug 22, 2026 •

Copy link
Copy Markdown
Contributor

Merge is later. This PR is for a teammate to see CCTV working on a normal VS2019 / Win32 T3000 machine. Do not land on master until people have run the demo.

The git branch name is exactly CCTV. Check that out — not cursor/onvif-nvr-sidecar-dd58, not cctv.

GitHub still labels this PR’s head as cursor/onvif-nvr-sidecar-dd58 after the branch rename, so new commits may not appear on this PR. The work is on origin/CCTV (git fetch origin && git checkout CCTV).

Start here (Windows)

DEMO.md — checkout CCTV, build, drop go2rtc.exe, open Tools → CCTV, discover ONVIF or paste RTSP.

  1. git fetch origin then git checkout CCTV → open T3000 - VS2019.sln → Release | Win32 → Build.
  2. Download go2rtc_win64.zip and put go2rtc.exe in T3000 Output\release\sidecar\ (or next to T3000.exe, or T3000\sidecar\). No special installer. MediaMTX is optional: windows_amd64 zip.
  3. Run T3000 → Tools → CCTV.
  4. Discover ONVIF (same LAN) or Add and play with rtsp://user:pass@camera/....
  5. Success: green go2rtc :9191 and live video in the WebView tile.
  6. Missing exe: T3000 still runs; CCTV opens with a red “go2rtc.exe was not found” panel listing drop folders. Not a stub — the launch path is real.
  7. Sidecars bind 127.0.0.1:9191–9197. 9103 / 9104 / 3003 stay free.

Operator manual (product book)

T3000 CCTV user manual — homeowner / building-operator book on Documentation/cctv/t3000-cctv/. Figures 01–09 are placeholders; real screenshots belong in this PR conversation once Tools → CCTV is captured on Windows. Vendor folders beside it are inspiration only.

Inspiration docs (not a product spec)

Documentation/cctv/README.md — official UniFi Protect, Reolink, and Synology Surveillance Station 9.0 pages/PDFs for internal Temco UX reference. Operator ranking: 1 UniFi Protect, 2 Reolink, 3 Synology SS 9.0. T3000 CCTV still uses go2rtc + MediaMTX. Copyright Ubiquiti / Reolink / Synology.

CI is red — not this CCTV code

GitHub Testing the MSBuild fails on this branch the same way it already fails on master: windows-latest has no MFC (MSB8041) and no .NET Framework 4.5.2 targeting pack (MSB3644). The job never reaches T3000NvrSidecar.cpp. Do not treat that check as “CCTV broke the build.” Compile on your VS2019 machine.

What this Linux agent could not verify

T3000 is 32-bit MFC + WebView2. This cloud VM cannot compile or run T3000.exe, start go2rtc on Windows, or see a LAN camera. The Windows steps in DEMO.md are written so a T3000 developer can do that without this PR being merged.

Approach (not stubs)

  • Host: existing WebView2 (BacnetWebView) + Tools → CCTV.
  • T3000NvrSidecar.cpp actually CreateProcesses go2rtc/MediaMTX, writes %LOCALAPPDATA%\T3000\nvr\, job-object lifecycle. Internal C++ names still say Nvr.
  • UI: T3000/ResourceFile/nvr/index.html titled T3000 CCTV (T3000Webview is a submodule — no Quasar change).
  • Search order includes output sidecar\, next to the exe, and source T3000\sidecar\ so a dropped zip works without rebuild.
  • No GPL in T3000.exe. Binaries stay out of git.

Background: Documentation/nvr.md.

Open in Web Open in Cursor 

cursoragent and others added 2 commits August 22, 2026 16:45
…bView.

Launch localhost sidecars from Tools > Cameras (NVR), serve a self-contained
live-view page through WebView2, and degrade with a clear message when the
MIT exes are absent. Binaries stay out of git; fetch script and installer
AddFolder notes document how they enter the release tree.

Co-authored-by: Temco Controls <register3@temcocontrols.com>
Document checkout, VS2019 Win32 build, official go2rtc/MediaMTX zip links,
Tools > Cameras, ONVIF/RTSP, success vs missing-exe, and reserved ports.
Also search T3000\sidecar from the output directory so a dropped exe works
without a rebuild or installer.

Co-authored-by: Temco Controls <register3@temcocontrols.com>
@cursor cursor Bot changed the title Add first-slice ONVIF NVR (go2rtc/MediaMTX sidecars + Cameras WebView) [DEMO] First-slice ONVIF NVR — run on a Windows T3000 box before merge Aug 22, 2026
cursoragent and others added 2 commits August 22, 2026 16:49
The windows-latest runner fails MSB8041/MSB3644 before compiling the NVR
files. DEMO.md tells teammates to ignore that check and build in VS2019.

Co-authored-by: Temco Controls <register3@temcocontrols.com>
Menu is Tools > CCTV; window title, WebView heading, status text, and
demo docs match. Internal C++ identifiers stay T3000NvrSidecar.

Co-authored-by: Temco Controls <register3@temcocontrols.com>
@cursor cursor Bot changed the title [DEMO] First-slice ONVIF NVR — run on a Windows T3000 box before merge [DEMO] First-slice CCTV — run on a Windows T3000 box before merge Aug 22, 2026
Teammates should git checkout cctv, not the old cursor/ branch name.

Co-authored-by: Temco Controls <register3@temcocontrols.com>
@cursor
cursor Bot deleted the cursor/onvif-nvr-sidecar-dd58 branch August 22, 2026 16:58
@cursor

cursor Bot commented Aug 22, 2026

Copy link
Copy Markdown

Moved to cctv. GitHub’s branch rename left this PR stuck on the old head name cursor/onvif-nvr-sidecar-dd58.

Use the replacement draft instead: #492

Same commits, menu is Tools → CCTV, checkout is git checkout cctv. This PR will be closed.

The git branch name is exactly CCTV, matching the Tools > CCTV UI.

Co-authored-by: Temco Controls <register3@temcocontrols.com>
@MauriceDuteau MauriceDuteau reopened this Aug 22, 2026
@cursor
cursor Bot restored the cursor/onvif-nvr-sidecar-dd58 branch August 22, 2026 17:02
@cursor
cursor Bot deleted the cursor/onvif-nvr-sidecar-dd58 branch August 22, 2026 17:02
@MauriceDuteau

Copy link
Copy Markdown
Contributor Author

too big, will do a documentation only PR first

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants