Ich meine so etwas wie listtransactions-Methode, aber mit Parameter .
Das wäre schön, aber nein, es gibt keine Möglichkeit, dies zu tun. Der einfachste Weg, diese Informationen zu sammeln, besteht darin, anzurufen listtransactions
oder listunspent
eine Liste der Transaktionen in Ihrem Konto anzufordern.
Nachdem Sie die Liste erhalten haben, filtern Sie nach den benötigten Informationen. Erwähnenswert ist der listunspent
RPC-Aufruf. Dies kann viele zurückgegebene Daten reduzieren, wenn Sie nur an den eingehenden Transaktionen interessiert sind, die Ihren aktuellen Kontostand ausmachen.
Sie können dies nicht mit Bitcoin über den RPC-Befehl tun, aber es gibt im Internet verfügbare Tools, die dies für Sie tun. Blockexplorer hat beispielsweise eine spezielle Abfrage für diesen Zweck. Wenn Sie sehen möchten, wie es gemacht wird, sehen Sie sich Zeile 724 von app_stats.inc an :
// This RELIES on the fact that only address transactions will be sent/received
$result = SQL("SELECT encode(blocks.hash, 'hex') AS block,
encode(transactions.hash, 'hex') AS tx,
blocks.number AS blocknum,
blocks.time AT TIME ZONE 'UTC' AS time,
transactions.id AS tid,
transactions.raw AS rawtx
FROM inputs JOIN transactions ON (inputs.tx = transactions.hash)
JOIN blocks ON (inputs.block = blocks.hash)
WHERE inputs.type = 'Address' AND
blocks.number>$1 AND inputs.hash160 IN ($addresses)
UNION
SELECT encode(blocks.hash, 'hex') AS block,
encode(transactions.hash, 'hex') AS tx,
blocks.number AS blocknum,
blocks.time AT TIME ZONE 'UTC' AS time,
transactions.id AS tid,
transactions.raw AS rawtx
FROM outputs JOIN transactions ON (outputs.tx = transactions.hash)
JOIN blocks ON (outputs.block = blocks.hash)
WHERE outputs.type = 'Address' AND
blocks.number>$1 AND
outputs.hash160 IN ($addresses)
ORDER BY tid;", $blocklimit);
RLH
listunspent
sparen Sie darüber hinaus eine Menge Daten zum Analysieren.