Language selection

Search

Patent 2980067 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent Application: (11) CA 2980067
(54) English Title: SYSTEMS AND METHODS FOR CUSTOMER CONTACT
(54) French Title: SYSTEMES ET PROCEDES PERMETTANT UN CONTACT CLIENT
Status: Deemed Abandoned and Beyond the Period of Reinstatement - Pending Response to Notice of Disregarded Communication
Bibliographic Data
(51) International Patent Classification (IPC):
  • H04M 03/527 (2006.01)
(72) Inventors :
  • JAY, JON R. (United States of America)
  • DASHE, JEREMY A. (United States of America)
  • JUDKINS, BROCK A. (United States of America)
  • KAUFMAN, DONALD L. (United States of America)
  • LIN, YUNG-CHUN (United States of America)
  • SHARPE, RAYMOND P., JR. (United States of America)
  • SULLIVAN, JOSEPH D. (United States of America)
  • WEILAND, THOMAS J. (United States of America)
  • KIDWAI, TAUSEEF (United States of America)
(73) Owners :
  • AMAZON TECHNOLOGIES, INC.
(71) Applicants :
  • AMAZON TECHNOLOGIES, INC. (United States of America)
(74) Agent: SMART & BIGGAR LP
(74) Associate agent:
(45) Issued:
(22) Filed Date: 2010-08-25
(41) Open to Public Inspection: 2011-03-03
Examination requested: 2017-09-21
Availability of licence: N/A
Dedicated to the Public: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): No

(30) Application Priority Data:
Application No. Country/Territory Date
12/547,370 (United States of America) 2009-08-25
12/547,387 (United States of America) 2009-08-25

Abstracts

English Abstract


A user of a personal computing device may identify an item of interest
displayed in a user
interface provided by a network-based service and would like to obtain more
information. The
user may submit one or more electronic contact requests to a contact service
in communication
with a contact distribution system in order to obtain more information. The
contact distribution
system determines accurate, real-time availability of service agents and
enables communications
between the customer and an agent to be established in accordance with user
contact information
provided by the user.


Claims

Note: Claims are shown in the official language in which they were submitted.

WHAT IS CLAIMED IS: Claim 1. 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. Claim 2. The system of Claim 2, 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. Claim 3. The system of Claim 1, wherein the agent status is based upon availability feedback from the service agents. -34- Claim 4. The system of Claim 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. Claim 5. 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; 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. Claim 6. The computer-implemented method of Claim 5, wherein the agent status is based, at least in part, upon availability feedback from the service agents. Claim 7. The computer-implemented method of Claim 5, 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. Claim 8. 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; -35- 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; 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. Claim 9. The system of Claim 8, 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. Claim 10. The system of Claim 8, 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. Claim 11. The system of Claim 8, 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. Claim 12. 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: -36- 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 agents and determining the service agent information from one or more agent responses. Claim 13. The system of Claim 12, 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. Claim 14. 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 responding to the request with the generated service agent information. Claim 15. The computer-implemented method of Claim 14, 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. Claim 16. The computer-implemented method of Claim 14, wherein the service agent information is associated with the request for service agent -37- information by associating identifiers that uniquely identify each of the service agent information and the request for service agent information with each other. -38-
Description

