Dialogflow integration with Android App UI - android

Just wondering if there is way to integrate Dialogflow responses with an Android app and control the app’s UI in response to the conversation.
Say the user is trying to do something in an mobile app and asks for help. So the app rather than talking the user through would actually demonstrate how to do it by controlling the app UI.
Could custom payload response be an option? Have not really tried Dialogflow yet just exploring at the moment. Would be good to hear from someone who tried something similar.

Related

Start android app from dialog flow

I'm android developer started with Dialog Flow. I need to run my application in the end of dialog flow conversation. Currently I have dialog flow and note js script working but I cannot run my android application from the dialog flow or firebase function.
What is the simplest way to do it? Can I run android app strait from js script? Can I use Deeplink for i?
Or I need Firebase Cloud Messaging (FCM) ?
Any other options?
Thanks.
The best way to link the two at the moment would probably be to use an FCM to notify devices that are owned by that user.
Dialog flow is majorly a text-based conversational interface and it's best utilisation in app point of view would be designing Chat bot for your application. For instance, if you are working on Banking app, Chat bot can be implemented as an separate module and with the use of appropriate deep link based upon the questions users asks they can be navigated to the Page/content/reference users are looking for.
For bot response call it is vital to integrate AIConfiguration in your code with a project specific token code. Also, Dialog flow has an excellent facility where we can input of own questions and answers and train the agent accordingly.
For example, if user inputs 'What's new in your Banking app?' we can add this question with it's answer in Dialog flow setup.
Moreover, there are various applications or different usage of this feature like Suggestion chips, Deep link so on.
Follow the below link for additional information:
https://cloud.google.com/dialogflow/docs/quick/setup

How to stop developers from opening my website in a WebView?

An unauthorized person has created an android app on our name, logo and showing our website content as is. It has fully functional browser experience in an app. This person is using advertisement to make money using our content.
Our Website: http://www.chittorgarh.com
Fake App: https://play.google.com/store/apps/details?id=davidjack.chittorgarh
What we did in last 2 days:
Complaint to Google. No response so far.
Sent emails to fake app publisher. No response so far.
Created our own official app using exact same way and made it live. We will start pushing it through our website soon. It’s not what we want but do not see any other option.
https://play.google.com/store/apps/details?id=ipo.chittorgarh
Question: How do disable all the traffic from the Fake App?
Tried User-Agent but no luck as it’s exactly same as someone opens the app in chrome on android.
It is basically a web browser within an app, so there isn’t any way around this, if it’s publicly accessible via the web then it’s available to anyone to access or implement within a web view.
All you can do really is create your own app, and add a message regarding the fake app on the homepage of your website.

Building an app with group messaging feature. Suggestions?

without getting into too many details, I would like to build an app capable of messaging between small groups of people. Basically, I need an API that will allow me to a) create a group message, and b) will allow me to later add people to it based on their selections from the application itself. I am relatively new to server side coding and am looking for some suggestions, tutorials, suggested apis (google hangouts vs facebook vs any other services that would be of use), etc. I already have google plus integration with the client side and server side authentication, so it seems like if something is possible with hangouts that would be the easiest route, but again I am just looking for anything really at this point.
The way I was kind of (hoping) it would work is that some messaging service provides the group chat and gives me an ID to it, which I could then have the clients request to be added to a particular chat and then I pass them back the ID to the chat and it begins an intent that takes them to the app itself that is hosting the chat between my users. Let me know if this is possible please, along with any suggestions!
You might want to try researching the ejabberd messaging server. It is probably going to be a bit heavy for your needs as well as difficult to learn (it is in Erlang) but I've found it extremely steady as a back-end for building a messaging server.

Should Android apps with a server side component access Facebook directly?

