Вы находитесь на странице: 1из 69

Lab Objective

In this lab session, we want to showcase the capabilities of Context Service using the example
of an Omnichannel Customer Journey.

We will initially prepare the ground by configuring a Multichannel Contact Center with email
and chat. While doing that, we will explore the new capabilities introduced to chat and email
in version 11.6, such as group chat, reason codes, reply templates, etc.

Once our Contact Center is able to handle voice, email and chat contacts, we will proceed to
enable context service on UCCX, Finesse and SocialMiner.

The customer journey is ready to start.

Firstly, we will explore the repeat voice call handling use case. An agent is easily enabled to
handle repeat contacts via voice channel. We will explore how to modify a UCCX script to
update or create new Context Service pods.

Secondly, the same customer will reach out for help via email and chat. SocialMiner enables
seamless integration with Context Services.

Finally, we will see how we can modify a customer website to integrate it with Context Service
and then populate information on the customer pod for the agent to better understand the
reason of the call.
Exercise 1: Configure UCCX Finesse Email
Objective
This exercise is intended to show the configuration necessary for UCCX Finesse Email. With
the UCCX Premium license installed, a new submenu appears under the Subsystems menu,
called Chat and Email. These sub menu items are intended to allow a user to easily configure
the UCCX Multichannel features without having to navigate to SocialMiner. Once that
configuration is complete, simple steps are needed in the Cisco Finesse XML layout to display
the Non-Voice Control gadget and the Multisession Reply gadget.

We will also explore 11.6 new features like cc/bcc support, wrap-up reason codes for email
and other new features.

Pre-work
The following configurations have been completed for you:

• Exchange 2013 SP1 installed and configured with SMTP and IMAP
• Email aliases created:
o Customer: customer@cc.lab
o SupportQ: supportq@cc.lab
o SalesQ: salesq@cc.lab
• The SocialMiner tomcat.pem certificate has been installed in the UCCX tomcat-
trust store.

Login details needed:


1. Agent1: 10.10.10.211 (CC\JDoe, Train1ng!)
2. Agent John Doe credentials: jdoe, Train1ng!, 2001
3. UCCX: SSO: expressadmin@cc.lab/Train1ng!, Non-SSO: ccxadmin/Train1ng!
4. Use Firefox as browser, unless specified otherwise

Steps:

>> Remote Desktop into Agent1 - 10.10.10.211 (cc\JDoe, Train1ng!).


Close all browser sessions.

1. Open the UCCX Node1 Administration webpage using the bookmarks menu and
login [expressadmin@cc.lab, Train1ng!]

2. Navigate to Subsystems  RmCm  Assign Skills. Check all the Agents and click on
Add Skill
3. Add the Resource Group  Internal Support and Skill  Support

4. Navigate to Subsystems  Chat and Email  SocialMiner Configuration. This page


represents the health of the Chat and Email objects required in SocialMiner for UCCX
Multimedia. With the proper credentials, UCCX will use the SocialMiner APIs to
create these objects, without having the user to manually create the configuration in
SocialMiner.

The SocialMiner Status will appear as follows since it is not yet integrated:
5. Enter the credentials [socialminer.cc.lab, administrator, Train1ng!] and click on
Save. Note that every time the Save button is clicked, UCCX uses the SocialMiner
APIs to update the configuration to create new, healthy UCCX Multichannel objects

(Feeds, Campaigns, and Notifications). After clicking Save , SocialMiner


status should appear as follows:

Feeds and Campaigns objects have been successfully updated. The Notifications
have been successfully recreated, but if you hover over its icon, you can see

. This is expected because the configuration is not yet complete.

6. Navigate to Subsystems  Chat and Email  Mail Server Configuration. On this


page, the Exchange server settings are configured for UCCX Multichannel.
Enter the Exchange server FQDN exchange.cc.lab for the Incoming (Secure IMAP)
and Outgoing (Secure SMTP) Host Names field and click Update.
Upon reload, message will appear. Unlike with the SocialMiner
Configuration page, the update on this page does not check the Exchange server
connectivity in real time. Instead, it only configures the Exchange details and syncs
them to SocialMiner to be used later in the Email Feeds. So be extra careful to enter
the right details.

Do not change the SOCKS configuration. Leave it as DISABLED. SOCKS proxy is


needed for integration to a cloud email provider like GMAIL or Office365.

7. In UCCX Administration, navigate to Subsystems  Chat and Email  Contact


