# 📱 Настройка Telegram Бота для Логов ## 🎯 Цель Пользователи смогут **добровольно** отправлять логи ошибок через Telegram, и вы будете получать их мгновенно в вашу группу/канал. --- ## 📋 Шаг 1: Создайте Telegram Бота 1. Откройте Telegram и найдите **@BotFather** 2. Отправьте команду: `/newbot` 3. Введите имя бота: **Umbrix Log Bot** 4. Введите username: **@umbrix_logs_bot** (или любой свободный) 5. **СКОПИРУЙТЕ TOKEN** который выдаст BotFather (будет примерно таким): ``` 1234567890:ABCdefGHIjklMNOpqrsTUVwxyz1234567890 ``` --- ## 📋 Шаг 2: Создайте Приватную Группу 1. Создайте **приватную группу** в Telegram (или канал) 2. Назовите её например: **Umbrix Logs** 3. **Добавьте бота** в эту группу: - Нажмите на группу → Info → Add members - Найдите вашего бота по username (@umbrix_logs_bot) - Добавьте его --- ## 📋 Шаг 3: Получите CHAT_ID ### Вариант A: Через веб-запрос 1. Отправьте **любое сообщение** в созданную группу 2. Откройте в браузере (замените ``): ``` https://api.telegram.org/bot/getUpdates ``` Пример: ``` https://api.telegram.org/bot1234567890:ABCdefGHIjkl/getUpdates ``` 3. Найдите в ответе: ```json { "message": { "chat": { "id": -1001234567890, ← ЭТО ВАШ CHAT_ID "title": "Umbrix Logs" } } } ``` ### Вариант B: Через бота @userinfobot 1. Добавьте **@userinfobot** в вашу группу 2. Он автоматически напишет CHAT_ID группы --- ## 📋 Шаг 4: Настройка в Коде 1. **Скопируйте файл-образец**: ```bash cd /home/vodorod/dorod/hiddify-original-v2.5.7 cp lib/core/telegram_config.dart.example lib/core/telegram_config.dart ``` 2. **Откройте** `lib/core/telegram_config.dart` 3. **Вставьте свои данные**: ```dart class TelegramConfig { static const String botToken = '1234567890:ABCdefGHIjklMNOpqrsTUVwxyz1234567890'; static const String chatId = '-1001234567890'; // С минусом для групп! // Остальное не трогайте static const String apiUrl = 'https://api.telegram.org'; static const int maxMessageLength = 4000; } ``` 4. **ВАЖНО**: Добавьте в `.gitignore`: ```bash echo "lib/core/telegram_config.dart" >> .gitignore ``` --- ## 📋 Шаг 5: Проверка 1. Соберите приложение: ```bash flutter build apk --debug ``` 2. Установите на эмулятор/телефон 3. Зайдите в **Настройки → О приложении** 4. Нажмите **"Отправить логи разработчику"** 5. Проверьте вашу Telegram группу - должно прийти сообщение! 🎉 --- ## 🔐 Безопасность ### ✅ ЧТО БЕЗОПАСНО: - Токен бота хранится в `telegram_config.dart` (не в Git) - Группа приватная (только вы видите логи) - Логи анонимны (нет IP, email, паролей) ### ⚠️ ЧТО ОТПРАВЛЯЕТСЯ: - Версия приложения - Версия Android - Модель устройства (Samsung, Xiaomi) - Последние 50 строк логов - Анонимный ID (хэш от device_id) ### 🚫 ЧТО НЕ ОТПРАВЛЯЕТСЯ: - IP адрес - Email пользователя - VPN конфигурация - Серверы/ключи - История сайтов - Трафик --- ## 📊 Пример Сообщения в Telegram ``` 🐛 Отчёт об ошибке Umbrix 📱 Версия: 1.0.0 🤖 Android: 13 📲 Устройство: Samsung SM-G991B 🆔 ID: a3f7c9d2 (анонимный) 🕐 Время: 2024-12-27 15:30:22 📋 Логи: [ERROR] Connection failed: Timeout [INFO] Retrying connection... [ERROR] Failed after 3 attempts ... ``` --- ## 🛠️ Альтернативы Если Telegram не подходит, можете использовать: 1. **Email** (через SMTP или веб-сервис) 2. **GitHub Issues** (автоматически через API) 3. **Discord Webhook** 4. **Slack Webhook** Но Telegram - самый простой и удобный вариант для начала! 👍 --- ## ❓ FAQ **Q: Бот не отвечает** A: Проверьте что бот добавлен в группу и вы скопировали правильный токен **Q: Не могу найти CHAT_ID** A: Убедитесь что отправили сообщение в группу ПОСЛЕ добавления бота **Q: Лимит сообщений?** A: Telegram Bot API позволяет 30 сообщений в секунду (более чем достаточно) **Q: Можно ли использовать личный чат вместо группы?** A: Да! Напишите боту /start, получите свой chat_id через getUpdates **Q: Безопасно ли хранить токен в коде?** A: Да, если файл в .gitignore. Но для production лучше использовать environment variables --- **Дата создания**: 27 декабря 2025 г.