Zum Hauptinhalt springen

Trilium Notes Smart-Home-Integration, kostenlos und Open Source

Trilium Notes-Integration für Gladys Assistant

Deine Trilium-Notizen in Gladys: Zähler, Aufgaben, geänderte Notizen, Tagesjournal aus Szenen.

Verbinde Gladys mit Trilium Notes (TriliumNext), der selbst gehosteten hierarchischen Notiz-Anwendung: Verfolge deine Zähler und offenen Aufgaben, reagiere, wenn eine Notiz erstellt oder geändert wird, erstelle Notizen aus deinen Szenen und führe ein Journal des Hauses in der Tagesnotiz von Trilium, das Gladys Zeile für Zeile füllt. Alles bleibt in deinem lokalen Netzwerk: Gladys spricht direkt mit deinem Trilium-Server, über seine ETAPI.

Getestet mit einem echten TriliumNext v0.106.1 (dem Docker-Image triliumnext/trilium). Rückmeldungen sind im Gladys-Forum willkommen.

Voraussetzungen​

  • Gladys Assistant 5.1 oder neuer.
  • Ein Trilium-Server, den der Gladys-Rechner erreicht: TriliumNext (getestet mit 0.106.1; ältere Versionen mit ETAPI sollten gehen, ungetestet). Die Desktop-Anwendung allein hat keinen Server: Nutze ihre Server-Ausgabe oder einen Synchronisationsserver.
  • Ein ETAPI-Token: Öffne in Trilium Optionen → ETAPI und klicke auf Neues ETAPI-Token erstellen. Kopiere es: Es wird nur einmal angezeigt.

Konfiguration​

  1. Öffne den Tab Konfiguration der Integration.
  2. Gib unter Trilium-Adresse die Adresse ein, unter der du Trilium öffnest, zum Beispiel 192.168.1.50:8080 oder https://notes.example.org.
  3. Füge das ETAPI-Token ein.
  4. Trilium lesen alle: 5, 15 (Standard), 30 oder 60 Minuten. Geänderte Notizen werden beim nächsten Lesen gemeldet.
  5. Label der Aufgaben: das Label deiner Aufgaben, standardmäßig todo. Eine Aufgabe ist offen, solange die Notiz dieses Label trägt und nicht das Label #done.
  6. Sprache der Namen und Meldungen legt die Namen der Funktionen (beim Hinzufügen des Geräts festgelegt) und die Texte der Integration fest. Standardmäßig Französisch.
  7. Speichere und nutze dann Verbindung testen: Es zeigt die Version von Trilium und die Anzahl der Notizen.
  8. Füge im Tab Erkennung das Gerät Trilium hinzu.

Geräte​

Trilium (ein Gerät für den Server):

FunktionWert
NotizenAnzahl der Notizen (ohne archivierte und versteckte)
Heute geänderte Notizenseit Mitternacht erstellte oder geänderte Notizen
Offene AufgabenNotizen mit dem Aufgaben-Label und ohne #done
Zuletzt geänderte NotizTitel der zuletzt erstellten oder geänderten Notiz

Die Zähler behalten ihren Verlauf. Das Gerät behält seine Identität, wenn sich die Adresse des Servers ändert.

Dashboard-Widget​

Trilium: drei Kacheln (Notizen, heute geändert, Aufgaben) und die acht zuletzt geänderten Notizen mit der Uhrzeit der Änderung. In den Widget-Einstellungen listet Label (zum Beispiel todo oder einkauf) stattdessen die Notizen, die es tragen und nicht #done: eine Aufgabenliste auf dem Dashboard. Zähler ausblenden behält nur die Liste. Wenn Trilium über https erreicht wird, öffnet sich jede Notiz in Trilium.

