CA3109728C - Connected machine initiated service - Google Patents
Connected machine initiated service Download PDFInfo
- Publication number
- CA3109728C CA3109728C CA3109728A CA3109728A CA3109728C CA 3109728 C CA3109728 C CA 3109728C CA 3109728 A CA3109728 A CA 3109728A CA 3109728 A CA3109728 A CA 3109728A CA 3109728 C CA3109728 C CA 3109728C
- Authority
- CA
- Canada
- Prior art keywords
- user device
- registered
- agent
- request
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004891 communication Methods 0.000 claims abstract description 190
- 230000003993 interaction Effects 0.000 claims abstract description 82
- 230000004044 response Effects 0.000 claims description 52
- 238000000034 method Methods 0.000 claims description 50
- 239000003795 chemical substances by application Substances 0.000 description 165
- 230000008569 process Effects 0.000 description 17
- 238000013515 script Methods 0.000 description 14
- 238000004590 computer program Methods 0.000 description 13
- 238000012545 processing Methods 0.000 description 10
- 230000009471 action Effects 0.000 description 9
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 238000007726 management method Methods 0.000 description 7
- 238000013459 approach Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 230000000007 visual effect Effects 0.000 description 6
- 230000002452 interceptive effect Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000000977 initiatory effect Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013021 overheating Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000002950 deficient Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000003997 social interaction Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013154 diagnostic monitoring Methods 0.000 description 1
- 230000003292 diminished effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000005641 tunneling Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/50—Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
- H04M3/51—Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing
- H04M3/5133—Operator terminal details
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/53—Network services using third party service providers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2203/00—Aspects of automatic or semi-automatic exchanges
- H04M2203/60—Aspects of automatic or semi-automatic exchanges related to security aspects in telephonic communication systems
- H04M2203/6009—Personal information, e.g. profiles or personal directories being only provided to authorised persons
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2203/00—Aspects of automatic or semi-automatic exchanges
- H04M2203/60—Aspects of automatic or semi-automatic exchanges related to security aspects in telephonic communication systems
- H04M2203/6081—Service authorization mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/50—Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
- H04M3/51—Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing
- H04M3/5166—Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing in combination with interactive voice response systems or voice portals, e.g. as front-ends
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Telephonic Communication Services (AREA)
- Electrical Discharge Machining, Electrochemical Machining, And Combined Machining (AREA)
- Devices That Are Associated With Refrigeration Equipment (AREA)
Abstract
Description
TECHNICAL FIELD
The following disclosure relates generally to communications between a device and a contact center.
BACKGROUND
A communications system may provide interactions among a user device, a contact center, and registered devices to resolve events associated with the one or more register devices.
SUMMARY
In a general aspect, the subject matter described in this specification can be embodied in methods that include the actions of receiving, by a contact center, event data that includes an identification of a registered device and a state of the registered device, where the registered device is different from the user device;
determining, by the contact center and based on the event data, a resource requirement for the communications session between the user device and the agent device; and generating, by the contact center and based on the resource requirement, routing information that enables the user device to establish a communications session with the agent device without a need for a user of the user device to provide the identification of the registered device to an agent of the agent device.
Implementations may include one or more of the following features. For example, the routing information for determining an inbound routing decision may be stored.
Contact information that includes a reserved contact for establishing the communications session with the agent device may be transmitted from the contact center. A request to establish the communications session with an agent device Date recue/Date received 2023-05-25 may be received from the user device and by the contact center. The contact center may determine that the request corresponds to the routing information.
In response to determining that the request corresponds to the routing information, the request may be routed to establish the communications session between the user device and the agent device.
To transmit the contact information, the contact information may be transmitted to the user device. To transmit the contact information, the contact information may be transmitted to a digital service interface that is different from the user device.
The reserved contact may be a reserved telephone number. To determine that the request corresponds to the routing information, the contact center may determine, based on a dialed number identification service (DNIS), that the request includes the reserved telephone number.
The identification of the registered device and the state of the registered device may be provided to the agent device. A dynamically generated message to be presented to the user of the user device during the communications session between the user device and the agent device may be determined by the contact center based on the event data. In response to determining that the request corresponds to the routing information, after establishing the communications session between the user device and the agent device, the contact center may communicate the dynamically generated message to the user device for presentation to the user.
Contact information of the user device may be identified. A request to establish the communications session between the user device and the agent device may be transmitted to the user device by the contact center. The contact center may determine that the request has been accepted by the user device. In response to determining that the request has been accepted by the user device, the contact center may establish the communications session between the user device and the agent device based on the routing information. The identification of the registered device and the state of the registered device may be provided to the agent device.
Registered device profiles of one or more registered devices may be stored at the contact center. To determine the resource requirement for the communications session between the user device and the agent device, it may be determined that the identification of the registered device matches with a particular registered device profile of the registered device profiles. The resource requirements may be determined based on the particular registered device profile.
To determine the resource requirement for the communications session between the user device and the agent device, a service level agreement associated with the registered device may be retrieved based on the identification of the registered device. The resource requirement based on the service level agreement may be determined. To generate the routing information, the routing information that enables the user device to establish the communications session with the agent device may be generated by the contact center and based on the resource requirement without a need for a user of the user device to provide the state of the registered device to the agent of the agent device.
In another general aspect, the subject matter described in this specification can be embodied in methods that include the actions of determining, by a digital service interface, a state of a registered device that is different from the user device;
transmitting, to the contact center and by the digital service interface, first event data that includes an identification of the registered device and the state of the registered device; and providing, to a user of the user device, second event data that includes the state of the registered device and information that enables the user to establish the communications session with the contact center.
Implementations may include one or more of the following features. For example, to determine the state of the registered device, data from the registered device
To transmit the first event data to the contact center, the registered device may be communicated, using a first communications protocol, to obtain the state of the registered device. The first event data that includes the state of the registered device may be generated, based on a second communications protocol that is different from the first communications protocol. The first event data to the contact center may be transmitted using the second communications protocol.
To provide the second event data to the user, the second event data may be presented to the user via a display of the digital service interface. To provide the second event data to the user, the second event data may be transmitted to the user device. To provide the second event data to the user, the information that enables the user to establish the communications session with the contact center may be received from the contact center.
After the communications session is established between the user device and the contact center, a request from the contact center to obtain additional data associated with the registered device may be received by the digital service interface. In response to receiving the request from the contact center, the additional data may be obtained by the digital service interface from the registered device. The additional data to the contact center may be transmitted by the digital service interface.
The digital service interface may be embedded in the registered device. The digital service interface may be an application executed by the user device. The digital service interface may be implemented on a device that is different from the .. registered device and the user device. The information that enables the user to establish the communications session with the contact center may include a telephone number. The information that enables the user to establish the communications session with the contact center may include scripts that are
In one embodiment, there is provided a computer-implemented method for establishing a communications session between a user device and an agent device. The method involves receiving, by a processor associated with a contact center, prior to start of a communications session with the user device, event data that includes an identification of a registered device and a state of the registered device, wherein the registered device is different from the user device. The method further involves determining, by the processor, a resource requirement based on the event data, the determining of the resource requirement being in anticipation of an interaction establishing the communications session with the user device.
The method further involves generating, by the processor, based on the resource requirement, routing information for routing the interaction to the agent device, wherein an agent associated with the agent device is identified as satisfying the resource requirement. The method further involves after generating the routing information, identifying, by the processor, a request to initiate the interaction and determining, by the processor, whether the request is related to the generated routing information. The method further involves, in response to determining that the request is related to the generated routing information, routing the request to the agent device, wherein the routing is without input from the user device, during the interaction, of the identification of the registered device, and wherein the routing establishes the communications session between the user device and the agent device.
In another embodiment there is provided a computer-implemented system. The system includes one or more processors and one or more non-transitory computer-readable storage devices storing instructions that, when executed by the one or more processors, cause the one or more processors to perform respectively operations including: receiving, prior to start of a communications session with a user device, event data that includes an identification of a registered device and a state of the registered device; determining, based on the event data, a resource
generating, based on the resource requirement, routing information for routing the interaction to the agent device, wherein an agent associated with an agent device is identified as satisfying the resource requirement; after generating the routing information, identifying a request to initiate the interaction; determining whether the request is related to the generated routing information; and in response to determining that the request is related to the generated routing information, routing the request to the agent device. The routing is without input from the user device, during the interaction, of the identification of the registered device. The routing establishes the communications session between the user device and the agent device.
In another embodiment there is provided a computer-implemented method for managing a communications session between a user device and an agent device of a contact center. The method involves determining, by a digital service interface, a state of a registered device. The registered device is different from the user device. The method further involves transmitting to the contact center and by the digital service interface, event data that includes an identification of the registered device and the state of the registered device. In response to receipt of the event data, a server of the contact center is configured to: dynamically generate a message; transmit the dynamically generated message to the digital service interface; and prior to receipt by the contact center of a request for an interaction related to the event data from a user of the registered device, and in anticipation of the interaction for establishing the communications session: identify an agent of the contact center, the agent being identified as having skills for handling the interaction; and generate routing information for routing the interaction to the agent.
The generating the routing information includes determining contact information for establishing a communications session between the user device and a device of the identified agent. The method further involves receiving and displaying, by the digital service interface, the dynamically generated message for prompting action by a user of the user device. In response to the action, the request for the interaction is transmitted to the contact center. The method further involves
In another embodiment there is provided a computer-implemented system including one or more processors and one or more non-transitory computer-readable storage devices storing instructions that when executed by the one or more processors cause the one or more processors to perform operations including: determining a state of a registered device. The registered device is different from a user device. The operations further include transmitting, to a contact center, event data that includes an identification of the registered device and the state of the registered device. In response to receipt of the event data, a server of the contact center is configured to: dynamically generate a message;
transmit the dynamically generated message to a digital service interface; and prior to receipt by the contact center of a request for an interaction related to the event data from a user of the registered device, and in anticipation of the interaction for establishing a communications session, identify an agent of the contact center, the agent being identified as having skills for handling the interaction, and generate routing information for routing the interaction to the agent. The generating the routing information includes determining contact information for establishing a communications session between the user device and a device of the identified agent. The operations further include receiving and displaying the dynamically generated message for prompting action by a user of the user device. In response to the action, the request for the interaction is configured to be transmitted to the contact center. The operations further include determining whether the request is related to the generated routing information; in response to determining that the request is related to the generated routing information, routing the request to the device of the identified agent; and establishing a communications session between the user device and the device of the identified agent in response to the request.
The operations further include transmitting, to a contact center, event data that includes an identification of the registered device and the state of the registered device. In response to receipt of the event data, a server of the contact center is configured to: dynamically generate a message; transmit the dynamically generated message to a digital service interface; and prior to receipt by the contact center of a request for an interaction related to the event data from a user of the registered device, and in anticipation of the interaction for establishing a communications session: identify an agent of the contact center, the agent being identified as having skills for handling the interaction; and generate routing information for routing the interaction to the agent. The generating the routing information includes determining contact information for establishing a communications session between the user device and a device of the identified agent. The operations further include receiving and displaying the dynamically generated message for prompting action by a user of the user device. In response to the action, the request for the interaction is transmitted to the contact center. The operations further include determining whether the request is related to the generated routing information; in response to determining that the request is related to the generated routing information, routing the request to the device of the identified agent; and establishing the communications session between the user device and the device of the identified agent in response to the request.
In another embodiment there is provided a computer-implemented method for establishing a communications session between a plurality of user devices. The method involves the steps of: receiving, by a processor associated with a contact center, prior to the start of the communications session between the plurality of user devices, event data that includes an identification of a registered device and a state of the registered device from one of the plurality of user devices;
determining, by a digital service interface, a state of the registered user device that is different from another user device. The registered user device is machine-
automatically transmitting, to a contact center and by the digital service interface, first event data that includes the identification of the registered user device and the state of the registered user device; providing, to a user of the other user device, second event data that includes the state of the registered user device and information that enables the user to establish a communications session with the contact center; and initiating a connection to the contact center, by the user. The user is automatically routed to an agent determined by the contact center appropriate for handling based on the first event data received.
In another embodiment there is provided a computer-implemented system including one or more processors and one or more non-transitory computer-readable storage devices storing instructions that, when executed by the one or more processors, cause the one or more processors to perform respectively operations. The operations include receiving, by a processor associated with a contact center, prior to the start of the communications session between the plurality of user devices, event data that includes an identification of a registered device and a state of the registered device from one of the plurality of user devices, and determining, by a digital service interface, the state of a registered user device that is different from an other user device. The registered user device is machine-connected. The operations further include determining, by the processor, a routing decision based on the event data, the routing decision being in anticipation of an interaction establishing the communications session; automatically transmitting, to a contact center and by the digital service interface, first event data that includes the identification of the registered user device and the state of the registered user device; providing, to a user of the other user device, second event data that includes the state of the registered user device and information that enables the user to establish a communications session with the contact center; initiating a connection to the contact center, by the user. The user is automatically routed to an agent determined by the contact center appropriate for handling based on the first event data received. The operations further include receiving, by the digital
The details of one or more implementations are set forth in the accompanying drawings and the description below. Other potential features and advantages will become apparent from the teachings herein.
BRIEF DESCRIPTION OF THE FIGURES
FIG. 1 is a block diagram of a communications system that enables interactions among a user device, a contact center, and one or more registered devices to resolve events associated with the one or more registered devices.
FIG. 2 is a block diagram of a communications system that illustrates a stand-alone digital service interface providing interactions among a user device, a contact center, and a registered device.
FIG. 3 is a block diagram of a communications system that illustrates a digital service interface embedded in a registered device to provide interactions among a user device, a contact center, and the registered device.
FIG. 4 is a block diagram of a communications system that illustrates a digital service interface being installed as an application running on a user device to provide interactions among the user device, a contact center, and a registered device.
FIG. 6 is a flow chart illustrating an example of a process for a contact center to determine routing information for establishing a communications session between a user device and an agent device based on an event associated with a registered device.
FIG. 7 is a flow chart illustrating an example of a process for a digital service interface to provide an interface for managing a communications session between a user device and a contact center.
DETAILED DESCRIPTION
A company (or an enterprise, which is used in this description interchangeably) may wish to enable its customers to contact it through use of a contact center via any of multiple different communications channels (e.g., phone, email, chat, SMS
or another communications channel that supports communications between a customer and a service/product provider). For example, a failure tied to a defective product that the company has sold to a customer may lead the customer to engage a customer service call with an agent through the contact center. A contact center may be a department within an organization or enterprise that is responsible for handling user-interactions for service and/or sales, such as (but not limited to), a contact center, branch store, administrative office, etc. ¨ hereafter referred to as "contact center." Critical in this process is the ability of the customer and/or the contact center to identify the product through some unique "product identifier' (e.g., a brand or product name, a model or serial number, a version number, etc.).
There are several conventional ways to communicate the product identifier to a contact center prior to the service call. A first approach is to have paper warranty cards filled out and submitted to the company when a new product (e.g., an industrial furnace, AC unit, or enterprise server) is purchased or installed. This process could also be completed by paper or electronically. In either case, after sending in the warranty card or submitting the information electronically, there is no longer any physical association with the purchased/installed product. Therefore, later on when service or sales support is required for that particular product, the customer must spend significant time conveying the identification of the product to the contact center.
This technology limitation, along with the fact that most customers do not know this unique product identifier information to begin with, makes the second approach inadequate for many product support situations.
A third approach is a connected-machine that gives indications about itself to a diagnostic tool or series of diagnostic monitoring services. A connected-machine may be a product, device, system, or apparatus that is embedded with electronics, software, sensors, and/or network connectivity to enable the machine to connect to a network and to collect and exchange data with another product, device, system, or apparatus through the network. When multiple connected-machines are connected through a public or a private network, they may be referred to collectively as the "Internet of Things (loT)." For example, an enterprise server may be embedded with a temperature sensor, where the enterprise server may send a warning to an administrator in the event that the temperature sensed by the temperature sensor exceeds a threshold value. The administrator may then contact the contact center for further assistance. This method can be more efficient, but would still fail when the product itself cannot function properly to deliver diagnostic information. Moreover, when a product sends indications to another device or to a contact center, the contact center may still not get any warning regarding the customer service call that may occur later, and may still route the customer service call blindly to a wrong agent or play a series of IVR
prompts to collect information in order to route the call to the appropriate agent. In addition,
As described above, without specific input by the customer, in many instances there is little or no electronic data readily available for the contact center to identify the product and/or to determine the most appropriate resources available to address the problem. In other words, the customer has to answer questions about the registered product before the customer is able to be connected the most appropriate agent. The product information may be difficult to identify because (i) the customer may not have this product information memorized, (ii) the customer may not have the product information readily at hand at the moment the customer contacts the company trying to trouble-shoot a problem or get sales support, (iii) the product information may be printed on a label hidden inside the body of the product, (iv) there may be several sets of numbers on the label, or (v) the product information may be on a warranty card instead of on the product. Moreover, oftentimes the format and content of the product-identifying information is very complex and arbitrary (e.g., alpha-numeric strings of various lengths and patterns, proper names of brands or models, version numbers, etc.). Furthermore, even when the customer does know this information, technical limitations may make it difficult to accurately and easily convey this information to the contact center when contacting the company for support, due to the complex and arbitrary format of the product identifier. Relatedly, the customer may not have sufficient information to identify the issue with the product, as the customer may not understand the current state of the product or the error codes being displaying. Thus, even after the .. customer is connected to an agent, the agent may not have the right skill set to resolve the issue, or the agent may not have sufficient information to present to the customer additional cross-sell or up-sell opportunities. These situations may create poor usability, high effort and low satisfaction for the customer, as well as inefficiency, high cost-to-serve, and diminished incremental revenue potential for the company or enterprise.
A connected-machine initiated routing, like that described in more detail below, may allow a contact center to use an event associated with a connected-machine
Moreover, based on the event data, the contact center may generate a personalized greeting that is associated with both the customer and the event generated by the connected-machine. In doing so, several advantages may be achieved. First, the reduced agent or technician time required to identify the product may save costs for the company. Second, the user experience with a contact center may improve because when the customer calls the contact center, the call will be automatically routed to an agent that is skilled to resolve the issues related to the event without additional customer inputs. Third, a higher first contact resolution (FCR), improved .. sales closure rates, decreased transfers, and fewer repeat calls may be achieved by being able to get the customer interaction to the best skilled agent per product specialization. Fourth, the enterprise may benefit from improved customer satisfaction as well as the potential to capture cross-sell or up-sell opportunities.
Fifth, pre-registered device profile data allows services to be delivered "just in time"
to the customer service and/or sales operations, enabling the owner of the enterprise product to reduce the amount of time necessary to identify the product in need of service and/or sales.
However, even if a contact center may be configured to determine a routing decision based on an event associated with a connected-machine, the contact center still may not be configured to process many different protocols across the many different types of connected-machines to process the users' demands effectively. Moreover, a means to proactively and dynamically interact with the customer is also desirable to complement the connected-machine initiated routing capability. A digital service interface, like that described in more detail below, may act as an automated concierge at the customer's end to proactively inform the customer about events associated with connected-machines, and to facilitate communications among one or more connected-machines, the customer, and the
The digital service interface is connected to the customer service environment (and thus can ascertain resource availability, skill, skill level, service and/or sales priority, estimated wait times, etc.) of a contact center, and can be configured to provide relevant service and/or sales options (e.g. service/sales need, priority, channel choice, phone number, call back, service appointment, etc.) for the customer back through its display. Lastly, the digital service interface could also be set up and configured for a product that has previously been purchased/deployed. This allows the digital service interface to support a much larger addressable market than alternative approaches that are currently available.
In doing so, several additional advantages may be achieved. First, the user experience with a contact center may further improve because issues associated with an event may be resolved in a timely and effective manner. Second, revenue for the company may improve due to higher cross-/up-sell opportunities that could be delivered through the digital service interface associated with a particular product. Third, the addressable market may increase, since the digital service interface can be used not only to support new products, but also can be applied to existing products that have already been sold/deployed into the market Fourth, a physical and intelligent representative of the product that is separate from the product itself may be enabled, which ensures a robust representative that can maintain continuity when the product loses communications with the network.
This service/method thus enables the deployment of interaction-enabled solutions between communications devices and a contact center. In some implementations, the service/method enables users to interact with a multi-channel application.
The application is referred to as multi-channel in that it enables users to contact and interact with a multi-channel interaction platform via any of multiple different
Alternatively, the user may instead choose to contact the multi-channel platform by video. The video may be interactive (e.g., with an agent), or pre-recorded (e.g., a video demonstrating how to fix malfunctioning device or a sales/marketing video).
In some implementations, the user may contact the multi-channel platform using bundled channels. For example, the user may use a combination of text and voice to communicate with the multi-channel platform. In some implementations, channels may be switched during a communications session. For example, a request to communicate with the multi-channel platform may be made by an email, and a response for establishing the communications session may be made by voice.
FIG. 1 is a block diagram of a communications system 100 that provides interactions among a user device 110, a contact center 102, and one or more registered devices 130-1 to 130-n to resolve events associated with the one or more register devices 130-1 to 130-n. The term interaction is used generally to refer to any real-time and non-real time interaction that uses any communication channel including, without limitation telephony calls (PSTN or VolP calls), emails, vmails (voice mail through email), video, chat, screen-sharing, text messages, social media messages, web real-time communication (e.g. WebRTC calls), and the like. The communications system 100 includes a user device 110, a communications network 120, a contact center 102, a web server 122, one or more registered devices 130-1 to 130-n, and a digital service interface 140.
Additionally or alternatively, the user may indicate a desire to request a service and/or sales by inputting and sending, via manual selection or otherwise, a SMS message that includes a short code and a keyword associated with the contact center into the user device 110. Additionally or alternatively, the user may indicate a desire to request a service and/or sales by inputting, via manual selection or otherwise, a uniform resource locator (URL) associated with the contact center into the user device 110 to initiate a chat session with the customer service and/or sales department. Additionally or alternatively, the user may indicate a desire to request a service and/or sales by inputting and sending, via manual selection or otherwise, an email that includes an email address associated with the contact center into the
Inbound and outbound telephony calls from and to the user device 110 may traverse a telephone, cellular, and/or data communications network 120 depending on the type of device that is being used. For example, the communications network 120 may include a Ovate or public switched telephone network (PSTN), local area network (LAN), private wide area network (WAN), Integrated Services Digital Network (ISDN), Digital Subscriber Line (xDSL), radio, television, cable, satellite, a public wide area network such as the Internet, and/or any other delivery or tunneling mechanism for carrying data. The communications network 120 may also include a packet-switched data network based on the Internet protocol (IP) or asynchronous transfer mode (ATM), and may support voice using, for example, Voice-over-IP, Voice-over-ATM, or other comparable protocols used for voice data communications. The communications network 120 may also include a wireless carrier network including a code division multiple access (COMA) network, global system for mobile communications (GSM) network, or any wireless network/technology conventional in the art, including but to limited to 3G, 4G, LTE, and the like.
In general, the contact center 102 manages resources (e.g. agents, computers, and telecommunication equipment) to enable delivery of services via telephone or other communication mechanisms. Such services may vary depending on the type of contact center, and may range from customer service to help desk, emergency response, telemarketing, order taking, and the like. In some implementations, the contact center 102 may be an in-house facility to an enterprise (e.g., a business or corporation) for serving the enterprise in performing the functions of sales and service relative to the products and services available through the enterprise. In some other implementations, the contact center 102 may be a third-party service provider that hosts the functions for an enterprise. The contact center 102 may be deployed in equipment dedicated to the enterprise or third-party service provider, and/or deployed in a remote computing environment such as, for example, a
The switch/media gateway 104 is coupled to the communications network 120 for receiving and transmitting telephony calls between end users and the contact center 102. In some implementations, the switch/media gateway 104 may include a telephony switch configured to function as a central switch for agent level routing within the contact center. The telephony switch may be a hardware switching system or a soft switch implemented via software. For example, the switch/media gateway 104 may include an automatic call distributor, a private branch exchange (PBX), an IP-based software switch, and/or any other switch with specialized hardware and software configured to receive Internet-sourced calls and/or telephone network-sourced calls from a customer, and route those calls to, for example, an agent device. The switch/media gateway 104 may establish a communications session between the calling customer and the agent device, by establishing, for example, a telephony connection between the user device 110 and one of the agent devices 156-1 to 166-k. The switch/media gateway 104 may also include an inbound call queue, an outbound call request queue, an automatic call distributor ("ACD") administrator, and/or contact information of a plurality of agents associated with the agent devices 156-1 to 156-k.
The communication server 108 is coupled to the switch/media gateway 104, and in general serves as an interface between the switch/media gateway 104 and the
The interactive media response (IMR) server 106 may be referred to as a self-help system, virtual assistant, or the like. The IMR server 106 may be similar to an interactive voice response (IVR) server, except that the IMR server 106 is not restricted to voice, but may cover a variety of media channels including voice.
Taking voice as an example, however, the IMR server 106 may be configured with an IMR script for querying calling customers on their needs. For example, a contact center for a bank may tell callers, via the IMR script, to "press 1" if they wish to get an account balance. The IMR script may be written in a scripting language such as, for example, voice extensible markup language (VoiceXML) or speech application language tags (SALT). Through continued interaction with the IMR, customers may complete service and/or sales without needing to speak with an agent. The IMR server 106 may also ask an open ended question such as, for example, "How can I help you?" and the customer may speak or otherwise enter a reason for contacting the contact center. The customers response may then be used by the routing server 112 to route the call to an appropriate contact center resource.
In some implementations, the IMR server 106 may additionally include a SMS
handling system configured to handle a request to interact with a contact center
messages from or place SMS messages to communications devices, such as the user device 110, and respond to the SMS messages in accordance with a SMS
program. The SMS program may be a script written in a scripting language such as, for example, extensible markup language (XML). In some implementations, the IMR server 106 may additionally include an email handling system configured to handle a request to interact with a contact center using an email channel.
The email handling system may receive user emails from or place emails to communications devices, such as the user device 110, and respond to the emails in accordance with an email program. The email program may be a script written in a scripting language such as, for example, extensible markup language (XML).
In some implementations, the IMR server 106 may additionally include a chat handling system configured to handle a request to interact with a contact center using a chat channel. The chat handling system may receive user message from or places messages in a chat session to communications devices, such as the user device 110, and respond to the messages in accordance with a chat program. The chat program may be a script written in a scripting language such as, for example, extensible markup language (XML).
.. The routing server 112 is configured to interact with the communication server 108 to select an appropriate agent for processing the call if a call is to be routed to an agent. Each agent may be assigned to one of the agent devices 166-1 to 156-k, where k is an integer. The selection of an appropriate agent for routing an inbound call may be based, for example, on a combination of routing strategies employed by the routing server 112, and further based on information about agent availability, skills, agent performance metrics, information known about the inbound or outbound call, and other routing parameters provided, for example, by a statistics server 114. For example, a routing strategy may be based on a data-driven strategy, where customer information related to existing back-end data (e.g., purchase history, or collected IVR data) may be used to determine a routing decision. As another example, a routing strategy may be based on a business priority routing strategy, where the routing server 112 may query a contact center database 164 to retrieve business information such as contact information and
server 106) and/or the caller's historical information may also be provided to the agent device for aiding the agent in better servicing the call.
Each agent device of the agent device 166-1 to 166-k may include a telephone adapted for regular telephone calls, VolP calls, and the like. The agent device 156-I to 166-k may also include a computer for communicating with one or more servers of the contact center 102 and performing data processing associated with contact center operations, and for interfacing with customers via voice and other multimedia communication mechanisms. In some implementations, in addition to real-time interactions, deferrable (also referred to as back-office or offline) interactions/activities may also be routed to the contact center agents. Such deferrable activities may include, for example, responding to emails, responding to letters, or any other activity that does not entail real-time communication with a customer. The interaction (iXn) server 162 may be configured to interact with the routing server 112 for selecting an appropriate agent to handle the deferrable activity. Once assigned to an agent, the iXn server 162 may push the activity to
In general, the contact center database 164 may store one or more databases relating to agent data (e.g. agent profiles, skills, schedules, etc.), business rule data (e.g. customer profiles, service level agreement, etc.), interaction data (e.g. details of each interaction with a customer, including reason for the interaction, disposition data, time on hold, handle time, etc.), registered device profile data (e.g, serial numbers of registered device, model numbers of registered devices, etc.), and the .. like. In some implementations, some of the data may be maintained in a customer relations management (CRM) database hosted at a remote location. The contact center database 164 may take form of a hard disk or disk array as is conventional in the art, and may be implemented using for example, Cassandra or any NoSQL
database. The contact center database 164 may also be a SQL database and may be managed by any database management system such as, for example, Oracle, IBM DB2, Microsoft SQL server, Microsoft Access, PostgreSQL, MySQL, FoxPro, and SQLite. The contact center database 164 may provide data in response to a query from a contact center component. For example, the routing server 112 may query customer information from the contact center database 164 based on an ANI
number or other information collected by the IMR server 106.
The statistics server 114 is configured to collect and aggregate statistics associated with the contact center 102, such as, for example, average waiting time, abandonment rate, agent occupancy, and the like. The reporting server 116 is configured to generate reports from data aggregated by the statistics server 114.
Such reports may include near real-time reports or historical reports concerning the state of resources. The reports may be generated automatically or in response to specific requests from a requestor (e.g. agent/administrator, contact center application, and/or the like).
In general, the event server 168 is configured to determine, based on data representing an event associated with a registered device, actions for assisting a customer to resolve the event. The data representing an event associated with a
In some implementations, after selecting the appropriate agents, the event server 168 may interact with the communication server 108 to place a call in the outbound queue to proactively reach the customer. For example, upon learning that a registered device (e.g., an enterprise server) has failed, the event server 168 may allocate the necessary resources (e.g., agent and information needed to handle the issue) and then interacts with the communication server 108 to place a call to the customer notifying the issue.
In some implementations, the event server 168 may be configured to dynamically generate a message for the customer that is uniquely associated with the registered device and the associated event. For example, upon learning that a water filter of a refrigerator needs to be replaced, the event server 168 may generate a message "Thank you for calling the enterprise. Your refrigerator informed us that your water filter needs to be replaced. Are you calling to order a new water filter?" that is to be presented to the customer. The dynamically generated message may be added to an automated phone script, where the
The recommendation server 160 is configured to determine one or more recommendations for a customer based on the event data and data associated with the customer that is stored in the contact center database 154. The recommendations may include up-sell or cross-sell opportunities. For example, if an enterprise server has been experiencing elevated temperatures in a data center, based on data and business rules stored in the contact center database 164, the recommendation server 160 may identify a data-center temperature management solution that the enterprise has recently released, so that the agent may timely present this solution to the customer during the communications session. As another example, the recommendation server 160 may identify a product that directly related to the registered device, such as a replacement filter for a refrigerator or HVAC system. As another example, the recommendation server 160 may identify another product and/or service that is outside of the scope of the registered device, as such a similar product that other customers have purchased.
In some implementations, the recommendation server 160 may push a recommendation to an agent device, such that the agent of the agent device may proactively contact the customer on the recommendation at a later time.
The registered devices 130-1 to 130-n are connected-machines that have been registered with the companies that have manufactured or have been contracted to service these devices or products. A registered device (e.g., 130-1) may be a household appliance (e.g., a smart refrigerator), an enterprise product (e.g., an enterprise server), a consumer electronics product (e.g., a smart watch), a communications device (e.g., user device 110), or any other suitable products.
The companies may service these registered products using the contact center 102.
Each of the registered devices 130-1 to 130-n, where n is any integer, may be a .. connected-machine that is embedded with electronics, software, sensors, and/or network connectivity to enable the registered device collect and exchange data with another registered device 130-1 to 130-n, the digital service interface 140, the user device 110, and/or or the contact center 102. The inter-connections among
(loT).
In some implementations, a registered device may communicate with another device via the communications network 120. For example, the registered device 130-n may communicate with the contact center 102 via the communications network 120. In some implementations, a registered device may communicate with another device directly. For example, the registered device 130-n may communicate with the registered device 130-1 and/or the user device 110 directly via the Bluetooth standard, the Message Queuing Telemetry Transport (MOTT) protocol, the Constrained Application Protocol (CoAP) protocol, or any other suitable device-to-device communications protocol. In some implementations, a registered device may communicate with another device via the digital service interface 140. For example, the registered device 130-1 may communicate with the contact center 102 and/or the user device 110 via the digital service interface 140. The data transmitted by the registered devices 130-1 to 130-n may include an identification of the registered device, a state of the registered device, a time-stamp associated with an event, data generated by sensors embedded in the registered device, or any other applicable data. The data communicated by the registered devices 130-1 to 130-n may be encoded in one or more protocols that may be public or proprietary to an enterprise.
In general, the digital service interface 140 provides a communications interface for the user device 110, the registered devices 130-1 to 130-n, and the contact center 102. In some implementations, the digital service interface 140 may be embedded in a registered device. For example, the digital service interface may be integrated to a smart home appliance that is a registered device. In some other implementations, the digital service interface 140 may be a device that is peripheral to a registered device. For example, the digital service interface may be implemented on a single-board computer (e.g., Raspberry Pi) that co-locates with a rack of enterprise servers that are registered devices. In some other implementations, the digital service interface 140 may be an external digital device that is not co-located with a registered device. For example, the digital service
The digital service interface 140 includes a communications interface 142 and a registered device profile store 144. The communications interface 142 may include input means (e.g., keyboard, touch-screen, microphone, data receiver, barcode reader, scanner, and/or any other suitable input means) and output means (e.g., display, speakers, LED indicators, data transmitter, and/or any other suitable output means). In some implementations, the communications interface 142 may be configured to receive data from the user device 110, the registered devices 1 to 130-n, and/or the contact center 102. For example, the communications interface 142 may receive an indication from a registered device that the registered device is malfunctioning. In some implementations, the communications interface 142 may be configured to transmit data to the user device 110, the registered devices 130-1 to 130-n, and/or the contact center 102. For example, in response to receiving an indication from a registered device that the registered device is malfunctioning, the communications interface 142 may transmit event data to the contact center 102 to initiate a connected-machine-initiated routing for a communications session between the user device 110 and an agent device.
In some implementations, the communications interface 142 may be configured to convert data from a first data format to a second data format. For example, the communications interface 142 may receive data from a registered device, where the data may be formatted in a proprietary format that is used by the enterprise.
The communications interface 142 may convert the received data into a second data format that can be stored in the contact center database 154 before transmitting the data to the contact center 102.
In some implementations, the communications interface 142 may be configured to communicate data using multiple communication protocols. For example, the communications interface 142 may be configured to communicate with a registered device using Bluetooth communication protocol, and the communications interface
In some implementations, the communications interface 142 may be configured to probe a state of a registered device. For example, the communications interface 142 may send a ping message to an enterprise server at a predetermined frequency (e.g., once an hour) to determine that the server is still alive. In the case that the server does not respond to the ping message, the communications interface 142 may send event data to the contact center indicating a potential failure of the server.
The registered device profile store 144 is configured to store profile information associated with one or more registered devices of the registered devices 130-Ito 130-n. In general, data sent from a registered device may include limited identification information about the registered device such as a hardware address of the registered device. Based on the received identification information, the digital service interface 140 may access the registered device profile store 144 to retrieve more information about the registered device such as the model number, the serial number, the date of purchase, any service plan associated with the registered device, customer contact information, event history of the registered device, and/or any other contextual information. The digital service interface may then present the retrieved information or send the retrieved information to the contact center 102 and/or the user device 110.
In some implementations, the digital service interface 140 may be configured to receive an indication of an event from one or more of the registered device to 130-n. In response to receiving the indication, the digital service interface 140 contacts the contact center 102 to obtain contact information that a user may use to contact the contact center 102.
As an example described in more details below in reference to FIG. 3, a smart refrigerator may send an indication to the digital service interface 140 alerting on a need for a water filter replacement. In response to receiving the indication from
In some implementations, the digital service interface 140 may be configured to contact the contact center 102 without receiving an indication of an event from one or more of the registered device 130-1 to 130-n. For example, a server may go offline and cannot provide further communications with the digital service interface 140. In response to determining that the server has not responded to ping messages sent by the digital service interface 140 over a predetermined period of time, the digital service interface 140 may transmit event data that includes an identification and a state of the registered device to the contact center 102.
In some implementations, the digital service interface 140 may be configured to contact the user device 110 before contacting the contact server 102. For example, based on information stored in the registered device profile store 144, the digital .. service interface 140 may determine that a service call is due for a HVAC
system.
The digital service interface 140 may present or send a message to the user notifying a need to schedule the service call, where the message may include contact information for contacting the contact center 102 and/or information related to the HVAC system such as the serial number and the current state of the HVAC
system.
In some implementations, after the communications session between the user device 110 and an agent device (e.g., 156-1) has been established, the digital service interface 140 may be configured to provide the contact center 102 further information on the registered device. For example, after a communications session between the user device 110 and an agent device 156-1 to fix a malfunctioning server has been established, the agent may wish to obtain a current temperature sensor reading of the server. The agent may use the agent device to send a
The web servers 122 may include, for example, social interaction site hosts for a variety of known social interaction sites to which an end user may subscribe, such as, for example, Facebook, Twitter, and the like. The web servers 122 may also provide web pages for the enterprise that is being supported by the contact center 102. For example, end users may browse web pages and get information about the enterprise's products and services. The web pages may also provide a mechanism for contacting the contact center 102, via, for example, web chat, voice call, email, web real time communication (WebRTC), or the like.
The various servers of FIG. 1 may each include one or more processors executing computer program instructions and interacting with other system components for performing the various functionalities described herein. The computer program instructions are stored in a memory implemented using a standard memory device, such as, for example, a random access memory (RAM). The computer program instructions may also be stored in other non-transitory computer readable media such as, for example, a CD-ROM, flash drive, or the like. Also, although the functionality of each of the servers is described as being provided by the particular server, a person of skill in the art should recognize that the functionality of various servers may be combined or integrated into a single server, or the functionality of a particular server may be distributed across one or more other servers without departing from the scope of the embodiments described herein.
FIG. 2 is a block diagram of a communications system 200 that illustrates a stand-alone digital service interface 140 providing interactions among a user device 110, a contact center 102, and a registered device 230. A use case scenario is
A customer, XYZ Corporation, has purchased several racks of enterprise servers in its data centers. One of these servers is the registered device 230, and a technical engineer is assigned to monitor these servers. Attached to or nearby each server is a digital service interface 140 in the form of a peripheral digital display device, where information about the server and its environment can be conveyed back to the contact center 102. For example, the digital service interface 140 may be implemented on a single-board computer (e.g., RaspberryPi) or a smart device such as a tablet. The contact center 102 may be a third-party service provider that performs the functions of servicing the servers for the enterprise. The digital service interface 140 has been preconfigured to store unique product identifying information of the registered device 230 (e.g., the enterprise server's serial number), so there is an association between the registered device 230 and the digital service interface 140.
The registered device 230 may have sensors that allow it to collect information about the surrounding environment (such as temperature, humidity, etc.). In this example, the registered device 230 has experienced over-heating and has started to malfunction. The temperature sensor of the registered device 230 detects that the surrounding temperature has exceeded a threshold, and in response, the registered device 230 may transmit an indication to the digital service interface 140 alerting on the temperature increase.
The contact center 102 may store data and business rules which evaluate how to respond to this type of situation. Based on the received event data from the digital service interface 140 and/or the registered device profiles stored in the contact center database 164, the contact center 102 may determine that (i) the server is a registered device, (ii) the sumounding temperature associated with one of its servers is dangerously high; (iii) this alert is associated with the registered device 230, which is one of the most expensive servers that the enterprise makes; and (iv) this particular machine was purchased by XYZ Corporation, which is one of
In addition, the digital service interface 140 may provide channel options that the technical engineer can select from, using a touch display screen of the digital service interface 140. These channel options may be derived based on data and business rules stored in the contact center 102. For example, the channel options offered may be based on (but not limited to) factors such as (i) the value of the customer (e.g., XYZ Corporation is a high-value customer), where some channel options (e.g, video) are reserved for only the high value customers; (ii) the product value and whether or not it's mission critical (e.g., the registered device 230 is a costly and critical machine); (iii) other products that the same customer may have also purchased (e.g., the contact center 102 may determine that XYZ
corporation has purchased more than one version of this product to support Disaster Recovery/Business Continuity mode for the enterprise servers); the type of event or alert (e.g., the surrounding temperature reading was hot enough to suggest that the machine may have trouble functioning); and (v) skilled resource availability within contact center 102 to support the channel options (e.g., video channel will not be offered if all video-enabled agents are currently busy).
Driven by these data and business rules, the display of the digital service interface 140 offers the technical engineer a range of tailored contact channel options that may include contact information to the contact center 102 ¨ e.g., (1) Receive a callback, (2) Initiate a chat, (3) Have a video interaction, etc. The technical
Moreover, based on data and business rules stored in the contact center 102, the recommendation server 160 of the contact center 102 may determine one or more up-sell/cross-sell opportunities that the agent may present to the technical engineer during the communications session. For example, based on the data that XYZ
Corporation is a high-value customer and that the registered device 230 is experiencing an increase in the surrounding temperature, the recommendation server 160 may identify a data-center temperature management solution that the enterprise has recently released, so that the agent may timely present this solution to the technical engineer.
FIG. 3 is a block diagram of a communications system 300 that illustrates a digital service interface 140 embedded in a registered device 330, where the digital service interface 140 provides interactions among a user device 110, a contact center 102, and the registered device 330. A use case scenario is described below to provide an example of the interactions among the user device 110, the contact center 102, and the registered device 330.
In this example, the customer has bought a registered device 330, which is a smart refrigerator having embedded sensors and an embedded digital service interface 140 that includes a digital display on the front surface of the refrigerator.
Information about the registered device 330 may be signaled to the contact center 102, which may be an in-house facility to an enterprise for performing the functions of sales and service relative to the smart refrigerator. Through one of the embedded sensors, the registered device 330 determines that the water filter of the refrigerator needs to be replaced, and in response, the embedded digital
In this example, the customer notices that the built-in digital display on the front of the refrigerator displayed an alert: "Water filter needs to be replaced. To order new filter, call [the generated phone number]." The customer calls the contact center 102 using the displayed number. Based on the DNIS number of the dynamically generated phone number that the customer call, the contact center 102 is able to determine, not only which model of the registered device 330 the customer owns, but also the event associated with the call. An automated phone script may answer the call with the dynamically generated message: "Thank you for calling the enterprise. Your refrigerator informed us that your water filter needs to be replaced.
Are you calling to order a new water filter?"
After answering "yes," the customer is routed directly to an agent that is a specialist of the registered device 330. In addition, prior to the call, the iXn server of the contact center 102 may have already transmitted information related to the event, such that the agent receiving this call knows the purpose of the customers call without additional customer input.
FIG. 4 is a block diagram of a communications system 400 that illustrates a digital service interface 140 being installed as an application running on a user device
In this example, the customer purchased from an enterprise the registered device 430, which is a new HVAC system. The customer also purchased an extended warranty plan for the registered device 430 from the enterprise, which entitles the customer to free services calls every six months. After a technician from the enterprise installed the HVAC system, the customer downloaded an application that runs as the digital service interface 140 for the registered device 430.
Using the touchscreen display on the user device 110, the technician helped the customer to enter the product identifying information (e.g., the serial number) of the registered device 430 in the digital service interface 140, so that the digital service interface 140 would be uniquely associated with the registered device 430. The technician also entered the customer's contact phone number in the digital service interface 140, so that the enterprise would have this contact information as part of its customer records stored in the contact center database 164. In addition, the digital service interface 140 may store information related to the customer's extended warranty plan.
After six months, the digital service interface 140 identifies that a service is due.
The digital service interface 140 communicates, using a first protocol, with the registered device 430 to determine whether any components of the registered device 430 has failed. The digital service interface 140 then communicates, using a second protocol, with the contact center 102 to transmit event data that includes the identification of the registered device 430, an indication that service is due for the registered device 430, and an indication that no component has failed. In response to receive the event data, an event server 168 of the contact center may determine that the most appropriate way to handle this event is to use a visual IVR application instead of using an agent. In a visual IVR, scripts that are pre-programmed for a voice-based IVR may be translated by an application server into a different programming or scripting language (e.g., HTML5) such that the
"Hello, this is HVAC enterprise calling with an important message about your registered device 430. As part of your extended warranty plan, you are entitled to a free six-month check up by one of our service technicians. Please use the digital service interface to schedule your service call."
The customer may then open the application to execute the digital service interface 104 on the user device 110. The display of the user device 110 presents the customer with a "Visual IVR" of menu options: "Menu: (1) Schedule Check-up .. Service Call; (2) Report HVAC Problem; (3) Order Filter; (4) Other." In this example, the customer selects option (1), where the digital display then provides the customer the options for the days and times to schedule the service call.
The users feedback is provided to the contact center 102, where the I MR server processes the feedback to schedule the service call. The customer's experience .. has thus improved because the enterprise has proactively contacted him with the six-month service reminder, and that it was easy to schedule the service call using the application running on the user device 110.
FIG. 6 is a flow chart illustrating an example of a process 600 for a contact center to determine routing information for establishing a communications session between a user device and an agent device based on an event associated with a registered device. The process 500 is described as being performed by a computer
Referring to FIG. 6, the event server 168 receives event data associated with a registered device (501). For example, referring to FIG. 2, the temperature sensor of the registered device 230 may detect that the surrounding temperature has exceeded a threshold, and in response, the registered device 230 may transmit an indication to the digital service interface 140 alerting on the temperature increase.
In response to receiving an indication from the registered device 230, the digital service interface 140 may transmit, to the contact center 102, event data that includes an identification of the registered device 230 and the state of the registered device 230. The event data may be routed to the event server 158 via a local area network 162.
The event server 158 determines resource requirements for handling the event (503). In some implementations, the event server 168 may determine that the identification of the registered device matches with a particular registered device profile of the registered device profiles. The event server 168 determines the resource requirements based on the particular registered device profile. In some .. implementations, registered device profiles of one or more registered devices are stored at the contact center database 154. The registered device profile may include serial numbers of registered devices, model numbers of registered devices, corresponding customer contact information, etc. In some implementations, service level agreements associated with one or more registered devices are stored at the contact center database 164. The event server 168 may retrieve, based on the identification of the registered device, a service level agreement associated with the registered device. The event server 158 may determine the resource requirement based on the service level agreement. For example, the contact center database 164 may store data and business rules which evaluate how to respond to this type of situation. Based on the received event data from the digital service interface 140 and/or the registered device profiles stored in the contact center database 164, the contact center 102 may determine that (i) the server is a registered device, (ii) the surrounding temperature associated with one
and (iv) this particular machine was purchased by XYZ Corporation, which is one of enterprise's largest and most important customers. Based on the business rules (e.g., the SLA) and the event, the event server 158 may determine the agents that are qualified to service and/or to provide sales for the XYZ Corporation.
The event server 158 generates routing information for establishing a communications session between a user of a user device and an agent device (605). For example, the event server 168 may work with the routing server 112 to generate the routing information. In some implementations, the event server may generate routing information based on a registered device profile. In some implementations, the event server 168 may store the routing information for determining an inbound routing decision. For example, the event server 168 may determine that three contact channel options are available for this customer:
(1) a telephone call, (2) Internet chat, and (3) a video interaction. The event server 168 may interact with the routing server 112 to determine how to route the incoming request for each of these channels, and store the routing information.
The event server 168 may optionally generate a dynamically generated message to be presented to the user (607). For example, based on the event data, the event server 168 may dynamically generate a message indicating that a server has experienced overheating. The message may be sent to the digital service concierge 140 or the user device 110 through an outbound queue using any of the appropriate channels.
The switch/media gateway 104 transmits contact information that includes a reserved contact for establishing the communications session with the agent device (509). In some implementations, the switch/media gateway 104 transmits the contact information to the user device 110. In some other implementation, the switch/media gateway 104 transmits the contact information to a digital service interface that is different from the user device 110. In some implementations, the reserved contact is a reserved telephone number. For example, after the event
The switch/media gateway 104 receives a request to establish a communications session (611). For example, the switch/media gateway 104 may receive an inbound call from the user device 110. The routing server 112 determines whether the request corresponds to the routing information (613). In some implementations, the routing server 112 determines that the request includes the reserved telephone number based on a dialed number identification service (DNIS). For example, the communication server 108 may extract data about the customer interaction such as the caller's telephone number, often known as the automatic number identification (ANI) number, the dialed number, or the customers internet protocol (IP) address, or email address, and communicate with other contact center components such as the routing server 112 in processing the call.
In response to determining that the request corresponds to the routing information, the routing server 112 interacts with the communication server 108 to route the request to the agent device (616). For example, after determining that the number dialed corresponds to the reserved telephone number, the routing server 112 may interact with the communication server 108 to route the request to the agent device for servicing the server.
The recommendation server 160 may optionally determine recommendations associated with the event (617). For example, if an enterprise server has been experiencing elevated temperatures in a data center, based on data and business rules stored in the contact center database 164, the recommendation server 160 may identify a data-center temperature management solution that the enterprise has recently released, so that the agent may timely present this solution to the customer during the communications session.
For example, the iXn server 162 may provide the identification of the registered device and the state of the registered device to the agent device based on customer data such as a customer profile or past interaction history with a customer. In some implementations, the iXn server 162 provides the recommendations associated with the event to the agent device. For example, the recommendation server 160 may interact with the iXn server 162 to push a recommendation to an agent device.
The communication server 108 establishes the communications session between the device and the agent device (619). In some implementations, the communication server 108 presents the dynamically generated message to the user of the user device after establishing the communications session between the user device and the agent device. For example, an automated message may be played to the user asking the user to confirm that the user is calling regarding the service of the enterprise server.
FIG. 6 is a flow chart illustrating an example of a process 600 for a contact center to contact a user device in response to an event associated with a registered device in order to establish a communications session between the user device and an agent device. The process 600 is described as being performed by a computer system comprising one or more computers, for example, the communications system 100 shown in FIG. 1.
.. Referring to FIG. 6, the event server 168 receives event data associated with a registered device (601). For example, referring to FIG. 4, a customer may have purchased an extended warranty plan for a registered device 430 from the enterprise, which entitles the customer to free services calls every six months.
After six months, a digital service interface 140 may identify that a service is due, and communicate with the contact center 102 to transmit event data that indudes the identification of the registered device 430 and an indication that service is due for the registered device 430.
The event server 168 identifies contact information of the user device for establishing a communications session between a user of the user device and an agent device (606). For example, the event server 168 may identify the phone number associated with the user device 110 that is stored in the contact center database 164. In some implementations, the contact information may include information related to one or more available channels where the user may be reached. For example, the contact information may include channel options indicating that the user may be reached by text, by phone, or by an application via the user device.
The event server 168 may optionally generate a dynamically generated message to be presented to the user (607). For example, the event server 168 may generate a message: "Hello, this is HVAC enterprise calling with an important message about your registered device 430. As part of your extended warranty plan, you are entitled to a free six-month check up by one of our service technicians.
Please use the digital service interface to schedule your service call."
The switch/media gateway 104 transmits a request to establish a communications session (609). For example, the event server 168 may place a call request in the outbound queue of the switch/media gateway 104. The switch/media gateway determines whether the request is accepted by the user device (611). In response to determining that the request corresponds to the routing information, the routing server 112 interacts with the communication server 108 to route the request (613).
For example, if the service call involves an agent, the routing server 112 may interact with the communication server 108 to route the request to an agent device.
The recommendation server 160 may optionally determine recommendations associated with the event (616). In some implementations, the iXn server 162 provides the identification of the registered device and the state of the registered
FIG. 7 is a flow chart illustrating an example of a process 700 for a digital service interface to provide an interface for managing a communications session between a user device and an agent device of a contact center. The process 700 is described as being performed by a computer system comprising one or more computers, for example, the communications system 100 shown in FIG. 1. In some implementations, the digital service interface may be embedded in the registered device 130. In some other implementations, the digital service interface may be an application running on the user device 110. In some other implementations, the digital service interface may be implemented on a device that is different from the registered device and the user device such as a peripheral device to the registered device.
Referring to FIG. 7, the digital service interface 140 determines a state associated with a registered device (701). In some implementations, the digital service interface 140 receives data from the registered device indicating the state of the registered device. For example, a temperature sensor of a registered device may detect that the surrounding temperature has exceeded a threshold, and in response, the registered device may transmit an indication to the digital service interface 140 alerting on the temperature increase. In some implementations, the digital service interface 140 determines a state associated with a registered device by determining that data has not been received from the registered device within a predetermined time period. For example, the digital service interface 140 may send a ping message to an enterprise server at a predetermined frequency (e.g., once an hour) to determine that the server is still alive. In the case that the server
The digital service interface 140 transmits, to a contact center, first event data that includes an identification of the registered device and the state of the registered device a state associated with a registered device (703). For example, in response to receiving an indication from a registered device that the surrounding temperature has exceeded a threshold, the digital service interface 140 may transmit, to the contact center 102, event data that includes an identification of the registered device and the state of the registered device.
In some implementations, the digital service interface 140 communicates, using a first communications protocol, with the registered device to obtain the state of the registered device. The digital service interface 140 may generate, based on a second communications protocol that is different from the first communications protocol, the first event data that includes the state of the registered device. The digital service interface 140 may transmit, using the second communications protocol, the first event data to the contact center 102. For example, the digital service interface 140 may be configured to communicate with a registered device using Bluetooth communication protocol, and the digital service interface 140 may be configured to communicate with the contact center 102 using the Hypertext Transfer Protocol (HTTP) protocol. As another example, the digital service interface 140 may be configured to communicate with a registered device using the Message Queuing Telemetry Transport (MQTT) or the Constrained Application Protocol (CoAP) protocol.
The digital service interface 140 provides, to a user of the user device, second event data that includes the state of the registered device and contact information for establishing the communications session with the contact center (705). In some implementations, the digital service interface 140 receives the contact information from the contact center 102. In some implementations, the digital service interface 140 presents, via a display of the digital service interface, the second event data to the user. For example, the contact center 102 may generate a reserved
In some implementations, the digital service interface 140 transmits the second event data to the user device. For example, the digital service interface 140 may send an SMS message to the user device 110 indicating the reserved telephone number and information related to the state of the registered device.
In some implementations, after the communications session is established between the user device and the contact center, the digital service interface may receive a request from the contact center to obtain additional data associated with the registered device. In response to receiving the request from the contact center, the digital service interface may obtain the additional data from the registered device. The digital service interface may transmit the additional data to the contact center. For example, after a communications session between the user device and an agent device to fix a malfunctioning server has been established, the agent may wish to obtain a current temperature sensor reading of the server. The agent may use the agent device to send a request to the digital service interface 140. In response to receiving the request, the digital service interface 140 may communicate with the server to obtain the current temperature sensor reading of the server. After the digital service interface 140 obtains the current temperature sensor reading of the server, the digital service interface 140 then sends the agent device a message reporting the current temperature sensor reading to help the agent to further assist the user.
The disclosed and other examples can be implemented as one or more computer program products, i.e., one or more modules of computer program instructions encoded on a computer readable medium for execution by, or to control the operation of, data processing apparatus. The implementations can include single
A system may encompass all apparatus, devices, and machines for processing data, including by way of example a programmable processor, a computer, or multiple processors or computers. A system can include, in addition to hardware, code that creates an execution environment for the computer program in question, e.g., code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or a combination of one or more of them.
A computer program (also known as a program, software, software application, script, or code) can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a standalone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program does not necessarily correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub programs, or portions of code). A computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communications network.
Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Generally, a processor will receive instructions and data from a read only memory or a random access memory or both. The essential elements of a computer can include a processor for performing instructions and one or more memory devices for storing instructions and data.
Generally, a computer can also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, e.g., magnetic, magneto optical disks, or optical disks. However, a computer need not have such devices. Computer readable media suitable for storing computer program instructions and data can include all forms of nonvolatile memory, media and memory devices, including by way of example semiconductor memory devices, e.g., EPROM, EEPROM, and flash memory devices; magnetic disks, e.g., internal hard disks or removable disks; magneto optical disks; and CD ROM and DVD-ROM disks. The processor and the memory can be supplemented by, or incorporated in, special purpose logic circuitry.
While this document may describe many specifics, these should not be construed as limitations, but rather as descriptions of features specific to particular embodiments. For example, a communications channel may include the Web, where a user may interact with an interaction site via a webpage generated dynamically according to the interaction flow. As another example, a communications channel may include a smart phone application, where a user may interact with an interaction site by starting a smart phone application, and the smart phone application then contacts the interaction site and provides a communications interface between the user and the interaction site. Certain features that are
Moreover, although features may be described above as acting in certain combinations, one or more features can in some cases be excised from the combination, and the combination may be directed to a sub-combination or a variation of a sub-combination. Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results.
Only a few examples and implementations are disclosed.
Variations, modifications, and enhancements to the described examples and implementations and other implementations can be made based on what is disclosed.
Claims (16)
CLAIMED ARE DEFINED AS FOLLOWS:
computer-implemented method for establishing a communications session between a user device and an agent device, the method comprising:
receiving, by a processor associated with a contact center, prior to start of a communications session with the user device, event data that includes an identification of a registered device and a state of the registered device, wherein the registered device is different from the user device;
determining, by the processor, a resource requirement based on the event data, the determining of the resource requirement being in anticipation of an interaction establishing the communications session with the user device;
generating, by the processor, based on the resource requirement, routing information for routing the interaction to the agent device, wherein an agent associated with the agent device is identified as satisfying the resource requirement;
after generating the routing information, identifying, by the processor, a request to initiate the interaction;
determining, by the processor, whether the request is related to the generated routing information; and in response to determining that the request is related to the generated routing information, routing the request to the agent device, wherein the - 48 ¨
Date recue/Date received 2023-05-25 routing is without input from the user device, during the interaction, of the identification of the registered device, and wherein the routing establishes the communications session between the user device and the agent device.
storing the generated routing information;
transmitting, by the processor, contact information that includes a reserved contact for establishing the communications session with the agent device, wherein the request for the interaction is directed to the reserved contact.
providing the identification of the registered device and the state of the registered device to the agent device.
- 49 ¨
Date recue/Date received 2023-05-25
determining, by the processor, based on the event data, a dynamically generated message to be presented to the user of the user device during the communications session between the user device and the agent device; and in response to determining that the interaction is related to the generated routing information, communicating, after establishing the communications session between the user device and the agent device, the dynamically generated message to the user device for presentation to the user.
identifying contact information of the user device;
transmitting, by the processor, to the user device, a request to establish the communications session between the user device and the agent device;
determining, by the processor, that the request has been accepted by the user device, wherein the request to initiate the interaction is in response to determining that the request has been accepted by the user device.
- 50 ¨
Date recue/Date received 2023-05-25 determining, by the processor, based on the event, one or more recommendations associated with the registered device; and providing the one or more recommendations associated with the registered device to the agent device.
storing registered device profiles of one or more registered devices, wherein determining the resource requirement for the communications session between the user device and the agent device further com prises:
determining that the identification of the registered device matches with a particular registered device profile of the registered device profiles; and determining the resource requirement based on the particular registered device profile.
retrieving, based on the identification of the registered device, a service level agreement associated with the registered device; and determining the resource requirement based on the service level agreement.
- 51 ¨
Date recue/Date received 2023-05-25
one or more processors and one or more non-transitory computer-readable storage devices storing instructions that, when executed by the one or more processors, cause the one or more processors to perform respectively operations comprising:
receiving, prior to start of a communications session with a user device, event data that includes an identification of a registered device and a state of the registered device;
determining, based on the event data, a resource requirement, the determining of the resource requirement being in anticipation of an interaction establishing a communications session with the user device;
generating, based on the resource requirement, routing information for routing the interaction to the agent device, wherein an agent associated with an agent device is identified as satisfying the resource requirement after generating the routing information, identifying a request to initiate the interaction;
determining whether the request is related to the generated routing information; and - 52 ¨
Date recue/Date received 2023-05-25 in response to determining that the request is related to the generated routing information, routing the request to the agent device, wherein the routing is without input from the user device, during the interaction, of the identification of the registered device, and wherein the routing establishes the communications session between the user device and the agent device.
storing the generated routing information;
transmitting contact information that includes a reserved contact for establishing the communications session with the agent device, wherein the request for the interaction is directed to the reserved contact.
identifying contact information of the user device;
transmitting, to the user device, a request to establish the communications session between the user device and the agent device;
determining that the request has been accepted by the user device, wherein the request to initiate the interaction is in response to determining that the request has been accepted by the user device.
storing registered device profiles of one or more registered devices, - 53 ¨
Date recue/Date received 2023-05-25 wherein determining the resource requirement for the communications session between the user device and the agent device further comprises:
determining that the identification of the registered device matches with a particular registered device profile of the registered device profiles; and determining the resource requirement based on the particular registered device profile.
- 54 ¨
Date recue/Date received 2023-05-25
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA3198738A CA3198738A1 (en) | 2016-06-08 | 2017-06-06 | Connected machine initiated service |
CA3199102A CA3199102A1 (en) | 2016-06-08 | 2017-06-06 | Connected machine initiated service |
CA3199109A CA3199109A1 (en) | 2016-06-08 | 2017-06-06 | Connected machine initiated service |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/176,400 US10673954B2 (en) | 2016-06-08 | 2016-06-08 | Digital service interface |
US15/176,502 | 2016-06-08 | ||
US15/176,400 | 2016-06-08 | ||
US15/176,502 US10277478B2 (en) | 2016-06-08 | 2016-06-08 | Connected machine initiated service |
CA3025017A CA3025017C (en) | 2016-06-08 | 2017-06-06 | Connected machine initiated service |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA3025017A Division CA3025017C (en) | 2016-06-08 | 2017-06-06 | Connected machine initiated service |
Related Child Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA3198738A Division CA3198738A1 (en) | 2016-06-08 | 2017-06-06 | Connected machine initiated service |
CA3199109A Division CA3199109A1 (en) | 2016-06-08 | 2017-06-06 | Connected machine initiated service |
CA3199102A Division CA3199102A1 (en) | 2016-06-08 | 2017-06-06 | Connected machine initiated service |
Publications (2)
Publication Number | Publication Date |
---|---|
CA3109728A1 CA3109728A1 (en) | 2017-12-14 |
CA3109728C true CA3109728C (en) | 2024-02-06 |
Family
ID=60578272
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA3199102A Pending CA3199102A1 (en) | 2016-06-08 | 2017-06-06 | Connected machine initiated service |
CA3025017A Active CA3025017C (en) | 2016-06-08 | 2017-06-06 | Connected machine initiated service |
CA3199109A Pending CA3199109A1 (en) | 2016-06-08 | 2017-06-06 | Connected machine initiated service |
CA3109728A Active CA3109728C (en) | 2016-06-08 | 2017-06-06 | Connected machine initiated service |
CA3198738A Pending CA3198738A1 (en) | 2016-06-08 | 2017-06-06 | Connected machine initiated service |
Family Applications Before (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA3199102A Pending CA3199102A1 (en) | 2016-06-08 | 2017-06-06 | Connected machine initiated service |
CA3025017A Active CA3025017C (en) | 2016-06-08 | 2017-06-06 | Connected machine initiated service |
CA3199109A Pending CA3199109A1 (en) | 2016-06-08 | 2017-06-06 | Connected machine initiated service |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA3198738A Pending CA3198738A1 (en) | 2016-06-08 | 2017-06-06 | Connected machine initiated service |
Country Status (2)
Country | Link |
---|---|
CA (5) | CA3199102A1 (en) |
WO (1) | WO2017214192A1 (en) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6385646B1 (en) * | 1996-08-23 | 2002-05-07 | At&T Corp. | Method and system for establishing voice communications in an internet environment |
US9614964B2 (en) * | 2005-08-19 | 2017-04-04 | Nextstep, Inc. | Consumer electronic registration, control and support concierge device and method |
US9047783B2 (en) * | 2008-01-31 | 2015-06-02 | Sirius Xm Connected Vehicle Services Inc. | Communication systems and methods for flexible telematics at a vehicle |
US8948727B2 (en) * | 2010-05-28 | 2015-02-03 | General Motors Llc | Providing wireless mobile device information to a call center |
US20150264148A1 (en) * | 2014-03-13 | 2015-09-17 | Avaya Inc. | Connection of persons and things via mobile messaging privacy/security broker system |
-
2017
- 2017-06-06 WO PCT/US2017/036214 patent/WO2017214192A1/en active Application Filing
- 2017-06-06 CA CA3199102A patent/CA3199102A1/en active Pending
- 2017-06-06 CA CA3025017A patent/CA3025017C/en active Active
- 2017-06-06 CA CA3199109A patent/CA3199109A1/en active Pending
- 2017-06-06 CA CA3109728A patent/CA3109728C/en active Active
- 2017-06-06 CA CA3198738A patent/CA3198738A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
CA3199102A1 (en) | 2017-12-14 |
WO2017214192A1 (en) | 2017-12-14 |
CA3199109A1 (en) | 2017-12-14 |
CA3025017A1 (en) | 2017-12-14 |
CA3198738A1 (en) | 2017-12-14 |
CA3025017C (en) | 2022-03-15 |
CA3109728A1 (en) | 2017-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10812347B2 (en) | Connected machine initiated service | |
US10673954B2 (en) | Digital service interface | |
US10171665B2 (en) | Contact center session preservation | |
US10447859B2 (en) | System and method for exposing customer availability to contact center agents | |
US8879717B2 (en) | Systems and methods for customer contact | |
WO2018044735A1 (en) | System and method for handling interactions with individuals with physical impairments | |
US9088649B2 (en) | Systems and methods for customer contact | |
US8781107B1 (en) | Managing electronic consent for calling campaigns | |
CA2918806A1 (en) | Systems and methods for call backup and takeover using web and mobile interfaces | |
US10694028B2 (en) | Systems and methods for generating application data from call data | |
CA2771704C (en) | Systems and methods for customer contact | |
CA3109728C (en) | Connected machine initiated service | |
US11290594B2 (en) | Cumulative average spectral entropy analysis for tone and speech classification |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request |
Effective date: 20210219 |
|
EEER | Examination request |
Effective date: 20210219 |
|
EEER | Examination request |
Effective date: 20210219 |
|
EEER | Examination request |
Effective date: 20210219 |
|
EEER | Examination request |
Effective date: 20210219 |
|
EEER | Examination request |
Effective date: 20210219 |
|
EEER | Examination request |
Effective date: 20210219 |
|
EEER | Examination request |
Effective date: 20210219 |
|
EEER | Examination request |
Effective date: 20210219 |
|
EEER | Examination request |
Effective date: 20210219 |
|
EEER | Examination request |
Effective date: 20210219 |
|
EEER | Examination request |
Effective date: 20210219 |
|
EEER | Examination request |
Effective date: 20210219 |