mirror of
https://github.com/BenceGyurus/obs-stream-controller.git
synced 2026-05-15 21:26:40 +00:00
No description
| .github/workflows | ||
| content | ||
| web | ||
| .dockerignore | ||
| .env.example | ||
| .gitignore | ||
| CHANGELOG.md | ||
| docker-compose.synology.yml | ||
| docker-compose.yml | ||
| Dockerfile | ||
| README.md | ||
| requirements.txt | ||
YouTube Stream Monitor
A simple, lightweight web application to monitor a YouTube channel's live status and send Telegram notifications when the stream goes offline or comes back online.
Features
- YouTube Monitoring: Checks if a specific channel is live using the YouTube Data API.
- Telegram Notifications:
- 🚨 Robust alerts when the stream goes offline with "cool" status messages.
- ✅ Notifications when the stream is back online.
- 🛠 Test message feature to verify Telegram configuration.
- Web Interface:
- Real-time status dashboard.
- Configurable check intervals (default is 15 minutes/900 seconds).
- History chart showing stream status over time.
- Multi-language support (English, Hungarian).
Prerequisites
- Python 3.9+
- YouTube Data API Key
- YouTube Channel ID
- Telegram Bot Token and Chat ID (for notifications)
Quick Start
-
Clone the repository:
git clone https://github.com/yourusername/obs-stream-control.git cd obs-stream-control -
Install dependencies:
pip install -r requirements.txt -
Configure environment variables: Create a
.envfile from the example:cp .env.example .envEdit
.envand provide your:YOUTUBE_API_KEYYOUTUBE_CHANNEL_IDTELEGRAM_BOT_TOKEN(optional, can be set in UI)TELEGRAM_CHAT_ID(optional, can be set in UI)
-
Run the application:
python -m web.backend.main -
Access the dashboard: Open
http://localhost:8000in your browser.
Docker Usage
You can also run the monitor using Docker:
docker-compose up -d
Settings
Settings like the Telegram bot token, chat ID, and check interval can be updated directly from the web interface and are saved to a settings.json file.
License
MIT