Theater System Operation¶
During performance development students will run performance scripts on their own computers to communicate with the system. These scripts can then be transferred to the server for daily operation.
Running a Show Script¶
Each show is defined as a single Python script. The following transcripts use the show1.py template to demonstrate aspects of running the system. This script is typically run from the command line during development in order to provide flags and parameters. In the autonomous system, it is run by the director.py script.
The following command will print the currently available arguments:
python3 show1.py --help
You should see something like the following:
usage: show1.py [-h] [--ip IP] [--console] [--debug] [--verbose]
Simple scripted show.
options:
-h, --help show this help message and exit
--ip IP IP address of the OSC receiver (default: 172.24.26.199).
--console Enable echoing log output to console.
--debug Enable debug messages in logs.
--verbose Enable even more detailed logging output.
Please note that the script is configured to communicate with the actual system
by default; if you are testing offline, you’ll need to use the --ip
option
to set a different destination address. The script is also normally quiet
with no visible output, only logging to a file. Typically you will also turn on
console log output in order to see debugging messages.
To run a typical offline test:
python3 show1.py --ip 127.0.0.1 --console --debug
You will typically see logging output much like this:
INFO:network: Opened motion client socket to send to 127.0.0.1:21000
INFO:network: Opened motion client socket to send to 127.0.0.1:21001
INFO:network: Opened motion client socket to send to 127.0.0.1:21002
INFO:network: Opened motion client socket to send to 127.0.0.1:21003
INFO:network: Opened lighting client socket to send to 127.0.0.1:20000
INFO:network: Opened director client socket to send to 127.0.0.1:22000
DEBUG:show1: Lighting fixture lamp1
DEBUG:show1: Lighting fixture fan1
DEBUG:show1: Lighting fixture rgba1
This will continue as long as the script is running. If you check the logs/ folder, you will also find the log file which includes timestamps.
A typical interactive test with the actual hardware will still include the console flags in order to monitor progress:
python3 show1.py --console --debug
The output will be similar but the IP addresses will indicate that it is connecting to the actual system:
INFO:network: Opened motion client socket to send to 172.24.26.199:21000
INFO:network: Opened motion client socket to send to 172.24.26.199:21001
INFO:network: Opened motion client socket to send to 172.24.26.199:21002
INFO:network: Opened motion client socket to send to 172.24.26.199:21003
INFO:network: Opened lighting client socket to send to 172.24.26.199:20000
INFO:network: Opened director client socket to send to 172.24.26.199:22000
DEBUG:show1: Lighting fixture lamp1
DEBUG:show1: Lighting fixture fan1
DEBUG:show1: Lighting fixture rgba1
Running A MIDI System¶
Details coming soon.