Table of Contents

Introduction

Recap

In the first 2 Lab, we Learned

  1. Bring the contact into Webex Contact Center and hear welcome message
  2. Queue the contact to Live Agent after hearing welcome prompt
  3. provide Menu option and an Opt-Out options to customer and validate CallBack Functionality

Lab Objective

In this section, we will go over the steps that are required to do External Data DIP. In this Lab you will learn the following

  1. External Data Dip to 3rd party Web Services
  2. Parsing the JSON
  3. Collect variable dynamically from WebServices and Display it on Agent Desktop

Pre-requisites

  • All previous labs are completed successfully

Control Hub: https://admin.webex.com
Portal: https://portal.wxcc-us1.cisco.com/portal
Agent Desktop: https://desktop.wxcc-us1.cisco.com\

Lab Section

HTTP Node

The HTTP Request activity fetches information from an external data source such as a CRM using standard HTTP protocols. Basic Auth and OAuth 2.0 attributes are supported for authenticated endpoints

The request we will construct is :

HTTPS GET -> https://5fd3e1aee9cda40016f5bb94.mockapi.io/Lookup?pin=70747

Use the variable from the CollectDigits1.EnteredPIN variable to inject it in the pin lookup. We will construct it as follows HTTP Request GET https://5fd3e1aee9cda40016f5bb94.mockapi.io/Lookup

The Parse settings would be :

customerName = $.[0].name

customerPhone = $.[0].phone

Tech-Tip: Here are some practice exercises you can try by going to jsonpath.com

Go to https://5fd3e1aee9cda40016f5bb94.mockapi.io/Lookup Copy out the JSON into https://jsonpath.com on the left pane.

Try out all of these to learn how JSON path works!

Query For Parse statement
All Customers $.*
First Customer $.[0]
Last Customer $.[-1:]
First two customers $.[0:2]
Last two customers $.[-2:]
Second from last $.[-2:-1]
All the names $..name
All the pins $..pin
All the customers who’s pin value is more than 70000 or 80000 $..[?(@.pin > 70000)]
All details of customer with account number $..[?(@.account == “87305901”)].*
Name of customer with account number $.[?(@.account == “70579265”)].name

Flow configuration

  1. Copy the Lab2 flow by clicking on 3 dot and open the copied the flow

  2. Add Play message node and select 0_welcome_CL.wav file

  3. Drag and drop CollectDigits1 node and select 5_enter_pin.wav file, under Advanced setting change min and max Digits to 5

as a best practice always enable Make prompt interruptible

Connect No-input timeout as well as unmatched Entry to itself

Create 3 string Variable and mark all 3 are Agent Viewable

Customer_Name

Customer_Email

Customer_Account

  1. Drag and drop HTTP Request Rename it to DataDip

i) Disable, Use authenticated endpoints

ii) In the Request URL enter https://5fd3e1aee9cda40016f5bb94.mockapi.io/Lookup

iii) Method select GET

iv) Under Query Parameters

Key==pin

value ==

v) Content Type == application/json

  1. Parse the Json for Name Email and Account

i) under Parse Settings select the Content Type as JSON

Use https://jsonpath.com/ website to parse the value, take the json by entering the webservices in Firefox browser

  1. Drag and drop condition Node and set the condition to

Note: Surround the expression below with

DataDip.httpStatusCode == 200

  1. if the condition is true to connect to play message

  1. Validate and Publish the Flow

  2. Edit Current Routing Strategy and change the flow to Lab3

Lab Validation

Login to Agent Desktop and Keep the Agent in Not Ready State

i) To test the flow call the Dial Main Number and enter 5 Digit Pin number

ii) On the Main Menu Node press 1

  • Expected results

i) System should validates the PIN and fetch Email, Name, Account details

ii) System should fetch data and Pop all those information on Agent_Desktop

Lab Support

Proctors is your number 1 contact. If you need assistance just raise your hand.

All registered participants are also added to the support room where the engineering and Product Management team is added. As an alternative way, you can use that space for any questions related to the Flow Control.

Congratulations, you have completed Lab3 tasks!