Sony Automator Controls - TCP to HTTP command bridge for Cuez Automator
Project description
Sony Automator Controls
TCP to HTTP command bridge for Sony Automator devices
A desktop application that receives TCP commands and triggers HTTP API calls to your Cuez Automator system. Perfect for integrating external control systems with Automator macros, buttons, and keyboard shortcuts.
Quick Start
Windows Executable (Easiest)
- Download
SonyAutomatorControls-1.0.2.exefrom Releases - Double-click to run - no installation needed!
- The desktop GUI will open and the web interface is available at
http://localhost:3114
Python Installation
# Install dependencies
pip install -r requirements.txt
# Run with GUI
python -m sony_automator_controls
# Run server only (no GUI)
python -m sony_automator_controls --no-gui --port 3114
Features
- TCP Command Listener - Listen on multiple TCP ports for incoming commands
- HTTP API Bridge - Trigger Automator macros, buttons, and shortcuts via HTTP
- Command Mapping - Map TCP commands to Automator actions through web interface
- Desktop GUI - Clean interface matching Elliott's house style with ITV Reem fonts
- Web Interface - Full-featured control panel with live status monitoring
- System Tray Support - Minimize to tray for background operation
How to Use
Step 1: Configure Automator Connection
- Open the web interface at
http://localhost:3114 - Go to Settings page
- Enable "Automator Integration"
- Enter your Automator API URL (e.g.,
http://172.26.6.2) - Click "Test Connection" to verify
- Click "Save Settings"
Step 2: View Available Actions
- Go to Automator Macros page
- Click "Fetch Automator Items" to load available:
- Macros - Saved macro sequences
- Buttons - Deck button controls
- Shortcuts - Keyboard shortcut triggers
- Click the test button next to any item to trigger it manually
Step 3: Configure TCP Listeners
- Go to TCP Commands page
- Add TCP ports you want to listen on (e.g., 9001, 9002, 9003)
- Define command names (e.g., "CAMERA_ON", "VT_PLAY", "GRAPHICS_1")
- Save your commands
Step 4: Map Commands to Automator Actions
- Go to Command Mapping page
- Select a TCP command from the dropdown
- Search and select the Automator action to trigger
- Click "Add Mapping"
- Test using the "Test TCP Command" button
Step 5: Send Commands
Send TCP commands from your control system:
# Example using netcat (Windows)
echo "CAMERA_ON" | ncat localhost 9001
# Example using netcat (Linux/Mac)
echo "CAMERA_ON" | nc localhost 9001
Or use the included TCP Test Client (TCPTestClient-1.0.0.exe) to send test commands with a GUI.
Web Interface Pages
| Page | URL | Description |
|---|---|---|
| Home | http://localhost:3114/ |
Status dashboard |
| TCP Commands | http://localhost:3114/tcp-commands |
Manage TCP ports and command definitions |
| Automator Macros | http://localhost:3114/automator-macros |
View and test macros, buttons, shortcuts |
| Command Mapping | http://localhost:3114/command-mapping |
Link TCP commands to Automator actions |
| Settings | http://localhost:3114/settings |
Configure Automator connection and port |
Desktop Application
The desktop GUI provides:
- Server Status - Visual indicator shows server running state
- Web GUI Access - Click "Open Web GUI" to launch browser
- Port Configuration - Change server port
- Console View - Toggle server logs for debugging
- System Tray - Minimize to tray with right-click menu
Configuration
Settings are saved to ~/.sony_automator_controls/config.json:
{
"server_port": 3114,
"automator_url": "http://172.26.6.2",
"automator_enabled": true,
"tcp_ports": [9001, 9002, 9003],
"tcp_commands": {...},
"command_mappings": {...}
}
Building from Source
# Install PyInstaller
pip install pyinstaller
# Build main application
python -m PyInstaller SonyAutomatorControls.spec
# Output: dist/SonyAutomatorControls-1.0.2.exe
# Build TCP test client
python -m PyInstaller TCPTestClient.spec
# Output: dist/TCPTestClient-1.0.0.exe
Troubleshooting
Web GUI shows "Connection Refused"?
- Make sure you downloaded the latest v1.0.2 release
- The server should bind to all network interfaces (0.0.0.0)
Port already in use?
- Change the port in Settings or Desktop GUI
- The app will automatically kill processes on the port before starting
Automator connection fails?
- Verify the Automator API URL is correct
- Check network connectivity to the Automator system
- Use "Test Connection" button to diagnose
TCP commands not triggering?
- Verify command mappings are configured correctly
- Check that TCP ports are listening (shown on TCP Commands page)
- Use TCP Test Client to verify commands work
- Check console logs for errors
Shortcuts/Buttons not appearing?
- Make sure you clicked "Fetch Automator Items"
- Check that Automator API is responding
- Look for shortcuts in the "Shortcuts" section (they have keyboard combinations)
Version History
v1.0.2 (Current)
- CRITICAL FIX: Changed server binding from 127.0.0.1 to 0.0.0.0 (resolves web GUI connectivity)
- Added psutil for automatic port cleanup
- Enhanced server initialization matching Elliott's Singular Control
- Automatic process killing on port before starting
v1.0.1
- Fixed shortcut/button triggers via TCP commands
- Added auto-detection of item types for command mappings
- Better display formatting for shortcuts
- Improved error handling
v1.0.0
- Initial release
- TCP to HTTP command bridge
- Desktop GUI with system tray
- Web interface with 4 pages
- Automator API integration
- Command mapping system
- ITV Reem fonts and branding
Architecture
TCP Client → TCP Listener → Command Mapper → HTTP Client → Cuez Automator API
↓
Web Interface (Config & Monitoring)
↓
Desktop GUI (Control)
License
Copyright © Elliott. All rights reserved.
Support
- Issues: GitHub Issues
Made with care by BlueElliott
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sony_automator_controls-1.0.3.tar.gz.
File metadata
- Download URL: sony_automator_controls-1.0.3.tar.gz
- Upload date:
- Size: 33.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6cb5b612f673bbd79e08bc13780258e0108c6c0912a23a3ad9110f2a06181ab5
|
|
| MD5 |
d424f7a1e167698c309019de6d52f2ad
|
|
| BLAKE2b-256 |
f60a76847d05bbca330a7a49eabec6313b3ebb988d66e5f5b7020ac1a708e003
|
File details
Details for the file sony_automator_controls-1.0.3-py3-none-any.whl.
File metadata
- Download URL: sony_automator_controls-1.0.3-py3-none-any.whl
- Upload date:
- Size: 31.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a05839d47fdb21fde390ebcbc144c97d73b069799e4eee0c313714e88cc87f43
|
|
| MD5 |
619b6b3699a282420fc939b3df640d86
|
|
| BLAKE2b-256 |
7f423a7fe7945e2103827576b6b4fc29cdb56c7eeea2a485cd679f92ce3c84e4
|