Actions on google Google Home dialogFlow V2 API mediaResponse不工作

Actions on google Google Home dialogFlow V2 API mediaResponse不工作,actions-on-google,dialogflow-es,google-home,Actions On Google,Dialogflow Es,Google Home,我决定升级我的GoogleAssistant操作以使用“DialogFlowV2 API”,我的webhook会返回这样一个对象 { "fulfillmentText": "Testing", "fulfillmentMessages": [ { "text": { "text": [ "fulfillmentMessages text attribute"

我决定升级我的GoogleAssistant操作以使用“DialogFlowV2 API”,我的webhook会返回这样一个对象

{
    "fulfillmentText": "Testing",
    "fulfillmentMessages": [
        {
            "text": {
                "text": [
                    "fulfillmentMessages text attribute"
                ]
            }
        }
    ],
    "payload": {
        "google": {
            "richResponse": {
                "items": [
                    {
                        "mediaResponse": {
                            "mediaType": "AUDIO",
                            "mediaObjects": [
                                {
                                    "name": "mediaResponse name",
                                    "description": "mediaResponse description",
                                    "largeImage": {
                                        "url": "https://.../640x480.jpg"
                                    },
                                    "contentUrl": "https://.../20183832714.mp3"
                                }
                            ]
                        },
                        "simpleResponse": {
                            "textToSpeech": "simpleResponse: testing",
                            "ssml": "simpleResponse: ssml",
                            "displayText": "simpleResponse displayText"
                        }
                    }
                ]
            }
        }
    },
    "source": "webhook-play-sample"
}
但我收到一条错误消息,说我的操作不可用,V2支持mediaResponse吗?我是否应该以不同的方式格式化我的对象?此外,当我删除“mediaResponse”对象时,它工作正常,助手将说出simpleResponse部分

这个动作是在2018年3月中旬重新创建的,我读到了5月的截止日期,这就是我决定升级到V2的原因,你认为我应该回到V1吗,我知道我将不得不删除它并重新创建,但这很好。这是指向我在“调试”选项卡中看到的对象的链接。再次感谢

我在操作对话框Flow控制台中设置了“APIv2”,这是该设置的一部分

下面是我的行动的集成->谷歌助手

谢谢Allen,是的,我确实有
“expectUserResponse”:false
,我添加了您推荐的建议对象,但不幸的是没有任何更改,我仍然收到此错误

首先-这不是Dialogflow V2的问题。你似乎还混淆了谷歌V1上的动作日落和Dialogflow V2的发布——它们是完全不同的两种生物。如果您的项目使用的是AOGV1,那么Actions integration屏幕上会有一个设置,而实际上没有

如果您想移动到Dialogflow V2,这是可以的,但这不是必需的。媒体肯定在Dialogflow V2下工作

项的数组
必须首先包含一个
simpleResponse
项,然后是RichResponse中的任何其他项。(您也不应该同时包含
ssml
textToSpeech
——它们中的一个。)您也不需要
fulfillmentText
fulfillmentMessages
组件,因为它们是由
richResponse
提供的

除非将
expectUserResponse
设置为false,否则还需要包含建议芯片。模拟器调试中的某个地方可能有一个块

      {
        "name": "MalformedResponse",
        "debugInfo": "expected_inputs[0].input_prompt.rich_initial_prompt: Suggestions must be provided if media_response is used..",
        "subDebugEntryList": []
      }
因此,类似这样的方法应该有效:

{
    "payload": {
        "google": {
            "richResponse": {
                "items": [
                    {
                        "simpleResponse": {
                            "textToSpeech": "simpleResponse: testing",
                            "displayText": "simpleResponse displayText"
                        },
                        "mediaResponse": {
                            "mediaType": "AUDIO",
                            "mediaObjects": [
                                {
                                    "name": "mediaResponse name",
                                    "description": "mediaResponse description",
                                    "largeImage": {
                                        "url": "https://.../640x480.jpg"
                                    },
                                    "contentUrl": "https://.../20183832714.mp3"
                                }
                            ]
                        }
                    }
                ]
                "suggestions": [
                    {
                        "title": "This"
                    },
                    {
                        "title": "That"
                    }
                ]
            }
        }
    },
    "source": "webhook-play-sample"
}

谢谢Allen,但这并没有解决问题,我仍然收到“{myActionName}现在没有响应,请稍后再试”;(您是否正在使用模拟器进行测试?您是否可以更新问题,以包括模拟器显示错误和显示调试选项卡的屏幕截图?由于内部表示形式不一定与我们看到的API名称相同,因此不要对此进行过多解读。您正在使用的Dialogflow项目有多旧?您以前创建过它吗e去年5月?(显示模拟器的整个屏幕会有帮助-只是那个片段没有多大帮助。)更新原始问题比试图在评论中提供链接和更新要好。更新的答案。(两部分,一部分是关于V1 vs V2,另一部分是关于JSON中缺少的一些内容。)你在谈论哪个“V2”“Google V2或Dialogflow V2上的操作?(您在哪里更改设置以使用V2?)好的,您可以转到“集成”页面并选择“Google助手”并包括屏幕截图吗?