2
0
mirror of https://github.com/thedevs-network/the-guard-bot synced 2025-08-23 18:38:05 +00:00

47 lines
932 B
JavaScript
Raw Normal View History

2017-07-24 17:12:38 +02:00
'use strict';
const { telegram } = require('../bot');
const { promisify } = require('util');
const delay = promisify(setTimeout);
const escapeHtml = s => s
.replace(/</g, '&lt;');
const link = ({ id, first_name }) =>
`<a href="tg://user?id=${id}">${escapeHtml(first_name)}</a>`;
2017-07-24 17:12:38 +02:00
const quietLink = (user) =>
user.username
? `<a href="t.me/${user.username}">${escapeHtml(user.first_name)}</a>`
: link(user);
/**
* @param {number} ms
* Deletes messages after (ms) milliseconds
* @returns {undefined}
*/
2017-07-24 18:08:31 +02:00
const deleteAfter = ms => ctx =>
setTimeout(
() =>
ctx.telegram.deleteMessage(ctx.chat.id, ctx.message.message_id),
ms
);
2017-07-24 18:08:31 +02:00
const scheduleDeletion = async ({ chat, message_id }) => {
if (chat.type === 'private') {
return null;
}
await delay(5 * 60 * 1000);
return telegram.deleteMessage(chat.id, message_id);
};
2017-07-24 17:12:38 +02:00
module.exports = {
2017-07-24 18:08:31 +02:00
deleteAfter,
2017-09-24 23:23:13 +02:00
escapeHtml,
link,
quietLink,
scheduleDeletion,
2017-07-24 17:12:38 +02:00
};