Files
beamer/README.md
ske087 ab36454574 Initial commit: Info-Beamer Streaming Channel System
- Complete Flask web application for digital signage management
- Streaming channels for organized content delivery
- User authentication with admin/user roles
- Bootstrap UI with light/dark theme support
- File upload and management system
- Activity logging and monitoring
- API endpoints for Info-Beamer device integration
- Database models for channels, content, users, and activity logs
2025-08-19 08:37:14 +03:00

88 lines
2.4 KiB
Markdown

# Info-Beamer Streaming Channel System
A Flask-based web application for managing digital signage content with streaming channels for Info-Beamer Pi devices.
## Features
- **Streaming Channels**: Organize content into channels for targeted display management
- **User Authentication**: Admin and user roles with secure login system
- **File Management**: Upload and manage media files (images, videos, PDFs, JSON)
- **Channel Assignment**: Assign specific channels to Info-Beamer devices
- **Activity Logging**: Track all user actions and system events
- **Bootstrap UI**: Modern responsive interface with light/dark theme switching
- **API Endpoints**: RESTful APIs for Info-Beamer device integration
## Installation
1. Clone the repository:
```bash
git clone https://gitea.moto-adv.com/ske087/beamer.git
cd beamer
```
2. Create virtual environment:
```bash
python3 -m venv .venv
source .venv/bin/activate
```
3. Install dependencies:
```bash
pip install flask flask-sqlalchemy flask-login werkzeug
```
4. Run the application:
```bash
python server.py
```
5. Access the web interface at `http://localhost:5000`
## Default Credentials
- **Username**: admin
- **Password**: admin
⚠️ **Important**: Change the default password after first login!
## API Endpoints
- `/api/content` - Get all available media files
- `/api/playlist` - Get default channel playlist (legacy)
- `/api/channel/<device_id>` - Get device-specific channel playlist
## Project Structure
```
beamer/
├── server.py # Main Flask application
├── templates/ # HTML templates
│ ├── login.html
│ ├── admin.html
│ ├── user.html
│ ├── channels.html
│ └── schedules.html
├── uploads/ # Media file storage
├── .venv/ # Virtual environment
└── beamer.db # SQLite database
```
## Usage
1. **Login** with admin credentials
2. **Upload Media Files** through the admin dashboard
3. **Create Channels** to organize content
4. **Add Content** to channels with custom durations
5. **Assign Players** to specific channels
6. **Monitor Activity** through the activity log
## Info-Beamer Integration
Configure your Info-Beamer devices to fetch playlists from:
- Default channel: `http://your-server:5000/api/playlist`
- Device-specific: `http://your-server:5000/api/channel/DEVICE_ID`
## License
This project is developed for local digital signage management.