Ich möchte eine sehr einfache Adressüberwachungsfunktion auf einer Website implementieren, an der ich arbeite. Ich würde gerne einfach sagen können: „Hören Sie auf diese Adresse im Testnetz, damit Geld hereinkommt“, und den HTML-Code auf der Seite aktualisieren, wenn BTC hereinkommt. Mir ist klar, dass Blockchain.info genau dafür einen Websocket bereitstellt, aber bietet es nicht für die Verwendung auf testnet3.
Ich bin mir sicher, dass ich etwas Offensichtliches übersehe. Jede Hilfe wird sehr geschätzt.
Normalerweise tun Sie dies auf dem Wallet-Service, den Sie verwenden. Sie stellen Server-zu-Server-Benachrichtigungsrückrufe bereit, wenn die Adresse Transaktionen empfängt. Dann parsen Sie diese Transaktion und lassen Ihren On-Server JavaScript-Clients benachrichtigen.
BEARBEITEN : SoChain bietet keine Authentifizierung, WebSockets, API, um Bitcoin-Adressen in Echtzeit zu überwachen. Sie können dies direkt auf Client-seitigem JavaScript verwenden:
https://chain.so/api#realtime-balance-updates
Ich weiß nicht, ob es reine clientseitige JavaScript-APIs mit Benachrichtigungsfunktion gibt - Sie müssen immer Webhooks zu einem Server einrichten oder direkt mit Bitcoin verbunden sein.
Auch gibt es die Frage der Bestätigungsebene - wenn Sie die Transaktion als erhalten betrachten, wie viele Bestätigungen Sie dafür verlangen. In der Regel erhalten Sie für jede neue Bestätigung mehrere Benachrichtigungen.
Ich habe dies in meinem Open-Source-Projekt Liberty Music Store mit blockchain.info getan.
Sehen Sie sich zur Inspiration den entsprechenden blockchain.info-Webhook-Code an, der diese Informationen dann über das Redis-Pub-Sub-Listener-Muster an JavaScript weiterleitet (obwohl in diesem Fall eine HTTP-Long-Abfrage anstelle von WebSockets für die Kompatibilität mit Android 2.3 verwendet wird):
https://github.com/miohtama/LibertyMusicStore/blob/master/tatianastore/blockchain.py#L110
https://github.com/miohtama/LibertyMusicStore/blob/master/tatianastore/static/main.js#L102
https://github.com/miohtama/LibertyMusicStore/blob/master/tatianastore/signals.py#L28
https://github.com/miohtama/LibertyMusicStore/blob/master/tatianastore/storefront.py#L253
Mikko Ohtamaa