【问题标题】:Wit.ai - How do I end a flow-based conversation?Wit.ai - 如何结束基于流的对话?
【发布时间】:2016-09-19 23:57:55
【问题描述】:

我已经使用 Wit.ai 和 FB Messenger 构建了一个基于流的聊天机器人,它终于可以工作了;我需要弄清楚的最后一件事是对话结束时该怎么做。

我的机器人会引导用户完成一个简单练习的步骤,他们可能会选择返回并在未来再次进行。有没有一种方法可以训练我的机器人识别当用户稍后返回对话时,他们需要再次从头开始对话?目前,对话以“机器人发送”消息结束,如果用户输入任何内容作为响应,它就会变得混乱。

目前我正在重置我的 heroku 服务器,删除 FB Messenger 中的对话并启动新的聊天以在测试中再次运行练习。

【问题讨论】:

    标签: node.js heroku messenger wit.ai


    【解决方案1】:

    一旦你到达了谈话的自然停止点。回调后可以删除设置的上下文属性。

    delete context.loc;
    

    如果您想从头开始对话,您可以删除会话。

    【讨论】:

    • 回调后如何删除内容?那个代码会去哪里?我正在关注 node-wit 中的 messenger.js 示例,目前正在努力解决这个问题。
    • 谢谢,一周左右都无法解决这个问题,但我会试一试并报告。
    【解决方案2】:

    @Jim Factor - 如果您使用 runAction API,例如 messenger 示例,那么一旦您在对话中达到逻辑结束,您应该删除上下文、会话并进行其他清理(例如删除/保存数据库条目)等)在 runAction.then() 部分。尽管大部分代码都被注释掉了,但在 messenger 示例中已经显示了这一点。如果您在 runAction 中传递一个新的 sessionId,那么它与开始一个新对话一样好,但是当然,为了使其正常工作,您还应该重置上下文变量并执行与您的应用相关的其他清理。希望这可以帮助!

    【讨论】:

      猜你喜欢
      • 2017-09-07
      • 1970-01-01
      • 2015-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多