Jak skonfigurować usługę Pushover, aby informowała mnie, kiedy moje Pi wyłącza się lub uruchamia?


9

Chciałbym skonfigurować mój Raspberry Pi, aby informował mnie, kiedy jest w górę lub w dół za pośrednictwem curl API usługi Pushover . Jakie są kroki, aby to zrobić?

To pojawiło się, kiedy czytałem to pytanie.

Odpowiedzi:


8

Wiele dystrybucji, w tym Arch i Debian / Raspbian, używa skryptów startowych do inicjalizacji systemu i można ich używać do uruchamiania dowolnych poleceń. Musisz zainstalować skrypt podobny do następującego w /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

Należy zarejestrować się w usłudze Pushover i wprowadzić token aplikacji w TOKENzmiennej oraz klucz użytkownika w USERzmiennej.

Przetestuj najpierw w katalogu domowym, a następnie przenieś do /etc/init.d/pushover. Powinieneś upewnić się, że można go uruchomić i jest własnością root.

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

Bibliografia

  1. Jak załadować moduł w czasie uruchamiania?
  2. Jak uzyskać dostęp do nazwy dystrybucji w wierszu polecenia?
  3. Łatwizna
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.