Szenen-Auslöser​

  • Trilium-Notiz erstellt oder geändert: Eine Notiz wird in Trilium erstellt oder geändert. Filter: Änderung (erstellt, geändert oder leer: beide).
  • Trilium-Notiz mit Label geändert: dasselbe für die Notizen mit einem Label: Label (Pflicht, der Name des Labels ohne #, genau wie in Trilium, z. B. todo) und Änderung. Geerbte Labels und die einer Vorlage zählen mit. Eine Notiz mit mehreren Labels löst einmal pro Label-Name aus: Eine Szene auf ein Label läuft einmal.

Variablen: Titel der Notiz, Änderung (created oder updated), Adresse der Notiz, Labels (die der Notiz selbst, als #name=wert), Notiz-ID und Label für den zweiten Auslöser.

Das erste Lesen nach der Installation ist still: Die schon vorhandenen Notizen werden nicht gemeldet. Die von dieser Integration geschriebenen Notizen werden nie gemeldet. Höchstens zehn Notizen werden pro Lesen gemeldet, die ältesten zuerst; die nächsten warten auf das nächste Lesen. Ab 50 Änderungen zwischen zwei Lesevorgängen (ein Import) werden zehn gemeldet und der Rest als gesehen gezählt.

Szenen-Aktionen​

  • Zeile zur Trilium-Tagesnotiz hinzufügen: Zeile, am Ende der heutigen Notiz des Trilium-Journals als neuer Absatz hinzugefügt, mit der Uhrzeit vorneweg, außer Mit der Uhrzeit beginnen ist aus. Trilium erstellt die Tagesnotiz (und ihren Monat und ihr Jahr), wenn sie fehlt, nach deiner Tagesvorlage, falls du eine hast. Die Zeile wird als reiner Text geschrieben.
  • Trilium-Notiz erstellen: Titel und bei Bedarf Übergeordnete Notiz (der genaue Titel oder die ID einer vorhandenen Notiz; leer: die Wurzel), Inhalt (reiner Text, ein Absatz pro Zeile) und Labels (durch Kommas getrennt, name=wert für ein Label mit Wert). Das Aufgaben-Label (standardmäßig todo) macht sie zur Aufgabe. Eine unbekannte übergeordnete Notiz ist ein Fehler: Die Integration erstellt nie eine.

Beide geben Notiz-ID, Titel der Notiz und Adresse der Notiz zurück; Trilium-Notiz erstellen gibt auch Übergeordnete Notiz zurück.

Szenen-Beispiele​

  • Hausjournal: Wenn der Heizungsdruck unter 1 bar fällt → Zeile zur Trilium-Tagesnotiz hinzufügen, „Heizungsdruck unter 1 bar“. Jeden Tag hält die Tagesnotiz fest, was im Haus passiert ist.
  • Aufgabe per Sprache: eine Sprachszene → Trilium-Notiz erstellen, übergeordnet Einkauf, Titel aus der Anfrage, Labels todo. Der Zähler Offene Aufgaben und das Widget zeigen sie.
  • Wissen, was sich geändert hat: Auslöser Trilium-Notiz mit Label geändert, Label familie → eine Nachricht senden „{{triggerEvent.data.note_title}} wurde geändert“.
  • Aufgaben-Erinnerung: jeden Abend, wenn Offene Aufgaben über 5 liegt → eine Nachricht senden.

Fehlerbehebung​

  • „Trilium hat das ETAPI-Token abgelehnt“: Das Token wurde gelöscht oder falsch abgeschrieben. Erstelle ein neues unter Optionen → ETAPI.
  • „Trilium antwortet nicht“: Prüfe Adresse und Port vom Gladys-Rechner aus. Der Container nutzt ein Bridge-Netzwerk: localhost ist der Container selbst, gib stattdessen die IP-Adresse des Servers ein.
  • „Trilium antwortet unter einer anderen Adresse“: Die Adresse leitet weiter, meist von http zu https. Gib die Adresse ein, bei der dein Browser landet, mit https://.
  • „Diese Adresse antwortet nicht wie Trilium“: Eine Anmeldeseite eines Proxys antwortet statt Trilium. Gib die Adresse von Trilium selbst ein.
  • „Die Tagesnotiz ist geschützt“: Trilium gibt den Inhalt einer geschützten Notiz nicht an die ETAPI heraus. Hebe den Schutz des Journals auf oder schreibe mit Trilium-Notiz erstellen woanders hin.
  • Für mehr Details in den Logs der Integration setze LOG_LEVEL=debug.

Grenzen​

  • Die Auslöser feuern beim nächsten Lesen (standardmäßig 15 Minuten), nicht sofort: Trilium schickt nichts von sich aus. Gelöschte oder verschobene Notizen werden nicht gemeldet, ebenso wenig ein allein hinzugefügtes Label (Trilium ändert dann die Änderungszeit der Notiz nicht); eine zwischen zwei Lesevorgängen mehrfach gespeicherte Notiz wird einmal gemeldet.
  • Geschützte Notizen werden gezählt, ihr Inhalt wird aber nie gelesen oder geschrieben, und ihr Titel erscheint als „Geschützte Notiz“.
  • Archivierte Notizen werden überall ignoriert: Zähler, Aufgaben und Auslöser.
  • Ein Lesen besteht aus ein paar ETAPI-Suchen. Die Zählungen lesen die Liste der Notizen als Stream, ohne sie zu behalten: Eine Datenbank mit zehntausenden Notizen passt in den Speicher des Containers, braucht aber etwas länger zum Zählen.
  • Die Integration löscht oder verschiebt nie etwas in Trilium.
  • Nicht verbunden mit Trilium Notes oder TriliumNext.

Konfigurationseinstellungen​

Diese Einstellungen fragt Trilium Notes in seinem Konfigurationsbildschirm in Gladys ab.

EinstellungTypPflichtfeldBeschreibung
Trilium verbindensectionNeinGib die Adresse deines Trilium-Servers (Trilium Notes oder TriliumNext) und ein ETAPI-Token ein: Öffne in Trilium Optionen → ETAPI → Neues ETAPI-Token erstellen.
Trilium-AdressestringJaDie Adresse, unter der du Trilium im Browser öffnest.
ETAPI-TokensecretJaWird nur einmal angezeigt, beim Erstellen des Tokens.
Trilium lesen alleselectNeinGeänderte Notizen werden beim nächsten Lesen gemeldet.
Label der AufgabenstringNeinOffene Aufgaben sind die Notizen mit diesem Label und ohne #done.
Sprache der Namen und MeldungenselectNeinDie Namen der Funktionen werden beim Hinzufügen eines Geräts zu Gladys festgelegt.

So installierst du Trilium Notes in Gladys​

  1. Öffne in Gladys Integrationen: Trilium Notes 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-trilium: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-trilium.

Trilium Notes 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​

Trilium Notes 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 🙂