UNPKG

@qso-soft/shared

Version:

Shared library for QSO-soft

35 lines 1.34 kB
import axios from 'axios'; export const TG_BASE_URL = 'https://api.telegram.org/bot'; export const getTgChatIds = async (token) => { const url = `${TG_BASE_URL}${token}/getUpdates`; const response = await axios.get(url); const { ok: status = false, result = null } = response?.data || {}; if (!status || !result || !result?.length) { throw new Error('TG API Error'); } const uniqChatIds = new Set(); result.forEach((details) => uniqChatIds.add(details.message.chat.id)); return Array.from(uniqChatIds); }; export const sendTgMessage = async ({ chatIds, token, message }) => { const url = `${TG_BASE_URL}${token}/sendMessage`; const requestPromises = chatIds.map(async (id) => { const params = { chat_id: id, text: message }; return axios.post(url, params); }); return Promise.all(requestPromises); }; export const getTgMessageByStatus = (status = 'success', moduleName, message) => { const content = message ? `[${moduleName}]: ${message}` : moduleName; switch (status) { case 'success': return `✅ ${content}`; case 'warning': return `⚠️ ${content}`; case 'error': return `❌ ${content}`; case 'critical': return `💢 ${content}`; } }; //# sourceMappingURL=helpers.js.map