Здравствуйте, я борюсь в течение нескольких дней, чтобы сделать телеграмму бота, и после того, как я узнаю все основы, я обнаружил, что это было так легко сделать, вы можете попробовать это здесь @Elbaronbot Отказ Так что давайте начнем сделать наш бот.
Получение ключа API от бота отца
- Мы начинаем с общение с отцом бота через этот URL @Botfather Отказ
- Отправить это
/Начало - Затем мы отправляем новую команду Bot
/Ньюбот - Бот Отец просит нас на имя нашего бота, это имя должно закончиться ботом, и я буду называть мою Elbaronbot и отправь его ему.
- Последний шаг @Botfather Дайте нам наше Токен доступа контролировать бот Отказ
Обучение того, как отправлять и получать сообщения.
После получения Ключ API Давайте начнем делать нашу любимую вещь, которая кодирует.
Открыть CMD и тип: NPM init Затем дайте вашему проекту имя и дискретирование.
Теперь Les Install Узел Telegram Bot API через эту команду:
npm i node-telegram-bot-api
Создать новый файл позволяет называть это index.js и добавьте эту строку кода на заголовок для вызова этой библиотеки API Telegram API
var TelegramBot = require('node-telegram-bot-api');
Тогда давайте сделаем подключение к телеграмме, Опрос: правда Значит, наш скрипт будет получать удовольствие от разговоров телеграммы для обновлений.
// Connecting to telegram
telegram = new TelegramBot("1*******:**************************************", {
polling: true
});
Теперь это слушать новые сообщения:
// Triggers when new message arrive
telegram.on("text", (message) => {
// Sending message to user.
telegram.sendMessage(message.chat.id, "Hi " + message.chat.first_name + " Its working");
}
Сделать бот.
Сейчас мы знаем, как получить и отправлять сообщения, давайте создаем бот COVID-19, который поможет нам найти COVID Statistica для каждой страны по всему миру,
Я хочу вызвать это действие только тогда, когда пользователь запускает сообщение с /COVID-19 Тогда страна, как это /COVID MOROCCO или /COVID-19 США Тогда так что-то с названием страны.
Давайте сделаем функцию, которая получила страну и лом для данных, затем отправьте сообщение пользователю.
function GetRes(country, telegram, chat_id) {
let url = "https://api.coronastatistics.live/countries/" + country;
let settings = {
method: "Get"
};
fetch(url, settings).then(
res => res.json()
).then((json) => {
resStr = '
\n Ressaults for : ' + json.country + '
\n Total cases : ' + json.cases + '
\n Total active : ' + json.active + '
\n Total recovered : ' + json.recovered + '
\n Total deaths : ' + json.deaths + '
\n Today cases : ' + json.todayCases + '
\n Today Deaths : ' + json.todayDeaths + '
';
if (typeof json.country !== 'undefined' && json.country) {
telegram.sendMessage(chat_id,resStr);
} else {
telegram.sendMessage(chat_id,"no such country...");
}
});
}
Теперь давайте назовем функцию, когда кто-то отправит нам сообщение, начиная с /COVID-19
var TelegramBot = require('node-telegram-bot-api');
// Connecting to telegram
telegram = new TelegramBot("1*******:**************************************", {
polling: true
});
// Triggers when new message arrive
telegram.on("text", (message) => {
// Check if the message start with /covid
if (message.text.toLowerCase().indexOf("/covid") === 0) {
// remouve that /covid to get only the country
country = message.text.replace("/covid ", "");
//give it to the function so it take care of the rest
GetRes(country, telegram, message.chat.id);
}
}
Выводы
Так что это была базовая телеграмма, надеяться, что вам нравится, вы можете попробовать это здесь @Elbaronbot , оставьте мне свои сообщения, и вы можете следовать за мной в Twitter здесь 𝙹𝚒𝚋𝚛𝙹𝚒𝚋𝚛’𝚕 ⚡.
Оригинал: “https://dev.to/baronsindo/telegram-bot-made-easy-a-covid-19-statistics-bot-15fm”