XTE nach Reboot im Autostart

  • Hallo zusammen, ich betreibe mehrere Rasperrys zur Darstellung von Websiten im Vollbildmodus auf Alarmmonitoren einer Feuerwehr (dargestellt wird Divera 247), die Geräte starten alle 24 Stunden einmal neu, danach wird der Browser Chromium im Vollbildmodus per Autostart mit vordefinierter Adresse geöffnet und die Maus wird ausgeblendet (im Autostart per unclutter).

    Ich habe folgendes Problem: Im Browserfenster gibt es ein Zusatzfenster/Leiste, welches sich einblendet wenn die Seite das erste mal geöffnet wird bzw. die Maus über den oberen Rand der Seite gefahren wird, dies verschiebt den ganzen Monitorinhalt und mehrere Zeilen nach unten (was die Darstellung "versaut"), wenn sich die Leiste wieder ausblendet ist alles ok, das tut sie allerdings erst wenn man die Maus einmal bewegt, egal wo sich selbige gerade befindet.

    Autostart rufe ich wie folgt auf:

    sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart

    Ich habe als erstes im Autostart den Eintrag @Point-rpi auskommentiert um die Maus nach Neustart wieder mittig und nicht links oben erscheinen zu lassen, allerdings ohne Erfolg, es muss erst einmal der Mauszeiger bewegt werden damit die Leiste wieder verschwindet.

    Das wollte ich mit dem Programm xte erreichen und habe Autostart um folgende Zeile erweitert:

    @reboot sleep 30 && xte "mousemove 800 400"

    Der befehl xte "mousemove 700 400" funktioniert in der Kommandozeile einwandfrei, um ihn erst zeitverzögert ausführen zu lassen (damit der Browser das Fenster komplett öffnen kann) habe ich versucht das ganze über Sleep zu lösen.

    Das funktioniert im Autostart in dieser Kombi allerdings nicht, jemand eine Idee was ich falsch mache?

    @lxpanel --profile LXDE-pi

    @pcmanfm --desktop --profile LXDE-pi

    @xscreensaver -no-splash

    # @point-rpi

    @unclutter

    @xset s off

    @xset -dpms

    @xset s noblank

    @sed -i 's/"exited_cleanly": false/"exited_cleanly": true/' ~/.config/chromium/Default/PreferencesMJRAsh_

    @chromium-browser --noerrdialogs --disable-translate --kiosk --incognito https://www.divera247.com/monitor/xyz

    @reboot sleep 30 && xte "mousemove 800 400"

    Danke + viele Grüße!:danke_ATDE:

    Einmal editiert, zuletzt von Spellbinder (7. Januar 2019 um 11:15)

  • Vielleicht helfen da einige der Optionen, die man chromium mitgeben kann:

    https://peter.sh/experiments/chromium-command-line-switches/

    Ansonsten mal statt einem @reboot sleep 30 && xte "mousemove 800 400"

    alles in /home/pi/.config/lxsession/LXDE-pi/autostart in eine Zeile packen und mit && nacheinander starten lassen.

    Damit editierst du die Datei nur:

    sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart

    Aber was steht drin ?

  • Das wollte ich mit dem Programm xte erreichen und habe Autostart um folgende Zeile erweitert:

    @reboot sleep 30 && xte "mousemove 800 400"

    Evtl. auch mit einer eigenen service-unit, die von einer eigenen timer-unit 30 Sekunden nach dem booten gestartet wird, versuchen/testen.

    Im [Install]-Abschnitt der service-unit (... die btw. disabled bleibt; nur die timer-unit enablen), für den Schlüssel WantedBy das "graphical.target" verwenden.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

  • @reboot sleep 30 && xte "mousemove 800 400"

    Damit führst Du den Befehl "reboot sleep 30" aus (bzw. versuchst es), der entweder a) nicht gefunden wird (/sbin ist vermutlich nicht im Pfad des Users pi), b) mit einem Aufruffehler (würde mich zumindest wundern, wenn "sleep 30" ein gültiges Argument für den reboot-Befehl wäre) oder c) aufgrund fehlender Berechtigung aussteigt. Auf jeden Fall wird er nicht erfolgreich abgearbeitet und damit auch der Teil nach dem "&&" nicht ausgeführt.

  • Hallo zusammen, vorab vielen Dank für die schnelle Hilfe! Ich habe der Vollständigkeit halber den Inhalt der Autostartdatei oben im Ursprungsbeitrag einmal mit eingefügt. Die Tipps werde ich heute Abend einmal ausprobieren, komme von hier aus nur auf die Konsole und sehe leider nicht welche Auswirkungen die Änderungen haben.

    In Bezug auf den Befehl @reboot und dann sleep dahinter hatte ich so verstanden, dass die 30 Sekunden Pause dann nach einem reboot ausgeführt wird, aber die Abhängigkeit ist von mir vermutlich falsch interpretiert worden (und wenn ich in Ruhe drüber nachdenke ist das Unsinn...der reboot wurde über einen cronjob erledigt und ist zu diesem Zeitpunkt bei Abarbeitung der Autostartdatei ja schon passé)

    Ich würde dann mal die die letzte Zeile löschen und die vorletzte wie folgt ändern:

    @chromium-browser --noerrdialogs --disable-translate --kiosk --incognito https://(homepage) && sleep 30 && xte "mousemove 800 400"

    Bzw. bei Sleep und xte dann noch den kompletten Pfad dazufügen!

    Noch einmal herzlichen Dank + viele Grüße!

  • @chromium-browser --noerrdialogs --disable-translate --kiosk--incognito https://(homepage) && sleep 30 && xte "mousemove 800 400"

    Bzw. bei Sleep und xte dann noch den kompletten Pfad dazufügen!

    Das wird wahrscheinlich nicht funktionieren. Ein Weg wäre, den Aufruf des Browsers so stehen zu lassen, sleep und xte in ein kleines Shell Skript auszulagern, und dieses dann mit seinem Namen - z.B. skriptwarteundmaus (nicht vergessen, es ausführbar zu machen ) zu starten.

    Bash: skriptwarteundmaus
    #!/bin/bash
    
    /bin/sleep 30
    DISPLAY=:0 /usr/bin/xte "mousemove 800 400"

    Wenn Du beides nicht unbedingt benötigts, kannst Du aus Deiner /home/pi/.config/lxsession/LXDE-pi/autostart noch diese beiden Zeilen eliminieren, dann wird weder das Panel noch pcmanfm als Dateimanager gestartet und nur Chromium ist zu sehen.

    Code
    @lxpanel --profile LXDE-pi
    @pcmanfm --desktop --profile LXDE-pi

    Das könnte dann so aussehen...

    Grüße,STF

  • Hallo STF,

    super, die Lösung war genau die perfekte und gesuchte, vielen lieben Dank!

    Zudem bin ich, was die Python Kenntnisse angeht, auch ein Stück weitergekommen!

    (Man kann hier leider nur einmal auf "gefällt mir" drücken ;) )

    Grüße!

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!