Genesys Cloud and Mindful integration guide

Integrate Mindful services with Genesys Cloud.

The Mindful integration with the Genesys Cloud platform utilizes reliable SIP-based communication without the need for custom development.

In this guide, we present configuration requirements for the following processes and components.

  • Configuring DIDs for the contact center and high-priority holding queue

  • Routing for inbound calls, choose-hold calls, and callbacks

  • Establishing an offer threshold in Genesys Cloud based on wait time

  • Providing a callback offer on the Mindful platform

  • Retaining user data between Callback and Genesys via Mindful Datastore

  • Transferring callers to a Mindful Feedback survey before disconnecting

Note:

Keep the following points in mind as you work through this guide:

  • The offer for a callback is made in Mindful, except when using the optional Second Chance call flow, where the offer is made in the in-queue Architect Flow.

  • A dedicated BYOC PBX SIP trunk is used to pass calls between Mindful Callback and Genesys Cloud.

  • For further validation of additional integration options, please contact a Mindful representative.

  • This article is not intended as a configuration guide for a Genesys Cloud environment. For help with Genesys deployments and configuration, consult the official Genesys documentation.

  • The configuration in this guide is an example and may be used as a template for integrating with Mindful. Any sample code in this guide should not be considered ready for production.

Overview

This guide covers the following steps to set up your Genesys Cloud integration with Mindful:

  • Mindful configuration
    • Call Target

    • Phone number

    • Data Set Template

  • Genesys Cloud configuration
    • BYOC PBX SIP trunk to Mindful

    • Site configuration for outbound calls to Mindful

    • Integrations to hold Data Actions

    • Data Actions

    • Architect Flows

    • Agent screen-pop script

  • Optional enhancements
    • Integrate with Mindful Feedback for post-call surveys

    • Consolidate return-call destinations

    • Offer second chance callbacks

Components and call flows

Definitions and acronyms

TermDefinition
ANI (or CLI)Automatic Number Identification — The number of the caller in a voice call
  • In some markets, this is referred to as CLI (calling line identification).
APIApplication Programming Interface — A set of functions that allow applications to send requests for service to a host application
Architect FlowRouting configuration object within Genesys Cloud
BYOCBring Your Own Carrier
Call TargetMindful Callback endpoint which should correspond to a skill or queue
DIDDirect Inward Dialing phone number
DNISDialed Number Identification Service — The number of the recipient (typically the number that is being dialed) in a voice call
EWTEstimated Wait Time, as calculated by Genesys Cloud for a queue
PSTNThe traditional circuit-switched telephone network that comprises all the world's telephone networks operated by local carriers
SIP TrunkVirtual phone line that enables users and applications to dial and receive calls via SIP
SIP URISIP addressing scheme that communicates who to call via SIP

Example call flows for inbound and callback interactions are included below.

Inbound call flow

inbound call flow diagram
  • A customer calls into a Genesys Cloud contact center

  • The DID is matched to an Inbound Architect Flow (Call Route configuration)

  • After checking the Mindful status via the GetOffer API, the inbound Architect Flow may optionally post data to Mindful Datastore using a Data Action.

  • The call is transferred to the SIP phone number provisioned for the relevant Mindful Call Target.
    • Note that if one of the below conditions occur, the call will be sent to the agent queue at normal priority, instead of being transferred to Mindful Callback:
      • the Mindful GetOffer API returns shouldOffer = false

      • the Genesys EWT is below the configured threshold

      • there is another error in the flow, such as a Call Data Action failure

  • The Genesys Cloud Edge sends a SIP Invite to Mindful and the caller is offered a callback.

The preceding diagram shows the callback requested via an inbound call into Mindful Callback. However, callbacks may also be requested using Mindful Digital APIs, with associated user data sent to Mindful Datastore via the Datastore API. Regardless of which method is used, the callback Flow will be the same.

Choose-hold call flow