Service Queues. Create two Email CSQs as follows. The Poll Interval (10 seconds) is
the interval in which SocialMiner will query the Exchange server for new emails for
the alias. The Snapshot Age is how far back SocialMiner will query emails for, in this
case, for the last two hours.
a. Email Support CSQ [supportq@cc.lab, Train1ng!]
Note: You can also click on Test Configuration to Test connectivity to the mailbox
after entering the details.

Click Next. Highlight the Support Skill and then click Add to add it to the CSQ.

Click Save when done.


b. Email Sales CSQ [salesq@cc.lab, Train1ng!]

Click Next. Highlight the Sales Skill and then click Add to add it to the CSQ.
Click Save when done

8. Review the Predefined Responses for Chat and Email under Subsystems  Chat and
Email  Predefined Responses. Click on Add New and create a new response:

These pre-defined responses can be made global or assigned to each CSQ. Select
each of the options and see how the UI changes. Select Global for all CSQs and click
Save. You will see the response created:

Let us now explore a 11.6 feature: wrap-up codes.

9. Add Wrap-Up Reasons


Go to Subsystems  Chat and Email  Wrap-up reasons
10. In the UCCX Administration page, review the Channel Parameters for Chat and Email
under Subsystems  Chat and Email  Channel Parameters. For the purposes of
this lab these settings will not need to be altered. If you have any questions about
these, please ask the instructor.

11. Open a new tab and navigate to the UCCX Node1 Finesse Administration using
bookmark [ccxadmin, Train1ng!], navigate to the tab. In order to
activate the “Manage Chat & Email” Finesse gadget, we must enable it by editing
the Finesse Layout XML.
a. Note that the chat and email gadgets are not deployed by default, but their
configuration is just commented out. Find this bold line in the Finesse Layout

RESTRICTIONS:
- The NonVoiceControl gadget must be configured as a page level gadget
- The NonVoiceControl gadget must not be configured in a column

<gadget>https://localhost/agentdesktop/gadgets/NonVoiceControl.xml</gadget>
-->
</page>

XML:
b. Now move the tag “-->” before the “<gadget>” definition line. It should look
like this (you just uncommented the NonVoiceControl gadget definition):

RESTRICTIONS:
- The NonVoiceControl gadget must be configured as a page level gadget
- The NonVoiceControl gadget must not be configured in a column
-->
<gadget>https://localhost/agentdesktop/gadgets/NonVoiceControl.xml</gadget>
</page>

c. Scroll down the XML to find the definition of the Multisession Reply gadget.
This is the gadget used to handle both Chat and Email channels, this again is
commented out.
Move the comment before the <tab> so that the tab definition is uncommented.
d. Finally Replace “my-socialminer-server” with the actual Social Miner server
FQDN: “socialminer.cc.lab”. It should look like this:

RESTRICTIONS:
- The multisession-reply-gadget must not be configured as a page level gadget
- The multisession-reply-gadget must not be configured in a column

<tab>
<id>manageNonVoiceMedia</id>
<label>finesse.container.tabs.agent.manageNonVoiceMediaLabel</label>
<columns>
<column>
<gadgets>
<gadget>https://my-socialminer-
server/multisession/ui/gadgets/multisession-reply-gadget.jsp?gadgetHeight=430</gadget>
</gadgets>
RESTRICTIONS:
</column>
- The multisession-reply-gadget must not be configured as a page level gadget
</columns>
- The multisession-reply-gadget must not be configured in a column
</tab>
-->
-->
<tab>
</tabs>
<id>manageNonVoiceMedia</id>
<label>finesse.container.tabs.agent.manageNonVoiceMediaLabel</label>
<columns>
<column>
<gadgets>
<gadget>https://socialminer.cc.lab/multisession/ui/gadgets/multisession-
reply-gadget.jsp?gadgetHeight=430</gadget>
</gadgets>
</column>
</columns>
</tab>
</tabs>
e. Scroll down a bit further to the Supervisor section of the XML. Perform
similar conversions for the Supervisor Desktop interface.

<layout>
<role>Supervisor</role>
<page>

f. Click . The message will appear if


the XML is proper. This message does not indicate whether the XML will work
during run time, only if the syntax is correct.

g. Under the editable XML, click on . This will display the


default XML layout, including different definitions and comments for Chat
and Email gadgets. It is always handy to know this so that you can revert back
to the default if you have any issues.

