Unified Workspace

Redefining digital interaction by introducing voice capabilities to an established text-based communication platform.

Introduction

Decades of being a leading conversational platform for contact centers had solidified LivePerson’s mastery of the chat domain, but as customer needs change, so must your product offerings. We recognized the burgeoning need to handle voice calls in our hitherto text-based agent workspace without compromising on our already robust customer service and conversational AI tools and features.

Stats

  • Role: Lead Designer

  • Team: 1 D, 1 PM, 3 FEE, 3 BEE

  • Duration: ~7 months

The Problem

How can we add a brand new way of talking to customers (voice) to a platform built around a different means of communication (text/messaging)? Will agents be able to adapt to the urgency of real-time voice calls versus the asynchronous nature of text-based conversations?

The Solution

  • Phase 1 — Proof-of-concept
    An initial proof-of-concept with a very limited feature set to gather stakeholder feedback and introduce the concept of voice calls to chat agents, let alone handling both simultaneously.

  • Phase 2 — The real MVP
    A more robust voice offering with all the minimum out-of-the-box features contact centers require (of which there are a lot…)

  • Phase 3 — AI and automation
    Adapting LivePerson’s existing conversational AI features to voice scenarios, taking into account the time-sensitive nature of voice calls while avoiding overwhelming the agent with real-time AI assistance.

Before we get started…

We aren’t just stapling a phone to a chat platform and calling it a day. There are a few key differences in interactivity, time sensitivity, and cognitive bandwidth between the two channels and their users.

Q: Who will be using this?
A: More than your typical chat agent…

Chat agents:

  • Uses just about any text-based communication channel with their customers, whether it’s web chat, SMS, WhatsApp, or even Apple for Business.

  • One agent could be handling anywhere from a few to a dozen conversations at the same time, on any combination of chat channels.

  • Response times are generally not immediate, giving the agent a moment or two to look for and formulate an answer.

Voice agents:

  • Daily call volume varies greatly on if the agent is in sales (25-70+ calls) or support (up to 20).

  • Although they may have several pending calls, voice agents can only ever handle one live call at a time.

  • As you would expect, responses are instant between both parties.

Blended agents:

  • In addition to chat and voice agents, some contact centers have “blended” agents who handle both channels at the same time.

  • To preserve quality of service, as well as the agent’s general sanity, blended agents typically have their total number of concurrent interactions capped at 1 voice call and 0-2 chats, varying by agent experience and call complexity.

Q: Where will the call controls even go?
A: Everywhere, all at once.

As we well know from our own lives, voice calls command the majority of an individual’s sensory and cognitive bandwidth to handle effectively. A voice agent’s ears, mouth, eyes, hands, and a decent chunk of their brain are all in simultaneous use as they solve a customer’s problem, and on top of that, they’re doing it live. Responses need to be instant, information needs to be found quickly, and the call itself cannot afford to get lost in a labyrinth of CCaaS software.

To suitably add call controls to the agent workspace:

  • Our call controls must be accessible anywhere in the platform, in the same spot.

  • The most important controls (end, hold, mute, record) must be available at all times whether they’re stowed away or displayed in the larger modal.

  • Agents must be able to return to the conversation at a moment’s notice.

Q: Can we leverage LivePerson’s existing chat AI features for voice?
A: Yes, but instead of “recommend” we need to “tell.”

Real-time chat AI recommendations take full advantage of the not-instant response time between messages, as well they should. Agents are offered multiple options to respond with, allowing them to take a moment to choose the right one. They are given relevant knowledge base links that they can peruse for a minute or two before getting back to the customer. Canned replies auto-fill the agent’s text input field, under the presumption that the agent will spend a moment editing and customizing the message.

Could you imagine calling a support center and hearing stunned silence on the other end while the agent tries to mentally sort through 3 possible replies to you? Or wait for them to read an unfamiliar article from their internal documentation?

To combat cognitive overload, here’s what we’ll do instead:

  • Real-time notifications cannot afford to be imprecise or make the agent think even for a moment during a live voice call.

  • “Suggested replies” aren’t really going to be suggestions at all; they are what you are going to reply with. Instead of merely giving a link to an article, our AI must display the exact part of that article that’s relevant.

  • Ideally, we should only posit a single action to take. Two if we have to, but strive for one to keep the hiccups to a minimum.

Phase 1 — Proof-of-concept

1 month to design/prototype → 1 month to develop

Due to the sheer size of this initiative and the effects it would have on the entire platform, we needed to get an ultra-lite version of the call controls built and demoed to stakeholders, select customers, the entire C-suite, and even our board of directors.

In equal parts to expedite the process and let our first run of users grok the concept of the voice channel, the dev team and I limited the call controls to following*:

  1. Outbound calls only (not shown)

  2. Click-to-dial** (not shown)

  3. Hold

  4. Dialpad/DTMF

  5. Enlarge/Stow

* I can’t safely say that everyone on the planet has used a phone before, but it didn’t seem necessary to say here that we included “answer call” and “end call" buttons…

