WO1996005685A1 - System and method for scripting - Google Patents

System and method for scripting Download PDF

Info

Publication number
WO1996005685A1
WO1996005685A1 PCT/US1995/010208 US9510208W WO9605685A1 WO 1996005685 A1 WO1996005685 A1 WO 1996005685A1 US 9510208 W US9510208 W US 9510208W WO 9605685 A1 WO9605685 A1 WO 9605685A1
Authority
WO
WIPO (PCT)
Prior art keywords
script
agent
display
customer
data
Prior art date
Application number
PCT/US1995/010208
Other languages
French (fr)
Inventor
Robert M. Pacilio
Eric O. Varness
Carmen K. Bos
Original Assignee
Digital Systems International, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Digital Systems International, Inc. filed Critical Digital Systems International, Inc.
Publication of WO1996005685A1 publication Critical patent/WO1996005685A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/50Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
    • H04M3/51Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2201/00Electronic components, circuits, software, systems or apparatus used in telephone systems
    • H04M2201/38Displays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13072Sequence circuits for call signaling, ACD systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13103Memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13299Bus

Landscapes

  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Telephonic Communication Services (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The present invention provides a graphic user interface allowing a user to create, edit and execute telephone scripts for use by an agent in presenting information to a customer. The system utilizes a WINDOWS® graphical user interface to define panels within a script and the interrelationship of the panels. The individual panels contain action objects, such as dialog for use with a customer, and possible customer responses to customer queries. The system allows the user to create dialogs that include information obtained from a database. Thus, each script is customized in substantially real time to include information pertaining to the individual customer and the agent conversing with the customer. Additional action objects, such as customer responses, cause the script to branch in various directions that are easily defined by the user. The script can proceed from one panel to another, from one panel to another branch in the script, or to another independent script. The system can be implemented with a host computer and a plurality of agent workstation computers. Alternatively, the system may be implemented on a network in which the scripts are contained in a network server, and the plurality of agent workstations are also coupled to the network. The agent utilizes the created scripts in presenting information to the customer and gathering information from the customer. The script may branch depending on data from the database or supplied to the system by the agent.

Description

Description
SYSTEM AND METHOD FOR SCRIPTING
Technical Field
The present invention relates generally to a scripting tool and. more specifically, to a system and method for creating and using scripts with a database.
Background ofthe Invention
Telephone communication is a major form of communication for both personal use and for business. Many business transactions that were once done in person can now be transacted over the telephone. Many businesses have both inbound telephone calls from customers and outbound telephone calls to customers. Hardware and software systems have been developed to assist a business in the management of its inbound and outbound telephone calls.
A typical inbound-outbound telephone call management system uses a central computer, such as an IBM 370 mainframe, to store a customer database. A list of customers to be contacted is passed to an outbound dialer that places telephone calls to customers on the list. Modern telemarketing systems use predictive dialing algorithms, well known in the art, to place a number of telephone calls corresponding to the number of agents predicted to be available when the customer answers the telephone. An inbound-outbound telephone call management system is advantageous in that it allows a single agent to contact a large number of customers in a relatively short period of time.
Inbound-outbound telephone call management systems are used in a variety of customer contact operations. For example, bill collection, donation solicitation, customer service, customer ordering, and the like, are typically performed by an inbound-outbound telephone call management system. These activities may generically be referred to as telemarketing. Some large companies may have their own internal telemarketing group that performs a limited variety of customer contact operations. However, some organizations use outside telemarketing companies to perform telemarketing services on their behalf. Such telemarketing companies often represent several organizations and may perform different customer contact operations for each of their clients. The different customer contact operations, known as call campaigns, may have differing goals and methods of operation. For example, a bill collection call campaign requires a different communication process for dealing with the customer than does a customer service call campaign.
To assist agents in the telemarketing process, some telemarketing companies provide the agents with a script to guide the conversation with the customer. For example, a donation solicitation call campaign may have an introductory script, followed by a solicitation script, and a conclusion script. The script may be linear in that it proceeds linearly from a first script to a final script without any variation. Other scripts may branch in one or more directions depending on responses given by the customer. In the donation solicitation example above, the script may branch in one way if the customer indicates a willingness to donate, and branch a second way if the customer is initially unwilling to donate.
The preparation of these scripts is a difficult task. The resulting scripts are not easily edited to fulfill the unique objectives of a particular call campaign. Furthermore, the prior art telemarketing systems do not have the ability to access customer records in a manner that permits customer data to be dynamically incoφorated into the script for each customer or control branching in the script. Therefore, it can be appreciated that there is a significant need for a telemarketing user interface that permits easy editing and dynamic adjustment to the unique need of each call campaign and individual customers. The present invention fulfills these needs and provides additional advantages as well.
Summary ofthe Invention The present invention is embodied in a system and method for the creation and utilization of scripts used by an agent to provide information to a customer. A graphical user interface is provided for a user to design scripts used by an agent and includes a data source selector to permit the user to define a source of data records for insertion into the script, a script selector to define a plurality of panel displays to be sequentially displayed on the computer display in a display sequence, an action object selector to define action objects associated with each of the panel displays, with the action object providing information to the agent or gathering information from the agent, and a data entry unit to permit the entry of text data and commands by the user, with at least a portion ofthe text data being designated as dialog to be presented by the agent to the customer. In one embodiment, the action object includes an update object to permit the agent to edit the customer data. The action objects may also include an external event action to control the interaction of the system with a telephone system driver with the driver providing initial data to the system to initiate the display of the panels. The action objects may also include a fulfillment action object to permit the generation of a record related to a completion of providing information to the customer.
The system may also include a flow check means to determine the validity of paths from a beginning of the script to an end of the script. The system may also include action objects provided by the user and requesting information from the agent, with the agent information determining the display sequence. The system may further include a graphical display generator coupled to the computer display to provide a graphical representation of the stored panel displays and the interrelation ofthe stored panel displays. In an alternative embodiment, the agent presents a prepared script using a telephone call management system. The system includes an agent workstation having a telephone in a computer workstation, with the computer workstation including a computer display and a data entry unit. A database storage area is coupled to the agent workstation and contains data records. A script storage area contains a plurality of stored script displays to be displayed on the computer display in a display sequence with at least one of the stored script displays requesting agent input on the data entry unit. A record display generator accesses the database storage area and displays on the computer display at least a portion of the data records relating to a customer. A driver couples the customer to the agent workstation.
In one embodiment, the driver is a telephone interface that couples the agent telephone to a customer telephone to permit telephonic communication between the agent and the customer. The telephone interface may be an outbound dialer placing a telephone call to the customer. Alternatively, the telephone interface may be an automatic call distributor to couple an inbound telephone call from a customer to an agent. In yet another alternative embodiment, the telephone interface is a telephone switch coupling a telephone call between the customer telephone and the agent telephone.
The driver provides initial data to the script storage area to initiate display of the stored script displays. The record display generator performs substantially real time access of the customer record information relating to the customer.
In one embodiment, the system includes validation means to compare agent input to a predetermined range of valid data inputs with the validation means accepting user input only if it falls within the predetermined range of validated inputs. The predetermined range of validated inputs may be displayed on the computer display.
The system further includes retreat means to change from a current script display to an immediately preceding script display in response to the agent input. The system also includes advance means to return to the current script display from the previous script display following the use ofthe retreat means.
The display sequence of the screen displays may be determined by the agent input. In one embodiment, the system includes a computer network coupling the agent workstation to a data server, with the script storage area being contained within the data server and accessed by the agent workstation using the computer network. In another embodiment, the computer network couples the agent workstation to a plurality of data servers with the script storage area being contained within one of the data servers and accessed by the agent workstation using the computer network. The system also includes means for selecting one of the plurality of data servers to contain the script storage area.
The system also includes means for generating new scripts and editing existing scripts with the newly generated scripts and the edited scripts being stored within the script storage area.
In yet another alternative embodiment, the user interface uses a client-server architecture with a computer workstation including a computer display and a data entry unit, and having a client-server presentation layer within the computer workstation to control the presentation of information to the agent. A database storage area is coupled to the computer workstation and contains data records. A client-server database logic layer controls access to the database storage area, and a client-server database layer controls the actual storage of records in the database storage area and the retrieval of data records from the database storage area. A script storage area contains a plurality of storage script displays displayed on the computer display in a display sequence with at least one of the storage script displays requesting agent input on the data entry unit. A client server application logic layer within the computer workstation controls the display sequence. A record display generator accesses and displays at least a portion of the data records on the computer display, and a driver couples the customer to the computer workstation. With the client-server architecture, control of the data is split between the client, which is the computer workstation, and the server contained within the database storage area.
Brief Description of he Drawings
Figure 1A is a functional block diagram of the present invention.
Figure IB is a functional block diagram of the system of Figure 1A incoφorated into a network. Figure 2 illustrates the client-server architecture of the system of
Figure 1A.
Figure 3 A is a pictorial representation of a script created by the system of Figure 1A.
Figure 3B is a pictorial representation of one panel of the script of Figure 3A.
Figure 4A is a screen display of the system of Figure 1A used to identify a data source.
Figure 4B is a screen display of the system of Figure 1A used to identify a data source using a pull-down menu. Figure 5 is a screen display of the system of Figure 1A used to create a new panel.
Figure 6 A is a screen display of the system of Figure 1A used to define action objects in a panel.
Figure 6B is a screen display of the system of Figure 1A used to resize and position action objects in a panel.
Figure 6C is a screen display of the system of Figure 1A used to define dialer action objects in a panel.
Figure 6D is a screen display of the system of Figure 1A used to define script toolbars. Figure 7A is a screen display of the system of Figure 1A used to create a dialog action object in a panel.
Figure 7B is a screen display of the system of Figure 1A used to access a database in the dialog action object in a panel.
Figure 7C is a screen display of the system of Figure 1A used to access a database data field in the action object of Figure 7B. Figure 8 is a screen display of the system of Figure 1A used to define additional action objects in a panel.
Figure 9 is a screen display of the system of Figure 1A used to define font characteristics ofthe action objects in Figure 8. Figure 10 is a screen display of the system of Figure 1A used to define script actions associated with the action objects of Figure 8.
Figure 1 1A is a screen display of the system of Figure 1A used to define action object branching for the action objects of Figure 8.
Figure 1 IB is a screen display of the system of Figure 1A used to define one-to-one branching for the action objects of Figure 8.
Figure 1 1C is a screen display of the system of Figure 1A used to define user logic branching for the action objects of Figure 8.
Figure 12 is a screen display of a flowchart displayed by the system of Figure 1A to provide a graphical flowchart representation of a script. Figure 13 A is a screen display of the system of Figure 1A used to define a director command.
Figure 13B is a screen display of the system of Figure 1A used to enter telemarketing service representative data.
Figure 13C is a screen display of the system of Figure 1A used to group telemarketing service representatives.
Figures 14A-14D are sample screen displays used by a telemarketing service representative when using the script generated by the system of Figure 1A.
Detailed Description ofthe Invention
The present invention is directed to a system and method for generating a script for use by an agent on an inbound-outbound telephone call management system. The term "script" as used herein describes a collection of display screens or panels that are presented in a specific order for use by an agent or telemarketing service representative (TSR). Scripts are independent collections of panels and can be branched to and used by several different TSRs in a variety of calling campaigns. The term "panel" as used herein is the display that a TSR will see when the script is executed. Panels are independent objects that can be branched to and used in multiple scripts. The present invention allows the simple creation of panels and scripts, as well as simple editing of an already created panel or script. The user or supervisor creates the scripts using the principles of the present invention. At a later time, the TSR executes the scripts in communicating with the customer. Thus, the present invention is directed to both the creation of the script by the user and the execution of the script by the TSR. The present invention resides in a system 10, shown in the functional block diagram of Figure 1A. The system 10 includes a central processing unit (CPU) 12, and a memory 14. The memory 14 may comprise both read-only memory (ROM) and random access memory (RAM). The system 10 also includes a storage unit 18 such as a floppy disk drive, a hard disk drive, CD ROM, or the like. Also included in the system is a display 20 such as a video display. A cursor 22 is positioned on the display 20 to enter data and commands into the system 10. A keyboard 24 allows the user to enter text data into the system 10. In the preferred embodiment, the system 10 includes a pointing device 26, such as a mouse, joystick, trackball, or the like to position the cursor 22 on the display 20. One or more command buttons 28. such as mouse buttons, are used to enter commands into the system 10 in a conventional manner. The system may also include a printer 30 to allow finished scripts to be printed for review. The presently preferred embodiment of the system also includes a network interface 32 to permit the system to be connected to multiple users via a network such as a local area network (LAN). The printer 30 may be coupled to the system 10 directly, as shown in Figure 1A, or via the network interface 32. The various components of the system 10 are interconnected by a bus 34. which may carry power and timing signals, as well as data signals.
In one embodiment, the system 10 is incoφorated into a network 38, shown in Figure IB. The network 38 includes a network server 40 that is coupled to a plurality of TSR workstations 42 by a network connection 46. The network server 40 controls communication on the network connection 46 to assure that the various elements do not access the network connection simultaneously. As is well known by those familiar with computer networks, the flow of data on the network is controlled by a data server (not shown). It is the function of the data server to control data flow once access to the network connection is given by the network server 40.
The TSR workstation 42 is typically a personal computer, each of which contains the network interface 32. Each TSR workstation 42 also includes a telephone headset 50 to permit the TSR to verbally communicate with a customer. The telephone headsets 50 are coupled to a telephone control system 52, which is in turn coupled by a plurality of trunk lines 54 to a telephone exchange 56. The telephone control system 52 includes an automatic call distributor (ACD) (not shown) to distribute inbound telephone calls received from the telephone exchange 56 and an outbound dialer (not shown) to place outbound calls onto the telephone exchange, and the network interface 32 to couple the telephone control system to the network connection 46. The operation of the telephone control system 52 is well understood by those of skill in the art and will not be discussed in detail herein. The outbound dialer (not shown), which may be a predictive outbound dialer, automatically places outbound telephone calls to customers. When a customer answers the outbound telephone call, the outbound dialer connects the answered telephone call to the telephone headset 50 of the next available TSR workstation 42. As the answered outbound telephone call is coupled to the telephone headset 50. the system 10 delivers the appropriate script to the TSR workstation 42. Similarly, the ACD (not shown) receives inbound telephone calls from customers and connects them to the telephone headset 50 of the next available TSR workstation 42. As the inbound telephone call is coupled to the telephone headset 50, the system 10 delivers the appropriate script to the TSR workstation 42. The script and telephone call (either inbound or outbound) arrive at the TSR workstation 42 and the telephone headset 50 at substantially the same time, thus permitting the TSR to follow the script when conversing with the customer.
The system 10 also includes a database 60 that contains customer records, and may also contain information about the TSR. The database 60 may be included in the storage unit 18 (see Figure 1A) or may be an external database that is part of a another computer (not shown). The system 10 may be coupled to the database 60 by the network connection 46, by direct connection via dedicated I/O lines (not shown), modem connection (not shown), or the like. The present invention is not limited by the manner in which the database 60 is connected.
The system 10 utilizes a client-server architecture illustrated in Figure 2. Prior art system maintain control over the script, the application program and the database in the mainframe computer (not shown). Even if the prior art systems utilize a network, the control over the various elements is maintained within the data server (not shown). In contrast, the client-server architecture of the system 10 distributes control over the system elements. As seen in Figure 2, this control is accomplished in several layers. The first layer in the client-server architecture is a presentation layer 64, which controls the presentation of data to the TSR. The second layer in the client-server architecture is an application logic layer 66. The application logic layer controls the logical flow of the application program and the presentation of panels in a script. The application logic layer 66 may use mathematical calculations or apply logical calculations to control the logical flow of the application program. The third layer in the client-server architecture is a database logic layer 68. The database logic layer 68 controls access to the database 60 and assures the integrity ofthe database. The database logic layer 68 may use passwords and other security measures to control access to the database 60. The final layer in the client-server architecture is a database layer 70, which controls the storage and retrieval of data in the database 60.
As discussed above, prior art systems implement all of these control layers in the mainframe (not shown). In the presently preferred embodiment, the presentation layer 64 and the application logic layer 66 are in the client portion of the system 10, which is the TSR workstation 42 (see Figure IB). The database logic layer 68 controls access to the database 60 and assures the integrity of the database. The database logic layer 68 and the database layer 70 are implemented in the server, which resides in the database 60 itself or in the data server (not shown). Client-server architecture is well known in the art of computer systems and need not be discussed in detail herein. However, the use of the client-server architecture in the system 10 greatly simplifies the creation and use of scripts.
The client-server architecture of the system 10 has several advantages. One advantage is that data processing is distributed across several computers rather than concentrated in a single large computer such as the mainframe computer (not shown). If the mainframe computer fails, no TSRs will be able to perform their job. The client-server architecture of the system 10 reduces this risk by distributing the processing across several computers such as the TSR workstations 42. Another advantage of the client-server architecture of the system 10 is lower cost to purchase the computers and lower cost to maintain the computers. Mainframe computers are very expensive to purchase and maintain. This is not true of the distributed computers using the client-server architecture ofthe system 10. While the example presented below are directed to a scripting system for use on an inbound-outbound telephone system, those of ordinary skill in the art will readily recognize the applicability of the system 10 to any presentation of data from a database. The examples of scripting presented herein are initiated by some action in the telephone control system 52, such as the ACD (not shown) detecting an inbound telephone call from a customer, or the outbound dialer (not shown) placing an outbound telephone call to a customer. However, the system 10 may be used to present information to a customer using any telephone switching device to initiate the start of the script. Indeed, the system 10 may be initiated using the keyboard 24 or pointing device 26 to enter data such as a customer name, account number, or simply a start command. The advantage of the system 10 is its ease in the creation of a script as well as its ability to readily access one or more databases 60 and branch within the script or to other scripts based on data entered by the TSR or obtained from the databases. For example, a tax collector visiting a taxpayer at a remote location can access the database 60 via the modem (not shown) and make a presentation to the taxpayer using the script to guide the presentation. The element that initiates the presentation of the script, whether it is the telephone control system 52, the keyboard 24. the pointing device 26, or the like, will be referred to herein as a driver 62 (see Figure IB). The driver 62 is illustrated as coupled to the network connection 46. however, the driver could also be directly connected or connected via a modem (not shown). The driver 62 provides some initial data to the system 10 to indicate the start ofthe presentation of data in the form of a script.
A sample script 100, shown schematically in Figure 3 A, includes a start panel 102. an end panel 104, and a plurality of interconnecting panels 106 in two alternative branches 108 and 110, respectively. The start panel 102 of the script 100 may include, for example, an introductory dialog and a request to speak with a particular individual. The availability of the individual determines whether the script 100 continues along branch 108, or branch 1 10. For example, if the requested individual is not available, the script may proceed through the panels 106 in branch 108. On the other hand, if the requested individual is available, the script 100 may proceed through the panels 106 in branch 1 10.
The individual panels 106 contain one or more action objects 1 12. An "action object," as used herein, is an element placed on the panel 106 to either provide information to or gather information from the TSR. Action objects 1 12 are a type of control element within the script 100. The system 10 includes a number of commands that the user can implement to create action objects 1 12. Action objects 1 12 are independent items and can be used on multiple panels 106. For example, Figure 3B illustrates a typical panel 106 from the branch 1 10. The panel 106 includes action objects 114, 116, and 1 18. The action object 1 14 in Figure 3B provides a dialog to the TSR. The dialog in the action object 1 14 includes a customer query, or question, that the customer must answer. The panel 106 may include information from the database 60 (see Figure IB). The action objects 116 and 118 are in the form of buttons to permit the TSR to enter the appropriate response to the customer query. In the example shown in Figure 3B, the TSR selects the YES action object 1 16 if the customer is interested in obtaining additional information. Alternatively, the TSR selects the NO action object 1 18 if the customer expresses no interest in obtaining additional information. The script 100 reacts accordingly to the selection of one of the action objects 1 16 or 1 18. For example, the selection of the NO action object 1 18 may cause the script 100 to proceed directly to the end panel 104 to terminate the customer contact. Alternatively, if the TSR selects the YES action object 1 16, the script may proceed to the next subsequent panel 106 in the branch 1 10. Thus, the system 10 permits the construction of sophisticated scripts 100 for use in a broad range of telemarketing applications.
The script 100 may be a simple outline for the TSR to follow, or a complete dialog that the TSR follows word for word. The system 10 can include both types of scripts 100, and selects the script that is most appropriate for the TSR to whom the customer phone call will be connected. For example, an experienced TSR may need only the outline version of the script 100. while a relatively inexperienced TSR needs the complete step-by-step version of the script. The system 10 dynamically selects the appropriate script 100 and delivers it to the TSR workstation 42. The dynamic selection of the script 100 will be discussed in detail below.
As discussed above, the system 10 may include the insertion of customer data from the database 60 (see Figure IB) or the insertion of data related to the TSR. The database 60 (see Figure IB) contains customer information such as name, address, telephone number, account number, and other related information. The system 10 may also include TSR information such as the name of the TSR, the name of the company represented by the TSR, the skill level of the TSR, or the like. The system 10 permits the simple selection of a data source of customer data and TSR data to be inserted into the panels 106 (see Figure 3A) of the script 100. The selected data source defines the location of database 60 that will be used within the script 100. The data source can be developed internally within the system 10 or the external database 60 (see Figure IB). There are several types of data sources available in the system 10. For example, the customer data may be external to the system 10. and the TSR data internal to the system. The selection of the appropriate data source is illustrated in the sample display screen of Figure 4A, which is displayed on the display 20 (see Figure 1 A). The user designates the data source by positioning the cursor 22 on a "Data Source" selector button 130 using the pointing device 26 (see Figure 1A). The user can specify a new data source by positioning the cursor 22 on a "New Source" selector button 132. or edit an existing source by positioning the cursor 22 on an "Edit Source" selector button 134. The selected selector button 130, 132, or 134 is activated by positioning the cursor 22 over the desired selector button and depressing a button on the keyboard 24 or the command button 28 on the pointing device 26. Various techniques for entering commands into the system 10 using the display 20 and the pointing device 26 are well known to those of ordinary skill in the art and will not be described in greater detail herein. It should be noted that the present invention is not limited by the specific form in which data and commands are entered into the system.
Returning again to the example in Figure 4A, the New Source selector button 132 has been activated by the user. The user enters a data source name and description in a "Data Source Name" data field 138 and a "Data Source Description" data field 140, respectively. The Data Source Name data field 138 and Data Source Description data field 140 may be completed by typing data in using the keyboard 24 (see Figure 1A). Alternatively, the system 10 stores a list of valid data sources that can be accessed via a conventional pull-down menu by positioning the cursor 22 on a data source menu 142 in a toolbar 143 and depressing the command button 28. A data source pull-down menu 154 is illustrated in Figure 4B. The operation of pull-down menus is well known in the art and will not be described in detail herein. The pull-down menu provides a list of all possible data sources that the user may select by positioning the cursor 22 on the desired data source and depressing the command button 28. Additional data sources can be added to the pull-down menu using well-known techniques that will not be discussed herein.
The user may designate the data source type as internal or external by positioning the cursor 22 on an "Internal" data source selector button 144 or an "External" data source selector button 146, respectively. Access to the database 60 may be limited to individuals having a valid password. The individual generating the script 100 (see Figure 3 A) may only access a database for which he has a valid password. The user enters his "Password" in a password data field 148 using the keyboard 24 (see Figure 1A). The user may also enter additional information into appropriate data fields such as a "Vendor" data field 150 and a "User Identification" data field 152. In addition, if the system 10 will access a data source via the network 38, the system requires the user to enter a server name in a "Server Name" data field 156 and to log onto the network using a login identification in a "Login Identification" data field 160, as well as to enter a user password in a "Network Password" data field 162. Only users entering the appropriate login identification and password are given access to the network 38. Security measures of this type are well known in the field and will not be described in greater detail herein. When all the desired information has been entered into the appropriate data fields, the user confirms the selection of information by positioning the cursor 22 (see Figure IB) on an "Update" selector button 166, and depressing the command button 28. Thus, the system 10 contains features to control access to both the database 60 and the network 38.
The following description provides greater detail of the techniques used to create a script 100. As previously discussed, the script 100 (see Figure 3 A) typically includes a plurality of panels 106 containing one or more action objects 1 12. To create or modify a panel 106, the user positions the cursor 22 on a "Panel" selector button 180, shown in Figure 5. It should be noted that the activation of the Panel selector button 180 causes the system 10 to change the toolbar 143 and display a new set of selector buttons at the bottom of the display 20 (see Figure 1A). The new toolbar 143 and new selector buttons in Figure 5 provide the user with options related specifically to the creation of the panel 106. The user can create a new panel 106 by positioning the cursor 22 on a "New" selector button 184 and depressing the command button 28. Alternatively, the user may modify an existing panel 106 by selecting an "Open" selector button 186 in the manner previously described. The user may delete the panel 106 by activating a "Delete" selector button 188 in the manner previously described.
In the example shown in Figure 5. the user has activated the Create panel selector button 184. A panel name and a panel description are entered using the keyboard 24 to enter data into a "Panel Name" data field 192 and a "Panel Description" data field 194. respectively. The system 10 also identifies the individual who created the panel 106, as well as the time and date of creation. In addition, if the panel 106 is modified, the system 10 includes the identity of the individual modifying the panel, as well as the time and date of the modification. The creation and modification data is entered automatically by the system when the user activates an "Update" selector button 198. A clock function within the CPU 12 (see Figure 1A) keeps track of the current date and time in a well-known manner. The programming of time and date using the update selector button 198 is well known to those of skill in the art and will not be described in greater detail herein. The user can edit an existing panel 106 by typing the name of the desired panel in the Panel Name data field 192. Alternatively, the user can select the panel 106 using a panel pull-down menu that displays a list of all panels 106 previously created. The user displays the list of existing panels 106 by activating a panels menu 200 on the toolbar 143. The activation of the panels menu 200 causes the panels pull-down menu to be displayed in a conventional manner. The user selects the desired panel 106 from the panels pull-down menu by positioning the cursor 22 at the desired panel and depressing the command button 28.
In the example of Figure 5, the user has activated the New selector button 184 to create a new panel 106. The user confirms the data entered in the Panel Name data field 192 and Panel Description data field 194 by activating an OK selector button 168 in the manner previously described.
The user defines the contents of the panel 106 by selecting one or more action objects 1 12 to place in the panel. The user defines action objects 1 12 in the panel 106 by activating an "Object" selector button 210, shown in Figure 5. The activation of the object selector button 210 causes the cursor 22 to be displayed as an object on the display 20. The user selects the location on the display 20 where the action object 112 will be inserted by positioning the object cursor 22 at the desired location on the display and depressing the command button 28 twice (i.e., a double click). The selection of a location on the display 20 for the action object 1 12 causes the system 10 to display an action object features menu 214, shown in Figure 6A. The user may define the action object 1 12, such as the dialog action object 1 14 (see Figure 3B) by activating a "Define" selector button 218 in a conventional manner. The activation of the Define selector button 218 permits the user to enter a dialog for the panel 106 using the keyboard 24. The Define selector button 218 is used for each action object 1 12 to define its attributes. Those attributes will vary depending on the particular form of the action object 1 12. For example, the Define selector button 218 is used with the dialog action object 1 14 to enter the text data that will be presented by the TSR. However, the Define selector button 218 is used with the button action objects 1 12 and 1 14 (see Figure 3B) to enter the label of the button action object. As previously discussed, the dialog action object 1 14 may include both dialog and data inserted from the database 60.
An example of the dialog action object 114 is illustrated in Figure 7A, where dialog to the customer includes data obtained from two different databases. The first sentence of the dialog action object 1 14 includes the identity of the TSR contacting the customer and a request for the name of the agent by inserting [system . Agent _ Name]. When this particular dialog action object 1 14 is executed, the system 10 will insert the name of the TSR from a database identified as "System". The location of the database 60 identified as System is defined in a manner previously described. The first sentence of the dialog action object 114 also includes a request for the insertion of the customer's first and last name from a database identified as "Cellular." The user inserts this request by typing [Cellular . Customer . First _ Name] [Cellular . Customer . Last _ Name]. As can be seen, the system 10 provides a simple technique for the user to insert both TSR data and customer data. It should be noted that the system 10 accesses two separate databases 60 to obtain the data records for the TSR and the customer. Prior art systems do not provide such ready access to different databases.
As an alternative to typing in the name of the database 60 and identifying the desired data field within the database, the system 10 provides drop-down menus to assist the user in selecting the proper database 60 and data field within the database. In the example of Figure 7B, the dialog action object 1 14 will access the database 60 identified as "Credit Card Host" and will insert the customer's first and last names, respectively. The user can enter this data in the manner described above using the keyboard 24. However, the user can activate a "Field" selector button 120 causing the system 10 to generate the display of Figure 7C. In Figure 7C, a data source drop-down menu 122 is shown. The user can expand the data source drop-down menu 122 in a conventional manner to display all data sources that have been identified to the system 10. Similarly, a table drop-down menu 124 permits the user to select various types of data tables within the selected data source. The table drop-down menu 124 can also be expanded in a conventional manner. The system 10 also includes a data field drop-down menu 126 to permit the user to select a specific data field for insertion into the dialog action object 1 14 (see Figure 7B). The data field drop¬ down menu 126 is illustrated in expanded form in Figure 7C. The user select the desired data field in a conventional manner. It should be noted that the contents of the table drop-down menu 124 and the data field drop-down menu 126 will vary depending on the selected data source. In the example shown in Figure 7C, the Credit Card Host database 60 has a data table for customer data. The particular data fields include customer address, account balance, business telephone number, and the like. However, the System database 60 illustrated in Figure 7A contains information about the TSR. If the System database 60 were selected in the data source drop-down menu 122, the table drop-down menu 124 and the data field drop-down menu 126 will have different contents. Thus, the Field selector button 120 (see Figure 7B) provides a powerful tool that enables the user to easily select data for insertion into the dialog action object 1 14. When the script 100 is actually executed by a TSR, the system 10 dynamically edits the dialog action object 114 to customize the dialog for each individual TSR using TSR data from the database 60. The system 10 can also dynamically access the database 60 to include information such as customer sales records, customer payments, or the like. The system 10 accesses the database 60 substantially in real time such that the script 100 is customized for the particular customer that the TSR is talking to. The customized script 100, containing both custom TSR data and custom customer data, is delivered to the TSR workstation 42 of the particular TSR at substantially the same time as the customer telephone call is connected to the telephone headset 50 of that TSR. Returning again to Figure 6A, the system 10 provides a number of different action objects that can be placed in the panel 106. The user can create a text action object, such as the dialog action object 1 14, by activating a "Text Box" selector button 254a. A text button, such as the action objects 252 and 254, can be created by activating a "Text Button" selector button 254b in a conventional manner. A data field can be created by a "Field" selector button 254c. The data field command is an interactive control that captures data from the TSR using the keyboard 24. the pointing device 26, or the like. The data field command is also used to display data from the database 60. A calculated data field can be created by activating a "Calculated Field" selector button 254d. The use of calculated data fields will be discussed below. A group box can be created by activating a "Group Box" selector button 254e. The Group Box selector enables the user to group items together for display to the TSR. For example, the TSR may collect information from the customer and the information can be categorized and displayed to the TSR as one or more groups. A list box, to provide the TSR with a variety of possible responses to customer queries, can be created by activating a "List Box" selector button 254f The use of list boxes is well known and need not be discussed herein. A radio button can be created by activating a "Radio Button" selector button 254g. A check box can be created by activating a "Check Box" selector button 254h. The use of radio buttons and check boxes is well known to those of ordinary skill in the art and will not be described herein. A drop down menu can be inserted into the panel 106 by activating a "Drop Down" selector button 254i. A picture can be inserted into the panel 106 by activating a "Picture Button" selector button 254j. The use of picture buttons simplifies operation of the system 10 by the TSR. A picture can also can be inserted into the panel 106 by activating a "Picture" selector button 254k. Pictures provide useful information to the TSR and can also be used as motivational tools for the TSR.
The panel 106 may also include an update control, which provide the ability to update data fields, including user-defined data validation. The user selects the control event option by activating an "Update Control" selector button 220 in a conventional manner. The Update Control selector button 220 allows the action object 1 12 to use data obtained from the customer to update the database 60. For example, the user may have a new business address or telephone number that can be entered into the database 60 using the Update Control selector button 220. The user may define the availability of action objects 1 12 on the panel 106 by activating an "Object Availability" selector button 222. Activation of the Object Availability selector button 222, performed in a conventional manner, provides the action object 1 12 the ability to enable or disable other action objects on the panel 106. Object availability refers to two different types of control that can be imposed on action objects 1 12. The action object 1 12 can be made visible or invisible in the panel 106. This is useful in presenting data to the customer where a particular action object 1 12 is invisible unless the customer responds to a customer query in a particular fashion. The system 10 permits the user to change the object availability from invisible to visible, or vice versa, depending on the response to other action objects 112. The second type of object availability control is to enable or disable a particular action object. The user can enable/disable object action availability in the same manner as discussed above with respect to visible/invisible object action availability.
The user may further define the panel 106 by activating a "Script Actions" selector button 224 in a conventional manner. The Script Actions selector button 224 controls the branching features of the action object. The function of branching features will be discussed in greater detail below.
The system 10 includes the capability of defining interactions between the system and the driver 62 (see Figure IB). The user can define the interactions with the driver 62 by activating a "Dialer Actions" selector button 226 in a conventional manner. The Dialer Actions selector button 226 provides the action object the ability to send information to the driver 62 and receive information from the driver 62.
Activation of the Dialer Actions selector button 226 (see Figure 6A) causes the system to change to the display of Figure 6C where actions such as release the telephone line, transfer a telephone call, release a customer record from the TSR workstation 42 (see Figure IB), manual call, manual hang¬ up, and the like, may be inserted into the action object 12 by selecting one or more dialer action buttons from a dialer action menu 238.
The system 10 has the ability to generate and deliver documents as a result of the interaction with the customer. The generation and delivery of documents is another action object 1 12 in the panel 106. The user activates document generation and/or delivery by activating a "Fulfillment" selector button 228 in a conventional manner. Documents may be printed on the printer 30 (see Figure 1A), stored in the memory 14, or the storage unit 18 for printing at a subsequent time, or delivered to the network server 40 (see Figure IB) for distribution to another TSR workstation 42, or for transmission through the telephone control system 52 to a remote location as a data file, or a facsimile message. The present invention is not limited by the specific manner in which documents are generated and delivered. The system 10 allows the user to insert instructions to the TSR for each of the action objects 1 12 on the panel 106. To enable this feature, the user activates a "Microhelp" selector button 230. Activation ofthe Microhelp selector button 230 for a particular action object 1 12 allows the user to enter a limited TSR instruction 232 using the keyboard 24. As the TSR positions the cursor 22 (see Figure 1A) over the action object 112, the TSR instruction 232 for that particular action object is displayed. Thus, the system 10 can display a different user instruction 232 for each action object 1 12 as the cursor is positioned on different action objects.
The size of the action object 1 12 is easily controlled by the user by activating a "Resize" selector button 234. Activation of the Resize selector button 234 causes the system to change to the display of Figure 6B where a resize control box 236 allows the user to change the height, width and position of the action object 112 on the panel 106. The appearance of the panel 106 during the creation process is identical to the appearance of the panel when it is displayed to the TSR during the actual customer presentation. This identity of appearance is sometimes referred to as WYSIWYG (what you see is what you get). To simplify the design process, the system 10 maintains a WYSIWYG approach to the display of the panels 106. The use of WYSIWYG is simplified by use of the graphical user interface capabilities of a WINDOWS™ (trademark of Microsoft Coφoration of Redmond. Washington) environment. In addition to the various action objects 1 12 that the user can insert in the panel 106, the system 10 allows the creation of script toolbar buttons that are displayed on the display 20 (see Figure 1 A) throughout the entire presentation of the script 100. The user can define a script toolbar button by activating a "Toolbar" selector button (not shown) causing the system 10 to change to the display of Figure 6C where a toolbar creation menu 240 is displayed. The user can define the script toolbar button in the same manner as the action object 1 12. Unlike the action object 1 12, which is active only during the display of the panel 106 containing the action object, script toolbar buttons maintain their functionality throughout the script. This feature is useful when, for example, the user wishes to accommodate the customer hanging up the telephone at some point during the presentation. It is possible to include a "Hang Up" action object
1 12 in each panel 106, however it is simpler for the user to create a single Hang
Up script toolbar button (not shown) than a Hang Up action object in each panel.
In addition to the dialog action object 1 14 shown in Figure 7 A. the system permits the user to insert script action objects by activating the script actions selector button 224 as previously described. In the example shown in Figure 7A, the dialog action object concludes with a question for the customer. The user may define a "Continue" action object 250 and a "No Time" action object 252, both shown in Figure 8. If the customer is interested in obtaining additional information, the user selects the Continue action object 250 in a manner previously described. Alternatively, if the customer does not wish to obtain additional information, the user selects the No Time action object 252. Thus, the system will branch in two different directions depending on the selection ofthe action object 250 or the action object 252.
When the action objects 250 and 252 are initially created using the Text Button selector button 254b, there are no labels or branching instructions associated with the action objects. The user labels the action objects by selecting the desired action object in the manner described above. Activation of the Text Button selector button 254b causes the system 10 to change to the display of Figure 9. The user types in the desired name of the button in a button name data field 260 using the keyboard 24 (see Figure 1A). The user may also select a font and font style using a font pull-down menu 262 and a font style menu 266 in a conventional manner. The object availability for the action object 1 12 is selected using availability check boxes 272 in a conventional manner. The user confirms the selection of the button name, font, and font style by activating the OK selector button 270. The user can select the parameters associated with other action objects, such as fields, calculated data fields, group boxes, list boxes, radio buttons, and check boxes in a similar fashion.
The user also defines the script action associated with the selector button by activating the Script Actions selector button 224 (see Figure 6A). In response to the activation of the script actions selector button 224, the system switches to the display of Figure 10 where a pop-up menu 274 provides a user with a plurality of script action choices associated with the particular action object 1 12. The user may select no script action by selecting a "None" selector button 276. The user may cause the script to return to the first panel by selecting a "First Panel" selector button 278. The user may also change to the last panel by selecting a "Last Panel" selector button 280. Alternatively, the user may cause the script to divert to the previous panel or to the next panel by selecting a "Previous Panel" selector button 282 or a "Next Panel" selector button 284. respectively. The system may also cause the script 100 to divert to a branch by selecting a "Branch" selector button 286. The system may define the current panel 106 as the end panel by selecting an "End" selector button 288. The user confirms the choice of script action by activating an "OK" selector button 292 as previously described.
In the example provided in Figure 10, the user has selected the branch option by activating the Branch selector button 286. This causes the system 10 to display an action object branching menu 300, shown in Figure 1 1 A. There are four types of script branching included in the system 10. A "Single" selector button 304 is used to branch to a single panel 106 within the script 100 or to another script 100. The user can select branching to another panel 106 by selecting a "Panel" selector button 306 and branching to another script 100 by selecting a "Script" selector button 308.
The user can further define the type of branching operation by selecting a "One-to-One" selector button 310. or a "User Logic" selector button 312. The One-to-One selector button 310 causes the script 100 to branch to specific panels 106 or additional scripts based on the data entry by the TSR. For example, a customer query may have, for example, three different possible responses. The script 100 will branch to three different panels 106 depending on the response. Thus, there is a one-to-one correspondence between the possible responses and the branching. An example of one-to-one branching is illustrated in Figure 1 1 B where a pop up menu 318 allows the user to define the branching for each of a plurality of possible responses 319.
The User Logic selector button 312 is used to perform complex branching. Complex branching includes the logical interrelation of customer answers and data from the customer database. Activation of the User Logic selector button 312 causes the system 10 to switch to the display of Figure 1 1C where the user enters the logical relationship in a user logic menu 313. In the example of Figure 1 1C, the script 100 branches if customer usage of a service exceeds a predetermined amount. Conventional logical operators, such as AND. OR NOT, greater than, less than, and equal, are available with the system 10. The use of these logical operators is well known and need not be described in greater detail.
The user may wish to create a loop in the script 100 such that completion of one or more panels 106 will cause the script to return to the current panel. This option is activated by selecting a "Return to Panel" selector button 314. The user confirms the selection of the action object branching by activating the OK selector button 316 as previously described. Thus, the system 10 provides the user with simple tools to create complex scripts 100 that can be used in a variety of telemarketing applications. Panels 106 can be used in more than one script 100. The script 100 may include branching from one script to another, and can include branching within a single script based on simple customer responses to questions, or complex user-defined logic. When the panels 106 of a script 100 have been defined by the user, the system 10 can display an entire script outline on the display 20 (see Figure 1A) by simply defining the start panel 102 (see Figure 3 A) of the script 100. For example, the cellular telephone customer script illustrated in Figures 7-1 1 is shown in complete script form in Figure 12. The system begins at the start panel 102 and displays all panels 106 in a graphical flowchart 320. The flowchart 320 illustrates three possible branches 324, 326, and 328 from the starting panel 102. The branch 324 is used if the TSR selects the No Time action object 252 (see Figure 8). The branch 324 includes a "Recall" panel 332 which directs the TSR to inquire whether the customer wishes to be recontacted in the future. If the customer does wish to be recontacted in the future, the recall panel 332 includes a branch 336 in which the database 60 (see Figure IB) is edited to include an indication that the customer should be recontacted in the future. If the customer is not interested in being recontacted in the future, the recall panel 332 includes a "Not Interested" branch 334 in which the database 60 is edited to indicate that the customer does not wish to be contacted in the future. Both the set recall branch 336 and the Not Interested branch 334 proceed to a "Close-No Sale" panel 340. The Close-No Sale panel 340 terminates the customer contact and ends the script 100. If, in the start panel 102, the customer indicates a desire to hear additional information, the TSR selects the Continue action object 250 (see Figure 8). The script 100 follows the continued branch 326 to a "Thirty-Minute" panel 340 if the customer's telephone usage during a given time period is less than thirty minutes. The customer telephone usage is obtained from the database 60 in a manner previously described. Alternatively, if the customer's telephone usage is greater than thirty minutes in a given time period, the flowchart 320 includes the continue branch 328 to an "Over Thirty-Minute" panel 344. The Thirty-Minute panel 340 and an Over Thirty-Minute panel 344 each include a not interested branch 334 and a YES branch 348. The Not Interested branch 334 causes the script 100 to proceed to the Close-No Sale panel 340 described above. The YES branches 348 are selected if the customer is interested in obtaining the service offered by the TSR. The YES branch 348 from the Thirty-Minute panel 340 and the Over Thirty-Minute panel 344 both proceed to a "Data Verify" panel 350, which can verify customer records such as name, address, cellular telephone number, cost data, and the like. The Data Verify panel has a continue branch 352 that directs the script 100 to a "Close- Sale" panel 354. Thus, the flowchart 320 provides a graphical illustration of the script 100 that the user may examine to verify the script.
The system 10 includes a script verification procedure to assure that the script 100 can proceed from the start panel 102 to the close-no sale panel 340 or the close-sale panel 354. Thus, the system assures that there is some path from the beginning of the script 100 to the end of the script. The script verification simply assures that all panels 106 have some action object 1 12 to allow the script to exit the panel (i.e., the panel is not a dead-end) and to make sure that each panel has an end or access to the end of a script. It should be noted that the script 100 may contain more than one end such as, for example, the Close-No Sale panel 340 and the Close-Sale panel 354.
As previously discussed, the system 10 has the ability to assign specific scripts 100 to different TSRs. The system 10 uses a directors command to define the way in which a script 100 is started with initial information. The director's command also provides branching based on initial information, as well as the ability to assign TSRs, or groups of TSRs, to specific scripts. The user enables the director's command by activating a "Directors" selector button 360, shown in Figure 12, in a conventional manner causing the system 10 to change to the display of Figure 13 A. The user further selects the creation of a new directors command by activating a "New" selector button 362, or edits an existing director's command by activating an "Open" selector button 364. The user selects the source of initial data to begin the script 100 using a driver menu 370 to select the desired driver 62 (see Figure IB). The user can select the driver 62 using the keyboard 24 or using the drop-down menu feature of the driver menu 370. As previously discussed, the driver 62 can be the telephone control system 52, the network 38, another computer (not shown), the keyboard 24, or the like. It should be noted that the system 10 can operate with any telephone call management system such as a Mosaix™ (trademark of Digital Systems International, Inc. of Redmond, Washington) telephone call management system, a CTI system, an ATT G3R system, or the like. The system 10 uses an appropriate software driver to interact with the particular driver 62.
The system 10 also permits the user to select the script 100 associated with the particular driver 62 using a script pull down menu 372 in a manner previously described. Individual TSRs may be assigned to one or more scripts 100 using an agent assignment selection command. If the system 10 has only a single script 100, the user may designate all TSRs to process the script by selecting a "Single Script" selector button 374 and an all agents selector button 376 in a manner previously described. Alternatively, the user can assign TSRs to scripts by grouping the TSRs. This is useful when the script 100 contains a branch that should be presented only by TSRs having a specific skill level. For example, if the script 100 is for bill collection, one branch may be for a customer has a past due account for more than 60 days and another branch for past due accounts between 30 days and 60 days. Less experienced TSRs can be assigned to a group for the 30-60 day past due accounts, while a group of more experienced TSRs can be assigned to a group for the more than 60 day past due accounts.
The user can assign agents using one-to-one TSR assignment by activating a "One-to-One" selector button 380. Activation of the One-to-One selector button 380 allows the user to individually assign each TSR to a particular script 100. The user can also assign groups of TSRs using the One-to- One selector button 380.
The user may also assign TSRs to script using complex logic by activating a "User Logic" selector button 382. The process of defining the user logic was previously discussed with respect to script branching and need not be repeated here. User logic assignment of a TSR is useful, for example, when agents have different levels of experience. The user logic may also include customer information to determine which TSR will receive the script 100. For example, certain customers may be given to TSRs familiar with that particular customer. The user logic option allows the user to direct the script 100 to the desired TSR based on a variety of factors.
Information about a TSR can be added to the system 10 by activating an "Agent" selector button 384 causing the system to change to the display of Figure 13B where an agent menu 386 is displayed. The TSR data can include such items as name, password, skill level, and controls on access to the system 10. The TSR data is entered in a conventional manner using the keyboard 24.
The TSR can be assigned to a predetermined group by activating a "Groups" selector button 388 causing the system 10 to change to the display of Figure 13C where a group menu 390 is displayed. Using the group menu 390, the user can assign each TSR to one or more groups. As discussed above, the script 100 and customer contacts can be directed to an individual TSR or to a TSR in a designated group.
In its most elementary form, the system 10 must include one driver
62, one director, one script 100, one panel 106 in the script, and one action object 1 12 on the panel. However, the system 10 provides the tools to create multiple complex scripts 100 with multiple drivers, directors panels 106 and action objects
1 12. Once created, the script 100 can be easily edited by the user.
Once a script 100 has been created by the user, the system can execute the script in a simulation mode to allow the user to test it. In the simulation mode, the system 10 executes the script 100 using simulated data from the database 60, or using actual customer data. Once the script 100 has been tested, the user can install and activate the script for execution by the TSR in a conventional manner.
An example ofthe execution ofthe script 100 by a TSR is provided in Figures 14A-14G. In Figure 14 A, the display 20 (see Figure 1A) contains the start panel 102 (see Figure 12) as an introduction, which includes the dialog action object 114 (see Figure 8), as well as the continue action object 250 and the no time action object 252. Note that the dialog action object 1 14 in Figure 14A uses TSR data to indicate the actual name of the TSR. as well as customer data. The TSR data and customer data added to the dialog action object 1 14 is taken from the database 60 (see Figure IB), the storage unit 18 (see Figure 1A), or the like, in substantially real time while the telephone control system 52 (see Figure IB) connects the customer telephone call to the telephone headset 50 of the appropriate TSR workstation 42. If the customer indicates an interest in obtaining additional information, the TSR activates the Continue action object 250. As a result of the selection of the Continue action object 250, the script 100 branches to a new panel 106. In the example presented above, the information from the database 60 indicates that the customer averages less than thirty minutes of cellular phone use per month. Thus, the script 100 uses the Continue branch 326 (see Figure 12) and switches to the Thirty-Minute panel 340. The Thirty-Minute panel 340 is shown in Figure 14B and contains an additional dialog action object 420. a "YES" action object 422. and a "Not Interested" action object 424. The TSR presents the dialog from the dialog action object 420 and waits for the customer to respond. If the customer is interested, the TSR selects the YES action object 422, causing the script 100 to proceed along the YES branch 348 (see Figure 12) to the Data Verify panel 350 as previously discussed. In the example presented above, the customer is not interested. In that event, the TSR activates the Not Interested selector button 424 causing the script 100 to proceed along branch 334 (see Figure 12) to the Close-No Sale panel 340, displayed in Figure 14C. In Figure 14C, the user presents a final dialog action object 430 to the customer and activates either a "Detail Update" selector button 432 or a "Hang Up" selector button 434. Activation of the Detail Update selector button 432 causes the system 10 to update the database 60 as previously described with respect to the Update Control selector button 220 (see Figure 6A). Activation of the Hang Up selector button 434 causes the telephone control system 52 (see Figure IB) to terminate the customer telephone call. In addition, completion ofthe script 100 causes the system 10 to change the status of the TSR to indicate that the TSR is available for processing additional telephone calls.
If the customer in the example above utilized the cellular phone for more than thirty minutes per month, the script 100 will proceed along the Continue branch 328 (see Figure 12) to the Over Thirty-Minute panel 344. In the Over Thirty-Minute panel 344, shown in Figure 14F, a different dialog action object 440 would have presented a different message to the customer. As previously discussed, the decision to proceed along the Continue branch 326 (see Figure 12) to the Thirty-Minute panel 340 or the Continue branch 328 to the Over Thirty-Minute panel 344 is based on customer record data obtained from the database 60. In addition, the potential customer savings in the cellular telephone example presented above varies depending upon the customer telephone usage. The customer savings data can be derived directly from the database 60. or calculated using data from the database. The use of calculated data fields is well known in by those skilled in the use of databases and need not be described in detail herein. Thus, the system dynamically adjusts the contents of the script 100 so that the script is customized for each customer. In addition, as previously discussed, the system 10 can provide different scripts 100 to different TSRs processing the same type of telephone calls. For example, if the system 10 is used in a bill collection environment, a first script 100 may be provided to a relatively inexperienced TSR for a customer whose bill is only thirty days overdue. A customer whose bill is ninety days overdue would have a different script 100 and may be directed to a more experienced TSR. Thus, the system can not only dynamically adjust the script 100, but can direct different scripts to different TSRs depending on criteria selected by the user. The system 10 also permits the simple editing of scripts that have already been created so that they may be customized for different applications.
It is to be understood that even though various embodiments and advantages of the present invention have been set forth in the foregoing description, the above disclosure is illustrative only, and changes may be made in detail, yet remain within the broad principles of the invention. Therefore, the present invention is to be limited only by the appended claims.

Claims

Claims What is claimed is:
1. An agent interface system for use by an agent on a telephone call management system, the system comprising: an agent workstation having a telephone and a computer workstation, said computer workstation including a computer display and a data entry unit; a database storage area coupled to said agent workstation and containing data records; a script storage area containing a plurality of stored script displays to be displayed on said computer display in a display sequence with at least one of said stored script displays requesting agent input on said data entry unit, a record display generator accessing said database storage area and displaying on said computer display at least a portion of said data records relating to a customer; and a driver to couple said customer to said agent workstation.
2. The system of claim 1 wherein said driver is a telephone interface to couple said telephone to a customer telephone to permit telephonic communication between the agent and said customer using said stored script displays to govern said telephonic communication.
3. The system of claim 2 wherein said telephone interface is an outbound dialer placing a telephone call to said customer.
4. The system of claim 2 wherein said telephone interface is an automatic call distributor to couple an inbound telephone call from said customer to said telephone.
5. The system of claim 1 wherein said telephone interface is a telephone switch to couple a telephone call between a customer telephone and said telephone.
6. The system of claim 1 wherein said record display generator performs substantially real-time access of said customer record information relating to said customer.
7. The system of claim 1, further including validation means to compare said agent input to a predetermined range of valid data inputs, said validation means accepting said user input only if said user input is within said predetermined range of valid data inputs.
8. The system of claim 7 wherein said predetermined range of valid data inputs is displayed on said computer display.
9. The system of claim 1, further including retreat means for changing from a current script display to a previous script display immediately preceding said current script display in said predetermined display sequence in response to said agent input.
10. The system of claim 9, further including advance means for returning to said current script display from said previous script display following the use of said retreat means.
1 1. The system of claim 1 wherein said display sequence is determined by said agent input.
12. The system of claim 1 , further including a computer network coupling said agent workstation to a data server, said script storage area being contained within said data server and accessed by said agent workstation using said computer network.
13. The system of claim 1, further including a computer network coupling said agent workstation to a plurality of data servers, said script storage area being contained within one of said data server and accessed by said agent workstation using said computer network.
14. The system of claim 13. further including means for selecting said one data server to contain said script storage area.
15. The system of claim 1 , further including script generation means for generating a user selected script comprising a plurality of new script displays, said new script displays being stored in said script storage area as said stored script displays.
16. The system of claim 15 wherein said user selected script has a beginning and an end, the system further including flow check means for determining a valid path from said beginning to said end.
17. The system of claim 15 wherein said display sequence is determined by said script generation means.
18. The system of claim 15 wherein said display sequence is determined by said agent input.
19. The system of claim 1, further including script alteration means for altering a selected one of said stored script displays to generate an altered script display, said altered script display being stored in said script storage area in place of said selected one stored script display.
20. The system of claim 1 wherein said script has a first stored script display and a last stored script display and said display sequence is a linear flow sequence from said first stored script displays to said last stored script display.
21. The system of claim 1 wherein said display sequence is a branching display sequence with a plurality of branches, the system further including a branch logic control to control said display sequence based on said agent input.
22. A user interface system for use by an agent to present information to a customer using a client-server architecture, the system comprising: a computer workstation including a computer display and a data entry unit; a client-server presentation layer within said computer workstation to control the presentation of the information to the agent; a script storage area containing a plurality of stored script displays to be displayed on said computer display in a display sequence with at least one of said stored script displays requesting agent input on said data entry unit; a client-server application logic layer within said computer workstation to control said sequence; a database storage area coupled to said computer workstation and containing data records; a client-server database logic layer to control access to said database storage area; a client-server database layer to control storage of said data records in said database storage area and retrieval of said data records from said database storage area; and a record display generator to access said database storage area using said database logic layer and said database layer and to display on said computer display at least a portion of said data records relating to a customer.
23. The system of claim 22, further including a computer network coupling said agent workstation to a data server, said script storage area being contained within said data server and accessed by said agent workstation using said computer network.
24. The system of claim 22, further including a computer network coupling said agent workstation to a plurality of data servers, said script storage area being contained within one of said data server and accessed by said agent workstation using said computer network.
25. The system of claim 24, further including means for selecting said one data server to contain said script storage area.
26. A graphic user interface system for a user to design scripts used by an agent in providing information to a customer, the system having a computer display viewable by the agent, the system comprising: a data source selector to permit the user to define a source of data records for insertion into the script; a script selector to define a plurality of panel displays to be sequentially displayed on the computer display in a display sequence; an action object selector to define action objects associated with each of said panel displays, said action objects providing information to the agent or gathering information from the agent; and a data entry unit to permit the entry of text data and commands by the user, at least a portion of said text data being designated as a dialog to be presented by the agent to the customer.
27. The system of claim 26 wherein said plurality of stored panel displays have an established interrelationship, the system further including a script action object to define said interrelationship.
28. The system of claim 26 wherein said action objects include an update object to permit the user to edit said customer data.
29. The system of claim 26 wherein said action objects include an external event action to control the interaction of the system with a telephone system driver, said driver providing initial data to the system to initiate display of said plurality of display panels
30. The system of claim 26 wherein said action objects include a fulfillment action object to permit the generation of a record related to a completion of providing information to the customer.
31. The system of claim 16 wherein the script has a beginning and an end. the system further including flow check means for determining a valid path from said beginning to said end.
32. The system of claim 26 wherein the script includes a request for information from the agent, said display sequence being determined by an agent input on said data entry unit in response to said request.
33. The system of claim 26 wherein said plurality of stored panel displays have an established interrelationship, the system further including a graphical display generator coupled to the computer display to provide a graphical representation of said stored panel displays and said interrelationship.
34. The system of claim 26, further including a clock to add time information to selected ones of said panel displays when defined by said script selector.
35. The system of claim 26, further including a graphical display generator coupled to the computer display to provide a graphical representation of action objects previously defined by said action object selector.
36. The system of claim 26, further including an internal storage area to store said source of customer data.
37. The system of claim 26, further including a remote storage area to store said source of customer data.
38. The system of claim 37, further including a computer network and a network server, said remote storage area being contained within said network server and accessed using said computer network.
39. The system of claim 26, further including an editor usable by the user to edit said data source.
40. The system of claim 26 for use with a plurality of agents, the system further including a director selector to designate selected agents from said plurality of agents by whom the script will be used.
41. The system of claim 40 wherein said director selector designates said selected agents based on agent data from said data source.
42. A scripting system for use by an agent to present information to a customer, the system comprising: an agent workstation having a computer workstation, said computer workstation including a computer display and a data entry unit; a database storage area coupled to said agent workstation and containing data records; a record display generator accessing said database storage area and displaying on said computer display at least a portion of said data records relating to a customer; a script storage area containing a plurality of stored script displays to be displayed on said computer display in a display sequence with at least one of said stored script displays requesting agent input on said data entry unit, and at least one of said stored script displays including said portion of said data records; and a sequence generator to determine said display sequence, said display sequence being determined at least in part by said agent input.
43. The system of claim 42 wherein said display sequence is determined by said portion of said data records.
44. A method for use by an agent on a telephone call management system for presenting information, the agent having an agent workstation having a telephone and a computer workstation, the computer workstation including a computer display viewable by the agent and a data entry unit, the method comprising the steps of: providing a database storage area coupled to the agent workstation and containing data records; providing a script storage area containing a plurality of stored script displays to be displayed on said computer display in a display sequence with at least one of said stored script displays requesting agent input on the data entry unit, accessing said database storage area and displaying on the computer display at least a portion of said data records relating to a customer; and coupling said customer to said agent workstation to allow the agent to present information from said script storage area to the customer.
45. A method for a user to design scripts used by an agent in providing information to a customer, the system having a computer display viewable by the agent, the method comprising the steps of: defining a source of data records for insertion into the script; defining a plurality of panel displays to be sequentially displayed on the computer display in a display sequence; defining action objects associated with each of said panel displays, said action objects providing information to the agent or gathering information from the agent; and entering text data and commands, at least a portion of said text data being designated as a dialog to be read by the agent to the customer.
46. A method of scripting for use by an agent to present information to a customer, the agent having an agent workstation having a computer workstation, said computer workstation including a computer display and a data entry unit, the comprising the steps of: providing a database storage area coupled to the agent workstation and containing data records; accessing said database storage area and displaying on the computer display at least a portion of said data records relating to a customer; providing a script storage area containing a plurality of stored script displays to be displayed on the computer display in a display sequence with at least one of said stored script displays requesting agent input on the data entry unit, and at least one of said stored script displays including said portion of said data records; and displaying at least a portion of said plurality of stored script displays on the computer display in said display sequence, said display sequence being determined at least in part by said agent input.
47. The method of claim 46 wherein said display sequence is determined by said portion of said data records.
PCT/US1995/010208 1994-08-12 1995-08-10 System and method for scripting WO1996005685A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US29002594A 1994-08-12 1994-08-12
US08/290,025 1994-08-12

Publications (1)

Publication Number Publication Date
WO1996005685A1 true WO1996005685A1 (en) 1996-02-22

Family

ID=23114223

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1995/010208 WO1996005685A1 (en) 1994-08-12 1995-08-10 System and method for scripting

Country Status (2)

Country Link
CA (1) CA2197456A1 (en)
WO (1) WO1996005685A1 (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997043849A1 (en) * 1996-05-15 1997-11-20 Siemens Schweiz Ag Computerized communication system
WO1998003005A1 (en) * 1996-07-12 1998-01-22 Europolitan Ab Method in telecommunication operating service
WO1998053593A1 (en) * 1997-05-20 1998-11-26 Mci Worldcom, Inc. System and method for providing call center-based customer services
WO1998053594A1 (en) * 1997-05-20 1998-11-26 Mci Worldcom, Inc. Generalized customer profile editor for call center services
WO1998058487A1 (en) * 1997-06-16 1998-12-23 Deutsche Telekom Ag Conversational prompting method for voice-controlled information and inquiry services involving computer telephony
WO2001048660A1 (en) * 1999-12-29 2001-07-05 Virtual Personalities, Inc. Virtual human interface for conducting surveys
US6377567B1 (en) 1997-07-16 2002-04-23 Mci Communications Corporation System and method for distributing data collected from call center services
AU773094B2 (en) * 2000-09-26 2004-05-13 Rockwell Electronic Commerce Technologies, Llc Method of creating scripts by translating agent/customer conversations
EP2068542A1 (en) 2007-12-04 2009-06-10 Accenture Global Services GmbH Method and system for providing a user interface to a call center agent which guides him through the conversation with a caller
WO2010035147A3 (en) * 2008-09-23 2010-07-08 Mind Works Limited Method and system for providing electronic documents

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10917524B1 (en) 2019-10-30 2021-02-09 American Tel-A-Systems, Inc. Methods for auditing communication sessions

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5001710A (en) * 1989-10-24 1991-03-19 At&T Bell Laboratories Customer programmable automated integrated voice/data technique for communication systems
EP0501189A2 (en) * 1991-02-25 1992-09-02 International Business Machines Corporation System for integrating telephony data with data processing systems
US5210789A (en) * 1991-06-28 1993-05-11 International Telecharge, Inc. Interactive telephone operator terminal
GB2273418A (en) * 1992-11-12 1994-06-15 Rockwell International Corp Programming a telephone system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5001710A (en) * 1989-10-24 1991-03-19 At&T Bell Laboratories Customer programmable automated integrated voice/data technique for communication systems
EP0501189A2 (en) * 1991-02-25 1992-09-02 International Business Machines Corporation System for integrating telephony data with data processing systems
US5210789A (en) * 1991-06-28 1993-05-11 International Telecharge, Inc. Interactive telephone operator terminal
GB2273418A (en) * 1992-11-12 1994-06-15 Rockwell International Corp Programming a telephone system

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997043849A1 (en) * 1996-05-15 1997-11-20 Siemens Schweiz Ag Computerized communication system
WO1998003005A1 (en) * 1996-07-12 1998-01-22 Europolitan Ab Method in telecommunication operating service
WO1998053593A1 (en) * 1997-05-20 1998-11-26 Mci Worldcom, Inc. System and method for providing call center-based customer services
WO1998053594A1 (en) * 1997-05-20 1998-11-26 Mci Worldcom, Inc. Generalized customer profile editor for call center services
WO1998058487A1 (en) * 1997-06-16 1998-12-23 Deutsche Telekom Ag Conversational prompting method for voice-controlled information and inquiry services involving computer telephony
US6377567B1 (en) 1997-07-16 2002-04-23 Mci Communications Corporation System and method for distributing data collected from call center services
WO2001048660A1 (en) * 1999-12-29 2001-07-05 Virtual Personalities, Inc. Virtual human interface for conducting surveys
US6826540B1 (en) 1999-12-29 2004-11-30 Virtual Personalities, Inc. Virtual human interface for conducting surveys
US7253817B1 (en) 1999-12-29 2007-08-07 Virtual Personalities, Inc. Virtual human interface for conducting surveys
AU773094B2 (en) * 2000-09-26 2004-05-13 Rockwell Electronic Commerce Technologies, Llc Method of creating scripts by translating agent/customer conversations
EP2068542A1 (en) 2007-12-04 2009-06-10 Accenture Global Services GmbH Method and system for providing a user interface to a call center agent which guides him through the conversation with a caller
US8031858B2 (en) 2007-12-04 2011-10-04 Accenture Global Services Limited Call flow framework for consistent troubleshooting across multiple vendors and locations
WO2010035147A3 (en) * 2008-09-23 2010-07-08 Mind Works Limited Method and system for providing electronic documents

Also Published As

Publication number Publication date
CA2197456A1 (en) 1996-02-22

Similar Documents

Publication Publication Date Title
KR100368353B1 (en) Kiosk and server connected to computer network
US6826745B2 (en) System and method for smart scripting call centers and configuration thereof
US7904799B1 (en) Method and apparatus for generating a link to a presented web page
US6839733B1 (en) Network system extensible by users
US6697825B1 (en) Method and apparatus for generating and modifying multiple instances of element of a web site
US8136027B2 (en) Method and apparatus for providing conditional customization for generating a web site
US5675637A (en) Method for automatically obtaining and presenting data from multiple data sources
US6075843A (en) User device-independent transaction model
US20150113448A1 (en) Method and apparatus for generating a web site with dynamic content data from an external data source integrated therein
US20100318365A1 (en) Method and Apparatus for Configuring Web-based data for Distribution to Users Accessing a Voice Portal System
JP3672231B2 (en) Business application system and operation method
JP2004530224A (en) Engine that presents a user interface based on a logical structure, such as a logical structure for a customer relationship management system, via a website
US7584283B2 (en) Method and apparatus to save and resume a session associated with a logical structure
US6102970A (en) System and method for optimizing a program containing a number of the flows through flow branches
WO1996005685A1 (en) System and method for scripting
CN107771389A (en) Visual interactive voice response system
US6868412B2 (en) Means for and method of displaying a visual decision tree model
US20050149855A1 (en) Graphical scratchpad
MXPA99008367A (en) Kiosk and server connected to computer network

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CA JP

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FR GB GR IE IT LU MC NL PT SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2197456

Country of ref document: CA

122 Ep: pct application non-entry in european phase