Using AI in Callbots (V2)

Christina Dechent
Christina Dechent
  • Updated

The babelforce platform allows to the control of call flows at all levels. Depending on the use case, you can decide to access items directly at the infrastructure level or at the level of automated process configuration.

In this article we will look at different ways to include AI, pattern matching and other classification algorithms within any part of a call flow (the same applies to any part of a process flow that does not involve calls).

Enabling different approaches to AI in callbots

First of all there are 2 ways to deliver data on current state (e.g. feature vector) to any AI, pattern matching or classification system:

  • By means of a specific automated babelforce action
  • The AI component can subscribe to the babelforce stream for the events of interest

Fire Automations locally from within a module or globally via a global Automation: Secondly, there are two ways to carry out a babelforce Action. It can be fired locally from within a module in the call flow or globally by a global Automation. Note that both the babelforce Automation as well as the Trigger used within this Automation can include the current values for the state or feature vector. This allows AI or other components to influence any part of an entire call flow.

Third, if you wish to implement an even deeper level interaction with direct control of infrastructure, the available Automations can also be customized to give direct access to any state of lower level components.

This approach gives the flexibility to handle any imaginable callbot plus any upstream or downstream automation requirements in integrated systems. By combining this with the capability to include other infrastructure and integrations, you can also do any kind of input processing, media analytics or whatever is needed for the processes being automated.

Using series of single decision points or constant state / vector updates

Let's take two common technical design approaches for bots to illustrate:

  1. Have the AI do single decision making steps: an input vector is sent at a specific time to the AI component and the response is used to take the next step (or influence a subsequent step).
  2. Feed the AI with the updated vector of state and feature values at any time and have the AI change the vector at any time.

Obviously these 2 reduce to one and the same, if the AI component only makes one decision at one point. But the latter can enable significantly different interaction capabilities, since the dialog and process flow can be influenced at any point by how the vector is manipulated. Note that the need of one AI component only is not assumed here. The dialog manager can itself use an AI component that responds to the state vector but has a different job. Which of the 2 approaches you use is really more dependent on what kind of processes you are trying to automate.

Both are supported by the babelforce platform. In general, you can also combine any other automation process together with whatever AI components you need to use. 

Some key automation mechanisms for use with AI callbots

Add key values to active calls

To update a state at any time, use babelforce session variables. Here is an example of how to add or update session variables from within any other component. This uses the same underlying approach as integrating call flows with any other system.

Send any set of key values to other components

You can evaluate the entire set of expressions in a call (or any session) sending the placeholder {core.expressions} to wherever needed. Here is a tiny tutorial on sending these to yourself for testing

Of course, often you will only want to transport a subset of the state value set. This can be done by simply evaluating any of the expressions of the overall set individually. 

You can also use prebuilt Actions to send the specific information as key-value via any API. This is described in this article on 2-way integration with other systems.


Enabling enterprise integration

Enterprise integrations have complex deployment environments. The babelforce platform allows you to deploy your callbots so that they can work with new as well as legacy systems.

In almost all enterprise integrations, the following are essential requirements:

  1. The deployed callbot must work seamlessly with existing call center agent telephony setup
  2. It must be possible to deploy the callbot beside and within the existing IVR estate of the business
  3. It must support the telecommunications carrier setup
  4. The callbot must integrate with systems of record including internal or legacy systems
  5. The monitoring data should be delivered into existing overall real-time monitoring for the contact center
  6. The reporting data should be available to the data warehouse and BI tool chain

Those are generally the minimal set of enterprise deployment requirements. In addition, there are requirements about how the callbot will fall back to rule-based automation when necessary or how it will fall back to existing alternative handling of calls.

There are more branding and customer experience requirements as well: The callbot interactions must fit seamlessly into the other experiences and the representation of the brand within those experiences.


Was this article helpful?




Please sign in to leave a comment.