choose hold call flow
  • After being offered a callback, the caller declines and Mindful Callback issues a SIP Refer to transfer the call back into Genesys Cloud.

  • The SIP number in the refer-to header is matched with a virtual number in the Genesys Cloud DID table. A Call Route is matched with the Choose Hold Architect Flow.

  • The callback Flow may optionally retrieve user data from Mindful Datastore using a Data Action, with the caller's ANI passed in as the search key.

  • The call is sent to an agent queue at normal inbound-call priority.

Callback call flow (customer first)

callback call flow
  • Mindful calls a customer on the callback number. The customer answers and presses DTMF digit 1 to confirm they wish to speak to an agent.

  • Mindful calls the contact center number for callbacks.

  • The DID is matched to the callback Architect Flow via Call Route entry.

  • The callback Architect Flow may optionally retrieve the user data from Mindful Datastore using a Data Action, with the caller's ANI passed in as the search key.

  • The call is sent to an agent queue at a higher priority than inbound calls.

  • The Mindful Agent Answer API informs Mindful when the agent is on the line.

Note that this shows a typical customer-first call flow. Mindful Callback also supports an agent-first call flow in which the agent leg is initiated first. The configuration and Architect Flows are the same regardless of which method is used.

Configure the Mindful platform

Before your ACD can send inbound calls to Mindful, there are a few items that must be configured on the Mindful side:

  • At least one Call Target to register and dial callbacks

  • A Data Set Template in Mindful Datastore (if you intend to use Datastore to store custom user data and context)

There are a few settings in Callback that must be adjusted to integrate with your ACD:

Registration

Callback > Call Targets > Your Call Target > General tab > Registration

  • Offer ASAP Callback — Select this checkbox to offer callbacks to be returned as soon as possible.
  • Offer Scheduled Callback — Select one or both of these checkboxes (Voice and/or Widget/API) if you wish to offer callback scheduling for specific dates and times.

Contact Center

Voice > Call Targets > Your Call Target > General tab > Contact Center

  • Callback Telephony Type — Select "SIP".
  • Callback Number — This will be configured in a later step.

Callback Strategy

Voice > Call Targets > Your Call Target > General tab > Callback Strategy

Most of the Callback Strategy settings are not relevant to the integration, and they can be set however you would like. However, there is one notable exception when using the Customer First Callback Strategy.

When using Customer First, enable Wait for live Agent. This will prompt agents to press a digit to accept a callback, which provides an Agent Answer event to Mindful. The Agent Answer events assist in calculating an accurate Estimated Callback Time (ECBT).

screenshot of the wait for live agent setting

Phone Numbers

Configuration > Phone Numbers

On the Phone Numbers page, provision as many SIP numbers as needed and assign a number to each Call Target in your Organization. This is the number to use when configuring the SIP endpoint to which to send inbound calls for callback treatment.

Datastore configuration

Mindful Datastore allows you to store user data to maintain call context at critical points in an interaction. If you intend to use Datastore, you will need to perform the next few steps within the Datastore user interface.

A Data Set Template contains a collection of Data Keys that allows the Mindful Datastore to store customer data during the callback request process. This collection includes:

  • The set's name and description

  • How long you want to retain collected data submitted with this Data Set

  • What information you want the set to collect (through configuration of Data Keys)

  • The API token that is used to associate data submitted via POST requests and return information via GET requests

