mirror of
https://github.com/karl0ss/AnotterKiosk.git
synced 2025-06-06 11:55:07 +01:00
enable being able to refresh screen evey x mins
This commit is contained in:
parent
b838cc1acd
commit
4069c8d625
@ -17,6 +17,8 @@ reboot_time = 04:00
|
||||
; configure screen to power on/off as specific time of day (time format in 24 hours)
|
||||
;screen_off_time=23:00
|
||||
;screen_on_time=07:00
|
||||
; configure chrome to refresh the page every x minutes
|
||||
;refresh_screen_every_x_min=15
|
||||
|
||||
[wifi]
|
||||
; If you need more complex WiFi settings (like WPA2-Enterprise, hidden SSIDs, etc.)
|
||||
|
@ -80,6 +80,7 @@ systemctl enable nginx
|
||||
systemctl enable ssh
|
||||
systemctl enable kiosk-sechedule-screen.service
|
||||
systemctl enable schedule-reboot.service
|
||||
systemctl enable screen-refresh.service
|
||||
|
||||
|
||||
# generate a version info/build info file
|
||||
|
10
kiosk_skeleton/etc/systemd/system/screen-refresh.service
Normal file
10
kiosk_skeleton/etc/systemd/system/screen-refresh.service
Normal file
@ -0,0 +1,10 @@
|
||||
[Unit]
|
||||
Description=Refresh Screen
|
||||
After=graphical.target
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
User=pi
|
||||
Environment=DISPLAY=:0
|
||||
Environment=XAUTHORITY=/home/pi/.Xauthority
|
||||
ExecStart=/usr/bin/refresh-screen
|
4
kiosk_skeleton/usr/bin/refresh-screen
Normal file
4
kiosk_skeleton/usr/bin/refresh-screen
Normal file
@ -0,0 +1,4 @@
|
||||
#!/bin/bash
|
||||
|
||||
export DISPLAY=:0
|
||||
/usr/bin/xdotool key F5
|
41
kiosk_skeleton/usr/bin/setup-refresh-timer
Normal file
41
kiosk_skeleton/usr/bin/setup-refresh-timer
Normal file
@ -0,0 +1,41 @@
|
||||
#!/bin/bash
|
||||
|
||||
INI_FILE="/boot/kioskbrowser.ini"
|
||||
REFRESH_INTERVAL=$(awk -F '=' '/^\[screen\]/ { in_screen=1; next }
|
||||
in_screen && /^\[/ { in_screen=0 }
|
||||
in_screen && $1 ~ /refresh_screen_every_x_min/ { gsub(/ /, "", $2); print $2 }' "$INI_FILE")
|
||||
|
||||
# Safely check if REFRESH_INTERVAL is a positive integer
|
||||
if [[ "$REFRESH_INTERVAL" =~ ^[0-9]+$ ]] && (( REFRESH_INTERVAL > 0 )); then
|
||||
echo "Setting up screen refresh every $REFRESH_INTERVAL minutes..."
|
||||
|
||||
SERVICE_UNIT="/etc/systemd/system/screen-refresh.service"
|
||||
TIMER_UNIT="/etc/systemd/system/screen-refresh.timer"
|
||||
|
||||
cat <<EOF | sudo tee "$SERVICE_UNIT" > /dev/null
|
||||
[Unit]
|
||||
Description=Refresh Screen
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/usr/bin/refresh-screen
|
||||
EOF
|
||||
|
||||
cat <<EOF | sudo tee "$TIMER_UNIT" > /dev/null
|
||||
[Unit]
|
||||
Description=Run screen refresh every $REFRESH_INTERVAL minutes
|
||||
|
||||
[Timer]
|
||||
OnBootSec=1min
|
||||
OnUnitActiveSec=${REFRESH_INTERVAL}min
|
||||
Persistent=false
|
||||
|
||||
[Install]
|
||||
WantedBy=timers.target
|
||||
EOF
|
||||
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl enable --now screen-refresh.timer
|
||||
else
|
||||
echo "Invalid or missing refresh interval"
|
||||
fi
|
Loading…
x
Reference in New Issue
Block a user