TuxiNet StreamHub v2.1 Enterprise (Clean Build)
Første enterprise-udgave af StreamHub med:
- PostgreSQL
- Flask backend
- MediaMTX auth via backend
- Admin + streamer roller
- 1 streamer = 1 stream
- SMTP2GO mailflow
- Force password change ved første login
- Password reset via mail
- Branding med
bg.png,logo.png,videooffline.png
Status
Denne første udgave er lavet som en ren base, så du kan starte rent uden de gamle v2-filer.
Implementeret
- Datamodel låst til PostgreSQL
- Admin-login og streamer-login
- Admin kan oprette streamer + stream i samme flow
- Streamer ser kun egen stream
- MediaMTX auth-route
- Status fra MediaMTX API
- Mail helper til onboarding og reset
- Force password change flow
- Forgot/reset password flow
- Offline player image i UI
- Enterprise login design
Delvist scaffoldet / klar til næste iteration
- Action/bot layer (
kick publisher,restart service) er scaffoldet som placeholder - Mere avancerede live-metrics kan udvides senere
- Fuldt migrationsflow med Alembic kan tilføjes senere
Hurtig opstart
cp .env.example .env
nano .env
docker compose build --no-cache
docker compose up -d
Åbn derefter:
- Web:
http://IPeller dit reverse proxied domæne - MediaMTX API: internt på
http://mediamtx:9997
Første admin-bruger
Backend opretter automatisk admin-brugeren ud fra .env:
ADMIN_USERNAMEADMIN_EMAILADMIN_PASSWORD
SMTP2GO
Sæt i .env:
SMTP_HOST=mail.smtp2go.com
SMTP_PORT=2525
SMTP_USERNAME=noreplay@tuxinet.dk
SMTP_PASSWORD=DIN_SMTP2GO_ADGANGSKODE
MAIL_FROM=noreplay@tuxinet.dk
MediaMTX ingest-formater
OBS
- Server:
rtmp://dit-domæne:1935/<slug> - Key:
<token>
Larix / Streamlabs fallback
- URL:
rtmp://dit-domæne:1935 - Key:
<slug>/<token>
Query-token
rtmp://dit-domæne:1935/<slug>?token=<token>