Coordinated voice and data display in a multiplex communication system

Abstract: Method and apparatus for processing a telephone call to suspend the call in anticipation of resuming the call at a time in future. A system 10 is disclosed of the type having a plurality of telephones 18 managed by a CBX 14 and a plurality of display terminals 16 managed by a Host processor 12. The CBX 14 is communicatively coupled to the Host processor 12. A caller is prompted to enter information expressive of a time when the caller desires to resume a call and this information is stored. Other information previously obtained from the caller is also stored in anticipation of resuming the call. At the time specified by the caller the call is reestablished and is directed to a telephone 18 associated with an agent. The other information previously stored is recalled and displayed to the agent, thereby providing the agent with a complete record of the information gathered up to the time that the call was suspended.

Description: This invention relates to improvements in data processing applications in a multiplex communication system. Information associated with a phone call is often collected by agents (any recipient of the call) using a computer terminal coupled to a suitable application program. US-A-4,805,209 describes a method of processing a telephone call according to the preamble of claim 1 and a communications system for processing a telephone call according to the preamble of claim 9. A host computer for providing real time coordination of caller data with caller phone connections is managed by a digital switch, or Computerized Branch Exchange (CBX). An agent transferring a caller to another agent has the caller information terminal screen transferred along with the caller. However, some call processing situations controlled by a CBX result in a temporary suspension of a phone call. Examples include CBX capabilities such as a Camp-on Callback or a Callback Request that is communicated to the associated host processor, for example a message to be called back at some future, mutually agreed upon time. Such capabilities, where a phone conversation is suspended and subsequently continued at possibly some indeterminate time in the future, present a more complex phone processing situation than that of a normal call that continues substantially uninterrupted to completion. One problem is created in that only a portion of the information required of the caller may have been gathered before the suspension in the phone call. For example, a caller may have provided certain account related information in preparation to being connected to a call processing resource such as an agent. If, however, all agents are busy the caller may elect not to remain on hold but may elect instead to be called back to complete the transaction. An unsatisfactory solution to this problem is to require the caller to provide for a second time the already provided information. The present invention both recognises and solves this problem. Viewed from one aspect the invention provides a method of processing a telephone call by a communications system, the communications system in operation directing calls to a telephone associated with an agent, said method comprising the steps of: prompting a caller to enter information; storing the information entered by the caller in the communications system; retrieving this information for display to an agent; and responsive to an agent being or becoming unavailable to process the call, characterised by: prompting the caller to enter a call-back time in anticipation of resuming the call at a future time; storing the call-back time entered by the caller; suspending the call; reestablishing by the communications system the call based on the call-back time entered by the caller, the reestablished telephone call being directed to a telephone associated with an agent; retrieving the previously stored information for display to the agent to whom the reestablished call is directed. JP-A-6179350 describes a system in which if a caller cannot reach an intended recipient, the caller can enter a call-back period and number. If the intended recipient goes off-hook within the call-back period, he or she hears an announcement including the call-back number and so can try to contact the original caller; by contrast, if the intended recipient goes off-hook after the call-back period is expired, no such announcement is heard. Embodiments of the invention provide for processing a telephone call to suspend the call in anticipation of resuming the call at a time in future. A system is disclosed of the type having a plurality of telephones managed by a digital switch or CBX and a plurality of display terminals managed by a Host processor. The CBX is communicatively coupled to the Host processor. The system prompts a caller to enter information expressive of a time when the caller desires to resume a call and storing the information entered by the caller. Other information previously obtained from the caller is also stored at this time in anticipation of resuming the call. This other information may be information that is displayed on a display screen associated with an agent, for example, order entry information or airline reservation information. At the time specified by the caller the call is reestablished and is directed to a telephone associated with an agent. The other information previously stored is recalled and displayed to the agent, thereby providing the agent with a complete record of the information gathered up to the time that the call was suspended. The call may be restored in response to a Callback or a Camp-on request made by the caller in which case the CBX reactivates the call by dialling the caller back. The CBX also sends an event to the Host processor notifying the Host processor that the call has been reactivated. The call may instead be reestablished by the CBX in response to a command sent from the Host processor. Viewed from another aspect the invention provides a communications system for processing telephone calls, which in operation directs calls to a telephone associated with an agent, said system comprising: means for prompting a caller to enter information; means for storing the information entered by the caller in the communications system; means for retrieving this information for display to an agent and characterised by means responsive to an agent being or becoming unavailable to process the call comprising: means for prompting the caller to enter a call-back time in anticipation of resuming the call at a future time; means for storing the call-back time entered by the caller; means for suspending the call; means for reestablishing by the communications system the call based on the call-back time entered by the caller, the reestablished telephone call being directed to a telephone associated with an agent; and means for retrieving the previously stored information for display to the agent to whom the reestablished call is directed. An embodiment of the invention will now be described, by way of example only, with reference to the accompanying drawings in which: Fig 1 is a block diagram illustrating major functional blocks of a telephone system in accordance with one embodiment of the invention; and Fig 2 is a flow chart illustrating a method in accordance with one embodiment of the invention; Fig 3 is another flow chart showing in greater detail the steps of the method; and Fig 4 is a flow chart that depicts the steps of a callback algorithm. Fig. 1 illustrates in block diagram form a telephony system, in particular a Call Management Control System (CMCS) 10 that may embody the teachings of the invention. System 10 in a presently preferred embodiment of the invention includes a host processor (Host) 12 coupled via a Logical Unit (LU) 6.2 interface to a digital switch, such as a Computerized Branch Exchange (CBX) 14. The Host 12 includes a MEMORY 12A that is comprised of both temporary RAM and a mass storage device such as a magnetic disk or magnetic tape unit. Particularly suitable apparatus that embodies these functional blocks is described in detail in the above mentioned commonly assigned US-A-4,805,209. Reference should be made to this document. Although the ensuing description is made in reference to a hardware and software system as described in US-A-4,805,209 it should be realized that the invention is not limited for use with only such a system and that, instead, the invention is applicable to a large number of possible hardware and/or software embodiments. The Host 12 may be a type of IBM System/370 processor (R) , a description of which is found in a document entitled "S/370 Reference Summary, GX20-1850", published by the International Business Machines Corporation. While the Host 12 in a presently preferred embodiment of the invention is embodied in a S/370 processor it should be realized that the invention can be practiced with other mainframes, minicomputers or microprocessors. The CBX 14 may be a CBX known in the art as a ROLM CBX II 9000 (R) , a description of which is found in a document entitled "ROLM CBX II 9000 Business Communications System", published by the ROLM Corporation (1986). It should be realized however that the invention can be practiced with other varieties of CBX equipment. The LU 6.2 communication link between the Host 12 and the CBX 14 is a standard System Data Link Control (SDLC) communication link that corresponds to the LU 6.2 standard. A detailed description of a LU 6.2 communication link and a description of how to implement a program interface to conform with this standard is provided in the following documents published by the International Business Machines Corporation: "Systems Network Architecture: Sessions Between Logical Units, GC20-1868" and "SNA Transaction Programmer's Reference Manual For LU 6.2, GC30-3084". In other embodiments of the invention the link between the Host 12 and the CBX 14 may be other than a communication link that conforms to the LU 6.2 standard. As described in US-A-4,805,209 there are coupled to Host 12 a plurality of user interface terminals, shown herein as terminals 16 (TERM 1 through TERM m). Coupled to CBX 14 are a plurality of phones, shown herein as phones 18 (PHONE 1 through PHONE n). Also coupled to CBX 14 is a phone trunk (not shown) containing voice-carrying signal lines. A caller into the CMCS 10 may encounter situations in which a call processing resource, for example an agent or specialist provided to answer the caller's information request, is congested beyond a time considered reasonable for the caller to wait in a queue on the CBX 14. If this situation arises the caller may invoke an existing CBX 14 Callback or Camp-on feature that provides for the caller to be called back when the CBX 14 detects the resource is no longer busy. Alternatively, and in accordance with a preferred aspect of the invention, the CBX 14 initially detects such congestion and routes the caller to a messaging and/or voice response unit (VRU) 14A that informs the caller of the congestion and offers the caller an option to leave a message to be called back. If Callback is indicated by the caller the VRU 14A requests the caller to enter his phone number, if not already known through, for example, ANI, and an indication of a time when the caller should be called back (Fig. 2, block 20). That is, should the caller be called back immediately upon agent availability; within some predetermined interval of time, such as within a half-hour or during the evening; or at any time (don't care). The callback information may be entered by the caller with well-known DTMF tones or by speaking the information to a voice recognition unit (not shown) associated with the CBX 14. In any event, the CBX 14 includes apparatus for receiving information from the caller and for providing the information in suitable form to other portions of the CMCS 10, such as a Call Tracking Manager executed by the Host 12. The operation of the Call Tracking Manager is set forth in US-A-4,805,209 where the Call Tracking Manager is numbered 2032 and is shown in Fig. 24. The caller entered callback information is communicated via the LU 6.2 link to the Call Tracking Manager (Fig. 2, block 22), designated CTM 12B in Fig. 1. CTM 12B keeps track of the current time of day and also the caller's callback request. The CTM 12B also saves in Memory 12A the caller information collected to the point in time when the call is suspended for future retrieval when the call is restored (Fig. 2, block 24). This latter aspect of the invention is an improvement in the operation of the Call Tracking Application 2032 of US-A-4,805,209 which has a limited ability to save caller information for a call that does not continue to a normal completion. For example, in Fig. 9, block 720 of US-A-4,805,209 the host stores caller data by updating a Call Management Control Table (shown in Fig. 18) in response to a queued caller who hangs up. If the call is restored in response to a Callback or a Camp-on request the CBX 14 reactivates the call by dialing the caller back. The CBX 14 sends an event to the Host 12 notifying the Host 12 that the call has been reactivated. The Host 12 upon receiving the call connection information from the CBX 14 retrieves the stored caller information from MEMORY 12A. The Host 12 then restores the caller information screen on the appropriate agent's TERM 16 (Fig. 2, block 26), and directs the call to the corresponding agent's PHONE 18 in a manner described in US-A-4,805,209. In accordance with an aspect of the invention the caller information restored includes the information collected prior to the previous suspension of the call. If the call is instead reinitialized in the CBX 14 by a command from the Host 12 the Host 12 may employ a number of known methods to instruct the CBX 14 to reestablish the call. If a message had been left on a messaging device, the Host 12 instructs the messaging device to call an appropriate one of the agents and play the message. The Host 12 also provides the messaging device the caller's phone number such that the agent can return the call after listening to the message. Alternatively, call events received from the CBX 14 cause Host 12 to display the caller's information screen on an agent's TERM 16 in concert with delivery of the caller's message by the messaging device. The agent may then indicate to the messaging device to place the call to the original caller. At this time call processing reverts back to that described in US-A-4,805,209. If instead the callback request was made via the VRU 14A to directly access the Host 12 the Host 12 may command the CBX 14 to reestablish the call between a particular agent and the original caller. The Host 12 transmits a message to the agent's TERM 16 notifying the agent of the action being performed and thereafter restores to the TERM 16 a display of the caller's original information screen, the original information having been stored in MEMORY 12A at the time the original call was suspended. At this point the call processing reverts to that disclosed in US-A-4,805,209. Considering the method of the invention in greater detail for VRU 14A callback, the caller enters by DTMF a phone number and a time to be called back in minutes. This information is transmitted to Host 12 through an Application Program Interface. Typically the caller times out while waiting in queue for an available agent. The caller is routed to a message device or to the VRU 14A to ask if the caller wants to be called back. If the caller indicates that callback is desired the callback information is transmitted to Host 12 which saves the present caller environment. Host 12 then monitors agent activity and controls agent availability to receive new calls from the CBX 14 queue. Either upon a condition of no further calls in the CBX 14 queue or the caller callback time period about to expire, the Host 12 signals the VRU 14A to recall the caller and transfer the call to a specified idle agent. If the messaging device is employed the Host 12 signals the messaging device (e.g. phonemail system) to call the agent, play the recorded message and upon agent request call the original caller back connecting the agent and caller. Referring to Fig. 3 exemplary caller interactions are described. At block 30 a caller initially is connected to the VRU 14A and enters account information using TOUCHTONE(tm) features to enable access to account information. If the caller indicates that he requires personal attention the VRU 14A transfers the caller to an ACD service group using CBX 14 transfer features (block 32). In accordance with US-A-4,805,209 caller account information and specific activity information is saved for later display on an agent terminal (block 34). If an agent is available the caller is connected and caller-related information is displayed on the agent's terminal. After completing the transaction the caller hangs up (block 36). If an agent is not available the caller queues in CBX 14 on an ACD service group for connection to the first available agent (block 38). If an agent becomes available before overflow time out the agent is connected to the caller and the caller's information is displayed on the agent's screen. After completing the transaction the caller hangs up (block 40). If an agent does not become available and after waiting a configurable amount of time in the CBX 14 queue, the CBX 14 sends the caller to the VRU 14A. The VRU 14A asks the caller if the caller wants to be called back (block 42). If the caller responds that callback is not desired the VRU 14A returns the caller to the CBX 14 queue to wait for the first available agent (block 44). If the caller instead responds that callback is desired the VRU 14A requests that the caller enter a phone number and how long the caller will be available at that number. The VRU 14A communicates this information to Host 12 software that stores the caller information. The caller hangs up but the call has been transferred to a controlled callback queue maintained in MEMORY 12A by the Host 12. The Host 12 monitors system activity for either the CBX 14 queue becoming idle with available agents or that the length of time the caller is to be at the number is about to be exceeded (block 46). Each time an agent becomes available the agent requests the Host 12 to make him available to process another call. The Host 12 determines if the agent should receive either the next call from the CBX 14 queue or a callback call from the callback queue. The Host 12 makes this determination using a "callback algorithm" as described below (block 48). If the next agent call is determined to be from the CBX 14 queue the Host 12 signals the CBX 14 to make the agent available and the agent receives the next call queued. After completing the transaction the caller hangs up (block 50). If the next call is determined to be from the Host 12 callback queue the Host 12 instructs the CBX 14 to make the outbound call to the original caller and connect to the identified agent's phone. In accordance with the invention the previously saved caller information is retrieved from memory and displayed on the associated agent's terminal. After completing the transaction the caller hangs up (block 52). The aforementioned callback algorithm is illustrated in Fig. 4. Calls from the callback queue maintained in MEMORY 12A by Host 12 are activated as follows. If no calls are queued in the CBX 14 and an agent becomes available, the Host 12 initiates callback to the first call in the callback queue (block 60). If calls are queued in the CBX 14, then the callback queue call is selected as the next call only if (a) had the callback call instead waited in the CBX queue instead of indicating callback and the callback call would have been answered and (b) the callback time period is about to be exceeded (e.g. callback period minus some time threshold) (block 62). By example, a caller indicates immediate callback and hangs up. If during the time elapsed since the caller has hungup the caller would have been serviced from the CBX 14 queue the caller is then selected from the callback queue. Preferably, by indicating callback a caller should not be serviced before a time the caller would have been serviced had the caller instead entered the CBX 14 queue. Ordering of calls in the callback queue is by priority order established by an application programmer (e.g. caller incoming trunk group, caller dialed number, or caller id, ANI), with second ordering by time to be called back. A further aspect of the invention relates to the Host 12 selecting phone numbers for calling and placing these selected numbers within the callback queue. By example, a system may be configured wherein agents generally process incoming calls, such as orders, but make outgoing calls, such as requests for warranty sales, only when idle. Host 12 may select from a stored data base customer phone numbers for warranty calls and place these numbers and other information in the callback queue for connection to agents as the agents become available. When the call is made the agent's terminal shows the required customer information and indicates if the call was placed as a result of a previous customer callback request or at the initiate of the Host 12. In at least preferred embodiments the invention provides a method and apparatus to manage and save information collected from a caller prior to a suspension of a telephone call for a later association of the saved information with a subsequent continuation of the call. In at least preferred embodiments the invention also provides, for use in a Call Management Control System (CMCS) including a CBX for managing a plurality of phones and a Host processor for managing a plurality of display terminals, a method and apparatus to manage and save information collected from a caller prior to a suspension of a telephone call for a later association of the saved information with a subsequent continuation of the call. Thus, while the invention has been particularly shown and described with respect to a preferred embodiment thereof, it will be understood by those skilled in the art that changes in form and details may be made therein without departing from the scope of the invention.

