Telegraf предпочтительнее, так как он более "интересный" и "читабельный". Ключевые моменты использования сцены, клавиатур, а также работы с сессиями в Telegraf. В Telegraf интегрированы удобные инструменты для создания сцены и управления состоянием бота. Это упрощает разработку ботов за счет более структурированного подхода к обработке событий и управления шагами сцены (DEV Community) (DEV Community)
Основные аргументы в пользу Telegraf:
- Простота настройки и работы с клавиатурами и сценами.
- Удобное управление сессиями.
- Читабельный и организованный код.
Таким образом, Telegraf лучше подходит для тех, кто ценит структурированность и удобство использования.
Пример код с Telegraf
const { Telegraf } = require('telegraf');
// Создайте экземпляр бота с вашим токеном
const bot = new Telegraf('YOUR_TELEGRAM_BOT_TOKEN');
// Обработчик команды /start
bot.start((ctx) => ctx.reply('Добро пожаловать!'));
// Обработчик текстовых сообщений
bot.on('text', (ctx) => {
ctx.reply(`Вы написали: ${ctx.message.text}`);
});
// Запуск бота
bot.launch();
// Обработка ошибок
process.once('SIGINT', () => bot.stop('SIGINT'));
process.once('SIGTERM', () => bot.stop('SIGTERM'));
Пример кода с Node-Telegram-Bot-API
const TelegramBot = require('node-telegram-bot-api');
// Создайте экземпляр бота с вашим токеном и включите опрос
const bot = new TelegramBot('YOUR_TELEGRAM_BOT_TOKEN', { polling: true });
// Обработчик команды /start
bot.onText(/\/start/, (msg) => {
const chatId = msg.chat.id;
bot.sendMessage(chatId, 'Добро пожаловать!'); });
// Обработчик текстовых сообщений
bot.on('message', (msg) => {
const chatId = msg.chat.id;
bot.sendMessage(chatId, `Вы написали: ${msg.text}`);
});
Установка
Убедитесь, что у вас установлены соответствующие пакеты:
npm install telegraf
npm install node-telegram-bot-api
Эти примеры создают простые боты, которые отвечают на команды и текстовые сообщения. Не забудьте заменить YOUR_TELEGRAM_BOT_TOKEN
на ваш токен бота.