diff options
| author | Adam Soltys <[email protected]> | 2017-01-25 21:10:38 -0800 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2017-01-25 21:10:38 -0800 |
| commit | 54581ded6dccaf4e494e88a99b167f9e7f9afda2 (patch) | |
| tree | c276ff7a70320ffc9214ca72441bc5604a0f38bc /bcoin.js | |
| parent | c413e457579b68b7a92ab47cdd867202ee7bb47e (diff) | |
| download | coinos-server-vue.tar.gz coinos-server-vue.zip | |
Peg to specific bcoin commitvue
Diffstat (limited to 'bcoin.js')
| -rw-r--r-- | bcoin.js | 98 |
1 files changed, 46 insertions, 52 deletions
@@ -1,104 +1,98 @@ (function() { - var bcoin, config, db, twilio; - - bcoin = require('bcoin'); - - config = require('./config'); - - db = require('./redis'); - - twilio = require('twilio'); + const bcoin = require('bcoin') + const config = require('./config') + const db = require('./redis') + const twilio = require('twilio') module.exports = { init: function(app) { - var chain, pool, users; - users = {}; + var chain, pool, users + users = {} chain = new bcoin.chain({ db: 'leveldb', name: 'spvchain', location: __dirname + '/db/spvchain', spv: true - }); + }) pool = new bcoin.pool({ chain: chain, spv: true, size: 1, maxPeers: 1, seeds: ['dctrl.ca'] - }); + }) return pool.open().then(function() { db.keysAsync("user:*").then(function(keys) { return Promise.all(keys.map(function(key) { return db.hgetallAsync(key).then(function(user) { if (user.address) { - pool.watchAddress(user.address); + pool.watchAddress(user.address) return users[user.address] = { email: user.email, currency: user.currency, symbol: user.symbol, phone: user.phone - }; + } } - }); - })); - }); - pool.connect(); - pool.startSync(); + }) + })) + }) + pool.connect().then(function() { pool.startSync() }) pool.on('error', function(err) { - return console.log(err); - }); + return console.log(err) + }) return pool.on('tx', function(tx) { - var address, client, i, len, output, ref, results, value; - ref = tx.outputs; - results = []; + var address, client, i, len, output, ref, results, value + ref = tx.outputs + results = [] for (i = 0, len = ref.length; i < len; i++) { - output = ref[i]; - value = (output.value / 100000000).toFixed(8); - address = output.getAddress().toBase58(); + output = ref[i] + value = (output.value / 100000000).toFixed(8) + address = output.getAddress().toBase58() if (Object.keys(users).includes(address)) { app.render('payment', { value: value, address: address }, function(err, html) { - var content, from_email, helper, mail, request, sg, subject, to_email; - helper = require('sendgrid').mail; - from_email = new helper.Email('[email protected]'); - to_email = new helper.Email(users[address].email); - subject = 'Received Payment'; - content = new helper.Content('text/html', html); - mail = new helper.Mail(from_email, subject, to_email, content); - sg = require('sendgrid')(config.sendgrid_token); + var content, from_email, helper, mail, request, sg, subject, to_email + helper = require('sendgrid').mail + from_email = new helper.Email('[email protected]') + to_email = new helper.Email(users[address].email) + subject = 'Received Payment' + content = new helper.Content('text/html', html) + mail = new helper.Mail(from_email, subject, to_email, content) + sg = require('sendgrid')(config.sendgrid_token) request = sg.emptyRequest({ method: 'POST', path: '/v3/mail/send', body: mail.toJSON() - }); + }) return sg.API(request, function(error, response) { - console.log(response.statusCode); - console.log(response.body); - return console.log(response.headers); - }); - }); + console.log(response.statusCode) + console.log(response.body) + return console.log(response.headers) + }) + }) if (users[address].phone) { - client = new twilio.RestClient(config.twilio_sid, config.twilio_token); + client = new twilio.RestClient(config.twilio_sid, config.twilio_token) results.push(client.messages.create({ to: user.phone, from: config.twilio_number, body: "You received a payment of " + value + " BTC" }, function(err, message) { - return console.log(message.sid); - })); + return console.log(message.sid) + })) } else { - results.push(void 0); + results.push(void 0) } } else { - results.push(void 0); + results.push(void 0) } } - return results; - }); - }); + return results + }) + }) } - }; + } -}).call(this); +}).call(this) |
