doc/zmq: Add detailed descriptions for {hash,raw}wallettx topics

This commit is contained in:
Luke Dashjr 2022-05-01 23:30:15 +00:00
parent 7b41419e8d
commit 1b2ac0d6bf

View File

@ -76,8 +76,10 @@ The option to set the PUB socket's outbound message high water mark
-zmqpubhashtxhwm=n
-zmqpubhashblockhwm=n
-zmqpubhashwallettxhwm=n
-zmqpubrawblockhwm=n
-zmqpubrawtxhwm=n
-zmqpubrawwallettxhwm=n
-zmqpubsequencehwm=n
The high water mark value must be an integer greater than or equal to 0.
@ -95,14 +97,13 @@ corresponds to the notification type. For instance, for the
notification `-zmqpubhashtx` the topic is `hashtx` (no null
terminator). These options can also be provided in bitcoin.conf.
For wallet transaction notifications (both hash and tx), the
topic also indicate if the transaction came from a block
or mempool. If originated from mempool `-mempool` postfix
will be added to the topic, for block `-block` postfix will
be added. Because zeromq is using prefix matching for topics
you can subscribe to `rawwallettx` (or `hashwallettx`) to get
both notifications. If you only want one type of notification
subscribe to either `rawwallettx-mempool` or `rawwallettx-block`.
For wallet transaction notifications (both hashwallettx and rawwallettx), the
topic also indicates if the transaction came from a block or mempool. If
originated from mempool `-mempool` postfix will be added to the topic, for
block `-block` postfix will be added. Because zeromq is using prefix matching
for topics you can subscribe to `rawwallettx` (or `hashwallettx`) to get both
notifications. If you only want one type of notification subscribe to either
`rawwallettx-mempool` or `rawwallettx-block`.
The topics are:
@ -132,6 +133,15 @@ Where the 8-byte uints correspond to the mempool sequence number.
| hashblock | <32-byte block hash in Little Endian> | <uint32 sequence number in Little Endian>
`rawwallettx`: Identical to `rawtx`, except only when transactions are added (or updated) in an open wallet. Full topic is either `rawwallettx-block` for transactions in a block, or `rawwallettx-mempool` otherwise.
| rawwallettx-<"block" or "mempool"> | <serialized transaction> | <uint32 sequence number in Little Endian>
`hashwallettx`: Identical to `hashtx`, except only when transactions are added (or updated) in an open wallet. Full topic is either `hashwallettx-block` for transactions in a block, or `hashwallettx-mempool` otherwise.
| hashwallettx-<"block" or "mempool"> | <32-byte transaction hash in Little Endian> | <uint32 sequence number in Little Endian>
**_NOTE:_** Note that the 32-byte hashes are in Little Endian and not in the Big Endian format that the RPC interface and block explorers use to display transaction and block hashes.
ZeroMQ endpoint specifiers for TCP (and others) are documented in the