Created setup_intercom_simple.sh using talkiepi (barnard fork) instead of talkkonnect for a more stable and lightweight intercom solution. Advantages over talkkonnect: - Simpler build process (no Opus patching required) - Fewer dependencies (just Go, libopenal, libopus) - Full CLI support for server, username, password, and channel - More stable and less fragile - Better suited for headless/kiosk automation Also added INTERCOM_COMPARISON.md documenting all evaluated options (talkkonnect, talkiepi, barnard, mumbler) with recommendations.
4.0 KiB
4.0 KiB
Intercom Solution Comparison
Overview
This document compares different Mumble client options for the UBK kiosk intercom system (Phase 2).
Options Evaluated
1. talkkonnect (Current)
- Repository: https://github.com/talkkonnect/talkkonnect
- Type: Full-featured headless Mumble client
- Pros:
- Very feature-rich
- Active development
- Lots of hardware integration options
- Cons:
- Complex build process (Go 1.24+ required, Opus patching needed)
- Many dependencies
- Can be fragile on different platforms
- XML configuration required
- Heavy for simple use cases
2. talkiepi (Recommended)
- Repository: https://github.com/dchote/talkiepi
- Type: Lightweight barnard-based client
- Pros:
- Simple, clean codebase
- Easy build process
- CLI arguments for all connection params:
-server,-username,-password,-channel - Based on proven barnard client
- Fewer dependencies (just Go, libopenal, libopus)
- More stable and predictable
- Perfect for headless/kiosk use
- Cons:
- Less features than talkkonnect
- Focused on simplicity over advanced features
- Best for: Intercom use case
3. barnard (Original)
- Repository: https://github.com/layeh/barnard
- Type: Terminal-based interactive client
- Pros:
- Interactive ncurses UI
- Good for manual/desktop use
- CLI arguments for server, username, password
- Cons:
- No
-channelflag (must navigate after connecting) - Interactive UI not ideal for automated/headless use
- Not designed for systemd/autostart scenarios
- No
- Best for: Manual desktop use, not kiosk automation
4. barnard (bmmcginty fork)
- Repository: https://github.com/bmmcginty/barnard
- Type: Accessible terminal client for blind users
- Pros:
- Enhanced accessibility features
- FIFO control for external automation
- Audio boost capability
- Config file support
- Cons:
- Still no
-channelflag - Interactive focus
- Still no
- Best for: Accessibility-focused manual use
5. mumbler (tmelvin)
- Repository: https://github.com/tmelvin/mumbler
- Type: CLI client with immediate channel connection
- Pros:
- Supports
-channelflag -inmediatestartfor auto-transmission- Simple CLI interface
- Supports
- Cons:
- Password flag support unclear from documentation
- Less mature/tested
- Smaller community
- Best for: Quick testing, uncertain for production
Recommendation
Use talkiepi for the UBK kiosk intercom project because:
- ✅ Simpler - Much easier to build and maintain than talkkonnect
- ✅ Complete CLI - Has all needed flags: server, username, password, channel
- ✅ Stable - Based on barnard, proven and reliable
- ✅ Lightweight - Minimal dependencies, smaller footprint
- ✅ Headless-ready - Designed for automated/systemd use
- ✅ Less fragile - Fewer moving parts = fewer things to break
Implementation
Two scripts are provided:
- setup_intercom.sh - Original with talkkonnect
- setup_intercom_simple.sh - New with talkiepi (recommended)
Quick Start with talkiepi
# Make executable
chmod +x setup_intercom_simple.sh
# Run the installer
./setup_intercom_simple.sh
# Choose option 1 for all-in-one (server + client)
Manual talkiepi Command
talkiepi -server 192.168.1.100:64738 \
-username kiosk \
-password mypass \
-channel "Intercom" \
-insecure
Migration Path
If currently using talkkonnect:
- Uninstall talkkonnect via setup_intercom.sh
- Run setup_intercom_simple.sh to install talkiepi
- Use same Murmur server configuration
- Enjoy simpler, more reliable setup