June 13, 2020

Извращаемся или пишем телеграм бота на node.js

Сделано за пол минуты :/

Итак. Главный вопрос:

  • Зачем, а главное нахуя?

Сам хз, но недавно я решил вытворить такую херату и в итоге понял, что писать тг ботов на ноде раза в 2 легче, чем на питоне. Давайте начнем.


Для начала скачаем сам node.js на наш пк. Просто скачивайте с официального сайта установщик и запустите.

Далее мы создадим файл с расширением .js и зайдем в него. (Я назвал его main)

Файл

Такс. Теперь зайдем в терминал, потом в директорию с проектом и напишем там:

npm install node-telegram-bot-api
install

Отлично. Теперь пропишем пару констант.

const TOKEN = 'ТОКЕН БОТА'
const Telegram = require("node-telegram-bot-api")
const bot = new Telegram(TOKEN, {
    polling: true
})

Все. Бот создан и готов к работе. Осталось лишь прописать его поведение. Поскольку здесь нельзя создать именно команду, мы обойдемся просто проверкой на текст. Пишем.

bot.on("message", async (message) => {    
    })

Это скелет всего бота. Давайте теперь сократим функцию отправки сообщения и заюзаем ее.

bot.on("message", async (message) => { 
    message.send = (text, params) => bot.sendMessage(message.chat.id, text, params)
    if(!message.text) return
    if (message.text == "/start") {
        message.send("Hello, bro!")    
    }
})

Найс. Теперь при команде /start, наш бот будет писать "Hello, bro!".

Теперь можете запустить бота командой "node имя_файла.js" в терминале.


Собственно все. Спасибо за прочтение. Если хотите вторую часть. Пишите об этом в чате.