Commit Graph

24 Commits

Author SHA1 Message Date
Ian Gulliver
eff2635725 Add remove button for unreachable nodes not in config
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 11:18:06 -08:00
Ian Gulliver
d63b8192d2 Rename API endpoints to /tendrils/api/*, detect SSE via Accept header
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 22:31:58 -08:00
Ian Gulliver
98c7fc75b7 Add no-cache headers to static files, fix flow view multi-line names
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 22:26:02 -08:00
Ian Gulliver
99083ecde5 Refactor error tracking to be edge-triggered with node setters
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 23:06:26 -08:00
Ian Gulliver
ed9a0cd60d Fix interface merging, error ordering, sACN client, and add charset headers
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 22:57:13 -08:00
Ian Gulliver
aebd6f5e2c Use MulticastGroup as map key and serialize under lock
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 22:48:55 -08:00
Ian Gulliver
a912d73169 Refactor node storage and use proper types for protocol data
- Rename TypeID to ID throughout
- Remove re-derivable data (MACTableSize, SACNInputs now derived)
- Use typed ArtNetUniverse and SACNUniverse with methods
- Store multicast groups with lastSeen tracking in structs
- Remove int indexes in Nodes, use direct node pointers
- Parse multicast groups into typed struct instead of strings

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 22:36:44 -08:00
Ian Gulliver
fc5b36cd1c Remove separate tracking structures and store protocol data directly on nodes
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 22:15:54 -08:00
Ian Gulliver
41000bd4a0 Combine PortError and Error into single type
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 21:55:33 -08:00
Ian Gulliver
f5d90636bb Move protocol data onto nodes and simplify API response
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 21:50:48 -08:00
Ian Gulliver
7aac3c0559 Track sACN emitters and receivers with peer linking
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 21:27:35 -08:00
Ian Gulliver
c6109c28f0 Merge branch 'main' of github.com:gopatchy/tendrils 2026-01-28 21:16:54 -08:00
Ian Gulliver
7f36444003 Sort by names, then IPs 2026-01-28 21:16:35 -08:00
Ian Gulliver
1df6fd318f Add sACN universe discovery listener 2026-01-28 21:13:22 -08:00
Ian Gulliver
6ae561b968 Include config in status response and push on SIGHUP
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 08:30:23 -08:00
Ian Gulliver
9bc44d4ee5 Add sACN tab showing universe consumers
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-26 13:37:21 -08:00
Ian Gulliver
bbd938b924 Add broadcast packet tracking with rate monitoring
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 19:40:39 -08:00
Ian Gulliver
b2ec349c51 Track unreachable nodes separately for diagram highlighting
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 19:05:13 -08:00
Ian Gulliver
a94f816f3d Add SSE endpoint for real-time status updates
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 18:49:39 -08:00
Ian Gulliver
a96eb7db8c Add port error tracking with UI display
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 18:43:23 -08:00
Ian Gulliver
f9afd3abb6 Always enable HTTPS, require config.yaml 2026-01-25 11:33:15 -08:00
Ian Gulliver
2ab66520b6 Switch to HTTPS with auto-generated self-signed certificate 2026-01-25 11:31:00 -08:00
Ian Gulliver
8b50762c92 Add location grouping with cola layout 2026-01-24 15:04:42 -08:00
Ian Gulliver
9aebe8b83d Add HTTP API with JSON status endpoint and typeid support 2026-01-24 11:03:34 -08:00