首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在手动调用signin助手后继续对话

在手动调用signin助手后继续对话
EN

Stack Overflow用户
提问于 2018-08-08 23:25:58
回答 1查看 197关注 0票数 2

我对如何处理以下场景感到有点困惑:

  1. 用户触发FooBarIntent,它的实现需要第三方的链接帐户。
  2. 我从实现代码中手动调用signin helper
  3. 用户授权我的代理,在Google上的操作发送带有签名状态的帮助响应到Dialogflow,在对话流中,SignIn意图获取它并将它传递给我的实现服务。

现在,我如何继续实现最初的FooBarIntent?我以为这会被无缝地处理,但是signin helpers的响应是一个全新的web钩子请求,没有原始请求的任何信息。我似乎可以将这些信息存储在上下文中,但这似乎相当笨拙。我是在这里遗漏了什么,还是真的要告诉用户“谢谢您登录,现在请再次问您原来的问题”?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-09 00:54:35

说“现在请再问你原来的问题”肯定是错误的方法--你的部分是正确的。

你也是正确的,没有自动重新触发原来的意图。虽然这看起来很奇怪,但这仅仅是因为意图代表了用户所说的内容,而不是您将要回复的内容。用户的初始声明和登录确认都是用户说过的不同的事情,您可能希望以不同的方式处理它们。

正如你所建议的,有一件事是有意义的,那就是在你从帮助者那里得到结果之前,对他们最初说的话做出回应。在这些情况下,当您请求助手时,在上下文中保存意图或操作名称和参数,可以让您在之后选择返回。(然而,还有其他可能的行为,这可能是有意义的。例如,考虑一下,如果您请求签入作为欢迎意图的一部分。因为用户从未通过这个第一步,所以您不需要跟踪状态。)

例如,当您绕道获得登录时保存状态的模式是多音库直接支持的模式。使用多音,您可以指定触发意图或操作处理程序之前所需的需求(例如要求对用户进行身份验证)。它负责满足这些要求,然后确保谈话继续在你停留的地方绕道。

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

https://stackoverflow.com/questions/51756969

复制
相关文章

相似问题

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