【发布时间】:2021-06-05 13:21:54
【问题描述】:
我正在尝试将一些消息从我的 API(内置于 .NET Core)发送到团队频道。根据文档,我需要使用这段代码,但我不知道如何创建authProvider 对象。
Grenter code hereaphServiceClient graphClient = new GraphServiceClient( authProvider );
var chatMessage = new ChatMessage {
Body = new ItemBody {
Content = "Hello World"
}
};
await graphClient.Teams["{team-id}"].Channels["{channel-id}"].Messages
.Request()
.AddAsync(chatMessage);
我一直在阅读文档,但我不明白我必须做什么。
这是我的控制器
[HttpGet]
[Route("SendMessage")]
[ProducesResponseType(StatusCodes.Status200OK, Type = typeof(string))]
[ProducesResponseType(StatusCodes.Status400BadRequest)]
public async Task<IActionResult> SendMessageToTeams(string message) {
try {
GraphServiceClient graphClient = new GraphServiceClient(authProvider);
var chatMessage = new ChatMessage {
Body = new ItemBody {
Content = "Hello World"
}
};
await graphClient.Teams["xxx"].Channels["xxx"].Messages
.Request()
.AddAsync(chatMessage);
return Ok();
}
catch (Exception ex) {
return BadRequest();
}
}
你能帮我解决这个问题吗?
谢谢。
【问题讨论】:
-
这个问题背后有很多东西。非常高的水平:1.你需要an app registration。 2. 给它Teams permissions 3. 创建the authprovider。这假设一个机密客户端可能是您的场景中最典型的。
标签: c# .net-core microsoft-teams microsoft-graph-teams