Быстрый старт
Здесь описаны основные действия которые потребуется сделать для создания своего первого бота.
Для начала работы с телеграм ботами потребуется создать нового бота через BotFather.
@BotFather — это главный сервис telegram, через который проходит регистрация всех пользовательских ботов.
Для получения токена от BotFather в Telegram, следуйте этим шагам:
Откройте Telegram и найдите “BotFather”. Это официальный бот Telegram, который поможет вам создать и настроить своего бота.
Начните диалог с BotFather, нажав кнопку “Start” или отправив ему команду “/start”.
Отправьте команду “/newbot”, чтобы создать нового бота.
BotFather попросит вас ввести имя для вашего бота. Введите желаемое имя и следуйте инструкциям.
После успешного создания бота BotFather выдаст вам токен доступа. Это будет выглядеть примерно так: “1234567890:ABCDEFGHIJKLMNOPQRSTUVXYZ”.
Скопируйте полученный токен. Этот токен уникален для вашего бота и используется для аутентификации и взаимодействия с API Telegram.
После создания бота в BotFather в проект нужно установить последнюю версию библиотеки PRTelegramBot. Установить ее можно либо через nuget либо через github.
Установка PRTelegramBot через nuget
Нажмите правой кнопкой мыши на проект в который хотите установить PRTelegramBot.
Выберите пункт “Управление пакетами NuGet”.

3. В обзоре в поле поиск напишите “PRTelegramBot”
4. Выбрав последнюю версию нажмите установить.

Telegram.Bot начиная с версии 20, стали размещать свои nuget пакеты на новом адресе https://nuget.voids.site/, поэтому может возникать следующая ошибка:

В этом случае нужно добавить в настройки nuget еще 1 источник пакетов "https://nuget.voids.site/v3/index.json". Настраивается это в Средства -> Параметры -> Диспетчер пакетов nuget -> источники пакетов.

Начиная с версии 22 telegram.bot это становится не актуальным. В 22 версии его вернули в nuget.
После установки можно начинать работать с ботом.
Начало работы с PRTelegramBot
Для инициализации нового бота напишите
//Экземпялр класса PRTelegramBot
var telegram = new PRBotBuilder("Token").Build();
//Подписка на простые логи
telegram.OnLogCommon += Telegram_OnLogCommon;
//Подписка на логи с ошибками
telegram.OnLogError += Telegram_OnLogError;
//Запуск бота
await telegram.Start();
//Обработка общих ошибок
async Task Telegram_OnLogError(ErrorLogEventArgs e)
{
//Обработка ошибок.
}
async Task Telegram_OnLogCommon(CommonLogEventArgs e)
{
//Обработка логов.
}
Описание билдера ботов - PRBotBuilder.
Результат работы:

В одном проекте вы можете задействовать сразу несколько ботов, для этого воспользуйтесь свойством BotId. У вас может быть 5 одновременно запущенных ботов, который занимаются одной и той же обработкой данных, так и 5 разных у которых может быть свой функционал.
Пример консольного приложения - https://github.com/prethink/PRTelegramBot/tree/master/ConsoleExample
Пример ASP.Net Core - https://github.com/prethink/PRTelegramBot/tree/master/AspNetExample
Last updated