Patent Publication Number: US-8537979-B1

Title: Voice response system with live agent assisted information selection and machine playback

Description:
CROSS REFERENCE TO RELATED APPLICATIONS 
     The present application is a continuation of and claims priority to U.S. patent application Ser. No. 10/819,572 filed Apr. 6, 2004 and titled VOICE RESPONSE SYSTEM WITH LIVE AGENT ASSISTED INFORMATION SELECTION AND MACHINE PLAYBACK, which is incorporated by reference herein in its entirety. 
    
    
     FIELD OF THE INVENTION 
     This invention relates to voice response systems. In particular, the invention relates to telephonic voice response systems used to play voice content to a caller. 
     BACKGROUND 
     Voice response (VR) systems may be used to provide information to callers, thereby avoiding the cost of having to provide expensive live agents to dispense the information. In general, VR systems are equipped with a telephony interface to communicate telephonically with a caller, a user interface whereby a user can input a request to the system, and a selection mechanism to select voice content to play to the caller based on the request. 
     With some VR systems, it is possible to transfer a call to a live agent who then converses with the caller and provides the necessary information requested by the caller. However, in some cases, the live agent provides information to the caller which information is in the VR system and can thus be provided to the caller from the system. In such cases, the use of the live agent to provide the information is a waste of resources, particularly bearing in mind the cost of having to provide live agents. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  shows a high-level block diagram of a system in accordance with one embodiment of the invention; and 
         FIG. 2  shows a high-level block diagram of hardware that may be used to implement the system of  FIG. 1  in accordance with one embodiment. 
     
    
    
     DETAILED DESCRIPTION 
     Embodiments of the present invention relate to a method and apparatus for serving voice content to a caller. In what is known as a non-live agent mode, a voice response system interacts with a caller by receiving a utterance from the caller, performs a machine selection of voice content to play to the caller based on the utterance and plays a machine selected voice content to the caller. During the non-live agent mode, if a request is received from the caller to speak to a live agent, the system switches to a live agent mode wherein a live agent holds a conversation with the caller and selects voice content to play to the caller based on the conversation. Thereafter, the system switches back to the non-live agent mode and plays the live agent selected voice content to the caller. 
     Sometimes callers may become frustrated during the non-live agent mode if the machine-selected audio content that is played to the caller during the non-live agent mode is not relevant to a request made by the caller. Thus, one advantage of the techniques disclosed herein is that the caller is afforded the opportunity to request to speak with a live agent who then determines what information the caller requires, selects that information and then enables the system to playback that information to the caller. If the information requested by the caller is not available within the system, then the live agent may dispense that information. In such a case, the system allows the live agent to record what information the caller requested that was not available within the system. Advantageously, a system administrator may later review the record and decide whether or not make the information available within the system. Other advantages of the present invention will become apparent from the description below. 
     In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the invention. It will be apparent, however, to one skilled in the art that the invention can be practiced without these specific details. In other instances, structures and devices are shown in block diagram form in order to avoid obscuring the invention. 
     Reference in this specification to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the invention. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Moreover, various features are described which may be exhibited by some embodiments and not by others. Similarly, various requirements are described which may be requirements for some embodiments but not other embodiments. 
     Referring now to  FIG. 1  of the drawings, reference numeral  100  generally indicate a high-level system in accordance with one embodiment of the invention. The system  100  may represent a telephonic voice content system or a voice response (VR) system. As will be seen, the system  100  includes a telephony interface  102  whereby telephone calls from a caller may be received by the system  100 . The system  100  also includes a voice content selection mechanism  104 , a voice content player  106 , an agent subsystem  108 , and a knowledge base  110 . Each of the components within the system  100  are under control of a control engine  112  which includes a call transfer mechanism  114 . 
     The system  100  may be implemented using the hardware  200  shown in  FIG. 2  of the drawings. 
     Referring back to  FIG. 1  of the drawings, the system  100  includes a non-live agent mode, and a live agent mode. In the non-live agent mode, the system  100  interacts with a caller by receiving an utterance from the caller, performing a machine selection of voice content to play to the caller based on the utterance, and plays the machine-selected audio content to the caller. For example, in one embodiment the system  100  may implement a telephonic support system that provides technical support for a consumer product such as a personal digital assistant (PDA). In such a scenario, a caller may call requiring technical support relating to for example how to synchronize the PDA with a desktop computer. In such a case, the caller  100  will utter a phrase to the system for example the phrase, “I need help with synchronization.” As noted above, the system  100  receives the utterance from the caller and the voice content selection mechanism  104  selects voice content from the knowledge base  110  to play to the caller based on the utterance. In one embodiment, the knowledge base  110  is organized into topics and the voice content selection mechanism  104  performs a linguistic analysis of the utterance by the caller in order to a determine an appropriate topic within the knowledge  110  to play to the caller. In one embodiment, the voice content selection mechanism  104  selects the appropriate topic from the knowledge base  110  by correlating the utterance received from the caller with a topic within the knowledge base  110 . More detail on the techniques used by the voice content selection mechanism  104  to select topics from the knowledge base  110  for playback to the caller is provided in my co-pending U.S. patent application Ser. No. 10/319,144, which is hereby incorporated by reference. 
     The voice content player  106  is responsible for playing back the selected topic from the knowledge base  110  to the caller. During the non-live agent mode of operation, if the system  100  receives a request from the caller to speak to a live agent, the system responds by switching to a live agent mode wherein a live agent holds a conversation with the caller. The switching to the live agent mode is handled by the call transfer mechanism  114  which transfers the telephone call to the live agent subsystem  108 . 
     The live agent subsystem  108  may be connected to the call transfer mechanism  114  by a communication path that supports voice communications. In one embodiment, the communication path may support the Voice Over Internet Protocol (VoIP). In one embodiment, the call transfer mechanism  114  also selects a suitable live agent to speak to the caller. The selection of the suitable live agent is based upon an analysis of utterances made by the caller and system responses thereto. For example, in one embodiment, the call transfer mechanism  114  may determine that the caller is seeking technical help how to synchronize his PDA with a desktop computer and will thus select a live agent who has expertise in this technical area. 
     In one embodiment, when the call transfer mechanism  114  transfers the call to the agent subsystem  108 , the call transfer mechanism  114  also sends the details of the utterances made by the caller and system responses to the utterances to the agent subsystem  108 . The live agent may view these details on a display screen of the agent subsystem  108  and use these details to assist in the selection of an appropriate topic within the knowledge base  110  for playback to the caller. However, it is to be appreciated that these call details are only a secondary aid to content selection. The primary aid to content selection is a conversion with which the live agent holds with the caller in order to determine what information is appropriate to the caller. 
     In one embodiment, the call transfer mechanism  114  sends additional information besides the details of the utterances made by the caller and the system responses thereto. For example, the other information may include an identification of the caller, subject topic, operating system, etc. The identification of the caller may be in the form of a membership number or a customer identification. This additional information is available system-wide. Thus, for example, if the call has to be transferred to say a supervisor, the additional information is made available to the supervisor. This additional information is displayed by the agent subsystem  108  and can be viewed by the live agent. 
     In one embodiment, the live agent selects an appropriate topic playback to the caller from the knowledge base  110  based on the agent&#39;s analysis of what information the caller requires. Once a particular topic has been selected from the knowledge base  110  by the agent, with the assistance of the call transfer mechanism  114 , switches the system  100  back to the non-live agent mode for playback of the live agent selected voice content to the caller using the voice content player  106 . 
     It will be appreciated, that in some cases, the agent may determine that there is no topic within the knowledge base  110  that is appropriate to information being requested by the caller. In such cases, the agent may provide the information directly to the caller. In one embodiment, in order to improve qualify of service, the live agent subsystem  108  allows the live agent to create a log or record of information requested by callers for which no topic could be found within the knowledge base  110 . This record or log may be reviewed by a system administrator in order to expand the knowledge base  110  by providing information requested by callers in respect of which the knowledge base  110  is lacking. 
     Referring to  FIG. 2  of the drawings, reference numeral  200  generally indicates hardware that may be used to implement the VR system  100 . The hardware  200  typically includes at least one processor  202  coupled to a memory  204 . The processor  202  may represent one or more processors (e.g., microprocessors), and the memory  204  may represent random access memory (RAM) devices comprising a main storage of the hardware  200 , as well as any supplemental levels of memory e.g., cache memories, non-volatile or back-up memories (e.g. programmable or flash memories), read-only memories, etc. In addition, the memory  204  may be considered to include memory storage physically located elsewhere in the hardware  200 , e.g. any cache memory in the processor  202 , as well as any storage capacity used as a virtual memory, e.g., as stored on a mass storage device  210 . 
     The hardware  200  also typically receives a number of inputs and outputs for communicating information externally. For interface with a user or operator, the hardware  200  may include one or more user input devices  206  (e.g., a keyboard, a mouse, etc.) and a display  208  (e.g., a Cathode Ray Tube (CRT) monitor, a Liquid Crystal Display (LCD) panel). 
     For additional storage, the hardware  200  may also include one or more mass storage devices  210 , e.g., a floppy or other removable disk drive, a hard disk drive, a Direct Access Storage Device (DASD), an optical drive (e.g. a Compact Disk (CD) drive, a Digital Versatile Disk (DVD) drive, etc.) and/or a tape drive, among others. Furthermore, the hardware  200  may include an interface with one or more networks  212  (e.g., a local area network (LAN), a wide area network (WAN), a wireless network, and/or the Internet among others) to permit the communication of information with other computers coupled to the networks. It should be appreciated that the hardware  200  typically includes suitable analog and/or digital interfaces between the processor  202  and each of the components  204 ,  206 ,  208  and  212  as is well known in the art. 
     The hardware  200  operates under the control of an operating system  214 , and executes various computer software applications  216 , components, programs, objects, modules, etc. (e.g. a program or module which performs operations is described with reference to  FIG. 1  of the drawings). Moreover, various applications, components, programs, objects, etc. may also execute on one or more processors in another computer coupled to the hardware  200  via a network  212 , e.g. in a distributed computing environment, whereby the processing required to implement the functions of a computer program may be allocated to multiple computers over a network. 
     In general, the routines executed to implement the embodiments of the invention, may be implemented as part of an operating system or a specific application, component, program, object, module or sequence of instructions referred to as “computer programs.” The computer programs typically comprise one or more instructions set at various times in various memory and storage devices in a computer, and that, when read and executed by one or more processors in a computer, cause the computer to perform operations necessary to execute elements involving the various aspects of the invention. Moreover, while the invention has been described in the context of fully functioning computers and computer systems, those skilled in the art will appreciate that the various embodiments of the invention are capable of being distributed as a program product in a variety of forms, and that the invention applies equally regardless of the particular type of machine or computer-readable media used to actually effect the distribution. Examples of computer-readable media include but are not limited to recordable type media such as volatile and non-volatile memory devices, floppy and other removable disks, hard disk drives, optical disks (e.g., Compact Disk Read-Only Memory (CD ROMS), Digital Versatile Disks, (DVDs), etc.). 
     Although the present invention has been described with reference to specific exemplary embodiments, it will be evident that the various modification and changes can be made to these embodiments without departing from the broader spirit of the invention as set forth in the claims. Accordingly, the specification and drawings are to be regarded in an illustrative sense rather than in a restrictive sense.