0

we are currently playing around with newly launched https://developers.google.com/actions/reference/rest/Shared.Types/AppResponse#mediaresponse

According to documentation we will receive a final Response after media is finished playing. This works well in simulator but on mobile devices and speakers it works intermittently

We only get this call back 2 or 3 times and sometimes never get it on either devices. As it works few times we are sure it's just google engine but want to make sure we are not doing anything wrong ourselves.

I am using my own backend and have our engine (Action SDK). I am expecting this response when playback finishes, but I only get this intermittently:

{
  "user": {
    "userId": "user-id",
    "accessToken": "access-token",
    "locale": "en-US",
    "lastSeen": "2018-03-18T17:44:51Z"
  },
  "conversation": {
    "conversationId": "1521395430917",
    "type": "ACTIVE",
    "conversationToken": "42"
  },
  "inputs": [{
    "intent": "actions.intent.MEDIA_STATUS",
    "rawInputs": [{}],
    "arguments": [{
      "name": "MEDIA_STATUS",
      "extension": {
        "@type": "type.googleapis.com/google.actions.v2.MediaStatus",
        "status": "FINISHED"
      }
    }]
  }],
  "surface": {
    "capabilities": [
      {"name": "actions.capability.SCREEN_OUTPUT"},
      {"name": "actions.capability.AUDIO_OUTPUT"},
      {"name": "actions.capability.WEB_BROWSER"}, 
      {"name": "actions.capability.MEDIA_RESPONSE_AUDIO"}
    ]
  },
  "isInSandbox": true,
  "availableSurfaces": [
    {"capabilities": [
      {"name": "actions.capability.SCREEN_OUTPUT"}, {"name": "actions.capability.AUDIO_OUTPUT"}
    ]}
  ]
}
Prisoner
  • 49,922
  • 7
  • 53
  • 105
abharku
  • 145
  • 1
  • 9
  • I'm a little confused - your webhook should never be getting a final response. You should be getting an Input Argument (https://developers.google.com/actions/reference/rest/Shared.Types/Argument) named MEDIA_STATUS. Are you sending your Media Response in a finalResponse section or an inputPrompt section? (Or are you using Dialogflow?) – Prisoner Mar 19 '18 at 10:50
  • I am using my own backend and have our engine. I am expecting this final response which I receive intermittently when playback finishes: – abharku Mar 19 '18 at 11:27
  • I am using my own backend and have our engine (Action SDK). I am expecting this final response which I receive intermittently when playback finishes: {"user": {"userId": "user-id","accessToken": "access-token","locale": "en-US","lastSeen": "2018-03-18T17:44:51Z"},"conversation": {"conversationId": "1521395430917","type": "ACTIVE","conversationToken": "42"},"inputs": [{"intent": "actions.intent.MEDIA_STATUS","rawInputs": [{}],"arguments": [{"name": "MEDIA_STATUS","extension": {"@type": "type.googleapis.com/google.actions.v2.MediaStatus","status": "FINISHED"}}]}], – abharku Mar 19 '18 at 11:36
  • Please update the question instead of trying to provide more info in comments. It is really difficult to read this way. – Prisoner Mar 19 '18 at 11:59

1 Answers1

0

That does appear to be a bug on Google's end. You should fill out a support form and specify

  • Your project id
  • That this is a bug report
  • That this is with the Action SDK
  • That you are not receiving the MEDIA_STATUS event when you are expecting it to
  • Exactly what it sounds like from the user side (what does the user hear? The audio ends and then what?)
Prisoner
  • 49,922
  • 7
  • 53
  • 105
  • 2
    I raised this with Google and the support team has kindly raised a bug with development. I only just realised that the behaviour of Google Home when it doesn't send MEDIA_STATUS is that it stays connected with my app and next time when user interacts with Google Home it is sent directly to my app with query text. This could be possibly damaging for google as someone can write a snooping app. Also my action is live so I can see a lot of user activity not intended for my action – abharku Mar 23 '18 at 15:55
  • 1
    I raised this 5 months ago and also sent a video explaining my issue. First two months Google action developers couldn't find an issue. Then I sent a video and they accepted the issue but the only thing they did is take my action out of store and since then I have been waiting on fix. Must be a hard one to fix. Here is the video https://drive.google.com/file/d/14tRz5wBwvbbM6TS8IYwU7xfkKNhWIV0F/view?usp=sharing – abharku Aug 27 '18 at 09:48