12. Close the browser (to clear the SSO tokens) and open the Finesse Agent Desktop
login page. Log in with the credentials for agent John Doe [jdoe@cc.lab, Train1ng!,
2001], who is part of both the Voice and Email Support CSQ’s in UCCX.

13. As we saw in the Finesse lab, UCCX 11.6 new features also include browser HTML5
toaster notifications for voice, chat and email. You must accept Notifications the first
time you login as an agent. Go ahead and do it now by clicking “Always Receive
Notifications”

If you forget to, you can always change the preferences in browser settings.

14. The Finesse agent desktop should look like this


a. Click on the tab

b. Click on to make the agent

c. Remote Desktop to Agent2, open the Firefox browser, navigate to Finesse


Desktop using the available bookmark and perform steps a,b to login agent
Dan Marino [dmarino@cc.lab, Train1ng!, 2002] into the Finesse Agent
Desktop. Make him READY for emails too. Notice how you can be in different
states for Voice and non-Voice.

d. Back to Agent1 remote desktop session, in a separate browser tab, open


Exchange OWA webpage from the bookmarks. Log in with the credentials for
the Customer email account [CC\customer , Train1ng!]

e. Click on to compose a new email to the supportq@cc.lab email


alias. Use a random subject line and body text. Click when done.
f. Navigate back to the Finesse agent desktop tab of John Doe on the browser
to view the email. Give it approximately 30seconds to 1 minute and notice

the notification icon for email on the NonVoiceControl gadget.


If you don’t have the Finesse Desktop as your focused window, you will
notice the new 11.5 Finesse toaster notifications in action, click on it to
immediately focus on the Finesse Desktop browser window. This even works
while working on a different application

The email will appear in the Manage Chat and Email gadget. Click on it to see
the expanded view:

Did you notice the new cc and bcc field? This was introduced in 11.6.
g. Reply to the email. Confirm it is sent back in the OWA client access page.

Test the functionality further by sending more emails through to the agent.
Try attaching files to the emails. Sample files are located in the
C:\UCCX_Lab\sample_email_files directory

15. Send another email to supportq@cc.lab and assume that this is in the wrong queue.

a. Emails can be requeued to the right Email CSQ using the re-queue button.
Test this feature by requeuing the email to the Email Sales CSQ where Dan
Marino is waiting for Sales related emails.
b. After requeue, you should be able to receive this email on Agent2 remote
desktop session dmarino’s Finesse Desktop

16. In 11.6, the Email Forward, Reply All, CC, BCC features were introduced along with
the existing discard feature where an agent can discard the email. This is useful for
handling junk emails. Try these feature by sending another email, this time to
sales@cc.lab
17. Don’t forget to test the Predefined Email responses and the Wrap up Codes you
configured earlier.

Predefined response and Wrap up reasons selected


Bonus: Reporting on the wrap up reasons selected

1. You can additionally open CUIC and search for the Wrap-up Reasons
Report for Chat and Email. Go to CUIC Administration and Login
(expressadmin@cc.lab/Train1ng!)

2. Go to the Wrap-up Reason report for chat and email. Select the two
agents and Click Run.
3. You will see the reports showing the reasons and the Agents who
selected these.

Congratulations! You have now implemented email in UCCX and explored the
new 11.6 features too.
Exercise 2: Configure UCCX Finesse Chat
Objective
During this exercise, the participants will learn to configure and access UCCX Web Chat. Web
chat is a functionality offered by SocialMiner where agents can service chats, emails and calls
in the same browser window using the Finesse Agent Desktop

In this lab, we will implement and test UCCX Web Chat.

Login details needed:


1. Agent1: 10.10.10.211 (CC\JDoe, Train1ng!)
2. Agent John Doe credentials: jdoe, Train1ng!, 2001
3. UCCX: expressadmin@cc.lab/Train1ng!
4. Use Firefox as browser, unless specified otherwise

Steps to complete the lab

Remote Desktop into Agent2 - 10.10.10.212 (cc\DMarino, Train1ng!). Logout agents and
Close all browser sessions.

1. Open Firefox and using the browser shortcuts, login to UCCX Administration page
[expressadmin@cc.lab/Train1ng!]. Navigate to Subsystems  Chat and Email 
Contact Service Queues

2. Click on Add New and create a Chat CSQ with the following details:

3. Highlight the Support skill and click on Add:


Click on Save

Next step is to create a test web page where the customer can click on the chat
button also called Chat entry point. Don’t worry, there’s no need for coding at this
time.

