#Кодомагия
Сегодня мы с тобой напишем свой первый
Telegram-бот — простенький, но полезный. Этот бот поможет поддерживать порядок в чате, автоматически удаляя сообщения о вступлении новых участников и выходе из чата, а также любые сообщения с ссылками.
🚀 Шаг 1: Установка Telegraf.jsНачнём с установки нужных инструментов. Нам понадобится
Node.js и библиотека
Telegraf.js. Открываем терминал и вводим:
npm init -y
npm install telegraf
💻 Шаг 2: Пишем кодТеперь пишем код для нашего бота. Создаём файл bot.js и вставляем следующий код:
const { Telegraf } = require('telegraf');
const bot = new Telegraf('YOUR_BOT_API_TOKEN');
// Удаляем сообщения о вступлении или выходе
bot.on('message', async (ctx) => {
if (ctx.message.new_chat_members || ctx.message.left_chat_member) {
try {
await ctx.deleteMessage();
console.log('Сообщение о вступлении или выходе удалено.');
} catch (err) {
console.error('Ошибка при удалении сообщения:', err);
}
}
});
// Удаляем сообщения с ссылками
bot.on('text', async (ctx) => {
const messageText = ctx.message.text;
const linkRegex = /(https?:\/\/[^\s]+)/g;
if (linkRegex.test(messageText)) {
try {
await ctx.deleteMessage();
console.log('Сообщение с ссылкой удалено.');
} catch (err) {
console.error('Ошибка при удалении сообщения с ссылкой:', err);
}
}
});
bot.launch()
.then(() => console.log('Бот запущен!'))
.catch(err => console.error('Ошибка при запуске:', err));
🔑 Шаг 3: Получаем API токенДля работы бота нужен API токен от Telegram. Переходим к
BotFather, создаём нового бота с помощью команды /newbot, и вставляем полученный токен вместо 'YOUR_BOT_API_TOKEN' в код.
💥 Шаг 4: Запуск ботаТеперь запускаем нашего бота командой:
node bot.js
Что умеет наш бот? 1.
Удалять сообщения о новых участниках или тех, кто покинул чат — никакого лишнего шума.
2.
Удалять сообщения с ссылками — чистим чат от спама и рекламы.
Вот так, за несколько шагов, мы с тобой создали своего первого Telegram-бота. Простого, но весьма полезного.
И если ты захочешь сделать бота ещё умнее, можно добавить пару строк кода и интегрировать GPT. Тогда бот не только будет удалять сообщения с ссылками, но и проверять их на наличие спама и рекламы, чтобы улучшить фильтрацию.
How to enable auto-translation in Telegram to read my news in your language