Home » Bitcoin » Lightning TipBot und Wallet für Matrix

Lightning TipBot und Wallet für Matrix

Der Matrix-Lightning-Tip-Bot (MLTB) ist ein eigenständiger Bitcoin-Lightning-Tip-Bot für das Matrix-Netzwerk. Er erlaubt es Nutzern, direkt in Matrix-Räumen unkompliziert und schnell Satoshis zu senden, sich für hilfreiche Beiträge zu bedanken, Lightning-Adressen zu generieren, Rechnungen zu bezahlen oder Spenden zu empfangen.

Das Projekt orientiert sich konzeptionell an dem bekannten LightningTipBot für Telegram, erweitert es aber für den Einsatz auf Matrix, einer dezentralen Kommunikationsplattform. Die ursprüngliche Initiative stammt von @AE9999, der den Grundstein gelegt hat. Die Arbeit wurde aber von ursprünglichen Entwickler nicht mehr fortgesetzt und hat auch nicht mehr zuverlässig funktioniert. Meine Arbeit besteht darin, den Bot aktiv weiterzuentwickeln, zu warten und um neue Features zu ergänzen.

Das Projekt befindet sich nach wie vor im Beta-Stadium. Deshalb gilt der ausdrückliche Hinweis: Nutzer sollten nur so viele Mittel einzahlen, wie sie auch bereit sind zu verlieren. Falls ihr Lust habt, könnt ihr den Bot gerne auf unserem Matrix Server ausprobieren! Wer selber hosten will, und nen eigenen Matrix und LNBits Server betreibt, der kann der Anleitung unten folgen!

Github Repository erkunden

Zuerst könnt ihr mein Github Repo erkunden und euch mal durchsehen was der Bot so macht. Der Bot ist Open Source und funktioniert zusammen mit Matrix-Synapse und LNBits als Lightning Accounting System.

https://github.com/warioishere/matrix-lightning-tip-bot

Nutzungsmöglichkeiten

Der Bot kann auf zwei Weisen verwendet werden:

  1. Direkt über unsere gehostete Instanz
    Unter der Matrix Account Adresse @lightning-wallet-bot:matrix.yourdevice.ch steht eine öffentlich zugängliche MLTB-Instanz zur Verfügung. Interessierte Nutzer laden den Bot einfach in einen Matrix-Raum ein. Nach dem Beitritt präsentiert der Bot sofort eine Übersicht der verfügbaren Befehle.
  2. Eigenes Hosting
    Für mehr Kontrolle über den Bot und die angebundenen Lightning-Wallets können Betreiber MLTB selbst hosten. Dafür wird eine eigene LNbits-Instanz benötigt, die die User-API (/users/api/v1/user) bereitstellt. Auf LNBits muss natürlich ein Lightning Backend eingerichtet sein.

Unterstützte Befehle

Der Funktionsumfang ist bereits jetzt bemerkenswert breit. Zu den wichtigsten Kommandos gehören:

  • !help – Lies diese Hilfe: !help
  • !help-boltz-swaps – Erfahre, wie Swaps und Rückerstattungen funktionieren: !help-boltz-swaps
  • !tip – Auf eine Nachricht antworten, um zu tippen: !tip <Betrag> [<Notiz>]
  • !generate-ln-address – Erzeuge deine eigene LN-Adresse: !generate-ln-address <dein Adressname>
  • !show-ln-addresses – Zeige deine erzeugten LN-Adressen: !show-ln-addresses
  • !balance – Prüfe dein Guthaben: !balance
  • !send – Sende Guthaben an einen Nutzer: !send <Betrag> <@Benutzer> oder <@Benutzer:domain.com> oder <lightningadresse@deinedomain.com> [<Notiz>]
  • !invoice – Erhalte Zahlungen über Lightning: !invoice <Betrag> [<Notiz>]
  • !pay – Bezahle eine Lightning-Rechnung: !pay <Rechnung>
  • !transactions – Liste deine Transaktionen auf: !transactions
  • !link-to-zeus-wallet – Verbinde dein Wallet in Zeus: !link-to-zeus-wallet
  • !donate – Spende an das matrix-lightning-tip-bot Projekt: !donate <Betrag>
  • !party – Starte eine Party: !party
  • !fiat-to-sats – Wandle Fiat in Satoshis um: !fiat-to-sats <Betrag> <Währung (USD, EUR, CHF)>
  • !sats-to-fiat – Wandle Satoshis in Fiat um: !sats-to-fiat <Betrag> <Währung (USD, EUR, CHF)>
  • !boltz-onchain-to-offchain – Tausche Onchain-BTC in Lightning: !boltz-onchain-to-offchain <Betrag> <Refund-Adresse>
  • !boltz-offchain-to-onchain – Tausche Lightning in Onchain-BTC: !boltz-offchain-to-onchain <Betrag> <Onchain-Adresse>
  • !refund – Erstatte einen fehlgeschlagenen Swap: !refund <swap_id>
  • !version – Zeigt die Version dieses Bots an: !version

In privaten Direktnachrichten können alle Befehle ohne führendes ! eingegeben werden.

Einrichtung einer eigenen Instanz

Wer MLTB selbst betreiben möchte, findet eine detaillierte Schritt-für-Schritt-Anleitung:

