integrate google assistance in android application - android

i am Totally freshers in integrate google assistance into android app.i have task to integrate google assistance into android application.i am researching from last 3 days.i have some question need to clear first.
Here they are.
I have application that handle one machine via Bluetooth.in application there are four buttons that perform different action.Now here i have to do.
suppose i speak "Ok google,let me talk to [some invocation name]"
then it will redirect to my application and perform some action.
How can i do this ?
Help me for this.

Once Your Assistant app is approved by Actions on Google, then your api.ai agent will be available to anyone through 'Ok google'. So, when you speak "Ok google, let me talk to [some invocation name]" then it will open up your agent. So you have to implement your api.ai agent for your machine controlling thing.
I think you can use webhook option in the api.ai to sent control commands to a 3rd party and you have to use that 3rd party to control your machine. This 3rd party can be your android application and you can use push notification or something(use any communication method with android application) to receive commands from api.api agent and do the controlling of your machine.
And also I don't think google assistant will open up your mobile app when you say "Ok google, let me talk to [some invocation name]". Google assistant only open ups the agents that we registered in 'Actions on Google'.
You can try with 'Google Assistant SDK' and try to implement an android app. But still there is no android documentations or samples for that.
Also I think using Google Assistant gRPC API, you can develop some standalone google assistant solution.

https://api.ai/
you will have to read the documenation of googles new converstion api. There you will find answers for your questions.
This is a very fresh topic since google just released the api a few days ago.

Related

Ingration mobile app with Google Assistant

do you guys know if I could make an Ok Google mobile app that reacts for that popular phrase, then send it to Dialogflow or some Google- or self-like platform that processes voice input and then get extracted params and commands included in voice command into the app?
I tried with shortcuts.xml file but it works only in App Actions Test Tool in Android studio. When I tried it with Google Assistant logged in on the same Google account it didn't work. Same after uploading app into Google play (still the same account) as internal tests. Google Assistant didn't recognize my custom intents as all.
I also tried the Google Actions Console project and Dialogflow project but when in first case I can upload it so it is available only for me in the second case I can't access it anywhere.
I try to make Smart Home app so it must handle intents like "Switch light on/off in the kitchen" and similar to it. I must connect Google Assistant voice control with my home app. I already have Java mobile app and C# desktop app (this one controls physical devices).
If you could propose some solutions to that problem I really will be grateful.

Customize Google Assistant in Android Auto app

Is it possible to customize Google Assistant experience in Android Auto media app? I'm building an app that is playing news (radio auditions, podcasts etc.) and Google Assistant is optimized to provide responses that are focused on "Music". For example when I'm asking for "Guns and Roses" then this search query is forwarded to my app and I can provide a search results to the user. But my app is more "news" oriented and when I'm for example asking to search for "sports news" then Google Assistant is not letting me to respond to this request.
My question is: is it possible to customize Google Assistant behaviour here? Or, even better it would be to force it to forward all of the "not recognized" queries to the app.
No, you cannot customize Google Assistant but I don't think that is the question you want to be asking here.
I propose an alternative solution that Google already provides.
This is not exactly as you ask but you may be able to to say "Play Sports News on {your app name}".
If you register ACTION_PLAY_FROM_SEARCH and implement the onPlayFromSearch() callback, you may get the play command string routed to your app.
Please refer to the following Google document: https://developer.android.com/guide/topics/media-apps/interacting-with-assistant#playback_actions

What intent works to post to an API or add a payment to my app? (Like taking note)

I have an app that keeps track of payments, I want to be able to add payment by using google assistant. Which intent should my android.xml have and what should I say to google assistant? Would really appreciate any help. Also, note that I can't seem to use dialog flow to create my own custom intents since that would mean that it would only work on my device whereas I want it to work for anyone that has the app. I wouldn't mind also instead of having the google assistant call on the API that adds a payment to the database directly either.
Look into App Actions.
With App Actions, you declare support for built-in intents, which model common ways that users express tasks or find information, such as ordering a meal, booking a ride, or checking an account balance.
The Assistant can then launch your Android app or display a slice to your users. App Actions is supported on devices running Android 5 (API level 21) and higher.
With the Finance built-in intents, users can send money, pay a bill, and check their account, provided your Android app supports deep links and has an actions.xml file in the APK.
You can review a sample App Actions project on Github.

Use Google Assistant to directly talk to my Android app and execute a very simple task

I am working on a project to integrate the Google Assistant with an existing Android app. The requirements are simple. Assuming my app is named TestApp and I want it to just change the background color of the app home page, I want to be able to say,
"Hey Google, Change background to black on TestApp".
I was given links to ActionsSDK, but looking into it, I see that it is only a stand-alone app that extends Google Assistant and has nothing to do with android itself.
The closest API I found that does what I need is the Voice Interactions. This is very similar to what I need done but it only allows preset voice triggers such as "call this person..." or "set alarm at...", but cannot do "change background..." like in in my example. According to this link, custom voice actions aren't allowed.
So my question is, is it possible to directly interact with my app and have it do a very simple task?
Thanks
You may want to connect an Android app property with your Actions project to sell your digital goods in the Play store. Implement digital transactions to sell your Play store items as part of a conversation with your Action.
To connect an Android app with your Actions console project, you will first need to connect a website to your project. Follow the instructions provided above in Connecting a website.
Once you've connected a website, under Android app, click the Connect App button and follow the instructions shown. Once you have completed the instructions over in the Play console, it may take up to 24hrs before the connected Android app is reflected in the Actions console.
Try this in Action on google
Right now there is no way to do communication between Android App and Google Assistant. If your GA is built upon Dialogflow API (specifically not using action-on-google), then you can use Dialogflow Android client in your Android App to communicate with Dialogflow Agent.
I wrote an app for my own use to brighten the screen when I was in bright sunshine and could not see the screen by asking the assistant to launch the app. Then on launch I executed code to make the change. A cheesy work-around I know :-)
you can try using this
[1]: https://docs.slanglabs.in/slang/
This will allow you to perform several actions through voice inside your app. You can use the console to add actions and utterances and there are some sample apps which might help you.
I have used it in a lot of my apps.
Feel free to reach out in case you need help, good luck!

Google Assistance integration with Android App

I want to integrate Google Assistant in my app. I am not just for launching the the app, also to operate on it like below:
App: Hi! What are you looking for?
User: T-shirts
App: What is the size?
User: 40
App: What is the color?
User: Any / Red and blue
App: Here is the T-shirts for you
User: Show order by Popularity
App: Here it is.
Is it possible to do so by Google Assistance? Is it possible to start any activity of my app with proper intent extra?
With Actions on Google as you will need to build a server side components to handle the voice/chat interaction. For an example of the voice interaction see: https://developers.google.com/actions/extending-the-assistant
As to actually starting an app from Google Assistant. I don't believe there is a direct way.
Alternatively that seems to be possible for a select set of voice commands through Google Search Voice Actions to reach your app.
Note that Google isn't taking any more requests for custom Voice Actions:
https://developers.google.com/voice-actions/custom-actions
And that the pages doesn't seem to have been updated since 2015 so I'm unclear what is still supported or not.
From what I can tell the only part of Google Search Voice Actions that may be still around in 2017 is the ability to incorporate app data into Google Search via
Firebase App Indexing

Categories

Resources