Note: Descriptions are shown in the official language in which they were submitted.

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. 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 CA 2980067 2017-09-21 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 2980067 2017-09-21 [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 2980067 2017-09-21 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. 10020] 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. [0021] 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 CA 2980067 2017-09-21 -4- 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. [0023] 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 marmer 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. 100251 In further embodiments, the contact service and contact distribution service may generate and/or employ additional information 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 CA 2980067 2980067 2017-09-21 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 CA 2980067 2017-09-21 -6- 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 CA 2980067 2980067 2017-09-21 = 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. [00341 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 disuibution 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. [00351 Descriptions of illustrative embodiments of the contact distribution system 120 may be found in U.S. Patent Application No. 12/192,067, entitled "SYSTEM AND METHOD FOR AUTOMATED CALL DISTRIBUTION," the entirety of which is hereby incorporated by reference. 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. 10036] 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 CA 2980067 2017-09-21 -8- 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 (IVR) system 113, and a call recorder system 114. CA 2980067 2980067 2017-09-21 [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. 100421 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 information 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. 100441 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 2980067 2017-09-21 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, IITTPS, 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 2980067 2017-09-21 Figure 2, the customer may submit a request for a user interface including agent status using the customer client device 160. 100491 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). 100521 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 2980067 2017-09-21 [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 43- CA 2980067 2017-09-21 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 2980067 2017-09-21 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. [00611 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 ID 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. 10062] 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 CA 2980067 2017-09-21 -15- or more of the customer country 506, phone number 510, and a time 512 to contact the customer. 100631 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. [00661 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 CA 2980067 2017-09-21 -16- 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 ID) 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 bath 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 2980067 2017-09-21 [0069] As also illustrated in Figure 613, 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 2980067 2017-09-21 [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 2980067 2017-09-21 further include user interface controls such as 710, 720 which allow the customer to end contact with a CSA. 100751 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 communication 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 ED 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 2980067 2017-09-21 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 CSA 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 updated 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 CA 2980067 2980067 2017-09-21 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. [0081] 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. [0082] 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 2980067 2017-09-21 100831 Clause 1. 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. 100851 Clause 3. The system of Clause 1, wherein the contact infaimation 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. [00861 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. CA 2980067 2017-09-21 -23- [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 2980067 2017-09-21 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. 100921 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. 100931 Clause 11. The system of Clause 6, wherein the agent status is based upon availability feedback from the service agents. 100941 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. [00961 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; CA 2980067 2017-09-21 -25- 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. 100981 Clause 16. The computer-implemented method of Clause 15, further comprising providing the user with a service agent in response to a user query. 100991 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. 101001 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 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. [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 2980067 2017-09-21 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 2980067 2017-09-21 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 2980067 2017-09-21 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 information 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. 101221 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 2980067 2017-09-21 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. [01251 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. [0128] Clause 46. The system of Clause 43, wherein contact between the user and the service agent may be reinitiated at a later time. 101291 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 CA 2980067 2017-09-21 -30- 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. 10136] 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 2980067 2017-09-21 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. 101411 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 2980067 2017-09-21 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. CA 2980067 2017-09-21 -33-
Representative Drawing
A single figure which represents the drawing illustrating the invention.
Administrative Status

2024-08-01:As part of the Next Generation Patents (NGP) transition, the Canadian Patents Database (CPD) now contains a more detailed Event History, which replicates the Event Log of our new back-office solution.

Please note that "Inactive:" events refers to events no longer in use in our new back-office solution.

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Event History , Maintenance Fee  and Payment History  should be consulted.

Event History

Description Date
Inactive: IPC expired 2023-01-01
Common Representative Appointed 2020-11-07
Application Not Reinstated by Deadline 2020-10-19
Inactive: Dead - No reply to s.30(2) Rules requisition 2020-10-19
Letter Sent 2020-08-31
Inactive: COVID 19 - Deadline extended 2020-08-19
Common Representative Appointed 2019-10-30
Common Representative Appointed 2019-10-30
Inactive: Abandoned - No reply to s.30(2) Rules requisition 2019-10-17
Inactive: Report - No QC 2019-04-17
Inactive: S.30(2) Rules - Examiner requisition 2019-04-17
Amendment Received - Voluntary Amendment 2018-11-14
Inactive: S.30(2) Rules - Examiner requisition 2018-05-25
Inactive: Report - No QC 2018-05-24
Amendment Received - Voluntary Amendment 2018-05-09
Inactive: Cover page published 2017-10-31
Inactive: First IPC assigned 2017-10-30
Inactive: IPC assigned 2017-10-30
Inactive: IPC assigned 2017-10-27
Letter sent 2017-10-03
Divisional Requirements Determined Compliant 2017-10-02
Letter Sent 2017-10-02
Letter Sent 2017-10-02
Letter Sent 2017-10-02
Application Received - Regular National 2017-09-27
Application Received - Divisional 2017-09-21
Request for Examination Requirements Determined Compliant 2017-09-21
Amendment Received - Voluntary Amendment 2017-09-21
All Requirements for Examination Determined Compliant 2017-09-21
Application Published (Open to Public Inspection) 2011-03-03

Abandonment History

There is no abandonment history.

Maintenance Fee

The last payment was received on 2019-07-30

Note : If the full payment has not been received on or before the date indicated, a further fee may be required which may be one of the following

  • the reinstatement fee;
  • the late payment fee; or
  • additional fee to reverse deemed expiry.

Patent fees are adjusted on the 1st of January every year. The amounts above are the current amounts if received by December 31 of the current year.
Please refer to the CIPO Patent Fees web page to see all current fee amounts.

Fee History

Fee Type Anniversary Year Due Date Paid Date
MF (application, 6th anniv.) - standard 06 2016-08-25 2017-09-21
MF (application, 2nd anniv.) - standard 02 2012-08-27 2017-09-21
Application fee - standard 2017-09-21
MF (application, 4th anniv.) - standard 04 2014-08-25 2017-09-21
Request for examination - standard 2017-09-21
MF (application, 3rd anniv.) - standard 03 2013-08-26 2017-09-21
Registration of a document 2017-09-21
MF (application, 7th anniv.) - standard 07 2017-08-25 2017-09-21
MF (application, 5th anniv.) - standard 05 2015-08-25 2017-09-21
MF (application, 8th anniv.) - standard 08 2018-08-27 2018-08-01
MF (application, 9th anniv.) - standard 09 2019-08-26 2019-07-30
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
AMAZON TECHNOLOGIES, INC.
Past Owners on Record
BROCK A. JUDKINS
DONALD L. KAUFMAN
JEREMY A. DASHE
JON R. JAY
JOSEPH D. SULLIVAN
RAYMOND P., JR. SHARPE
TAUSEEF KIDWAI
THOMAS J. WEILAND
YUNG-CHUN LIN
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
Abstract 2017-09-20 1 15
Description 2017-09-20 33 1,600
Claims 2017-09-20 5 150
Drawings 2017-09-20 12 221
Description 2017-09-21 35 1,695
Claims 2017-09-21 4 110
Abstract 2017-09-21 1 20
Representative drawing 2017-10-30 1 17
Description 2018-11-13 36 1,722
Claims 2018-11-13 4 135
Acknowledgement of Request for Examination 2017-10-01 1 174
Courtesy - Certificate of registration (related document(s)) 2017-10-01 1 102
Courtesy - Certificate of registration (related document(s)) 2017-10-01 1 102
Courtesy - Abandonment Letter (R30(2)) 2019-12-11 1 159
Commissioner's Notice - Maintenance Fee for a Patent Application Not Paid 2020-10-12 1 537
Amendment / response to report 2018-11-13 14 556
Amendment / response to report 2017-09-20 12 426
Courtesy - Filing Certificate for a divisional patent application 2017-10-02 1 150
Amendment / response to report 2018-05-08 2 78
Examiner Requisition 2018-05-24 6 339
Examiner Requisition 2019-04-16 3 212