The Mindful Solution Delivery team can assist with setting up a Data Set Template, as well as a unique authentication token. To create one on your own, use the steps below.

  1. On the Data Set Templates page (Datastore > Data Set Templates), click Add Data Set Template. This takes you to the New Data Set Template page.

    screenshot of the data set templates pagescreenshot of the new data set template page
    • Name — Enter a name that will be recognizable to others in your organization.

    • Description — Enter a description for the benefit of other Administrators.

    • Data Retention Period (Hours) — Manually enter or use the +/- buttons to customize your Data Retention Period. You can retain data for 1 hour, or for up to 48 hours.

    • API Token — The system automatically generates your API Token.

      Important: If your API Token is already plugged into your routing logic, regenerating the token here will break that link. To re-establish the link, update your host with the new API Token. Contact Mindful Support for assistance.
    • Template Data Keys — You can select from existing Data Keys in your system or add new keys. The selected keys will filter out any submitted data that does not correspond to one of the configured keys, and will only retain submitted data that matches the configured keys.

  2. Click Add Template Data Key. This opens the New Template Data Key modal window.

    • Click in the Manually Enter Data Keys field.
      • If your Mindful Datastore instance contains existing Data Keys, select one from the dropdown list that appears.

      • If not, type the name of a new Data Key here.

    • When finished, click Add.

    Your key will now appear in the Template Data Keys list.

Example

In our example integration, we set up the following Data Keys for callbacks:


example data keys
  • FirstName
  • LastName
  • AccNum
  • CallId

You can configure Data Keys in the same way for any user data that you need to maintain in your environment.

With the Mindful Datastore integration already enabled for your Organization, you can now enable it for individual Call Targets. Complete the following steps for all Call Targets within your Organization:

  1. Open Call Targets > Your Call Target > General tab > Mindful Datastore Integration.

  2. Select the Mindful Datastore Integration checkbox to reveal additional settings below.

  3. In the Data Set Template field, select the Template that you created in a previous step.

datastore settings

SIP trunk and site configuration

A typical Genesys Cloud organization may contain configuration of one or more carrier trunks, but to send calls to Mindful Callback, and to route both customer and agent legs of a callback, you will need a new External SIP Trunk.

You will need a Number Plan and Outbound Route to utilize the SIP trunk created earlier. Together, the Number Plan and Outbound Route will ensure that calls exit through the trunk created earlier on their way out to Mindful.

For complete instructions, see SIP trunk and site configuration, then return to this guide when finished.

Integrations and Actions

In Genesys Cloud, you will need two Integrations, which you can think of as containers to hold Actions. The Actions within the Integrations will allow you to interact with data from the Mindful and Genesys environments in several ways.

For complete instructions, see Integrations and Actions, then return to this guide when finished.

Architect Flows

At minimum, you will need an inbound Flow, a choose-hold Flow, and a callback-return Flow in Genesys for the integration (additional Flows may be needed for optional enhancements).

For complete instructions on configuring the required Flows, see Architect Flows, then return to this guide when finished.

Agent screen-pop script

Minor configuration changes are needed in your agent screen-pop script to accommodate the Agent Answer API. See below for configuration updates:

Try/Error section

On the Start Page tab, add a Try/Error section to invoke the Agent Answer API as soon as an agent is connected to a callback. Configure the section as shown below:

image of the try error section
  • Try — Configure an If, Then, and Else statement:

    • If — Enter {{Scripter.Interaction State}} Equals "Connected"

      The "Connected" status ensures the API is only invoked when an agent answers a call.

      example if section
    • Then — Select "Data Actions.Execute Data Action", specifying the Agent Answer API Action created earlier.

      Configure the required and optional variables specified in the Action (ani, Authentication, agentId, queueId).

      example variable configuration
    • Else:

      • Delay — Select a 1000 millisecond delay

      • Scripter.Change Page — Change to the Start Page in case the API could not be invoked.

  • On Error — Leave this empty since there is already an exit path in the Else statement.

Save and publish the script when finished.

Optional enhancements

Several optional enhancements are available for the integration:

  • Integrate with Mindful Feedback for surveys — Send post-interaction surveys via voice, SMS, email, or web.

  • Consolidate return-call destinations — Enhanced return-call routing when the same group of agents are spread out among multiple queuing destinations

  • Offer second chance callbacks — Make additional callback offers in your holding queue after a customer has declined the initial offer.

For complete instructions on configuring these enhancements, see Optional enhancements.