How can i create action using real-time data after Conversational Actions sunset - actions-on-google

I am working on an Alexa Skill that provides real-time road information like road closures.
In order to make this work with Google Assistant, I was creating Actions using Conversational Actions. However, when I recently completed the Actions, I learned about the "Conversational Actions sunset overview".
I am currently searching ways to continue developing this feature after Sunset. My requirements are as follows
Users can obtain information by specifying the desired route among
multiple routes in a common operation.
The information provided needs
to be updated in real time, every 5 minutes.
As the method to provide the information, I assume HTTP request, JSON, HTML, etc.
Any help would be appreciated!
Thank you

Related

ChatBot with conditional response flow - Rasa Open Source

I'm working on a Rasa (Open Source) project, I need to represent the diagram flow in a chatbot.
The main problem is following the conditional flow as the user can say yes or no and modify the flow of the conversation.
I would like to know how I could build a chatbot that contemplates all the possibilities represented in the diagram and the others that are outside it, using Rasa.
In other words, a chatbot that responds to the user according to his previous response.
Please.
flowchart
A "solution" I found was to create a story for each possible path, but it is "unfeasible" due to the number of stories. (there are 9 other diagrams like this one).
Regarding the flow and how you can map your designed diagrams into Rasa, you try to use one universal story/rule to make your structure more modular. You can find parts of the flow in your diagram that are being repeated on the other ones also and create your story/rule(s) out of them to be used in different flows. Rasa also supports checkpoint, which let you manage your stories in a more restrictive way.
For getting users' responses and acting accordingly, you need to deploy Rasa forms and action in your story/rule(s) for extracting those 'entities` you want to get from users and manipulate them.

dialogflow large number of potential parameter values

My Google Action delivers information to college students. For example: Who is the Title IX Coordinator?
To answer this question, we need to know the college the student attends. There are 2700+ colleges in the U.S. Many have the same name or similar sounding names.
So, #college-name is an entity in DialogFlow. Is there a way to import all 2700+ college names into DialogFlow as potential values for #college-name?
Also, is there a way to use a listbox with DialogFlow / Actions on Google with Google Assistant to ensure the correct college is identified?
Dialogflow has the ability to import entities from a file either in a CSV or JSON format.
There isn't a listbox visual widget, although you can use a List with similar names or Suggestion Chips to narrow down their search.
In addition to importing entity values from a file you can also push them to Dialogflow programmatically via the Dialogflow REST API. This API manages the agent itself and is thus different from the Dialogflow Webhook, which calls your fulfillment service.
The specific endpoint you would use to update entity values is projects.agent.entityTypes.entities. Dialogflow also offers SDKs for Python, Node.js and other languages. This is probably the best option if you have a large number of values, as it allows you to setup some kind of pipeline from your data source to Dialogflow and schedule it to update the entity on a regular basis (i.e. with an AWS Lambda function or a cron job that runs once a day).

Using "speechBiasingHints" with Dialogflow Webhook

First time posting, so feel free to give me feedback if I could improve something about this post... Now on to my question.
I am currently developing a Google Action, the Action will allow the user to define important events, such as Bob's Birthday or Fred's Graduation, and save data about said events. Later, the user will be able to ask for info about the event and get it returned back to them.
I am using the Dialogflow API with "Inline Editor" fulfillment to keep it as simple as possible for right now. The problem I am running into is this, the event has an entity type of #sys.any, so anything the user says is excepted as valid input. I would like some way to bias towards events I already have stored for the user however, so that they are more likely to find the event they are looking for.
I found another answer on here discussing speech biasing (What is meant by speech bias and how to use speechBiasHints in google-actions appResponse) which defined speech biasing as the ability to"influence the speech to text recognition," which is exactly what I believe I want. While that answer provided sample code, it was for the Actions SDK, not the Dialogflow SDK, which I am using.
Can anyone provide an example of how to fill the "speechBiasingHints" section of the ExpectedInput response of the Conversation Webhook using the DialogFlow Webkook?
Note: This is for a student project, and I'm new to developing Google Actions and still very much learning about everything that is capable with Google Actions. Any feedback or suggestions are very welcome.
The question you link to does quite a few things differently than the approach you're taking. The Action SDK provides more low-level control, but doesn't have much Natural Language Processing (NLP) capabilities, which Dialogflow provides.
Dialogflow handles biasing a little differently through the use of Entities, so you don't need to control the speech biasing directly, Dialogflow can handle that for you, to some extent.
Since each user may have a different event name, you'll probably want to use a User Entity, which is an entity you define and then populate on a user-by-user basis through Dialogflow's API. In your sample phrases, you can then use this entity name instead of #sys:any, or create another set of phrases that use this entity in addition.

How to deploy and maintain multiple chatbots agents

This post follow this one where I explain one of my problems. Currently, I have to found a way to publish and maintain a high number of agents. I am not limited to Dialogflow.
I need some integrations like the google assistant (text and vocal), facebook messenger, telegram and if possible others like Slack, Twitter, Twillio, Alexa...
Okay, so I have already produced some agents with Dialogflow to understand the technology. I also read some pages of the actions-on-google documentation and I did'nt found anything on this subject. So basically I have to implement this:
Deploy around X agents through differents integrations instanciations. I mean I really need X facebook contacts, X google assistant apps, etc.
Maintain one code-base but have the ability to add localized-features like the name of the chatbot, currency or just block some intents (for Dialogflow example but in a more generic way, dialogs triggers).
It is just possible ? I am thinking about a web UI that can handle some facilities like the deployment, the monitoring and the maintenance. I am wondering if it's not overkill and if a more easier solution than mine exists already.
It isn't currently possible to create agents automatically, although Dialogflow's V2 API provides a mechanism to update agents via JSON once they have been created; see the restore and import endpoints.

Using Google Map APIs

I am currently working on a personal project to develop a REST API which would perform tasks similar to what UBER, OLA like taxi aggregators do. Below is the brief about the functionality that I plan to add:
1)I have a fleet of cabs whose location is determined by its latitude and longitude.
2)A customer can call one of the cabs by providing their location and my API should assign the nearest cab available.
This I suppose would be accomplished by using Google Map APIs. My question is how do i start on using these APIs, to simulate such functionality?
You may use the following references:
Choose from the Google Maps APIs documentations depending on your needs. There are actually tutorials given within the documentations.
Answers to Frequently Asked Questions will also help especially the getting started part to fully understand how Google Maps APIs work.
Last but definitely not the least, this example in GitHub might help you exactly on the implementation.