Bitcoind

Bitcoind walletnotify 僅在交易獲得第一次確認時執行

  • November 11, 2020

我已經成功配置了 bitcoind 和 walletnotify 以在 testnet 中的每筆存款交易上執行。問題是 walletnotify 僅在交易獲得第一次確認時才會命中,而當交易剛剛創建並且有 0 個確認時沒有任何反應。

這是我的 bitcoin.conf

blocksonly=1
daemon=1
maxconnections=20
maxuploadtarget=500
testnet=1
rpcuser=someuser
rpcpassword=somepassword
server=1
keypool=1000
walletnotify=/home/ubuntu/walletnotify.sh %s

這是 walletnotify.sh 的內容

#!/bin/bash
F=/home/ubuntu/wallet_transaction_log
D=`date +"%Y%m%d%H%M%S"`
echo ${D} - ${1} >> ${F}

它只是在 wallet_transaction_log 中寫入每筆交易的 DateTime 和 txid

錢包交易日誌

20201111135218 - d0cafe97f46ae3f8fb0bda6234a5c7a54ecb7053da10d9c393e261e0f6ab8295
20201111135921 - dfdd50db6e4508a4221ab144d8b33d77620d324d2a4667b64882e0a608b2bf80

有什麼我想念的嗎?

正如您blocksonly=1在 bitcoin.conf 中設置的那樣,您處於僅塊模式。這意味著您的節點不會接收或中繼未確認的交易。您只能看到塊和塊中的交易。因此,您的節點第一次看到傳入交易是在它首次包含在塊中時。

引用自:https://bitcoin.stackexchange.com/questions/99961