[dialogflow] [google-actions-on-google]用于填充广告位的组合实体

时间:2018-07-15 17:59:20

标签: node.js dialogflow

我有一个非常基本的例子

我希望能够添加多种类型和数量的物品-用户可以输入也可以不输入数量,例如,

我要订购1个玛格丽塔披萨,中号硬皮和豪华的蔬菜

我已经定义了以下实体

@Pizzas
@PizzaCrusts
@PizzaSizes`

还有一个由以上三个部分组成的复合实体@PizzaWithCrustAndSizes。

在我的请求中,我有一个slotfill参数'allPizzas',它是上述组合类型的列表。

有一个Webhook调用,可在确认订单之前对其进行优化。但是,当我收到参数时-我将其作为字符串而不是对象类型来获取。

allPizzas: [ '1 Margherita Pan Medium' ]

我如何使Dialogflow将其作为对象发送,有什么办法

1 个答案:

答案 0 :(得分:0)

是的,您可以实现

您有3个实体

@Pizzas
@PizzaCrusts
@PizzaSizes

和一个复合实体@PizzaWithCrustAndSizes

因此,在@PizzaWithCrustAndSizes实体中,首先取消选中“定义同义词”复选框 然后您将获得值字段,现在输入值

@Pizzas:Pizzas @PizzaCrusts:PizzaCrusts @PizzaSizes:PizzaSizes

转到意图训练短语

我想订购1个玛格丽塔披萨中号锅壳

删除所有单个实体,然后选择“玛格丽塔披萨中锅”,并将其映射到复合实体“ @PizzaWithCrustAndSizes”

它将为您提供参数值作为对象。