120 lines
3.0 KiB
Markdown
120 lines
3.0 KiB
Markdown
|
|
# 🔧 Установка Telegram Bot Token
|
|||
|
|
|
|||
|
|
## Проблема
|
|||
|
|
|
|||
|
|
Ошибка: `TELEGRAM_BOT_TOKEN не установлен`
|
|||
|
|
|
|||
|
|
## Решение
|
|||
|
|
|
|||
|
|
### 1. Получить токен от BotFather
|
|||
|
|
|
|||
|
|
1. Откройте Telegram
|
|||
|
|
2. Найдите бота [@BotFather](https://t.me/BotFather)
|
|||
|
|
3. Отправьте команду `/newbot`
|
|||
|
|
4. Следуйте инструкциям:
|
|||
|
|
- Введите имя бота (например: `My Nakama Bot`)
|
|||
|
|
- Введите username бота (например: `my_nakama_bot`)
|
|||
|
|
5. Получите токен (формат: `123456789:ABCdefGHIjklMNOpqrsTUVwxyz`)
|
|||
|
|
|
|||
|
|
### 2. Установить токен на сервере
|
|||
|
|
|
|||
|
|
#### Вариант A: Через .env файл (Рекомендуется)
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
ssh root@ваш_IP
|
|||
|
|
cd /var/www/nakama/backend
|
|||
|
|
|
|||
|
|
# Создать .env файл если его нет
|
|||
|
|
nano .env
|
|||
|
|
|
|||
|
|
# Добавить строку:
|
|||
|
|
TELEGRAM_BOT_TOKEN=ваш_токен_от_BotFather
|
|||
|
|
|
|||
|
|
# Сохранить: Ctrl+O, Enter, Ctrl+X
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### Вариант B: Через PM2 ecosystem
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
ssh root@ваш_IP
|
|||
|
|
cd /var/www/nakama
|
|||
|
|
|
|||
|
|
# Создать ecosystem.config.js
|
|||
|
|
nano ecosystem.config.js
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
Добавьте:
|
|||
|
|
```javascript
|
|||
|
|
module.exports = {
|
|||
|
|
apps: [{
|
|||
|
|
name: 'nakama-backend',
|
|||
|
|
script: './backend/server.js',
|
|||
|
|
env: {
|
|||
|
|
NODE_ENV: 'production',
|
|||
|
|
TELEGRAM_BOT_TOKEN: 'ваш_токен_от_BotFather',
|
|||
|
|
// ... другие переменные
|
|||
|
|
}
|
|||
|
|
}]
|
|||
|
|
};
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### Вариант C: Через export (Временное решение)
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
ssh root@ваш_IP
|
|||
|
|
export TELEGRAM_BOT_TOKEN="ваш_токен_от_BotFather"
|
|||
|
|
pm2 restart nakama-backend --update-env
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 3. Перезапустить backend
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
pm2 restart nakama-backend
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 4. Проверить логи
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
pm2 logs nakama-backend --lines 20
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
Должно быть:
|
|||
|
|
```
|
|||
|
|
✅ Telegram Bot инициализирован
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**Не должно быть:**
|
|||
|
|
```
|
|||
|
|
⚠️ TELEGRAM_BOT_TOKEN не установлен!
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## Проверка работы
|
|||
|
|
|
|||
|
|
После установки токена:
|
|||
|
|
1. Откройте приложение
|
|||
|
|
2. Попробуйте отправить изображение в Telegram из поиска
|
|||
|
|
3. Изображение должно прийти в личные сообщения с ботом
|
|||
|
|
|
|||
|
|
## Важно
|
|||
|
|
|
|||
|
|
- Токен должен быть в формате: `123456789:ABCdefGHIjklMNOpqrsTUVwxyz`
|
|||
|
|
- **НЕ** добавляйте кавычки в .env файле!
|
|||
|
|
- **НЕ** делитесь токеном публично!
|
|||
|
|
- Токен должен быть установлен до запуска бота
|
|||
|
|
|
|||
|
|
## Пример .env файла
|
|||
|
|
|
|||
|
|
```env
|
|||
|
|
NODE_ENV=production
|
|||
|
|
PORT=3000
|
|||
|
|
MONGODB_URI=mongodb://localhost:27017/nakama
|
|||
|
|
TELEGRAM_BOT_TOKEN=123456789:ABCdefGHIjklMNOpqrsTUVwxyz
|
|||
|
|
FRONTEND_URL=https://nakama.glpshchn.ru
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## Дополнительная информация
|
|||
|
|
|
|||
|
|
- [Telegram Bot API](https://core.telegram.org/bots/api)
|
|||
|
|
- [BotFather](https://t.me/BotFather)
|
|||
|
|
|