Zum Hauptinhalt springen

Speedtest.net & Cloudflare Smart-Home-Integration, kostenlos und Open Source

Speedtest.net & Cloudflare-Integration für Gladys Assistant

Miss regelmäßig deine Internetgeschwindigkeit mit Speedtest.net oder Cloudflare.

Miss deine Internetverbindung regelmäßig, direkt aus Gladys, über das weltweite Servernetz von Speedtest.net oder den Geschwindigkeitstest von Cloudflare. Jeder Test füllt vier Sensoren, die du im Dashboard als Diagramm anzeigen und in Szenen nutzen kannst:

SensorEinheitWas er dir sagt
DownloadMbit/sWie schnell Daten bei dir ankommen
UploadMbit/sWie schnell Daten dein Zuhause verlassen
PingmsReaktionszeit der Verbindung (niedriger ist besser)
JittermsStabilität dieser Reaktionszeit (niedriger ist besser)

Typische Anwendungen: prüfen, was dein Anbieter wirklich liefert, dich per Szene benachrichtigen lassen, wenn der Download unter das fällt, was du bezahlst, oder erkennen, dass eine Ersatzleitung (4G-Failover …) übernommen hat.

Ablauf eines Tests​

Die Integration spricht direkt mit der Infrastruktur von Speedtest.net — kein Konto, kein API-Schlüssel, keine Ookla-Software. Standardmäßig prüft sie die nächstgelegenen Server, behält den gesündesten und misst dann Latenz, Download und Upload (insgesamt etwa 25 Sekunden). Du kannst auch einen bestimmten Server festlegen: Die Schaltfläche Server in der Nähe auflisten zeigt die IDs, die du in das Feld Speedtest.net-Server-ID einträgst.

Die Engine wählen​

Das Feld Test-Engine legt fest, wogegen du misst. Beide Engines füllen dieselben vier Sensoren, mit demselben Zeitplan, denselben parallelen Verbindungen und derselben Messdauer: Beim Wechsel bleiben dein Gerät, sein Verlauf und deine Szenen erhalten.

  • Speedtest.net (Standard): ein Server des Speedtest.net-Netzes in deiner Nähe, automatisch gewählt oder über seine ID festgelegt.
  • Cloudflare: der nächstgelegene Standort des Cloudflare-Netzes, der hinter speed.cloudflare.com. Kein Server zu wählen, kein Konto. Das Widget zeigt ihn als Cloudflare gefolgt vom Flughafencode seiner Stadt (FRA für Frankfurt, CDG für Paris …).

Die Cloudflare-Engine kann auch deine öffentliche IP-Adresse anzeigen, so wie Cloudflare sie sieht: Aktiviere Meine öffentliche IP anzeigen (Cloudflare). Sie erscheint dann im Widget und im Ergebnis des manuellen Tests und wird mit dem letzten Ergebnis im Speicher der Integration abgelegt. Sie wird nie in die Logs geschrieben. Standardmäßig deaktiviert.

Cloudflare misst die Latenz an einer leeren Anfrage, abzüglich der Verarbeitungszeit, die sein Server meldet, und behält den besten von 20 Messwerten; der Jitter ist der mittlere Abstand zwischen aufeinanderfolgenden Messwerten, wie bei Speedtest.net. Die Werte der beiden Engines liegen nah beieinander, sind aber nicht gleich: Vergleiche eine Leitung mit sich selbst, mit derselben Engine.

Gut zu wissen​

  • Ein Test lastet deine Verbindung voll aus, solange er läuft. Auf sehr schnellen Leitungen sind die Ergebnisse außerdem leicht konservativ, weil die Messung sich die CPU mit den Grenzen teilt, die Gladys den Integrationen setzt.
  • Ein Test überträgt echte Daten — mehrere hundert MB pro Durchlauf auf einer schnellen Leitung, egal mit welcher Engine (auf einer Gigabit-Leitung bis zu etwa 1,5 GB pro Richtung mit den Standardeinstellungen). Wenn dein Tarif ein Datenvolumen hat, vergrößere das Intervall zwischen den Tests oder deaktiviere die automatischen Tests und nutze nur die Schaltfläche.
  • Cloudflare begrenzt starke Nutzung. Nach viel Verkehr in kurzer Zeit (zwei Gigabit-Tests im Abstand weniger Minuten, in unseren Versuchen) verweigert es eine Zeit lang große Downloads mit dem Fehler HTTP 429: Der Test schlägt dann mit einer entsprechenden Meldung fehl, und der nächste geplante Test versucht es erneut. Ein automatischer Test läuft nie öfter als alle 10 Minuten.
  • Geplante Tests folgen der Einstellung Intervall zwischen Tests (Standard: ein Test pro Stunde). Die Schaltfläche Geschwindigkeitstest starten funktioniert jederzeit.