Claims: A method of processing a telephone call by a communications system, the communications system in operation directing calls to a telephone associated with an agent, said method comprising the steps of: prompting a caller to enter information; storing (34) the information entered by the caller in the communications system; retrieving this information for display to an agent; and responsive to an agent being or becoming unavailable to process the call, characterised by: prompting (46) the caller to enter a call-back time in anticipation of resuming the call at a future time; storing the call-back time entered by the caller; suspending the call; reestablishing (52) by the communications system the call based on the call-back time entered by the caller, the reestablished telephone call being directed to a telephone associated with an agent; retrieving (26) the previously stored information for display to the agent to whom the reestablished call is directed. A method as claimed in claim 1, wherein the communications system comprises a digital switch and a host computer, connected to each other, and the step of reestablishing the telephone call is initiated by the digital switch and includes the step of sending a message to the host computer indicating that the call has been reestablished. A method as claimed in claim 2, wherein the step of reestablishing the telephone call is initiated by the digital switch in response to the caller having previously invoked a call-back or camp-on request. A method as claimed in claim 1, wherein the communications system comprises a digital switch and a host computer, connected to each other, and the step of reestablishing the telephone call is initiated by the host computer and includes the step of sending a message to reestablish the call to the digital switch. A method as claimed in claim 4, further including the step of displaying information on a display screen of the agent to whom the call is being directed, the displayed information notifying the agent that the telephone call is being reestablished. A method as claimed in any preceding claim, wherein the caller is prompted to enter a telephone number at which to be called, in addition to a call-back time. A method as claimed in any preceding claim, wherein responsive to an agent being or becoming unavailable to process the call, the caller is alternatively asked whether the caller desires to (a) wait for an agent to become available, or (b) to be called back at some time in the future, and placing callers who select option "a" in a first queue and callers who select option "b" in a second queue. A method as claimed in claim 7, wherein if an agent becomes available and (i) there are no calls in the first queue, initiating the first call in the second queue, or (ii) there is at least one call in the first queue, initiating a call from the second queue providing firstly that the call would already have been answered had the call originally been placed instead in the first queue, and secondly that the call-back time is soon to expire. A communications system (10) for processing telephone calls, which in operation directs calls to a telephone (18) associated with an agent, said system comprising: means (14A) for prompting a caller to enter information; means (12A) for storing the information entered by the caller in the communications system; means for retrieving this information for display to an agent ; and characterised by means responsive to an agent being or becoming unavailable to process the call comprising: means for prompting the caller to enter a call-back time in anticipation of resuming the call at a future time; means for storing the call-back time entered by the caller; means for suspending the call; means for reestablishing by the communications system the call based on the call-back time entered by the caller, the reestablished telephone call being directed to a telephone associated with an agent; and means for retrieving the previously stored information for display to the agent to whom the reestablished call is directed. A communications system as claimed in claim 9, comprising a digital switch (14) and a host computer (12) connected by a communications link. A communications system as claimed in claim 10, wherein said communications link conforms to a LU 6.2 standard. Apparatus as claimed in any of claims 9 to 11, wherein the prompting means comprises a voice response unit.

Inventors: JOLISSAINT CHARLES H, JOLISSAINT, CHARLES H.
Applicants: IBM, INTERNATIONAL BUSINESS MACHINES CORPORATION
Application year: 1990
Main classification: H04Q11
IPC codes: H04M3, H04Q11, H04M11