Microsoft 团队机器人身份验证空白屏幕

时间:2021-01-12 00:03:41

标签: authentication botframework microsoft-teams microsoft-bot-framework

尝试为基于 this doc 的机器人身份验证设置身份验证流程。

我对很多事情感到困惑:似乎 Microsoft 团队机器人的身份验证流程与机器人框架身份验证流程不同。一个有回调和登录卡,另一个有某种对话过程?

  1. 我知道团队会打开一个弹出窗口到我的身份验证站点,然后我的身份验证站点会在某一时刻调用 notifySuccess。但是微软团队的 npm 包是如何知道 auth/notifySuccess 到哪里的呢?该软件包似乎不需要任何类型的聊天 ID 或机器人 ID。 example

  2. 我可以发回登录卡

    let signinCard = CardFactory.heroCard(
          'Click below to sign in',
          null,
          [
              {
                  type: ActionTypes.Signin,
                  value: 'https://localhost:4200/bot/auth/login',
                  title: 'Sign in'
              }
          ])
    await context.sendActivity({ attachments: [signinCard] });

显示有效域

  "validDomains": [
    "localhost",
    "*.ngrok.io",
    "token.botframework.com"
  ]

但网页版的登录链接只会打开一个新标签,同时从桌面应用程序旁加载会打开一个空白弹出窗口 enter image description here

如果有人知道我错过了什么,非常感谢

1 个答案:

答案 0 :(得分:1)

  1. 您的登录页面在 Teams 的 iframe 中打开。 microsoftTeams.js 与 Teams 通信。这会让 Teams 知道您的网站已发送成功通知。

  2. 黑屏原因 - 清单文件中的 validDomains 不正确。 localhost:4200 应包含在 validDomains 中。