- WebIOPi を用いてラズパイを Web サーバ化し、同じネットワーク上にある他の機器から布団自動引き剥がし時刻を設定できるようにするためのスクリプト
- 設定ページにアクセスすると、現在の引き剥がし設定時刻が表示される
Time configuration欄に時刻を入力して submit すると、ラズパイの crontab に引き剥がしのタスク (#lock) が設定される。さらに、その3時間後にあたる時刻に逆回転を行うタスク (#unlock) が設定される。Time configuration欄を空白にして submit すると、crontab 上の#lockおよび#unlockのコメントがついたタスクが取り消される
以下の記述は こちら を参考にしている。
- こちら から、Cayenne ではなく WebIOPi-0.7.1.tar.gz をダウンロードし、
/home/piに展開する - WebIOPi のインストール
cd WebIOPi-0.7.1/
wget https://raw.githubusercontent.com/neuralassembly/raspi2/master/webiopi-pi2bplus.patch
patch -p1 -i webiopi-pi2bplus.patch
sudo ./setup.sh- 本レポジトリをクローンし、WebIOPi のコンテンツ用ディレクトリ
/usr/share/webiopi/htdocsにコピーする
git clone https://github.com/iwasaki501/wakeup.git
sudo chown -R pi /usr/share/webiopi/htdocs
cp -r wakeup /usr/share/webiopi/htdocs- WebIOPi 設定ファイルの編集
sudo leafpad /etc/webiopi/configとし、[SCRIPTS] セクションに次のように一行追記して保存
#myscript = /home/pi/webiopi/examples/scripts/macros/script.py
myscript = /usr/share/webiopi/htdocs/wakeup/script.py
- python_crontab モジュールのインストール
sudo pip3 install python-crontab- debug モードで実行
sudo webiopi -d -c /etc/webiopi/config- 同じネットワーク上の他の機器からは
http://raspberrypi.local:8000/wakeup/でアクセスできる
- debug モードで実行しようとすると
address already in useエラーが出るときは、
sudo netstat -antpで状態が LISTEN、PID/Program name が xxxx/python3 となっているプロセスを発見し、
sudo kill -9 xxxxとする
styles.css については こちら を改変したものを使用している