PmEngine.Telegram
2.96.108.1848
dotnet add package PmEngine.Telegram --version 2.96.108.1848
NuGet\Install-Package PmEngine.Telegram -Version 2.96.108.1848
<PackageReference Include="PmEngine.Telegram" Version="2.96.108.1848" />
<PackageVersion Include="PmEngine.Telegram" Version="2.96.108.1848" />
<PackageReference Include="PmEngine.Telegram" />
paket add PmEngine.Telegram --version 2.96.108.1848
#r "nuget: PmEngine.Telegram, 2.96.108.1848"
#:package PmEngine.Telegram@2.96.108.1848
#addin nuget:?package=PmEngine.Telegram&version=2.96.108.1848
#tool nuget:?package=PmEngine.Telegram&version=2.96.108.1848
PMEngine.Telegram
Модуль для работы с Telegram
Используемые переменные
В модуле используются следующие переменные среды:
BOT_TOKEN - Токен ТГ бота
HOST_URL - URL приложения, куда будут приходить запросы от Telegram
Подключение
Подключение модуля
Для подключения модуля необходимо просто добавить его в список сервисов
builder.Services.AddTelegramModule();
Так же при добавлении можно сконфигурировать модуль, например:
builder.Services.AddTelegramModule(tg => tg.DefaultInLineMessageAction = MessageActionType.Delete);
Настройка веб-хука
Для настройки веб-хука необходимо выполнить следующее
builder.Services.AddHttpClient("tgwebhook").AddTypedClient<ITelegramBotClient>(httpClient => new TelegramBotClient(envBotToken, httpClient));
...
app.UseEndpoints(ep =>
{
ep.MapControllerRoute(name: "tgwebhook",
pattern: $"TGBot/{envBotToken}",
new { controller = "TGBot", action = "Post" });
ep.MapControllers();
});
Создание контроллера
Для приема запросов от Telegram необходимо добавить в приложение свой контроллер. Пример простого контроллера приведен ниже:
public class TGBotController : ControllerBase
{
private readonly ILogger<TGBotController> _logger;
private readonly ITelegramBotClient _client;
private readonly IServiceProvider _serviceProvider;
public TGBotController(IServiceProvider services, ILogger<TGBotController> logger, ITelegramBotClient botClient)
{
_logger = logger;
_client = botClient;
_serviceProvider = services;
}
[HttpPost]
public async Task Post([FromBody] Update update)
{
var tgcontroller = new BaseTGController();
await tgcontroller.Post(update, _client, _logger, _serviceProvider);
}
}
Он использует класс BaseTGController для обработки сообщений. Если вам необходимо обернуть обработку по-особому, то вы можете изменить логику контроллера на свою, опирась на код этого класса.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net9.0
- Microsoft.AspNetCore (>= 2.3.9)
- Microsoft.AspNetCore.Http.Abstractions (>= 2.3.9)
- PmEngine.Core (>= 2.95.1205.2251)
- RamjotSingh.EmojiNet (>= 0.1.0)
- Telegram.Bot (>= 22.7.5)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.96.108.1848 | 155 | 1/8/2026 |
| 2.96.108.220 | 130 | 1/7/2026 |
| 2.96.106.142 | 123 | 1/5/2026 |
| 2.96.105.2141 | 132 | 1/5/2026 |
| 2.96.105.1850 | 123 | 1/5/2026 |
| 2.96.105.1803 | 118 | 1/5/2026 |
| 2.96.105.1741 | 127 | 1/5/2026 |
| 2.96.105.1734 | 114 | 1/5/2026 |
| 2.96.105.1643 | 119 | 1/5/2026 |
| 2.95.1205.2253 | 646 | 12/5/2025 |
| 2.95.1204.2156 | 229 | 12/4/2025 |
| 2.95.1204.1946 | 211 | 12/4/2025 |
| 2.95.1204.1942 | 233 | 12/4/2025 |
| 2.95.1116.233 | 435 | 11/20/2025 |
| 2.95.1109.1545 | 247 | 11/9/2025 |
| 2.95.1107.2346 | 157 | 11/7/2025 |
| 2.95.1017.2318 | 154 | 10/17/2025 |
| 2.95.1017.2305 | 153 | 10/17/2025 |
| 1.905.515.1304 | 377 | 5/15/2025 |
| 1.905.510.1847 | 191 | 5/10/2025 |