If I am building an Android app that uses the Facebook SDK and also has a web app that has most of the same functionality, how should the Android app handle social actions? Should it directly make requests to the Facebook API through the SDK or should it post to the web app server through my own API and allow the web-app to make the request to Facebook on behalf of the Android app? Most of the Facebook for Android examples use the former approach however none explicitly discuss the best practice when there is a web backend that will have the same social functionality as the Android app.
I've been putting my mind into a similar problem before. It was a PHP app, but essentially the design choice was to either put the FB-interaction into the frontend (JS-SDK) or into the backend and proxy it (PHP-SDK). Sadly haven't found much guidance either, so I had to make up my own mind.
As so often there seems no per-se answer, it depends on what you are doing with FB and how deep it is integrated into whatever your app/webapp/backend are doing. Is your Android otherwise more a client-side app or does it rely on other features delivered by the web-app via web-service? Is it somehow integrated with users actions that are dispatched to the backend, or does it just offer some additional gimmicks (e.g. 'Like' button, anything in the lines) Are you using the SDK to authenticate and pull user related data from FB (email, name) and does that information play a role in your backend?
As I see it, it boils down to the following:
Direct communication with FB is a lot simpler to implement as you won't have an additional layer between your app and FB, i.e. proxy code, etc. So if FB is just loosely coupled it's likely the 'good-enough' option.
Patching FB from frontend to backend can get nasty - especially if you want to authenticate via FB it's kinda complex at first. However, you'll have all FB logic in a single place, shared by Android-App and Webapp, so it's obviously easier to maintain later and better to integrate with other interactions your backend might be offering.
Hope that provides some value, would be eager to see other opinions too.
Well I think both approaches are correct but the choice depends on mostly what you already have in place on the server side and if you are planing to use the same functionality from different apps like (Android,iOS, Windows Phone apps). In that case it makes sense to just get user token with permissions you require on the front end and let the web server talk to facebook using that token. You could even save this token for the user so they don't have to give permissions again if for example you have web registration and app registration. In our app we are using this approach since there are basically five front ends (Android,iOS, Desktop,Mobile Web,Full Web) this way application developers just get token using sdk on there platform (you have to use tokens and not user name, password because of facebook rules for security). On the other hand if all Facebook communication is used only inside your app and the server doesn't need to know much about it put api calls in the app.
In my opinion, it is best to use the available SDKs/APIs for each given platform instead of trying to write your own centralization and use a single library. Since you are specifically interested in how the Android app should handle social interactions, I suggest using the Facebook SDK for Android.
While it does increase the size of the code you must maintain and the SDKs/APIs you must learn as your list of platforms increases, the most important factor for this approach is the user experience. By sticking with the native libraries, and growing your app as those libraries evolve, you will be providing your users with an experience that they are most likely to be used to. They won't have to learn how to use your app, but will be able to make posts, update their status, and look at their friend list using controls that they are accustomed to using. Additionally, you will be able to take advantage of specific platform functionality (in the mobile case, such as having your app post to a users feed in a way that promotes your app: https://developers.facebook.com/docs/tutorials/androidsdk/3.0/games/feed/)

Database.com Mobile Application Authorization Questions

I'm working a mobile application for Android and iOS (native in both cases) that will be using Database.com behind the scenes as the database. I need this intergration to be tansparent to the user. The users of the app will not be logging into or authenticating with Database.com at all, it should simply be working behind the scenes a cloud database. I will simply be using an integration user hardcoded into the application.
I've been having an extremely difficult time of finding any of examples of how to build an app with the MobileSDK where I don't have to take advantage of the user-agent OAuth flow that displays a view to the app user. zkSforce has been mentioned as a possible solution for iOS (and it looks like it could be) but I haven't found even any basic tutorials on how to implement this with inconjunction with the mobile sdk to get access to the REST API (by bypassing the login view for the user). I also have yet to find anything at all for Android other than just taking advantage of the standard Java SDK or importing the web service wsdl and working from there through SOAP.
So is there anyone out there who can point me in the direct of some examples of behind the scenes authentication and use of the Mobile SDK REST methods or is my best option here to go to using the SOAP solutions behind the scenes?
Take a look at the OAuth 2.0 Username-Password Flow, which will allow you to use already known username and password with an OAuth-style flow. This is preferred to making a SOAP call in an app that is using the REST API everywhere else.

Categories

Resources