如何使用stackdriver从dialogflow检索对话的数据?

时间:2019-09-18 12:48:40

标签: google-cloud-platform dialogflow stackdriver

我是使用dialogflow创建的语音机器人,用户可以报告事件。 这里的目标是:

1-用户与机器人对话,并回答几个问题。

2-我获得了包含问题和答案的对话历史记录。

3-我将数据组织在Excel工作表中。

4-使用数据在另一个系统上创建事件。

我陷入了第2步。

我能够在stackdriver上进行一些对话,但是并不是所有对话都在那里,而且显示它们的方式真的很难将电子表格作为问答。

我需要这样的东西:

问题:“发生了什么事? 答案:“ bla bla bla”

问题:“发生在哪里? 答案:“另一个bla bla bla”

请帮助我们。

2 个答案:

答案 0 :(得分:0)

您不能以这种方式使用Stackdriver和DialogFlow。为此,您必须启用webhook调用并在完成过程中将对话框存储在需要的地方。之后,检索信息。选中此link以获取有关保存跨调用的检索信息的更多信息,还请选中Actions on Google

答案 1 :(得分:0)

您可以使用Stackdriver REST API中的entry.list方法。 https://cloud.google.com/logging/docs/reference/v2/rest/v2/entries/list

提醒您首先在Dialogflow控制台代理的设置页面中激活“登录到Google Cloud的交互”。
然后只需调用API(在此示例中,使用curl命令):

curl -X POST \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json" "https://logging.googleapis.com/v2/entries:list" \
--data "{'resourceNames':['projects/YOUR_AGENT_PROJECT'], \
'filter':'logName=projects/YOUR_AGENT_PROJECT/logs/dialogflow_agent'}"


您还可以使用gcloud命令,例如:

gcloud logging read "logName=projects/YOUR_AGENT_PROJECT/logs/dialogflow_agent"


从那里,您可以轻松过滤和处理结果。