2017-02-19 21:06:03 +01:00
|
|
|
#!/bin/bash --
|
|
|
|
|
|
|
|
# shold be started from a separate account
|
|
|
|
# access via ssh:
|
|
|
|
# cat .ssh/authorized_keys
|
|
|
|
# command="/home/automation/chch-power/shell.sh",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-rsa AAAA...
|
|
|
|
|
2017-02-22 23:33:58 +01:00
|
|
|
COMMAND_FILE=/tmp/command
|
2017-02-24 20:49:14 +01:00
|
|
|
if [ ! -p "$COMMAND_FILE" ]; then
|
2017-02-23 12:49:57 +01:00
|
|
|
echo "ERROR; command watcher not listening:" >&2
|
|
|
|
exit 1
|
|
|
|
fi
|
2017-02-22 23:33:58 +01:00
|
|
|
|
2017-02-19 21:06:03 +01:00
|
|
|
status() {
|
|
|
|
STATUS="$(cat /tmp/status)"
|
|
|
|
if [ -z "$STATUS" ]; then
|
|
|
|
STATUS="geschlossen"
|
|
|
|
fi
|
|
|
|
echo "$STATUS"
|
|
|
|
}
|
|
|
|
|
2017-02-22 23:33:58 +01:00
|
|
|
lounge_light() {
|
|
|
|
COMMAND="lounge_light $1"
|
|
|
|
echo "$COMMAND" >> $COMMAND_FILE
|
|
|
|
echo "OK $COMMAND"
|
|
|
|
}
|
|
|
|
|
|
|
|
lounge_light_toggle() {
|
|
|
|
COMMAND="lounge_light_toggle"
|
|
|
|
echo "$COMMAND" >> $COMMAND_FILE
|
|
|
|
echo "OK $COMMAND"
|
|
|
|
}
|
|
|
|
|
2017-02-19 21:06:03 +01:00
|
|
|
read COMMAND
|
|
|
|
case "$COMMAND" in
|
|
|
|
status)
|
|
|
|
status
|
|
|
|
;;
|
2017-02-22 23:33:58 +01:00
|
|
|
lounge_light_toggle)
|
|
|
|
lounge_light_toggle
|
|
|
|
;;
|
2017-02-23 13:09:59 +01:00
|
|
|
lounge_light\ *)
|
|
|
|
lounge_light "$(echo "$COMMAND " | cut -d" " -f2 | grep -oe "[a-z]\?[0-9a-fA-F]*" | head -n1)"
|
2017-02-22 23:33:58 +01:00
|
|
|
;;
|
2017-02-19 21:06:03 +01:00
|
|
|
*)
|
|
|
|
echo "ERROR; available commands:" >&2
|
2017-02-23 13:09:59 +01:00
|
|
|
echo "status, lounge_light [string], lounge_light_toggle" >&2
|
2017-02-19 21:06:03 +01:00
|
|
|
exit 1
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
exit 0
|