我正在使用Microsoft的机器人框架开发Skype机器人。
我有一个外部网站,用户可以在其中创建一个帐户,获取用户ID。我想在我的网站上有一个按钮,允许我将他们的帐户链接到Skype对话。
我目前可以工作的唯一方法是让Skype机器人询问用户的电子邮件,然后用户必须进入网站并确认这是他们在Skype上。不是一个好的用户体验。
我知道 Telegram 可以让您通过"深度链接"做我想做的事,而 Kik 可以通过扫描二维码来做到这一点。Facebook Messenger可以通过在页面中包含Facebook JSSDK并带有"连接到此机器人"按钮来做到这一点。
有什么办法可以在Skype上做到这一点吗?
在继续 Skype 机器人对话之前,使用"登录卡"工作流让用户向你的网站进行身份验证。
登录卡使机器人能够请求用户登录。它通常包含文本和一个或多个按钮,用户可以单击这些按钮来启动登录过程。
有关文档和代码示例,请参阅:
https://learn.microsoft.com/en-us/bot-framework/dotnet/bot-builder-dotnet-add-rich-card-attachments#add-a-sign-in-card-to-a-message
显示登录卡演练的博客文章:
https://tsmatz.wordpress.com/2016/09/06/microsoft-bot-framework-bot-with-authentication-and-signin-login/
其他代码示例:
- .NET SDK - https://github.com/Microsoft/BotBuilder-Samples/tree/master/CSharp/cards-RichCards#sign-in-card
- 节点.js SDK - https://github.com/Microsoft/BotBuilder-Samples/tree/master/Node/cards-RichCards#sign-in-card
对要实现的每个机器人(例如电报)使用单独的深度链接机制。
如何以简单的方式设置电报网络钩子。
电报网络钩子要求
但是,它不适用于Skype。 Microsoft机器人构建器深度链接
他目前唯一可以工作的方法是让Skype机器人询问用户的电子邮件,然后用户必须进入网站并确认这是他们在Skype上。不是一个好的用户体验。
这是Skype迄今为止唯一的方法。