** “Click-to-dial” is a feature shared by most contact center software providers that allows agents to click a phone number on their screen and have it auto-fill their outbound dialer, preventing the need to manually type it in. As the PM and I stressed to the engineering team, it is a “table stakes”-level feature.

Minimized call controls: Anchored in upper-right hand corner of the Agent Workspace, the minimized (and consolidated) controls are visible and interactable from anywhere in the platform.

Maximized call controls: The enlarged call controls can be moved anywhere the agent wants on their screen.

Planning for the future

Being intimately familiar with the complicated nature of phone systems and how contact centers handle voice calls, my first concepts for our new dialer were made with the “FINALfinal_final.jpeg” version in mind knowing that we wouldn’t reach that point for several fiscal quarters.

There are…sooooo many ways a voice agent interacts with and routes a conversation that to build a shorthand version of the dialer without considering the future, you would just be adding technical debt before you even got started.

Yes, it results in a decent amount of unused negative space in the short term, but massive UI overhauls with every update would confuse users having to refamiliarize themselves again with each iteration, on top of just giving the engineers heartburn…

With the future as our starting point, we can now “lay claim” to the regions of the platform we would need our call controls to live in (even minimized, it would still take up several square inches of a screen) and better visualize our shared goal.

How did Phase 1 go?

This initial phase was less driven by any real user metrics or KPIs than it was if we can introduce the concept well enough for buy-in from all parties involved and show off our ability to effectively add voice as a communication channel to the Agent Workspace.

Over the span of 2 weeks, and using a combination of live call control demos made by engineering and prototypes I had made using our future-state components with our proposed AI integrations, my team and I gathered feedback from:

  • LivePerson agents with and without prior voice experience

  • Select customers that had either requested directly or would be good candidates for voice integration

  • Our internal marketing, sales, support teams, who would soon need to become experts in the voice integration space

  • The LivePerson C-suite and Board of Directors

tl;dr, they loved it! Which means it’s time to work on…

Phase 2 — The real MVP

1 month to prototype → 1.5 months to develop

Our proof-of-concept suitably proven, it was time to flesh out and build what would be a more “traditional” voice tool for contact centers. From the beginning, our solution was meant to be phone system-agnostic so our customers could show up with any telephony provider they wanted and have it just work. This meant accounting for every feature shared across these providers, up to and including:

  1. Logging into/out of phone system

  2. Inbound calls

  3. Call metadata (when available)

  4. Setting your agent status

    • Available

    • Busy/After call work

    • Unavailable

  5. Transferring calls

    • Consultative transfers (Warm)

    • Blind transfers (Cold)

    • Conference calls (Merge)

  6. Mute

  7. Call Recording

  8. Call history

  9. Agent/Skill directory

Specific flows

  • Receiving a call (Inbound)

  • Record

  • Mute

  • Hold

  • Placing a call (Outbound)

  • Ending call

  • Blind transfer (Cold)

  • Consultative transfer (Warm)

  • Swap between participants

  • Conference call (Merge)

Phase 3 — AI and automation

2 months design/prototype → 2 months develop

It was our collective good fortune that LivePerson already had a whole suite of chat AI tools, including real-time alerts, bot delegation prompts, and knowledge base article recommendations. Or so we thought…

Our demos and user observations showed us that while the information that was getting surfaced and recommended to voice agents was precisely what they needed, we were making them think too long about the what the “right” response would be.

No think, just do

Voice conversations are fluid, natural, and lightning-fast, and we needed to apply the time-crunch of live calls to (nearly) all of LivePerson’s existing AI chat features.

Chat pane → Live voice transcription

  • Fills up as the voice conversation goes on.

  • Primarily used as an area for the agent to receive topic summaries, bot updates, and messages from their manager(s).

Script adherence → “Guided Workflow”

  • Rather than just sticking to a single script for the whole conversation, the Guided Workflow tool can update its steps if the topic of conversation abruptly changes.

  • Orgs can create their own automated workflows that can be used by their agents from directly within the widget. Ex. flight booking, customer credit card background approval.

1-3 recommendations at a time → Here’s exactly what you’ll do

  • Rather than make the agent freeze with indecision, LivePerson just tells you what to say.

In-line alerts → Alert Timeline

  • Due to the rapid-fire nature of voice conversations, in-line alerts would disappear out of view almost as soon as they came in.

  • Alerts were moved to their own section of the Copilot widget in a timeline view, and new alerts would always appear within the widget no matter what page was open.

Next steps

  • Turn the Unified Workspace into a true BYOPS (bring-your-own-phone-system) platform

    • The team and I partnered with Avaya from the beginning of this project, but it was always meant to be able to accommodate any phone system you throw at it

    • Fortunately, voice calls are handled in nearly the same way across all major voice providers.

  • Managing your phone system within LivePerson

    • To combat whiplash from needing to manage both the phone system and LivePerson at the same time, some of the larger day-to-day features will be able to be managed directly within LivePerson (directories, dispositions, etc)

  • Improved workflow automations based on real-time transcription

    • Rather than just hearing a trigger word and presenting “Step 1” of a workflow to an agent, entire processes can be queued up and initiated by an agent.