HTML-Datei wird im Kiosk-Mode nicht richtig ausgeführt

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo Zusammen,
    ich möchte meinen Raspi3 im Kiosk-Mode betreiben.
    Er soll nach dem Start automatisch hochfahren, den Browser in einem Vollbild öffnen und eine bestimmte Seite öffnen. Dazu habe ich schon eine Menge gelesen, experimentiert und ausprobiert.
    Ich habe es jetzt geschafft, dass der Raspi hochfährt und automatisch Chromium, mit einer von mir definierten HTML-Datei, öffnet.
    Soweit so gut.
    Allerdings führt Chromium die Datei nicht korrekt aus und ich weiß einfach nicht woran es liegt.
    Hier die Aufgabenstellung:
    Chromium soll eine HTML-Datei öffnen in der ich mittels Buttons wählen kann, welches Standbild einer Überwachungskamera in einem Frame dargestellt werden soll.
    Die HTML-Datei funktioniert. Sowohl an meinem PC als auch auf dem Pi. Wenn ich am Pi per Dateimanager in das entsprechende Verzeichnis gehe und auf die HTML-Datei klicke, dann öffnet Chromium die Datei und ich bekomme alles wunderbar angezeigt. Alles perfekt.
    Leider schaffe ich es nicht, genau das automatisch zum Start des Pi geschehen zu lassen.
    Der Browser wird dann geöffnet und es wird auch die richtige HTML-Datei aufgemacht, allerdings wird die Grafik im Frame nicht angezeigt, sondern es kommt nur der Platzhalter.

    Wie schon gesagt, ich experimentiere schon Stunden rum, komme aber einfach nicht auf den Fehler.

    Wer kann helfen?
    Ich habe unten die entsprechenden Dateien aufgelistet.
    Wie schon gesagt, wenn ich die erste Datei Haustechnik%20Pi%20Garage.html
    im Dateimanager anklicke läuft alles wunderbar.
    Nur aus der Config raus bei Autostart funktioniert es nicht.

    Vielen Dank vorab

    ____________

    So sieht meine config aus:

    @lxpanel --profile LXDE-pi
    @pcmanfm --desktop --profile LXDE-pi
    #@xscreensaver -no-splash
    @point-rpi
    @xset s off
    @xset -dpms
    @xset s noblank
    sed -i 's/"exited_cleanly": false/"exited_cleanly": true/' ~/.config/chromium-browser/Default/Preferences
    @/usr/bin/chromium-browser --noerordialogs --disable-session-crashed-bubble --disable-infobars --kiosk file:///home/pi/HTML/Haustechnik%20Pi%20Garage.html

    ______________________________

    so sieht die HTML-Datei aus:

    <html>
    <head>
    <meta content="text/html; charset=ISO-8859-1"
    http-equiv="content-type">
    <title>Haustechnik Pi Kamera Garage</title>
    </head>
    <body>
    <table style="text-align: left; width: 100%;" border="1"
    cellpadding="2" cellspacing="2">
    <tbody>
    <tr>
    <td><a href="Haustechnik%20Pi%20Garage.html"><img
    style="border: 0px solid ; width: 260px; height: 140px;"
    alt="Garage" src="Button%20Garage.jpg"></a><br>
    <a href="Haustechnik%20Pi%20Haustuer.html"><img
    style="border: 0px solid ; width: 260px; height: 140px;"
    alt="Haustuer" src="Button%20Haustuer.jpg"></a><br>
    <a href="Haustechnik%20Pi%20Seite.html"><img
    style="border: 0px solid ; width: 260px; height: 140px;"
    alt="Seite" src="Button%20Seite.jpg"></a><br>
    <a href="Haustechnik%20Pi%20Garten.html"><img
    style="border: 0px solid ; width: 260px; height: 140px;"
    alt="Garten" src="Button%20Garten.jpg"></a><br>
    </td>
    <td><iframe src="Kamera%20Garage.html"
    name="iframe2" height="460" width="860"></iframe>
    </td>
    </tr>
    </tbody>
    </table>
    <p></p>
    </body>
    </html>

    ___________
    Und so sieht die HTML-Datei (Kamera%20Garage.html") aus, die aus der ersten im Frame aufgerufen wird:

    <html>
    <head>
    <meta content="text/html; charset=ISO-8859-1"
    http-equiv="content-type">
    <meta http-equiv="refresh" content="10">
    <title>Kamera Garage</title>
    </head>
    <body>
    <br>
    <img style="width: 400px; height: 327px;" alt="Kamera Garage"
    src="http://BENUTZER:PASSWORT@192.168.178.23/cgi-bin/snapshot.cgi?channel=00">
    </body>
    </html>

    Einmal editiert, zuletzt von Aiki (27. November 2016 um 18:26)

  • HTML-Datei wird im Kiosk-Mode nicht richtig ausgeführt? Schau mal ob du hier fündig wirst!

  • Sorry, es ist bestimmt gut gemeint, aber diese Antwort hilft mir null weiter!

    Ich habe schon sehr viel gelesen. Entweder stehe ich auf dem Schlauch oder ich verstehe es einfach nicht. Da hilft es mir auch nicht, wenn ich noch mehr durchlese!

    Ich denke es ist wahrscheinlich eine Kleinigkeit, die ich nicht verstehe oder übersehe und da wäre mir ein konkreter Tipp sehr lieb.

    Vielen Dank!

  • Dann les dich mal Schlau was der Unterschied zwischen dem Protokoll "http://" und "file://" ist

    In der von mir verlinkten "Kiosk" Anleitung - die für sowas weitaus besser ist als einen Browser zu starten nachdem eine vollständige Desktop Oberfläche gestartet ist - wird auch beschrieben wie man lokal liegende HTML Dateien ohne Webserver darstellen/laden kann.

  • Was ich nicht verstehe ist, warum ich ein System neu aufsetzen soll, wenn "eigentlich" alles funktioniert.
    Und ich verstehe nicht, warum Chromium eine Datei korrekt ausführt, wenn ich sie im Dateimanager anklicke, es aber nicht tut, wenn das selbe im Autostart passiert.
    Es ist dasselbe Chromium und dieselbe HTML-Datei!

  • Weil du mit "file://" dem Browser sagst er soll die runter laden, nicht darstellen. Lass doch einfach mal das "file://" weg

    Wenn du eine vollständige Desktopoberfläche lädst und dort einen Browser startest, ist das kein (echter) Kiosk-Mode. Deine Vorgehensweise verballert weitaus mehr CPU+RAM weil im Hintergrund besagte vollständiger Desktop läuft.

  • Hallo zusammen,
    nachdem ich mich nun strickt geweigert habe ein prinzipiell funktionierendes System neu aufzusetzen, habe ich stundenlang weiter experimentiert, die Lösung aber einfach nicht gefunden.

    Ich vermute, dass es ein Problem (oder ein Fehler von mir) mit Chromium ist und habe jetzt testweise einfach mal Iceweasel installiert und es funktioniert!
    Die Seite wird einwandfrei aufgerufen und die eingebetteten Links funktionieren problemlos.
    Alles funktioniert sogar im Autostart mit Fullscreen.
    Ich werde jetzt noch etwas rumbasteln, um die Anzeige zu optimieren, den Autostart zu verfeinern und die Symbolleisten auszublenden, aber momentan sieht es gut aus.

    Ich bin mir bewusst, dass es vielleicht technisch bessere Möglichkeiten gibt, aber -wie schon gesagt- ich bin Anfänger, habe nicht die Lust, die Zeit und auch nicht das technische Verständnis stundenlang rumzubasteln um die optimale Lösung zu finden. Wenn es funktioniert bin ich zufrieden.

    Vielen Dank allen, die versucht haben zu helfen!
    Automatisch zusammengefügt:


    Weil du mit "file://" dem Browser sagst er soll die runter laden, nicht darstellen. Lass doch einfach mal das "file://" weg

    Wenn du eine vollständige Desktopoberfläche lädst und dort einen Browser startest, ist das kein (echter) Kiosk-Mode. Deine Vorgehensweise verballert weitaus mehr CPU+RAM weil im Hintergrund besagte vollständiger Desktop läuft.

    Hallo Meigrafd,
    JA, es kann sein, dass das so wie ich es mache nicht optimal ist. Es kann auch sein, dass ich mich etwas blöd anstelle.
    Aber ich bin Anfänger!
    Ich habe es leider -trotz mehrfacher Versuche- nicht geschafft Deine Anleitung für den Kiosk-Mode umzusetzen.
    Irgendetwas hat immer nicht funktioniert. Sei es, das ich eine Datei nicht finden konnte, etwas nicht richtig installiert wurde, oder ...
    Wie schon gesagt, es kann durchaus sein, dass der Fehler bei mir liegt, aber es nutzt ja nichts. Es wird niemand vorbeikommen und mir die Lösung basteln. Daher versuche ich mir irgendwie zu helfen und mit dem was ich lese, erfrage, experimentiere, die Lösung zu realisieren.
    Momentan habe ich damit Erfolg gehabt. Vielleicht werde ich in ein paar Tagen/Wochen/Monaten, wenn ich mehr Erfahrung bekommen habe mit dem jetzigen Ergebnis unzufrieden sein und es besser machen.
    Momentan bin ich zufrieden, wenn es überhaupt läuft und das tut es momentan!

    Einmal editiert, zuletzt von Aiki (1. Dezember 2016 um 17:05)


  • Weil du mit "file://" dem Browser sagst er soll die runter laden, nicht darstellen. Lass doch einfach mal das "file://" weg

    Wenn du eine vollständige Desktopoberfläche lädst und dort einen Browser startest, ist das kein (echter) Kiosk-Mode. Deine Vorgehensweise verballert weitaus mehr CPU+RAM weil im Hintergrund besagte vollständiger Desktop läuft.

    Ich verstehe, dass sich die Aussage hier nicht auf die Anleitung von meigrafd bezieht, aber die Sache mit dem file:// ist mir jetzt auch nicht so ganz klar, da das Beispiel in der Anleitung zum Kiosk Mode auch nicht funktioniert, weil file:// fehlt.

    Ich habe nach der Anleitung von meigrafd einen Raspberry Pi 2 im Kiosk Mode mit Chromium aufgesetzt. Die Installation habe ich wie beschrieben durchgeführt, aber entsprechend den neuen Möglichkeiten etwas abgekürzt.

    Wie in der Anleitung beschrieben, verwende ich die Methode mit dem automatischen Login des GNOME Display Managers und dem .xsession Script. Für meine Tests verwende ich eine lokale html Datei, die sich unter /var/www/html/index.html befindet; Owner ist root, Leseberechtigung haben alle.

    Leider hat das Beispiel nicht funktioniert! Ich habe festgestellt, dass beim Zugriff auf lokale Dateien im Application Mode die URI vollständig mit file:// angegeben werden muss.

    D.h. als geschlossene Kiosk-Anwendung im Application Mode funktioniert Chromium nur mit folgender Angabe im .xsession Script wie erwartet:

    Code
    app=file:///var/www/html/index.html

    Hingegen führt die folgende Angabe im .xsession Script zu unerwarteten Ergebnissen:

    Code
    app=/var/www/html/index.html

    In diesem Fall startet der Chromium-Browser in einem neuen Tab im Inkognitomodus. Dahinter befindet sich noch ein weiterer geöffneter Tab mit dem Namen "Starten". Die Menüs sind frei zugänglich und die von mir erstellte Seite fehlt.

    So sieht mein inzwischen funktionierendes .xsession Script aus:

    Öffne ich die Datei nicht im Application Mode, also lasse im Script "--app=" weg, dann lässt sich die Datei auch ohne file:// öffnen. Es funktionieren beide Varianten. Der Browser setzt im Adress-Balken das fehlende file:// automatisch ein.

    Ich verwende Raspbian Jessie Lite vom 25.11.2016 mit den tagesaktuellen Updates. Die installierte Chromium-Version ist gemäss chrome://help "Version 51.0.2704.92 Built on Ubuntu 14.04, running on Raspbian 8.0".

    Ich wollte diese Erkenntnis einfach noch weitergeben.

    Ansonsten läuft's recht gut und die Perfomance ist zufriedenstellend. Ich muss nur noch herausfinden, wo ich die Keyboard-Einstellungen anpassen kann (Schweizerdeutsches Layout). Silent-Boot über tty3 geht leider immer noch nicht.

    Einmal editiert, zuletzt von pgloor (20. Dezember 2016 um 09:53)

  • meigrafd
    10. Januar 2016 um 14:28



    Die Installation habe ich wie beschrieben durchgeführt, aber entsprechend den neuen Möglichkeiten etwas abgekürzt.

    Magst du das näher erläutern? ;)

Jetzt mitmachen!

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