La API del bot de Telegram se puede usar para crear un chatbot que devuelva los detalles completos de películas, series web y series de televisión enviando el nombre de la película o serie como un comando. Telegram proporciona un montón de métodos de API para realizar diferentes funciones. El bot de Telegram se puede utilizar para conocer los detalles completos de la película sin tener que ir a otros sitios web como el sitio de IMDb, etc.
requisitos previos:
- Conocimiento de Javascript y configuración de un entorno de Node.
- La última versión de Node (versión > 10)
- La última versión de npm (versión > 6)
Comando para verificar si Node y npm están presentes en su sistema:
$ npm --v 6.14.5 $ node --version v10.15.0
Crear bot y obtener token de API:
- Abra la aplicación Telegram y busque @BotFather.
- Haz clic en el botón de inicio o envía “/start”.
- Luego envíe el mensaje «/newbot» para configurar un nombre y un nombre de usuario.
- El BotFather luego le dará un token de API.
Obtener la clave API de la película:
- Vaya al sitio web de OMDB (base de datos abierta de películas).
- Cree una cuenta según el límite.
- Recibirá su propia clave API.
Instalación de módulos:
Requests: Para instalar este módulo, escriba el siguiente comando en la terminal.
$ npm install --save requests
node-telegram-bot-api : módulo Node.js para interactuar con la API oficial de Telegram Bot.
$ npm install node-telegram-bot-api
Nombre de archivo: 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 reques('http://www.omdbapi.com/?t=' + 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:\nTitle: ' + res.Title + '\nGenre: ' + res.Genre + '\nRated: ' + res.Rated + ' \nReleased: ' + 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 } } }) })
Pasos para ejecutar el programa: Ejecute el archivo bot.js usando el siguiente comando:
$ node bot.js
Ahora, vaya a su bot y escriba /movie movie-name y vea los resultados.
Producción: