diff --git a/app/lnd/methods/index.js b/app/lnd/methods/index.js index 37cea450..47e9295e 100644 --- a/app/lnd/methods/index.js +++ b/app/lnd/methods/index.js @@ -15,6 +15,7 @@ import payinvoice from './payinvoice' import payments from './payments' import peers from './peers' import pendingchannels from './pendingchannels' +import sendcoins from './sendcoins' import walletbalance from './walletbalance' export default function (lnd, event, msg, data) { @@ -91,6 +92,13 @@ export default function (lnd, event, msg, data) { .then(({ payment_route }) => event.sender.send('paymentSuccessful', Object.assign(data, { payment_route }))) .catch(error => console.log('payinvoice error: ', error)) break + case 'sendCoins': + // Transaction looks like { txid: String } + // { addr, amount } = data + sendcoins(lnd, data) + .then((transaction) => event.sender.send('sendSuccessful', transaction) + .catch(error => console.log('sendcoins error: ', error)) + break case 'openChannel': // Response is empty. Streaming updates on channel status and updates // { pubkey, localamt, pushamt } = data diff --git a/app/lnd/methods/sendcoins.js b/app/lnd/methods/sendcoins.js new file mode 100644 index 00000000..eeabc8bb --- /dev/null +++ b/app/lnd/methods/sendcoins.js @@ -0,0 +1,10 @@ +// LND send coins on chain +export default function sendcoins(lnd, { addr, amount }) { + return new Promise((resolve, reject) => { + lnd.sendCoins({ addr, amount }, (err, data) => { + if (err) { reject(err) } + + resolve(data) + }) + }) +}