4. On the UCCX Administration page, navigate to Subsystems  Chat and Email 


Chat Widget List. Click on New and create a chat widget with the following details:

Click Next when done

5. Enter the problem statement. This is what the customer selects in the web site and
it can be used to select an agent from a particular CSQ. Each Problem Statement is
mapped to a CSQ (multiple problem statements can map to the same CSQ). Enter
the Problem Statement as “Credit Card query” and select the CSQ as “Chat Support
CSQ” from the CSQ List dropdown.

This is where the CSQ association is done for every incoming chat query.

6. Click Next. You will be given the Business Days page to Schedule Business Hours.
Here is where you can decide the business hours for Chat service.

Leave this as 24x7.

When you scroll down, you will see that you can also Schedule Holidays where chat
agents are unavailable, or Custom Business days where agents are available at a
specific time only.

7. preview of how the form will look to the customer. Click Finish.
HTML code will be automatically generated that you can embed into your
customer’s website. Browse through the code and you will find the SocialMiner’s
details. This shows that the chat request the customer sends is actually sent to Social
Miner and it is the Social Miner that sets up the chat room.

8. Copy this HTML code to the clipboard and click on Done. Paste it into a Notepad file
on the Desktop. Name the notepad file web_form.html. You can always copy the
HTML code for any widget after it is created too.

Create Chat Wrap up reason codes

9. Go to Appadmin > Subsystems > Chat and Email > Wrap-Up Reasons
Click on Add New
Time to test

10. Remote desktop in Agent1. Finesse Agent Desktop should still be logged in using
Chrome. If not login agent John Doe into Finesse Agent Desktop [jdoe@cc.lab,
Train1ng!, 2001]. Make John Doe READY for Chat and Email.
11. Go back to Agent2 remote desktop session and double click on the web_form.html
you just saved in the desktop. Enter your details in the web form that has open and
click on Submit.

You will be presented with this screen:

At the same time, agent jdoe will be offered this chat where he can accept. So once
you see this chat request, click on Accept. Also, notice the timer shown, this is the
‘No Answer Timeout’, the time the agent has to accept the chat. If the chat is not
accepted within this time, the agent is put to Not Ready for Chat and Email and the
chat is put back in the queue. (This configuration can be found at Subsystems 
Chat and Email  Channel Parameters)
12. The customer and agent will now be in a chat room and they can chat with each
other.
Agent -

Customer -

13. You can try the following steps:


a. Check the typing indicators on either end.
b. Observe the behaviour if the agent does not accept the chat before the timer
expires
c. In an active chat, stay idle for more than 5min and observe the behaviour
d. Download the transcript after the chat is completed
Exercise 3: Add another agent to the Chat (Group Chat with customer)

1. Time to test. Remote desktop in Agent1. Finesse Agent Desktop should still be
logged in using Chrome. If not login agent John Doe into Finesse Agent Desktop
[jdoe@cc.lab, Train1ng!, 2001]. Make John Doe READY for Chat and Email.

2. Remote desktop in Agent2. Finesse Agent Desktop should still be logged in using
Chrome. If not login agent DMarino into Finesse Agent Desktop [dmarino@cc.lab,
Train1ng!, 2002]. Make Dan Marino READY for Chat and Email.

Repeat the steps above to get jdoe connected with the customer
3. i.e, Go back to Agent2 (dmarino) remote desktop session and double click on the
web_form.html you just saved in the desktop. Enter your details in the web form
that has open and click on Submit.
You will be presented with this screen:

4. Accept the chat to get jdoe connected with the customer. Initiate the
group chat with second agent in the queue to help the customer with
the complex query.
5. Do this my clicking the group chat icon. . Select the CSQ you
would want to route the group chat request to. In our case, it would be
“Chat Support CSQ”. Ensure an agent is Chat ready in that CSQ. Click

6. Notice the group chat request hitting Agent2 (dmarino). Click on


“Accept” to join the group chat. Notice that you have a Decline option
as well, this time.

7. Once you are connected, notice that you can Leave or End the chat.
Note:

a. Leaving a chat would make you leave the chat. However you will have to
be reinvited manually.
b. Ending a chat would end the chat for all the participants. This would also
end the chat session for Customer and jdoe.

Select Wrap-up reasons for the chat conversations


1. Like email, you can select the wrap-up reasons for the conversation
clicking on the top right icon.

