Wie aus einem Mail-Bot in zwei Tagen ein eigenes Fenster wurde


Ich wollte eigentlich nur einen einzigen Endpunkt bauen. Ein FastAPI-Server, der die Klimadaten aus dem Haus als JSON rausgibt — mehr nicht, ein technischer Zwischenschritt, den ich mir seit der großen Aufräumaktion Anfang Juli vorgenommen hatte. Herausgekommen ist eine App mit fünf Bereichen, Live-Push aufs iPhone und einem Chat, der mein eigenes Wiki durchsucht. Und das alles in ungefähr 48 Stunden.

Donnerstag, 09.07.

Der erste Commit war unspektakulär: ein /klima-Endpunkt, der genau das zurückgibt, was die Klima-Mail auch verschickt — nur eben als Rohdaten statt als Fließtext. Ich hab mir dabei nichts Großes gedacht. Ein technisches Fundament, mehr nicht.

Learning: Der Unterschied zwischen "eine Mail verschicken" und "eine App bauen" ist kleiner, als ich dachte — sobald die Daten einmal sauber als API rausgehen, ist der Rest nur noch Oberfläche.

Freitag, 10.07.

Das war der Tag, an dem es kippte. Morgens stand die erste Weboberfläche — ein einzelner Klima-Tab. Mittags kamen Solar und Heizung dazu. Nachmittags das DEVONthink-Mail-Cockpit, das mir meine priorisierten "Zu erledigen"-Mails zeigt. Und kurz vor dem Feierabend, gegen 14 Uhr, der fünfte Tab: ein Chat mit MERLIN direkt aus der App.

Zwischendurch mehr Kleinkram als mir lieb war — ein Dark-Mode, der sich nach den iPhone-Einstellungen richtet, ein Button zum Zurückstellen von Mails, ein Erinnerungs-Feld direkt aus der App heraus. Nichts davon war geplant, alles kam, weil ich beim Testen ständig dachte: "Ach, und wenn ich schon dabei bin…"

Abends lief die App dauerhaft im Hintergrund — kein Terminal-Fenster mehr, das ich offenhalten musste, sondern ein richtiger Systemdienst mit Selbstheilung. Und übers eigene, private VPN kam ich damit auch vom iPhone dran, ohne dass der Server je im offenen Netz hing.

Ich wollte einen Endpunkt. Ich habe eine App bekommen. So läuft das hier inzwischen ziemlich zuverlässig.

Samstag, 11.07.

Web-Push als Ablösung für Telegram — die erste Nachricht, die tatsächlich als Benachrichtigung aufploppte statt in einem Chat-Fenster zu landen, hat mich kurz genauso überrascht wie damals die erste automatische Antwort-Mail. Dann eine Tiefenschicht für den Chat: MERLIN kann jetzt in meinen NotebookLM-Notebooks nachschlagen, wenn das Wiki allein nicht reicht. Dazwischen der übliche Praxistest-Ärger — eine Antwort, die auf dem iPhone nach 60 Sekunden als "Load failed" abbrach, obwohl sie im Hintergrund längst fertig war. Job-Warteschlange statt Dauerleitung, Problem gelöst, aber erst nachdem ich zweimal dachte, MERLIN sei abgestürzt.

Learning: Ein Server, der serverseitig fertig wird, aber dem Handy nicht schnell genug antwortet, fühlt sich für den Nutzer identisch an wie ein kaputter Server. Das Timing-Problem ist genauso ernst zu nehmen wie ein echter Fehler.

Was dabei herauskam

Fünf Cockpits — Klima, Solar, Heizung, Mail-Eingang, Chat — auf einem Homescreen-Icon, das aussieht wie jede andere App. Dazu ein Chat, der mein Wiki liest, Live-Hausdaten zieht und heute sogar Webseiten abrufen kann, wenn ich ihm unterwegs einen Link zuwerfe. Telegram läuft noch parallel mit, als Sicherheitsnetz — aber zum ersten Mal fühlt es sich an, als würde es bald überflüssig.

Fazit

Was mich am meisten überrascht: Ich hatte "die App" seit Wochen auf der Liste, ganz unten, hinter Zuverlässigkeit und Aufräumarbeiten einsortiert — genau richtig, wie sich zeigt, weil es dadurch keine drei Wochen Fleißarbeit war, sondern zwei intensive Tage auf einem soliden Unterbau. Ob Telegram wirklich bald abgeschaltet wird, weiß ich noch nicht. Aber ich schreibe diesen Post zum ersten Mal mit dem Gefühl, dass MERLIN und ich nicht mehr nur über Mails und Nachrichten miteinander reden, sondern tatsächlich im selben Fenster angekommen sind.


← Alle Einträge