0

https://i.stack.imgur.com/k1bZD.png

我正在使用 sys.person 来捕获此人的姓名。有没有办法只显示 'john' 而不是整个 {"name": "john"} 来显示?我想避免 sys.given-name 和 sys.last-name 因为 dialogflow 说它们已被弃用。

4

2 回答 2

0

从您的屏幕截图中,您的参数看起来像是一个 isList 参数。

我今天检查了引用 isList 参数时静态响应的行为,似乎我们现在可以使用以下格式显示某个参数的值列表,而无需在响应中使用数组索引:$session.params.parameter-id

在您的情况下,它将是: $session.params.name

此外,如果要在 isList 参数中引用特定数组索引,可以使用格式$session.params.parameter-id[i]。在您的情况下,它将是$session.params.name[0]

或者,如果您想获取原始值,可以将其引用为$session.params.name[0].original

于 2020-12-02T19:57:30.943 回答
0

您是否将实体配置为列表?如果它是一个列表,您可能必须输出类似的参数$session.params.name[0].name

如果它不是列表,则$session.params.name.name可以,但在这种情况下,我建议您将实体名称更改为person,因为这样更易读$session.params.person.name

于 2020-10-26T16:09:09.043 回答