2.
3. These can be reported on, as shown in the earlier lab exercise.

Congratulations! You have now successfully used the group chat feature for
your Contact Center and thereby completing the multichannel offering of
Finesse in UCCX!
Exercise 4: Register UCCX with Context Service
Objective
During this lab, the participants will learn to register UCCX with the Context Service cloud. We
will also run a Web Service that will allow us to later integrate our website with Context
Service.

We will also flush the existing data in our Context Service account.

Make sure you have your Context Service credential information with you, it should be
alongside the POD information.

Login details needed:

1. Agent1: 10.10.10.211 (CC\JDoe, Train1ng!)


2. Agent John Doe credentials: jdoe, Train1ng!, 2001
3. UCCX: SSO: expressadmin@cc.lab/Training, Non-SSO: ccxadmin/Train1ng!
4. Use Firefox as browser, unless specified otherwise

Steps to complete the lab


To complete this lab exercise you need a Context Service account. If you do not have
one, contact a lab proctor to get an account for Context Service.

Remote Desktop into Agent1 - 10.10.10.211 (cc\JDoe, Train1ng!). Close all browser
sessions and logout agents.

1. Open Firefox. Navigate to UCCX Administrator Node 1 using the available bookmark
and login (expressadmin@cc.lab/Train1ng!).

2. Go to System System Parameters, scroll down to Context Service Parameters


section and Enable lab mode.

Click on Update to save the changes. This will ensure that all your data is written into
the lab context and that way, you can test all you want before writing production
data.
3. Open a new tab in Firefox and navigate to Finesse Node 1 Administration using the
available bookmark [ccxadmin/Train1ng!]

4. Context Service Management is at the top of the screen. Click on Register. You will
see a “Registration in progress message. (Disable pop-ups to see the login screen).

5. Login with the Context Service credentials you’ve been given for your POD.

6. Click on Allow Access to Your Hybrid Services Node and then click Continue
7. The registration process begins. A new window with a spinner will open warning you
not to close it.

8. After a few minutes, registration will complete:

9. UCCX automatically pulls context service registration details from Finesse.


As we already did the SocialMiner integration as part of email exercise, we can also
go verify that SocialMiner has automatically picked up the Context Service
configuration. Open a new tab and navigate to SocialMiner using the available
bookmark
10. Sign in [administrator, Train1ng!] and navigate to tab. Verify that
the Context Service filter is showing green.

You are now ready to use Context Service! It is really that easy to setup!

In the next exercises, we will see how Context Service can help stitch the customer’s journey
together and provide a true Omnichannel experience.

Remember Peter’s interaction history as shown below.


Exercise 5: Use Context Service to provide a true Omnichannel experience
Objective
During this lab, we will see how you can use Context Service to transform your customer’s
experience. Notice how simple it is to get started. While there is a lot of room for
customization notice how you can get started with absolutely no pre-work needed

Login details needed:


1. Agent1: 10.10.10.211 (CC\JDoe, Train1ng!)
2. Agent2: 10.10.10.212 (CC\DMarino, Train1ng!)
3. Agent John Doe credentials: jdoe, Train1ng!, 2001
4. UCCX: SSO: expressadmin@cc.lab/Training, Non-SSO: ccxadmin/Train1ng!
5. Use Firefox as browser, unless specified otherwise

Steps to complete the lab

Remote Desktop into Agent1 - 10.10.10.211 (cc\JDoe, Train1ng!). Close all browser
sessions and logout agents.

1. Open Firefox. Login to agent John Doe (jdoe@cc.lab/Train1ng!, 2001).


2. When logged in, click on the Manage Customer tab. Do you see the new gadget
appear here? Remember, we did not have to do any changes on the Finesse Admin.

This is a cloud based gadget that is available for all customers. It is automatically
updated and rendered from the cloud! From this gadget, you can search any
customer profile and also update notes for a given activity. Let us see that now.
3. Remote Desktop to Agent Desktop2 and place a call to 90001 and have John Doe
answer this call.

Open the Manage Customer tab. Since we have not created this customer’s profile
yet, we don’t have any information. You can create the profile (pod) automatically
from the script itself (see bonus exercise). Here, let us have the agent create one
profile.

4. While the customer is on the call, click on the Create button.

5. This will open a new form where the agent can fill these details. Note that this can
be created from the script too and integrated to CRM etc. to pull details and
populate.

Let us add details (exactly as shown):


Click on Create.

6. The customer profile is created!


