IBM Watson Conversation:如何动态创建上下文变量?

IBM Watson Conversation: How to dynamically create context variables?

在 IBM Watson Conversation 中,context variables can be used to carry information. A value can be derived from the evaluation of expressions 如图所示:

"context": {
    "mycity": "<? entities['city'].value ?>"
  }

我尝试的是动态组合变量名:

"context": {
    "my<? @animals ?>": "my new value"
  }

但是,变量名中的表达式未被计算。如何根据意图、实体或其他上下文变量等可用数据定义变量名称?

一种解决方案似乎是在应用程序中执行此操作:

  • 接收包含所有元数据的响应对象。
  • 提取必要的数据
  • 撰写要传递回 Watson Conversation 以进行下一次消息处理的上下文对象。创建新变量作为准备工作的一部分。
  • 使用包含新变量的上下文对象调用 message API
  • 新变量在 Watson Conversation 内部处理期间可用。