You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
1.7 KiB
51 lines
1.7 KiB
4 years ago
|
#!/bin/bash
|
||
|
|
||
|
# Startup Script
|
||
|
# ====================================================================
|
||
|
# I wrote this script with the intention of using it to start a
|
||
|
# cron-job -- when the Raspberry Pi is turned on. Before you set the
|
||
|
# cron-job up, you must make sure you have either ran the
|
||
|
# "make-log-files.sh" script or created the appropriate log file and
|
||
|
# folder at the location specified at "logFile" below.
|
||
|
# ====
|
||
|
# Please note: This script calls another (Python) script at the end of
|
||
|
# it. The code in the Python script (relay.py) is an infinite-loop
|
||
|
# so you will need to kill it manually or turn-off the Raspberry Pi.
|
||
|
# ====
|
||
|
# I put the "sleep 60" call at the start to reduce any errors
|
||
|
# occurring because a part of the system (I.E. curl) has not finished
|
||
|
# loading. 60 seconds is a little excessive but I wrote this script
|
||
|
# with the expectation of it running on an unmanned Raspberry Pi. So,
|
||
|
# reliable/consistent behaviour is my preference over "fast start-up
|
||
|
# times".
|
||
|
|
||
|
sleep 60
|
||
|
|
||
|
logDate=$(date '+%Y-%m-%dT%TZ')
|
||
|
logFile="/home/rtrp/logs/startup-logs.txt"
|
||
|
mainURL="http://3.9.19.84/api/status/update" # Make sure this is valid.
|
||
|
|
||
|
getApiUrl () {
|
||
|
case $HOSTNAME in
|
||
|
(factory1) apiURL="${mainURL}/1";;
|
||
|
(factory2) apiURL="${mainURL}/2";;
|
||
|
(factory3) apiURL="${mainURL}/3";;
|
||
|
(gallery1) apiURL="${mainURL}/4";;
|
||
|
(gallery2) apiURL="${mainURL}/5";;
|
||
|
(gallery3) apiURL="${mainURL}/6";;
|
||
|
esac
|
||
|
}
|
||
|
|
||
|
logStatusChange () {
|
||
|
cat << EOF >> $logFile
|
||
|
$logDate
|
||
|
EOF
|
||
|
}
|
||
|
|
||
|
logStatusChange
|
||
|
getApiUrl
|
||
|
|
||
|
curl -S -X POST --header 'Content-Type: application/json' --header 'Accept: text/html' -d '{"status": "on", "time": "'${logDate}'", "token": "QWERTYuiopasdfghjklzxcvbnm_1234567890"}' "${apiURL}"
|
||
|
|
||
|
python3 /home/rtrp/repos/relay/relay.py
|