Solutions
How I Created an Intranet Chatbot for Staff In SharePoint
Aaron Cunnington
With 17+ years of Australian and international experience, Aaron is a seasoned digital executive, leader, and strategist. Known for his positive attitude, generosity, and sense of humour.
November 30th, 2017
Many public websites have a FAQ (Frequently Asked Questions) list to help visitors find answers to questions they have about the site. Many of these websites have now added webchat capabilities to make it even easier to get an answer to their questions. It makes sense – why read through a long list of questions to find one that matches yours? Chatbots now allow a website visitor to type in their question directly, and the chatbot will return the best-matched answer.
What about internal customers – employees? How do they find common answers to frequently asked questions? Most common intranets have multiple site collections, many subsites, each with their own pages and other assets, so finding an answer to a very specific question can be a daunting task.
With SharePoint, there are several FAQ apps available through the Office 365 Store, or with just a bit of work you could also create your own by leveraging a custom SharePoint list. But at the end of the day, the employee would still need to search through all the questions to find the one answer that matches what they are after.
What about adding a chatbot to your SharePoint intranet?
Using a chatbot in SharePoint, an employee can type in their question and get an answer. Most employees are familiar with this interaction channel, so there is little to no learning required. Sounds great, but how’s it done?
Introducing Sia, the SharePoint FAQ chatbot!
I have developed a solution that leverages several existing components and services to create an end-to-end cycle that allows question-and-answer items to be added to SharePoint, so that they are automatically available for the chatbot to return to the user. The basic components are:
- A SharePoint list for the FAQ question-and-answer items
- A FAQ knowledgebase, using Microsoft’s QnA Maker
- An app to synchronise the FAQ list with the QnA Maker knowledgebase
- A chatbot interface, installed as a SharePoint webpart
How these components interact is shown in the following diagram:
In the end-to-end cycle, a content producer will add a question and answer pair to the FAQ list in SharePoint. This list can have additional optional fields, such as List Order.
A synchronisation app, that is either installed on the SharePoint server for on-premise, or hosted in a cloud service such as Azure, will periodically poll this FAQ list and pick up that a new question-and-answer pair has been added. It will connect to the QnA Maker API and add it into the knowledgebase, and then trigger the service’s training and publishing events. The question-and-answer pair is now available for the chatbot to use.
The chatbot itself is a SharePoint webpart that can be added to all SharePoint pages as a webpart. It is loaded when the page is loaded, defaulting to a minimised titlebar-only state at the bottom of the page that, when needed by the user, can be expanded and moved around the page so as to not obstruct other parts of the page.
Employees interact by typing questions in natural language, and the chatbot responds with a matching answer. Additional question-and-answer pairs can be pre-loaded directly into the QnA Maker knowledgebase for content that might not be wanted in the SharePoint FAQ list, or to just give a bit of extra personality to the chatbot.
And that’s it – at least at a high-level. There are many details in the implementation that I have omitted for brevity. The solution currently developed allows for various customisations, such as the chatbot’s name, UI styling, and an optional accordion-style webpart for showing the FAQ on the page.
Of course, this solution can be further extended to allow for page/site-specific FAQ lists, filtering by office or country, and feedback and training of the chatbot to improve its answers.
The next generation intranet should empower employees – using chatbots employees can quickly get answers to questions leveraging AI that’s here today.
Want to know more about my SharePoint chatbot? Get in touch with me today. AI is the future, but it’s here now. The more that we can leverage technology like chatbot’s, the more productive we can make our employees through their digital workplace.