From c2c5b4c5940418ba2870983abb25b341ddad00e0 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Zolt=C3=A1n=20Felleg?= Date: Mon, 12 Apr 2021 12:46:38 +0200 Subject: [PATCH] Updated vhost{1, 2}.in (temperature script modifications). --- sources/vhost1.in/root/temperature.cfg | 10 ++- sources/vhost1.in/root/temperature.sh | 112 +++++++++++++++++++++++-- sources/vhost2.in/root/temperature.cfg | 10 ++- sources/vhost2.in/root/temperature.sh | 112 +++++++++++++++++++++++-- 4 files changed, 220 insertions(+), 24 deletions(-) diff --git a/sources/vhost1.in/root/temperature.cfg b/sources/vhost1.in/root/temperature.cfg index 3742506..ffbc8b0 100644 --- a/sources/vhost1.in/root/temperature.cfg +++ b/sources/vhost1.in/root/temperature.cfg @@ -1,12 +1,16 @@ MODEM_IP="192.168.8.1" +# zfelleg csgulyas fschnell rrendek mszabo +HEARTBEAT_PHONES=("+36209541513" "+36303744065" "+36309502529" "+36309775888" "+36704581234") +NUMBER_OF_HEARTBEAT_PHONES=5 + # zfelleg fschnell rrendek mszabo PHONES=("+36209541513" "+36309502529" "+36309775888" "+36704581234") NUMBER_OF_PHONES=4 -# zfelleg csgulyas fschnell rrendek mszabo -HEARTBEAT_PHONES=("+36209541513" "+36303744065" "+36309502529" "+36309775888" "+36704581234") -NUMBER_OF_HEARTBEAT_PHONES=5 +# zfelleg +TEST_PHONES=("+36209541513") +NUMBER_OF_TEST_PHONES=1 WARNING_THRESHOLD=25 ERROR_THRESHOLD=30 diff --git a/sources/vhost1.in/root/temperature.sh b/sources/vhost1.in/root/temperature.sh index b4e99d9..2759e1b 100755 --- a/sources/vhost1.in/root/temperature.sh +++ b/sources/vhost1.in/root/temperature.sh @@ -162,9 +162,12 @@ process_received_smses() { --silent \ --data "1201001" \ http://$MODEM_IP/api/sms/sms-list \ - | grep -i 'Stop' \ + > /tmp/received_smses.txt + grep -i 'Stop' /tmp/received_smses.txt \ | while read LINE do + echo "----------------" >>/var/log/temperature-script-${PRG_DATE}.log + echo "${STR_DATE}: process_received_smses" >>/var/log/temperature-script-${PRG_DATE}.log touch $SCRIPT_STOP done } @@ -243,24 +246,114 @@ send_sms() { http://$MODEM_IP/api/sms/send-sms >>/var/log/temperature-script-${PRG_DATE}.log } +send_stop_sms() { + MESSAGE_TYPE=$1 + TEMPERATURE=$2 + PRG_DATE=$(date +%Y%m%d) + STR_DATE=$(date) + + + RECEIVED_SMS_COUNT=$(grep '' /tmp/received_smses.txt \ + | sed 's|^ *\([0-9]*\) *$|\1|') + if [ $RECEIVED_SMS_COUNT -lt 1 ] + then + rm -f /tmp/received_smses.txt + return + fi + STOP_NUMBER=$(grep '' /tmp/received_smses.txt \ + | sed 's/.*\(.*\)<\/Phone>.*$/\1/') + if [ -f $SCRIPT_STOP ] + then + SEND_STATUS="does NOT" + else + SEND_STATUS="DOES" + fi + MESSAGE="Stopped by ${STOP_NUMBER}, ${MESSAGE_TYPE}: temperature is ${TEMPERATURE}, the system $SEND_STATUS send SMSs." + SMS_TARGETS="" + i=0 + while [ $i -lt $NUMBER_OF_PHONES ] + do + SMS_TARGETS="${SMS_TARGETS}${PHONES[$i]}" + i=$(( $i + 1 )) + done + + curl --output /tmp/ses_tok.xml \ + --request GET \ + --silent \ + "http://$MODEM_IP/api/webserver/SesTokInfo" + + SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' >/var/log/temperature-script-${PRG_DATE}.log + echo "${STR_DATE}: send_stop_sms" >>/var/log/temperature-script-${PRG_DATE}.log + curl --header "Cookie: $SESSION_ID" \ + --header "__RequestVerificationToken: $TOKEN" \ + --request POST \ + --silent \ + --data "-1${SMS_TARGETS}${MESSAGE}-11-1" \ + http://$MODEM_IP/api/sms/send-sms >>/var/log/temperature-script-${PRG_DATE}.log +} + +send_test_sms() { + MESSAGE_TYPE=$1 + TEMPERATURE=$2 + PRG_DATE=$(date +%Y%m%d) + STR_DATE=$(date) + + + if [ -f $SCRIPT_STOP ] + then + SEND_STATUS="does NOT" + else + SEND_STATUS="DOES" + fi + MESSAGE="Test ${MESSAGE_TYPE}: temperature is ${TEMPERATURE}, the system $SEND_STATUS send SMSs." + SMS_TARGETS="" + i=0 + while [ $i -lt $NUMBER_OF_TEST_PHONES ] + do + SMS_TARGETS="${SMS_TARGETS}${TEST_PHONES[$i]}" + i=$(( $i + 1 )) + done + + curl --output /tmp/ses_tok.xml \ + --request GET \ + --silent \ + "http://$MODEM_IP/api/webserver/SesTokInfo" + + SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' >/var/log/temperature-script-${PRG_DATE}.log + echo "${STR_DATE}: send_test_sms" >>/var/log/temperature-script-${PRG_DATE}.log + curl --header "Cookie: $SESSION_ID" \ + --header "__RequestVerificationToken: $TOKEN" \ + --request POST \ + --silent \ + --data "-1${SMS_TARGETS}${MESSAGE}-11-1" \ + http://$MODEM_IP/api/sms/send-sms >>/var/log/temperature-script-${PRG_DATE}.log +} + shutdown_hosts() { SEVERITY=$1 - echo "shutting down hosts at $SEVERITY" + echo "----------------" >>/var/log/temperature-script-${PRG_DATE}.log + echo "shutting down hosts at $SEVERITY" >>/var/log/temperature-script-${PRG_DATE}.log if [ $SEVERITY -le 1 ] then - echo "shutting down store.in.useribm.hu" + echo "shutting down store.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 store.in.useribm.hu poweroff - echo "shutting down tsm.in.useribm.hu" + echo "shutting down tsm.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 tsm.in.useribm.hu poweroff fi if [ $SEVERITY -gt 1 ] then - echo "shutting down aiac922.in.useribm.hu" + echo "shutting down aiac922.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 aiac922.in.useribm.hu poweroff - echo "shutting down store.in.useribm.hu" + echo "shutting down store.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 store.in.useribm.hu poweroff - echo "shutting down tsm.in.useribm.hu" + echo "shutting down tsm.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 tsm.in.useribm.hu poweroff fi } @@ -291,9 +384,9 @@ then SEVERITY=3 fi -if [ "$1" == "heartbeat" ] +if [ "$1" == "test" ] then - send_heartbeat_sms $MESSAGE_TYPE $TEMPERATURE + send_test_sms $MESSAGE_TYPE $TEMPERATURE exit 0 fi @@ -344,5 +437,6 @@ fi delete_logs delete_mail process_received_smses +send_stop_sms $MESSAGE_TYPE $TEMPERATURE delete_received_smses delete_sent_smses diff --git a/sources/vhost2.in/root/temperature.cfg b/sources/vhost2.in/root/temperature.cfg index 3742506..ffbc8b0 100644 --- a/sources/vhost2.in/root/temperature.cfg +++ b/sources/vhost2.in/root/temperature.cfg @@ -1,12 +1,16 @@ MODEM_IP="192.168.8.1" +# zfelleg csgulyas fschnell rrendek mszabo +HEARTBEAT_PHONES=("+36209541513" "+36303744065" "+36309502529" "+36309775888" "+36704581234") +NUMBER_OF_HEARTBEAT_PHONES=5 + # zfelleg fschnell rrendek mszabo PHONES=("+36209541513" "+36309502529" "+36309775888" "+36704581234") NUMBER_OF_PHONES=4 -# zfelleg csgulyas fschnell rrendek mszabo -HEARTBEAT_PHONES=("+36209541513" "+36303744065" "+36309502529" "+36309775888" "+36704581234") -NUMBER_OF_HEARTBEAT_PHONES=5 +# zfelleg +TEST_PHONES=("+36209541513") +NUMBER_OF_TEST_PHONES=1 WARNING_THRESHOLD=25 ERROR_THRESHOLD=30 diff --git a/sources/vhost2.in/root/temperature.sh b/sources/vhost2.in/root/temperature.sh index b4e99d9..2759e1b 100755 --- a/sources/vhost2.in/root/temperature.sh +++ b/sources/vhost2.in/root/temperature.sh @@ -162,9 +162,12 @@ process_received_smses() { --silent \ --data "1201001" \ http://$MODEM_IP/api/sms/sms-list \ - | grep -i 'Stop' \ + > /tmp/received_smses.txt + grep -i 'Stop' /tmp/received_smses.txt \ | while read LINE do + echo "----------------" >>/var/log/temperature-script-${PRG_DATE}.log + echo "${STR_DATE}: process_received_smses" >>/var/log/temperature-script-${PRG_DATE}.log touch $SCRIPT_STOP done } @@ -243,24 +246,114 @@ send_sms() { http://$MODEM_IP/api/sms/send-sms >>/var/log/temperature-script-${PRG_DATE}.log } +send_stop_sms() { + MESSAGE_TYPE=$1 + TEMPERATURE=$2 + PRG_DATE=$(date +%Y%m%d) + STR_DATE=$(date) + + + RECEIVED_SMS_COUNT=$(grep '' /tmp/received_smses.txt \ + | sed 's|^ *\([0-9]*\) *$|\1|') + if [ $RECEIVED_SMS_COUNT -lt 1 ] + then + rm -f /tmp/received_smses.txt + return + fi + STOP_NUMBER=$(grep '' /tmp/received_smses.txt \ + | sed 's/.*\(.*\)<\/Phone>.*$/\1/') + if [ -f $SCRIPT_STOP ] + then + SEND_STATUS="does NOT" + else + SEND_STATUS="DOES" + fi + MESSAGE="Stopped by ${STOP_NUMBER}, ${MESSAGE_TYPE}: temperature is ${TEMPERATURE}, the system $SEND_STATUS send SMSs." + SMS_TARGETS="" + i=0 + while [ $i -lt $NUMBER_OF_PHONES ] + do + SMS_TARGETS="${SMS_TARGETS}${PHONES[$i]}" + i=$(( $i + 1 )) + done + + curl --output /tmp/ses_tok.xml \ + --request GET \ + --silent \ + "http://$MODEM_IP/api/webserver/SesTokInfo" + + SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' >/var/log/temperature-script-${PRG_DATE}.log + echo "${STR_DATE}: send_stop_sms" >>/var/log/temperature-script-${PRG_DATE}.log + curl --header "Cookie: $SESSION_ID" \ + --header "__RequestVerificationToken: $TOKEN" \ + --request POST \ + --silent \ + --data "-1${SMS_TARGETS}${MESSAGE}-11-1" \ + http://$MODEM_IP/api/sms/send-sms >>/var/log/temperature-script-${PRG_DATE}.log +} + +send_test_sms() { + MESSAGE_TYPE=$1 + TEMPERATURE=$2 + PRG_DATE=$(date +%Y%m%d) + STR_DATE=$(date) + + + if [ -f $SCRIPT_STOP ] + then + SEND_STATUS="does NOT" + else + SEND_STATUS="DOES" + fi + MESSAGE="Test ${MESSAGE_TYPE}: temperature is ${TEMPERATURE}, the system $SEND_STATUS send SMSs." + SMS_TARGETS="" + i=0 + while [ $i -lt $NUMBER_OF_TEST_PHONES ] + do + SMS_TARGETS="${SMS_TARGETS}${TEST_PHONES[$i]}" + i=$(( $i + 1 )) + done + + curl --output /tmp/ses_tok.xml \ + --request GET \ + --silent \ + "http://$MODEM_IP/api/webserver/SesTokInfo" + + SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' >/var/log/temperature-script-${PRG_DATE}.log + echo "${STR_DATE}: send_test_sms" >>/var/log/temperature-script-${PRG_DATE}.log + curl --header "Cookie: $SESSION_ID" \ + --header "__RequestVerificationToken: $TOKEN" \ + --request POST \ + --silent \ + --data "-1${SMS_TARGETS}${MESSAGE}-11-1" \ + http://$MODEM_IP/api/sms/send-sms >>/var/log/temperature-script-${PRG_DATE}.log +} + shutdown_hosts() { SEVERITY=$1 - echo "shutting down hosts at $SEVERITY" + echo "----------------" >>/var/log/temperature-script-${PRG_DATE}.log + echo "shutting down hosts at $SEVERITY" >>/var/log/temperature-script-${PRG_DATE}.log if [ $SEVERITY -le 1 ] then - echo "shutting down store.in.useribm.hu" + echo "shutting down store.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 store.in.useribm.hu poweroff - echo "shutting down tsm.in.useribm.hu" + echo "shutting down tsm.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 tsm.in.useribm.hu poweroff fi if [ $SEVERITY -gt 1 ] then - echo "shutting down aiac922.in.useribm.hu" + echo "shutting down aiac922.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 aiac922.in.useribm.hu poweroff - echo "shutting down store.in.useribm.hu" + echo "shutting down store.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 store.in.useribm.hu poweroff - echo "shutting down tsm.in.useribm.hu" + echo "shutting down tsm.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 tsm.in.useribm.hu poweroff fi } @@ -291,9 +384,9 @@ then SEVERITY=3 fi -if [ "$1" == "heartbeat" ] +if [ "$1" == "test" ] then - send_heartbeat_sms $MESSAGE_TYPE $TEMPERATURE + send_test_sms $MESSAGE_TYPE $TEMPERATURE exit 0 fi @@ -344,5 +437,6 @@ fi delete_logs delete_mail process_received_smses +send_stop_sms $MESSAGE_TYPE $TEMPERATURE delete_received_smses delete_sent_smses -- 2.54.0