Abstract:
Systems and methods for allowing a call center to accept and schedule callback appointments for the service of inbound calls at times which are convenient for the inbound caller as well as automatically placing an outbound call at the scheduled callback time. The system collects information from the caller when scheduling a callback time which assists the agent with servicing the scheduled callback more efficiently than the original incoming call. The system also uses algorithms and various system parameters to determine how many agents are needed to service all scheduled callbacks at a given time while maximizing the efficiency of the agents by avoiding having agents service callbacks which fail to reach the person to be serviced for various reasons. When not enough agents are available to handle the scheduled callbacks and current incoming calls the called back individual is automatically connected to the next available agent avoiding the line of incoming calls entirely. This results in not only increasing the efficiency of the agents it also decreases the time necessary for the call center to provide for the scheduling of future callbacks.

Description:
RELATED APPLICATIONS  
       [0001]     The present application claims priority to U.S. Provisional Patent Application Ser. No. 60/681,410, filed May 16, 2005, which is hereby incorporated by reference as if set forth fully herein. 
     
    
     FIELD OF THE INVENTION  
       [0002]     The invention is related to the field of telephony and communications. More particularly, the invention relates to automated call distribution technology.  
       BACKGROUND OF THE INVENTION  
       [0003]     Automated call distribution devices or call centers provide a way to handle large loads of incoming telephone calls for a particular business by routing the calls to the appropriate recorded information or service agent which can handle that particular call. However, many times demand for servicing these incoming calls exceeds the amount of service agents which can handle these calls. This results in incoming calls which must be placed on hold until agents can service the calls. Unfortunately, sometimes the amount of time on hold can be of significant inconvenience for the caller. As a result, several automated call distribution devices automatically schedule a callback appointment for an incoming call which cannot be serviced at the time the call was received. Once the scheduled callback time occurs an agent will place an outbound call to the person who placed an earlier incoming call to provide immediate assistance to the callback recipient without the recipient having to wait on hold for an extended period of time.  
         [0004]     While this practice is a significant convenience for many customers, often it can create inconveniences and added expenses to a company&#39;s automated call center system as well as the associated agents. The scheduling of callbacks for off-peak calling times can be unpredictable resulting in agent inefficiencies and call center management issues, such as staffing the correct number of servicing agents at particular times of the day. Also, peak calling periods and callback appointments may inadvertently overlap resulting in prolonged peak calling periods when not all incoming calls can be serviced. This problem could compound to the point that more callbacks are serviced by agents than first time calls.  
         [0005]     Additionally, in current callback systems, the efficiency of agents servicing customers is not maximized. For instance, when an outbound call is placed to service a callback appointment, many times the customer to be serviced does not answer the phone, is unavailable, will no longer require assistance, etc. Thus, in conventional automated callback systems, the inconveniences and inefficiencies customers experienced before having the option of a scheduled callback have shifted to the agents who service the calls. Thus, there is an unsatisfied need to mitigate and control the inconveniencies, and in some cases the unpredictable nature, of conventional callback systems.  
       SUMMARY OF THE INVENTION  
       [0006]     The present invention is directed to systems and methods for conducting a callback request for a caller, wherein a method according to an embodiment of the present invention includes the steps of accepting an inbound call from a caller over a telephone line and estimating a hold time for transfer of the call to an agent. Based at least in part on the length of the hold time, the caller is presented with a callback option to schedule a callback. Alternatively, the callback option may be made available only to callers who satisfy particular customer criteria such as a customer telephone number, account number, or customer status level, or the caller may be given the option to either remain on hold or exercise the callback option at any point during the time they are holding.  
         [0007]     Once the callback option has been initiated, the system collects callback information, some of which may be provided by the caller, such as a callback telephone number, a time for initiating the callback, additional identifying information such as an account number, transaction number, product serial number, confirmation number, etc. Additionally, the system may acquire the subject matter of or reason for the call. Next, the system records at least some of the callback information into a database and then confirms with the caller the callback telephone number and the time for initiating the callback. In an alternative embodiment of the present invention, the caller may be provided a next available callback time, the caller may input a desired callback time, or the call may be presented with callback time options from which to select to aid in the caller&#39;s callback scheduling decision-making.  
         [0008]     An aspect of the present invention for conducting a callback to a previous caller includes the steps of retrieving callback information from a database, wherein the callback information includes the callback telephone number and the time for initiating the callback. Additional identifying information may also be retrieved from the database such as an account number, transaction number, product serial number, confirmation number, etc. Also, the subject matter of or reason for the call may also be retrieved from a database. Next, an outbound call is initiated from a call center by automatically dialing the phone number retrieved from the database. The outbound call is then monitored. The system will process the call based on the response to the outbound call, such as, whether it is answered by a person, machine or service tones.  
         [0009]     If the call results in a connection, the call may be routed to an available agent. When the call is being routed to the agent, the system may also route callback information stored in the database that relate to the call being routed to the agent. Alternatively, if the call results in a connection and an agent is unavailable to handle the connected call, the caller may be played a message, for example, informing the caller that they are to be connected to the next available agent.  
         [0010]     If the monitoring of the outbound call results in the detection by the system or, alternatively, by an agent, that the call was answered by an answering machine (e.g., recording machine, answering service, voicemail, privacy director, etc.), then the system may automatically play a pre-recorded message for the answering machine. Additionally, the system may submit another outbound call to the same callback number after a pre-defined period of time. Similarly, if the outbound call results in detecting a busy signal, the system may reinitiate an outbound call from the call center to the callback telephone number after a predetermined length of time. Further, if a predetermined number of rings occurs without detecting a connection signal, the system will also reinitiate an outbound call from the call center to the callback telephone number after a predetermined period of time. Alternatively, if the monitoring of the outbound call results in the detection of a service signal (e.g., disconnected or not in service signal), the system may update the related callback information from the database or otherwise note that service tones were received.  
         [0011]     Another aspect of the present invention is a callback system that includes an automatic call distributor connected to a telephone network and in direct communication with a predictive dialer. The system further includes one or more agents also connected to the automatic call distributor. The predictive dialer is also connected to the telephone network. When an outbound callback call results in a connection that is determined to be answered by a person, an agent is allocated to handle the call. The call is routed from the predictive dialer to the automated call distributor and through the automatic call distributor to the allocated agent.  
         [0012]     Yet another aspect of the present invention is a callback system that includes an automatic call distributor connected to a telephone network and in direct communication with both a predictive dialer and a CTI server. The system further includes one or more agents also connected to the automatic call distributor. The predictive dialer is also connected to the telephone network and in direct communication with the CTI server. Once an outbound callback call results in a connection that is determined to be answered by a person, then the CTI server allocates an agent to handle the call, and the agent is routed the call from the predictive dialer to the automated call distributor and through the automatic call distributor to the allocated agent.  
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0013]     Having thus described the invention in general terms, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:  
         [0014]      FIG. 1  is a functional block diagram showing callers in communication with agents through a network and call center, in accordance with an exemplary embodiment of the present invention.  
         [0015]      FIG. 2  is a flowchart of a callback scheduling process which occurs when all agents of the call center are unavailable, in accordance with an exemplary embodiment of the present invention.  
         [0016]      FIG. 3  is a flowchart of a callback process which occurs when a scheduled callback is to occur, in accordance with an exemplary embodiment of the present invention. 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0017]     The present invention comprises methods and systems that automatically handle the answering of inbound phone calls and automatically handle outbound phone calls. The system can comprise a stand alone system handling both inbound and outbound phone calls or it can comprise a separate system (e.g., an add-on) used in communication with a company&#39;s existing server already handling inbound calls.  
         [0018]      FIG. 1  is a functional block diagram showing callers in communication with agents through a network and call center, in accordance with an exemplary embodiment of the present invention.  FIGS. 2 and 3  show an exemplary embodiment of a callback method in accordance with an embodiment of the present invention. The present invention is described below with reference to figures and flowchart illustrations of systems, methods, apparatuses and computer program products according to an embodiment of the invention. It will be understood that each block of the flowchart illustrations, and combinations of blocks in the flowchart illustrations, respectively, may be implemented by computer program instructions. These computer program instructions may be loaded onto a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions which execute on the computer or other programmable data processing apparatus create means for implementing the functions specified in the flowchart block or blocks.  
         [0019]     These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means that implement the function specified in the flowchart block or blocks. The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions that execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block or blocks.  
         [0020]     Accordingly, blocks of the flowchart illustrations support combinations of means for performing the specified functions, combinations of steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block of the flowchart illustrations, and combinations of blocks in the flowchart illustrations, can be implemented by special purpose hardware-based computer systems that perform the specified functions or steps, or combinations of special purpose hardware and computer instructions. The inventions may be implemented through an application program running on an operating system of a computer. The inventions also may be practiced with other computer system configurations, including hand-held devices, multiprocessor systems, microprocessor based or programmable consumer electronics, mini-computers, mainframe computers, etc.  
         [0021]     Application programs that are components of the invention may include routines, programs, components, data structures, etc. that implement certain abstract data types, perform certain tasks, actions, or tasks. In a distributed computing environment, the application program (in whole or in part) may be located in local memory, or in other storage. In addition, or in the alternative, the application program (in whole or in part) may be located in remote memory or in storage to allow for the practice of the inventions where tasks are performed by remote processing devices linked through a communications network.  
         [0022]     The present invention will now be described more fully hereinafter with reference to the accompanying figures, in which like numerals indicate like elements throughout the several drawings. Some, but not all embodiments of the invention are described. Indeed, these inventions may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements, be thorough and complete, and will fully convey the scope of the invention to those skilled in the art.  
         [0000]     System Description  
         [0023]      FIG. 1  shows an exemplary schematic block diagram of a system in accordance with an embodiment of the present invention that is configured as an add-on to an existing call center. In this embodiment, a caller  102  places a call over an analog or digital telephone network  104  (e.g., the PSTN) or by utilizing voice over IP (VOIP), and the call is answered by the ACD  106 , which normally will route the call to receiving agents  112  to service the call. The ACD can be one of the numerous suitable ACDs offered commercially by manufacturers such as Aspect, Avaya, Nortel Networks, Seimens, Alcatel as well as others. The Computer Telephony Integration (CTI) Server  108  can instruct the ACD  106  to re-allocate its agents to handle callbacks, which allows a caller to schedule a time the system will automatically call them back and service the caller&#39;s needs as if the caller remained waiting on the line. The CTI Server  108  can be any suitable CTI server, such as a CTI Blended Agent gateway manufactured by Noble Systems or CT Connect from Intel Dialogic, Callpath from IBM, Avaya ASAI link, Nortel Symposium, etc. The callback information including the time of the scheduled callback, the phone number to call at that time, identification data associated with the phone number, etc. are stored in a database  114 , which can be located on the CTI Server  108 , on the ACD  106  (as shown in  FIG. 1 ), or remote from the system. The database  114  can be a suitable database, such as an Informix database by IBM, an Oracle database, Microsoft SQLServer, etc.  
         [0024]     Once a callback feature in accordance with an embodiment of the present invention is initiated, and it is time for a callback, then the CTI server  108  instructs the ACD  106  to designate one or more agents  112  available for handling the outbound callbacks. This results in the designated agents  112  being temporarily unavailable to receive inbound calls. These designated agents&#39; phones are then immediately connected to a predictive dialer  110  through a bi-directional voice link (e.g., using one or more lines of a T1) connecting the ACD  106  directly to the predictive dialer  110 , so that when the predictive dialer  110  places the callbacks and the called party answers, the audio connection is immediately made between the called party and the designated agent  112 . Moreover, the predictive dialer  110  or additional processor such as a digital signal processor, ASIC, programmable IC (PIC), along with the use of analog to digital converters and/or digital to analog converters can monitor the phone line to determine if the outbound call was answered by a person, an answering machine, or resulted in a busy signal, disconnected signal, not in service signal, etc. Such additional processor may be located in the predictive dialer  110 , ACD  106 , CTI Server  108 , or housed separate from all three. Additionally, the determination of whether or not an answering machine answered the outbound call could be conducted by monitoring the length of time it takes for a connection occur or how many rings occur before a connection, etc. Traditional methods for detecting the difference between an answering machine and a human answering a telephone line, are described in U.S. Pat. Nos. 5,371,787 and 5,724,420 among others. The predictive dialer  110  can be any suitable dialer, such as an ATOMS product by Noble Systems, a Mosaix dialer from Avaya, or ePro or Unison dialers from Concerto, etc.  
         [0025]     The CTI server  108  may monitor the number of callbacks that are in process and those about to be made, and based at least partially thereon adjusting the number of agents  112  available to handle the callbacks as necessary. Also, the predictive dialer  110  may make callbacks independent from the control of the CTI server  108 . The predictive dialer  110  will automatically make the callbacks at the appropriate time, unless some other process alters the callback schedule stored in a callback database  114 . For example, the CTI server  108  or some other process could update the callback database  114  if some significant event happened (power failure or fire drill, etc.). Under those or similar circumstances, the predictive dialer  110  could be directed not to make the callbacks. Notifying the designated agent  112  that the call is a callback may occur via a local area network (LAN) or other connection to the agents desktop PC or terminal.  
         [0026]     In an alternative embodiment of the present invention the control functions of the CTI server  108  may be allocated to the ACD  106 , the predictive dialer  110  or both, or even another processor remote from the ACD  106  and predictive dialer  110 . For example, the ACD  106  and predictive dialer  110  could be configured to communicate with each other directly to allocate agents  112 , route calls to agents  112 , and control the processes of the callback system. Thus, the need for the CTI-server  108  in implementing the callback process described in detail below may be circumvented with modification by one of ordinary skill in the art. Moreover, agents  112  could be connected directly to the predictive dialer  110  and/or the CTI server  108  while still be utilized to implement various functions of the callback method described in further detail below.  
         [0027]     In an exemplary embodiment of a call center system in accordance with an embodiment the present invention shown in  FIG. 1 , the system receives phone calls at the ACD  106  that are handled by inbound call receiving agents  112 . As the amount of phone calls being received exceeds the number of available receiving agents a holding queue is established. An estimated hold time is calculated using simple or complex algorithms which may include utilizing system monitored data such as average length of typical calls, number of agents on duty at a specific time, etc. Once the estimated hold time reaches a predetermined length and/or number of calls, then the CTI Server  108  initiates and controls a callback feature option in accordance with the present invention, which allows new callers to have the option of receiving a callback at a later time. The callback can be made to a caller-specified number at the time the caller would have expected to be sent to an agent  112  if she had stay in the holding queue based on estimated hold times or at a time suggested by the system or at a time selected by the caller.  
         [0028]     In an alternative embodiment of the present invention, the callback option could be implemented as a special convenience for select customers, subscribers, or those who meet certain customer criteria, which may be based on the telephone number being dialed or called from, customers with an existing account, customers who subscribed to the service or a benefits package that includes the service, or based on a particular customer status level, or based on alternative or additional criteria as appreciated by one of ordinary skill in the art.  
         [0029]     As new callers select the callback option and the time for scheduled callbacks begins, a certain number of receiving agents  112  are re-assigned by the CTI server  108  as outbound call agents to handle the callbacks, which are automatically placed by the predictive dialer  110  at the scheduled callback time. The number of re-assigned agents  112  can be based on the amount of callbacks needed to be made, or on estimations made using system data and/or statistical algorithms such that the number of outbound call agents may be less than the number of callbacks to be made at any given time (to account for callbacks that will result in no answer, answering machine, busy signal, a service signal such as a disconnected or not in service signal, etc.)  
         [0030]     As agents  112  are reallocated and callbacks are made the estimated hold time for new callers is adjusted for this decrease in available agents to handle the new incoming calls. Once the hold time is back to an acceptable level and the callbacks have been completed, then the callback agents may be re-assigned as receiving agents or for some other purpose. A more detailed description of the callback process of this system in accordance with an embodiment of the present invention is described below in connection with  FIGS. 2 and 3 .  
         [0000]     The Callback Method  
         [0031]      FIGS. 2 and 3  show an exemplary embodiment of a callback method in accordance with an embodiment of the present invention.  FIG. 2  shows the process of scheduling a callback for a caller. As shown, the callback system begins by step  202  detecting an incoming call, and once a call has been detected an estimated hold time is calculated in step  204 . The estimated hold time is the time expected before being connected to an available agent. The estimation of the hold time can be determined in numerous ways and can depend on many factors including the number of available agents, looking at the current maximum hold time for calls in the queue, the availability of only the agents with the skills required to handle the call and the number of agents currently possessing those skills, the incoming call volume and outgoing call volume (likely due to scheduled callbacks), subject matter of the call, average duration of a particular service call, or any other suitable method that could be used to calculate an estimated hold time.  
         [0032]     Once the hold time has been determined, step  208  compares the hold time length with a preset threshold limit. If estimated hold time exceeds the preset threshold, the callback option is initiated in step  206 , otherwise the caller is informed of the estimated hold time in step  212  before speaking to an available agent and then subsequently being connected to an agent in step  214 . For example, if an acceptable hold time threshold has been set for 3 minutes and the estimated hold time is 2 minutes, the caller simply waits on the line for an agent and is not given the option of receiving a callback. However, if the estimated hold time was 6 minutes, the caller would be given the option to receive a callback at a later time, rather than wait on hold for the duration of the hold time. It is within the scope of the present invention that the preset threshold to be based at least in part on the number of calls on hold and/or the rate of incoming calls. It is also within the scope of the present invention that when a caller has been placed on hold step  212  may be skipped and step  214  may be invoked with step  212  being implemented. For example, if the estimated hold time is very short compared to preset threshold levels then a caller would may be placed on hold without notice as to how long the hold time is and connected when an agent becomes available.  
         [0033]     Once the callback option is initiated in step  206 , the caller is played a message that tells them the estimated hold time before being sent to an agent and is given the option to either stay on the line in the holding queue or to select the option of receiving a callback at the time when the caller is estimated to be sent to an agent if they remained on the line. Step  210  determines if the caller selected the callback option. The caller may select the option in various ways, such as through pressing a key on the phone, saying the option selected or various interface modalities appreciable by one of ordinary skill in the art. For example, all input from the caller can be either touch tone or spoken voice depending on the technology deployed. If the caller did not select the callback option, then step  212  is invoked and the caller remains on hold on the line. However, if the caller selects the option for a callback then step  216  is initiated. In alternative embodiments of the present invention, the caller may at any point during the time the caller is holding decide to select the callback option and proceed with step  216 .  
         [0034]     It is within the scope of the present invention that the callback scheduling beginning in step  216  may begin without giving the caller the option to hold. Hence, steps  206  and  210  may be skipped or not implemented provided certain conditions are met. Thus, skipping the step of presenting the caller with the option to hold may occur when certain conditions are met. For example, the callback feature can be initiated when the call is made outside normal operating business hours, regardless of an estimated hold time. As a result, an “after hours” callback scheduler may schedule calls for the following business day, rather than give the caller the option of waiting on the line. Another example of when a caller may not be given the option to hold is when the system would require the use of the callback scheduling feature to avoid a busy signal. For example, if the call center has 100 inbound lines and 50 inbound agents and 99 inbound lines are being utilized by callers on hold or talking to agents, the next inbound call would not be given the option to hold and would be prompted to schedule a callback, so that the system avoids having callers receive a busy signal when dialing in to the call center. Other scenarios where a caller would be prompted to schedule a callback without given the option to hold on the line would include when the system determines that the current hold times are excessively long (e.g., greater than a preset threshold), or when calls are determined to be of low priority based on information received from the caller, the telephone number dialed to or dialed from, or through the detection of other call related data. It is also within the scope of the present invention, that when a caller would be prompted to schedule a callback without given the option to hold on the line, the caller does not need to be informed of a hold time as described in step  206  or presented with the option to schedule a callback as in step  210  since such information is unnecessary, rather the call process can simply proceed to step  216 .  
         [0035]     In step  216 , the caller is played a message that tells the caller the callback information including the number from which the caller is calling (i.e., the ANI) if the number from which the caller is calling is determinable. The callback information may also include a computed (or estimated) callback time. The computation of the callback time may be determined in numerous ways and can depend on many factors including the estimated hold time, the number of available agents, looking at the current maximum hold time for calls in the queue, the availability of only the agents with the skills required to handle the call and the number of agents currently possessing those skills, the incoming call volume and outgoing call volume (likely due to scheduled callbacks), subject matter of the call, average duration of a particular service call, or any other suitable method that could be used to calculate a callback time. In alternative embodiments of the invention, the algorithm of computing a callback time may utilize a variety of system parameters as well as system performance data including, the number of calls currently on the system, the number of calls estimated to be handled at a later time, the current and future availability of the system&#39;s agents, statistical and historical data relating to past performance of the system (e.g., the calls handled today average 2 minutes in duration, 30% of callbacks placed from 9 am to 12 pm on Mondays are unanswered, etc.) as well as utilizing other data relating to the call center system&#39;s operation.  
         [0036]     Alternatively, or in addition to, the exemplary embodiment of the invention, the system may at this time acquire callback information by prompting the caller to enter one or more pieces of identifying information such as a callback number, callback time, name, purpose of call, etc. Next, step  218  informs the caller of the callback information, such as the computed call back time, and asks the caller if the callback information is correct or satisfactory, or if the caller would like to submit different callback information such as a different callback number, specific callback time, etc. For example, the system may ask if the caller wishes to be called back at this number or a different number. Another example includes the caller selecting a different callback time (or day and time) if the estimated time for the callback is not convenient.  
         [0037]     Alternatively, or in addition to, the exemplary embodiment of the invention, the caller may select an alternate callback time for initiating the callback if the computed callback time is unacceptable to caller. The caller selected day and time can also be validated against a database to confirm that agents are scheduled to be available to service the call at the selected day and time. If the caller wishes to select a different number (or if the ANI is not determinable), the system acquires callback information (e.g., phone number, time to call, customer name, etc.) to schedule an alternative time for callback, or to specify additional callback information (e.g., the purpose of the call), then step  220  is invoked to prompt the caller to enter or say the callback information they wish to change. Additionally, the caller may be prompted for additional identifying information (such as an account number, etc.) that can be delivered to the agent for use when handling the callback to the caller. Additional features such as providing a next available callback time or having the caller select the subject matter of the call and/or describe the purpose of the call may also be incorporated into steps  216 ,  218 , and/or  220 . Similar features will be appreciated by one of ordinary skill in the art.  
         [0038]     Once the callback information has been approved by the caller in either step  218  or  220 , step  222  is invoked causing the callback information including the callback number (whether original ANI or newly gathered) along with the callback time is recorded in a database. Other data associated with the callback may also be recorded in the database. Next, step  224  is invoked to play the caller a message that says that they will be called back in [time interval] at [phone number], and then step  226  is invoked to disconnect the call.  
         [0039]     In addition, the caller may be provided with a numerical priority code and/or a phone number to utilize if the caller misses the scheduled callback, that is, the number and/or code can be used when calling into the system again at a later time. This number and/or code may be utilized for any number of reasons such as to identify the caller, the identify the caller as a callback participant, to prioritize the call ahead of others in the holding queue, to immediately provide the caller with the callback option to reschedule another callback, etc.  
         [0040]      FIG. 3  describes the process of placing the scheduled callback in accordance with an embodiment of the present invention. With reference to  FIG. 3 , when the scheduled callback time arrives for any such scheduled callback, step  302  is invoked to retrieve the stored callback number and possibly other associated data from its stored location in the database. Next, step  304  initiates a callback by automatically dialing the retrieved callback number. Once the number is dialed, the call progress is monitored in steps  306 ,  308 ,  310 ,  312 , and  314  to determine if it results in a no answer, busy, not in service, answering machine, or a human answer. If the call is not answered by a person, the call may be handled by predetermined rules depending on the call result. For example, busies can be retried every M minutes, not in service numbers can be output to a report or logged if desired, no answers can be retried every hour, and answering machines/voicemails can be left an automated message by the system that has been pre-recorded, such as “this is XYZ company and we were returning your call, please call us back at your convenience at 800-xxx-xxxx).” These are example rules only, and one of ordinary skill in the art would appreciate that other rules, time intervals, contingencies, etc. may be implemented and are within the scope of the present invention.  
         [0041]     If the call results in no connection and a service signal (e.g., disconnected or not in service signal) is detected by step  310 , then step  316  logs the result in a report and stores it in the database, and step  324  ends the call. If the call results in a no connection and step  312  detects a busy signal, then step  318  is invoked to process the call (e.g., flag the number as one that needs to be tried again after a certain interval of time) and step  324  ends the call. If no connection occurs and does not result in a busy signal or a service signal (e.g., disconnected or not in service signal), then step  330  is invoked to end the call after either a certain number of rings or particular time interval.  
         [0042]     If the call results a connection as detected by step  308 , then step  314  determines if the call resulted in a human answer or not. If not, then step  322  is invoked to take appropriate action depending on the type of connection that has occurred (e.g., answer machine, voicemail, answering services such as a privacy director, etc.) If the call results in a human answer, then step  320  determines if an agent is immediately available. If an agent is immediately available then step  328  is invoked to connect the call to the available agent. When the call is connected to the agent, it is within the scope of the present invention that the agent receive an indicator that identifies this call as a callback. This can be either a message on their screen, a different script on their screen, or what is know as a “whisper on connect”, whereby the agent hears a whisper message in their headset when the call is connected, such as “callback.” This whisper message cannot be heard by the caller.  
         [0043]     However, if the call is answered and there are no agents immediately available to take the call, step  326  is invoked and a message is played that says, for example, “this is your callback from [company name], we will now connect you”, and the call is then switched to the next available agent in step  332  as soon as any agent completes the call they are currently servicing. In the illustrative embodiment, they are connected to the next available agent, as it is within the scope of the present invention that the called back party does not enter the then existing queue of calls waiting to be serviced by agents. In addition, the message played may include additional information such as advertisements, product information, instructions (e.g., have you account number ready), etc.  
         [0044]     Many modifications and other embodiments of the inventions set forth herein will come to mind to one skilled in the art to which these inventions pertain having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the inventions are not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.