Betrieb auch ohne Internetanbindung

So hübsch wie viele Funktionen duch die Internetanbindung sind, wäre mir wichtig, das wir nicht vergessen sollten, dass es auch Situationen gibt in denen das Netz fehlt.
Es wäre gut wenn also das Netz fehlt, die wichtigsten Funktionen auch über den AP ausführen zu können.
Wenn dann eine minimalistische Webseite zusätzlich zum Einrichten des Wlan vorhanden wäre, könnten z.B. Karten angelernt werden.
Es wäre dann z.B. auch direkt möglich MQTT zu ignorieren um nicht in Timingprobleme zu kommen oder beim auflegen einer Streamingkarte eine Fehlermeldug zu liefern.
Dann könnte die Box auch auf einer Auto oder Zugfahrt normal genutzt weden.

Das wird es doch jetzt schon.

In Timingprobleme kann man nur laufen, wenn man WiFi aktiviert hat und MQTT auch; jedoch kein MQTT-Server erreichbar ist. Ich habe den Socket-Timeout allerdings von 15s auf 1s reduziert:

Auch das ist der Fall: Ist kein WiFi aktiv, so erscheint eine Fehlermeldung.

Was ist, wenn Wifi aktiv ist, aber der Zugriff auf das Internet gesperrt ist?
Ich habe meine IoT-Geräte alle in einem separaten WLAN, damit die keinen Mist machen können. :wink:
Dem ESPuino vertraue ich etwas mehr, aber falls die HTML-Dateien auf die SD-Karte kommen, wäre ich dafür keine externen Libraries und Logos mehr einzubinden.

@biologist: nicht, dass ich etwas dagegen hätte, aber hast du Statistiken dafür, wie oft das Logo von ESP32-Clients abgerufen wird?

Das wird beim Auflegen einer Webstream-Karte vermutlich zu komischen Effekten führen.

Also es ist so, dass ein Webclient viele Verbindungen gleichzeitig aufbaut, damit eine Seite schnell geladen werden kann. Wenn ich jetzt alles über den ESP32 ausliefere, dann sehe ich die Gefahr, dass alle Verbindungen auf dem ESP32 dicht sind. Daher habe ich mich dafür entschieden, halt nur die Website selbst lokal zu lassen.
Ich persönlich mag die Trackerei von den großen Cloudanbietern gar nicht. Am liebsten würde daher alle Elemente auf meinen eigenen Server verschieben. Ich habe jetzt halt mal so einen Mittelweg gewählt. Auf meinem Server kann ich natürlich grundsätzlich sehen, von welcher IP wann etwas abgerufen wird. Auswerten tue ich hier jedoch nix. In der Praxis läuft es so, dass ich diese Logfiles (gemäß DSGVO) nur eine Woche aufhebe und dann werden sie unwiederbringlich gelöscht. Klar, diesen Nachweis zu erbringen, dass ich damit tatsächlich nix mache, ist natürlich schwer - behaupten kann ich hier viel :joy:

Was vielleicht eine Möglichkeit wäre, ist sowas wie Webpack zu benutzen, um aus den ganzen Lib-Abhängigkeiten einen „dicken Brocken“ zu machen, den man dann über den ESP32 in einer Verbindung ausliefern lassen könnte. Wenn das äquivalent nutzbar ist, dann kann das gerne umgestellt werden. Mir persönlich liegt nix dran, diese Abrufe auf meinem Server zu haben. Ich fänd’ es zwar grundsätzlich interessant zu wissen, wieviele ESPuinos es so gibt, aber diese Info kann ich aus den Logdaten eh nicht ableiten. Insofern kann ich auch drauf verzichten.

gutes Argument

dito

hab ich jetzt auch nicht erwartet.
Viel eher ein großes Dankeschön für die Bereitstellung der Infrastruktur hier.

Wenn die HTML-Dateien auf der SD-Karte sind, schaue ich mir mal Webpack an. Klingt gut.