How Azure Search service works with Azure Bot & Language Cognitive Service - azure-cognitive-search

I am looking for documentation, blogs or article where I can learn how Azure bot works with Azure Search Service and Language Cognitive Service.
Any reference to document/architecture flow will be highly appreciated.
I have searched MS documentation, but so I couldn't find article beyond their individual usage and benefits.
I am looking for some detailed information about how information (Chat communication) flows among Bot app service, Search Service, Language Cognitive service and ultimately to knowledgebase (Language Custom Question answering)
I am curious to learn how search service is used for document indexing and searching QnA pairs,
How it interact with Bot service, Language service and KB
Thank you.

LUIS (Language Understanding) is the best approach to work with azure search service and azure bot language cognitive service. There is professional documentation to learn the architecture. LUIS is having a hybrid method to implement the cognitive services in language service and bot in combine for IoT applications, Chat bot, and E-Commerce chat bots.
https://www.luis.ai/
Check the above link to learn the architecture.
Note: Based on architecture, we need to learn from this link and internally we have few more links in resources section. Check the screen below to navigate to the resources section to get official documentation.
Extended Answer:
To answer the questions asked in comment, whether "Bot service makes use of Language service and app service makes use of Search service". Then there is question asked to the bot it has to access the application service which was hosted using the azure cognitive services. Then the service was connected successfully, the language is the major part which the bot need to identify. The way of architecture shown in the question is the way they will work and also the below architecture is an another example of implementation

Related

Sending User Input from IBM Watson Assistant to Database or via E-Mail

I want to implement an evaluation feature to my chatbot. User would be able to rate service on a scale of 1 to 5 and make suggestions.
I guess I would use slots for that and store the provided data in a variable.
What would be the easiest way for me to save and access that data later?
Somehow I need to write it to a database and make that database easily accessible. Or ideally having Watson sending an email with the feedback to myself.
Is there an IBM Cloud Database service available for that?
What would be my first steps in order to achieve this? Maybe you have some tips or documentation links, or even code snippets if it's not to much work for you.
I used IBM Cloud functions to get a joke from an API to Watson via webhook. I used code from the internet. So I am somewhat familiar with the concept, but I need more guidance and couldn’t find anything helpful. Basically I know nothing about NODE.
I would recommend the tutorial and its code on how to build a database-driven Slackbot with Watson Assistant. It uses a webhook and Cloud Functions to interact with a database for various actions. You could use that as blueprint for setting up the webhook and see how the database is invoked.
Make sure to secure the webhook. This can only be done using the command line (CLI), see the Cloud Functions doc on securing web actions.

User authentication through Office365

We're are about to build a new intranet system for our company, leaving SharePoint behind. The system will be built using Ruby on Rails. Since we're using Office365 for mail, calendar etc., we would like to authenticate our intranet users through Office365.
I'm aware of Microsoft Graph API, but I have a hard time figuring out of there is a possibility to authenticate users from a third-party application. Moreover, we would like to retrieve general information about the user, like profile picture and calendar information.
Is anybody knowledgeable about Microsoft Graph API and know if it's possible to achieve our goals using the API?
You're on the right track. You would authenticate with Azure AD, which is in the 365 ecosystem.
I wrote (and answered) a detailed guide here:
How to get the JWT (using OpenIdConnect) from HttpContext, and pass to Azure AD Graph API
Note that this is the OpenIdConnect flow. I think the Saml2 flow is somewhat different.
Don't take my advice on storing the authentication codes or try to acquire the token silently - it ended up causing issues in production that weren't seen in test. Rather, just use the user object id as your key attribute.
The microsoft documentation on the topic is a little cerebral and abstract, so it'll take a little head scratching, but have a look at the samples mentioned in the post I linked above, they'll get you started.
Yes, using Microsoft Graph is the right way to go about achieving the stated goals here.
There are quiet a few samples and tutorials provided on the Microsoft identity platform code samples page that will teach how to build an app that calls Microsoft Graph.

Is 3rd party Oauth2 Provider in Google DataStudio with custom connectors supported?

I have an API that a user can query for data after that user authenticates against an OAuth2 provider that I maintain (i.e. not Google). Is it possible to expose data through this API to Google's Data Studio using a Community Connector? If yes, is it possible to use the setup outlined here https://github.com/gsuitedevs/apps-script-oauth2#setup against a non-Google OAuth2 provider? Thank you for your help!
I have not found any requisite to expose data through an API. So I expect that it is possible, but take into account the specific configuration requested when implementing it.
The setup outlined there is not official so you will need to test it unless someone has done it already or has enough time for it. The post is really detailed and has work behind, so I would give it a chance!

How to tie a backend to Watson's Conversation service?

I am using Conversation service in my application, at the backend I want to use the corpus I have setup so that I can ask deep technical questions since my corpus has been populated with Technical videos and articles spanning 20+ years.
Can you please point me to examples where Conversation service has been integrated with backend Watson services ?
There is an example of integrating Retrieve and Rank at
http://conversation-enhanced.mybluemix.net/
The code to show this integration is housed at https://github.com/watson-developer-cloud/conversation-enhanced
I did find the code where the query is constructed with the user's input and the backend corpus is searched , the class in github is here : https://github.com/watson-developer-cloud/conversation-enhanced/blob/master/src/main/java/com/ibm/watson/apis/conversation_enhanced/rest/ProxyResource.java

Google App Engine: Share data between users

Is it possible to make invitations to share/view data similar to Google Docs?
Definitely: GAE is a platform, a canvas for what you want to build. Document access management is entirely up to you, but of course you'll have access to some APIs to facilitate your life (e.g. Google Accounts integration).
Of course it is. You can create virtually any kind of web application that you want with AppEngine. It doesn't come with anything built-in to do this other than an API for sending emails, but you can certainly code up this functionality.

Resources