По договоренности
📌 Техническое задание: Telegram-бот в n8n c DeepSeek R1, подписками, лимитами и Google Sheets
🎯 Цель:
Разработать Telegram-бота, работающего внутри n8n, который:
Позволяет пользователю запросить объяснительные через меню;
Обрабатывает запросы через LLM DeepSeek R1 (API);
Учитывает количество бесплатных запросов (до 6) для каждого пользователя;
Подключен к таблице Google Sheets: хранит информацию о пользователе, его подписке, счётчике запросов;
При превышении лимита показывает плашку с предложением подписаться (интеграция с ЮKassa планируется позже).
🧠 Общая логика бота:
Пользователь пишет /start — получает приветственное сообщение и меню с кнопками:
Кнопки:
📌 Командир
👁 Очевидец
💼 Старшина
📃 Заключение
✍️ Свой текст
После нажатия кнопки:
Отправляется соответствующий промт в LLM-модель DeepSeek R1
Ответ выводится пользователю как текст
Перед генерацией:
Проверяется в таблице, есть ли пользователь (userId) и сколько у него осталось бесплатных запросов
Если пользователь новый — создаётся новая строка
Если есть подписка (sub = true) — генерировать без ограничений
Если подписки нет и quota < 6 — разрешить и увеличить счётчик
Если quota >= 6 — показать кнопку "Оформить подписку"
📁 Google Sheets — структура:
Таблица с названием: Bot
Страница: Users
Колонки:
A: userId
B: chatId
C: role (по умолчанию null)
D: quota (по умолчанию 0)
E: sub (true / false)
Пример строки:
userId chatId role quota sub
123456 123456 командир 3 false