7. Now, we need to add an activity to this. An activity is any interaction the customer
has with the organization. This can be website activity too and the bonus activity
shows you an example of doing that. For now, click on New and add some notes.
Here the agent is saying that the customer has called in about re-scheduling this
appointment. You can add any notes here.

“Customer called about re-scheduling appointment. Rescheduled for 6:00PM, 30th


June 2017”

Click on Save.

So, this activity is now saved in the CS cloud for this customer. Over a period of time,
the entire journey of every customer is mapped.

8. Now end the call and clock on Close to close this interaction. You can end the call.

Notice how you can search for this customer even when you are not on a call. Add some
more notes to show when the appointment was given etc.. Awesome, isn’t it?
Now, time to see how Context Service really stitches together the
customer’s journey.

9. Login now to Agent Desktop2 and open the OWA using the browser shortcut. Login
using CC\customer, Train1ng!
10. Send an email to supportq@cc.lab as shown below:

11. Make sure JohnDoe is in the READY state for email and chat and the agent will now
receive the email. Now, see the Manage Customer tab. Did you notice how CS was
able to identify that this is Peter Parker (based on the email address) and
automatically opens the customer profile. The agent can now see that Peter had
called in earlier and he was given an appointment. How easy! Add some notes and
click Save. Click Close.
12. Send the email reply now.
13. Now, open Peter’s profile and see the complete activity updated:

Now, Peter is on the road and he realizes that he will be late and wants to let the
company know. He starts a chat session

14. On Agent Desktop2, start a chat session by clicking on web_form.html. Fill out the
details like this:

15. The agent JohnDoe will see an incoming chat request, accept this and have a chat. At
the same time, notice the Manage Customer tab. The system knows that this is
indeed Peter!
Add notes: “Customer mentioned that he is running late. He will be coming by 7PM”

Click on Save, and then Close.


16. Click on the customer to see the updated profile now:

Now assume Peter reaches out again and says “I said I would be in by 8!”. The new
agent handling that interaction has to see what exactly did Peter and John chat
about. How can that be done? Simple, the POD activity link here shows the
transcript link. The agent will copy the link and paste in a browser and will see the
entire transcript!
We know Peter said 7PM!
Next steps: In the script, we can automatically create a pod for the voice call too and
the entire history of Peter is available. This is a bonus exercise at the end of this lab.

This will provide a contextual journey of Peter and this is true Omnichannel
experience. No matter which channel Peter chooses, his interaction history and
context is not lost.
Exercise 6: Voice calls with Context Service
Objective
In this exercise, we will make use of Context Service as a Database in the cloud. We will deploy
a UCCX application that will allow us to create and modify Context Service PODs. This will help
us showcase a typical scenario on any contact center where we have repeat calls from the
same customer and we want our agents to be aware of the context.

There is also a sample script available that will let you choose the same agent for a given
customer every time the customer calls in. This will be shared with you after the lab.

Login details needed:


1. Agent1: 10.10.10.211 (CC\JDoe, Train1ng!)
2. Agent John Doe credentials: jdoe, Train1ng!, 2001
3. UCCX: SSO: expressadmin@cc.lab/Training, Non-SSO: ccxadmin/Train1ng!
4. Use Firefox as browser, unless specified otherwise

Steps to complete the lab

Remote Desktop into Agent1 - 10.10.10.211 (cc\JDoe, Train1ng!). Close all browser
sessions and logout agents.

The first 13 steps are only to review the script that is already provided so
that you can understand the script better before deploying it in your
environment. You can jump to step 14 if you want to test it out and can
always review the script logic later.

1. Run CCX Script Editor from the Start menu

2. Login using CCXAdmin credentials [ccxadmin, Train1ng!, uccxpri.cc.lab]


3. Our script will make use of the new Context Service steps:

4. Click on File  Open . We will use an existing script we have prepared for you.
Go to C:\UCCX_Lab\omnichannel and Open UCCX_ContextServices.aef

5. Let’s analyses in detail what is this script doing. The flow for UCCX starts with a
lookup for the customer in CS, evaluate the return and decide in your script on
where to go.
Overall script

6. We will extract the customer info based on customer ANI. Firstly we put customer
ANI in variable called “telephone”

And after Welcome Prompt is played, we us the Lookup Customers script node to try
and gather an existing CS customer information by using the ANI we just stored as
search criteria
7. We want to determine if there’s already a CS customer for that calling number in the
system. This way we know if this is a repeat caller or a new caller. We do that by
checking if there’s any data in the array used in the customer lookup.

