gpt4 book ai didi

php - 谷歌上的操作/Dialogflow : Could not find a RichResponse or SystemIntent in the platform response for agentId

转载 作者:行者123 更新时间:2023-12-05 07:18:00 25 4
gpt4 key购买 nike

我正在使用 Dialogflow 和用 PHP 编写的 Webhook 编写代理程序。最近我重新构建了部分代码,现在我总是在“Actions-on-Google-console”中遇到同样的错误:

Failed to parse Dialogflow response into AppResponse because of invalid platform response. Could not find a RichResponse or SystemIntent in the platform response for agentId

现在这是来 self 的 webhook 的部分代码:

if($action == "willkommen")
{
$google->Speak("Hallo Welt");
}

$google 是我创建的包装器 PHP 类的对象。 Speak() 方法的代码如下所示:

public function Speak($text,$endConversation=false)
{
if($endConversation)
$expectUserResponse = false;
else
$expectUserResponse = true;

$toGoogle["payload"]["google"]["expectUserResponse"] = $expectUserResponse;
$toGoogle["payload"]["google"]["richResponse"]["items"][0]["simpleResponse"]["textToSpeech"] = $text;

file_put_contents("test.log",json_encode($toGoogle,JSON_PRETTY_PRINT));

echo json_encode($toGoogle,JSON_PRETTY_PRINT);
}

出于调试目的,我将生成的 JSON 写入文件 test.log。它包含

{
"payload": {
"google": {
"expectUserResponse": true,
"richResponse": {
"items": [
{
"simpleResponse": {
"textToSpeech": "Hallo Welt"
}
}
]
}
}
}
}

所有代码都会从头到尾执行,因为一旦我编辑了传递给 Speak() 的字符串然后我可以看到将 JSON 字符串更改为 test.log。但是我不断收到上面的错误消息。我的 JSON 字符串有什么问题? Google 怎么会找不到 RichResponse

非常感谢!任何帮助表示赞赏!

最佳答案

请检查您的后备意图。

当回退意图未添加到代理时,“Actions-on-Google-console”会给出此错误。

关于php - 谷歌上的操作/Dialogflow : Could not find a RichResponse or SystemIntent in the platform response for agentId,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58504605/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com