diff --git a/scripts/synth-power.py b/scripts/synth-power.py index 3e0142d..0cb0a6e 100644 --- a/scripts/synth-power.py +++ b/scripts/synth-power.py @@ -2,12 +2,14 @@ #!/usr/bin/env python3 # Program to control synth power state. - +import argparse import configparser from homeassistant import HomeAssistant +import os, sys # Parse settings config -configString = '[Settings]\n' + open('../settings.conf').read() +SCRIPT_DIR = os.path.abspath(os.path.dirname(sys.argv[0])) +configString = '[Settings]\n' + open(SCRIPT_DIR + '/../settings.conf').read() configParser = configparser.RawConfigParser() configParser.read_string(configString) @@ -15,6 +17,29 @@ configParser.read_string(configString) HA_IP = configParser.get('Settings', 'HA_IP') HA_TOKEN = configParser.get('Settings', 'HA_TOKEN') -ha = HomeAssistant(HA_IP, HA_TOKEN) -ha.runScene('scene.synths_on') +# Set power state of the Eurorack. +def setEurorackPower(state): + ha.setOnOff('switch.eurorack_lower', state) + ha.setOnOff('switch.eurorack_top', state) +# Set power state of the Behringer DeepMind 12. +def setDeepMind12Power(state): + ha.setOnOff('switch.deepmind_12', state) + +# Set power state of the ASM Hydrasynth. +def setHydrasynthPower(state): + ha.setOnOff('switch.hydrasynth', state) + +# Set power state of the Arturia MatrixBrute. +def setMatrixBrutePower(state): + ha.setOnOff('switch.matrixbrute', state) + +# Set power state of all synthesizers. +def setSynthsPower(state): + setEurorackPower(state) + setDeepMind12Power(state) + setHydrasynthPower(state) + setMatrixBrutePower(state) + +ha = HomeAssistant(HA_IP, HA_TOKEN) +setSynthsPower(False)