8. If this is a new customer, we exit via the False branch where we create a new POD
using the Create POD node. We set Customer as null and use the provided
cisco.base.pod fieldset to begin populating the customer journey. Assign the
returned POD ID to a variable of type POD. It will be used to populate the ECC
variable POD ID later on. We also add some Context_Notes to the POD indicating
that this is a “First Time Caller”
9. In case this is a repeat caller, we will exit through the True branch. We assign the
array position to a single customer type variable if data is returned.

And then we use the Create POD node to create another breadcrumb in the
customer journey for that existing customer defined by the
singleCustomer=csResult[0] identifier.
We add Context_Notes, indicating that customer wants to “modify cable service”.
Feel free to modify this text now with whatever you prefer (We say ‘would like to
modify credit card package’). In a real scenario, this could be any text defined by
your Menu navigation. This text will be modified by the Agent after the call is
connected but the agent will have a view of what menus were navigated if the text
has the relevant information.

10. In both True and False branches, we end up setting ECC variable to the POD ID

11. At this point, we either have a new customer created or we have added a
breadcrumb to and existing Customer journey. We’ve covered both the new Caller
and the existing Caller scenarios. We finalize the script by routing the call to the
desired CSQ. Before connecting to agent we update the Context Service POD entry
with CSQ information and agent ID so we can eventually route the caller to the same
agent in a future call:
12. Modify the field “CCX_CSQ” with the text “Support” by pressing on “Cables
Services”. This way, that Context Service field will be updated. Click Ok to save and
close the window.

13. We are ready to test the script. Save it and we will now deploy it in place of the
existing 90002 application.

14. Open Firefox and navigate to the UCCX Administration page. You might have it open
in an existing tab.

15. Go to Applications  Script Management. Click on Upload scripts and browse for
the script we just saved
Click on Upload button

and then click “Return to Script Management” button

16. Go to Applications  Application Management. Click on the existing Support


Queue Application

17. Modify the script called for this Application to UCCX_ContextServices.aef by


selecting it in the dropdown menu

18. Make sure you click on CSQ and set that variable back to “Support”
The rest of variables can stay as they are, Click on Update button and then on “Back
to application list”

19. We are ready to place the call to the contact center that will create the initial POD
for this customer. Login agent John Doe [jdoe@cc.lab, Train1ng!, 2001] using. Make
agent READY for calls.

20. Open remote desktop session to AGENT2 if you haven’t already done it and place a
call using the jabber endpoint to number 90002.

21. Switch back to AGENT1 remote desktop session and Answer the call. Click on the
Manage Customer Tab in Finesse.

Notice how the new POD for Peter has been created and the fields we
configured in the script have been populated! The script matched the
calling number to Peter’s profile in the CS cloud and automatically added
this piece-of-data to his profile.

22. the call

Observe how the Manage Customer gadget shows up the existing Customer
information and adds a new breadcrumb to the customer journey. The agent can
easily identify the context to better help the customer. So, any agent will know the
complete journey of Peter through the contact center.
Congratulations! You have now provided a true Omnichannel experience for
your customers where the customer context is preserved no matter which
channel they reach out from.

In the bonus exercise, you will see how you can integrate the customer’s
website activity to this journey too and make it available to the agent!
Bonus CS Exercise1: Integrating your website to Context Service
Objective
The context service is a cloud repository to store details about the customer journey and the
customer website is a very important part of the customer’s journey. So, it will be very
important to have the customer’s journey on the website be part of the context data that is
available for the agent; that will ensure that the agent is able to provide the best possible
experience.

In this exercise, we want to also integrate our website so that we can later follow what the
customer has clicked by checking their Context Service pod. We will now prepare this by
registering a web service with Context Service.

Login details needed:


1. Agent1: 10.10.10.211 (CC\JDoe, Train1ng!)
2. Agent John Doe credentials: jdoe, Train1ng!, 2001
3. UCCX: SSO: expressadmin@cc.lab/Training, Non-SSO: ccxadmin/Train1ng!
4. Use Firefox as browser, unless specified otherwise

Steps to complete the lab

Remote Desktop into Agent1 - 10.10.10.211 (cc\JDoe, Train1ng!). Close all browser
sessions and logout agents.

1. Open the Eclipse development tool. There is an icon on the desktop.

