maubot-ntfy

Ein maubot-Plugin, um ntfy-Topics zu abonnieren und deren Nachrichten in einen Matrix-Raum weiterzuleiten.

Funktionen

  • Abonnieren von ntfy-Topics direkt aus einem Matrix-Raum
  • Automatische Weiterleitung eingehender ntfy-Nachrichten an abonnierte Räume
  • Unterstützung von Titeln, Tags, Emojis, Anhängen, Klick-URLs und View-Actions
  • Konfigurierbare Berechtigungen (Admins und Power-Level ≥ 50)
  • Persistente Speicherung der Abonnements in einer Datenbank
  • Automatisches Wiederverbinden bei Verbindungsabbrüchen

Voraussetzungen

  • Eine laufende maubot-Instanz
  • Python-Paket emoji (Version ≥ 2.0) für vollständige Emoji-Unterstützung (optional, aber empfohlen)

Installation

  1. Das Plugin als .mbp-Datei bauen oder herunterladen.
  2. In der maubot-Verwaltungsoberfläche als Plugin hochladen.
  3. Eine neue Instanz des Plugins erstellen und konfigurieren.

Hinweis: Solange maubot das automatische Installieren von Python-Abhängigkeiten nicht unterstützt, muss das emoji-Paket manuell installiert werden (pip install emoji).

Konfiguration

Die Konfiguration erfolgt über die maubot-Instanz-Einstellungen. Die Standardwerte befinden sich in der Datei base-config.yaml:

# Befehlspräfix für alle Befehle dieses Bots (muss in Matrix mit ! vorangestellt werden)
command_prefix: ntfy

# Benutzer, die den Bot immer steuern dürfen
admins:
  - "@admin:example.com"
Einstellung Beschreibung
command_prefix Präfix für alle Bot-Befehle (Standard: ntfy, Aufruf in Matrix: !ntfy)
admins Liste von Matrix-Benutzern, die den Bot unabhängig vom Power-Level steuern dürfen

Benutzer, die nicht in der Admin-Liste stehen, benötigen ein Power-Level von mindestens 50 im jeweiligen Raum.

Befehle

Befehl Alias Beschreibung
!ntfy subscribe server/topic !ntfy sub server/topic Aktuellen Raum für ein ntfy-Topic abonnieren
!ntfy unsubscribe server/topic !ntfy unsub server/topic Abonnement eines ntfy-Topics für diesen Raum aufheben

Beispiele

!ntfy subscribe ntfy.sh/mein_topic
!ntfy unsub ntfy.sh/mein_topic

Das Topic-Format ist immer server/topic, z. B. ntfy.sh/mein_topic oder mein-server.de/alerts.

Nachrichtenformat

Eingehende ntfy-Nachrichten werden als formatierte Matrix-Nachrichten weitergeleitet und enthalten:

  • Topic-Herkunft (server/topic)
  • Titel (falls vorhanden, optional mit Klick-URL verlinkt)
  • Nachrichtentext
  • Emoji-Tags (als Präfix vor Titel/Text)
  • Weitere Tags (als Code-Block unter der Nachricht)
  • View-Actions (als anklickbare Links)
  • Anhänge (als Download-Link)

Lizenz

Dieses Projekt ist unter der AGPL-3.0-or-later lizenziert.


Fork-Hinweis: Dieses Projekt ist ein Fork des originalen maubot-ntfy von catgirl.cloud.

Description
No description provided
Readme AGPL-3.0 119 KiB
Languages
Python 100%