首页 > 解决方案 > 使用 Microsoft Bot Framework 的 AD 识别首次登录

问题描述

我想在用户第一次登录时向他发送登录成功消息。因此,我需要确定用户使用显示的签名卡登录(用户已交互)或系统自动获取令牌本身而无需用户干预的天气。很高兴我们显示成功的消息用户交互在那里。我如何识别天气是否有用户交互?

标签: botframeworkbotsaccess-token

解决方案


我找到的答案是找到活动类型,如果它的事件类型用户已经交互,否则它是一个自动登录。您可以通过检查Activity.Value中key connectionName的值来重新验证刚刚建立的连接。以下代码将为您提供帮助。

string output = JsonConvert.SerializeObject(stepContext.Context.Activity.Value, Formatting.Indented);
if (stepContext.Context.Activity.Type is "event")
{
      var conName = JsonConvert.DeserializeObject<JObject>(output)["connectionName"].ToString();
      if (conName ==<Your Connection Name>)
      {
      await stepContext.Context.SendActivityAsync(MessageFactory.Text($"You have successfully Signed In"), cancellationToken);
      await stepContext.Context.SendActivityAsync(MessageFactory.Text($"How can I help you?"), cancellationToken);
     }
 }

推荐阅读