删除发布到 Teams 频道的 Webhook 消息

Kur*_*ula 2 c# webhooks microsoft-teams

我开发了代码来将 Webhook 消息发布到团队频道。有时,有些情况下应该删除已发布的消息。但我在团队消息中看不到或没有要删除的选项,或者我的管理员不允许添加删除选项。

有没有办法通过 C# 代码删除通过 webhook 发布的团队消息?我能够messageId通过 webhook 消息进行连接。

Kel*_*els 7

您现在可以通过 Graph API 删除(和取消删除)Microsoft Teams 消息

现在,开发人员在处理 Microsoft Teams 聊天消息时可以使用两个新的 API 端点。

这些镜像行为已经在 Teams 客户端中提供了一段时间:能够删除消息,然后根据需要取消删除。

Microsoft 选择不使用 DELETE 方法,而是对/softDelete具有空主体的方法使用 POST 方法:

POST /teams/{teamsId}/channels/{channelId}/messages/{chatMessageId}/softDelete
Run Code Online (Sandbox Code Playgroud)

以下是调用此 API 以从团队频道中软删除消息的 C# 代码:

var graphClient = new GraphServiceClient(requestAdapter);

await graphClient.Teams["{team-id}"].Channels["{channel-id}"].Messages["{chatMessage-id}"]
         .SoftDelete.PostAsync();
Run Code Online (Sandbox Code Playgroud)

一些有用的来源链接是: