From 7c96a6afd1cddb4efebadf3eff86c7f510b3d36a Mon Sep 17 00:00:00 2001 From: lejubila Date: Fri, 4 May 2018 21:17:32 +0200 Subject: [PATCH] Modificato output di notifiche eventi dello script rpinotify.sh, aggiornato CHANGELOG per nuova versione --- CHANGELOG.md | 4 ++ events/scripts/rpinotify.sh | 111 ++++++++++++++++++++++++++++++++++++ piGarden.sh | 2 +- 3 files changed, 116 insertions(+), 1 deletion(-) create mode 100755 events/scripts/rpinotify.sh diff --git a/CHANGELOG.md b/CHANGELOG.md index 659f668..65654be 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +# 0.5.6 - 04/05/2018 +- Added events ev_not_open_for_rain, ev_not_open_for_rain_sensor, ev_not_open_for_rain_online +- Added script rpinotify.sh for notificate events to telegram + # 0.5.5 - 25/03/2018 - Added "remote" driver to control remote pigarden diff --git a/events/scripts/rpinotify.sh b/events/scripts/rpinotify.sh new file mode 100755 index 0000000..44962a4 --- /dev/null +++ b/events/scripts/rpinotify.sh @@ -0,0 +1,111 @@ +#!/bin/bash +# +# Send telegram notificacion on triggered event +# +# $1 = event +# $2 = cause +# $3 = time +# +# To use this script, you must get your hash. Register for the rpinotify service. Get the hash and enter it below +# + +# rpinotify token +TOKEN="" + +EVENT="$1" + +TO="mail@destination.com" +FROM="piGarden@your_domain.com" +SUBJECT="[piGarden notification mail] event $EVENT" +BODY="" + +case "$EVENT" in + "init_before" | "init_after") + TIME=$2 + BODY="PiGarden triggered new event --- EVENT: $EVENT --- TIME: $(/bin/date -d@$TIME)" + ;; + + "ev_open_before" | "ev_open_after") + ALIAS="$2" + FORCE="$3" + TIME=$4 + BODY="PiGarden triggered new event --- EVENT: $EVENT --- ZONE: $ALIAS --- FORCED IRRIGATION: $FORCE --- TIME: $(/bin/date -d@$TIME)" + ;; + + "ev_open_in_before") + ALIAS="$2" + FORCE="$3" + MINUTE_START="$4" + MINUTE_STOP="$5" + TIME=$6 + BODY="PiGarden triggered new event --- EVENT: $EVENT --- ZONE: $ALIAS --- FORCED IRRIGATION: $FORCE --- MINUTE START: $MINUTE_START --- MINUTE STOP: $MINUTE_STOP --- TIME: $(/bin/date -d@$TIME)" + ;; + + "ev_open_in_after") + ALIAS="$2" + FORCE="$3" + CRON_START="$4" + CRON_STOP="$5" + TIME=$6 + BODY="PiGarden triggered new event --- EVENT: $EVENT --- ZONE: $ALIAS --- FORCED IRRIGATION: $FORCE --- CRON START: $CRON_START --- CRON STOP: $CRON_STOP --- TIME: $(/bin/date -d@$TIME)" + ;; + + + "ev_close_before" | "ev_close_after") + ALIAS="$2" + TIME=$3 + BODY="PiGarden triggered new event --- EVENT: $EVENT --- ZONE: $ALIAS --- TIME: $(/bin/date -d@$TIME);" + ;; + + "ev_not_open_for_rain" | "ev_not_open_for_rain_online" | "ev_not_open_for_rain_sensor") + ALIAS="$2" + TIME=$3 + BODY="PiGarden triggered new event --- EVENT: $EVENT --- ZONE: $ALIAS --- TIME: $(/bin/date -d@$TIME)" + ;; + + "check_rain_sensor_before" | "check_rain_sensor_after" | "check_rain_sensor_change") + STATE="$2" + TIME=$3 + BODY="PiGarden triggered new event --- EVENT: $EVENT --- STATE: $STATE --- TIME: $(/bin/date -d@$TIME)" + ;; + + "check_rain_online_before") + STATE="$2" + TIME=$3 + BODY="PiGarden triggered new event --- EVENT: $EVENT --- STATE: $STATE --- TIME: $(/bin/date -d@$TIME)" + ;; + + "check_rain_online_after" | "check_rain_online_change") + STATE="$2" + WEATHER="$3" + TIME=$4 + BODY="PiGarden triggered new event --- EVENT: $EVENT --- STATE: $STATE --- WEATHER: $WEARTHER --- TIME: $(/bin/date -d@$TIME)" + ;; + + "cron_add_before" | "cron_add_after") + CRON_TYPE="$2" + CRON_ARG="$3" + CRON_ELEMENT="$4" + TIME=$5 + BODY="PiGarden triggered new event --- EVENT: $EVENT --- CRON TYPE: $CRON_TYPE --- CRON ARG: $CRON_ARG --- CRON ELEMENT: $CRON_ELEMENT\nTIME: $(/bin/date -d@$TIME)" + ;; + + "cron_del_before" | "cron_del_after") + CRON_TYPE="$2" + CRON_ARG="$3" + TIME=$4 + BODY="PiGarden triggered new event --- EVENT: $EVENT --- CRON TYPE: $CRON_TYPE --- CRON ARG: $CRON_ARG --- TIME: $(/bin/date -d@$TIME)" + ;; + + "exec_poweroff_before" | "exec_poweroff_after" | "exec_reboot_before" | "exec_reboot_after") + TIME=$2 + BODY="PiGarden triggered new event --- EVENT: $EVENT --- TIME: $(/bin/date -d@$TIME)" + ;; + + *) + exit + ;; + +esac + +curl -X POST -F "text=$BODY" https://api.rpinotify.it/message/$TOKEN/ diff --git a/piGarden.sh b/piGarden.sh index d72094c..0429d5d 100755 --- a/piGarden.sh +++ b/piGarden.sh @@ -790,7 +790,7 @@ function debug2 { VERSION=0 SUB_VERSION=5 -RELEASE_VERSION=5 +RELEASE_VERSION=6 DIR_SCRIPT=`dirname $0` NAME_SCRIPT=${0##*/}