Ladet das Repo in einen Ordner eurer Wahl herunter. Es empfiehlt sich für Programme immer einen eigenständigen Nutzer zu verwenden und nicht als root zu arbeiten.

  1. Vorbereitung
    • Auf die aktuelle LNbits-Version (≥1.0.0) Upgraden. Das Plugin Usermanager wird nicht mehr benötigt.
    • openjdk-17-jdk und libsqlite3-dev auf dem Server bereitstellen.
  2. Benutzer anlegen
    • Neuen Benutzer in LNbits anlegen, der Wallets verwaltet.
    • Die User-API muss aktiviert sein.
    • LNDHub aktivieren, um Wallets in Zeus zu verknüpfen.
    • X-Api-Key und Bearer Token kopieren.
  3. Docker-Image bauen
    • Docker installieren.
    • Image mit ./gradlew buildDocker erstellen.
  4. Lokale SQLite-Datenbank generieren
    • Rust installieren.
    • diesel_cli für SQLite mit cargo install diesel_cli --no-default-features --features sqlite installieren.
    • Datenbank via diesel migration run erzeugen.
  5. Matrix-Account für den Bot
    • Auf dem Matrix-Server einen dedizierten Benutzer erstellen.
  6. Konfigurationsdatei erstellen (config.conf)
    Die Konfiguration umfasst:
--matrix-server=https://matrix.my-matrixserver.org
--matrix-username=bot-user
--matrix-password=geheim
--lnbits-url=https://meine-lnbits.com
--lnbits-bearer-token=<BEARER-TOKEN>
--lnbits-api-key=<API-KEY>
--database-url=/data/db/tipbot.db
--allowed-matrix-server=https://matrix.my-matrixserver.org

Container starten
Beispiel:

docker run -d \
  --name matrix-tipbot \
  --restart always \
  -v /opt/lntipbot/data/config/config.conf:/data/config/config.conf \
  -v /opt/lntipbot/data/db/tipbot.db:/data/db/tipbot.db \
  matrix-lightning-tip-bot matrix-lightning-tip-bot @/data/config/config.conf

Alternativ lässt sich ein docker-compose Setup nutzen. Hierzu wird eine .env-Datei benötigt, die die relevanten Verzeichnisse definiert.

Geplante Weiterentwicklungen (TODOs)

Einige wichtige Meilensteine sind bereits erfolgreich umgesetzt worden, andere stehen noch an:

✅ Boltz Swaps direkt über den Bot laufen lassen um seine Wallet aufzuladen
✅ Unterstützung für eigene Lightning-Adressen per Befehl
✅ Information bei Bezahlung erstellter Rechnungen
✅ Einschränkung auf spezifische Matrix-Instanzen
✅ Benachrichtigungen bei Spenden
✅ Fiat-/Sats-Währungsumrechner
✅ Direktes Senden an Lightning-Adressen
✅ Transaktionsübersicht
✅ Anzeige der eigenen Lightning-Adresse
✅ Verknüpfung mit der Zeus-Wallet-App

Kontakt & Community

Für Support und Austausch gibt es einen öffentlichen Matrix-Raum:

https://matrix.to/#/#bitcoin:matrix.yourdevice.ch

BTC-Spenden sind ebenfalls willkommen. Die Lightning-Adresse lautet:

wario@btcpay.yourdevice.ch

Fazit

Mit MLTB ist es mir gelungen, eine einfach nutzbare und flexible Lösung für Bitcoin-Lightning-Tipps in Matrix zu schaffen. Dank der Docker- und LNbits-Anbindung bleibt die Einrichtung trotz der Komplexität des Themas für technisch versierte Betreiber gut machbar. Das Projekt verfolgt konsequent das Ziel, Lightning-Zahlungen breiter nutzbar zu machen und nahtlos in dezentrale Kommunikationsplattformen zu integrieren.

Der Bot ist ein praktisches Werkzeug für Communities, die Wert auf digitale Souveränität und unkomplizierte Mikrozahlungen legen – und ein spannender Beleg dafür, wie Open-Source-Ökosysteme zusammenwachsen können.

Ähnliche Beiträge

  • Welche Kryptographien verwendet Bitcoin

    In diesem Artikel geht es um die Kryptographien welche Bitcoin verwendet. Bitcoin verwendet eine Reihe verschiedener kryptographischer Techniken, um seine Sicherheit und Funktionalität zu gewährleisten. Dieser Bericht bietet einen Überblick...

  • Wie funktioniert die Bitcoin Blockchain

    In diesem Artikel erkläre ich Euch auf einfache Art und Weise, wie die Bitcoin Blockchain funktioniert. Die Bitcoin Blockchain ist das Rückgrat des Bitcoin-Netzwerks. Sie ist eine öffentliche, dezentrale und...

  • Satoshis Kleinanzeigen - Die Bitcoin Handelsplattform

    In der Welt der Kryptowährungen gibt es immer mehr Anwendungen und Plattformen, die die Vorteile von Bitcoin und Blockchain-Technologie nutzen, um alltägliche Transaktionen und Dienstleistungen zu revolutionieren. Eine dieser innovativen...

  • Was ist die Hashrate

    Die Hashrate ist ein wesentlicher Indikator für die Gesundheit und Sicherheit des Bitcoin-Netzwerks. Sie misst die Menge an Rechenleistung, die dem Netzwerk zur Verfügung steht, und spielt eine entscheidende Rolle...

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert