Skip to Content
Product Information
Author's profile photo Paul PINARD

SAP Conversational AI August 2021 Release Highlights: Initialize Skill, Web Client New Features & More

Hi SAP Community,

We are excited to share the newest features released in SAP Conversational AI as part of the August release!

Feature of the month #1 ⭐️ Initialize Skill

Your chatbot development has never been so easy! The Initialize skill enables you to define some actions that are required to initialize a conversation with your chatbot. This skill is automatically executed at the beginning of the conversation and can be used to initialize the memory or the language of the conversation. This facilitates retrieval or transformation of context information only once instead of multiple times in various skills and eases customization of your chatbot behavior.

Watch the demo below or read our documentation to learn how to build this type of skill!

Feature of the month #2 ⭐️ Initialize Conversations with User Language

In addition to the new Initialize skill, productivity has been enhanced by enabling chatbot developers to initialize the language of the bot conversation with the users’ language settings. Now you can:

  • automatically determine users’ language setting based on predefined heuristics
  • provide this information into the chatbot context for chatbots connected to the Web Client channel

Watch the demo below or read our documentation to learn more!

Custom Styling for Web Client

Adjust the SAP Conversational AI Web Client to your own look and feel! Define custom CSS styles with the Web Client channel configuration, choose colors of the desired theme and fine-tune elements such as font, borders, and margins.

Adaptative Responsive Design for Web Client

Ensure faster delivery and benefit from a better user experience by integrating the Web Client with a custom container on a Web page and accessing a channel on a standalone version (single page) of the Web Client. It improves the adoption and enables better control interactions and customizations of the Web Client on the developer’s page.

Web Application:

Single Page Application:

Better User Experience for Testing Tool

You can now intuitively access the testing tool from a single location by having the “Chat Preview” and “Expression Analysis” (old Test Console) windows in the same location! Remain in edit mode on the required tabs when building and creating intents or skills, without having to close or minimize the test-tool windows.
Test it now >

Manage Pending Requests for Organization

As an organization admin, you can better manage the pending requests for bot collaboration and transfer, the addition of members to the org, or the change of role for an org member! As an org admin with Read and write permission, you can:

  • see all pending requests for the addition of team members and change of role under the Members tab of the org
  • delete the pending request that has been sent to the bot developer or the org member

Manage Permissions >

Data Policy of Existing Bots

As stated in our previous communications, if you have not defined the Type of Data under Data Policy for all your existing bots, the Type of Data has been set as Sensitive Personal.
Define Data Policy >

Deprecation – Retrieval of OAuth Credentials

For security reasons, client certificate and client secret will be visible only once after generation. They will not be displayed subsequently. Please note the secret immediately after creating an OAuth Client. For the same reason, the endpoint that fetches the runtime OAuth token and status 200 for PUT method have been deprecated.


Deprecation – API Calls to Bot Connnector

As of November 2021 release, API calls to Bot Connector for bots created after February 2021 release will require OAuth tokens to be passed along with the bot tokens.


There is more!

New data center availability, new parameters, SAP API Business Hub…stay up-to-date with additional improvements by reading our changelog.

Get started with SAP Conversational AI

Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Daniel Wroblewski
      Daniel Wroblewski

      Wow, start bot with initialize skill. Nice. And looking forward to the welcome skill that I know there is a big request for. Nice work.



      Author's profile photo Matthias Berghoefer
      Matthias Berghoefer

      as for the initialize skill: unfortunately the link to the documentation does not (yet) work, so I'm wondering how "beginning of conversation" is defined, especially for Microsoft Teams. Does anyone know?

      (in the Conversation Log it looks as if a new conversation is shown after about 15 minutes idle-time, but memory variables are still preserved, so while the Conversation is shown in multiple logs, it still seems to be the same single conversation. This only changes when a WebClient- or WebChat-Window is reloaded, but in Microsoft-Teams this is never happening. That's why I'm asking about the definition for "beginning of conversation", so that we know when exactly such an initialize-skill will be executed, and how this differs from platform to platform)

      Author's profile photo Jonas Brand
      Jonas Brand

      Hi Matthias,

      independent of the channel used (even when using Dialog API directly), the initialize skill is always executed for any new conversation ID being used, for which no conversation state (e.g. memory) was stored yet. So for Microsoft Teams it would mean for example that the initialize skill is executed when the user first says "hi" (or anything else) to the bot. The initialize skill is always executed before the NLU analysis and before any other skill is executed.


      Author's profile photo Matthias Berghoefer
      Matthias Berghoefer

      Thank you Jonas - so for Microsoft Teams this skill will be executed only once and then never again, no matter how many years the user account exists, right? Or is there a limit on how long a conversation exists on Microsoft Teams, some kind of timeout (e.g. user is idle for 1 month or whatever)?

      thx+best regards


      Author's profile photo Former Member
      Former Member

      Hi Matthias,

      We do not have a timeout in CAI for a conversation started from Microsoft Teams as of today. We create and map a CAI conversation to a conversation created by Teams - so as long as the conversation is active on the Teams side, we on CAI side also uses the same conversation ID/state.

      So, yes what this means is - the very first time a user talks to the Teams bot, we create a new conversation ID on CAI side and map it to the Teams conversation ID and the init skill is executed. Subsequently, when the user talks to the bot, Teams by default uses the same conversation ID, CAI also reuses the existing conversation and conversation state. For the Teams "personal" bot - like you mentioned , yes, this actually could mean as long as the account exists. Additionally Teams also does not provide a way to "delete" or "uninstall" this type of bot and by default uses the same conversation ID.

      Another thing to note, CAI has data retention policies based on the type of data handled by the bot (see Bot settings -> Data Policy). This applies for MS Teams bot as well. Conversation related data is deleted from CAI side after the data retention period. At this point, the conversation (+state) is removed from CAI, and if a user talks to the bot, a new conversation is created on CAI side. (irrespective of the data storage and conversation state on Teams side)

      Hope that helps,


      Author's profile photo Matthias Berghoefer
      Matthias Berghoefer

      Yes, Radhika, this helps a lot, thank you!
      best regards


      Author's profile photo Waldemar Koch
      Waldemar Koch

      The "Initialize Conversations with User Language" does not work with SAP Fiori Launchpad (SAP Cloud Platform, NEO, Free Style).

      • {{client_info.language}} does not provide any data.
      • Currently it only works with " SAP Conversational AI Web Client, Web Client standalone link".


      Please implement this feature also for integration with SAP Fiori Launchpad (NEO, Cloud Foundry, OnPrem Business Suite)).

      The focus on user-relevant features is right.
      The expansion of the UX features must be pushed further.

      A professional integration of DeepGram for speech recognition should also be implemented.
      The "Language Detection" must be on the level of Google Language Detection.


      Author's profile photo Former Member
      Former Member

      Hi Waldemar,

      Thanks for your feedback.

      {{client_info.language}} will provide the logged in users' logon language retrieved using SAP FLP APIs in case of our OOTB integration with S/4 ABAP FLP. For other FLPs we do not have an OOTB integration available. However in theory for other FLPs as well, in case the Web Client is bootstrapped in a standard, supported way and the same FLP APIs we are using to fetch the language are supported by the cloud FLP, then it should already provide the users' logon language. Else, we fallback to the users' browser language and populate {{client_info.language}} with this value. But ideally in no case for Web Client should the {{client_info.language}} be empty. I would be interested in getting more details on how you have integrated Web Client into cloud FLP so that we can take a look into what is going on?