首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取Botbuilder按钮取消响应

获取Botbuilder按钮取消响应
EN

Stack Overflow用户
提问于 2021-10-20 11:13:01
回答 1查看 103关注 0票数 1

人群,

我正在努力解决一个问题,对SSO团队中被拒绝同意的问题做出反应。

我的解决方案如下:

  1. 我有一个bot服务器,用可通过ngrok
  2. 达到的类型记录写一些会话逻辑我有一个Azure bot
  3. 我有一个Azure AD注册

在请求权限时,我创建了一个作为附件发送的oauthcard,如下所示:

代码语言:javascript
复制
await CardFactory.oauthCard(
    myConnectionName,
    "Title",
    "text",
    signInLink,
    {
        id: this.accessToken,
        uri: `api://botid-${myAppId}`
    }
);

这样做很好,用户会收到一个小提示:“我们需要请求额外的权限。您应该只需要对MyApplication执行一次此操作”,其中包含两个“取消”和“继续”按钮。

继续工作很好,get服务器接收到响应,可以获得GraphAPI的令牌并使用所有很酷的特性,但是取消按钮怎么办?

不幸的是,如果用户单击"Cancel“,我就会收到0的反馈。当用户单击“取消”时,您知道有什么方法可以获得确认吗?

我已经添加了一个适配器,并使用adapter.processActivity()检查了每个活动,但是没有任何活动或web请求被取消。

知道怎么处理吗?我是否需要为“取消”按钮添加不同的链接?我发送的附件如下:

代码语言:javascript
复制
{
        "contentType":"application/vnd.microsoft.card.oauth",
        "content":{
           "buttons":[
              {
                 "type":"signin",
                 "title":"Title",
                 "value":"https://token.botframework.com/api/oauth/signin?signin=mySignInId"
              }
           ],
           "connectionName":"myConnection",
           "tokenExchangeResource":{
              "id":"myAccessToken",
              "uri":"api://botid-myAppId"
           },
           "text":"text"
        }
     }

有什么想法,如何接收响应或获取此事件?

提前感谢!

编辑:

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-28 18:44:40

这将由团队客户端处理,如果我们将此控件传递给Bot,请求将进入一个循环,我们希望避免这种情况。例如,用户与Bot ->客户端交互显示同意弹出->用户取消-> Bot再次初始化Auth -> client再次显示弹出-> ...

所以,这是故意的。当用户再次尝试与Bot交互时,Teams将显示同意弹出。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69644955

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档