knuspermagier.de
Ein L und zwei P. Philipp!

Behind Science ist ein Podcast über… Wissenschaftskram. Er ist relativ neu, sehr gut produziert und, zur Abwechslung in meiner Podcast-Liste, mal von zwei Frauen gehosted. Daumen hoch!

philipps.photos logo
philipps.photos logo

Web Push im iOS 16.4 Safari leicht gemacht

Seit ein paar Wochen unterstützt der mobile Safari nun ja auch Push Notifications. Natürlich musste ich das direkt mal ausprobieren und natürlich klappte es nicht sofort, daher hier nochmal kurz zusammengefasst, was man braucht:

  1. Erstmal braucht man VAPID Keys, das ist einfach nur ein Keypair, das man sich selber generieren kann, da muss man sich nirgendwo für Anmelden, oder so. Ich verlinke mal keine dieser shady Seiten, wo man das in einem Web-Formular machen kann.
  2. Einen Service-Worker. Tatsächlich habe ich mich bisher auch immer sehr gut um dieses Thema drücken können. Das ist so ein bisschen JavaScript, das eine Seite registrieren kann und was der Browser im Hintergrund ausführen kann, auch wenn die Seite nicht offen ist. Das ist essentiell, denn der Service-Worker bekommt die Notification vom System übermittelt und muss selbst dafür sorgen, dass und wie sie angezeigt wird. Hier eine Beispielimplementierung.
  3. Ein bisschen JavaScript, dass den Service-Worker registriert und die Anmeldung für Push-Notifications übernimmt. Unter iOS ist hier wichtig, dass die Nachfrage nach den Permissions in einem onclick-Handler passiert und nicht direkt beim Öffnen der Seite
  4. Ein Backend, das die Endpoints und Tokens speichert, die man vom Browser bekommen hat.
  5. Die App muss auf den Homescreen installiert sein und braucht eine manifest.json. Ich nutzte standalone für das display-Feld im Manifest, sonst klappte es nicht, aber kann sein, dass es auch ohne geht.
  6. Eine Backend-Komponente um Pushs zu verschicken. Für PHP benutzte ich da die minishlik/web-push Library.

Fertig, damit funktioniert es! Wenn man weiß wie, ist es ganz einfach.

philipps.photos logo

Die große Server-Konsolidierung 2023

Ich gebe es zu, ich bin Server-Messi. Spätestens seitdem Hetzner mit seinem Cloud-Angebot durchgestartete und man nur so drei Euro für eine CPU und ein bisschen Speicher zahlte, fing ich an für alles mögliche eine neue VM anzulegen. Zuletzt versuchte ich vor etwa einem Jahr dem Chaos Herr zu werden, leider ohne größeren Erfolg. Am Ende hatte ich noch einen Server mehr.

Aktuell sind es ca. 15 und ich zahle dafür um die 50€ im Monat. Denn, wie alles, sind auch die VMs teurer geworden, spätestens seitdem Hetzner für die kostbaren IPv4-Adressen nochmal extra kassiert. Zu recht natürlich. Ich redete es mir immer schön, in dem ich mir sagte, dass es ewig dauern würde, bis sich der Arbeitsaufwand amortisieren wird. Was sind schon gesparte 5€ für einen Server im Monat! Macht man sich die Mühe und multipliziert das mal mit 12 kommt man allerdings schon auf 60€ und das nochmal mit der Anzahl der Server multipliziert, die man abstellen könnte. Plötzlich kommt man auf einen beträchtlichen Betrag, den man sparen könnte. Davon könnte man sich einige Packungen Kippen kaufen, wenn man rauchen würde!

In diesem Post erzähle ich euch nun ein wenig davon, wie ich dieses Projekt angegangen bin, welche Probleme ich hatte und was das Ergebnis ist. Natürlich habe ich währenddessen mal wieder zu wenige Notizen gemacht und schreibe alles schnell in einer Nacht-und-Nebel-Aktion zusammen, daher werden sicher ein paar Sachen fehlen. Vielleicht ergänze ich sie später, wenn sie mir einfallen!

Weiterlesen →