人群,
我正在努力解决一个问题,对SSO团队中被拒绝同意的问题做出反应。
我的解决方案如下:
在请求权限时,我创建了一个作为附件发送的oauthcard,如下所示:
await CardFactory.oauthCard(
myConnectionName,
"Title",
"text",
signInLink,
{
id: this.accessToken,
uri: `api://botid-${myAppId}`
}
);这样做很好,用户会收到一个小提示:“我们需要请求额外的权限。您应该只需要对MyApplication执行一次此操作”,其中包含两个“取消”和“继续”按钮。
继续工作很好,get服务器接收到响应,可以获得GraphAPI的令牌并使用所有很酷的特性,但是取消按钮怎么办?
不幸的是,如果用户单击"Cancel“,我就会收到0的反馈。当用户单击“取消”时,您知道有什么方法可以获得确认吗?
我已经添加了一个适配器,并使用adapter.processActivity()检查了每个活动,但是没有任何活动或web请求被取消。
知道怎么处理吗?我是否需要为“取消”按钮添加不同的链接?我发送的附件如下:
{
"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"
}
}有什么想法,如何接收响应或获取此事件?
提前感谢!
编辑:

发布于 2021-10-28 18:44:40
这将由团队客户端处理,如果我们将此控件传递给Bot,请求将进入一个循环,我们希望避免这种情况。例如,用户与Bot ->客户端交互显示同意弹出->用户取消-> Bot再次初始化Auth -> client再次显示弹出-> ...
所以,这是故意的。当用户再次尝试与Bot交互时,Teams将显示同意弹出。
https://stackoverflow.com/questions/69644955
复制相似问题