Files
tuxinet-streamhub/tuxinet-streamhub-v2.1-enterprise/README.md
T
2026-03-23 19:32:57 +01:00

1.8 KiB

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://IP eller 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_USERNAME
  • ADMIN_EMAIL
  • ADMIN_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>