From 513d8fe8ecac9e1c0aa707cee0e6fceea77e1619 Mon Sep 17 00:00:00 2001 From: mDuo13 Date: Wed, 15 May 2019 13:12:43 -0700 Subject: [PATCH] Monitoring for transactions: start chaining code --- .../monitor-payments-websocket/chaining.js | 58 +++++++++++++++++++ ...onitor-incoming-payments-with-websocket.md | 2 +- 2 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 content/_code-samples/monitor-payments-websocket/chaining.js diff --git a/content/_code-samples/monitor-payments-websocket/chaining.js b/content/_code-samples/monitor-payments-websocket/chaining.js new file mode 100644 index 0000000000..3cf748a713 --- /dev/null +++ b/content/_code-samples/monitor-payments-websocket/chaining.js @@ -0,0 +1,58 @@ +const ADDRESS = '' // address to watch for gaps + +async function resetStartingPoint() { + // using the api_request function defined in earlier examples + const resp = await api_request({ + "command": "account_info", + "account": ADDRESS + }) + if (resp.status === "success") { + return resp.result.account_data.PreviousTxnID + } else { + console.error("Couldn't get account_info for address "+address+" because of error: "+JSON.stringify(resp)) + } +} + +let knownPreviousTxnID = undefined +// Using the socket from earlier examples +socket.addEventListener('open', (event) => { + knownPreviousTxnID = resetStartingPoint() +}) + +function hasGaps(affected_nodes) { + if (typeof knownPreviousTxnID === "undefined") { + console.warn("Can't detect gaps without a known PreviousTxnID...") + return undefined + } + + for (let i=0; i