Introduction

Sytel and Afiniti have partnered to produce an integration of Softdial Contact Center (SCC) with Afiniti.  This adds Afiniti's AI-based routing capabilities to Sytel's best-of-breed multimedia ACD and dialer engine.

Afiniti's AI-based agent selection is applied to both inbound and outbound campaigns and works for all types of media, bringing AI-based routing to Chat, email and other packet media sources as well as traditional voice.

SCC is both a multimedia and multisession ACD. SCC customers make use of media blending to maximise occupancy and manage service levels across media types where response timescales vary greatly. Use of SCC's multimedia blending is transparent to the integration with Afiniti.

The overall solution maximises agent occupancy at the same time as pairing the best agent available with a customer, leading to highly profitable operations for the contact center.

This document discusses how SCC is deployed to work with Afiniti.

General Approach

Afiniti enables contact center customers to use Business Intelligence (BI) to make intelligent choices about agent selection in a way that is entirely automatic, making use of machine learning and historical data to deliver routing decisions in real-time.

This philosophy of automation fits in nicely with the SCC approach that contact center resource management should be automated wherever possible, to free contact center managers from having to watch inbound and outbound queues and manage human resource manually.

The SCC/Afiniti integration enables mature contact centers who seek to gain competitive advantage through business transformation to handle agent selection without having to build manual processes to measure agent performance to configure ACD skill weightings.

The real-time interface between SCC and Afiniti is simple; whenever a route decision is made for a call or other form of media session, SCC advises Afiniti session details and agents who are available to handle the session, and Afiniti responds with a priority-ordered list of the best agents to handle the session from the available agent pool.

Users of SCC can deploy Afiniti transparently to the SCC installation. Operating procedures will not change.

The integration approach means that support for Afiniti can be added to an SCC installation without having to stage new versions of SCC software.

Target Customers

Overall contact center performance gains achieved by an automated BI-based routing strategy (or a well-designed and well-managed manual strategy) range from a few to percentage points in double figures. Margins also increase with scale of operation.

Typically only larger contact centers have the bandwidth to undertake business transformation activities.  For this reason using SCC alongside Afiniti is recommended only for customers whose inbound agent pool is 200 agents or more.  If using Afiniti with SCC outbound, campaigns need to have 30 agents or more to gain additional benefits beyond the use of SCC's world-leading dialer on its own.

Afiniti contracts with customers directly for its service.  The service is monetised using revenue sharing on productivity uplift achieved.  This is a contractual matter between end user customers and Afiniti and does not involve Sytel partners.

Partners may introduce Afiniti to their customers.  Equally, local Afiniti companies around the globe may seek to contact local partners to ask them to bid SCC with them, in support of a local customer.  Sytel will be working with Afiniti to ensure over time that its partner base is able to engage directly with loal Afiniti subsidiaries to develop business in these ways.

Integration Approach

SCC and Afiniti are integrated via a bridge application that is hosted within the SCC infrastructure.  The bridge application has been productised and forms part of the SCC toolset.

The bridge application is the only integration point between a SCC installation and Afiniti.  The bridge is hardened to deal with and recover from communications failure and server outages, which minimises the need for troubleshooting.

Afiniti is deployed as a part of a separate engagement between Afiniti and the end customer.  Once the Afiniti server(s) have been installed and an initial metadata load made, the bridge application can be installed.

Installing the bridge application is a trivial exercise.  The only information required to complete the installation is:

  • The IP address or FQDN of the Afiniti server
  • The TCP port number that the Afiniti server listens on for routing communication.
  • The ID of the tenant to install the bridge for.

Once installed and smoke tested the bridge application should not need upgrade and can safely be treated as a 'black box' for support purposes.

Technical Detail

SCC, being a multitenant platform, can enable support for Afiniti on a tenant by tenant basis.

Each tenant taking advantage of Afiniti's AI-based agent selection will need an Afiniti installation, and this will need to be primed with metadata from the tenant's CRM database or SCC call / agent history database which is generated in various forms (SQL, MongoDB).  The Afiniti delivery team will undertake this work.  As an SCC partner your only involvement in initial data load would be providing support in accessing hosted customer data at the customer's request.

SCC may be deployed in public or private cloud infrastructure, or may be premise-based.  Afiniti is typically deployed in the same location as the tenant's data, for reasons of data privacy, regulatory compliance and bandwidth management.

This means that for cloud or hosted deployments of SCC working with Afiniti, a secure route to enable the TCP connection between the bridge and Afiniti will be necessary.  This will inevitably involve some firewall configuration.  In the event that the connection uses the same data pipe as voice it will be necessary to configure the server hosting the bridge to set the diffserv byte to indicate express forwarding so that the afiniti protocol data is forwarded with low latency.

Deployment Topology

SCC is installed as a distributed platform across multiple physical hosts or VMs.  In the case of smaller installations SCC be deployed on a single server. A typical cloud deployment of SCC will have multiple tenants, each tenant ranging in scale from 5 users to 500.  The design of the solution enables support for Afiniti's routing on a tenant-by-tenant basis.

SCC negotiates agent selection with Afiniti via a bridge application that subscribes to routing events within SCC and uses Afiniti's published protocol to effect agent selection.  The bridge application manages communication failover from both sides, leading to a simple deployment topology regardless of how complex the customer's contact center operation may be:

Afiniti Bridge is a stateless service which performs simple protocol translation and consumes little memory and CPU, even under load.  The payload should ideally be hosted on the same machine as the CallGem ASD® engine.

Afiniti Bridge is configured to run one instance for each tenant on the system wishing to take advantage of Afiniti's AI-based routing.

Communication links are made using TCP sockets.  The messaging protocol is real-time and the overhead of using HTTP or other standards-based protocols is prohibitive for this type of application.

The network connection between The Afiniti Bridge and Afiniti's service may be LAN, WAN or public network, subject to network round-trip times.  The most time-critical routing operations in SCC are expected to complete in under 500ms so network round-trip times between the SCC services and Infiniti need to be under 200ms to mitigate the risk of route timeouts.

Resilience Measures

Afiniti Bridge has been built using the same resilience patterns as implemented in SCC.  This means that the bridge will automatically recover from the following scenarios:

  • communication failures either with SCC or with Afiniti
  • service failure

While in failover, or in the case of a route timeout, routing will revert to standard inbound queue rules within SCC and for outbound either FIFO or skills-based routing will apply as configured.

CRM Data Integration

Each tenant within SCC has their own database resources, whether this is via integration with 3rd-party CRM or locally-hosted data.  Afiniti requires some initial metadata on contact history in order to make route decisions. Because each tenant's Afiniti bridge instance is connected to by a separate instance of the Afiniti services this ensures separation of data and compliance with PCI DSS.

Since contact history data is not anonymous there may be data privacy issues to manage.  This will be done as part of Afiniti's engagement with the end customer.  SCC partner responsibility is limited to ensuring that the end customer agrees any data access to hosted line-of-business information, whether ongoing or as part of initial data load.

System Limits

Because Afiniti Bridge has minimal overhead cost the system limits for a SCC installation integrated with Afiniti are the same as a regular SCC installation.

Current system limits within SCC 10.7 are:

Maximum concurrent contact center agents per system instance: 2000

Maximum concurrent contact center agents per tenant: 500

Maximum concurrent media sessions per system instance: 10000