clightning-rpc
v0.3.2
Published
Node library for accessing the c-lightning rpc server over ipc
Downloads
2
Maintainers
Readme
node-clightning-rpc
Connect to lightningd of the c-lightning implementation of a lightning network node with RPC
Installation
Installation
npm install clightning-rpc --save
Usage
Initialization
const CLightning = require('clightning-rpc')
const client = new CLightning([RPC_PROCESS_FILE_PATH])
Example
const CLightning = require('clightning-rpc')
const client = new CLightning()
//Returns Promises. No Callbacks (It is 2018)
client.listNodes()
.then(nodes => {
console.log(nodes)
})
.catch(e => {
console.log(e)
})
Methods
lightning-rpc methods and coresponding function
- listnodes :
client.listNodes()
orclient.getNode(id)
- connect :
client.connectToPeer('id@host:port')
orclient.connectToPeer(id, host[, port])
- listpeers :
client.listPeers()
orclient.getPeer(id)
- getroute :
client.getRoute(id, msatoshi[, riskfactor][, cltv])
- listchannels :
client.listChannels()
orclient.getChannel(short_channel_id)
- invoice :
client.createInvoice(msatoshi, label, description[, expiry][, fallback][, preimage])
- listinvoices :
client.listInvoices()
orclient.getInvoice(label)
- delinvoice :
deleteInvoice(label[, status])
- waitanyinvoice :
waitAnyInvoice([lastpay_index])
- decodepay :
client.decodePay(bolt11[, description])
- help :
client.help()
- stop :
client.stop()
- getlog :
client.getLog([level])
- getinfo :
client.getInfo()
- sendPay :
client.sendPay(route, payment_hash)
- waitSendPay :
client.waitSendPay(payment_hash, timeout)
- pay :
client.pay(bolt11[, msatoshi][, description][, riskfactor][, maxfeepercent][, retry_for][, maxdelay])
- fundchannel :
client.fundChannel(nodeID, satoshi)
- close :
client.closeChannel(id[, force][, timeout])
- withdraw :
client.withdraw(destination, satoshi)
- newaddr :
client.newAddress([addresstype])
- listfunds :
client.listFunds()
- disconnect :
client.disconnectPeer(id)
- listpayments :
client.listPayments()
- dev-listaddrs :
client.devListAddresses([index])
Utility Methods
Useful utility methods
client.utilConnectPeers(peerArray[, ignoreFailed])
const CLightning = require('node-clightning-rpc')
const client = new CLightning()
const peers = [
"024a2e265cd66066b78a788ae615acdc84b5b0dec9efac36d7ac87513015eaf6ed@52.16.240.222:9735",
"03e50492eab4107a773141bb419e107bda3de3d55652e6e1a41225f06a0bbf2d56@35.172.33.197:9735",
"02a45def9ae014fdd2603dd7033d157faa3a55a72b06a63ae22ef46d9fafdc6e8d@85.216.75.225:9735"
]
client.utilConnectPeers(peers)
.then(data => {
console.log(data)
})
.catch(e => {console.log(e)})
// OUTPUT
// [ { id:
// '024a2e265cd66066b78a788ae615acdc84b5b0dec9efac36d7ac87513015eaf6ed' },
// { id:
// '03e50492eab4107a773141bb419e107bda3de3d55652e6e1a41225f06a0bbf2d56' },
// { id:
// '02a45def9ae014fdd2603dd7033d157faa3a55a72b06a63ae22ef46d9fafdc6e8d' } ]