Configure your IVR

You will need to setup and configure your IVR to meet the requirements for InGenius. Follow your telephony's configuration section below.

Note: This section is not currently applicable for your CRM/Telephony configuration. Please proceed to the next topic.

Genesys Engage IVR Configuration

This section provides you with a basic sample of an IVR flow developed with Genesys Composer, an IDE that allows you to create routing applications for its orchestration platform.

Basic Genesys IVR Flow

The following example is only meant to offer a demonstration of an IVR flow and its configuration, though your implementation may differ:

Note: Ensure you have already set up a routing and voice application and created a web services request in Genesys.

1. Entry Block

The entry block in this example is used for storing variables for use later in the flow for the web services data action.

The user variables set are as follows:

Variable Value
assignresult blank
webresult blank
weburl

AWS API url that handles call creation for SCV. Set to the web request URI obtained earlier from the Admin App.

authorization Your authorization header as obtained earlier from the Admin App.

2. Assign Block

This is used to assign a variable to the block. In this example, it is given a JSON expression used to send a request to Salesforce:

Copy
{"vendorCallKey":system.CallID,"from": "5551234","to":"7001","ingeniusIVR":"12345"}

3. Web Request Block

This block is used to invoke an HTTP request. The block in this example is configured as follows:

  1. Name: Set to an appropriate name.

  2. Location:

    • Request Method: Set to 'post'

    • Uri: Set to the variable created in the entry block, 'weburl'.

  3. Encoding Type: Set to 'application/JSON'

  4. Json Content: Set to the variable created in the entry block, 'assignresult'.

  5. Custom HTTP Header: Set to the variable created in the entry block, 'authorization'.

  6. Web Request Output: Set to the variable created in the entry block, 'webresult'.

4. User Data Block

Used in the routing application to update user data, used in this example to take the web result variable and set an InGenius id for the user. The Assign Data field has a key called 'InGenius_InitialCallRecordId' set to the 'webresult' variable.

 

 

5. Target Block

Used to route a voice interaction to a target. In the example here, the Targets field is configured to assign an SIP group as the target.

Note: Make sure your agent is part of the SIP group that you will be using, and be sure to select the Stat_Server.

Genesys Cloud IVR Configuration

This section provides you with a sample of an IVR configured for the InGenius flow, as well as information on needed actions and instructions on configuring your own IVR.

Example SCV/Genesys IVR Flow

To help with the implementation of your IVR, an example Genesys IVR flow with the required configuration is described below:

1. Main Menu

The entry point and greeting when beginning the call.

  • Initial Greeting - The IVR's greeting upon initiation

  • Menu Prompt - In this example, pressing 1 initiates the call flow (SCV Demo Menu 1), pressing 9 disconnects the call

  • Default Menu Choice - If no caller input, defaults to 'SCV Demo Menu 1'

2. Collect Input Action

Collects input from the caller, passed into UUI data and the Voice Call Record in Salesforce.

  • Name - Name of the flow action

    • "Collect Input"

  • Input Audio - Audio to be heard by the caller

    • "Enter your four digit account number followed by pound"

  • Input Data Name - Variable name for the account number input

    • "Task.accountNumber" (String type variable)

  • No Entry Timeout - Time to wait for caller input

    • Set to 5 seconds by default

  • Numeric Input

    • Set the range of digits allowed for this input, from 1-5

  • Terminating DTMF

    • Set the terminator for the input, in this example it is set to the hash (#) key

3. Set UUI Data

  • Name - Name of the flow action

    • 'Set UUI Data'

  • Outgoing UUI Data

    • Set to 'For Transfers', and configure with the string variable ('Task.accountNumber')

Outgoing UUI Data:

4. Call Data Action (Web Services Data Action)

  • Name

    • 'Call Data Action'

  • Processing Prompt

    • No value is set in this example.

  • Category - The type of the call data action

    • Set to 'Web Services Data Actions'

  • Data Action

    • Set to the 'SCV Inbound' action - this was created with the .JSON snippet imported from the InGenius admin as a Web Services Data action.

  • Inputs - Information passed through the call data action.

    • conversationid

      • Set to 'Call.ConversationId' (Expression type variable)

    • to

      • Set to 'Call.CalledaddressOriginal' (Expression type variable)

    • from

      • Set to 'Call.ani' (Expression type variable)

    • ingeniusIVR

      • String expression, built with an expression and text variable:

        • 'Task.accountNumber' (Expression type variable)

        • 'Queue1 Data1 Data2' (Text type variable)

  • Success Outputs -

    • voiceCallId

      • Set to 'Task.voiceCallId' (String type variable)

IngeniusIVR:

voiceCallId:

 

5. Set UUI Data

  • Name

    • 'Set UUI Data'

  • Outgoing UUI Data

    • Set to 'For Transfers', and configure with the string variable ('Task.accountNumber') and ('Task.voiceCallId')

Outgoing UUI Data:

6. Set Participant Data
  • Name

    • 'Set Participant Data'

  • Attribute

    • Set to 'InGenius_InitialCallRecordId' (Literal string type)

  • Value to Assign 1

    • Set to 'Task.voiceCallId' (Expression type)

7. Enable Participant Recording

This is required by Genesys for call recording, and will enable it in the flow.

  • Name

    • 'Enable Participant Recording'

8. Transcription

This is required for the voice transcription feature and will enable it in the flow.

  • Name

    • 'Transcription'

  • Flow Transcription

    • Toggle control, set to 'Enabled'.

9. Transfer to User

This final flow action transfers and initiates the call.

  • Name

    • 'Transfer to User'

  • User

    • Set to 'Upland1 Test User' in this example flow.

  • Pre-Transfer Audio

    • Set to 'Transfer'

  • Failed Transfer Audio

    • Set to 'Failed to Transfer'

Genesys IVR Configuration

To configure your IVR for Genesys, follow the steps below:

  1. Sign into Genesys Cloud and select Architect.

  2. Navigate to your IVR Menu.

  3. If you have not already, create your IVR flow following the example shown in the above section. Ensure your IVR flow is configured with the following components:

    1. Collect Input action - record the user input to variable (Expression type variable) "Task.accountnumber"

    2. Set UUI data action- push the (Expression type) "Task.accountnumber" variable as outgoing UUI data.

    3. Call Data action (Web Services Data action) -

      • Configured with the inbound data action

      • Configured with the input variables: (Expression type) "Call.ConversationId", (Expression type) "Call.CalledaddressOriginal", (Expression type) "Call.ani"

      • Configured with the UUI variables: (Expression type) "Task.accountnumber", (Text type) "Queue1 Data1 Data2"

    4. Set UUI participant data action - configured with the UUI variables:(Expression type)"Task.accountnumber", (Expression type) "Task.voiceCallId"

    5. Setup participant data action - attribute (Literal string type) "InGenius_InternalCallRedoid", set with value (Expression type) "Task.voiceCallId"

    6. Enable participant recording action - required by Genesys for call recording

    7. Transcription action - toggle Flow Transcription to 'enabled', required for voice transcription

    8. Transfer to user/queue action - completes the flow and connects the call to user or queue