Как создать бота Movie Telegram с помощью Node.js?
API бота Telegram можно использовать для создания чат-бота, который возвращает полную информацию о фильмах, веб-сериалах и сериалах, отправляя название фильма или сериала в виде команды. Telegram предоставляет набор методов API для выполнения различных функций. С помощью телеграмм-бота можно узнать полную информацию о фильме, не переходя на другие веб-сайты, такие как сайт IMDb и т. Д.
Предпосылки:
- Знание Javascript и настройка среды узла.
- Последняя версия Node (версия> 10)
- Последняя версия npm (версия> 6)
Команда для проверки наличия в вашей системе Node и npm:
$ npm --v 6.14.5 $ node --version Версия 10.15.0
Создание бота и получение токена API:
- Откройте приложение Telegram и найдите @BotFather.
- Нажмите кнопку «Пуск» или отправьте «/ start».
- Затем отправьте сообщение «/ newbot», чтобы указать имя и имя пользователя.
- Затем BotFather предоставит вам токен API.
Получение ключа API фильма:
- Перейдите на сайт OMDB (открытая база данных фильмов).
- Создайте учетную запись в соответствии с лимитом.
- Вы получите собственный ключ API.
Установка модулей:
Запросы: Чтобы установить этот модуль, введите следующую команду в терминале.
$ npm install - сохранить запросы
node-telegram-bot-api : модуль Node.js для взаимодействия с официальным API Telegram Bot.
$ npm установить node-telegram-bot-api
Имя файла: bot.js
// Requiring module var reques = require( 'requests' ) var TelegramBot = require( 'node-telegram-bot-api' ) token = "YOUR-TELEGRAM_API-TOKEN" movieapi = "YOUR-OMDB_API-TOKEN" // Create a bot that uses 'polling' // to fetch new updates var bot = new TelegramBot(token, { polling: true }); bot.on( "polling_error" , (err) => console.log(err)); bot.onText(//movie (.+)/, function (msg, match) { // The 'msg' is the received Message from // user and 'match' is the result of // execution above on the text content // Getting the name of movie from the // message sent to bot var movie = match[1]; var chatId = msg.chat.id + movie + '&apikey=movieapi' , function (error, response, body) { if (!error && response.statusCode == 200) { bot.sendMessage(chatId, '_Looking for_ ' + movie + '...' , { parse_mode: "Markdown" }).then(msg) { res = JSON.parse(body) bot.sendPhoto(chatId, res.Poster, { caption: 'Result:
Title: ' + res.Title + '
Genre: ' + res.Genre + '
Rated: ' + res.Rated + '
Released: ' + res.Released }) // Sending back response from the // bot to the user // Response has many other details, // which can be used or sent as per // requirement } } }) }) |
Шаги по запуску программы: Запустите файл bot.js, используя следующую команду:
$ node bot.js
Теперь перейдите к своему боту, введите / movie movie-name и посмотрите результаты.
Выход: