simplify scriptpubkey tracking
This commit is contained in:
parent
3074d814e7
commit
38e9021e8c
@ -190,18 +190,14 @@ class WebsocketHandler {
|
|||||||
matchedAddress = matchedAddress.toLowerCase();
|
matchedAddress = matchedAddress.toLowerCase();
|
||||||
}
|
}
|
||||||
if (/^04[a-fA-F0-9]{128}$/.test(parsedMessage['track-address'])) {
|
if (/^04[a-fA-F0-9]{128}$/.test(parsedMessage['track-address'])) {
|
||||||
client['track-address'] = null;
|
client['track-address'] = '41' + matchedAddress + 'ac';
|
||||||
client['track-scriptpubkey'] = '41' + matchedAddress + 'ac';
|
|
||||||
} else if (/^(02|03)[a-fA-F0-9]{64}$/.test(parsedMessage['track-address'])) {
|
} else if (/^(02|03)[a-fA-F0-9]{64}$/.test(parsedMessage['track-address'])) {
|
||||||
client['track-address'] = null;
|
client['track-address'] = '21' + matchedAddress + 'ac';
|
||||||
client['track-scriptpubkey'] = '21' + matchedAddress + 'ac';
|
|
||||||
} else {
|
} else {
|
||||||
client['track-address'] = matchedAddress;
|
client['track-address'] = matchedAddress;
|
||||||
client['track-scriptpubkey'] = null;
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
client['track-address'] = null;
|
client['track-address'] = null;
|
||||||
client['track-scriptpubkey'] = null;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -532,16 +528,6 @@ class WebsocketHandler {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (client['track-scriptpubkey']) {
|
|
||||||
const foundTransactions = Array.from(addressCache[client['track-address']]?.values() || []);
|
|
||||||
// txs may be missing prevouts in non-esplora backends
|
|
||||||
// so fetch the full transactions now
|
|
||||||
const fullTransactions = (config.MEMPOOL.BACKEND !== 'esplora') ? await this.getFullTransactions(foundTransactions) : foundTransactions;
|
|
||||||
if (foundTransactions.length) {
|
|
||||||
response['address-transactions'] = JSON.stringify(fullTransactions);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (client['track-asset']) {
|
if (client['track-asset']) {
|
||||||
const foundTransactions: TransactionExtended[] = [];
|
const foundTransactions: TransactionExtended[] = [];
|
||||||
|
|
||||||
@ -809,23 +795,6 @@ class WebsocketHandler {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (client['track-scriptpubkey']) {
|
|
||||||
const foundTransactions: TransactionExtended[] = Array.from(addressCache[client['track-scriptpubkey']]?.values() || []);
|
|
||||||
|
|
||||||
if (foundTransactions.length) {
|
|
||||||
foundTransactions.forEach((tx) => {
|
|
||||||
tx.status = {
|
|
||||||
confirmed: true,
|
|
||||||
block_height: block.height,
|
|
||||||
block_hash: block.id,
|
|
||||||
block_time: block.timestamp,
|
|
||||||
};
|
|
||||||
});
|
|
||||||
|
|
||||||
response['block-transactions'] = JSON.stringify(foundTransactions);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (client['track-asset']) {
|
if (client['track-asset']) {
|
||||||
const foundTransactions: TransactionExtended[] = [];
|
const foundTransactions: TransactionExtended[] = [];
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user