No description
hugvey | ||
local@16738c586f | ||
www | ||
.gitignore | ||
.gitmodules | ||
client_config.yml | ||
hugvey_client.py | ||
hugvey_server.py | ||
README.md | ||
requirements.server.txt | ||
requirements.txt | ||
server_config.yml | ||
supervisor.conf | ||
test_pub.py | ||
test_sub.py |
Hugvey / Pillow Talk
- Panpoticon
- Fancy nickname for the web interface that allows altering the story and running the individual Hugveys
- Voice
- Lyrebird voice syntehsis API wrapper. Set the oAuth token using a token generated here
- Client
- Individual Hugveys that stream their mic output and play audiofiles trough the Panopticon. Communication with the server is done through zmq
- Connect with them trough hugvey1.local etc (1-25).
- Central Command/server
- One server to rule them all. Start individual threads/subprocesses for the individual Hugveys. The Panopticon is started when starting the server.
Server
Run the server: python hugvey_server.py --config server_config.yml
Panopticon
The server also integrates the panopticon, the monitoring & administration interface to Hugvey.
Client
To run it: python hugvey_client.py -c client_config.yml
Development
The Panopticon uses gulp to compile SASS into CSS, and to set up browser-sync for css & js. For now, no js user facing dependencies are managed trough node/npm.
After starting the server:
cd www
gulp
To run a command on all hugveys:
fab -H rubenvandeven.com,saclab@projects.rubenvandeven.com -- uname
Installation
create and load Python virtualenv
virtualenv -p python3 --system-site-packages venv
source venv/bin/activate
Install requirements
apt install libasound-dev python3-pyaudio git-lfs
pip install -r requirements.server.txt
pip install -r requirements.txt
Install soft requirements (These are hard requirements for the clients!)
apt install sox rsync
Don't forget to init git submodules
git submodule init
git sumodule update