bitcoind-rpc-rapture.js NPM Package Build Status Coverage Status
A client library to connect to RAPTURE Core RPC in JavaScript.
Get Started bitcoind-rpc-rapture.js runs on node, and can be installed via npm:
npm install bitcoind-rpc-rapture RpcClient Config parameters :
- protocol : (string - optional) - (default: 'https') - Set the protocol to be used. Either
http
orhttps
. - user : (string - optional) - (default: 'user') - Set the user credential.
- pass : (string - optional) - (default: 'pass') - Set the password credential.
- host : (string - optional) - (default: '127.0.0.1') - The host you want to connect with.
- port : (integer - optional) - (default: 9998) - Set the port on which perform the RPC command. Promise vs callback based
require('bitcoind-rpc-rapture/promise') to have promises returned require('bitcoind-rpc-rapture') to have callback functions returned Examples Config:
var config = { protocol: 'http', user: 'rapture', pass: 'local321', host: '127.0.0.1', port: 19998 }; Promise based:
var RpcClient = require('bitcoind-rpc-rapture/promise'); var rpc = new RpcClient(config);
rpc.getRawMemPool()
.then(ret => {
return Promise.all(ret.result.map(r => rpc.getRawTransaction(r)))
})
.then(rawTxs => {
rawTxs.forEach(rawTx => {
console.log(RawTX: ${rawTx.result}
);
})
})
.catch(err => {
console.log(err)
})
Callback based (legacy):
var run = function() { var bitcore = require('bitcore'); var RpcClient = require('bitcoind-rpc-rapture'); var rpc = new RpcClient(config);
var txids = [];
function showNewTransactions() { rpc.getRawMemPool(function (err, ret) { if (err) { console.error(err); return setTimeout(showNewTransactions, 10000); }
function batchCall() {
ret.result.forEach(function (txid) {
if (txids.indexOf(txid) === -1) {
rpc.getRawTransaction(txid);
}
});
}
rpc.batch(batchCall, function(err, rawtxs) {
if (err) {
console.error(err);
return setTimeout(showNewTransactions, 10000);
}
rawtxs.map(function (rawtx) {
var tx = new bitcore.Transaction(rawtx.result);
console.log('\n\n\n' + tx.id + ':', tx.toObject());
});
txids = ret.result;
setTimeout(showNewTransactions, 2500);
});
});
}
showNewTransactions(); }; Help You can dynamically access to the help of each method by doing
const RpcClient = require('bitcoind-rpc-rapture'); var client = new RPCclient({ protocol:'http', user: 'rapture', pass: 'local321', host: '127.0.0.1', port: 19998 });
var cb = function (err, data) { console.log(data) }; client.help(cb); //Get full help client.help('getinfo',cb); //Get help of specific method License Code released under the MIT license.
Copyright 2013-2018 BitPay, Inc.