Benachrichtigungen, um nur Adressen in Bitcoin zu sehen

Ich fand eine ähnliche Frage, aber meiner Meinung nach ziemlich veraltet: Wie bekomme ich eine sofortige Benachrichtigung über jede Bitcoin-Transaktion mit einer bestimmten öffentlichen Adresse als Empfänger, ohne die Brieftasche oder den privaten Schlüssel zu kennen

Ich habe eine Bitcoin ausgeführt, aber ich habe keine Gelder, die damit verwaltet werden. Ich möchte ein Skript von jeder Transaktion ausführen, die an eine meiner (vielen) Adressen geht. Alle Adressen sind nicht Teil der Bitcoin-Wallet.

Folgendes möchte ich erreichen:

  • Konfigurieren Sie Bitcoin mit einer Liste meiner Adressen (nicht Teil der Brieftasche), könnten etwa 200 sein
  • Entfernen Sie einige Adressen (falls nicht mehr benötigt) aus den Watch-Benachrichtigungen
  • Skript benachrichtigen, wenn eine Transaktion an eine meiner Adressen eintrifft (Mempool-Transaktion, keine Bestätigungen)
  • Benachrichtigen, wenn eine Transaktion bestätigt wird (zum ersten Mal, vielleicht auch zum sechsten Mal)

Mein Setup:

  • Neueste Version von Bitcoin Core (kann aktualisiert werden)
  • Skripte in PHP (könnte eine andere Programmiersprache mit Bindungen an Bitcoin sein)

Grundsätzlich möchte ich die Benachrichtigung an das jeweilige Skript erhalten. Alle relevanten Informationen können über die RPC-API gecrawlt werden. Das Abfragen des Bitcoin muss jedoch eliminiert werden.

Antworten (1)

Sie können den RPC verwenden importaddress, um Adressen ohne zugehörigen privaten Schlüssel zum Wallet hinzuzufügen. Der Wallet-Code listet nun Transaktionen auf, an denen solche Adressen beteiligt sind, und schließt sie in Kontostandsberechnungen ein (obwohl Sie einigen RPC-Aufrufen möglicherweise ein zusätzliches Argument für includeWatchOnly hinzufügen müssen).

Wenn Sie eine Adresse mit bestehenden bestätigten Transaktionen importieren, müssen Sie erneut scannen, was ein langwieriger und langsamer Prozess ist. Wenn Sie sicherstellen, dass Sie importieren, bevor Sie die Adresse irgendwo weitergeben (z. B. weil sie auf einer von Ihnen kontrollierten Offline-Schatzmaschine generiert werden), ist dies jedoch perfekt.

Sie erhalten Benachrichtigungen auf alle üblichen Arten für diese Adressen, einschließlich der Verwendung -walletnotify(mit einem Shell-Skript, das für jede empfangene oder bestätigte Transaktion ausgeführt wird) und ZMQ (falls kompiliert und aktiviert).