Connecting QnA maker with the webapp Bot service of azure - azure-bot-service

I have created the Knowledge base in the QnA maker and tested it as well. It is working fine. But while creating the Web app bot service in Azure portal I selected Basic Bot for which it asked for a Luis Account. I did not have any but there was a provision to create new and I did so. Post which the bot service was deployed successfully.
The problem is I am not able to connect it to the QnA maker knowledge base. The fields like QnAKnowledgebaseId, QnAAuthKey, and the QnAEndpointHostName are not at all present under application settings where I can input the values. I tried to add an additional application string with the details but still it did not work. My knowledgebase is ready but the bot service does not work with it. Clearly you can see in the images there is no fields where I can put my QnA knowledgebase configurations
Bot application setting:
Application setting:

The bot service can be integrated with the QnA maker just through portal itself.I created the Bot service directly from the QnA maker and it picked up the Details of the QnA maker automatically.The webapp bot is up and running answering the questions as per the repo in the QnA Maker

Related

Microsoft Teams Bot not receiving messages

We have created a Bot through the Teams Dev Portal (https://dev.teams.microsoft.com/) and attached it to a Teams Tab app, but the bot is not receiving any messages from the Bot Framework. The Tab app was also created using the Teams Dev Portal and published to the Org app store. The same bot works fine if we test it on Bot Framework Portal (https://dev.botframework.com/). The bot is a http service hosted on AWS and registered in Azure AD.
We have a couple of other virtually identical bots created a few months ago that continue to work fine. Newly created bots seem to have this issue.
You need to configure the channel in azure Bot and add the app service.
please refer this link for further query.
https://www.sharepointeurope.com/step-by-step-configure-bot-to-work-in-teams-and-with-microsoft-graph/

Unable to select QnABot in bot template (web app bot)

I'm trying to create a web app bot in the Azure Portal, but I can't select the QnA template. It's supposed to be like a selector but appears just as text.
How can I connect my bot to the QnA Maker service?
It looks like you're trying to create the web app bot directly in the Azure portal. You can do this, and hook up your QnA knowledge base (KB), but it sounds like you want a more simple approach. To do this, you need to start from within the qnamaker portal itself, from the "Publish" screen of your knowledge base. First Publish the KB, then you'll see the screen with a "Create Bot" button - it works as described here (I've just tested to confirm).
When you start from this "Publish" screen, the Web App Bot has a "QnA Auth Key" section - see the bottom of this screenshot:

No such host is known- QnA Maker

I am using a dispatch model with 2 LUIS model and 1 QnA maker. On emulator everything works but after publishing, when I debug it on Web Chat channel on Azure or on Teams my QnA Maker utterances always returns
No such host is known.
I have tried using both the host names one from the settings page in QnA maker portal and westus.api.cognitive.microsoft.com/Qnamaker
Can someone help.
Well, I found out the reason it wasn't just QnA Maker but also LUIS , I have to update the LuisAPIHostName in the appsettings.json from westus to westus.api.cognitive.microsoft.comand update LUIS Host Name as $"https://{configuration["LuisAPIHostName"]}") in BotServices
And off course has to publish it again.

QnA Maker with cards

I want to add cards in my QnA Maker. I my QnA maker if anyone asks about "what services we provide?" Bot should answer (for example: We provide following services /n/n 1: Bot Development /n/n 2: Web Development /n/n 3: Documentation). In this example bot should reply it with the card and if user clicks on any of the above mentioned services than it should gives details about that.
Thanks in advance...
QnA Maker has just released a new feature called multi-turn conversations whcih does exactly what you are looking for.
Once you have added some multi-turn conversations to your knowledge base you can try this out by downloading the BotBuilder-Samples repo and opening the qnamaker-prompting sample (C# and NodeJS provided) then you can plug your knowledge base details into the appsettings.json (C#) or .env (NodeJS) file and test the functionality locally using the Bot Framework Emulator.
The key part is this method which checks to see if the result contains any prompts and returns the response accordingly - it is called inside the controller.
This should give you a good idea of how to get started.

How to connect QnA Service on qnamaker.ai to an azure chatbot using Bot Service?

I’ve created a QnA Service using qnamaker.ai and when I proceed further to create a bot using the Bot Service, I cannot because the upon searching there’s no option like Bot Service (Preview) as mentioned in the tutorials. Instead I’m presented with the following:
• Web App Bot
• Functions Bot
• Bot Channels Registration
On Azure, there are 3 services related to Bot:
Web App Bot
Functions Bot
Bot Channels Registration
Web App Bot and Function Bot are both part of Bot Service:
Bot Service provides the core components for creating bots, including
the Bot Builder SDK for developing bots and the Bot Framework for
connecting bots to channels.
Simply put, Bot Service will host a Web App / Functions Bot in Azure and let you config channels or edit the code online.
Bot Channels Registration is for projects where the developer creates their own web app project based on Bot Builder SDK and deploy the web app to Azure/AWS/Google Cloud Platform. In Azure's Bot Channels Registration, the developer can link their web app's url to Azure and enable channels to communicate to their bot. In summary, this scenario enable more flexiblity in development and hosting.
In your case, you can create a Web App / Functions Bot use QnA Bot template. Once created, in Application Settings > under App settings > Find QnAKnowledgebaseId & QnASubscriptionKey,
replace the two fields from the information in QnA service.
Save the update and your Bot should use the QnA service you published.

Resources