Matomo Smart-Home-Integration, kostenlos und Open Source

Besucher gerade jetzt, Besuche und Zielkonversionen des Tages deiner Matomo-Websites in Gladys.
Matomo ist die quelloffene (GPL-3.0) Plattform für Webanalyse, selbst gehostet oder in der Matomo Cloud. Diese Integration bringt die Zahlen deiner Matomo-Websites in Gladys: Jede Website wird ein Gerät mit ihren Besuchern gerade jetzt und ihren eindeutigen Besuchern, Besuchen, Seitenaufrufen, Zielkonversionen und ihrer Absprungrate des Tages. Szenen können auf einen Besucheransturm reagieren, auf den ersten Besucher des Tages, auf ein erreichtes Ziel oder auf eine Website, die keine Besuche mehr bekommt (ein kaputter Tracking-Code); ein Dashboard-Widget zeigt den Tag auf einen Blick, und eine Szenen-Aktion schreibt die Zahlen einer Website in eine Nachricht.
Getestet mit einem echten, selbst gehosteten Matomo 5.14.2 (Docker, MariaDB); noch nicht mit der Matomo Cloud: Rückmeldungen sind willkommen in den Issues.
Was du brauchst
- Gladys Assistant 5.1.0 oder neuer.
- Ein Matomo 4 oder 5, selbst gehostet oder in der Matomo Cloud, vom Gladys-Rechner aus erreichbar.
- Ein Authentifizierungs-Token (
token_auth) eines Matomo-Benutzers mit Lesezugriff („Ansicht“) auf die Websites. Am besten ein eigener Benutzer nur mit Lesezugriff: Das Token hat die Rechte seines Benutzers.
Bei jeder Aktualisierung sendet die Integration eine Anfrage an die API von Matomo für bis zu 20 Websites (eine Sammelanfrage: Besucher der letzten 30 Minuten, Besuche, Seitenaufrufe und Ziele des Tages), dazu alle 10 Minuten die Liste der Websites. Das Token geht immer im Inhalt einer POST-Anfrage mit, nie in einer Adresse. Gladys nimmt 300 Zustände pro Minute an: Mit dem Intervall von 30 Sekunden legst du höchstens 25 Websites in Gladys an.
Erste Schritte
1. Ein Token erstellen
Erstelle in Matomo als Superuser einen Benutzer mit dem Zugriff Ansicht auf die Websites (Administration → System → Benutzer), oder nutze dein eigenes Konto. Öffne, mit diesem Benutzer angemeldet, Persönlich → Sicherheit → Authentifizierungs-Tokens, klicke auf Neues Token erstellen und kopiere das Token (32 Zeichen, nur einmal angezeigt).
2. Die Integration konfigurieren
Öffne in Gladys Integrationen → Matomo → Konfiguration:
- Matomo-Adresse: die Adresse, mit der du Matomo öffnest, zum Beispiel
https://stats.example.org,http://192.168.1.10:8080oderhttps://example.matomo.cloud. Eine aus dem Browser kopierte Adresse wird verstanden; ein Unterordner (https://example.org/matomo) bleibt erhalten. - Authentifizierungs-Token: das Token aus Schritt 1.
- Aktualisierungsintervall: von 30 Sekunden bis 5 Minuten (standardmäßig 1 Minute).
- Besucheransturm ab: die gleichzeitigen Besucher, die „Besucheransturm“ auslösen (standardmäßig 10).
- Kein Besuch seit (Stunden): die Stunden ohne Besuch, die „Länger kein Besuch“ auslösen (standardmäßig 24).
- Sprache der Namen: Sprache der Funktionsnamen und der Szenen-Ergebnisse (standardmäßig Französisch).
Speichere und klicke dann auf Verbindung testen: Das Ergebnis nennt die Version von Matomo, die Zahl der Websites, die eindeutigen Besucher des Tages und die Besucher gerade jetzt.
3. Die Websites anlegen
Öffne den Tab Entdecken: Jede Website wird mit ihrem Namen vorgeschlagen. Lege die an, die du in Gladys sehen willst. Die Szenen-Auslöser und das Widget funktionieren für alle Websites, angelegt oder nicht.
Die Geräte
Jede Website wird ein Gerät mit:
- Besucher gerade jetzt: die Besucher der letzten 30 Minuten, wie im Widget „Echtzeit-Besucher“ von Matomo.
- Eindeutige Besucher heute: eindeutige Besucher des Tages.
- Besuche heute: Besuche des Tages.
- Seitenaufrufe heute: Seitenaufrufe des Tages.
- Zielkonversionen heute: Konversionen aller Ziele der Website.
- Absprungrate heute: der Anteil der Besuche mit nur einer Seite, in Prozent.
„Heute“ ist der Tag der Website in Matomo (ihre Zeitzone, in den Einstellungen der Website): Die Tageszahlen fangen um ihre Mitternacht wieder bei 0 an. Ein unveränderter Wert wird alle 12 Stunden erneut gesendet, damit Gladys ihn aktuell hält. Das Abzeichen der Geräte zeigt „lokal“ für deinen eigenen Server, „Cloud“ für die Matomo Cloud und „nicht erreichbar“, wenn Matomo nicht antwortet.
Dashboard
Das Widget Matomo heute zeigt fünf Kacheln (Besucher gerade jetzt, eindeutige Besucher, Besuche, Seitenaufrufe und Ziele des Tages), summiert über die gezeigten Websites, dann eine Zeile pro Website mit ihren eindeutigen Besuchern des Tages und ihren Besuchern gerade jetzt, die meistbesuchte zuerst. Wähle in den Einstellungen des Widgets Websites, um nur diese zu zeigen (in Gladys angelegte Geräte). Der Knopf Aktualisieren liest Matomo neu.
Szenen
Auslöser
- Besucheransturm: Die Besucher gerade jetzt einer Website erreichen die Schwelle der Konfiguration. Einmal pro Ansturm, und mindestens 30 Minuten zwischen zwei Meldungen für eine Website: Ein Ansturm, der am Ende der Pause noch anhält, wird dann gemeldet. Variablen: Name der Website, Domain, Besucher gerade jetzt, Schwelle.
- Erster Besucher des Tages: Eine Website empfängt ihren ersten Besucher des Tages. Variablen: Name der Website, Domain, eindeutige Besucher heute.
- Ziel erreicht: Eine Website verzeichnet neue Zielkonversionen. Variablen: Name der Website, Domain, neue Konversionen, Konversionen heute.
- Länger kein Besuch: Eine Website mit Besuchen erhält für die Stunden der Konfiguration keine mehr: Vielleicht ist der Tracking-Code kaputt oder die Website ausgefallen. Einmal, bis wieder ein Besuch kommt. Variablen: Name der Website, Domain, Stunden ohne Besuch.
Jeder Auslöser lässt sich auf einige Websites begrenzen (leer: alle). Was die
Auslöser sich merken, liegt im Volume /data: Ein Neustart von Gladys oder
der Integration meldet einen Ansturm, einen ersten Besucher oder eine
Konversion nicht doppelt. Beim ersten Lesen einer Website wird nichts
gemeldet: Ein laufender Ansturm oder eine laufende Stille wird nur vermerkt.
War die Integration gestoppt, werden die Konversionen und der erste Besucher
der Zwischenzeit beim ersten Lesen nach dem Neustart gemeldet.
Aktionen
- Zahlen einer Website lesen: liefert den Namen (
name), die Besucher gerade jetzt (active), dievisitors,visits,pageviews,conversionsundbounce_ratedes Tages und einen fertigen Satz (sentence), zum Beispiel „Blog: 15 Besuche und 41 Seitenaufrufe heute, 2 gerade jetzt, 1 Zielkonversion(en).“.
Szenen-Ideen
- Wenn Ziel erreicht für deinen Shop auslöst, schicke eine Telegram-Nachricht „{{website}}: {{conversions}} neue Konversion(en), {{total}} heute“.
- Wenn Länger kein Besuch auslöst, schicke eine Benachrichtigung „Kein Besuch auf {{website}} seit {{hours}} h: Prüfe den Tracking-Code“.
- Jeden Abend um 21 Uhr Zahlen einer Website lesen und den Satz als Nachricht schicken.
- Mit der Funktion Besucher gerade jetzt als Szenen-Bedingung eine Lampe grün leuchten lassen, solange jemand auf der Website ist.
Fehlerbehebung
- „Token abgelehnt“: Das Token ist falsch, gelöscht oder abgelaufen: Erstelle ein neues unter Persönlich → Sicherheit.
- „kein Matomo unter dieser Adresse“: Prüfe Adresse und Port; es ist der
Ordner, in dem
index.phpliegt. - „die Adresse leitet um“: Gib direkt die
https://-Adresse ein. - „Zertifikat abgelehnt“: Das HTTPS-Zertifikat ist selbst signiert oder
abgelaufen: Nutze in deinem Netz die
http://-Adresse, oder ein vertrauenswürdiges Zertifikat. - „Matomo meldet einen Fehler“: Die Protokolle der Integration nennen die Meldung von Matomo (Datenbankfehler, deaktiviertes Plugin…).
- Eine Website fehlt: Der Benutzer des Tokens braucht dort den Zugriff Ansicht. Die Liste wird alle 10 Minuten neu gelesen, oder mit Suchen im Tab „Entdecken“.
- Die Tageszahlen bewegen sich in Stufen: Matomo berechnet sie standardmäßig höchstens alle 15 Minuten neu (Administration → System → Allgemeine Einstellungen → Berichte höchstens alle X Sekunden archivieren), oder bei jedem Archivierungs-Cronjob, wenn die Archivierung durch den Browser abgeschaltet ist. „Ziel erreicht“ folgt ihnen. Die Besucher gerade jetzt sind immer live.
- Zielkonversionen heute bleibt leer: Das Plugin Goals ist deaktiviert. Besucher gerade jetzt bleibt leer: Das Plugin Live oder das Besuchsprotokoll ist deaktiviert.
- Die Protokolle der Integration (Integrationen → Matomo) sagen mehr; bei einem normalen Lesezyklus wird dort nichts geschrieben.
Grenzen
- Nur Lesen: Die Integration ändert nichts in Matomo.
- Die Zahlen sind die von Matomo zum Zeitpunkt des Lesens, mit dem Aktualisierungsintervall als Verzögerung (und der Archivierung von Matomo für die Tageszahlen).
- Ein Matomo-Server pro Integration, höchstens 200 Websites.
- Die Schwellen von „Besucheransturm“ und „Länger kein Besuch“ gelten für alle Websites gleich; „Ziel erreicht“ zählt alle Ziele einer Website zusammen.
- Matomo 3 und älter werden nicht unterstützt.
- Noch nicht mit der Matomo Cloud getestet, und nicht mit Matomo oder InnoCraft verbunden.
Konfigurationseinstellungen
Diese Einstellungen fragt Matomo in seinem Konfigurationsbildschirm in Gladys ab.
| Einstellung | Typ | Pflichtfeld | Beschreibung |
|---|---|---|---|
| Dein Matomo | section | Nein | Die Adresse deines Matomo (selbst gehostet oder Matomo Cloud) und ein Authentifizierungs-Token eines Benutzers mit Lesezugriff (Persönlich → Sicherheit → Authentifizierungs-Tokens). Lege dann die Websites im Tab „Entdecken“ an. |
| Matomo-Adresse | string | Ja | Die Adresse, mit der du Matomo öffnest, z. B. https://stats.example.org oder https://example.matomo.cloud. |
| Authentifizierungs-Token | secret | Ja | token_auth eines Benutzers nur mit Lesezugriff: 32 Zeichen. |
| Optionen | section | Nein | |
| Aktualisierungsintervall | select | Nein | Wie oft Matomo gelesen wird: jedes Mal eine API-Anfrage für bis zu 20 Websites. |
| Besucheransturm ab | number | Nein | Gleichzeitige Besucher (letzte 30 Minuten), die den Szenen-Auslöser „Besucheransturm“ auslösen. |
| Kein Besuch seit (Stunden) | number | Nein | Stunden ohne Besuch, die den Szenen-Auslöser „Länger kein Besuch“ auslösen. |
| Sprache der Namen | select | Nein | Sprache der Funktionsnamen (beim Anlegen eines Geräts festgelegt) und der Szenen-Ergebnisse. |
So installierst du Matomo in Gladys
- Öffne in Gladys Integrationen: Matomo erscheint im Katalog neben den nativen Integrationen, mit einem Community-Badge.
- Klicke auf Installieren. Gladys lädt das Docker-Image (
ghcr.io/guim31/gladys-matomo:1.0.0) herunter, startet es in einer vom Kern isolierten Sandbox und erzeugt die Oberfläche der Integration (Geräte, Erkennung und Konfiguration). - Öffne den Bildschirm Konfiguration der Integration, fülle die Einstellungen aus und speichere.
- Du kannst sie auch direkt über die URL ihres Repositorys installieren: https://github.com/guim31/gladys-matomo.
Matomo 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
Matomo 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.
- Alle Integrationen durchsuchen, native und aus der Community
- Deine eigene externe Integration bauen und veröffentlichen
- Quellcode auf GitHub — Quelle dieser Dokumentation