使用 Telegram 和 BotFramework 发送贴纸(使用 file_id,而不是 url)

问题描述 投票:0回答:2

无法使用“file_id”发送贴纸。 learn.microsoft.com 上的文档仅附带使用“url”的示例

尝试像这样发送:

activity.ChannelData = new { method = "sendSticker", parameters = new { sticker = new { file_id = "CAADAgADmwEAAoo0zQirH-KhlK1ZMwI", width = 512, height = 355 } } };
await connector.Conversations.ReplyToActivityAsync(activity);

但它不起作用。

c# botframework telegram
2个回答
1
投票

我也一直在寻找这个问题的答案,但最终我自己找到了答案。抱歉迟了 4 年回复)C#:

private static async void OnMessageHandler(object sender, MessageEventArgs e)
{
    var msg = e.Message;
    var sticker_to_send = await client.SendStickerAsync(chatId: int_chat_id, sticker: msg.Sticker.FileId);
}

附注 我刚刚在这里注册只是为了这个答案)


0
投票

在 NET 8 和 C# 中使用 Telegram.Bot api 时遇到同样的问题,并以正确的方式遇到:

Message sendSticker = await botClient.SendStickerAsync(
chatId: chatId,
sticker: InputFile.FromFileId("CAADAgADmwEAAoo0zQirH-KhlK1ZMwI"),
cancellationToken: cancellationToken);

来自 github 的快速入门指南中有更多内容。干杯。

© www.soinside.com 2019 - 2024. All rights reserved.