2. You will be asked about the default workspace. Just use the default as displayed.
Once opened, it will look as follows:
3. Expand the project ContextWeb  Java Resources  src  com.ContextWeb:

4. Right-click on Register.java, go to Run As  Java Application


5. Code will begin to run in the lower console screen of the Eclipse tool. The very last
line will print a URL. Copy and paste it into a new tab in Firefox. Just like with
Finesse, it will take you to the registration page. If needed, log on again and allow
access to the hybrid node.
6. After you hit continue, the browser will throw an error telling you that the site
cannot be reached. That is normal.

However, note the connection data string:


7. Double-click the long string. It will highlight on the alpha-numeric string. Paste it into
Notepad++. Make sure that it is only the string and nothing else. The string is about
2300 characters long. No need to count…

8. Go back to Eclipse and double-click CtxSvcConnection.java. It will open in the Eclipse


editor.

9. Locate the public static final String CONNECTIONDATA field towards the top part of
the code. Paste the previously copied connection data string between the quotes.

Save the file.


10. Next, we are going to start the project. Right-click on the ContextWeb project, go to
Run As and this time select Run on Server.

A dialog opens.

Click Next and make sure that the project shows as configured on the right-hand
side. Click Finish.
11. The web service begins to fire up and the SDK begins the registration.

12. After about 60 seconds, the initialization is complete and heartbeats are exchanged.
On top, you will see a 404 error. You can ignore that.

Observe the console widow on the bottom. Stop here if you have errors or do not
see heartbeat exchanges. Notify a proctor and we will assist you.
13. Finally, the Context Service account you’ve been assigned might have been used in
the past so let’s flush its contents so you start in a clean state. We can do that thanks
to the flushData function running on our web service application
Open a new tab on Firefox and navigate to the following URL
http://agent1:8080/ContextWeb/cs/ctxservice/flushData
You can verify that the function run correctly by quickly switching back to Eclips
and checking this lines in the console pane:
CS Bonus Exercise1.1: Web to Call – The Connected Experience
Objective
Using the power of the cloud we can connect seamlessly what would seem like an unrelated
activity to an existing Context Service customer pod. Our agents can be aware of customer
pain points even before the customer explains what happened to them for a truly
connected experience.

We’ve initialized the Context Service SDK in our web service. We will now make use of that
to create additional activities (or breadcrumbs) in the customer journey so that the agent
can see them next time the customer calls.
Login details needed:
1. Agent1: 10.10.10.211 (CC\JDoe, Train1ng!)
2. Agent John Doe credentials: jdoe, Train1ng!, 2001
3. UCCX: SSO: expressadmin@cc.lab/Training, Non-SSO: ccxadmin/Train1ng!
4. Use Firefox as browser, unless specified otherwise

Steps to complete the lab


Remote Desktop into Agent1 - 10.10.10.211 (cc\JDoe, Train1ng!). Close all browser sessions
and logout agents.

1. Open a new tab in Chrome and navigate to our test website for Cumulus
Motorcycles. (http://agent1:81/html/cumulusFinal/). The website we talked about in
the theoretical sessions, is loaded. Make sure you have the eclipse window
maximized in the background.
2. Click on the top right corner, Account login. A credentials page will pop up. Use the
following credentials:

Click Submit

3. You are now redirected to the main page and you see that you are logged on and
have items in your cart.

At this point, wouldn’t it be nice to be able to see the activities from a customer
journey perspective? For instance, what have you searched for, did the purchase
transaction go through, etc. Have all the information at your agent’s fingertips when
the call gets delivered to the agent.

Note that there is activity in the eclipse debug window. You just created a POD with
the customer information in the GET REST call.
4. Click on checkout and let’s imagine that our customer Peter Parker has a problem
with checkout and he calls into the contact center to get it resolved.

5. Remote Desktop to AGENT2 and place a call to 90002 from the jabber endpoint to
simulate the customer call.

6. Switch back to AGENT1 and check the Chrome tab where you had agent John Doe
logged in (log back in if not). Answer the call and then click on Manage Customer
Finesse Desktop tab
7. We can see that the customer journey in the Cumulus website has been recorded,
we can see that the customer logged in and the corresponding icon shown in the list
of activities

RESULT: We’ve completed the Omnichannel customer journey with an


integration of the Context Service SDK with an existing website using web
service application.

Congratulations! You are now able to provide the complete customer context
information to your agents that will enable to provide a truly differentiated
customer service.

Вам также может понравиться