Matthew Knight
Matthew Knight

Reputation: 631

Hooking into the actions_intent_NO_INPUT in DialogFlow

I'm trying to customise the way in which Google Home handles no user input - ie. if the user just says nothing and doesn't respond, I want to handle that in my fulfilment, but currently, no matter what combination of things I try, Google Home will always say "Sorry, I didn't hear that", and then after two attempts, will exit. My fulfilment is returning a response after she's said "Sorry".. but i want to use a more graceful message than the default.

I just cannot figure out how to override that message, and get my fulfilment to respond, rather than the seemingly inbuilt response.

I'm assuming the correct action is "actions_intent_NO_INPUT", but it doesn't seem to work.

Has anyone managed to do this, or is it an inbuilt security mechanism?

Upvotes: 3

Views: 1825

Answers (2)

Saurabh Rajpal
Saurabh Rajpal

Reputation: 1557

No input intents are only available for speaker surfaces currently. For devices with screens (say, smartphones), the mic is just closed after a while. This can be verified by hovering over to the "no input" icon in the actions console. Guess you are testing it for the mobile devices and hence aren't able to test it. In case, your action works for the speaker surface too, just try testing your code for the same and you should be good to go!

hovering over to the no input icon in the actions console shows support for only Speaker Surface

Upvotes: 2

Prisoner
Prisoner

Reputation: 50731

I usually find that it takes two Intents to make sure it works correctly. Sometimes I get it to work with the first one by itself, and the documentation says you should only need that, but the second seems to work when the first one (occasionally) doesn't. I have them set to call the same action in fulfillment.

While actions_intent_NO_INPUT is correct, you need to set this as the Event in Dialogflow. It also corresponds to a context named actions_intent_no_input. Between these two, we can create the following Intents:

The first is a regular Intent that handles the event, sets an action, and calls the webhook fulfillment:

enter image description here

The second is a Fallback Intent that only triggers if the actions_intent_no_input context is set:

enter image description here

Upvotes: 4

Related Questions