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
--silent \
--data "<?xml version='1.0' encoding='UTF-8'?><request><PageIndex>1</PageIndex><ReadCount>20</ReadCount><BoxType>1</BoxType><SortType>0</SortType><Ascending>0</Ascending><UnreadPreferred>1</UnreadPreferred></request>" \
http://$MODEM_IP/api/sms/sms-list \
- | grep -i '<Content>Stop</Content>' \
+ > /tmp/received_smses.txt
+ grep -i '<Content>Stop</Content>' /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
}
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 '<Count>' /tmp/received_smses.txt \
+ | sed 's|^ *<Count>\([0-9]*\)</Count> *$|\1|')
+ if [ $RECEIVED_SMS_COUNT -lt 1 ]
+ then
+ rm -f /tmp/received_smses.txt
+ return
+ fi
+ STOP_NUMBER=$(grep '<Phone>' /tmp/received_smses.txt \
+ | sed 's/.*<Phone>\(.*\)<\/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}<Phone>${PHONES[$i]}</Phone>"
+ i=$(( $i + 1 ))
+ done
+
+ curl --output /tmp/ses_tok.xml \
+ --request GET \
+ --silent \
+ "http://$MODEM_IP/api/webserver/SesTokInfo"
+
+ SESSION_ID=$(sed 's|^.*<SesInfo>\(.*\)</SesInfo>.*$|\1|' </tmp/ses_tok.xml)
+ TOKEN=$(sed 's|^.*<TokInfo>\(.*\)</TokInfo>.*$|\1|' </tmp/ses_tok.xml)
+
+ echo "----------------" >>/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 "<?xml version='1.0' encoding='UTF-8'?><request><Index>-1</Index><Phones>${SMS_TARGETS}</Phones><Sca></Sca><Content>${MESSAGE}</Content><Length>-1</Length><Reserved>1</Reserved><Date>-1</Date></request>" \
+ 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}<Phone>${TEST_PHONES[$i]}</Phone>"
+ i=$(( $i + 1 ))
+ done
+
+ curl --output /tmp/ses_tok.xml \
+ --request GET \
+ --silent \
+ "http://$MODEM_IP/api/webserver/SesTokInfo"
+
+ SESSION_ID=$(sed 's|^.*<SesInfo>\(.*\)</SesInfo>.*$|\1|' </tmp/ses_tok.xml)
+ TOKEN=$(sed 's|^.*<TokInfo>\(.*\)</TokInfo>.*$|\1|' </tmp/ses_tok.xml)
+
+ echo "----------------" >>/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 "<?xml version='1.0' encoding='UTF-8'?><request><Index>-1</Index><Phones>${SMS_TARGETS}</Phones><Sca></Sca><Content>${MESSAGE}</Content><Length>-1</Length><Reserved>1</Reserved><Date>-1</Date></request>" \
+ 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
}
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
delete_logs
delete_mail
process_received_smses
+send_stop_sms $MESSAGE_TYPE $TEMPERATURE
delete_received_smses
delete_sent_smses
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
--silent \
--data "<?xml version='1.0' encoding='UTF-8'?><request><PageIndex>1</PageIndex><ReadCount>20</ReadCount><BoxType>1</BoxType><SortType>0</SortType><Ascending>0</Ascending><UnreadPreferred>1</UnreadPreferred></request>" \
http://$MODEM_IP/api/sms/sms-list \
- | grep -i '<Content>Stop</Content>' \
+ > /tmp/received_smses.txt
+ grep -i '<Content>Stop</Content>' /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
}
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 '<Count>' /tmp/received_smses.txt \
+ | sed 's|^ *<Count>\([0-9]*\)</Count> *$|\1|')
+ if [ $RECEIVED_SMS_COUNT -lt 1 ]
+ then
+ rm -f /tmp/received_smses.txt
+ return
+ fi
+ STOP_NUMBER=$(grep '<Phone>' /tmp/received_smses.txt \
+ | sed 's/.*<Phone>\(.*\)<\/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}<Phone>${PHONES[$i]}</Phone>"
+ i=$(( $i + 1 ))
+ done
+
+ curl --output /tmp/ses_tok.xml \
+ --request GET \
+ --silent \
+ "http://$MODEM_IP/api/webserver/SesTokInfo"
+
+ SESSION_ID=$(sed 's|^.*<SesInfo>\(.*\)</SesInfo>.*$|\1|' </tmp/ses_tok.xml)
+ TOKEN=$(sed 's|^.*<TokInfo>\(.*\)</TokInfo>.*$|\1|' </tmp/ses_tok.xml)
+
+ echo "----------------" >>/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 "<?xml version='1.0' encoding='UTF-8'?><request><Index>-1</Index><Phones>${SMS_TARGETS}</Phones><Sca></Sca><Content>${MESSAGE}</Content><Length>-1</Length><Reserved>1</Reserved><Date>-1</Date></request>" \
+ 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}<Phone>${TEST_PHONES[$i]}</Phone>"
+ i=$(( $i + 1 ))
+ done
+
+ curl --output /tmp/ses_tok.xml \
+ --request GET \
+ --silent \
+ "http://$MODEM_IP/api/webserver/SesTokInfo"
+
+ SESSION_ID=$(sed 's|^.*<SesInfo>\(.*\)</SesInfo>.*$|\1|' </tmp/ses_tok.xml)
+ TOKEN=$(sed 's|^.*<TokInfo>\(.*\)</TokInfo>.*$|\1|' </tmp/ses_tok.xml)
+
+ echo "----------------" >>/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 "<?xml version='1.0' encoding='UTF-8'?><request><Index>-1</Index><Phones>${SMS_TARGETS}</Phones><Sca></Sca><Content>${MESSAGE}</Content><Length>-1</Length><Reserved>1</Reserved><Date>-1</Date></request>" \
+ 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
}
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
delete_logs
delete_mail
process_received_smses
+send_stop_sms $MESSAGE_TYPE $TEMPERATURE
delete_received_smses
delete_sent_smses