Add comprehensive Info-Beamer integration guide

This commit is contained in:
ske087
2025-08-19 11:50:07 +03:00
parent f02d523a99
commit 9c4afb6618

View File

@@ -0,0 +1,179 @@
# Info-Beamer Player Integration Guide
This guide will help you integrate Info-Beamer devices with your content management server.
## Prerequisites
- Info-Beamer device (Raspberry Pi or compatible)
- Network access between the device and your server (IP: 192.168.1.22)
- Device ID from your Info-Beamer device
## Step-by-Step Integration
### 1. Find Your Info-Beamer Device ID
First, you need to get your device's unique ID:
- Access your Info-Beamer device's web interface (usually via its IP address)
- Look for "Device ID" in the settings or dashboard
- Write down this ID - you'll need it for registration
### 2. Register Player in Web Interface
1. Open your browser and navigate to: `http://192.168.1.22`
2. Login with your admin credentials
3. Go to the "Players" section in the admin panel
4. Click "Add Player" and fill in:
- **Device ID**: Your Info-Beamer device's unique ID (from step 1)
- **Player Name**: Descriptive name (e.g., "Lobby Display", "Reception Screen")
- **Channel**: Select which streaming channel this player should display
### 3. Prepare Info-Beamer Package
You need to create a package with these files:
#### Required Files:
- `node.lua` - Main display script (already provided in this repository)
- `config.json` - Configuration file (template provided)
- `roboto.ttf` - Font file for text display (download from Google Fonts)
#### Package Structure:
```
your-info-beamer-package/
├── node.lua
├── config.json
└── roboto.ttf
```
### 4. Configure Your Package
Edit the `config.json` file with your specific settings:
```json
{
"server_url": "http://192.168.1.22",
"player_id": "YOUR_DEVICE_ID_HERE",
"refresh_interval": 30,
"default_duration": 10
}
```
**Configuration Options:**
- `server_url`: Your server's URL (change IP if your server is on a different address)
- `player_id`: Must match exactly the Device ID you registered in step 2
- `refresh_interval`: How often to check for new content (seconds)
- `default_duration`: Default display time per item if not specified (seconds)
### 5. Get the Font File
Download the Roboto font:
1. Go to Google Fonts: https://fonts.google.com/specimen/Roboto
2. Download the font family
3. Extract and copy `Roboto-Regular.ttf` to your package folder
4. Rename it to `roboto.ttf`
### 6. Upload Package to Info-Beamer
#### Option A: Info-Beamer Hosted Service
1. Create account on info-beamer.com
2. Create a new package
3. Upload all three files: `node.lua`, `config.json`, `roboto.ttf`
4. Assign the package to your device
#### Option B: Local Info-Beamer Installation
1. Access your device's web interface
2. Upload the package files
3. Activate the package
### 7. Create and Assign Content
1. **Create a Streaming Channel**:
- In the web interface, go to "Channels"
- Click "Add Channel"
- Enter name and description
- Mark as active
2. **Add Media Content**:
- Go to the "Upload" section
- Upload your images and videos
- Navigate to your channel
- Add uploaded files to the channel
- Set display duration for each item
- Arrange content order
3. **Assign Channel to Player**:
- Go to "Players" section
- Edit your player
- Select the channel you created
### 8. Test the Integration
Your Info-Beamer device should now:
- Connect to the server every 30 seconds
- Display "Waiting for channel content..." if no content is assigned
- Show media files from the assigned channel in sequence
- Display channel name and current time as overlay
- Automatically update when you change content
## API Endpoints
The server provides these endpoints for Info-Beamer integration:
- `GET /api/player/{device_id}/content` - Get content playlist for the player
- `GET /api/player/{device_id}/channel` - Get channel information
- `POST /api/player/{device_id}/heartbeat` - Update player last seen status
## Troubleshooting
### Player Not Connecting
- Verify `server_url` in config.json points to the correct IP address
- Check network connectivity between device and server
- Ensure `player_id` in config.json matches the registered Device ID exactly
- Check firewall settings on the server
### No Content Displaying
- Verify the player is assigned to an active channel
- Check that the channel has content added to it
- Ensure media files are properly uploaded to the server
- Check file permissions in the `/uploads/` directory
### Content Not Updating
- Check the `refresh_interval` setting in config.json
- Verify the server is running and accessible at port 80
- Look for error messages in Info-Beamer device logs
- Test API endpoints manually in browser
### Wrong Content Displaying
- Verify channel assignment for the player
- Check content order in the channel
- Ensure media files are the correct format (JPG, PNG, MP4)
## Player Management
In the admin interface, you can monitor:
- **Player Status**: Online/Offline based on last heartbeat
- **Last Seen**: Timestamp of last communication with server
- **Channel Assignment**: Which content channel is currently assigned
- **Device Information**: Name, location, and other details
You can change channel assignments at any time through the web interface, and players will automatically update their content within the refresh interval.
## Content Management
### Supported Media Types
- **Images**: JPG, PNG, GIF
- **Videos**: MP4, AVI, MOV
### Best Practices
- Use consistent aspect ratios for smooth transitions
- Optimize file sizes for network transfer
- Test content on actual displays before deployment
- Keep refresh intervals reasonable (30-60 seconds)
- Monitor player connectivity regularly
## Security Notes
- Change default admin password immediately
- Use HTTPS in production environments
- Restrict network access to the server
- Regular backup of database and uploaded content
- Monitor API access logs for unusual activity