Abstract:
A smart telecommunications supervisor management workstation with monitoring system provides real-time operation statistics and graphical representation of system operation in real time. A standardized graphic user interface and a mouse-driven point and click user friendly interface minimize keyboard entry. A management workstation also generates reports using off-the-shelf spreadsheet packages incorporates data management functions via a highly refined user interface. The management workstation comprises an integrated system for generating alerts based on user-defined criteria for database information. Color-coded or shaded monochrome displays provide ease of viewing. Extensive use of icons allows quick identification and selection of management control functions.

Description:
This application is a continuation of application Ser. No. 07/706,251, filed May 28, 1991, now U.S. Pat. No. 5,381,470. 
    
    
     FIELD OF THE INVENTION 
     The present invention relates to supervisor management systems and, in particular, to a supervisor management workstation in a telephone information database system. 
     BACKGROUND OF THE INVENTION 
     Automated telephone systems are known which coordinate and optimize performance of operators of facilities for out-dialing large volumes of telephone calls and receiving large volumes of telephonic requests for information. Such systems typically involve a plurality of operators using telephones and operating terminals connected to computerized telephone management systems, called autodialers, which improve the efficiency of operations with high volume outbound calling requirements. Computerized autodial systems increase operator or agent productivity significantly and provide management with a tool for streamlining and controlling operations. These systems automatically place outbound calls from a predetermined list of phone numbers and keep track of no answers, busy signals, and other line conditions and connect live calls to an agent who is simultaneously furnished a data screen having information regarding the account of the phone number reached. In high volume calling operations, such as collections, direct telephone sales, fund raising and market research/polling, among others, these systems provide flexibility in the rate of call placement and can provide significant data management options. 
     Typical autodialing systems compile statistics relating to call scheduling, such as number of calls made per agent, average talk time and number of unanswered calls. Such information is typically maintained in a database in the autodialing system and can be compiled and massaged for batch report generation. Thus, reports based on statistics compiled by the automated out-dial system typically are not available to management until all data is transferred, received and processed at the end of a calling campaign. Such systems are of limited efficacy in keeping a supervisor apprised of the success or progress, or lack thereof, of an in-progress campaign. 
     SUMMARY OF THE INVENTION 
     A smart telecommunications supervisor management workstation is provided which has capabilities for accessing real-time operation statistics and providing graphical representation of system operation in real time so that a supervisor can be fully apprised of the progress of a running campaign and can make decisions or effectively implement strategies necessary to optimize productivity and effectiveness. 
     According to the invention a management workstation comprises an integrated system for generating alerts based on management/user-defined criteria relating to stored system parameter and campaign performance information or events. The system supervisor can specify events and conditions which will trigger real-time notification or &#34;alert&#34; when a user defined condition exists between a system parameter and a received parameter event. The &#34;alert&#34; can be in the form of an audible tone, or a screen message. Optionally, a user-defined program or &#34;script&#34; can be invoked upon detection of the alert, to direct the system to perform in accordance with a predetermined response. The management workstation according to the invention also provides the capability of generating reports using off-the-shelf spreadsheet packages and incorporates data management functions via a highly refined user interface. 
     Features of the invention include a standardized graphic user interface and a mouse-driven point and click user friendly interface minimizing keyboard entry. Color-coded or shaded monochrome displays provide ease of viewing while extensive use of icons allows quick identification and selection of management control functions. 
    
    
     DESCRIPTION OF THE DRAWING 
     FIG. 1 is a block diagram of a data processing device 2 such as a computerized autodial system having a supervisory management center terminal according to the invention; 
     FIG. 2 is a block diagram of a smart management center implementing the supervisory management system; 
     FIGS. 3A-3E are menu screens for invoking alerts from the smart management center; 
     FIGS. 4A and 4B are flow diagrams of the alerts function in the system of FIG. 1; 
     FIGS. 5A-5Z and 5A-1 are on-line instructional manual informational pages explicating alerts features and operation; 
     FIGS. 6A-6C are illustrations of alert notifications; and 
     FIG. 7 is a block diagram of one embodiment of the monitoring system of the present invention. 
     Further information about the alerts function according to the invention is presented in Appendix\I attached hereto and hereby incorporated by reference. 
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     Referring now to one embodiment of the present invention shown in FIG. 1, a data processing device 2 such as a computerized autodialing system, typically used in high volume out-dialing environments such as collection departments, incorporates a computerized autodialer 10, as the hub of the automated system. A plurality of agent terminals 12A, 12B, 12C are connected to the computerized autodialer which automatically dials out-bound calls from a predetermined list of phone numbers over a variable number of phone lines or trunks 14. The computerized autodialer 10 generates event signals upon the occurrence of events such as no answers, lines that are busy, network intercepts or lines answered by message machines, and connects live calls to any one of the several agents 12A-12C over voice transmission lines 13A-13C. Upon transferring a live call to any one of the several agents, the computerized autodialer 10 also transfers selected data to the agent terminal over a data associated with the call transmission line 15A-15C. Alternatively, data may be transferred over any optional network line 17 to the agent through a supervisor/manager terminal 18 discussed hereinafter. The furnished data may be retrieved by the autodialer 10 from a host computer 16 having mass storage and database management capabilities. The data furnished to the agent from the host 16, through the computerized autodialer 10 or the supervisor/manager terminal 18, typically is account information. The account information matches or is associated with the answered phone number processed by the autodialer 10. The agent receiving the live call addresses queries and/or collects information, accessing the host 16 database to store or retrieve the required information. 
     The autodialer 10 continues automatically placing out-bound calls and directing them to available agents while generating event signals in response to the placed calls and also transmitting event signals which can be utilized to generate statistics on agent and system performance. 
     The supervisor/manager terminal 18 as illustrated in FIGS. 1 and 2, is linked to the computerized autodialer 10 and assists in the management of the autodialer, and comprises an integrated monitoring system 19 for providing the supervisor real-time access regarding the autodialer system and the campaigns that it is processing. The supervisor/manager terminal 18 is preferably a smart terminal such as a reduced instruction set computer based parallel processing unit utilizing a UNIX Operating System, such as a Sun Sparc UNIX workstation. Alternatively, other UNIX based platforms can be used, such as a 486 based P.C. running UNIX or an IBM\RS6000, for IBM compatibility. The processor can be loaded to run off-the-shelf software for generating the user interface and accessing the database resident on the host 16. Preferably, the supervisor/manager terminal 18 is configured with a multiport synchronous/asynchronous interface 20 and substantial mass storage capabilities such as a tape drive 21 for system backup and a disk drive 22 for maintaining a supervisor/manager terminal 18 resident database. A point and click mouse 24 having as many as three\buttons, provides a suitable user interface to permit minimization of keyboard entries on keyboard 9. The supervisor/manager terminal 18 is interfaced to the computerized autodialer 10 through the synchronous/asynchronous interface 20 to pass and receive data, such as event records therebetween. A printer 26 can optionally be dedicated to the supervisor/manager terminal 18 to provide hard copy output of reports generated at the terminal using an off-the-shelf spread sheet package. Optionally, a modem 28 can be provided for remotely accessing the supervisor/manager terminal 18 for performing system diagnostics and debugging from remote sites. 
     It is desirable to store data/information associated with the autodialer 10 in a database supervised by and accessible to the supervisor/manager terminal 18. An integrated relational database of calling records, event logs, operator tables and all other data required for or generated from dialing are maintained in a database 220 which is part of monitoring system 19, FIG. 7, and on the disk drive 22. Data files preferably are maintained, within a relational database such as Sybase database management system, and are accessible to the autodialer 10 and the smart management center supervisor/manager terminal 18 via an interactive query language such as by standard query language (SQL) commands. 
     A graphical user interface facilitates data access and manipulation and process monitoring and control through the point and click mouse 24 user interface which is menu and icon driven in accordance with a graphical user interface based on Open Windows running under the UNIX Operating System. Icon features enable a supervisor, using the mouse 24, to quickly move between functions by pointing and clicking to select either information or actions available on the supervisor/manager terminal 18. 
     Major supervisory functions are identified on the supervisor/manager terminal 18 by icons 29, as illustrated in FIGS. 3A and 3B and further discussed hereinafter. 
     By pointing and clicking, for example, on the SPREADSHEET function the supervisor has access to spreadsheet report generation capabilities in accordance with the off-the-shelf spreadsheet available as discussed hereinbefore. The DATA MANAGEMENT icon encompasses utilities for uploading, downloading and accessing data as reports. The TOOLS icon relates to ancillary tools such as printer control, file maintenance, and other tasks that must be accessed to facilitate dialer operations. 
     The OPERATIONAL STATUS icon, as the name implies, permits the supervisor access to all status information available on the computerized autodialer 10. The supervisor can access for review, information pertaining to lines used and unused, lists, operator or agent data, workstation status information and system messages. While such information is available for review under the OPERATIONAL STATUS icon, any changes must be made thereto using facilities under the SYSTEM MANAGEMENT icon. 
     As illustrated in FIG. 3C, the SYSTEM MANAGEMENT icon 30 also provides the supervisor access to the ALERTS function available at the supervisor/manager terminal 18. The ALERTS function enables the system manager to specify events or system conditions to trigger a real-time notification system. The manager can set monitoring traps or conditions on the supervisor/manager terminal 18 that are activated by the occurrence or non-occurrence of specified events. The events may be defined in accordance with computerized autodialer parameters, on a per list basis, to monitor idle, wrap or talk times. For example, notification can be provided that the number of dropped calls has exceeded a preset quantity or a list can be automatically suspended when hold times exceed predefined limits. Notification is selectable and can be by means of an audible tone through an audible display device 11 and/or a screen notification (see FIGS. 6A-6C) such that the supervisor can immediately intervene and take corrective action suited to the situation at hand. Further, a script or userdefined program can be invoked upon an alert to automatically intervene and implement corrective action. 
     Referring now to FIGS. 3D and 3E, from the SYSTEM MANAGEMENT icon, the supervisor can pull down a menu and select &#34;ALERTS&#34; whereupon the ALERTS system functions become accessible. ALERTS comprises a series of related programs or functions. A first function permits a selectable alert to be stored in the database 220 from a file in the operating system. Thus, there is another function that manages the alerts in the database 220, facilitating deletion of alerts from the database 220. A function must run in the background to continually check the applicable system parameters for satisfaction of associated parameter conditions in the database 220. Finally, a notification function must be invoked upon satisfaction of an alert to provide the selected method of notification. 
     An ALERTS UTILITY screen 32, as illustrated in FIG. 3E, facilitates the menu-driven, creation, modification and deletion of an alert. An alert is created by selecting one of five\active alerts from an &#34;ACTIVE ALERTS&#34; list. Parameters for the selected alert can be established and &#34;inserted&#34; into the selected alert which can then be effected by designating that the system &#34;apply&#34; the alert as displayed. Point and click commands also permit alerts to be modified and deleted. The ALERTS UTILITY screen displays list names for all calling lists, active or suspended, which may be selected for applying an alert, at the creation of the alert. The supervisor/manager terminal\18 maintains a list of active alerts, which can be accessed via the ALERTS UTILITY screen and which are running or being checked in the background on the multitasking UNIX processor. 
     A flow chart diagramming the alerts function(s) running in the system background is illustrated in FIGS. 4A and 4B and the block diagram in FIG. 7. As discussed hereinbefore, the database 206 management system records parameter event 202 data and information 204 associated with the autodialer 10 or event data 204 internal to the monitoring system itself. As the ALERTS UTILITY runs in the background, the database is queried 50 for the existence of alerts that may have been created by a supervisor via the supervisor/manager terminal 18 and associated with a given parameter, 206. When an alert is found in the database the pertinent parameter and event data/information stored in the database is queried and a comparison of the pertinent stored parameters and received event signals is done to determine if the parameter alert condition 208 is satisfied 60. Such a determination is made for each alert found. For each alert condition satisfied, an alert notification method or condition 210 is invoked 70 in accordance with the alert as created by the supervisor. The supervisor/manager terminal\18 may beep and flash a message to notify 80 that a selected alert condition has been satisfied. Upon display, notification 80, the supervisor may use the mouse to point and click to stop the audible indicator by disabling the beeping at the supervisor/manager terminal 18. The supervisor may temporarily deactivate or dismiss 90 the alert for a selected period during which no further alerts in accordance with the particularly selected parameters will be notified. 
     The alert function may, for example, be configured to activate a user-defined program or &#34;script&#34; 100. Scripts are listed on the ALERTS UTILITY screen when available, and are invoked by setting the notify method to SCRIPT. Scripts can be written which impact or trigger off of any event selection in the ALERT event selection list. The scripts perform a specified operation when an alert is triggered and can be assigned during the definition of an alert to an alert which will invoke the script to correct a condition. Scripts may be used, for example, to assign a time of day at which a list is suspended, or to track hold times and terminate calls handled by the autodialer 10 so as to accelerate call pacing. Scripts may be standardized in accordance with significant parameters tracked by the autodialer 10 and maintained in the database. Alternatively, scripts may be customized and tailored to the particular hardware configuration and information tracking facility. 
     Upon receipt of an alert and invocation of a method of notification, a post alert wait time is established whereby the system will wait for a predetermined amount of time after sending an alert before checking the condition again. Such a delay gives the supervisor time to correct a condition or to delete or modify the alert. 
     Alerts are modified in the same way that they are created except that there is a modify selection which must be made instead of the insert selection as discussed hereinbefore with respect to creating alerts. It may be desirable at any time to delete an active alert whereupon, the manager can select the alert from the list of alerts, as illustrated in the ALERTS UTILITY screen and activate a delete function. The alert is thereby removed from the list and eliminated 110 from the database of alerts as described hereinbefore. 
     Although only three agents 12A-12C are shown, one of ordinary skill in the art can appreciate that such a system can serve many additional agents and that three are shown for illustrative purposes only. 
     While the system management center having a monitoring system 19 with alerts capabilities according to the invention is described in the context of a data processing device 2 having an auto-out-dialing telephony platform, it will be appreciated that such a system can be implemented in the context of an automated incoming call distribution facility or in the context of any other data processing system. 
     Although the ALERTS functions are described generally as functions or software modules, running in the background of a multitasking processor, it will be appreciated that hardware implementations can effect the functions as described and that hardwired state machines, microprocessors or the like can be used in a configuration to provide alerts according to the invention. 
     While the ALERTS system according to the invention is described as interrelated functions for creating, managing, checking and notifying alerts, it will be appreciated that any number of functions can be used to effect the alerts system as illustrated. 
     Although the invention has been shown and described with respect to exemplary embodiments thereof various other changes, omissions and additions in form and detail thereof may be made therein without departing from the spirit and scope of the invention. 
     APPENDIX I 
     System Definitions and Help Messages 
     ACTIVE ALERTS LIST: 
     The ACTIVE ALERTS list displays all currently programmed alerts. These alerts may be modified or deleted, and new alerts may be inserted into the list. (For procedures, see F1 help for DELETE, INSERT, and MODIFY command buttons.) 
     ALERT EVENT SELECTION LIST: 
     This list displays all of the types of events that can trigger alerts. To select a new type of event (to either modify an existing alert or create a new one), click on the event type with the left mouse button. (The highlighted selection will display next to the heading &#34;ALERT event&#34;.) 
     LIST NAME SELECTION LIST: 
     This list displays a selection of calling lists to which an alert might apply. To select a new calling list or lists, (either to modify an existing alert or create a new one), click on the selection with the left mouse button. (The highlighted selection will display next to the heading &#34;LIST name&#34;.) Note: Neither the list name selection list nor the list name heading will display if the event type is not list-related (e.g., time of day). 
     AVAILABLE SCRIPTS LIST: 
     Scripts are programs which can be assigned to alerts to perform specified operations. When an alert is triggered, the script assigned to the alert is invoked to correct the condition. (For example, a script might be assigned to a &#34;time of day&#34; alert to suspend a list at a certain time of the day.) To assign a script to an alert, set the Notify Method to SCRIPT, then highlight the desired script in the list of Available Scripts by clicking on it with the left mouse button. 
     RELATIONSHIP: 
     Click on the small triangle with the right mouse button to display the set of possible relationships (e.g., greater than, greater than or equal to, etc.) between an alert event and its alert value. To select a new relationship (to either modify an existing alert or create a new one), click on the selection with the left mouse button. (The highlighted selection will display button. (The highlighted selection will display next to the heading &#34;Relationship&#34;). 
     PERCENTAGE: 
     The percentage value (e.g. % of aborts/connects, % on hold, etc.) for the alert is assigned here by dragging the marker along the scale with the left mouse button. 
     TIME (h:m:s): 
     The time value (e.g., length of talk time, idle time, etc.) for the alert is assigned here. Hold the RIGHT mouse button down on the TIME button to first display the hour menu. DRAG the pointer down to the desired hours. Moving the still depressed pointer to the right displays minutes, then seconds, etc. Release the right minutes, then seconds, etc. Release the right mouse button when the selection (hours, minutes, seconds) is correct. (Note that you do not have to specify minutes or seconds.) 
     NOTIFY METHOD--ALERT: 
     The supervisor is notified of an alert condition by a beep and a screen message. The supervisor is responsible for correcting the alert condition. 
     NOTIFY METHOD--SCRIPT: 
     The supervisor is notified that an alert condition has occurred, and that the &#34;script&#34; condition has occurred, and that the &#34;script&#34; (program) assigned to the alert is correcting the alert condition. 
     To select ALERT or SCRIPT, click on the small triangle with the right mouse button to display selections, then click on the selection. If SCRIPT is selected, assign a script to the alert by clicking on one of the Available Scripts with the left mouse button. 
     START TIME: 
     The time of day that the alert will become active is set here. Hold the RIGHT mouse button down on the START TIME button to first display the hour menu. DRAG the pointer down to the desired hours. Moving the still depressed pointer to the right displays minutes, the AM/PM. Release the right mouse minutes, then AM/PM, Release the right mouse button when the selection (hour, minute, AM/PM) is correct. (Note that you do not have to select the minute, or the AM/PM distinction. AM is the default). (Note: If the alert is always active, select N/A--not applicable--from the hour menu). 
     STOP TIME: 
     The time of day that the alert will become inactive is set here. Hold the RIGHT mouse button down on the START TIME button to first display the hour menu. DRAG the pointer down to the desired hour. Moving the still depressed pointer to the right displays minutes, then AM/PM. Release the right mouse minutes, then AM/PM. Release the right mouse button when the selection (hour, minute, AM/PM) is correct. (Note that you do not have to select the minute, or the AM/PM distinction. AM is the default). (Note: If the alert is always active, select N/A--not applicable--from the hour menu.) POST-ALERT WAIT TIME: 
     This is the time which the system will wait after sending an alert before it checks for the condition again. The purpose of the delay is to give the supervisor time to correct the condition (or delete or modify the alert). Hold the RIGHT mouse button down on the WAIT TIME button to first display the 24 hour menu. DRAG button to first display the 24 hour menu. DRAG the pointer down to the desired hour. Moving the still depressed pointer to the right displays minutes, then seconds. Release the right mouse button when the selection (hours, minutes, seconds) is correct. (Note that you do not have to specify minutes or seconds). 
     LIST NAME: 
     This is the list or lists (from the list name selection list) to which the alert applies. Note: Neither the list name selection list nor the list name heading will display if the event type is not list-related (e.g., time of day). 
     APPLY: 
     The APPLY button enters the commands or selections currently displayed on the screen. Click on the APPLY button with the left mouse button. 
     DELETE BUTTON: 
     To DELETE an alert, first highlight the alert in the ACTIVE list, then click on the DELETE button with the left mouse button. 
     INSERT BUTTON: 
     To create a new alert, first highlight any existing alert (for simplicity, choose an alert similar to the one you wish to create). Next, change any of the displayed parameters (ALERT event, Relationship, ALERT value, etc.). Once all the new values have been selected, click on the INSErT button with the left mouse button. The new alert inserted after the one you originally highlighted. The original remains unchanged. 
     MODIFY BUTTON: 
     To MODIFY an alert, first highlight the alert in the ACTIVE list. Next, change any of the displayed parameters (ALERT event, Relationship, ALERT value, etc.). Once all the new values have been selected, click on the MODIFY button with the left mouse button. The alert will redisplay in the active list with the new values. 
     PRINT BUTTON: 
     To print the list of active alerts, click on the PRINT button with the left mouse button. 
     RESET: 
     The RESET button restores selections to what they were the last time they were entered with the APPLY button. Click on the RESET button with the left mouse button. Note that if no changes have been made since the last time APPLY was selected, the RESET button will have no affect.