Wie richte ich den Pushover-Dienst ein, um zu erfahren, wann mein Pi heruntergefahren oder gestartet wird?

9

Ich möchte meinen Raspberry Pi so einrichten, dass er mir über die Curl-API des Pushover- Dienstes mitteilt , wann er hoch oder runter ist . Was sind die Schritte, um dies zu tun?

Dies kam auf, während ich diese Frage las .

Zlatko
quelle

Antworten:

8

Viele Distributionen, einschließlich Arch und Debian / Raspbian, verwenden Initscripts, um das System zu initialisieren, und Sie können sie verwenden, um beliebige Befehle auszuführen. Sie müssen ein Skript installieren, das dem folgenden in ähnlich ist /etc/init.d.

#! /bin/sh
# /etc/init.d/pushover
#

# Some things that run always
touch /var/lock/pushover

TOKEN=
USER=

DIST=`cat /etc/os-release | perl -n -e '/^NAME=\"([a-zA-Z ]*)\"$/ && print "$1\n"'`

echo $TOKEN
echo $USER
echo $DIST

# Carry out specific functions when asked to by the system
case "$1" in
  start)
echo "Starting script pushover "
curl -s \
  --data-urlencode "token=$TOKEN" \
  --data-urlencode "user=$USER" \
  --data-urlencode "message=Raspberry Pi ($DIST) is starting." \
  https://api.pushover.net/1/messages
;;
  stop)
echo "Stopping script pushover"
curl -s \
  --data-urlencode "token=$TOKEN" \
  --data-urlencode "user=$USER" \
  --data-urlencode "message=Raspberry Pi ($DIST) is stopping." \
  https://api.pushover.net/1/messages
;;
  *)
echo "Usage: /etc/init.d/pushover {start|stop}"
exit 1
;;
esac

exit 0

Sie sollten sich beim Pushover- Dienst registrieren und Ihr App-Token in die TOKENVariable und Ihren Benutzerschlüssel in die USERVariable eingeben .

Testen Sie es zuerst in Ihrem Home-Verzeichnis und verschieben Sie es dann in /etc/init.d/pushover. Sie sollten sicherstellen, dass es ausführbar ist und Root gehört.

sudo chmod 755 /etc/init.d/pushover
sudo chown root:root /etc/init.d/pushover

Verweise

  1. Wie lade ich ein Modul beim Booten?
  2. Wie greife ich in der Befehlszeile auf den Namen der Distribution zu?
  3. Pushover
Alex Chamberlain
quelle