Dashboard-Widget​

Ab Gladys 5.1 fügt die Integration dem Dashboard-Editor ein Widget Internetgeschwindigkeit hinzu (Hinzufügen → Speedtest.net & Cloudflare). Es zeigt:

  • zwei Kacheln nebeneinander, Download und Upload: in ganzen Mb/s oder in Gb/s mit einer Nachkommastelle ab 1.000 Mb/s (1,2 Gb/s);
  • ein Flächendiagramm des Verlaufs zweier Sensoren: Diagramm wählt Download und Upload (Standard) oder Ping und Jitter, Verlaufszeitraum die letzten 24 Stunden, die letzte Woche (Standard) oder den letzten Monat;
  • Ping und Jitter des letzten Tests, seinen Zeitpunkt und den verwendeten Server (Speedtest.net: Betreiber und Stadt; Cloudflare: Cloudflare · FRA), deine öffentliche IP, wenn du sie angefordert hast, und Test läuft, solange ein Test läuft;
  • eine Schaltfläche Test starten. Das Ergebnis erscheint als Benachrichtigung, wenn der Test endet (etwa eine halbe Minute). Tippst du darauf, während schon ein Test läuft, startet kein zweiter.

Anzeige verkürzt das Widget: Vollständig (Standard) ist die Darstellung oben; Raten, Ping und Diagramm behält drei Kacheln (Download, Upload, Ping) und das Diagramm; Raten und Ping nur die drei Kacheln. Diese beiden haben weder Statuszeilen noch Schaltfläche: Einen Test startest du weiterhin in der Konfiguration der Integration.

Schaltfläche „Test starten“: Je nach Anzeige (Standard: nur in der vollständigen Ansicht), Immer oder Nie, für jedes Widget.

Gut zu wissen:

  • Das Diagramm liest die Sensoren des Geräts: Füge das Gerät zu Gladys hinzu (Integrationen → Speedtest.net & Cloudflare → Entdecken), damit es sich füllt.
  • Das Widget rundet nur, was es anzeigt: Gladys behält die gemessenen Werte mit Nachkommastellen in den Sensoren und ihrem Verlauf.
  • Das letzte Ergebnis bleibt bei einem Neustart der Integration erhalten. Vor dem ersten Test zeigen die Kacheln einen Strich und das Widget meldet, dass noch kein Ergebnis bekannt ist.
  • Die Zeiträume des Diagramms und der lange Verlauf folgen deinen Gladys-Einstellungen zur Aufbewahrung der Gerätedaten.

Szenen​

  • Auslöser Automatischer Geschwindigkeitstest fehlgeschlagen: Ein automatischer Test ist gescheitert, oft weil das Internet ausgefallen ist. Variablen: der Fehler und die Zahl der Fehlschläge in Folge. Die Tests laufen standardmäßig stündlich (mindestens alle 10 Minuten): Ein kurzer Ausfall zwischen zwei Tests fällt nicht auf.
  • Aktion Geschwindigkeitstest starten: wartet auf das Ergebnis (etwa 30 s) und gibt den nächsten Aktionen Test erfolgreich, Download, Upload, Ping und Jitter oder den Fehler. Ein fehlgeschlagener Test lässt die Aktion nicht scheitern: Test erfolgreich sagt es, etwa in einer Nachricht. Der Test aktualisiert auch die Sensoren des Geräts, die eine Bedingung prüfen kann. Ein von einer Szene gestarteter Test löst den Auslöser oben nie aus.

Beispiel: Wenn der Ping über 300 ms steigt (Auslöser auf den Gerätewert), eine Benachrichtigung senden, 2 Minuten warten, einen Geschwindigkeitstest starten und nur weitermachen, wenn der Ping noch hoch ist.

