Files
horror/backend/app/config.py
2026-09-30 01:24:49 +02:00

41 lines
1.5 KiB
Python

import os
from pathlib import Path
from dotenv import load_dotenv
ROOT = Path(__file__).resolve().parents[2]
load_dotenv(ROOT / ".env")
TMDB_TOKEN = os.environ["TMDB_TOKEN"]
MINIMAX_KEY = os.environ["MINIMAX_KEY"]
# Wer den Hostmodus einschalten darf. Einmal /?host=<schlüssel> aufrufen,
# danach steckt es in der Sitzung. Ohne Eintrag kommt niemand an die
# Hostknöpfe — auch nicht über die Tastenkombination.
HOST_SCHLUESSEL = os.getenv("HOST_SCHLUESSEL", "")
TMDB_BASE = "https://api.themoviedb.org/3"
IMAGE_BASE = "https://image.tmdb.org/t/p"
MINIMAX_URL = "https://api.minimax.io/v1/chat/completions"
MINIMAX_MODEL = "MiniMax-M3"
PROVIDER_NETFLIX = 8
# MediaMTX liefert den Live-Stream; die Adresse zeigt im Container auf den
# Dienstnamen, lokal auf localhost
MEDIAMTX_URL = os.getenv("MEDIAMTX_URL", "http://127.0.0.1:8890")
# Der Playback-Server von MediaMTX: liefert Ausschnitte der Aufnahme
MEDIAMTX_PLAYBACK_URL = os.getenv("MEDIAMTX_PLAYBACK_URL", "http://127.0.0.1:9996")
# Die Steuer-API von MediaMTX, zum Löschen von Aufnahmen. Angemeldet
# wird sich als der Sender-Nutzer mit dem Sendepasswort aus der .env.
MEDIAMTX_API_URL = os.getenv("MEDIAMTX_API_URL", "http://127.0.0.1:9997")
MTX_SENDEPASSWORT = os.getenv("MTX_SENDEPASSWORT", "")
# Wohin die geschnittenen Clips kommen
CLIPS_DIR = Path(os.getenv("CLIPS_DIR", ROOT / "clips"))
REGION = "DE"
LANGUAGE = "de-DE"
DB_PATH = Path(os.getenv("DB_PATH", ROOT / "backend" / "horror.db"))
STATIC_DIR = Path(__file__).resolve().parent.parent / "static"