How to use Google Assistant responses in DialogFlow? - dialogflow-es

I try to use Link Out Suggestion for Google Assistant response.
I test my app and:
If I set DEFAULT response also works DEFAULT response exactly.
If I set only Link Out Suggestion I have an error that my test app doesn't respond.
What should me do to make work GOOGLE ASSISTANT response exactly, not DEFAULT response?

In addition to the Link Out Suggestion, you must include at least one Simple Response. If you have responses in the Default response section, and you have the "Use responses from the DEFAULT tab as the first response" set on (which you do), it will use those as the Simple Response.
If you have it set off, however, you must set your own Simple Responses for the Google Assistant. You cannot have just a link out suggestion - you must have text that goes along with it.

Related

How to find KnowledgebaseId in Dialogflow?

// const knowledgeBaseId = `the ID of your KnowledgeBase`;
I can't seem to find the knowledgebase ID in Dialogflow nor in the Cloud Console. Please help.
It's weird I my self couldn't find the KnowledgeBaseId even though I skimmed through dialogflow docs several times. But after several hours of searching I found a way that we could get it.
You should go to the the Knowledge base you created and right side there is chat window where you can test your chatbot response.
Type anything and you'll get a response card and below that there is an option called Diagnostic info.
Click it and you'll see the RAW API response and there you can see the KnowledgeBaseId inside it (it may be referred as source there). It should be in the format Format: projects/<Project ID>/knowledgeBases/<Knowledge Base ID>

Dialogflow query working in console but not when you use embedded url

I have made a query flow in dialogflow and it has four intent and in the last intent it uses a webhook to get data from server side and displays the result. It is trained automatically and works perfectly in dialogflow console returning response and query answer. The issue is it does not work when I use embedded url. It fails to recognize the name intent and asks (Can you repeat again or fallback intent). I've removed all intents and made query again, there is no similar name intents. Yet it works well in console and not in embedded url.
For the webhook part I've used node.js service.
Please help in this issue.
By 'embedded url' if you mean Dialogflow Web Demo (DWD), you should keep in mind that DWD can be used only for simple text messages. It does not support messages from webhook or even rich responses. However, if you steel need a web widget to embed your bot to your webpage you either create your own or you should use third party solutions (like Kommunicate). Here's the link regarding the limitations of DWD.

Default Fallback Intent responses + webhook fulfillment

I'm looking to add some logging of utterances that hit the default fallback intent. I imagine that's a pretty common desire, so maybe I'm missing some out of the box functionality that would be the real answer.. if so, please let me know!
That said, I'm trying to make use of the default text Responses section of the dialogflow UI, and additionally use a webhook to log the utterance.
I haven't tried this combination before, and I'm not sure how you are intended to do it. The user gets one of the text responses, and my webhook is called, but it seems that the webhook is expected to return a response as well. I can't simply log the utterance and be done.
Additionally i can't add suggestion pills, b/c a simple response is also required to be paired with that, even though the user already got a simple response from the default text responses.
Is it a valid use case to have your text response come from the intent responses section in the dialogflow UI, and still use a webhook to do "other" stuff? If so what is the correct way to do so?
If you really want to do it this way, don't return a JSON response and Dialogflow will use what you have sent in the response. This is not unusual, although most people tend to switch to doing responses through webhooks.

Google Home send GET request and say response

There is an API available online that responds with a number (number of points) when you submit a GET request to a certain URL.
I'd like my Google Home to say this information when I ask it to. I have attempted to do this with DialogFlow but I'm not sure how I would go about doing it.
EDIT: I used the DialogFlow fulfillment webhook feature. DialogFlow sends a post request to my webserver and the server responds with "fulfillmentText" which is what the Google Home will say.
There is nothing built-into Google Home that will get information out of the page at a URL.
You can write a program that will be triggered by the Assistant using Actions on Google. This includes something that would run through Dialogflow, or it could run through the Actions SDK. Either way - you would do this by writing a program that would be called in a webhook to fetch the data and return a message that would be read by the Assistant on your Home.

Google actions not showing cards in test

I've created a simple helper in api.ai to tell and added a few intents with responses that link to google actions. When I link my agent to a google project and test it with those intents i get the following errors:
expected_inputs[0].input_prompt.rich_initial_prompt: the first element must be a 'simple_response' or a 'structured_response'.
and
expected_inputs[0].input_prompt.rich_initial_prompt.items[0].basic_card.image: 'accessibility_text' is required.
these are both classified as Malformed Response Errors, but I don't really understand seeing as I didn't write any code, simply just used used the UI for api.ai and google projects
Any ideas?
The problem is that the Actions on Google responses still require a text response to be displayed and/or spoken in addition to the card responses. So in the Actions on Google section of the response, you must either set "Use response from the DEFAULT tab as the first response" on:
or you must add a Simple Response:
When you enter a Basic Card, if you enter an Image URL, you must also enter the Image Accessibility Text:

Resources