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
#!/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 (cli_meter.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/light-meter/cli_meter.py
|
|
|