Is there a way to identify unique google home device under same user account from dialogflow webhook request?
Currently i identify the user from dialogflow webhool request using the following parameter:
originalDetectIntentRequest>payload>user>userId
But under same account they are same.
No, you are able to identify the user of the request, but not the device itself.
Related
I am trying to create a website that checks if the current logged-in user is subscribed to a specific youtube channel. This is meant to restrict the user if they haven't yet. Is something like this even possible?
You would need the user to login via google identity services to be able to access data like that via the api. The api gives you access to the channels the user is subscribed to if the user allows this
I need this option to remember the device ID used when registering a new user and save it in the database, and later when logging in, if another device is used, the user needs to send a verification email to be able to log in to their account.
This is a similar feature as google uses for its Gmail.
If your application works on web than you can fetch the user-agent information and the user IP address and create a hash details using his combination. If the hash is different in the 2nd attempt of sign-in / login than you can do you desired action
For my Dialogflow chatbot I need to identify the users using the chatbot. So is it possible to fetch their Email addresses. I am using Hangout for integration.
Entities are pieces of information that Dialogflow captures from a user message. This is what I'd recommend using to get the email address from one of your users.
In your dialogflow console, you simply need to set up the appropriate user intent (maybe "provide email address"). Inside that intent you can create an action that captures an email address entity.
Dialogflow includes default settings to capture pieces of information like email addresses, doing much of the work for you.
https://cloud.google.com/dialogflow/es/docs/entities-overview
The bot can access some user data which includes the email address.
So the answer to your question is yes.
See https://developers.google.com/hangouts/chat/concepts/bots#bot_access_to_user_data
I have successfully implemented google assistant on rpi using gassistpi and added agent on dialogflow also. The issue is that if multiple users invoke google assistant on different raspberry pi I am not able to identify which user has invoked the action as request from webhook on dialogflow doesn't have any user identity information. Thus, I am facing issues while retrieving data for particular user.
I tried using account linking on actions on google using google signup over voice but I am unable to implement that.
The Google Assistant SDK does not have voice match as a feature, so you would be unable to use it to identify individual users of the Action on that surface.
when your webhook is called, you have the ability to store data from every request. For instance look at :
https://developers.google.com/actions/assistant/save-data
That way you can maintain and know each devices session. Even if you don't know the user.
I'm trying to build an ecosystem where users uses its voice as biometric registration, that implies to get access to user's voice in order to be checked by biometric processes.
Does any body know how can I build that functionality using Dialogflow? How can I get the voice recording?
Regards.
For security reasons, Google does not provide the audio from a user to Actions. Users can get this through their activity log, but Actions cannot.
However, if you want this for identity purposes, Google is already doing this. If a user has enabled Voice Match on their Google devices, then you can either use Account Linking with Google Sign In to get the user's Google ID with their permission, or you can put a token of some sort in the user storage to determine when the same user has returned in the future.