プッシュオーバーサービスを設定して、Piがシャットダウンまたは起動したことを通知するにはどうすればよいですか?


9

プッシュオーバーサービスのcurl APIを介してアップまたはダウンしていることを通知するようにRaspberry Piをセットアップしたいと思います。これを行う手順は何ですか?

これは、私がこの質問を読んでいるときに起こりました。

回答:


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

プッシュオーバーサービスに登録し、TOKEN変数にアプリトークンを、変数にユーザーキーを入力する必要がありUSERます。

まずホームディレクトリでテストしてから、に移動し/etc/init.d/pushoverます。それが実行可能であり、ルートによって所有されていることを確認する必要があります。

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

参考文献

  1. 起動時にモジュールをどのようにロードしますか?
  2. コマンドラインでディストリビューションの名前にアクセスするにはどうすればよいですか?
  3. プッシュオーバー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.