如何从 Watson Assistant 访问 Voice Agent 设置的状态变量?

How to access state variables set by Voice Agent from Watson Assistant?

根据本文档 (https://cloud.ibm.com/docs/services/voice-agent?topic=voice-agent-api-reference#state-variables-iva),Voice Agent 为 Watson Assistant 设置了一些状态变量。

我想访问来电号码 (vgwSIPFromURI) 并将其作为参数传递到我的云函数。

我该怎么做?

这是我在 JSON 编辑器中的代码的简化版本:

{
  "output": {
    "text": {
      "values": [
        "<? $myResult ?>"
      ],
      "selection_policy": "sequential"
    }
  },
  "actions": [
    {
      "name": "/path/to/my/cloud-function",
      "type": "server",
      "parameters": {
        "name"  : "$name"
      },
      "credentials": "$myCredentials",
      "result_variable": "$myResult"
    }
  ]
}

它们可以作为 Watson Assistant 中的变量进行访问,因此您可以直接在该页面上显示的项目前添加 $

我刚刚通过将 $vgwSIPFromURI 添加到启用语音代理的机器人上的对话节点来对此进行测试,当我通过 phone 触发该节点时,它会大声读出该值。您可以只在 JSON 中使用 $vgwSIPFromURI(即您当前有 $name 的位置),云函数应该按预期接收字符串。