首页 > 解决方案 > 在 notifySuccess 之后不调用 signin/verifyState

问题描述

notifySuccess不触发signin/veriyState事件。

我的TeamsMessagingExtensionQuery处理程序返回如下内容:

...
return {
                composeExtension: {
                    type: "auth",
                    suggestedActions: {
                        actions: [
                            {
                                type: "openUrl",
                                value: "https://something.com/login/",
                                title: "Sign in to this app"
                            }
                        ]
                    }
                }
            } as MessagingExtensionResponse;
    ...

此响应searchCmd正确显示带有登录消息的扩展程序。在单击登录时,提示也会根据响应中传递的 url 正确显示登录页面。

但是,当在登录页面中我尝试使用notifySuccessapi 传递一些测试令牌数据时,composeExtension/query命令被调用(使用state属性),但没有signin/verifyState事件被调用。

在登录/客户端,我使用以下两行代码:

MSTeams.initialize();
MSTeams.authentication.notifySuccess('<test_token>');

标签: botframeworkmicrosoft-teams

解决方案


我没有尝试过这种登录组合(尝试登录以获取消息扩展),但在我看来,Teams 在这种情况下实际上不会调用“signin/verifyState”,而这仅适用于“香草”机器人身份验证流动。在这种情况下,从文档看来,您应该在“composeExtension/query”中完成身份验证......


推荐阅读