From 0a36fb9729e406df25b9bb030c2b195fbc8a4e30 Mon Sep 17 00:00:00 2001 From: polyfloyd Date: Sun, 6 Apr 2025 12:47:07 +0200 Subject: [PATCH] Initial commit --- armed.d/10_log | 10 ++++++++++ armed.d/10_mqtt | 3 +++ armed.d/20_entrance_logos_off | 4 ++++ armed.d/20_statefile | 3 +++ armed.d/20_trapleds_poweroff | 3 +++ armed.d/24_bar_off | 6 ++++++ armed.d/25_switch_off | 3 +++ disarmed.d/10_log | 10 ++++++++++ disarmed.d/20_entrance_logos_on | 4 ++++ disarmed.d/20_statefile | 3 +++ disarmed.d/20_switch_on | 3 +++ disarmed.d/20_trap_leds_poweron | 3 +++ disarmed.d/24_bar_on | 3 +++ disarmed.d/50_mqtt | 3 +++ siahsd_handler.sh | 27 +++++++++++++++++++++++++++ 15 files changed, 88 insertions(+) create mode 100755 armed.d/10_log create mode 100755 armed.d/10_mqtt create mode 100755 armed.d/20_entrance_logos_off create mode 100755 armed.d/20_statefile create mode 100644 armed.d/20_trapleds_poweroff create mode 100755 armed.d/24_bar_off create mode 100755 armed.d/25_switch_off create mode 100755 disarmed.d/10_log create mode 100755 disarmed.d/20_entrance_logos_on create mode 100755 disarmed.d/20_statefile create mode 100755 disarmed.d/20_switch_on create mode 100644 disarmed.d/20_trap_leds_poweron create mode 100755 disarmed.d/24_bar_on create mode 100755 disarmed.d/50_mqtt create mode 100755 siahsd_handler.sh diff --git a/armed.d/10_log b/armed.d/10_log new file mode 100755 index 0000000..d614860 --- /dev/null +++ b/armed.d/10_log @@ -0,0 +1,10 @@ +#!/bin/bash + +PROM="$1" +CODE="$2" +DESCR="$3" +SIA_CODE_STR="$4" +SIA_CODE_DESCR="$5" +DATE=`date` + +echo "$DATE: Alarm event: $PROM $CODE: $DESCR -- $SIA_CODE_STR: $SIA_CODE_DESCR" >> "/var/log/alarm.log" diff --git a/armed.d/10_mqtt b/armed.d/10_mqtt new file mode 100755 index 0000000..66c335e --- /dev/null +++ b/armed.d/10_mqtt @@ -0,0 +1,3 @@ +#!/bin/bash + +/usr/local/bin/mqtt-simple -r -h mqtt.bitlair.nl -p 'bitlair/alarm' -m "armed $2" diff --git a/armed.d/20_entrance_logos_off b/armed.d/20_entrance_logos_off new file mode 100755 index 0000000..7ad896a --- /dev/null +++ b/armed.d/20_entrance_logos_off @@ -0,0 +1,4 @@ +#!/bin/bash + +mqtt-simple -h mqtt.bitlair.nl -p bitlair/power/shelly/02/command/switch:0 -m off +mqtt-simple -h mqtt.bitlair.nl -p bitlair/power/shelly/04/command/switch:0 -m off diff --git a/armed.d/20_statefile b/armed.d/20_statefile new file mode 100755 index 0000000..c991eb8 --- /dev/null +++ b/armed.d/20_statefile @@ -0,0 +1,3 @@ +#!/bin/bash + +echo -n 0 > /tmp/alarmdisarmed diff --git a/armed.d/20_trapleds_poweroff b/armed.d/20_trapleds_poweroff new file mode 100644 index 0000000..a6a4ceb --- /dev/null +++ b/armed.d/20_trapleds_poweroff @@ -0,0 +1,3 @@ +#!/bin/bash + +mqtt-simple -h mqtt.bitlair.nl -p "bitlair/power/trapleds/cmnd/Power1" -m "OFF" diff --git a/armed.d/24_bar_off b/armed.d/24_bar_off new file mode 100755 index 0000000..9406e34 --- /dev/null +++ b/armed.d/24_bar_off @@ -0,0 +1,6 @@ +#!/bin/bash + +# will not work yet due to SSH key not being on there +#ssh -o ConnectTimeout=1 root@bank-pi.bitlair.nl shutdown -h now +#sleep 10 +mqtt-simple -h mqtt.bitlair.nl -p bitlair/power/shelly/01/command/switch:0 -m off diff --git a/armed.d/25_switch_off b/armed.d/25_switch_off new file mode 100755 index 0000000..6cb8744 --- /dev/null +++ b/armed.d/25_switch_off @@ -0,0 +1,3 @@ +#!/bin/bash +# 48p switch with all outlets on it +apc-switch 24 off diff --git a/disarmed.d/10_log b/disarmed.d/10_log new file mode 100755 index 0000000..d614860 --- /dev/null +++ b/disarmed.d/10_log @@ -0,0 +1,10 @@ +#!/bin/bash + +PROM="$1" +CODE="$2" +DESCR="$3" +SIA_CODE_STR="$4" +SIA_CODE_DESCR="$5" +DATE=`date` + +echo "$DATE: Alarm event: $PROM $CODE: $DESCR -- $SIA_CODE_STR: $SIA_CODE_DESCR" >> "/var/log/alarm.log" diff --git a/disarmed.d/20_entrance_logos_on b/disarmed.d/20_entrance_logos_on new file mode 100755 index 0000000..0cc47de --- /dev/null +++ b/disarmed.d/20_entrance_logos_on @@ -0,0 +1,4 @@ +#!/bin/bash + +mqtt-simple -h mqtt.bitlair.nl -p bitlair/power/shelly/02/command/switch:0 -m on +mqtt-simple -h mqtt.bitlair.nl -p bitlair/power/shelly/04/command/switch:0 -m on diff --git a/disarmed.d/20_statefile b/disarmed.d/20_statefile new file mode 100755 index 0000000..2d5c3e0 --- /dev/null +++ b/disarmed.d/20_statefile @@ -0,0 +1,3 @@ +#!/bin/bash + +echo -n 1 > /tmp/alarmdisarmed diff --git a/disarmed.d/20_switch_on b/disarmed.d/20_switch_on new file mode 100755 index 0000000..6afb24a --- /dev/null +++ b/disarmed.d/20_switch_on @@ -0,0 +1,3 @@ +#!/bin/bash +# 48p switch with all outlets on it +apc-switch 24 on diff --git a/disarmed.d/20_trap_leds_poweron b/disarmed.d/20_trap_leds_poweron new file mode 100644 index 0000000..8986c68 --- /dev/null +++ b/disarmed.d/20_trap_leds_poweron @@ -0,0 +1,3 @@ +#!/bin/bash + +mqtt-simple -h mqtt.bitlair.nl -p "bitlair/power/trapleds/cmnd/Power1" -m "ON" diff --git a/disarmed.d/24_bar_on b/disarmed.d/24_bar_on new file mode 100755 index 0000000..26d9f4f --- /dev/null +++ b/disarmed.d/24_bar_on @@ -0,0 +1,3 @@ +#!/bin/bash + +mqtt-simple -h mqtt.bitlair.nl -p bitlair/power/shelly/01/command/switch:0 -m on diff --git a/disarmed.d/50_mqtt b/disarmed.d/50_mqtt new file mode 100755 index 0000000..dfcc18f --- /dev/null +++ b/disarmed.d/50_mqtt @@ -0,0 +1,3 @@ +#!/bin/bash + +/usr/local/bin/mqtt-simple -r -h mqtt.bitlair.nl -p 'bitlair/alarm' -m "disarmed $2" diff --git a/siahsd_handler.sh b/siahsd_handler.sh new file mode 100755 index 0000000..00a107f --- /dev/null +++ b/siahsd_handler.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +set -eu + + +HOOKS_DIR=`dirname "$0"` + +PROM="$1" +CODE="$2" +DESCR="$3" +SIA_CODE_STR="$4" +SIA_CODE_DESCR="$5" + +# Ignore communication tests. +if [[ ! "$CODE" =~ "RP" ]]; then + irc-say "Alarm event: $CODE -- $SIA_CODE_STR: $SIA_CODE_DESCR" +fi + +case "$CODE" in + C[LAFJKQS]*): + run-parts "$HOOKS_DIR/armed.d" --verbose "--arg=$1" "--arg=$2" "--arg=$3" "--arg=$4" "--arg=$5" + ;; + + O[AJKPQS]*): + run-parts "$HOOKS_DIR/disarmed.d" --verbose "--arg=$1" "--arg=$2" "--arg=$3" "--arg=$4" "--arg=$5" + ;; +esac