3

I have built an action with Actions-on-Google(2.5.0) and dialogflow-fulfillment(0.6.1) Node.js Library. I cannot test my app on dialogflow test console because I return conv object which is not supported there. Now, I cannot test it in the google action simulator, either. This is the error I get:

Invocation Error You cannot use standard Google Assistant features in the Simulator. If you want to try them, use Google Assistant on your phone or other compatible devices.

I'd like to use the simulator, so I can debug better.

Frosty
  • 70
  • 1
  • 6
  • Please be a bit more specific when asking a question: *What have you tried so far with a code example?* ([I downvoted because there is no code](//idownvotedbecau.se/nocode/)) / *What do you expect?* / *What error do you get?* **For Help take a look at "[How to ask](//stackoverflow.com/help/how-to-ask)"** – Hille Mar 04 '19 at 13:43

3 Answers3

2

It is how the error message says: The simulator lacks many features that normal Assistant surfaces (speaker, Assistant app) have and can even sometimes give you completely wrong error messages. There is really no way around testing your app on real devices.

You can however view the same logs that you see in the simulator in Google Stackdriver Logging. To activate this go to the settings of your Dialogflow agent, select the "General" tab and activate the "Log interactions to Google Cloud" option. Then click on the link below the button to get to the logs. The default view will probably show you only the Actions-on-Google logs, i.e. the requests between your users and AoG. To see the requests between Dialogflow and your webhook click on the dropdown arrow in the filter box, select "Convert to advanced filter" and set the filter to resource.type="global".

gmolau
  • 2,815
  • 1
  • 22
  • 45
  • Thank you so much. This was very helpful! Just for me I didn't need to change the filter. There is this option on the Stackdriver Logging : Google Assistant Action in which you can see all the requests and responses!!! That's exactly what I wanted! Thanks! – Frosty Mar 04 '19 at 15:11
  • Ok, but be careful: When you are using Dialogflow with your own webhook every request takes three steps: user --> AoG --> Dialogflow --> your webhook. You are currently only seeing the logs of the first step. The second is internal to Google, but the third (i.e. the requests and response between Dialogflow and your webhook) is usually very important for debugging, and you are not seeing its logs with the AoG filter. See [here](https://dialogflow.com/docs/integrations/actions/integration) for details on how the individual systems work together. – gmolau Mar 04 '19 at 15:30
0

If you have multiple Actions projects that use the same display name, the simulator chooses one at random. For consistent testing results, use unique names or release channels for each Action.

Reference Link: https://support.google.com/actions-console/answer/9613473?hl=en

Now how to give a display name or change the display name.

Go to develop tab and give display name or change display name as follows

Goole Action Develop tab

SarangRN
  • 91
  • 13
-1

You should definitely be able to test your action in the Actions simulator. Note that the interaction model b/w Dialogflow and Actions simulators are different. In Dialogflow, you can send commands directly to your agent. In the Actions simulator, you first need to invoke your Action.

At the bottom of the screen, you'll see a suggested input like "talk to my test app".

enter image description here

You'll need to send this, or a similar command, first. That will then invoke your action, and you'll be able to send commands to it after. You will see it is invoked by a banner at the top of the simulator.

enter image description here

Nick Felker
  • 11,536
  • 1
  • 21
  • 35