From c91c218227b38dc114a947842a504bd8258186f3 Mon Sep 17 00:00:00 2001 From: Evan Feenstra Date: Wed, 6 May 2020 12:10:01 -0700 Subject: [PATCH] network send receive interfaces --- api/controllers/index.ts | 32 +----- api/grpc/index.ts | 82 +------------ api/helpers.ts | 2 +- api/network/index.ts | 14 +++ api/network/receive.ts | 117 +++++++++++++++++++ api/{network.ts => network/send.ts} | 14 +-- api/utils/lightning.ts | 1 + api/utils/msg.ts | 2 +- api/utils/tribes.ts | 16 ++- app.ts | 8 +- dist/api/controllers/index.js | 33 +----- dist/api/controllers/index.js.map | 2 +- dist/api/grpc/index.js | 87 +------------- dist/api/grpc/index.js.map | 2 +- dist/api/network.js.map | 1 - dist/api/network/index.js | 10 ++ dist/api/network/index.js.map | 1 + dist/api/network/receive.js | 140 +++++++++++++++++++++++ dist/api/network/receive.js.map | 1 + dist/api/{network.js => network/send.js} | 34 +++--- dist/api/network/send.js.map | 1 + dist/api/utils/lightning.js | 1 + dist/api/utils/lightning.js.map | 2 +- dist/api/utils/msg.js | 12 +- dist/api/utils/msg.js.map | 2 +- dist/api/utils/tribes.js | 18 ++- dist/api/utils/tribes.js.map | 2 +- dist/app.js | 8 +- dist/app.js.map | 2 +- 29 files changed, 379 insertions(+), 268 deletions(-) create mode 100644 api/network/index.ts create mode 100644 api/network/receive.ts rename api/{network.ts => network/send.ts} (89%) delete mode 100644 dist/api/network.js.map create mode 100644 dist/api/network/index.js create mode 100644 dist/api/network/index.js.map create mode 100644 dist/api/network/receive.js create mode 100644 dist/api/network/receive.js.map rename dist/api/{network.js => network/send.js} (76%) create mode 100644 dist/api/network/send.js.map diff --git a/api/controllers/index.ts b/api/controllers/index.ts index acd4afc..17b3122 100644 --- a/api/controllers/index.ts +++ b/api/controllers/index.ts @@ -1,10 +1,5 @@ import {models} from '../models' -import * as lndService from '../grpc' import {checkTag} from '../utils/gitinfo' -import {getInfo} from '../utils/lightning' -import * as path from 'path' - -const constants = require(path.join(__dirname,'../../config/constants.json')) const env = process.env.NODE_ENV || 'development'; console.log("=> env:",env) @@ -23,31 +18,6 @@ let controllers = { confirmations: require('./confirmations') } -async function iniGrpcSubscriptions() { - try{ - await getInfo() - const types = constants.message_types - await lndService.subscribeInvoices({ - [types.contact_key]: controllers.contacts.receiveContactKey, - [types.contact_key_confirmation]: controllers.contacts.receiveConfirmContactKey, - [types.message]: controllers.messages.receiveMessage, - [types.invoice]: controllers.invoices.receiveInvoice, - [types.direct_payment]: controllers.payments.receivePayment, - [types.confirmation]: controllers.confirmations.receiveConfirmation, - [types.attachment]: controllers.media.receiveAttachment, - [types.purchase]: controllers.media.receivePurchase, - [types.purchase_accept]: controllers.media.receivePurchaseAccept, - [types.purchase_deny]: controllers.media.receivePurchaseDeny, - [types.group_create]: controllers.chats.receiveGroupCreateOrInvite, - [types.group_invite]: controllers.chats.receiveGroupCreateOrInvite, - [types.group_join]: controllers.chats.receiveGroupJoin, - [types.group_leave]: controllers.chats.receiveGroupLeave, - }) - } catch(e) { - throw e - } -} - async function set(app) { if(models && models.Subscription){ @@ -140,4 +110,4 @@ const login = (req, res) => { } } -export {set, iniGrpcSubscriptions} +export {set, controllers} diff --git a/api/grpc/index.ts b/api/grpc/index.ts index b86089c..b367bbd 100644 --- a/api/grpc/index.ts +++ b/api/grpc/index.ts @@ -3,85 +3,15 @@ import * as socket from '../utils/socket' import { sendNotification, sendInvoice } from '../hub' import * as jsonUtils from '../utils/json' import * as decodeUtils from '../utils/decode' -import {loadLightning, SPHINX_CUSTOM_RECORD_KEY, verifyAscii} from '../utils/lightning' -import * as controllers from '../controllers' +import {loadLightning} from '../utils/lightning' +import * as network from '../network' import * as moment from 'moment' import * as path from 'path' +import {parseKeysendInvoice} from '../network' const constants = require(path.join(__dirname,'../../config/constants.json')) -// VERIFY PUBKEY OF SENDER -async function parseAndVerifyPayload(data){ - let payload - const li = data.lastIndexOf('}') - const msg = data.substring(0,li+1) - const sig = data.substring(li+1) - try { - payload = JSON.parse(msg) - if(payload) { - const v = await verifyAscii(msg, sig) - if(v && v.valid && v.pubkey) { - payload.sender = payload.sender||{} - payload.sender.pub_key=v.pubkey - return payload - } - } - } catch(e) { - return null - } -} - -async function parseKeysendInvoice(i, actions){ - const recs = i.htlcs && i.htlcs[0] && i.htlcs[0].custom_records - const buf = recs && recs[SPHINX_CUSTOM_RECORD_KEY] - const data = buf && buf.toString() - const value = i && i.value && parseInt(i.value) - if(!data) return - - let payload - if(data[0]==='{'){ - try { - payload = await parseAndVerifyPayload(data) - } catch(e){} - } else { - const threads = weave(data) - if(threads) payload = await parseAndVerifyPayload(threads) - } - if(payload){ - const dat = payload.content || payload - if(value && dat && dat.message){ - dat.message.amount = value // ADD IN TRUE VALUE - } - if(actions[payload.type]) { - actions[payload.type](payload) - } else { - console.log('Incorrect payload type:', payload.type) - } - } -} - -const chunks = {} -function weave(p){ - const pa = p.split('_') - if(pa.length<4) return - const ts = pa[0] - const i = pa[1] - const n = pa[2] - const m = pa.filter((u,i)=>i>2).join('_') - chunks[ts] = chunks[ts] ? [...chunks[ts], {i,n,m}] : [{i,n,m}] - if(chunks[ts].length===parseInt(n)){ - // got em all! - const all = chunks[ts] - let payload = '' - all.slice().sort((a,b)=>a.i-b.i).forEach(obj=>{ - payload += obj.m - }) - delete chunks[ts] - return payload - } -} - -function subscribeInvoices(actions) { +function subscribeInvoices() { return new Promise(async(resolve,reject)=>{ const lightning = await loadLightning() @@ -93,7 +23,7 @@ function subscribeInvoices(actions) { } // console.log("IS KEYSEND", response.is_keysend) if(response.is_keysend) { - parseKeysendInvoice(response, actions) + parseKeysendInvoice(response) } else { const invoice = await models.Message.findOne({ where: { type: constants.message_types.invoice, payment_request: response['payment_request'] } }) if (invoice == null) { @@ -177,7 +107,7 @@ async function reconnectToLND(){ i++ console.log(`=> [lnd] reconnecting... attempt #${i}`) try { - await controllers.iniGrpcSubscriptions() + await network.initGrpcSubscriptions() const now = moment().format('YYYY-MM-DD HH:mm:ss').trim(); console.log(`=> [lnd] reconnected! ${now}`) } catch(e) { diff --git a/api/helpers.ts b/api/helpers.ts index 7e4491b..008e29e 100644 --- a/api/helpers.ts +++ b/api/helpers.ts @@ -146,7 +146,7 @@ async function parseReceiveParams(payload) { const mediaKey = dat.message.mediaKey const mediaType = dat.message.mediaType - const isConversation = chat_type && chat_type == constants.chat_types.group + const isConversation = !chat_type || (chat_type && chat_type == constants.chat_types.conversation) let sender let chat const owner = await models.Contact.findOne({ where: { isOwner: true } }) diff --git a/api/network/index.ts b/api/network/index.ts new file mode 100644 index 0000000..f483518 --- /dev/null +++ b/api/network/index.ts @@ -0,0 +1,14 @@ +import {sendMessage,signAndSend} from './send' +import {initGrpcSubscriptions,initTribesSubscriptions,parseKeysendInvoice} from './receive' + +/* +Abstracts between lightning network and MQTT depending on Chat type and sender +*/ + +export { + sendMessage,signAndSend, + initGrpcSubscriptions, + initTribesSubscriptions, + parseKeysendInvoice, +} + diff --git a/api/network/receive.ts b/api/network/receive.ts new file mode 100644 index 0000000..f50a969 --- /dev/null +++ b/api/network/receive.ts @@ -0,0 +1,117 @@ +import * as path from 'path' +import * as lndService from '../grpc' +import {getInfo} from '../utils/lightning' +import {controllers} from '../controllers' +import * as tribes from '../utils/tribes' +import {SPHINX_CUSTOM_RECORD_KEY, verifyAscii} from '../utils/lightning' + +const constants = require(path.join(__dirname,'../../config/constants.json')) + +const types = constants.message_types +const ACTIONS = { + [types.contact_key]: controllers.contacts.receiveContactKey, + [types.contact_key_confirmation]: controllers.contacts.receiveConfirmContactKey, + [types.message]: controllers.messages.receiveMessage, + [types.invoice]: controllers.invoices.receiveInvoice, + [types.direct_payment]: controllers.payments.receivePayment, + [types.confirmation]: controllers.confirmations.receiveConfirmation, + [types.attachment]: controllers.media.receiveAttachment, + [types.purchase]: controllers.media.receivePurchase, + [types.purchase_accept]: controllers.media.receivePurchaseAccept, + [types.purchase_deny]: controllers.media.receivePurchaseDeny, + [types.group_create]: controllers.chats.receiveGroupCreateOrInvite, + [types.group_invite]: controllers.chats.receiveGroupCreateOrInvite, + [types.group_join]: controllers.chats.receiveGroupJoin, + [types.group_leave]: controllers.chats.receiveGroupLeave, +} + +export async function initGrpcSubscriptions() { + try{ + await getInfo() + await lndService.subscribeInvoices() + } catch(e) { + throw e + } +} + +export async function initTribesSubscriptions(){ + await tribes.connect((myPubKey)=>{ // connected callback + // get all tribes and sub to each individually ???? + tribes.subscribe(`${myPubKey}/#`) + }, (topic, message)=>{ // onMessage callback + console.log("TOPIC", topic, "MESSAGE", message) + // check topic is signed by sender? + // fire off the ACTION + }) +} + +// VERIFY PUBKEY OF SENDER from sig +async function parseAndVerifyPayload(data){ + let payload + const li = data.lastIndexOf('}') + const msg = data.substring(0,li+1) + const sig = data.substring(li+1) + try { + payload = JSON.parse(msg) + if(payload) { + const v = await verifyAscii(msg, sig) + if(v && v.valid && v.pubkey) { + payload.sender = payload.sender||{} + payload.sender.pub_key=v.pubkey + return payload + } + } + } catch(e) { + return null + } +} + +export async function parseKeysendInvoice(i){ + const recs = i.htlcs && i.htlcs[0] && i.htlcs[0].custom_records + const buf = recs && recs[SPHINX_CUSTOM_RECORD_KEY] + const data = buf && buf.toString() + const value = i && i.value && parseInt(i.value) + if(!data) return + + let payload + if(data[0]==='{'){ + try { + payload = await parseAndVerifyPayload(data) + } catch(e){} + } else { + const threads = weave(data) + if(threads) payload = await parseAndVerifyPayload(threads) + } + if(payload){ + const dat = payload.content || payload + if(value && dat && dat.message){ + dat.message.amount = value // ADD IN TRUE VALUE + } + if(ACTIONS[payload.type]) { + ACTIONS[payload.type](payload) + } else { + console.log('Incorrect payload type:', payload.type) + } + } +} + +const chunks = {} +function weave(p){ + const pa = p.split('_') + if(pa.length<4) return + const ts = pa[0] + const i = pa[1] + const n = pa[2] + const m = pa.filter((u,i)=>i>2).join('_') + chunks[ts] = chunks[ts] ? [...chunks[ts], {i,n,m}] : [{i,n,m}] + if(chunks[ts].length===parseInt(n)){ + // got em all! + const all = chunks[ts] + let payload = '' + all.slice().sort((a,b)=>a.i-b.i).forEach(obj=>{ + payload += obj.m + }) + delete chunks[ts] + return payload + } +} \ No newline at end of file diff --git a/api/network.ts b/api/network/send.ts similarity index 89% rename from api/network.ts rename to api/network/send.ts index 5fe0c44..e3cede7 100644 --- a/api/network.ts +++ b/api/network/send.ts @@ -1,13 +1,9 @@ -import { models } from './models' -import * as LND from './utils/lightning' -import {personalizeMessage} from './utils/msg' +import { models } from '../models' +import * as LND from '../utils/lightning' +import {personalizeMessage} from '../utils/msg' // const constants = require('../config/constants.json'); -/* -Abstracts between lightning network and MQTT depending on Chat type and sender -*/ - export function signAndSend(opts){ return new Promise(async function(resolve, reject) { if(!opts.data || typeof opts.data!=='object') { @@ -18,6 +14,8 @@ export function signAndSend(opts){ const sig = await LND.signAscii(data) data = data + sig + console.log("DATA") + console.log(opts.data) // if tribe // if owner pub to mqtt // else keysend to owner ONLY @@ -73,7 +71,7 @@ function newmsg(type, chat, sender, message){ chat: { uuid: chat.uuid, ...chat.name && { name: chat.name }, - ...chat.type && { type: chat.type }, + ...(chat.type||chat.type===0) && { type: chat.type }, ...chat.members && { members: chat.members }, ...chat.groupKey && { groupKey: chat.groupKey }, ...chat.host && { host: chat.host } diff --git a/api/utils/lightning.ts b/api/utils/lightning.ts index 275ca01..669ccb0 100644 --- a/api/utils/lightning.ts +++ b/api/utils/lightning.ts @@ -157,6 +157,7 @@ async function keysendMessage(opts) { let fail = false let res:any = null const ts = new Date().valueOf() + // WEAVE MESSAGE If TOO LARGE await asyncForEach(Array.from(Array(n)), async(u,i)=> { const spliti = Math.ceil(opts.data.length/n) const m = opts.data.substr(i*spliti, spliti) diff --git a/api/utils/msg.ts b/api/utils/msg.ts index e5257fe..9f8a626 100644 --- a/api/utils/msg.ts +++ b/api/utils/msg.ts @@ -64,7 +64,7 @@ async function personalizeMessage(m,contactId,destkey){ const cloned = JSON.parse(JSON.stringify(m)) const msg = addInRemoteText(cloned, contactId) const cleanMsg = removeRecipientFromChatMembers(msg, destkey) - const cleanerMsg = removeAllNonAdminMembersIfTribe(msg, destkey) + const cleanerMsg = removeAllNonAdminMembersIfTribe(cleanMsg, destkey) const msgWithMediaKey = addInMediaKey(cleanerMsg, contactId) const finalMsg = await finishTermsAndReceipt(msgWithMediaKey, destkey) return finalMsg diff --git a/api/utils/tribes.ts b/api/utils/tribes.ts index 091d046..2b440dc 100644 --- a/api/utils/tribes.ts +++ b/api/utils/tribes.ts @@ -8,25 +8,35 @@ import * as mqtt from 'mqtt' const env = process.env.NODE_ENV || 'development' const config = require(path.join(__dirname,'../../config/app.json'))[env] -export async function connect() { +let client:any + +export async function connect(connectedCallback, onMessage) { const pwd = await genSignedTimestamp() const info = await LND.getInfo() - console.log('=========> try to connect:',`tcp://${config.tribes_host}`) + console.log('[tribes] try to connect:',`tcp://${config.tribes_host}`) - const client = mqtt.connect(`tcp://${config.tribes_host}`,{ + client = mqtt.connect(`tcp://${config.tribes_host}`,{ username:info.identity_pubkey, password:pwd, }) client.on('connect', function () { console.log("[tribes] connected!") + if(connectedCallback) connectedCallback(client, info.identity_pubkey) // subscribe to all public groups here // that you are NOT admin of (dont sub to your own!) }) client.on('close', function () { //console.log("MQTT CLOSED") }) + client.on('message', function(topic, message) { + if(onMessage) onMessage(topic, message) + }) +} + +export function subscribe(topic){ + if(client) client.subscribe(topic) } export async function genSignedTimestamp(){ diff --git a/app.ts b/app.ts index 61f96de..9e16759 100644 --- a/app.ts +++ b/app.ts @@ -10,7 +10,7 @@ import {pingHubInterval, checkInvitesHubInterval} from './api/hub' import {setupDatabase, setupDone} from './api/utils/setup' import * as controllers from './api/controllers' import * as socket from './api/utils/socket' -import * as tribes from './api/utils/tribes' +import * as network from './api/network' let server: any = null const port = process.env.PORT || 3001; @@ -28,9 +28,9 @@ async function connectToLND(){ i++ console.log(`=> [lnd] connecting... attempt #${i}`) try { - await controllers.iniGrpcSubscriptions() - await mainSetup() - tribes.connect() + await network.initGrpcSubscriptions() // LND + await mainSetup() // DB + express + await network.initTribesSubscriptions() // MQTT } catch(e) { setTimeout(async()=>{ // retry each 2 secs await connectToLND() diff --git a/dist/api/controllers/index.js b/dist/api/controllers/index.js index 41d26ad..cbb288f 100644 --- a/dist/api/controllers/index.js +++ b/dist/api/controllers/index.js @@ -10,11 +10,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge }; Object.defineProperty(exports, "__esModule", { value: true }); const models_1 = require("../models"); -const lndService = require("../grpc"); const gitinfo_1 = require("../utils/gitinfo"); -const lightning_1 = require("../utils/lightning"); -const path = require("path"); -const constants = require(path.join(__dirname, '../../config/constants.json')); const env = process.env.NODE_ENV || 'development'; console.log("=> env:", env); let controllers = { @@ -30,34 +26,7 @@ let controllers = { media: require('./media'), confirmations: require('./confirmations') }; -function iniGrpcSubscriptions() { - return __awaiter(this, void 0, void 0, function* () { - try { - yield lightning_1.getInfo(); - const types = constants.message_types; - yield lndService.subscribeInvoices({ - [types.contact_key]: controllers.contacts.receiveContactKey, - [types.contact_key_confirmation]: controllers.contacts.receiveConfirmContactKey, - [types.message]: controllers.messages.receiveMessage, - [types.invoice]: controllers.invoices.receiveInvoice, - [types.direct_payment]: controllers.payments.receivePayment, - [types.confirmation]: controllers.confirmations.receiveConfirmation, - [types.attachment]: controllers.media.receiveAttachment, - [types.purchase]: controllers.media.receivePurchase, - [types.purchase_accept]: controllers.media.receivePurchaseAccept, - [types.purchase_deny]: controllers.media.receivePurchaseDeny, - [types.group_create]: controllers.chats.receiveGroupCreateOrInvite, - [types.group_invite]: controllers.chats.receiveGroupCreateOrInvite, - [types.group_join]: controllers.chats.receiveGroupJoin, - [types.group_leave]: controllers.chats.receiveGroupLeave, - }); - } - catch (e) { - throw e; - } - }); -} -exports.iniGrpcSubscriptions = iniGrpcSubscriptions; +exports.controllers = controllers; function set(app) { return __awaiter(this, void 0, void 0, function* () { if (models_1.models && models_1.models.Subscription) { diff --git a/dist/api/controllers/index.js.map b/dist/api/controllers/index.js.map index 34fecf1..8677102 100644 --- a/dist/api/controllers/index.js.map +++ b/dist/api/controllers/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../api/controllers/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../api/controllers/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/api/grpc/index.js b/dist/api/grpc/index.js index 078e464..bd013a8 100644 --- a/dist/api/grpc/index.js +++ b/dist/api/grpc/index.js @@ -15,89 +15,12 @@ const hub_1 = require("../hub"); const jsonUtils = require("../utils/json"); const decodeUtils = require("../utils/decode"); const lightning_1 = require("../utils/lightning"); -const controllers = require("../controllers"); +const network = require("../network"); const moment = require("moment"); const path = require("path"); +const network_1 = require("../network"); const constants = require(path.join(__dirname, '../../config/constants.json')); -// VERIFY PUBKEY OF SENDER -function parseAndVerifyPayload(data) { - return __awaiter(this, void 0, void 0, function* () { - let payload; - const li = data.lastIndexOf('}'); - const msg = data.substring(0, li + 1); - const sig = data.substring(li + 1); - try { - payload = JSON.parse(msg); - if (payload) { - const v = yield lightning_1.verifyAscii(msg, sig); - if (v && v.valid && v.pubkey) { - payload.sender = payload.sender || {}; - payload.sender.pub_key = v.pubkey; - return payload; - } - } - } - catch (e) { - return null; - } - }); -} -function parseKeysendInvoice(i, actions) { - return __awaiter(this, void 0, void 0, function* () { - const recs = i.htlcs && i.htlcs[0] && i.htlcs[0].custom_records; - const buf = recs && recs[lightning_1.SPHINX_CUSTOM_RECORD_KEY]; - const data = buf && buf.toString(); - const value = i && i.value && parseInt(i.value); - if (!data) - return; - let payload; - if (data[0] === '{') { - try { - payload = yield parseAndVerifyPayload(data); - } - catch (e) { } - } - else { - const threads = weave(data); - if (threads) - payload = yield parseAndVerifyPayload(threads); - } - if (payload) { - const dat = payload.content || payload; - if (value && dat && dat.message) { - dat.message.amount = value; // ADD IN TRUE VALUE - } - if (actions[payload.type]) { - actions[payload.type](payload); - } - else { - console.log('Incorrect payload type:', payload.type); - } - } - }); -} -const chunks = {}; -function weave(p) { - const pa = p.split('_'); - if (pa.length < 4) - return; - const ts = pa[0]; - const i = pa[1]; - const n = pa[2]; - const m = pa.filter((u, i) => i > 2).join('_'); - chunks[ts] = chunks[ts] ? [...chunks[ts], { i, n, m }] : [{ i, n, m }]; - if (chunks[ts].length === parseInt(n)) { - // got em all! - const all = chunks[ts]; - let payload = ''; - all.slice().sort((a, b) => a.i - b.i).forEach(obj => { - payload += obj.m; - }); - delete chunks[ts]; - return payload; - } -} -function subscribeInvoices(actions) { +function subscribeInvoices() { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { const lightning = yield lightning_1.loadLightning(); var call = lightning.subscribeInvoices(); @@ -109,7 +32,7 @@ function subscribeInvoices(actions) { } // console.log("IS KEYSEND", response.is_keysend) if (response.is_keysend) { - parseKeysendInvoice(response, actions); + network_1.parseKeysendInvoice(response); } else { const invoice = yield models_1.models.Message.findOne({ where: { type: constants.message_types.invoice, payment_request: response['payment_request'] } }); @@ -188,7 +111,7 @@ function reconnectToLND() { i++; console.log(`=> [lnd] reconnecting... attempt #${i}`); try { - yield controllers.iniGrpcSubscriptions(); + yield network.initGrpcSubscriptions(); const now = moment().format('YYYY-MM-DD HH:mm:ss').trim(); console.log(`=> [lnd] reconnected! ${now}`); } diff --git a/dist/api/grpc/index.js.map b/dist/api/grpc/index.js.map index 9fbc155..3f83506 100644 --- a/dist/api/grpc/index.js.map +++ b/dist/api/grpc/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../api/grpc/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../api/grpc/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/api/network.js.map b/dist/api/network.js.map deleted file mode 100644 index 54ac510..0000000 --- a/dist/api/network.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"network.js","sourceRoot":"","sources":["../../api/network.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/api/network/index.js b/dist/api/network/index.js new file mode 100644 index 0000000..6b3e74b --- /dev/null +++ b/dist/api/network/index.js @@ -0,0 +1,10 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const send_1 = require("./send"); +exports.sendMessage = send_1.sendMessage; +exports.signAndSend = send_1.signAndSend; +const receive_1 = require("./receive"); +exports.initGrpcSubscriptions = receive_1.initGrpcSubscriptions; +exports.initTribesSubscriptions = receive_1.initTribesSubscriptions; +exports.parseKeysendInvoice = receive_1.parseKeysendInvoice; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/dist/api/network/index.js.map b/dist/api/network/index.js.map new file mode 100644 index 0000000..fd8a0ea --- /dev/null +++ b/dist/api/network/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../api/network/index.ts"],"names":[],"mappings":";;AAAA,iCAA8C;AAQ1C,sBARI,kBAAW,CAQJ;AAAC,sBARI,kBAAW,CAQJ;AAP3B,uCAA2F;AAQvF,gCARI,+BAAqB,CAQJ;AACrB,kCAT0B,iCAAuB,CAS1B;AACvB,8BAVkD,6BAAmB,CAUlD"} \ No newline at end of file diff --git a/dist/api/network/receive.js b/dist/api/network/receive.js new file mode 100644 index 0000000..e6df991 --- /dev/null +++ b/dist/api/network/receive.js @@ -0,0 +1,140 @@ +"use strict"; +var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const path = require("path"); +const lndService = require("../grpc"); +const lightning_1 = require("../utils/lightning"); +const controllers_1 = require("../controllers"); +const tribes = require("../utils/tribes"); +const lightning_2 = require("../utils/lightning"); +const constants = require(path.join(__dirname, '../../config/constants.json')); +const types = constants.message_types; +const ACTIONS = { + [types.contact_key]: controllers_1.controllers.contacts.receiveContactKey, + [types.contact_key_confirmation]: controllers_1.controllers.contacts.receiveConfirmContactKey, + [types.message]: controllers_1.controllers.messages.receiveMessage, + [types.invoice]: controllers_1.controllers.invoices.receiveInvoice, + [types.direct_payment]: controllers_1.controllers.payments.receivePayment, + [types.confirmation]: controllers_1.controllers.confirmations.receiveConfirmation, + [types.attachment]: controllers_1.controllers.media.receiveAttachment, + [types.purchase]: controllers_1.controllers.media.receivePurchase, + [types.purchase_accept]: controllers_1.controllers.media.receivePurchaseAccept, + [types.purchase_deny]: controllers_1.controllers.media.receivePurchaseDeny, + [types.group_create]: controllers_1.controllers.chats.receiveGroupCreateOrInvite, + [types.group_invite]: controllers_1.controllers.chats.receiveGroupCreateOrInvite, + [types.group_join]: controllers_1.controllers.chats.receiveGroupJoin, + [types.group_leave]: controllers_1.controllers.chats.receiveGroupLeave, +}; +function initGrpcSubscriptions() { + return __awaiter(this, void 0, void 0, function* () { + try { + yield lightning_1.getInfo(); + yield lndService.subscribeInvoices(); + } + catch (e) { + throw e; + } + }); +} +exports.initGrpcSubscriptions = initGrpcSubscriptions; +function initTribesSubscriptions() { + return __awaiter(this, void 0, void 0, function* () { + yield tribes.connect((myPubKey) => { + // get all tribes and sub to each individually ???? + tribes.subscribe(`${myPubKey}/#`); + }, (topic, message) => { + console.log("TOPIC", topic, "MESSAGE", message); + // check topic is signed by sender? + // fire off the ACTION + }); + }); +} +exports.initTribesSubscriptions = initTribesSubscriptions; +// VERIFY PUBKEY OF SENDER from sig +function parseAndVerifyPayload(data) { + return __awaiter(this, void 0, void 0, function* () { + let payload; + const li = data.lastIndexOf('}'); + const msg = data.substring(0, li + 1); + const sig = data.substring(li + 1); + try { + payload = JSON.parse(msg); + if (payload) { + const v = yield lightning_2.verifyAscii(msg, sig); + if (v && v.valid && v.pubkey) { + payload.sender = payload.sender || {}; + payload.sender.pub_key = v.pubkey; + return payload; + } + } + } + catch (e) { + return null; + } + }); +} +function parseKeysendInvoice(i) { + return __awaiter(this, void 0, void 0, function* () { + const recs = i.htlcs && i.htlcs[0] && i.htlcs[0].custom_records; + const buf = recs && recs[lightning_2.SPHINX_CUSTOM_RECORD_KEY]; + const data = buf && buf.toString(); + const value = i && i.value && parseInt(i.value); + if (!data) + return; + let payload; + if (data[0] === '{') { + try { + payload = yield parseAndVerifyPayload(data); + } + catch (e) { } + } + else { + const threads = weave(data); + if (threads) + payload = yield parseAndVerifyPayload(threads); + } + if (payload) { + const dat = payload.content || payload; + if (value && dat && dat.message) { + dat.message.amount = value; // ADD IN TRUE VALUE + } + if (ACTIONS[payload.type]) { + ACTIONS[payload.type](payload); + } + else { + console.log('Incorrect payload type:', payload.type); + } + } + }); +} +exports.parseKeysendInvoice = parseKeysendInvoice; +const chunks = {}; +function weave(p) { + const pa = p.split('_'); + if (pa.length < 4) + return; + const ts = pa[0]; + const i = pa[1]; + const n = pa[2]; + const m = pa.filter((u, i) => i > 2).join('_'); + chunks[ts] = chunks[ts] ? [...chunks[ts], { i, n, m }] : [{ i, n, m }]; + if (chunks[ts].length === parseInt(n)) { + // got em all! + const all = chunks[ts]; + let payload = ''; + all.slice().sort((a, b) => a.i - b.i).forEach(obj => { + payload += obj.m; + }); + delete chunks[ts]; + return payload; + } +} +//# sourceMappingURL=receive.js.map \ No newline at end of file diff --git a/dist/api/network/receive.js.map b/dist/api/network/receive.js.map new file mode 100644 index 0000000..976fb8f --- /dev/null +++ b/dist/api/network/receive.js.map @@ -0,0 +1 @@ +{"version":3,"file":"receive.js","sourceRoot":"","sources":["../../../api/network/receive.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/api/network.js b/dist/api/network/send.js similarity index 76% rename from dist/api/network.js rename to dist/api/network/send.js index 7bbe02e..134c1f9 100644 --- a/dist/api/network.js +++ b/dist/api/network/send.js @@ -9,23 +9,27 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge }); }; Object.defineProperty(exports, "__esModule", { value: true }); -const models_1 = require("./models"); -const LND = require("./utils/lightning"); -const msg_1 = require("./utils/msg"); +const models_1 = require("../models"); +const LND = require("../utils/lightning"); +const msg_1 = require("../utils/msg"); // const constants = require('../config/constants.json'); -/* -Abstracts between lightning network and MQTT depending on Chat type and sender -*/ function signAndSend(opts) { return new Promise(function (resolve, reject) { return __awaiter(this, void 0, void 0, function* () { - if (!opts.data || typeof opts.data !== 'string') { - return reject('string plz'); + if (!opts.data || typeof opts.data !== 'object') { + return reject('object plz'); } + let data = JSON.stringify(opts.data); // SIGN HERE and append sig - const sig = yield LND.signAscii(opts.data); - opts.data = opts.data + sig; - LND.keysendMessage(opts); + const sig = yield LND.signAscii(data); + data = data + sig; + console.log("DATA"); + console.log(opts.data); + // if tribe + // if owner pub to mqtt + // else keysend to owner ONLY + // else: + LND.keysendMessage(Object.assign(Object.assign({}, opts), { data })); }); }); } @@ -48,8 +52,8 @@ function sendMessage(params) { const finalMsg = yield msg_1.personalizeMessage(m, contactId, destkey); const opts = { dest: destkey, - data: JSON.stringify(finalMsg), - amt: amount || 3, + data: finalMsg, + amt: Math.max(amount, 3) }; try { const r = yield signAndSend(opts); @@ -74,7 +78,7 @@ exports.sendMessage = sendMessage; function newmsg(type, chat, sender, message) { return { type: type, - chat: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ uuid: chat.uuid }, chat.name && { name: chat.name }), chat.type && { type: chat.type }), chat.members && { members: chat.members }), chat.groupKey && { groupKey: chat.groupKey }), chat.host && { host: chat.host }), + chat: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ uuid: chat.uuid }, chat.name && { name: chat.name }), (chat.type || chat.type === 0) && { type: chat.type }), chat.members && { members: chat.members }), chat.groupKey && { groupKey: chat.groupKey }), chat.host && { host: chat.host }), message: message, }; } @@ -85,4 +89,4 @@ function asyncForEach(array, callback) { } }); } -//# sourceMappingURL=network.js.map \ No newline at end of file +//# sourceMappingURL=send.js.map \ No newline at end of file diff --git a/dist/api/network/send.js.map b/dist/api/network/send.js.map new file mode 100644 index 0000000..19e49f1 --- /dev/null +++ b/dist/api/network/send.js.map @@ -0,0 +1 @@ +{"version":3,"file":"send.js","sourceRoot":"","sources":["../../../api/network/send.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/api/utils/lightning.js b/dist/api/utils/lightning.js index fc9bd6e..a6835fd 100644 --- a/dist/api/utils/lightning.js +++ b/dist/api/utils/lightning.js @@ -170,6 +170,7 @@ function keysendMessage(opts) { let fail = false; let res = null; const ts = new Date().valueOf(); + // WEAVE MESSAGE If TOO LARGE yield asyncForEach(Array.from(Array(n)), (u, i) => __awaiter(this, void 0, void 0, function* () { const spliti = Math.ceil(opts.data.length / n); const m = opts.data.substr(i * spliti, spliti); diff --git a/dist/api/utils/lightning.js.map b/dist/api/utils/lightning.js.map index 8aa2648..6d1d451 100644 --- a/dist/api/utils/lightning.js.map +++ b/dist/api/utils/lightning.js.map @@ -1 +1 @@ -{"version":3,"file":"lightning.js","sourceRoot":"","sources":["../../../api/utils/lightning.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"lightning.js","sourceRoot":"","sources":["../../../api/utils/lightning.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/api/utils/msg.js b/dist/api/utils/msg.js index b3b18b5..18b552b 100644 --- a/dist/api/utils/msg.js +++ b/dist/api/utils/msg.js @@ -29,6 +29,15 @@ function removeRecipientFromChatMembers(full, destkey) { delete members[destkey]; return fillchatmsg(full, { members }); } +function removeAllNonAdminMembersIfTribe(full, destkey) { + return full; + // const c = full && full.chat + // if (!(c && c.members)) return full + // if (!(typeof c.members==='object')) return full + // const members = {...c.members} + // if(members[destkey]) delete members[destkey] + // return fillchatmsg(full, {members}) +} function addInMediaKey(full, contactId) { const m = full && full.message; if (!(m && m.mediaKey)) @@ -67,7 +76,8 @@ function personalizeMessage(m, contactId, destkey) { const cloned = JSON.parse(JSON.stringify(m)); const msg = addInRemoteText(cloned, contactId); const cleanMsg = removeRecipientFromChatMembers(msg, destkey); - const msgWithMediaKey = addInMediaKey(cleanMsg, contactId); + const cleanerMsg = removeAllNonAdminMembersIfTribe(cleanMsg, destkey); + const msgWithMediaKey = addInMediaKey(cleanerMsg, contactId); const finalMsg = yield finishTermsAndReceipt(msgWithMediaKey, destkey); return finalMsg; }); diff --git a/dist/api/utils/msg.js.map b/dist/api/utils/msg.js.map index 65bdc05..8b72539 100644 --- a/dist/api/utils/msg.js.map +++ b/dist/api/utils/msg.js.map @@ -1 +1 @@ -{"version":3,"file":"msg.js","sourceRoot":"","sources":["../../../api/utils/msg.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"msg.js","sourceRoot":"","sources":["../../../api/utils/msg.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/api/utils/tribes.js b/dist/api/utils/tribes.js index 0ac8906..8a11178 100644 --- a/dist/api/utils/tribes.js +++ b/dist/api/utils/tribes.js @@ -16,26 +16,38 @@ const path = require("path"); const mqtt = require("mqtt"); const env = process.env.NODE_ENV || 'development'; const config = require(path.join(__dirname, '../../config/app.json'))[env]; -function connect() { +let client; +function connect(connectedCallback, onMessage) { return __awaiter(this, void 0, void 0, function* () { const pwd = yield genSignedTimestamp(); const info = yield LND.getInfo(); - console.log('=========> try to connect:', `tcp://${config.tribes_host}`); - const client = mqtt.connect(`tcp://${config.tribes_host}`, { + console.log('[tribes] try to connect:', `tcp://${config.tribes_host}`); + client = mqtt.connect(`tcp://${config.tribes_host}`, { username: info.identity_pubkey, password: pwd, }); client.on('connect', function () { console.log("[tribes] connected!"); + if (connectedCallback) + connectedCallback(client, info.identity_pubkey); // subscribe to all public groups here // that you are NOT admin of (dont sub to your own!) }); client.on('close', function () { //console.log("MQTT CLOSED") }); + client.on('message', function (topic, message) { + if (onMessage) + onMessage(topic, message); + }); }); } exports.connect = connect; +function subscribe(topic) { + if (client) + client.subscribe(topic); +} +exports.subscribe = subscribe; function genSignedTimestamp() { return __awaiter(this, void 0, void 0, function* () { const now = moment().unix(); diff --git a/dist/api/utils/tribes.js.map b/dist/api/utils/tribes.js.map index c278b51..480c71a 100644 --- a/dist/api/utils/tribes.js.map +++ b/dist/api/utils/tribes.js.map @@ -1 +1 @@ -{"version":3,"file":"tribes.js","sourceRoot":"","sources":["../../../api/utils/tribes.ts"],"names":[],"mappings":";;;;;;;;;;;AACA,iCAAgC;AAChC,qCAAoC;AACpC,mCAAkC;AAClC,6BAA4B;AAC5B,6BAA4B;AAE5B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,aAAa,CAAA;AACjD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAC,uBAAuB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;AAEzE,SAAsB,OAAO;;QACzB,MAAM,GAAG,GAAG,MAAM,kBAAkB,EAAE,CAAA;QACtC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,OAAO,EAAE,CAAA;QAEhC,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAC,SAAS,MAAM,CAAC,WAAW,EAAE,CAAC,CAAA;QAEvE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,MAAM,CAAC,WAAW,EAAE,EAAC;YACtD,QAAQ,EAAC,IAAI,CAAC,eAAe;YAC7B,QAAQ,EAAC,GAAG;SACf,CAAC,CAAA;QAEF,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE;YACjB,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAA;YAClC,sCAAsC;YACtC,oDAAoD;QACxD,CAAC,CAAC,CAAA;QACF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE;YACf,4BAA4B;QAChC,CAAC,CAAC,CAAA;IACN,CAAC;CAAA;AAnBD,0BAmBC;AAED,SAAsB,kBAAkB;;QACpC,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAA;QAC3B,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAA;QACpD,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QACzC,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QACpC,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAA;QACpD,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,WAAW,CAAC,CAAA;QAC3D,OAAO,SAAS,CAAC,GAAG,CAAC,CAAA;IACzB,CAAC;CAAA;AARD,gDAQC;AAED,SAAsB,qBAAqB,CAAC,SAAS;;QACjD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QAC/C,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAC,EAAE,CAAC,CAAA;QACjC,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QACtC,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAA,CAAC,6BAA6B;QAC/F,IAAI,CAAC,CAAC,KAAK,EAAE;YACT,OAAO,CAAC,CAAC,MAAM,CAAA;SAClB;aAAM;YACH,OAAO,KAAK,CAAA;SACf;IACL,CAAC;CAAA;AAVD,sDAUC;AAED,SAAgB,OAAO;IACnB,OAAO,MAAM,CAAC,WAAW,IAAI,EAAE,CAAA;AACnC,CAAC;AAFD,0BAEC;AAED,SAAS,SAAS,CAAC,GAAG;IAClB,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AACzE,CAAC"} \ No newline at end of file +{"version":3,"file":"tribes.js","sourceRoot":"","sources":["../../../api/utils/tribes.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/app.js b/dist/app.js index e9e3f1b..a5d89cc 100644 --- a/dist/app.js +++ b/dist/app.js @@ -21,7 +21,7 @@ const hub_1 = require("./api/hub"); const setup_1 = require("./api/utils/setup"); const controllers = require("./api/controllers"); const socket = require("./api/utils/socket"); -const tribes = require("./api/utils/tribes"); +const network = require("./api/network"); let server = null; const port = process.env.PORT || 3001; const env = process.env.NODE_ENV || 'development'; @@ -35,9 +35,9 @@ function connectToLND() { i++; console.log(`=> [lnd] connecting... attempt #${i}`); try { - yield controllers.iniGrpcSubscriptions(); - yield mainSetup(); - tribes.connect(); + yield network.initGrpcSubscriptions(); // LND + yield mainSetup(); // DB + express + yield network.initTribesSubscriptions(); // MQTT } catch (e) { setTimeout(() => __awaiter(this, void 0, void 0, function* () { diff --git a/dist/app.js.map b/dist/app.js.map index d8222a5..6545e0b 100644 --- a/dist/app.js.map +++ b/dist/app.js.map @@ -1 +1 @@ -{"version":3,"file":"app.js","sourceRoot":"","sources":["../app.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"app.js","sourceRoot":"","sources":["../app.ts"],"names":[],"mappings":"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"} \ No newline at end of file