diff options
| author | Adam Soltys <[email protected]> | 2021-08-04 07:00:20 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2021-08-04 08:16:43 -0700 |
| commit | ea2c9ed23c2b80f4a6200ee19fb4a6c77c3ccb95 (patch) | |
| tree | 1bb8ebcdf7b5bdbdc92ee536ef5517e711e9388c /lib | |
| parent | cfa93d65f113b4eed50cc88be76eeefa04a900eb (diff) | |
| download | coinos-server-ea2c9ed23c2b80f4a6200ee19fb4a6c77c3ccb95.tar.gz coinos-server-ea2c9ed23c2b80f4a6200ee19fb4a6c77c3ccb95.zip | |
config update, lnd support
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/lnd.js | 44 | ||||
| -rw-r--r-- | lib/send.js | 2 |
2 files changed, 11 insertions, 35 deletions
@@ -1,36 +1,12 @@ -const fs = require('fs'); -const path = require('path'); -const grpc = require('@grpc/grpc-js'); -const protoLoader = require('@grpc/proto-loader'); -const { promisify } = require('util'); +const { promisify } = require("util"); +const { authenticatedLndGrpc } = require("lightning"); +const { cert, macaroon, socket } = config.lna; -module.exports = ({ tls, macaroon, server }) => { - const packageDefinition = protoLoader.loadSync('config/rpc.proto', { - keepCase: true, - longs: String, - enums: String, - defaults: true, - oneofs: true - }); - const lnrpc = grpc.loadPackageDefinition(packageDefinition).lnrpc; - process.env.GRPC_SSL_CIPHER_SUITES = 'HIGH+ECDSA' - const lndCert = fs.readFileSync(tls); - const sslCreds = grpc.credentials.createSsl(lndCert); - const macaroonCreds = grpc.credentials.createFromMetadataGenerator(function(args, callback) { - const macaroonFile = fs.readFileSync(macaroon).toString('hex'); - const metadata = new grpc.Metadata() - metadata.add('macaroon', macaroonFile); - callback(null, metadata); - }); - const creds = grpc.credentials.combineChannelCredentials(sslCreds, macaroonCreds); - const lnd = new lnrpc.Lightning(server, creds); - - return new Proxy(lnd, { - get(target, key) { - const method = target[key]; - if (typeof method === 'function' && !key.startsWith('sub')) return promisify(method); - return target[key]; - }, - }); -} +const { lnd } = authenticatedLndGrpc({ + cert, + macaroon, + socket +}); + +module.exports = lnd diff --git a/lib/send.js b/lib/send.js index 660fcae4..c54985d3 100644 --- a/lib/send.js +++ b/lib/send.js @@ -52,7 +52,7 @@ send = async (amount, memo, hash, user) => { fee = parseInt((sent - total) / 1000); total = parseInt(total / 1000); } else { - let m = await lna.sendPaymentSync({ + let m = await lnp.sendPaymentSync({ amt: amount, payment_request: hash, max_parts: 10, |
