bitcoind-rpc-rapture

1.0.1 • Public • Published

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 or https.
  • 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.

Readme

Keywords

Package Sidebar

Install

npm i bitcoind-rpc-rapture

Weekly Downloads

2

Version

1.0.1

License

MIT

Unpacked Size

4 kB

Total Files

2

Last publish

Collaborators

  • tom_ua