Как настроить службу Pushover, чтобы сообщить мне, когда мой Pi выключается или запускается?

9

Я хотел бы настроить мой Raspberry Pi, чтобы он сообщал мне, когда он включен или выключен, с помощью API curl службы Pushover . Какие шаги для этого?

Это возникло, когда я читал этот вопрос.

Златко
источник

Ответы:

8

Многие дистрибутивы, включая Arch и Debian / Raspbian, используют initscripts для инициализации системы, и вы можете использовать их для запуска произвольных команд. Вам необходимо установить скрипт, аналогичный следующему в /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

Вам необходимо зарегистрироваться в сервисе Pushover и ввести токен приложения в TOKENпеременной, а также свой ключ пользователя в USERпеременной.

Сначала проверьте его в своем домашнем каталоге, затем переместите в /etc/init.d/pushover. Вы должны убедиться, что он работает и принадлежит пользователю root.

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

Ссылки

  1. Как загрузить модуль во время загрузки?
  2. Как получить доступ к имени дистрибутива в командной строке?
  3. пустяковое дело
Алекс Чемберлен
источник