Bot框架更新到V4(4.4.3):看起来在使用bot框架的完整结构方面有很多更改。在我们的案例中,团队用户正在与bot(我们的应用程序)发起聊天,而bot可以接收该聊天。但是,要标识团队用户电子邮件ID,团队ID等,我们需要使用TeamsContext来提取详细信息。但是teamContext.Team.Id,teamContext.Tenant.Id等为NULL。我们的目标是检索团队的用户详细信息,例如姓名,电子邮件,租户ID等。
// Before doing Teams specific stuff, get hold of the TeamsContext
ITeamsContext teamsContext = turnContext.TurnState.Get<ITeamsContext>();
// From there we can get the Team ID, Channel ID, and Tenant ID off of the incoming activity
string incomingTeamId = teamsContext.Team.Id;
string incomingChannelid = teamsContext.Channel.Id;
string incomingTenantId = teamsContext.Tenant.Id;
答案 0 :(得分:0)
但是teamContext.Team.Id,teamContext.Tenant.Id等为NULL。我们的目标是检索团队的用户详细信息,例如姓名,电子邮件,租户ID等
据我尝试,即使在Teams Nuget软件包发布后,这些值也从未在用户与机器人的直接交互中提供。它们仅在与几个用户的对话交互中设置。
我不认为它与Bot SDK 4.4.3链接,只是该方法的初始行为(老实说,我在进行测试时也对此感到惊讶)