Browse Source

heartbeat

push-params
Evan Feenstra 4 years ago
parent
commit
5b0f8d26ec
  1. 4
      config/constants.json
  2. 4
      dist/config/constants.json
  3. 32
      dist/src/controllers/confirmations.js
  4. 2
      dist/src/controllers/confirmations.js.map
  5. 2
      dist/src/controllers/index.js
  6. 2
      dist/src/controllers/index.js.map
  7. 31
      src/controllers/confirmations.ts
  8. 2
      src/controllers/index.ts

4
config/constants.json

@ -51,7 +51,9 @@
"tribe_delete": 22,
"bot_install": 23,
"bot_cmd": 24,
"bot_res": 25
"bot_res": 25,
"heartbeat": 26,
"heartbeat_confirmation": 27
},
"payment_errors": {
"timeout": "Timed Out",

4
dist/config/constants.json

@ -51,7 +51,9 @@
"tribe_delete": 22,
"bot_install": 23,
"bot_cmd": 24,
"bot_res": 25
"bot_res": 25,
"heartbeat": 26,
"heartbeat_confirmation": 27
},
"payment_errors": {
"timeout": "Timed Out",

32
dist/src/controllers/confirmations.js

@ -113,4 +113,36 @@ function tribeOwnerAutoConfirmation(msg_id, chat_uuid) {
});
}
exports.tribeOwnerAutoConfirmation = tribeOwnerAutoConfirmation;
function receiveHeartbeat(payload) {
return __awaiter(this, void 0, void 0, function* () {
console.log('=> received heartbeat');
const dat = payload.content || payload;
const sender_pub_key = dat.sender.pub_key;
const amount = dat.message.amount;
if (!(sender_pub_key && sender_pub_key.length === 66))
return console.log('no sender');
if (!amount)
return console.log('no amount');
const owner = yield models_1.models.Contact.findOne({ where: { isOwner: true } });
const MIN_SATS = 3;
const amt = Math.max(amount || MIN_SATS);
const opts = {
amt,
dest: sender_pub_key,
data: {
type: constants.message_types.heartbeat_confirmation,
message: { amount: amt },
sender: { pub_key: owner.publicKey }
}
};
try {
yield network.signAndSend(opts);
return true;
}
catch (e) {
return false;
}
});
}
exports.receiveHeartbeat = receiveHeartbeat;
//# sourceMappingURL=confirmations.js.map

2
dist/src/controllers/confirmations.js.map

@ -1 +1 @@
{"version":3,"file":"confirmations.js","sourceRoot":"","sources":["../../../src/controllers/confirmations.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"confirmations.js","sourceRoot":"","sources":["../../../src/controllers/confirmations.ts"],"names":[],"mappings":"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"}

2
dist/src/controllers/index.js

@ -147,5 +147,7 @@ exports.ACTIONS = {
[msgtypes.bot_install]: bots.receiveBotInstall,
[msgtypes.bot_cmd]: bots.receiveBotCmd,
[msgtypes.bot_res]: bots.receiveBotRes,
[msgtypes.heartbeat]: confirmations.receiveHeartbeat,
[msgtypes.heartbeat_confirmation]: () => { },
};
//# sourceMappingURL=index.js.map

2
dist/src/controllers/index.js.map

File diff suppressed because one or more lines are too long

31
src/controllers/confirmations.ts

@ -100,3 +100,34 @@ export async function tribeOwnerAutoConfirmation(msg_id,chat_uuid){
})
}
}
export async function receiveHeartbeat(payload) {
console.log('=> received heartbeat')
const dat = payload.content || payload
const sender_pub_key = dat.sender.pub_key
const amount = dat.message.amount
if (!(sender_pub_key && sender_pub_key.length===66)) return console.log('no sender')
if (!amount) return console.log('no amount')
const owner = await models.Contact.findOne({ where: { isOwner: true } })
const MIN_SATS = 3
const amt = Math.max(amount || MIN_SATS)
const opts = {
amt,
dest:sender_pub_key,
data: <network.Msg>{
type: constants.message_types.heartbeat_confirmation,
message: { amount: amt },
sender: {pub_key: owner.publicKey}
}
}
try {
await network.signAndSend(opts)
return true
} catch (e) {
return false
}
}

2
src/controllers/index.ts

@ -147,4 +147,6 @@ export const ACTIONS = {
[msgtypes.bot_install]: bots.receiveBotInstall,
[msgtypes.bot_cmd]: bots.receiveBotCmd,
[msgtypes.bot_res]: bots.receiveBotRes,
[msgtypes.heartbeat]: confirmations.receiveHeartbeat,
[msgtypes.heartbeat_confirmation]: ()=>{},
}

Loading…
Cancel
Save