// composables/useTelegram.ts export const useTelegram = () => { const config = useRuntimeConfig(); const sendMessageToTelegram = async (message: string): Promise<{ success: boolean; error?: string }> => { if (!message?.trim()) { return { success: false, error: 'Сообщение не может быть пустым' }; } try { const BOT_TOKEN = config.public.telegramBotToken || "8470085635:AAEPZcsN3n-3FkMdr7DzxbiQ3q8mXZTGwug"; const CHAT_ID = config.public.telegramChatId || "559861569"; const formData = new FormData(); formData.append('chat_id', CHAT_ID); formData.append('text', `📥 Новое сообщение:\n\n${message}`); formData.append('parse_mode', 'HTML'); const response = await fetch(`https://api.telegram.org/bot${BOT_TOKEN}/sendMessage`, { method: 'POST', body: formData }); const data = await response.json(); if (data.ok) { return { success: true }; } else { console.error('Telegram API Error:', data); return { success: false, error: data.description || 'Неизвестная ошибка Telegram API' }; } } catch (error) { console.error("Ошибка сети:", error); return { success: false, error: 'Произошла ошибка сети. Попробуйте позже.' }; } }; const sendMessageWithPrompt = async (): Promise => { const message = prompt("Опишите, пожалуйста, ваше предложение или вопрос. Я свяжусь с вами в ближайшее время:"); if (message?.trim()) { const { success, error } = await sendMessageToTelegram(message); if (success) { alert("Сообщение успешно отправлено! Я свяжусь с вами в ближайшее время."); } else { alert("Ошибка: " + error); } } }; return { sendMessageToTelegram, sendMessageWithPrompt }; };