我试图获得Azure活动目录与团队通道的用户信息。
我可以得到 TeamsChannelAccount
含有 TeamsInfo.get_memeber()
但AAD的用户工作信息不在其中。TeamsChannelAccount
对象。
如何用botframework sdk从Teams的turn_context中获取用户的工作信息?
如果你想让你的机器人在任何通道中检索AAD信息,你的机器人将需要用OAuth验证用户。请看 此处 和 此处.
如果你不想让用户在已经登录Teams的情况下登录AAD,你可以让机器人使用从Teams获得的信息在公司的数据库中查找任何额外的工作信息。我猜想你会想使用用户的电子邮件地址来做这件事,但你也可以使用其他在 TeamsChannelAccount
类。如果还没有的话,你需要为机器人设置某种API来访问数据。
根据你的灵活性,第三个解决方案可能是使用 团队单点登录. 这只在团队选项卡中可用,而不是团队对话,所以你不会有一个实际的团队机器人,你只是有一个 网络聊天机器人 托管在一个页面上,在Teams标签中被访问。请注意,这个解决方案是非常先进的,Teams SSO还在开发者预览中。