仕事用に作成されているシェルスクリプトにはいくつかの問題があります。ディレクトリを表示するChromeインスタンスを終了してから、スライドショーを表示するChromeインスタンスを開くまで(Raspberry Piが十分に長い間アイドル状態の場合)、すべてが正常に動作しているようです。
私が見るものは何も触れていませんが、スライドクロムが死ぬことです。 xprintidleかどうかはわかりません。アイドルタイマーが表示される内容を確認するためにエコスクリプトを実行しても、Chromeが終了したときにアイドルタイマーがリセットされ、アクティビティが表示され、時々リセットされずに残ります。 on スライドは、対応する時間範囲で表示する必要があります。
これは最初の部分を実行するコードです。ループで実行され、Chrome でディレクトリページが開いていることを確認します。 screenaver.statusファイルが存在しない場合、ユーザーがディレクトリを閉じるとそのページが閉じられます。もう一度開きます(このスクリプトは自動実行で起動します)。
#!/bin/bash
while :
do
RUNNING=$(pidof chromium-browse)
if [ -n "$RUNNING" ] && [ ! -f /home/pi/statusfiles/screensaver.status ]
then
sleep 1
else
touch /home/pi/statusfiles/catalog.status
chromium-browser --start-maximized --user-data-dir=/home/pi/chromiumsessions/chromiumlive --incognito http://www.google.com
sleep 10
fi
sleep 1
done
これはマウスの動きでスクリーンセーバープロセスを終了するコードです(xprintidleがリセットされます)。また、2分ごとにchromeインスタンスのユーザーデータを消去し、xprintidleが特定の時間に達するとディレクトリchromeセッションを終了し、スクリーンセーバーセッションを開きます(このスクリプトはcronjobとして実行されます)。
#!/bin/bash
while true
do
RUNNING=$(pidof chromium-browse)
IDLETIME=$(export DISPLAY=:0 && sudo -u pi xprintidle)
if [ "$IDLETIME" -lt "120000" ] && [ ! -f /home/pi/statusfiles/catalog.status ]
then
killall chromium-browser
rm -rf /home/pi/statusfiles/screensaver.status
else
sleep 1
fi
if [ "$IDLETIME" -gt "120000" ] && [ "$IDLETIME" -lt "300000" ] && [ -f /home/pi/statusfiles/catalog.status ]
then
killall chromium-browser
sleep 1
rm -rf /home/pi/chromiumsessions/chromiumlive
rm -rf /home/pi/Downloads/*
mkdir /home/pi/chromiumsessions/chromiumlive
chown -R pi:pi /home/pi/chromiumsessions/chromiumlive
cp -R /home/pi/chromiumsessions/chromiumgood/* /home/pi/chromiumsessions/chromiumlive/
chown -R pi:pi /home/pi/chromiumsessions/chromiumlive
rm -rf /home/pi/statusfiles/catalog.status
sleep 120
else
sleep 1
fi
if [ "$IDLETIME" -gt "300000" ] && [ ! -f /home/pi/statusfiles/screensaver.status ]
then
touch /home/pi/statusfiles/screensaver.status
killall chromium-browser
rm -rf /home/pi/statusfiles/catalog.status
chromium-browser --temp-profile --kiosk --start-fullscreen http://www.google.com/
else
sleep 1
fi
done
すべての助けに感謝します。