From 24cc1b02b768b21ff013b52cb5b4e9e4a3fe4a22 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Fri, 28 Feb 2020 10:54:01 -0800 Subject: query routes and send to route --- queryRoutes.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 queryRoutes.js (limited to 'queryRoutes.js') diff --git a/queryRoutes.js b/queryRoutes.js new file mode 100644 index 00000000..0bdd76d7 --- /dev/null +++ b/queryRoutes.js @@ -0,0 +1,12 @@ +const bolt11 = require("bolt11"); +const config = require("./config"); + +const l = console.log; + +module.exports = (app, db, emit, seen, lna, lnb) => async (req, res) => { + let hash = req.body.payreq; + let payreq = bolt11.decode(hash); + l(payreq); + const routes = await lna.queryRoutes({ "pub_key": payreq.payeeNodeKey, "amt": payreq.satoshis }); + res.send(routes); +}; -- cgit v1.2.3 From a620be4d76b567d153b961b18add2626b7789880 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Fri, 28 Feb 2020 21:31:32 -0800 Subject: fix pay to user --- payUser.js | 11 +++++++++-- payments.js | 2 +- queryRoutes.js | 1 - 3 files changed, 10 insertions(+), 4 deletions(-) (limited to 'queryRoutes.js') diff --git a/payUser.js b/payUser.js index 3712c12d..676b0093 100644 --- a/payUser.js +++ b/payUser.js @@ -1,4 +1,6 @@ -module.exports = (app, db, lnb) => async (req, res) => { +const bolt11 = require("bolt11"); + +module.exports = (app, db, lna, lnb) => async (req, res) => { let { payuser, amount } = req.body; let user = await db.User.findOne({ @@ -34,6 +36,11 @@ module.exports = (app, db, lnb) => async (req, res) => { }); req.url = "/sendPayment"; - req.body.payreq = invoice.payment_request; + let payreq = bolt11.decode(hash); + const { routes } = await lna.queryRoutes({ "pub_key": payreq.payeeNodeKey, "amt": payreq.satoshis }); + if (routes.length) req.body.route = routes[0]; + else return res.status(500).send("No route available"); + req.body.payreq = hash; + return app._router.handle(req, res); }; diff --git a/payments.js b/payments.js index d34b53f1..ed8bfccf 100644 --- a/payments.js +++ b/payments.js @@ -19,7 +19,7 @@ module.exports = async (app, auth, addresses, bc, db, emit, seen, payments) => { auth, require("./sendPayment")(app, db, emit, seen, lna, lnb) ); - app.post("/payUser", auth, require("./payUser")(app, db, lnb)); + app.post("/payUser", auth, require("./payUser")(app, db, lna, lnb)); app.post("/sendCoins", auth, require("./sendCoins")(app, bc, db, emit)); app.post("/sendLiquid", auth, require("./sendLiquid")(app, db, emit)); app.post("/addInvoice", auth, require("./addInvoice")(app, db, lnb)); diff --git a/queryRoutes.js b/queryRoutes.js index 0bdd76d7..068027e7 100644 --- a/queryRoutes.js +++ b/queryRoutes.js @@ -6,7 +6,6 @@ const l = console.log; module.exports = (app, db, emit, seen, lna, lnb) => async (req, res) => { let hash = req.body.payreq; let payreq = bolt11.decode(hash); - l(payreq); const routes = await lna.queryRoutes({ "pub_key": payreq.payeeNodeKey, "amt": payreq.satoshis }); res.send(routes); }; -- cgit v1.2.3