如何使用Dialogflow的Java客户端将自定义有效载荷添加到意图中?

时间:2019-12-16 17:27:56

标签: java dialogflow

我可以按照以下示例在Dialogflow中创建一个Intent:

https://cloud.google.com/dialogflow/docs/manage-intents#create_intent

效果很好,为该Intent添加了纯文本回复。但是,我的Dialogflow代理同时使用了文本响应和自定义有效载荷。我找不到任何说明如何执行此操作的文档,因此我尝试使用这些代码。

通过执行以下操作,我可以显示一个空的自定义有效负载:

Builder messageBuilder = Message.newBuilder();
messageBuilder.setText(Text.newBuilder().addAllText(messageTexts).build());
messageBuilder.setPayload(Struct.newBuilder().build());

但是,这仅导致自定义有效负载,而不是文本响应。我有两个问题:

  1. 如何向自定义有效载荷中添加一些字符串内容?

  2. 如何同时获得文本回复和自定义有效载荷?

1 个答案:

答案 0 :(得分:1)

您可以使用Struct.newBuilder().putFields(field).build()); 其中field是可以按以下方式构建的值:

Value.newBuilder().setStringValue(yourStringValue).build();