import axios from 'axios'; import { isDevMode, telegramBotToken, telegramChatIds } from './env-exporter'; const BOT_TOKEN = telegramBotToken; const CHAT_IDS = telegramChatIds; const TELEGRAM_API_URL = `https://api.telegram.org/bot${BOT_TOKEN}`; /** * Send a message to Telegram bot * @param message The message text to send * @returns Promise indicating success, failure, or null if dev mode */ export const sendTelegramMessage = async (message: string): Promise => { if (isDevMode) { return null; } try { const results = await Promise.all( CHAT_IDS.map(async (chatId) => { try { const response = await axios.post(`${TELEGRAM_API_URL}/sendMessage`, { chat_id: chatId, text: message, parse_mode: 'HTML', }); if (response.data && response.data.ok) { console.log(`Telegram message sent successfully to ${chatId}`); return true; } else { console.error(`Telegram API error for ${chatId}:`, response.data); return false; } } catch (error) { console.error(`Failed to send Telegram message to ${chatId}:`, error); return false; } }) ); console.log('sent telegram message successfully') // Return true if at least one message was sent successfully return results.some((result) => result); } catch (error) { console.error('Failed to send Telegram message:', error); return false; } };