javascript - 如何向 watson 对话响应添加操作?

标签 javascript node.js ibm-cloud ibm-watson watson-assistant

我已经毫无问题地创建了意图、实体和对话。但是现在我正试图做到这一点,所以当用户发送“再见”时,应用程序将关闭。根据文档,我将不得不命名一个伴随意图的 Action 。我怎么做?是通过代码还是通过对话工作区平台?

最佳答案

您可以为此使用上下文变量操作变量。 如何使用上下文变量?在您的 Advance 响应中添加“上下文”和值,查看我的示例。

我用过 conversation simple为此。

在您的 Watson Developer Cloud - IBM Bluemix - Watson Conversation 中,在高级响应中添加此 JSON 示例,假设您的应用程序将在此对话 Node 中执行某些操作:

{
  "context": {
    "verified": true;
  },
  "output": {
    "text": {
      "values": [
        "Please wait and I'll verified your request."
      ],
      "selection_policy": "sequential"
    }
  }
}

示例 (app.js):

function updateMessage(input, data, req, res) {
  if (data.context.verified === true){
    searchRequest(data, req, res);
    } else if (data.output && data.output.text) {
    return res.json(data);
    }
    return data;
}

您可以使用数据在对话流中发送内容。

function searchRequest(data, req, res){
    // something to do and return value
    var sendRequest = "Thanks for wait, the request is" + valueRequest;
    data.output.text[0] = sendRequest;
    return data;
}

编辑:

您可以添加一个 JSON 对象,如“action”,您的代码将识别此变量,与@Mikko 所说的相同示例。您可以通过以下方式检查:

data.output.action === 'close'

关于javascript - 如何向 watson 对话响应添加操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42725072/

相关文章:

javascript - 如何在 Node js 中启用 `ignoreUndefinedProperties`

node.js - Node.js 和 MongoDB 应该在不同的 pod 中吗?

javascript - 如何在不重新加载页面的情况下更新 map 上从 firestore 检索的标记?

javascript - AngularJS 1.3 - 为什么表单在加载时有效,对于最小长度的输入?

javascript - 如何使用 Angular.js 打开新行后添加删除按钮?

javascript - 在 Node js/javascript中的 map 函数之外获取异步等待数据

javascript - 将数组从node.js/express传递到jade模板

javascript - 防止 onScroll 函数再次执行直到完成

eclipse - Bluemix 中的空间和组织之间是什么关系?

Android Bluemix 不显示扬声器标签