how can i make the user get back to the previous intent in dialog flow? - dialogflow-es

I am facing an issue, I have a lot of intents Having (Quick Reply Response), And i want to create a "Back" (Quick Reply) to make the user can getting back to the previous intent.
It does not work correctly. Any Suggestions??
I will be very grateful to you

Related

How to ask "Was this helpful?" in DialogFlow at the end of conversation after rendering the response from Intent

So I have a flow prepared.
User: I would like to book an appointment
Bot: Sure. Does 3pm works for you?
User: Yes
Bot: Great. Appointment has been set. (Response from Fulfillment)
Bot: Anything else you need help with? Yes | No (How to achieve this)
I have tried triggering followupEvent but that won't display any response till the chain of intent is complete.
When the followupEventInput parameter is set for a WebhookResponse,
Dialogflow ignores the fulfillmentText, fulfillmentMessages, and
payload fields. When Dialogflow receives a webhook response that
includes an event, it immediately triggers the corresponding intent in
which it was defined.
I have End Intents ready for response for Yes and No. But need help in triggering it.
An intent shouldn't be used as a step in your flow or be tied to a single response, its intended to represent a category of phrases your user might say to complete a certain goal in your conversation. Since the was this helpful isn't triggered by any user phrase, but more as a trigger for the user to continue the conversation shows that it shouldn't be a separate intent.
Having the was this helpful phrase be available to multiple intents is a good choice so it can be used throughout your conversation, but I would recommend saving this phrase in a file, an API or a CMS and retrieving the response via code.
I'm not a PHP developer, but I expect it to be along the lines of: responseService.getResponse("requestFeedbackPrompt");
This allows you to retrieve the was this helpful phrase throughout your code, without making the mistake of making a seperate intent for it, as this will create problems later on with keeping state.
If you would decide to go with a single intent for this, you will quickly see that it will become difficult to maintain track of context, states and which step of the conversation you are in as multiple intents will go through this generic intent.
What would you do if you need a different variant of the was this helpful response, with the single intent, you will end up creating an intent for each variation and you will have to align the conversation flow and state accordingly every time.
If you use the service, you just call responseService.getResponse("OtherFeedbackPrompt);`
Hi have something similar in one of my bots. I have taken a different approach to those mentioned.
My bot asks if there's anything it can help with at the end of a an acknowledgement fulfilment.
The customer then has the option to respond with Yes or No.
Within the page that asks the question I have created routes.
One route for Yes and another for No.
The Yes route directs customers back to the point where they can start making selections. The No route provides a fulfilment to the customer and ends the session. I have used Yes and No intents for these.

Is it possible to bot to prompt user for input, with user input? [duplicate]

I am creating a chatbot in dialogflow, and I want it to prompt the user for input as soon as it load. E.g
"Hi, how may I help?"
I am able to get it to response once a user says hi, but not without that input. Any ideas?
Check out Dialogflow Events
Events allow you to invoke intents based on something that has happened instead of what a user communicates.
More specifically Welcome Event, you can start typing "Welcome" in the Events section of an intent
Common events like WELCOME events may be auto-completed to help you pick the right event.

Redirect user to the Default Welcome Intent when he says "cancel" or "exit"

I'm developing a Dialogflow application for Google Assitant. In that, if I say "Cancel" it directly calls the exit_conversation intent where I've specified actions_intent_CANCEL event. So it displays the output specified in that intent and bot exit the conversation.
Instead of exiting the Bot I need to open Default Welcome Intent. Is there any way to do that?
P.S. I'm using Python fulfillment as a backend for this bot.
In short - no, you can't do that.
You're essentially asking that, when the user tries to quit, you don't want to let them quit. From Google's and your users' point of view - that is a pretty unacceptable option.
The CANCEL event handler is fairly limited with what it can do - Google will terminate the conversation, even if you don't specify that the microphone should be closed, but you're given the opportunity to say a final message and offer a link to elsewhere.

How to close mic in google assistant app

I had submitted my app for review, but Google replied with "mic" issue. Google Replied :
During our testing, we found that your app would sometimes leave the mic open for the user without any prompt. Make sure that your app always says something before leaving the mic open for the user, so that the user knows what they can say. This is particularly important when your app is first triggered.
Some Points:
1. app.ask()---leaves the mic opens.
2. app.tell()---app leaves the conversation.
I have also enabled the "toggle" of "Set this intent as end of conversation".
Any suggestions??
My app is one to one i.e. If user ask "my address" then address is shown, If "show me direction to PLACE_NAME" then directions are shown. BUT after it mic opens. How to close it?
-----UPDATED-------
fuction someName(app)
{
//---code-----
app.ask('Alright, your address is '+ user_address);
}
I don't want to use app.tell() as it closes the app.
Some other suggestion for this one to one Q/A conversation.
If you are doing fulfillment through a webhook, then the "end conversation" toggle is ignored in favor of what you are sending from your webhook.
You don't show any code, but as noted:
If you use app.ask() or one of the variants of it, the message will be sent to the user and the microphone will be left open. In this case, you should make sure it is clear what you're expecting from the user - in other words, ask a question or prompt them.
If you use app.tell(), the message will be sent to the user and the microphone will be closed. This will end this conversation.
It sounds like, in your case, you should be using app.tell().

User permission not routing to correct intent

I am making actions on google using API.AI and suddenly today my user permission request is not working. Just after the user gives permission, API.AI doesn't route to any intent. Next time when the user says "yes" or "no" then it handles it incorrect intent "permissionhandler". It rather shows some event "assistant_itent_action_PERMISSION" whereas it should be routing to intent "permissionHandler".
Here is how it should
Should be fixed now. Please check.

Resources