Skip to content
Bitzsoft.Integrationsbitzsoft.integrations

Reference

Telegram InstantMessaging

Telegram 即时通讯服务——Bot Token 嵌入 URL 路径鉴权。

Last updated

基于 Telegram Bot API 实现,采用 Bot Token 嵌入 URL 路径的鉴权方式。

包信息

  • NuGet 包:Bitzsoft.Integrations.InstantMessaging.Telegram
  • 接口:IInstantMessagingService
  • 鉴权:Bot Token in URL path(/bot{token}/{method}
  • Provider ID:telegram

配置

字段类型必填默认值说明
BotTokenstringBot Token(形如 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11
BaseUrlstringhttps://api.telegram.orgTelegram Bot API 基地址
HttpClientNamestringInstantMessagingTelegram业务 HttpClient 命名
{
"InstantMessaging": {
"Telegram": {
"BotToken": "123456789:ABC-DEF1234ghIkl-zyx57W2v1u123ew11"
}
}
}

注册

// 方式一:IConfiguration(默认读取 "InstantMessaging:Telegram" 配置节)
services.AddTelegramInstantMessaging(configuration);
// 方式二:委托配置
services.AddTelegramInstantMessaging(options =>
{
options.BotToken = "123456789:ABC-DEF1234ghIkl-zyx57W2v1u123ew11";
});

使用示例

// 发送文本消息
var result = await im.SendTextMessageAsync(new SendTextMessageRequest
{
Channel = "@channelname",
Text = "Notification from Bitzsoft"
});
// 发送卡片消息
var cardResult = await im.SendCardMessageAsync(new SendCardMessageRequest
{
Channel = "@channelname",
// 卡片内容按 Telegram InlineKeyboard 格式构造
});
// 删除消息
await im.DeleteMessageAsync("message-id");

鉴权机制

  • Bot Token 嵌入 URL 路径:https://api.telegram.org/bot{token}/{method}
  • 无需构造时注入鉴权头,Token 直接出现在请求 URL 中。
  • Token 通过 @BotFather 创建机器人后获取。

已知限制

Telegram 无传统频道创建/成员邀请 API(频道通过 Bot 在 Telegram 客户端或独立 API 管理)。CreateChannelAsync/InviteMemberAsync 的语义按 Telegram 实际能力实现或受限。

100%

滚轮或按钮缩放 · 放大后拖动画面 · 双击切换 100% / 200%