Zum Hauptinhalt springen

Matomo Smart-Home-Integration, kostenlos und Open Source

Matomo-Integration für Gladys Assistant

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:8080 oder https://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), die visitors, visits, pageviews, conversions und bounce_rate des 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.php liegt.
  • „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.

EinstellungTypPflichtfeldBeschreibung
Dein MatomosectionNeinDie 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-AdressestringJaDie Adresse, mit der du Matomo öffnest, z. B. https://stats.example.org oder https://example.matomo.cloud.
Authentifizierungs-TokensecretJatoken_auth eines Benutzers nur mit Lesezugriff: 32 Zeichen.
OptionensectionNein
AktualisierungsintervallselectNeinWie oft Matomo gelesen wird: jedes Mal eine API-Anfrage für bis zu 20 Websites.
Besucheransturm abnumberNeinGleichzeitige Besucher (letzte 30 Minuten), die den Szenen-Auslöser „Besucheransturm“ auslösen.
Kein Besuch seit (Stunden)numberNeinStunden ohne Besuch, die den Szenen-Auslöser „Länger kein Besuch“ auslösen.
Sprache der NamenselectNeinSprache der Funktionsnamen (beim Anlegen eines Geräts festgelegt) und der Szenen-Ergebnisse.

So installierst du Matomo in Gladys​

  1. Öffne in Gladys Integrationen: Matomo 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-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).
  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-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.

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 🙂