Progress NativeChat is a cloud product for building and deploying chatbots into various channels. It makes it easy to create chatbots on top of existing systems. Chatbots can interact with users naturally by understanding natural language expressions. Then they can generate reactions and responses based on a cognitive flow definition.
As a Sitefinity CMS user, you can consume existing NativeChat chatbots and display them on your sites.
In this article, you learn how to integrate an existing NativeChat chatbot into your Sitefinity CMS site.
: To use a NativeChat chatbot with Sitefinity CMS, you must comply with the following:
- You must have the Administrator role in Sitefinity CMS.
- You must have created a NativeChat bot. For more information, see NativeChat Documentation.
- You must have published the bot on the NativeChat portal.
For more information, see Publish Your Chatbot on Your Website » Create a new channel in NativeChat » Step 1 to Step 3.
NOTE: Because of the integration between Sitefinity CMS and NativeChat, you do not need to copy and paste any raw HTML code. Instead, you use the NativeChat widget.
Connect Sitefinity CMS and NativeChat Platform
Before you can add a NativeChat bot to your pages, you must connect to your NativeChat account. This enables the content editors to browse and connect to the published bots in the NativeChat account.
Perform the following:
Obtain a NativeChat API key for your account.
Perform the following:
- Navigate to the NativeChat portal.
- In the upper-right corner, click your account avatar » Edit profile.
The Account screen appears.
- Click API tokens » Generate new API token.
- Enter a descriptive name for your new token.
For example Sitefinity connector API token.
- Click Generate token.
IMPORTANT: Before closing this window, copy the token. For security, it is displayed only once.
RECOMMENDATION: To strengthen the security of your solution, we recommend not storing this token anywhere in plain text. Instead, enter it directly in your Sitefinity CMS solution, as described below.
Connect Sitefinity CMS to NativeChat
Perform the following:
- Generate the NativeChat API key as described in the procedure above.
- In Visual Studio, open the
appsettings.json file of your .NET Core Renderer application.
- After the Sitefinity section, add your NativeChat API key in the following way:
- Save the
RESULT: The NativeChat module is configured, and you can add your existing chatbots to the pages of your Sitefinity CMS site.
Use the NativeChat widget
The following procedure describes how to add bots to your sites.
You can use the NativeChat widget both on page templates and pages.
PREREQUISITES: You need to connect Sitefinity CMS to NativeChat, as described in the procedure Connect Sitefinity CMS to NativeChat.
To do this, perform the following:
- Inside a column from the Section widget, click Add widget here…
- Select the Content tab.
- Click the NativeChat widget.
The widget is placed inside the selected column of the Section widget.
- Click Select a chatbot.
The NativeChat widget screen appears.
- In the Select a chatbot dropdown box, select the bot that you want to use.
The dropdown box is populated with all bots available in your NativeChat account.
NOTE: To strengthen the security of your site, the NativeScript widget changes the configuration of the Content Security Policy HTTP Header. It adds the following cookies:
frame-src and sets them to enable loading resources from web-chat.nativechat.com.
For more information, see Content-Security-Policy (CSP) HTTP response header.
Setup FAQ chatbots
With the NativeChat connector and widget you can also create a FAQ solution, which takes input from Sitefinity CMS and updates it in NativeChat with the help of service hooks. You can add different variations of the questions and the answers and improve the bot in the NativeChat portal, but you can manage the content only in Sitefinity CMS.
You need a published NativeChat chatbot, a dynamic content type with question and answer fields, and a Service hook based on that module.
You can either use your existing FAQ module or create a new dynamic module. For more information, see Create a dynamic content type.
: To create an FAQ, you must have set up the following:
- You need to have a published a NativeChat chatbot.
- You must have created a dynamic content type with a question and an answer fields.
For more information, see Create a dynamic content type.
You have two required fields in the content type for the chatbot - Question and Answer. They can have different names, but you need to configure these fields in the service hook for the chatbot. You can have additional fields as well, depending on how you want to present the FAQ on your site.
You must create a service hook that updates the NativeChat chatbot when you publish, unpublish, delete, or update dynamic content items for the content type you have created. For more information, see Dynamic content items.
- Navigate to Administration » Service hooks.
- Click Create a service hook.
- Enter a label for the service hook.
- Select one of the triggers related to the dynamic content type you created for your FAQ.
For example, <dynamic content type> is updated or <dynamic content type> is published.
- In Action, select Update chatbot.
- Select the chatbot to be updated.
- Fill out the names of the Question and Answer fields.
This way the service hook is able to tell apart the question and answer fields from other fields you might have in your dynamic content type.
- Click Save changes.
FAQ chatbots in multilingual sites
You can also set up FAQ chatbots in multilingual sites. All you need to do is to create a chatbot for each language in the NativeChat portal, create the service hook with the specific language chatbot, and when the language of the bot and the content match the chatbot is updated.