Note: Descriptions are shown in the official language in which they were submitted.
CA 02771704 2015-07-10
=
SYSTEMS AND METHODS FOR CUSTOMER CONTACT
BACKGROUND
[0001]
In an increasingly networked society, users frequently use data networks to
perform a variety of tasks formerly performed in person. For example, a user
may purchase an
item from a network-based retailer using his or her computing device. In yet
another example,
the user may employ a banking service to check account balances, pay bills,
schedule transfers,
and the like. As a result, providers of network-based services face a number
of pre- and post-sale
contacts with their customers. Systems, such as call centers have been
developed as a
centralized, scalable mechanism to handle the volume of calls across a variety
of contact
contexts, including, for example, sales and marketing contacts, technical
support, and billing.
However, call centers suffer from a variety of shortcomings.
[0002]
For example, the availability of call center agents is typically based upon
predetermined hours. However, predetermined hours of contact availability may
become out of
synch or outdated with respect to actual agent availability with relative
ease. For example,
special events (e.g., holidays), time changes, network outages,
over/understaffing, and the like
may each influence the availability of agents in ways that are not reflected
in hourly availability
ranges. As a result, the availability of call center agents may be incorrectly
reported to users,
potentially frustrating users who wish to contact a call center agent.
SUMMARY
[0002a]
In one embodiment there is provided a system for communication between
a user and a service agent. The system includes a data store that maintains
one or more user
interface templates and a computing device in communication with the data
store. The
computing device is operative to obtain a first request from the user for a
first user interface, the
first user interface comprising an agent status, wherein the agent status
represents a current
availability of one or more service agents to contact the user, obtain a first
user interface
template from the data store and generate the first user interface comprising
the first user
interface template and the agent status, wherein the agent status is obtained
from a contact
- 1 -
CA 02771704 2016-08-09
service in communication with one or more service agents. The computing device
is also
operative to provide the first user interface to the user for display and
provide a contact status to
the user, the contact status representing a status of a contact between the
user and a service agent.
[0002b] The computing device may be further operative to receive a
second
request from the user for contact with a service agent and obtain a second
user interface template
from the data store. The computing device may be further operative to generate
a second user
interface comprising the second user interface template, wherein the second
user interface
enables submission of user contact information to the computing device and
provide the second
user interface to the user for display.
[0002c] The computing device may be further operative to submit user
contact
information to the contact service and receive the contact status from the
contact service in
response to submission of the user contact information, the contact status
further representative
of user contact with the service agent according to the user contact
information. The computing
device may be further operative to generate a third user interface comprising
the contact status
and provide the third user interface to the user for display.
[0002d] The first user interface may further include a contact user
interface control
for submitting a request for contact between the user and a service agent to
the computing
device.
[0002e] The computing device may be further operative to generate an
agent user
interface for display to the service agent during contact with the user.
[0002f] The agent status may be based upon availability feedback
from the service
agents.
[0002g] The contact information may include one or more of a
telephone number,
an electronic mail address, an instant messaging address, and a user account
for another network-
based service.
- la -
CA 02771704 2016-08-09
[0002h] Contact between the user and the service agent may be
performed by one
or more of a telephone call, electronic mail, an SMS message, instant
messaging, an electronic
message that is published or posted for viewing by others, and a video
message.
[00021] In another embodiment there is provided a system for
facilitating contact
between a user of a network-based service and a service agent of the network-
based service. The
system includes a contact service in communication with the customer service
agent that
provides an agent status and a contact status, the agent status representing a
current availability
of the service agents to communicate with the user and the contact status
representing a status of
the contact between the user and the service agent and a computing device in
communication
with the contact service. The computing device is operative to generate a
first user interface in
response to a user request. The first user interface comprises the agent
status and enables
submission of a request for contact between the user and a service agent to
the computing device.
The agent status is obtained from the contact service. The computing device
also generates a
second user interface in response to a user request for contact. The second
user interface enables
submission of user contact information to the computing device. The computing
device is also
operative to submit received user contact information to the contact service
and to generate a
third user interface that comprises the contact status obtained from the
contact service in
response to the submitted user contact information.
[0002j] The first, second, and third user interfaces may be
configured for display
to the user.
[0002k] The contact information may include one or more of a
telephone number,
an e-mail address, an instant messaging address, and a user account for
another network-based
service.
- lb -
CA 02771704 2016-08-09
[00021]
Contact between the user and the service agent may be performed by one
or more of a telephone call, electronic mail, an SMS message, instant
messaging, an electronic
message that is published or posted for viewing by others, and a video
message.
[0002m]
The first user interface may further include a contact user interface control
for submitting a request for contact between the user and a service agent to
the computing
device.
BRIEF DESCRIPTION OF THE DRAWINGS
[0003]
The foregoing aspects and many of the attendant advantages will become more
readily appreciated as the same become better understood by reference to the
following detailed
description, when taken in conjunction with the accompanying drawings,
wherein:
[0004]
Figure 1 is a schematic block diagram of an illustrative contact service in
communication with a call distribution system for managing contacts between
customers and
customer service agents;
[0005]
Figure 2 is a block diagram of the operating environment of Figure 1,
illustrating the contact service providing a contact status to a website in
- lc -
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
response to a request by a customer client device for a user interface that
includes
an agent status;
[0006] Figure 3 is an illustrative user interface for display on
the
customer client device that includes an agent status;
[0007] Figure 4A is a block diagram of the operating environment
of
Figure 1, illustrating the contact service returning a contact identifier to
the website
in response to a request by a customer client device for contact with a
customer
service agent;
10008] Figure 4B is a block diagram of the operating environment
of
Figure 1, illustrating the website returning a user interface to the customer
client
device for submission of customer contact information and returning a customer
service agent interface to the contact service;
[0009] Figure 5 is an illustrative user interface for display on
the
customer client device that enables a user to submit customer contact
information
to the website;
[0010] Figure 6A is a block diagram of the operating environment
of
Figure 1, illustrating the contact distribution service attempting to contact
the
customer in response to receiving customer contact information;
[0011] Figure 6B is a block diagram of the operating environment
of
Figure 1, illustrating the contact distribution service returning the contact
status for
display to the user;
[0012] Figures 7A and 7B are illustrative user interfaces
displayed on
the customer client device for enabling a user to view the contact status;
[0013] Figure 8A is a block diagram of the operating environment
of
Figure 1, illustrating an agent client device generating a response to a
customer
query;
[0014] Figure 8B is a block diagram of the operating environment
of
Figure 1, illustrating the agent client device returning an agent response to
the
customer query and contact status update for display to the customer; and
-2-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
[0015] Figure 9 is an illustrative user interface generated on the
agent
client device for enabling an agent to view the contact status and other
contact
session information
DETAILED DESCRIPTION
[0016] Generally described, aspects of the present disclosure
relate to
providing highly accurate, up to date information regarding the availability
of
service agents to users of network-based services (e.g., websites). Further
aspects
of the disclosure relate to facilitating contact between the users and service
agents.
Embodiments discussed below may refer to the users as customers and the
service
agents as customer service agents. However, it may be understood that users
are
not limited to customers but may include any users of network-based services.
[0017] In this regard, a contact service is described that
receives
customer requests for the availability of customer service agents and for
contact
with customer service agents (CSAs). For example, a customer using a customer
computing device, such as a personal computer, may identify an item of
interest
presented by a network-based service and may desire to communicate with a CSA
regarding the item of interest. This network-based service may be anything
that
provides a good, service, or information that is of interest to the customer.
Accordingly, the network-based service may include network-based retailers
such
as those which sell items for purchase to the customer, network-based sources
of
entertainment and/or information (e.g., network-based encyclopedias, media
sharing, etc), network-based social networking services which enable users to
share
content with one another, and the like. In one embodiment, using his or her
computing device, the customer may request contact agent availability and
contact
with service agents.
[0018] As described in greater detail below, these customer
requests
may be directed to the contact service via the network-based service. The
contact
service may submit the requests to a contact distribution system for the
generation
of responses. These responses may be obtained by the contact service and
submitted to the network-based service for display to the customer. For
example,
-3-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
the network-based service may generate user interfaces that incorporate the
responses for display to the user.
[0019] More specifically, the contact distribution system may
communicate with one or CSAs in order to determine agent availability and to
determine agent responses to customer queries. The contact distribution system
may further establish contact between customers and CSAs based upon customer
contact information provided to the contact service and report the status of
the
contact to the contact service. Because the contact distribution system may
determine CSA availability directly from the CSAs, the likelihood that the
agent
availability information returned by the contact distribution system is out of
date or
incorrect is low. Thus, customers may be presented with accurate agent
availability information.
100201 In one non-limiting example, the network-based service may
be
a network-based retail service, implemented via a website, e.g., a website
that sells
music and videos. Using a personal computing device, the customer may identify
an item of interest displayed for sale by the network-based retail service,
for
example, a movie. In addition to identifying the item of interest, the
customer may
also have one or more questions regarding the movie, such as how the movie is
shipped. The customer, from her personal computing device, may submit a
request
to the retailer service's website for a user interface (e.g., a web page)
including
information regarding contact with a CSA. For example, the customer may submit
a request for a user interface that displays an agent status.
100211 This request may, in turn, be sent from the website to the
contact
service for response. The contact service may communicate with the contact
distribution system to obtain the real-time agent status, which is returned to
the
website. The website may generate the requested web page, based upon the
returned agent status, for display by the customer's computing device to the
customer.
[0022] The agent status may be further stored or cached by the
contact
service for a limited time in order to reduce the frequency with which
requests for
agent status are directed to the contact distribution system. For example, if
another
-4-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
customer requests assistance regarding the same movie within the limited time
period, the contact service may return the previously determined agent status,
rather than submitting a new request to the contact distribution service.
[00231 In another non-limiting embodiment, the customer may submit
customer contact information to the website. The customer contact information,
when provided to the content distribution service, may enable the contact
distribution service to initiate communication between the customer service
agent
and the customer. The customer contact information may include information
regarding any manner of communication available with the customer.
[0024] A contact request, including the customer contact
information,
may be transmitted to the contact service. The contact service, in turn, may
submit
the customer contact information to the contact distribution system. The
contact
distribution system may attempt to contact the customer using the contact
information and return a corresponding contact status to the contact service.
The
returned contact status may be provided to the website by the contact service,
enabling the preparation of another user interface, which includes the contact
status, for display to the customer. In additional non-limiting embodiments,
once
contact is established between the customer and the service agent, the contact
service may relay customer queries and agent responses between the service
agent
and customer.
[0025] In further embodiments, the contact service and contact
distribution service may generate and/or employ additional infoimation in
order to
coordinate the receipt and transmission of user contact requests and responses
between the website and the contact distribution service. In one example, a
unique
identifier, referred to as a contact identifier (contact ID), may be generated
by the
contact service for identification of customer contact requests and shared
with the
website and customer client device.
[0026] In another example, the contact distribution service may
generate and store one or more identifiers which uniquely identify contacts
generated by the contact distribution system. The contact distribution service
may
generate a first identifier, referred to as a contact leg identifier (contact
leg ID), to
-5-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
identify a contact made between the contact distribution service and the
customer.
The contact distribution service may also generate a second identifier,
referred to as
an agent leg identifier (agent leg ID), to identify a contact made between the
contact distribution service and an agent in response to the contact made
between
the contact distribution service and the customer. These identifiers may be
provided by the contact distribution service to the contact service, which may
further associate the contact leg ID and agent leg ID with the contact ID and
store
the contact leg ED, agent leg ID, and association.
[0027] When establishing contact between the CSAs and the
customer,
the contact service may further associate these identifiers with other
selected
information generated while establishing contact, and further store these
identifiers
and associations. In this manner, requests from the customer may be associated
with the correct contact by the contact service and contact distribution
system,
enabling with responses generated by the contact service and contact
distribution
system to be appropriately delivered to the website in use by the customer.
[0028] With reference to Figure 1, an embodiment of an operating
environment 100 for automatically distributing contacts from customers to
customer service agents (CSAs) is illustrated. In the operating environment
100, a
customer may employ a customer client device 160 to communicate with a
network-based service implemented via a website 154. The website 154 may
maintain or generate one or more user interfaces 156 capable of display by the
customer client device 160. Should the customer have a problem or query
regarding information displayed in one or more of the user interfaces 156
provided
by the website 154, the customer may employ the user interfaces 156 to request
information regarding customer service agents and, if necessary, request
communication with a customer service agent. Requests for CSA information and
contact with CSAs may be directed to a contact service 150 in communication
with
a contact distribution system 120 as discussed in greater detail below.
[0029] It will be recognized that many of the components described
below are optional and that embodiments of the system 100 may or may not
combine components. Components need not be distinct or discrete. Components
-6-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
may be reorganized in the system 100. The system 100 may be represented in a
single physical server containing all of the subsystems described below or,
alternatively, the system may be split into multiple physical servers.
[0030] The contact service 150 and website 154 may each be
embodied
in a plurality of components, each executing an instance of the respective
contact
service 150 or website 154. A server or other computing component implementing
the contact service 150 or website 154 may include a network interface,
memory,
processing unit, and computer readable medium drive, all of which may
communicate which each other may way of a communication bus. The network
interface may provide connectivity over the network 110 and/or other networks
or
computer systems. The processing unit may communicate to and from memory
containing program instructions that the processing unit executes in order to
operate the contact service 150 or website 154. The memory generally includes
RAM, ROM, and/or other persistent and auxiliary memory.
[0031] The customer client device may comprise any communication
device capable to displaying a user interface from the website 154, such as a
PC, a
kiosk, a thin client, a home computer, and a dedicated or embedded machine.
Further examples may include laptop or tablet computers, personal computers,
personal digital assistants (PDAs), hybrid PDAs/mobile phones, mobile phones,
electronic book readers, set-top boxes, and the like.
[0032] The website 154 may communicate with the customer client
device 160 to transmit customer requests for contact with the CSAs. The
requests
may include requests for CSA information including, but is not limited to, an
agent
status representing a current availability of the CSAs to communicate with the
customer, a contact status representing a status of the contact between the
customer
and the customer service agent in response to a request for contact, and an
agent
response to a customer query.
[0033] Responses to the customer requests may, in certain
embodiments, take the form of user interfaces (UI) 156 generated by the
website
154. User interfaces 156 may be generated using CSA information obtained from
the contact service 150. User interfaces 156, in certain embodiments, may be
-7-
CA 02771704 2014-06-05
further generated from template user interfaces. Such template user interfaces
may be maintained
by the website 154 and/or the contact service 150, a data store in
communication with the
website 154, and combinations thereof. In additional embodiments, the website
154 and/or the
contact service 150 may also generate agent user interfaces 111 for use by
CSAs, as discussed in
greater detail below.
[0034] The website 154 may further communicate with the contact service
150 to
obtain the CSA information. As discussed in greater detail below, the contact
service 150
submits contact requests received from the website 154 to the contact
distribution system 120
and returns responses to the website 154. The contact service 150 may further
store at least a
portion of the CSA information and other information generated when responding
to the
customer requests in a storage service 152.
[0035] Descriptions of illustrative embodiments of the contact
distribution system 120
may be found in U.S. Patent No. 8,249,245, entitled "SYSTEM AND METHOD FOR
AUTOMATED CALL DISTRIBUTION." The system 120 may include a customer relations
module (CRM) 101, a contact controller service 102, a connectivity controller
103, and a metrics
service 104, each of which may be represented in hardware, software, or a
combination thereof.
The system is responsible for allocating, routing, and maintaining connections
between customer
client devices 160 and CSAs. As discussed below, connections may be
established between
customer phones 105, CSA phones 106, and agent client devices 107. The system
100 may
connect to customers and agents through telephony carriers 108 and 109 and
data carriers 110.
[0036] In alternative embodiments, the phones 105, 106 may be
supplemented with
and/or replaced by other communication mechanisms. Examples may include, but
are not limited
to, computing devices capable of sending and receiving electronic mail, an SMS
message, instant
messaging, an electronic message that is published or posted for viewing by
others, and a video
message. The contact distribution system 120 may connect user client devices
160
- 8 -
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
and agent client devices 107 through one or more networks 110 as known to one
of
skill in the art.
[0037] In one embodiment, the CRM 101 enables the contact
distribution system 120 to manage contacts and relations with its customers.
The
CRM 101 may be composed of several databases (not shown) and may have links
(not shown) to other systems, both directly and indirectly related to customer
contact management. For example, as discussed below, the CRM 101 may
maintain and/or obtain customer information for use by the CSAs.
[0038] The contact controller service 102 handles incoming
customer
calls, and other functions including, but not limited to: tracking agent
state/availability (i.e., which agents are available to handle an incoming
customer
call); maintaining (potentially out-of-order) logical queues (not shown) of
customers on hold for a particular CSA or call types (while customers on hold
may
be connected to a media service 112); routing calls, i.e., matching an
available
agent to an incoming customer call; and forwarding information generated by
the
operation of the telephony subsystem (103 and attendant components) to the
metrics service 104.
[0039] The metrics service 104 is typically connected to the
contact
controller service 102. This service stores information related to both
customer
contacts and CSAs. Additionally, it may create reports (such as SL reports)
based
on real-time and historic data. The metrics service may provide information to
the
contact controller service 102.
[0040] The connectivity controller 103 may handle the mechanics of
manipulating telephone calls, using SIP signaling (voice over IP technology),
expose functionality that allows other systems (e.g., the contact controller
service)
to manipulate calls, and propagate telephony events through the system 100.
The
connectivity controller 103 may connect customer phones 105 to agent phones
106.
The connectivity controller 103 may make use of the following subsystems: a
media server 112, an interactive voice response (1VR) system 113, and a call
recorder system 114.
-9-
CA 02771704 2012-02-20
WO 2011/025824
PCT/US2010/046647
[0041] The media server 112 may handle the mechanics of playing
announcements and hold music in a number of different contexts in the system.
Customers may be connected to this server when they are placed on hold. This
system may play "whispers" (i.e., informative introductory messages) to CSAs
just
before they are connected to a customer.
[0042] The interactive voice response system 113 may be a "robot"
that
sometimes handles customer contacts before customers are transferred to a live
CSA. IVRs may obtain preliminary infotmation used to route calls and/or
classify
call types.
[0043] The contact recorder system 114 may record customer
contacts.
The contact recorder may provide a common interface to record contacts that
take
or took place anywhere in the system 100.
[0044] A CSA will typically have two connections to the system: an
agent client device, illustrated at 107, and a telephony connection,
illustrated at
106. The agent client device 107 is capable of displaying a user interface 111
to
the system 100 and may be any computing device. Those of skill in the art will
recognize that one or more CSAs may be located in a traditional monolithic
call
center (wherein the CSAs and the system 100 are in close physical proximity).
Alternatively, a CSA may be located in close proximity to other CSAs (as in a
"call
center"), but remote from the system (which would then be housed in a "data
center"). As another alternative, one or more CSAs may be remote from both the
system data center and other CSAs. The agent client device may include any
sort
of communication device capable to displaying a user interface from the
contact
distribution system 120, such as a PC, a kiosk, a thin client, a home
computer, a
dedicated or embedded machine. Further examples may include laptop or tablet
computers, personal computers, personal digital assistants (PDAs), hybrid
PDAs/mobile phones, mobile phones, electronic book readers, set-top boxes, and
the like.
[0045] Similarly, the agent phone system 106 may include
specialized
phone equipment, VolP equipment, complex PBX systems, off-the-shelf phones on
traditional phone lines, and so forth. In some embodiments, agent phone
systems
-10-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
106 are not required to be connected via PBX or other telephone exchange
systems.
Moreover, for purposes of the present disclosure, a grouping of one or more
CSAs,
whether physically, in a monolithic call center or a data center; or
logically, e.g., of
CSAs who are not in close physical proximity to each other, may be referred to
as
an agent node.
[0046] The CSA user interface 111 displays content from the
contact
controller service 102 or the CRM 101. Such an interface may be a propriety
application running on the computing machine. Alternatively, it may display a
web
page, browser, widget, applet, etc. generated or otherwise provided by the
contact
controller service 102 or CRM 101. In further embodiments, the CSA user
interface 111 may display a web page, browser, widget, applet, etc. generated
or
otherwise provided by the network-based service. The link between the content
distribution system 120 and the user interface 111 may be mediated by any of a
host of data carriers and protocols, including HTTP, HTTPS, instant messaging,
distributed memory, or a propriety protocol, or a combination of these.
[0047] Customers and customer phone systems, illustrated at 105,
correspond to the end-users of the call system 100. Such customers may be
connected to the content distribution system 120 via one of a host of
telephony
carriers 108. Such connections may also be established through newer, non-
traditional protocols such as SIP, HTTP, IRC, other instant messaging
protocols,
and so forth. Customers may connect to the system using inexpensive phone
equipment, complex PBX systems, or any other mechanism of communication.
[0048] Figure 2 is a block diagram of the operating environment of
Figure 1, illustrating the customer requesting a user interface from the
website 154
which includes the status of CSAs of the website. A customer may communicate
with website 154 via user interfaces 156 displayed by the customer client
device
160 to access any network-based services provided by the website 154. When the
customer has a problem or question displayed in one or more of the user
interfaces
156 provided by the website 154, the customer may employ the user interfaces
156
to request the status of customer service agents of the website. In this
manner, the
customer may identify whether CSAs are available for assistance. As depicted
in
-11-
CA 02771704 2012-02-20
WO 2011/025824
PCT/US2010/046647
Figure 2, the customer may submit a request for a user interface including
agent
status using the customer client device 160.
10049] For example, the request may comprise a request for a web
page
containing the agent status. The request is transmitted to the website 154,
which
detects that the agent status is needed to respond to the customer request and
submits an agent status request to the contact service 150.
[0050] The contact service 150, in turn, submits the request for
agent
status to the contact distribution service 120, which generates and returns
the agent
status. In one embodiment, a real-time availability of the CSAs may be
generated
by the contact distribution system 120 through communication with the CSAs.
For
example, to signal availability to the system, a CSA may press a key or select
a
user interface control from the CRM user interface 111 on the computing
machine
107. The contact controller service 102 may thereafter, via the connectivity
controller 103, initiate a call to the CSA, for example, via the CSA's phone
system
106. The CSA may answer this call to signal to the system that he or she is
ready
and able to accept calls from customers.
[0051] If no customer is waiting for service, the CSA may maintain
this
silent-open (i.e., off-the-hook) connection to the system to indicate
continued
availability. To signal a transition from availability to unavailability (for
example,
to take a lunch or coffee break), the CSA may simply hang up the phone. The
severed connection to the connectivity controller 103 or selected unavailable
status
may signal to the contact controller service 102 and CRM 101 that a CSA is
indicating that he or she is no longer available to take a customer contact
(or that a
CSA has been unintentionally cut off from the system, due to, for instance, a
fault
in the network).
[0052] If the CRM system 101 is down, the CSA may not be able to
press or click a user interface control to signal availability to system, or
when the
CSA does click a user interface control, the CSA might not enter into the
available
state and therefore not receive calls. Some embodiments may include a phone-
system-based interactive voice application that will allow CSAs to signal
their
availability through their phone system 106.
-12-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
[0053] It will be appreciated that a silent-open connection is not
necessary for operation of the system. In alternative embodiments, CSAs may
signal availability by accessing a control on the user interface 111 or
another
device. The contact controller 102 may then direct the connectivity controller
103
to connect to the CSA's phone device 106, such as by calling it, when the
contact
controller 102 has a customer to connect to the CSA.
[0054] Beneficially, by placing the burden of signaling
availability on
the CSA, the contact distribution system maintains a highly accurate, real-
time
indication of CSA availability at all times. As opposed to static mechanisms
of
determining agent status, such as hours of operation, this real-time
availability is
highly adaptive to changes in agent availability and provides nearly
instantaneous
updates to agent status. Thus, the likelihood of the agent status being out of
date
when provided to the customer is low, helping to ensure that customer
expectations
are met during any subsequent contact between the customer and CSA (e.g., low
wait time, CSA possesses appropriate skills to assist the customer, etc).
[0055] The agent status returned to the contact service 150 may be
further transmitted to the website 154 for ultimate presentation to the
customer.
Upon receiving the agent status, the website 154 may generate the user
interface
including the agent status that was requested by the customer. The generated
user
interface may then be provided to the customer client device 160 for display
to the
customer.
[0056] Figure 3 illustrates one embodiment of a user interface
300,
including an agent status, that is displayed on the customer client device
160. The
user interface 300 is generated by the website www.xyz.com and includes an
item
for sale in a first window 302 and help information in a second window 320.
The
user interface 300 may further include biographical information 304 regarding
the
customer, if available to the website 154, such as the customer name. The user
interface 300 may further include an image 306 of the item of interest (i.e.,
object
D), as well as additional purchase details regarding the object that are
available
from the website 154. For example, the purchase details may include a name of
the
object 310, a price 312, a rating 314, a description, and an indication 316 of
-13-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
available inventory for the item of interest. Those skilled in the art will
recognize
that the purchase details depicted in Figure 3 are illustrative and that
additional or
different purchase details may be included in the user interface 300.
[0057] The help window 320 of the user interface 300, may further
include a greeting 322 that indicates the agent status, contact information
for the
CSA 324, and a contact user interface control 326. In an example, the agent
status
may be indicated as "available" or "unavailable." When the agent status is
"available," the customer may employ a contact user interface control 326 to
contact the CSA. Selecting the contact user interface control 326 may submit a
contact request to the website 154 which enables contact to be established in
a
short period of time. Such a contact user interface control is often referred
to as a
"click-to-call" control.
[0058] In certain embodiments, when the agent status is
"unavailable,"
the contact user interface control 326 may be absent from the user interface
300.
Accordingly, the user interface 300 may be provided by the website 154 in
order to
indicate to the customer that no CSAs are available for communication at the
present time and no communications can be accepted. The contact user interface
control 326 may also be provided in the user interface 300 to enable the
customer
to provide contact information that can be used by a CSA to contact the
customer
at a later time. Selecting the contact user interface control 326 may submit a
contact request to the website 154 which enables contact to be established at
a later
time when CSAs are available.
[0059] Figure 4A illustrates a block diagram of the operating
environment 100 of Figure 1, illustrating a contact request being submitted to
the
website 154. A customer, upon receiving the agent status in a user interface,
such
as illustrated in Figure 2, may decide that she wishes to communicate with a
CSA.
A request to contact a CSA may be submitted, for example, by the customer
selecting the contact control 326 in user interface 300. Upon receipt of the
contact
request, the website 154 submits a request for a contact identifier (contact
ID) to
the contact service 150. The contact identifier is an identifier that uniquely
identifies a requested user contact to the contact service. As discussed in
greater
-14-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
detail below, information generated during the process of establishing contact
between the customer and CSA may be associated with the contact identifier.
This
association enables the contact service 150 to properly identify information
associated with the contact request so that responses appropriate to the
contact
request are returned to the website 154. Upon receipt of the contact ID
request, the
contact service 150 generates the contact ID and returns the contact ID to the
website 154.
[0060] After the website 154 receives the contact ID, the website
154
proceeds to generate and distribute one or more user interfaces in response.
Figure 4B illustrates a block diagram of the operating environment 100 of
Figure 1,
illustrating the website response to receipt of the contact ID. In one aspect,
the
website 154 may generate an agent user interface 111 for use by the CSA. The
website 154 may further associate the agent user interface 111 with the
contact ID
and provide each to the contact service 150. The contact service 150 may store
the
agent user interface and contact ID for later use when contact between the
customer
and CSA is established.
[0061] In another aspect, the website 154 may generate a user
interface
for use by the customer to submit customer contact information for
establishing
contact with a CSA. The website 154 may further associate this user interface
with
the contact 1D and provide each to the customer client device 160. In this
manner,
contact information subsequently submitted by the customer may be associated
with the contact ID, ensuring that the contact service 150 responds properly
to
contact requests from the customer client device 160.
100621 Figure 5 is an embodiment of a user interface 500 displayed
on
the customer client device 160 which enables a customer to submit contact
information to the website 154. The user interface 500 may include an
identifier
associated with the website 154. For example, the identifier 502 may include
graphics, logos, and the like. The user interface 500 may further include
instructions 504 to the customer for entry of contact information, such as
"Please
enter your contact information below." The contact information may include one
-15-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
or more of the customer country 506, phone number 510, and a time 512 to
contact
the customer.
[0063] The time 512 provided in the user interface 500 may be
varied,
depending upon the agent status. When the agent status is "available," the
customer may enter an arbitrary contact time, reflecting the current
availability of
the CSAs. When the agent status is "unavailable," the customer may be limited
to
selected times. For example, selection options for time 512 under these
circumstances may include "first available," a time range, or a proposed time.
The
time range or proposed time may, in an embodiment, be offset from the current
time by a selected amount, reflecting the current lack of availability of
CSAs.
[0064] It may be understood that other customer contact
information
may be submitted in lieu of or in addition to that discussed above, such as an
electronic mail address, an instant messaging address, and a user account for
another network-based service. The customer may submit the contact information
by selection of a user interface control 514.
[0065] Upon being displayed, a user interface which enables the
entry
of customer contact information, such as illustrated in Figure5, may be
employed
by the customer to enter his or her contact information to continue the
process of
contacting a CSA. Figure 6A is a block diagram of the operating environment
100
of Figure 1, illustrating the website 154 submitting customer contact
information to
the website 154 for contact with a CSA. As illustrated in Figure 6A, the
submission may further include the contact ID previously generated by the
contact
service 150 for the contact. The website 154 further submits the contact
information and the contact ID to the contact service 150, which in turn
passes this
information to the contact distribution service 120.
[0066] The contact distribution service 120 may also attempt to
contact
the customer using the customer contact information received from the contact
service 150. In one embodiment, the contact distribution service 120 may be
unable to establish contact with the customer. For example, the contact
information provided to the contact distribution service 120 may be invalid or
a
network problem may inhibit establishing contact. In other embodiments, the
-16-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
contact distribution service may successfully establish contact with the
customer.
Examples of successful contact may include a phone ringing when a call to the
customer is attempted and the customer answering a call attempt. In other
embodiments, where the contact is not performed by telephone, examples of
successful contact may include an acknowledgement that an instant message, SMS
message, video message, or other form of electronic message has been
successfully
received.
[0067] Upon making a contact attempt, the contact distribution
service
120 may return a contact status to the contact service 150. Figure 6B is a
block
diagram of the operating environment 100 of Figure 1, illustrating the contact
distribution service 120 returning the contact status to the contact service
150. The
contact status represents the status of the contact between the customer and
the
customer service agent in response to a request for contact. When a successful
contact is achieved, the contact distribution service 120 may also generate
and
return a contact leg identifier (contact leg LD) to the contact service 150.
The
contact leg ID may represent an identifier which uniquely identifies a
successful
contact to the contact distribution system 120. When a successful contact is
achieved, the contact distribution service 120 may also generate an agent leg
identifier (agent leg ID). The agent leg ID may be returned both to the
contact
service 150 the agent client device 107. The contact leg ID may represent an
identifier which uniquely identifies a contact between an agent and the
contact
distribution service.
100681 Upon receiving the contact leg ID, agent leg ID, and
contact
status, the contact service 150 may associate this information together with
the
contact ID and agent user interface and store each in the storage service 152.
In
this manner, the contact service 150 may associate information received for
transmission to the contact distribution system 120 with the appropriate
contact.
For example, as discussed below, customer queries generated by the customer
using the customer client device 160 may be identified with a particular
contact
maintained by the contact distribution system 120.
-17-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
[0069] As also illustrated in Figure 6B, the contact status may be
further transmitted to the website 154. At the website 154, a user interface
may be
generated which includes the contact status. As discussed above, the
reconfigured
user interface may be generated with or without the use of user interface
templates.
Once generated, the user interface including the contact status may be
transmitted
to the customer client device 160 for display to the customer.
[0070] The contact status may also change dynamically during the
course of communication between the customer and the CSA. In the event of a
change in status, the contact distribution system 120 may update the contact
status
associated with a contact leg ID and provide the updated contact status to the
contact service 150. As the contact service 150 has previously associated the
contact leg ID with the contact ID, the contact service 150 may identify the
contact
status to be updated with the appropriate contact. The contact service 150 may
further store the updated contact status and provide the updated contact
status to
the website 154. The website 154 in turn may generate an updated user
interface
including the updated contact status for display by the customer client device
160.
[0071] A variety of contact statuses may be presented to the
customer
to reflect the changing status of the contact. Examples of contact status may
include, but are not limited to, connecting, connected, hold, and end. The
connecting status may be indicated while the contact distribution service is
attempting to make contact with the user. For example, the connecting status
may
be displayed to the customer after a customer phone number has been dialed but
prior to customer pick up of the phone. The connected status may be indicated
after a customer phone number has been dialed and the customer has picked up
the
phone. The hold status may be indicated after a customer has picked up the
phone
but a CSA or the contact distribution service 120 has put the customer on
hold.
The end status may be indicated after an established contact is terminated,
for
example, by a customer or CSA. It may be understood that these contact
statuses
are discussed as examples and other statuses may be returned by the contact
distribution system 120 without limit.
-18-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
[0072] In an additional embodiment, contact between the customer
and
a CSA may be reinitiated at a later date (e.g., the customer may be called
back) in
lieu of, or after, placing the customer on hold. In an example, a user
interface may
be returned that provides the customer with the option to reinitiate contact,
rather
than being placed on hold. In another example, a user interface displaying the
option to reinitiate contact may be presented to the customer after the
customer has
been placed on hold for a selected duration of time. In a further example,
contact
with the customer may be automatically reinitiated at a later date, either in
lieu of
placing the customer on hold, or after the customer has been placed on hold
for a
selected duration of time.
[0073] The time at which contact is reinitiated with the customer
may
be determined through a variety of different mechanisms. In one example,
contact
may be reinitiated by the contact distribution service 120 and/or the CSA at
an
arbitrary time (e.g., first available CSA) or a scheduled time window (e.g.,
within
24 hours from the time of the first contact). In another example, the time of
the
reinitiated contact may be scheduled by the customer (e.g., through the user
interface). In circumstances where the contact reinitiation time is designated
for
the customer (e.g., automatically), an estimate of when contact may be
reinitiated
may be provided to the customer.
[0074] Figures 7A and 7B present examples of user interfaces 700,
712
displayed on the customer client device 160 which present the contact status
to the
customer. Figure 7A illustrates a user interface 700 generated for presenting
the
"Connecting" status to the customer, while Figure 7B illustrates a user
interface
712 generated for presenting the "Connected" status to the customer. As
discussed
with respect to Figure 5, the user interfaces 700, 712 may include a selected
identifier 502 associated with the website 154. For example, the identifier
502 may
include graphics, logos, and the like. The user interfaces 700, 712 may
further
include instructions 704, 714 to the customer which inform the customer as to
any
actions they should or should not take. The user interfaces 700, 712 may
additionally include the contact status 706, 716. The user interfaces 700, 712
may
-19-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
further include user interface controls such as 710, 720 which allow the
customer
to end contact with a CSA.
10075] The user interfaces 700, 712 may also present other contact
statuses that may be of interest to the customer with respect to their
communication
with the CSA. In an example, if the customer is in communication with a CSA, a
contact status indicating a duration of conamtmication between the user and a
CSA
may be displayed to the customer. In another example, if the customer has been
connected to the contact distribution service 150 but is not yet in
communication
with a CSA, contact statuses indicating the time duration over which the
customer
has waited to communicate with a CSA and/or an estimated time to communicate
with a CSA may be displayed.
[0076] Once contact has been successfully established between the
customer and the CSA, the customer may proceed to communicate with the CSA.
For example, the customer may wish to ask the CSA one or more queries.
Figure 8A is a block diagram of the operating environment 100 of Figure 1,
illustrating the submission of a customer query by a customer. For example, a
user
interface may be presented to the user that enables the submission of customer
queries using one or more of text, voice, and video. For example, user
interfaces,
such as 700, 712 may be further modified to enable submission of text, voice,
and/or video input. In certain embodiments, the contact ID may be further
submitted with the customer query. The customer query and contact ID may be
submitted to the website 154, where they are subsequently transmitted to the
contact service 150.
[0077] The contact service 150 may receive the customer query and
identify a previously generated agent user interface according to the contact
ID
stored in the storage service 152. The agent user interface, as well as the
contact
ID and agent leg ID may be retrieved from the storage service 152 and provided
to
the contact distribution service 120 to facilitate the agent response to the
customer
query. The customer query, agent user interface, and agent leg ID may also be
forwarded to the agent client device 107 via the contact distribution service
120.
-20-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
The agent leg ID may assist the agent in identifying the contact to which the
customer query belongs, facilitating the generation of a return agent
response.
[0078] The agent response may include any type of response
appropriate to the customer query. In an embodiment, the agent response may be
provided in the same contact type as the query. For example, if the customer
query
regarding shipping of an item, an agent response may be delivered in the
telephone
call. The agent response may be further provided using a different contact
type
than the query. For example, further assuming that the customer query
regarding
shipping of an item is submitted in a telephone call, the agent response may
be
delivered in a telephone call and additional instructions may be
electronically
mailed to an e-mail address of the customer's choice.
[0079] After the CSA submits their response to the customer query,
the
agent response may be returned to the customer. Figure 8B is a block diagram
of
the operating environment of Figure 1, illustrating an agent response returned
to
the customer client device 160. As necessary, a contact status update may be
provided with the agent response. For example, the customer may submit a query
which requires the CSA to acquire additional information for the response. In
such
a case, the CSA may respond that more information is necessary to be
responsive
and the contact status may be changed from "connected" to "hold" to reflect
that
the contact is still active but that the C SA will be non responsive until the
additional information is acquired. In another example, the agent response may
end the contact. In such a case, the CSA may provide their final response and
the
contact status may be changed from "connected" to "end." The agent leg ID may
further be provided with the agent response to identify the contact associated
with
the agent's response.
[0080] The agent response and status update are returned to the
contact
service 150. As discussed above, upon receiving the agent response and status
update, the contact service 150 may update and store the updnted contact
status in
the storage service 152. The contact service 150 may further provide the agent
response and status update to the website 154. As discussed above, a user
interface
including the agent response and status update may be generated with or
without
-21-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
the use of user interface templates. Once generated, the user interface
including the
agent response and status update may be transmitted to the customer client
device 160 for display to the customer.
10081] Figure 9 presents an illustrative agent user interface 900
which
may be presented to the CSA with the customer query. In an embodiment, the
user
interface 900 may include a session information window 902 and a contact
status
window 906. The session information window 906 may include information
regarding the customer, including a customer profile, browser history, and a
page
view. The customer profile may include any information regarding the customer
which may help the CSA in their contact with the customer. As discussed above,
this information may be maintained by the CRM 101, determined by an IVR during
an initial period of contact with the customer prior to communication with a
CSA,
and/or may be provided by the website 154. Examples of the customer profile
may
include, but are not limited to, customer biographical information (e.g.,
name, age,
location, etc) and history with the website 154 (e.g., browse history,
purchase
history, etc.) or contact distribution service (e.g., prior contact history).
The
browse history may include items which the customer had browsed on the website
154 within a selected duration of time from the contact (e.g., one day, one
week,
one month, etc.). An illustrative page view 904 of the user interface 900,
illustrated in Figure 9, may include the view of the user interface from which
the
customer submitted their contact request. For example, the page view 904 may
include biographical information 304, image 306 of item of interest, a name of
the
object 310, a price 312, a rating 314, a description, and an indication 316 of
available inventory for the item of interest.
100821 The contact status window 906 may include a contact status
display 322 and controls 912, 914 for managing the contact. In an example, the
contact status display 322 may display the same contact status which is
displayed
to the customer, facilitating the CSA's awareness of the contact status with
the
customer. The controls 912, 914 may include hold control 912 and end
control 914. As discussed above, these controls may be employed by the CSA in
conjunction with their response, as necessary.
-22-
CA 02771704 2012-02-20
WO 2011/025824
PCT/US2010/046647
100831 Clause
I. A system for facilitating contact between a user of a
network-based service and a service agent of the network-based service,
comprising:
a contact service in communication with the customer service
agent that provides an agent status and a contact status, the agent status
representing a current availability of the service agents to communicate with
the
user and the contact status representing a status of the contact between the
user and
the service agent; and
a computing device in communication with the contact service,
the computing device operative to:
generate a first user interface in response to a user request,
wherein the first user interface comprises the agent status and enables
submission
of a request for contact between the user and a service agent to the computing
device and wherein the agent status is obtained from the contact service;
generate a second user interface in response to a user request for
contact, wherein the second user interface enables submission of user contact
information to the computing device;
submit received user contact information to the contact service;
and
generate a third user interface, wherein the third user interface
comprises the contact status obtained from the contact service in response to
the
submitted user contact information.
10084] Clause 2. The system of Clause 1, wherein the first, second,
and third user interfaces are configured for display to the user.
[0085] Clause 3. The system of Clause 1, wherein the contact
information comprises one or more of a telephone number, an e-mail address, an
instant messaging address, and a user account for another network-based
service.
[0086] Clause 4. The system of Clause 1, wherein contact between the
user and the service agent is performed by one or more of a telephone call,
electronic mail, an SMS message, instant messaging, an electronic message that
is
published or posted for viewing by others, and a video message.
-23-
CA 02771704 2012-02-20
WO 2011/025824
PCT/US2010/046647
[0087] Clause 5. The system of Clause 1, wherein the first user
interface further comprises a contact user interface control for submitting a
request
for contact between the user and a service agent to the computing device.
[0088] Clause 6. A system for communication between a user and a
service agent, comprising:
a data store that maintains one or more user interface templates;
and
a computing device in communication with the data store, the
computing device operative to:
obtain a first request from the user for a first user interface, the
first user interface comprising an agent status, wherein the agent status
represents a
current availability of one or more service agents to contact the user;
obtain a first user interface template from the data store;
generate the first user interface comprising the first user interface template
and the
agent status, wherein the agent status is obtained from a contact service in
communication with one or more service agents; and
provide the first user interface to the user for display.
[0089] Clause 7. The system of Clause 6, wherein the computing
device is further operative to:
receive a second request from the user for contact with a service
agent;
obtain a second user interface template from the data store;
generate a second user interface comprising the second user
interface template, wherein the second user interface enables submission of
user
contact information to the computing device; and
provide the second user interface to the user for display.
[0090] Clause 8. The system of Clause 7, wherein the computing
device is further operative to:
submit user contact information to the contact service;
-24-
CA 02771704 2012-02-20
WO 2011/025824
PCT/US2010/046647
receive a contact status from the contact service in response to
submission of the user contact information, the contact status representative
of user
contact with the service agent according to the user contact information;
generate a third user interface comprising the contact status; and
provide the third user interface to the user for display.
[0091] Clause 9. The system of Clause 6, wherein the first user
interface further comprises a contact user interface control for submitting a
request
for contact between the user and a service agent to the computing device.
[0092] Clause 10. The system of Clause 8, wherein the computing
device is further operative to generate an agent user interface for display to
the
service agent during contact with the user.
[0093] Clause 11. The system of Clause 6, wherein the agent status
is
based upon availability feedback from the service agents.
[0094] Clause 12. The system of Clause 6, wherein network-based
service comprises a network based retailer.
[0095] Clause 13. The system of Clause 6, wherein the contact
information comprises one or more of a telephone number, an electronic mail
address, an instant messaging address, and a user account for another network-
based service.
[0096] Clause 14.'The system of Clause 6, wherein contact between
the
user and the service agent is performed by one or more of a telephone call,
electronic mail, an SMS message, instant messaging, an electronic message that
is
published or posted for viewing by others, and a video message.
[0097] Clause 15. A computer-implemented method for facilitating
communication between a user and a service agent, comprising:
under control of one or more configured computer systems:
requesting the agent status from a contact service in
communication with one or more service agents, the agent status representing a
current availability of a service agent to communicate with the user;
providing the agent status received from the contact service to
the user;
-25-
CA 02771704 2012-02-20
WO 2011/025824
PCT/US2010/046647
requesting contact with a service agent, the contact request
comprising user contact information; and
providing a contact status received from the contact service to
the user in response to user contact information submitted to the contact
service.
10098] Clause 16. The computer-implemented method of Clause 15,
further comprising providing the user with a service agent in response to a
user
query.
10099] Clause 17. The computer-implemented method of Clause 15,
wherein the agent status is based, at least in part, upon availability
feedback from
the service agents.
10100] Clause 18. The computer-implemented method of Clause 15,
wherein the contact information comprises one or more of a telephone number,
an
e-mail address, an instant messaging address, and a user account for another
network-based service.
[0101] Clause 19. The computer-implemented method of Clause 15,
wherein contact between the user and the service agent is perfonned by one or
more of a telephone call, electronic mail, an SMS message, instant messaging,
an
electronic message that is published or posted for viewing by others, and a
video
message.
[0102] Clause 20. A computer-readable medium having encoded
thereon instructions to present service agent information to a user, wherein
the
instructions, when executed by a computing apparatus, cause the computing
apparatus to:
request an agent status from a contact service in communication
with one or more service agents, the agent status representing a current
availability
of the service agents to communicate with the user;
provide the agent status received from the contact service to the
user;
receive a user request for contact with a service agent, the
contact request comprising user contact information;
-26-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
obtain a contact status from the contact service, wherein the
contact status represents the status of contact between the user and service
agent;
and
provide the agent status to the user.
[0103] Clause 21. The computer-readable medium of Clause 20,
further
comprising providing the user with a service agent in response to a user
query.
[0104] Clause 22. The computer-readable medium of Clause 20,
wherein the agent status is based, at least in part, upon availability
feedback from
the service agents.
[0105] Clause 23. The computer-readable medium of Clause 20,
wherein the contact information comprises one or more of a telephone number,
an
e-mail address, an instant messaging address, and a user account for another
network-based service.
[0106] Clause 24. The computer-readable medium of Clause 20,
wherein contact between the user and the service agent is performed by one or
more of a telephone call, electronic mail, an SMS message, instant messaging,
an
electronic message that is published or posted for viewing by others, and a
video
message.
[0107] Clause 25. A system for coordinating contact between a user
and a service agent, the system comprising:
a network-based service that generates user interfaces for
display to a user, the user interfaces comprising service agent information;
a data store that stores the service agent information; and
a contact service in communication with the network-based
service, the contact service operative to:
receive an electronic request for service agent information from
the network-based service;
obtain the service agent information from a contact distribution
system, wherein the contact distribution system generates the service agent
information by communicating with one or more service agents and determining
the service agent information from one or more agent responses;
-27-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
provide the obtained service agent information to the network-
based service; and
store at least part of the received service agent information in the
data store.
[0108] Clause 26. The system of Clause 25, wherein the request for
service agent information comprises a request for an agent status, the agent
status
representing a current availability of the service agents to communicate with
the
user.
[0109] Clause 27. The system of Clause 25, wherein the request for
service agent information comprises a request for a contact status, the
contact
status representing a status of the contact between the user and the service
agent.
[0110] Clause 28. The system of Clause 25, wherein the contact
service
is further operative to generate a contact identifier, the contact identifier
uniquely
identifying requests from the network-service agent to the contact service.
[0111] Clause 29. The system of Clause 27, wherein the contact
service
is further operative to obtain a contact leg identifier from the contact
distribution
service, the contact leg identifier uniquely identifying the contact status to
the
contact distribution service.
[0112] Clause 30. The system of Clause 25, wherein the contact
service
is further operative to obtain an agent leg identifier from the contact
distribution
service, the agent leg identifier uniquely identifying a contact between the
agent
and the content distribution service.
[0113] Clause 31. A system for coordinating contact between a user
and
a service agent, the system comprising:
a data store;
a contact service in communication with the data store, wherein
the contact service is operative to:
obtain a request for service agent information; and
respond to requests for service agent information with responses
from a contact distribution system, wherein the contact distribution system
generates service agent information by communicating with one or more service
-28-
CA 02771704 2012-02-20
WO 2011/025824
PCT/US2010/046647
agents and determining the service agent information from one or more agent
responses.
[0114] Clause 32. The system of Clause 31, wherein the service agent
information comprises an agent status, the agent status representing a current
availability of the service agents to communicate with the user.
[0115] Clause 33. The system of Clause 32, wherein the agent status is
based upon an availability signaled to the contact distribution system by one
or
more service agents using an agent user interface to the contact distribution
system.
[0116] Clause 34. The system of Clause 31, wherein the service
agent
information comprises a contact status, the contact status representing a
status of a
contact between the user and the service agent.
[0117] Clause 35. The system of Clause 34, wherein the contact
service
is operative to receive a request for service agent information including user
contact information and wherein the contact status is based, at least in part,
upon
the status of the contact generated between the user and the service agent
using the
user contact information.
[0118] Clause 36. The system of Clause 31, wherein the service
agent
infoimation comprises a service agent response to a user query after contact
between the user and the service agent is established.
[0119] Clause 37. The system of Clause 31, wherein the contact
service
is further operative to obtain identifiers that uniquely identify requests for
service
agent information and responses to the requests.
[0120] Clause 38. The system of Clause 37, wherein the contact service
is further operative to generate a contact identifier, the contact identifier
uniquely
identifying requests for service agent information to the contact service.
[0121] Clause 39. The system of Clause 38, wherein the contact service
is further operative to obtain a contact leg identifier from the contact
distribution
service, the contact leg identifier uniquely identifying a response to the
requests for
service agent information.
[0122] Clause 40. The system of Clause 37, wherein the contact service
is further operative to obtain an agent leg identifier from the contact
distribution
-29-
CA 02771704 2012-02-20
WO 2011/025824
PCT/US2010/046647
service, the agent leg identifier uniquely identifying a contact between the
agent
and the content distribution service.
[0123] Clause 41. The system of Clause 38, wherein the contact service
is further operative to associate the contact identifier and contact leg
identifier with
each other so as to facilitate responding to requests for service agent
information
with the corresponding response.
[0124] Clause 42. The system of Clause 37, wherein the contact service
is further operative to store at least one of the identifiers and user
information
received in response to requests for service agent information.
[0125] Clause 43. The system of Clause 35, wherein the contact
distribution system enables contact between the user and the service agent by
one
or more of a telephone call, electronic mail, an SMS message, instant
messaging,
an electronic message that is published or posted for viewing by others, and a
video
message.
[0126] Clause 44. The system of Clause 43, wherein the contact status
comprises a time duration during which the user waits to communicate with a
service agent.
[0127] Clause 45. The system of Clause 43, wherein the contact
status
comprises at least one of connecting status, connected status, and on hold
status.
10128] Clause 46. The system of Clause 43, wherein contact between
the user and the service agent may be reinitiated at a later time.
[0129] Clause 47. A computer-implemented method for coordinating
contact between a user and a service agent, the method comprising:
under control of one or more configured computer systems:
obtaining a request for service agent information;
generating the service agent information by communicating with
one or more service agents and determining the service agent information from
one
or more agent responses;
associating the generated service agent information with the
request for service agent information; and
-30-
CA 02771704 2012-02-20
WO 2011/025824
PCT/US2010/046647
responding to the request with the generated service agent
information.
[0130] Clause 48. The computer-implemented method of Clause 47,
wherein the service agent information comprises an agent status, the agent
status
representing a current availability of the service agents to communicate with
the
user.
[0131] Clause 49. The computer-implemented method of Clause 48,
wherein the agent status is based upon availability signals received from a
service
agent.
[0132] Clause 50. The computer-implemented method of Clause 47,
wherein the service agent information comprises a contact status, the contact
status
representing a status of a contact between the user and the service agent.
[0133] Clause 51. The computer-implemented method of Clause 47,
wherein the service agent information comprises a service agent response to a
user
query after contact between the user and the service agent is established.
[0134] Clause 52. The computer-implemented method of Clause 47,
wherein the service agent information is associated with the request for
service
agent information by associating identifiers that uniquely identify each of
the
service agent information and the request for service agent information with
each
other.
101351 Clause 53. The computer-implemented method of Clause 52,
further comprising storing one or more of the service agent information, the
identifiers, and the associations between the identifiers.
[0136] Clause 54. A computer-readable medium having encoded
thereon instructions to coordinate contact between a user and a service agent,
wherein the instructions, when executed by a computing apparatus, cause the
computing apparatus to:
obtain a request for service agent information;
generate the service agent information by communicating with
one or more service agents and determining the service agent information from
one
or more agent responses;
-31-
CA 02771704 2012-02-20
WO 2011/025824
PCT/US2010/046647
associate the generated service agent information with the
request for service agent information; and
respond to the request with the generated service agent
information.
[0137] Clause
55.The computer-readable medium of Clause 54,
wherein the service agent information comprises an agent status, the agent
status
representing a current availability of the service agents to communicate with
the
user.
[0138] Clause
56.The computer-readable medium of Clause 55,
wherein the agent status is based upon availability signals received from a
service
agent.
[0139] Clause 57.
The computer-readable medium of Clause 54,
wherein the service agent information comprises a contact status, the contact
status
representing a status of a contact between the user and the service agent.
[0140] Clause 58. The computer-readable medium of Clause 54,
wherein the service agent information comprises a service agent response to a
user
query after contact between the user and the service agent is established.
10141] Clause 59. The computer-readable medium of Clause 54,
wherein the service agent information is associated with the request for
service
agent information by associating identifiers that uniquely identify each of
the
service agent information and the request for service agent information with
each
other.
[0142] Clause 60. The computer-readable medium of Clause 59, further
comprising storing one or more of the service agent information, the
identifiers,
and the associations between the identifiers.
[0143] All of the
processes described herein may be embodied in, and
fully automated via, software code modules executed by one or more general
purpose computers or processors. The code modules may be stored in any type of
computer-readable medium or other computer storage device. Some or all the
methods may alternatively be embodied in specialized computer hardware. In
-32-
CA 02771704 2012-02-20
WO 2011/025824 PCT/US2010/046647
addition, the components referred to herein may be implemented in hardware,
software, firmware or a combination thereof.
[0144] Conditional language such as, among others, "can," "could,"
"might" or "may," unless specifically stated otherwise, are otherwise
understood
within the context as used in general to convey that certain embodiments
include,
while other embodiments do not include, certain features, elements and/or
steps.
Thus, such conditional language is not generally intended to imply that
features,
elements and/or steps are in any way required for one or more embodiments or
that
one or more embodiments necessarily include logic for deciding, with or
without
user input or prompting, whether these features, elements and/or steps are
included
or are to be performed in any particular embodiment.
[0145] Any process descriptions, elements or blocks in the flow
diagrams described herein and/or depicted in the attached figures should be
understood as potentially representing modules, segments, or portions of code
which include one or more executable instructions for implementing specific
logical functions or elements in the process. Alternate implementations are
included within the scope of the embodiments described herein in which
elements
or functions may be deleted, executed out of order from that shown, or
discussed,
including substantially concurrently or in reverse order, depending on the
functionality involved as would be understood by those skilled in the art.
[0146] It should be emphasized that many variations and
modifications
may be made to the above-described embodiments, the elements of which are to
be
understood as being among other acceptable examples. All such modifications
and
variations are intended to be included herein within the scope of this
disclosure and
protected by the following claims.
-33-