diff --git a/INTERCOM_README.md b/INTERCOM_README.md new file mode 100644 index 0000000..35b67a9 --- /dev/null +++ b/INTERCOM_README.md @@ -0,0 +1,266 @@ +# UBK Intercom Setup - Mumble/Talkkonnect + +This is a standalone script for setting up push-to-talk (PTT) intercom functionality for the Ubuntu Based Kiosk using Mumble/Talkkonnect. + +## Overview + +The intercom system uses: +- **Murmur**: The Mumble server software (can run on one kiosk) +- **talkkonnect**: A headless Mumble client optimized for push-to-talk + +## Use Cases + +### 1. All-in-One (Server + Client) +One kiosk acts as both the server and a client. Other devices can connect to it. + +```bash +./setup_intercom.sh +# Select option 1: Install All-in-One (Server + Client) +``` + +### 2. Client Only +Connect to an existing Mumble server (could be another kiosk or external server). + +```bash +./setup_intercom.sh +# Select option 3: Install talkkonnect Client Only +# Enter the server IP, port, and credentials +``` + +### 3. Server Only +Turn a kiosk into a dedicated Mumble server. + +```bash +./setup_intercom.sh +# Select option 2: Install Murmur Server Only +``` + +## Quick Start + +### Single Kiosk Setup (Server + Client) + +```bash +cd /path/to/ubk +./setup_intercom.sh +``` + +1. Select **Option 1: Install All-in-One (Server + Client)** +2. Set a SuperUser password (for server administration) +3. Set a server password (clients need this to connect) +4. Set a welcome message +5. Set a username for the talkkonnect client +6. The client will auto-connect to the local server + +### Multi-Kiosk Setup + +**On the server kiosk:** +```bash +./setup_intercom.sh +# Select option 2: Install Murmur Server Only +# Note the server IP address shown after installation +``` + +**On each client kiosk:** +```bash +./setup_intercom.sh +# Select option 3: Install talkkonnect Client Only +# Enter the server IP from above +# Port: 64738 (default) +# Enter username and password +``` + +## Features + +### Push-to-Talk +- Default PTT key: **Spacebar** +- Press and hold to transmit audio +- Release to stop transmitting + +### Management +The script provides a full-featured menu for: +- Starting/stopping services +- Reconfiguring settings +- Viewing logs +- Uninstalling components + +### Connecting from Other Devices + +Other devices can connect to your Mumble server using: + +**Desktop (Windows/Mac/Linux):** +- Download Mumble client: https://www.mumble.info/downloads/ +- Connect to: `:64738` + +**Mobile (iOS/Android):** +- Install Mumble app from app store +- Add server: `:64738` + +## Configuration + +### Server Configuration +Location: `/etc/mumble-server.ini` + +Key settings: +- Port: 64738 (default) +- Max users: 10 +- Bandwidth: 72000 + +### Client Configuration +Location: `/home/kiosk/talkkonnect.xml` + +Key settings: +- Server address and port +- Username and password +- PTT button (default: spacebar) +- Audio settings + +## Troubleshooting + +### Check Service Status + +```bash +# Check Murmur server +sudo systemctl status mumble-server + +# Check talkkonnect client +sudo systemctl status talkkonnect +``` + +### View Logs + +Use the built-in menu options, or: + +```bash +# Murmur logs +sudo journalctl -u mumble-server -n 50 + +# talkkonnect logs +sudo journalctl -u talkkonnect -n 50 +``` + +### Audio Issues + +1. Check audio devices: +```bash +arecord -l # List recording devices +aplay -l # List playback devices +``` + +2. Test audio: +```bash +# Test microphone +arecord -d 5 test.wav && aplay test.wav +``` + +3. Edit talkkonnect configuration: +```bash +nano /home/kiosk/talkkonnect.xml +# Adjust