Commit Graph

162 Commits

Author SHA1 Message Date
eduard256 e2e24c7578 Switch mDNS probe to multicast, use mDNS for reachability
Unicast mDNS queries (direct to IP:5353) are ignored by some HomeKit
devices. Switch to multicast (224.0.0.251:5353) and filter responses
by sender IP. Also consider mDNS response as reachability signal.

Split probe timeouts: 100ms for ports/DNS/HTTP, 120ms total to give
mDNS extra time. HomeKit responds in ~0.2ms via multicast.
2026-04-05 12:06:11 +00:00
eduard256 f084135701 Remove ICMP ping from probe, add HomeKit port 51826
ICMP requires root or CAP_NET_RAW which is not available in
unprivileged containers. Probe now relies solely on port scanning
for reachability detection, which works without any special
permissions. Add port 51826 (HomeKit) to both default and
database-loaded port lists.
2026-04-05 11:54:24 +00:00
eduard256 4e9ffd1440 Show LAN IP instead of localhost in install summary
Detect local network IP address using ip route / hostname -I / ifconfig
fallback chain and display it in the post-install summary box so users
can immediately open Strix from other devices on the network.
2026-04-05 10:45:46 +00:00
eduard256 83659c9a82 Replace double dashes with single dashes 2026-04-05 10:36:48 +00:00
eduard256 e0ccef8683 Replace double dashes with single dashes 2026-04-05 10:36:47 +00:00
eduard256 166feceab9 Add StrixCamFake link to DEVELOPERS.md 2026-04-05 10:36:11 +00:00
eduard256 66f9131cff Add StrixCamFake link to DEVELOPERS.md 2026-04-05 10:36:10 +00:00
eduard256 8cf3195b51 Add StrixCamFake link to README 2026-04-05 10:35:51 +00:00
eduard256 600141d11b Add StrixCamFake link to README 2026-04-05 10:35:50 +00:00
eduard256 608d4989ff Link feature bullets to corresponding screenshots 2026-04-05 10:28:55 +00:00
eduard256 5fb1efe599 Link feature bullets to corresponding screenshots 2026-04-05 10:28:54 +00:00
eduard256 2ab8106b01 Add supported cameras link to quick links 2026-04-05 10:25:42 +00:00
eduard256 acc456f3f5 Add supported cameras link to quick links 2026-04-05 10:25:41 +00:00
eduard256 22baefd57f Add camera database browse and contribute links 2026-04-05 10:23:33 +00:00
eduard256 f06d60f6ff Add camera database browse and contribute links 2026-04-05 10:23:32 +00:00
eduard256 6044df6ee4 Add horizontal rule before demo GIF 2026-04-05 10:20:39 +00:00
eduard256 56c02f6b72 Add horizontal rule before demo GIF 2026-04-05 10:20:38 +00:00
eduard256 43632fb8c2 Add live demo, video, and API docs links after banner 2026-04-05 10:19:33 +00:00
eduard256 55a4a62752 Add live demo, video, and API docs links after banner 2026-04-05 10:19:32 +00:00
eduard256 4c1fab86b1 Add separator between logo and title 2026-04-05 10:18:26 +00:00
eduard256 1c50564548 Add separator between logo and title 2026-04-05 10:18:25 +00:00
eduard256 1efe3cc9ba Add STRIX text next to logo in header 2026-04-05 10:17:40 +00:00
eduard256 21c96d6548 Add STRIX text next to logo in header 2026-04-05 10:17:39 +00:00
eduard256 4ea3485c9b Move API reference to DEVELOPERS.md 2026-04-05 10:15:47 +00:00
eduard256 dd8966a8d7 Move API reference to DEVELOPERS.md 2026-04-05 10:15:46 +00:00
eduard256 74eed5ede9 Redesign README header with centered layout and feature list 2026-04-05 10:09:26 +00:00
eduard256 96354f018f Redesign README header with centered layout and feature list 2026-04-05 10:09:25 +00:00
eduard256 75947be26b Remove title text from README header 2026-04-05 10:03:45 +00:00
eduard256 e4a28fe61a Remove title text from README header 2026-04-05 10:03:44 +00:00
eduard256 4cb00ec85f Left-align logo and badges in README 2026-04-05 10:03:15 +00:00
eduard256 2fc9be2d9f Left-align logo and badges in README 2026-04-05 10:03:14 +00:00
eduard256 0cf9f7d44e Remove logo caption from README 2026-04-05 10:02:39 +00:00
eduard256 39da8d2d50 Remove logo caption from README 2026-04-05 10:02:38 +00:00
eduard256 8c1a6b1b0e Add MIT license and license badge 2026-04-05 10:02:03 +00:00
eduard256 258f3712c2 Add MIT license and license badge 2026-04-05 10:02:02 +00:00
eduard256 2db7ae6f25 Move badges above icon in README 2026-04-05 10:00:31 +00:00
eduard256 bb740a04bc Move badges above icon in README 2026-04-05 10:00:30 +00:00
eduard256 09bd2ce220 Use PNG icon in README 2026-04-05 09:00:15 +00:00
eduard256 8a4201936a Use PNG icon in README 2026-04-05 09:00:10 +00:00
eduard256 0a30496991 Add README for v2.0.0 2026-04-05 08:58:55 +00:00
eduard256 eb6719237d Add README for v2.0.0 2026-04-05 08:58:23 +00:00
eduard256 ded8aebcad Merge develop into main for v2.0.0 release
# Conflicts:
#	DOCKER.md
#	README.md
v2.0.0
2026-04-05 08:32:14 +00:00
eduard256 e2f84ec0f6 Release v2.0.0 2026-04-05 08:32:05 +00:00
eduard256 5f21a91ff9 Add universal Linux installer script
Bash installer that works on any Linux distro:
- Auto-detects OS and architecture
- Installs Docker via get.docker.com if missing
- Installs Docker Compose plugin if missing
- Auto-discovers local Frigate and go2rtc instances
- Interactive dialogs with 10s timeouts
- Generates docker-compose.yml and .env in /opt/strix/
- Supports install and update modes
- CLI flags for non-interactive use (--yes, --version, --no-logo)
- Returns machine-readable status for parent scripts (Proxmox LXC)
2026-04-05 08:13:28 +00:00
eduard256 44ab0651cb Add DVRIP protocol support
- Register dvrip stream handler using go2rtc pkg/dvrip
- Add default port 34567 for dvrip scheme in URL builder
2026-04-03 21:01:39 +00:00
eduard256 51b11e233f Add RTMP protocol support
Register rtmp, rtmps, rtmpx stream handlers using go2rtc
pkg/rtmp.DialPlay for TCP connect, handshake, and play.
2026-04-03 20:33:30 +00:00
eduard256 d59816543d Add direct stream URL input support to web UI 2026-04-03 20:03:45 +00:00
eduard256 4880e1ad14 Add 15s timeout for HTTP handler requests
Cameras under load may accept TCP connection but never respond,
hanging tester workers indefinitely. Context timeout on the HTTP
request ensures workers are released.
2026-04-03 19:26:17 +00:00
eduard256 6abb8409cb Add HTTP/HTTPS protocol support for snapshots and streams
Register http, https, httpx handlers with content-type detection:
- image/jpeg: single JPEG snapshots via go2rtc image.Open
- multipart/x-mixed-replace: MJPEG streams via mpjpeg.Open
- application/vnd.apple.mpegurl: HLS via hls.OpenURL
- auto-detect fallback via magic.Open (MPEG-TS, raw MJPEG, etc.)

Uses go2rtc tcp.Do for Basic + Digest auth and TLS handling.
2026-04-03 16:03:45 +00:00
eduard256 8ce89bec75 Always include port in URL for protocols with raw TCP dial
Bubble protocol uses net.DialTimeout with u.Host directly,
which requires explicit port. Add portRequired set to force
port in generated URLs for such protocols.
2026-04-01 17:53:00 +00:00