Fehlerbehebung​

  • Ergebnisse niedriger als in der offiziellen App: Erhöhe Parallele Verbindungen (schnelle Leitungen werden mit 6–8 besser ausgelastet) oder die Messdauer.
  • Test schlägt fehl: Der nächstgelegene Server ist vielleicht ausgefallen — lege eine andere Speedtest.net-Server-ID fest oder leere das Feld, damit die automatische Auswahl defekte Server überspringt. Mit der Cloudflare-Engine bedeutet ein Fehler HTTP 429, dass Cloudflare deine Adresse eine Zeit lang begrenzt: Vergrößere das Intervall oder verkürze die Messdauer.
  • Die Server-ID bewirkt nichts: Sie gilt nur für die Speedtest.net-Engine.
  • Logs: Auf der Standardstufe protokolliert die Integration ihren Start, deine manuellen Tests und den ersten Fehlschlag des automatischen Tests (dann eine Zeile, wenn er wieder funktioniert). Um jeden Test, seinen Server und sein Ergebnis zu sehen, setze die Umgebungsvariable LOG_LEVEL=debug am Container.

Diese Integration ist ein unabhängiges Community-Projekt, weder mit Ookla noch mit Cloudflare verbunden oder von ihnen unterstützt. Speedtest® ist eine Marke von Ookla, LLC; Cloudflare® ist eine Marke von Cloudflare, Inc.

Konfigurationseinstellungen​

Diese Einstellungen fragt Speedtest.net & Cloudflare in seinem Konfigurationsbildschirm in Gladys ab.

EinstellungTypPflichtfeldBeschreibung
FunktionsweisesectionNeinEin Test lastet deine Verbindung etwa 25 Sekunden lang voll aus und kann pro Durchlauf mehrere hundert MB übertragen, egal mit welcher Engine: Denk bei der Wahl des Intervalls an dein Datenvolumen. Die Ergebnisse landen in vier Sensoren (Download, Upload, Ping, Jitter), die du in Diagrammen und Szenen nutzen kannst.
Test-EngineselectNeinSpeedtest.net misst gegen einen Server in der Nähe, Cloudflare gegen seinen nächstgelegenen Standort, ohne Serverwahl.
Tests automatisch ausführenbooleanNeinWenn deaktiviert, starten Tests nur über die Schaltfläche unten.
Intervall zwischen Tests (s)numberNeinSekunden zwischen zwei automatischen Tests. 3600 = ein Test pro Stunde.
Speedtest.net-Server-ID (optional)stringNeinLass das Feld leer, um automatisch den nächstgelegenen funktionierenden Server zu wählen. Die Schaltfläche „Server in der Nähe auflisten“ zeigt die IDs.
Meine öffentliche IP anzeigen (Cloudflare)booleanNeinNur für die Cloudflare-Engine: speichert die öffentliche IP-Adresse, die sie sieht, und zeigt sie im Widget und im Testergebnis. Nie in den Logs.
Parallele VerbindungennumberNeinTCP-Verbindungen pro Richtung. Mehr Verbindungen lasten schnelle Leitungen besser aus.
Messdauer pro Richtung (s)numberNeinLängere Messungen sind stabiler, übertragen aber mehr Daten.

So installierst du Speedtest.net & Cloudflare in Gladys​

  1. Öffne in Gladys Integrationen: Speedtest.net & Cloudflare erscheint im Katalog neben den nativen Integrationen, mit einem Community-Badge.
  2. Klicke auf Installieren. Gladys lädt das Docker-Image (ghcr.io/guim31/gladys-speedtest:1.6.1) herunter, startet es in einer vom Kern isolierten Sandbox und erzeugt die Oberfläche der Integration (Geräte, Erkennung und Konfiguration).
  3. Öffne den Bildschirm Konfiguration der Integration, fülle die Einstellungen aus und speichere.
  4. Du kannst sie auch direkt über die URL ihres Repositorys installieren: https://github.com/guim31/gladys-speedtest.

Speedtest.net & Cloudflare benötigt Gladys >=5.1.0. Der Katalog in Gladys wird stündlich aktualisiert, eine neue Version ist also spätestens eine Stunde nach ihrer Veröffentlichung verfügbar.

Du nutzt Gladys noch nicht? Es ist kostenlos und Open Source: folge der Installationsanleitung, um loszulegen.

Über externe Integrationen​

Speedtest.net & Cloudflare ist eine externe Integration: eine Community-Integration, die als Docker-Container verpackt und auf GitHub veröffentlicht wird. Gladys installiert sie mit einem Klick und führt sie in einer vom Kern isolierten Sandbox aus. Sie wird von guim31 veröffentlicht und gepflegt, nicht vom Gladys-Kernteam.

Abonniere den Newsletter von Gladys Assistant

Ein paar E-Mails im Monat zu neuen Releases und Neuigkeiten aus dem Projekt. Verschickt von Pierre-Gilles Leymarie, dem Gründer des Projekts. Jederzeit abbestellbar 🙂