Interactive Service System
This invention relates to an interactive service system, and in particular but not exclusively to an Internet based interactive help desk or appliance repair service for assisting in the linking up of a customer to the most appropriate agent.
The conventional way a customer interacts with a service or consumer product company is by way of letter or telephone. The customer wishing to enquire about a possible purchase, service or repair telephones the relevant company department. It is frequently the case that the customer first calls the incorrect department and/or is connected to a representative who is not able to handle the enquiry. Usually, the caller is given alternative telephone numbers to try or is transferred to different departments in search of the person who can deal with the enquiry. There is a tendency nowadays for companies to publicise telephone numbers which connect customers to a centralised call centre. Callers explain the nature of their enquiry to the call centre agent who then transfers them to the relevant department. Although these systems help customers find the right agent more quickly, they still need to explain the nature of their enquiry a second time after their call has been transferred. This is time consuming for both the customer and call centre.
A further disadvantage with this type of system is that a caller needs to give his or her name and address, product or service details every time a call or transfer between departments is made. Even if the customer has a reference number and knows what it is, this has to be stated every time the customer reaches the call centre and stated again after transfer. All of the information is lost every time the call is transferred.
Consumer product and service companies have begun to make use of the Internet as a means for communicating with existing and potential customers. Customers can visit a company web-site via direct Internet access or via an on-line Internet Service Provider (ISP) such as AOL™ or CompuServe™ etc. In such cases the customer's computer will connect to the Internet via a node, the node being a device such as a router provided by the ISP, through which electronic communications signals are
directed. The customer can view product and service information by scrolling through various menu choices sent to the user's screen by the company's web-site.
It is known to allow a customer using the internet to conduct keyword searches for particular products or services provided by a company. It is also known to provide a telephone call-back facility where the customer can send a request via the internet to be telephoned by the company. This is done either by the customer typing his telephone number into the relevant field of the page sent to his screen from the company's web-site or simply by 'clicking' on an appropriately identified telephone call-back button. When the customer sends his call-back request, the company receives a telephone call with a recorded message to the effect of: "this is an internet call-back request, please press T on your telephone keypad if you want to take the call". Whichever agent receives the telephone call is obliged to deal with the customer's query. The advantage with this arrangement is that the customer does not need to be put on hold until a company agent becomes free to talk to him and the company pays for the call.
The disadvantage with this kind of call-back system is that it does not provide for any interaction or exchange of information between the customer and the company until actual voice contact is made on telephone call-back. Hence, the disadvantages of the conventional telephone methods of communication outlined above remain. When the company agent makes telephone contact with the customer, the nature of the enquiry still needs to be established and the customer transferred to the appropriate agent within the company.
Some company web-sites will allow the customer to input some information, usually product identification, pertinent to their enquiry. At least in these circumstances, the company is able to route the enquiry to the department dealing with that product but as with the other systems, the degree to which the company is forewarned of the precise nature of the enquiry is very limited and it is still necessary to spend time during the initial telephone conversation with the customer establishing the relevant details of the enquiry.
It is an aim of the present invention to overcome or at least alleviate the disadvantages outlined above and provide a system which can enable a company to link the customer to the agent or department most able to respond to the enquiry prior to actual voice contact being made. To this end, it is an aim of the invention to allow for the information about the customer automatically to follow an electronically initiated service call from receipt thereof by a company, through one or more intermediaries, and through to a telephone call placed by the company agent to the customer. This avoids a need for the customer to supply the information more than once. It is a further aim to provide the company agent with some or all of the information entered on the web-site together with the history of the customer's previous calls.
According to the present invention, there is provided a system accessible for on-line communication with a user's computer, the system comprising means for electronically providing an information form comprising information fields for completion by the user in response to an enquiry, wherein the form includes means for capturing information which may be present in the user's computer and embedding same into the form when viewed by the user, and means for retrieving the information from the form and storing same in a database for subsequent retrieval.
In a preferred embodiment, the system includes a network server, such as a web server on an intranet or the internet. In this case, the system is operative to send the form to the computer of the user browsing that web-site in response to a service call. Placement of a service call by the customer by, for example, clicking on a button provided on the form, triggers said means for capturing the user identification information, such as name, telephone number, email and customer identification number (ID) which may be embedded within corresponding information fields of the form. The capturing means may be a program embedded within the form. In a preferred embodiment, the intranet or internet web-site is operative for generating a series of web-pages for browsing by the remote user, the pages containing a series of menu choices, prior to generation of the form. One of the pages may include a troubleshooting page which allows the user to select between a range of different problem possibilities. On selection of one of these, the web-site may generate a 'call service page' suggesting various solutions for the customer to try and giving the customer the option of placing a service call.
The form and/or a previously viewed page such as the 'call service page' may include an embedded program for capturing browser information from the internet user's computer in addition to the user identification information. The browser information may be in the form of URL codes of internet pages previously viewed from the internet web-site, these being embedded within the form or previously viewed page or 'service call page' for subsequent retrieval and display together with the identification information. In this case, the browser history represents the menu choices selected by the user thus providing an indication of the nature of the user's enquiry. Means may be provided for allowing an operator to transfer the viewed information to another operator or for establishing a voice telephone call to the user. If the browser history is captured in the 'call service page', the relevant URL information may be transmitted to the system and embedded in the form in a hidden field. This helps to ensure that the information pertaining to the customer is held or tied together as it is transferred between company operators.
The system is operative for receiving the form with information entered by the user and/or captured therein by the running of the capturing means and determining the presence of a customer ID. Use of a customer ID helps to maintain the association between the information relevant to the customer and the service call being made. Means may be provided for generating a customer ID in the event that no ID is retrieved from the form and storing the ID in a database, together with some or all of the identification information, perhaps alongside previous call history and/or account data already stored in the database. The system is operative for supplying the information embedded within the form for viewing on an operator's computer and combining this with information stored in the database relevant to that customer ID. The browser history may also be stored in the database. Means may be provided for allowing the operator to scroll through a list of forms presented by different users and for viewing short-form information for each list item. In this case, means is provided for retrieving and displaying the full identification information for a selected one of the listed items whereupon a decision can be made by the operator whether to respond by placing a telephone call to the user identified by the selected item or whether to transfer the item to another operator.
Embodiments of the present invention may be advantageously applied to an interactive service system which links customers to a help desk of a product or service company. In such a case, the user is the customer and the operator is the agent or representative of the company.
According to the present invention, there is provided a computer program which when run on a computer provides [generates] a form containing information fields, wherein the form has a program embedded therein which is run when the form is viewed by a user on a computer monitor to capture data from the user's computer for subsequent retrieval. The program may be operative for storing the data in a database and creating a customer ID in the event no ID is retrieved from the captured data. The embedded program may be operative for capturing the browser history of the user's computer particularly in the case where the program is run on an internet web-server.
The computer program may be provided on a software carrier suitable for installation on a computer. The carrier may be any computer readable medium such as a CD- ROM or may be a data-stream comprising a signal modulated to carry the computer program.
According to the present invention, there is further provided a method for providing information to a networked computer at a customer service or product provider's call centre comprising electronically providing [generating and sending] to the customer's computer, linked to the call centre via a node forming part of a computer network, an information form comprising information fields for completion by the customer in response to an enquiry, capturing customer identification information which may be present in the customer's computer and embedding same into the form when viewed by the customer, retrieving the information from a version of the form after being returned to the call centre and storing same in a database for subsequent retrieval, and displaying the information retrieved from the form at the service or product provider.
Each product company or service company may have its own internet web server for running a servlet which provides or generates the information form and retrieves information from the returned form. Alternatively a common server may run a servlet for generating customised forms for each one of a plurality of different product or
service providers. In this case, the common server is likely to be situated at a remote location from the providers. Alternatively, forms may be pre-prepared and electronically stored at any accessible location, the program being operative for selecting the appropriate form and transmitting it to the user's computer.
The method may advantageously include providing on-line access via the internet to the provider's web-site, providing a series of web-pages having menu choices prior to generation of the information form, capturing particulars of the web-pages viewed by the customer prior to generation of the form, and supplying the captured particulars to the provider together with the captured customer identification information. The method may include generating a customer ID in the event no ID is captured from the customer's computer and storing the captured information and ID in a database. The method may further include listing at the provider's customer relations centre form information received from customers together with short-form information, such as the customer's name and ID. The method may include displaying further information drawn from the database and received information form pertaining to each individual customer on selection by a customer service agent of the provider, viewing full information particulars as desired for any selected customer, and transferring the particulars to another customer service agent or placing a telephone call to the customer in response to the customer's enquiry.
In circumstances where the provider is remote from the server, the provider's computers may be protected by a firewall or by proxy-servers. In such circumstances the servlet programs are configured such that the communication protocol (e.g. HTTP) complies with the rulesets and fuctionality of the firewall or proxy-server.
In a preferred embodiment of the present invention, the networked computer at the call centre accesses a computer program via the networked server at the time the enquiry is made. This means that the program used by the call centre computer for retrieving, storing and displaying the information is always the most suitable version of the program for the server in use.
The advantage of systems embodying the invention is that they allow the operators of the help desk to see the context of the customer's enquiry by providing them with
information on that person's account, business history with the company being called, specific details of the enquiry and so on. This results in the customer not having to repeat information and prevents information from being lost. The operators are shown a list of customer calls which they can choose between depending on the merits prior to making actual contact with the customer. They can contact the customer at a time selected by the customer as provided on the information form. Embodiments of the invention make the transition between viewing the web-site to speaking to an operator more efficient and seamless. The operator is prepared to deal with the enquiry immediately having insight into the nature of the customer's enquiry. This enhances the level of customer service which can be offered by the service or product provider. The system may even provide for the provision of credit card details over the telephone.
A significant advantage is that repeated attempts to make contact by telephone, the customer and provider having to exchange information each time, can be eliminated or reduced.
The invention will now be further described by way of example with reference to the accompanying drawings in which:
Figure 1 is a schernatic diagram showing how parties to an interactive service system embodying the invention are linked via a computer network system;
Figure 2 shows a troubleshooting page which may be adopted in an embodiment of the present invention;
Figure 3 shows a form page through which a customer can provide information to a service company;
Figure 4 is a flow diagram showing the operational steps of an interactive service system embodying the invention when a customer makes a service call to a service company and when the service company receives and responds to the service call;
Figure 5 shows a call list information form which can be viewed by an operator of the service company; and
Figure 6 shows a customer information form for viewing by the operator.
Figure 1 illustrates how the interactive service system can be applied to an internet based network. A customer 1 wishing to contact a service company accesses in known manner the web-site server 2 of a service company via the internet (indicated generally by dotted line 3) using a personal computer 4 and modem 5. The customer could obtain internet access through an on-line provider such as AOL™ or CompuServe™, or via a direct service provider.
The following example will be described with reference to a customer who wishes to contact a service company with a view to having a dishwasher repaired. It will be evident to the skilled man in the art that the system embodying the invention could equally be used in different contexts, for example, to obtain advice, purchase products or obtain help for a computer software or hardware related problem. Similarly, the system embodying the invention could be adopted within an organisation's intranet system for providing an interactive communications system between different departments.
The operation of the system embodying the invention will be described as follows with reference to the steps shown in the flow chart of Figure 4. The customer 1, wishing to contact the company which manufactured his broken dishwasher, logs onto the internet via his personal computer 4 (step 100). He enters the address of the company's world wide web (web) server or, if he is not aware of it, uses one of the internet search engines to locate it in known manner. When found, the customer can click on the hypertext link appropriate to the company's home page (not shown) and the browser in his computer will send a request to the company's web-site. In response to this request, the company's web-site will generate and transmit an HTML 'home page' including menu options (i.e. product sales, service enquiries, help-desk etc.) with hypertext links which the customer can use to access pages more specific to his enquiry. This is displayed on the customer's personal computer 4 (step 102). For example, the customer can select the help-desk page by clicking on the appropriate hypertext link on the home page (step 104). On selection of the help-desk page, the web server generates an HTML help page with further menu options which is viewed (step 106) by the customer for allowing selection (step 108) of the general product type he is enquiring about. For example, the help page might include, under a general heading "What appliance is your question about?", illustrations of a dishwasher and a
washing machine each with hypertext links to a troubleshooting page for that particular product type. Selection of the appropriate hypertext heading summons an HTML troubleshooting page 6 (see Figure 2 and step 110 of Figure 4) of the product in question from the company's web-server for display at the customer's PC. The troubleshooting page 6 contains a list of hypertext links a. to f. under a general heading such as: "What is the problem with your dishwasher"? These hypertext links indicate such problem scenarios as: a. It breaks chinaware or glassware; b. It does not clean properly; c. It leaves deposits on chinaware or glassware; d. It leaks; e. It fills but does not drain waste water; f. It does not work at all.
Selection (step 112) of the appropriate troubleshooting hypertext link a. to f. summons a 'service call page' (step 114) from the company's web-server confirming the selected troubleshooting hypertext link, possibly offering solutions for the customer to try, and giving the customer the option (step 116) to place a service call to the company by way of an appropriately marked button (step 118) should none of the solutions solve the customer's problem.
When the customer clicks on this appropriately marked button, a program embedded within the 'service call page' is run to capture its URL and that of the page preceding it, in this case the troubleshooting page. The URL information is passed to the company's web-site server 2 together with a service call request. Receipt of this service call request causes the web server to run a first servlet program corresponding to a request for a service call. A servlet is a program which sits on an internet web server similar to a Common Gateway Interface (CGI) except that it is written in the Java programming language. The first servlet program generates a form page 7 (see Figure 3 and step 120 of Figure 4) and this is transmitted for display (step 122) on the customer's personal computer 4. Generation of the form 7 includes the addition of a hidden field into the form containing the URL's passed to the web-server with the service call request. This amounts to the capturing of the current session browser history (step 136) with the company's web-site so this can be reviewed by the service
agent alongside the customer's contact and troubleshooting information. The program elements for interrogating the customer's browser and capturing the browser history, by way of the URL's, can be written in JavaScript and embedded in the code of the service call request button.
The form page 7 is specific in design appearance to a particular product or service provider and includes information fields i to vii which can be filled in by the customer 1 entering data via his keyboard (steps 124, 126, 128) or automatically by running programs embedded in the form page 7. These programs capture information (such as the user ID) from other sources and store it in cookies as will be described later in more detail. The information fields i to vii of this example include: name fields i and ii; customer's telephone number iii; customer identification (ID) number v; email address vi, country from which the call is being made vii; and a field iv allowing the customer to indicate when he would like to be contacted by the company in relation to his service call. One purpose of the customer ID is to tie the current service call to previous calls so the operator can view the customer's history. In addition to the information fields, a button 8 is provided for sending the form page to the company's web-site 2 where it is forwarded to the company. In this example, the form 7 contains AutoDial information which allows an operator within the company to return a telephone call to the customer. An AutoDial product which is available and suitable for this purpose is marketed under the trade name "PhoneMe" although any kind of telephone switch can be adopted for this purpose, including a modem for dialling.
Figure 1 illustrates how a product or service provider might be linked to a customer over the internet, the servlet program being run at the provider's web-site or at the location of the company itself. However, the servlet program may be written to generate customised forms for different product or service providers and may be run on a server which is remote from some or all of the providers. It will be apparent to the skilled man in the art that a common server may service a plurality of different providers and distribute form information to them.
If the company has not had any previous contact this customer, perhaps because this is the customer's first service call, the fields i to vii on the form page will be blank. In this case, no information will be forthcoming from other sources when the embedded
programs are run. The customer 1 can manually insert (step 124 of Figure 4) his name, telephone, preferred call back interval or time and any other information he can provide in the appropriate fields via his keyboard. When the customer 1 has completed the form as best he can, he clicks on the 'PhoneMe' button 8 thereby sending the form 7 together with the information inputted into the information fields and the hidden URL's to the company's web-site 2 (step 132). This action also causes a program embedded within the form to run for storing in known manner the information inputted by the customer 1 in cookies which are in turn stored in a temporary file in the browser's cache (step 134).
The partially completed form page arrives at the company's web-site 2 and triggers the running of a second servlet on the information provided with the form page. The second servlet program has three functions. One is to communicate (step 138) the information or data entered into the form page 7 and URL's to a central database 9 of the company, via an internet connection indicated by dotted line 10 in Figure 1, to be stored for subsequent retrieval, a second is to wait for a customer ID to be generated and sent from the database 9 (step 140) or to generate the customer ID itself in the case where a firewall is in place, and a third is to generate a 'response page', incorporate the received customer ID into this page (step 142), and send the combined response page and customer ID back for display on the customer's personal computer 4 (step 144) to confirm receipt of the service call and that the enquiry will be responded to. Viewing of the response page by the customer 1 runs an embedded program which stores the customer ID within a cookie within the customer's browser (step 146). This may be the same cookie which stores the other information inputted into the form page by the customer 1.
The customer ID can be generated in a number of different ways depending on the company. Some companies might adopt an ID based on the serial number of the product being enquired about while others might generate a number based on the time of the customer's call.
Many companies have 'firewalls' for security reasons. In such cases, the server which runs the servlet for generating the information form 7 could be located outside the firewall. In such cases, instead of the servlet communicating directly with the
company's database 9, it talks to another server, for example a call-queue servlet, which stores the incoming form information in a queue. In this case the second servlet must generate the customer ID if it is not supplied with the information from the form 7. The stored information is transmitted to the database when it is specifically requested by the database. The firewall is maintained because only the requested information is transmitted to the database in response to a specific request. In such circumstances the servlet programs are configured such that the communication protocol (e.g. HTTP) complies with the rulesets and functionality of the firewall.
The case where the customer 1 has had previous contact with the company's web-site 2 and on that occasion provided at least some information on a form page 7 will now be described. The viewing of the form page 7 sent during the current session will cause an information collection program embedded within it to be run. This will capture information entered into the previously viewed form page 7 which was stored in the cookie of the customer's browser at that time. This information will be displayed in the relevant fields of the currently viewed form page 7 so the customer 1 will only be required to complete empty fields as necessary. This will include the customer ID number and so the customer may not need to add any further information to the form at all.
The form page 7 containing the information captured from the customer's browser arrives at the company's web-site 2 and triggers the running of the second servlet as described above except that the presence of the customer ID will be recognised enabling generation of the 'response page' without the need to wait for the company's database to generate and send one (steps 138 to 142). The response page may include a message indicating that no operator is available at the present time but the customer will be contacted by email or telephone.
The programs embedded within the form page 7 and the 'service call page' may be written in the JavaScript programming language which can be run when the page is viewed. One of the programs is the information collection program referred to above and another collects the URL (Uniform Resource Locator) information of pages (also
stored in 'cookies' within the customer's browser cache) previously viewed by the customer during the current session.
The servlets are programs embedded in the web server for generating web pages stored at the company's web site. The Java programming language is preferably used to generate the web pages. In this example, the sending of requests and responses including generation of the form page, between the customer's browser and the company's web site is by way of the standardised Common Gateway Interface (CGI) method.
The handling of the information at the company will now be described with reference to Figures 4, 5 and 6. The company's database 9 is linked via a database interface 11 to a plurality of client stations 12, 13, 14 each attended by an agent or call operator of the company. The client stations 12 to 14 may be located together at a single call centre or spread among a number of different geographical locations serviced by the company.
Each client station 12 to 14 runs a client program for displaying incoming customer call information received via the company's database 9. Each station polls the company's database 9 periodically for new or updated call data received from customers via the internet (step 148). A list of all incoming customer calls is displayed (step 150) on each one of the client stations 12 to 14. Figure 5 shows how the information is displayed at each of the client stations. The name of the customer, the customer ID is displayed in a first panel 15, further call details including the customer's IP address and browser type are listed in a second panel as shown generally by reference numeral 16. A third panel 17 provides for the display of comments which can be entered via the operator's keyboard or recalled from the company's database with reference to the customer's ID.
Although Figure 5 shows only two names in the list, there will in practice be several at any one time at different stages of processing. The operators can scroll through each of the names of customer calls listed by pointing and clicking their computer mouse on the name. This enables the operator to view the basic call details and comments in panels 15 and 17. Each listed name may be highlighted in a different
colour depending on the call status. For example, incoming and unanswered calls are coloured red while calls being answered by another operator are highlighted in green although it will be appreciated that the highlighting colour is a matter of design choice. If the operator wishes to respond to a customer call, he can access the form page 7 information and browser history by clicking on the "Take Call" button 18. A status bar is provided at the bottom of the operator's screen for indicating the call status of the call currently being viewed. The status may be one of: a) 'Waiting', which is an unanswered incoming call - highlighted in red; b) 'Transfer', which is an answered call transferred by the initial answering operator to a fellow operator who is known to be appropriate for that particular call (perhaps because a comment gives the name of an operator who has been in touch with this customer on a previous occasion) - highlighted in blue; and c) 'Active', which denotes a call which is currently being answered - highlighted in green.
When an operator takes a call (step 152) by clicking on the "Take call" button 18, a "View Call" page is displayed on the operator's monitor. A "View Call" page illustrated in Figure 6 is displayed (step 154) allowing the operator to view the page form 7 information (see panel 19), browser history (panel 20), comments (panel 21), and past call history retrieved from the company's database 9 through the customer's ID (panel 22). The browser history is provided by way of the URL and the pages may be viewed by the operator clicking on the URL of the page to be displayed. The page is displayed in a panel 23 dedicated to this purpose.
The operator is able to scroll through the information provided in each panel in order to gain a full understanding of the customer's enquiry before actually returning a telephone call to the customer. This makes it possible for the operator to forward or transfer the call to the most appropriate agent/operator within the company for response if he cannot handle it himself. The operator is also able to make any enquiries within the company which might help him deal with the customer's problem before actually placing his call.
As shown in Figure 6, a plurality of buttons are provided for enabling the operator to act following his review of the information presented to him and decide whether to take this call or view another customer's information (steps 156, 160) . Clicking on
"Make Phone Call" button 24 will run an AutoDial program to telephone the customer (step 158), whereupon the operator can discuss the enquiry and set up a service call by a repair engineer as appropriate. The "Transfer Call" button 25 allows the operator to contact another operator through the company's internal telephone system with a view to that operator responding to the call. "Refresh Call Details" 26 causes a program to display the updated information. The operator can terminate his telephone call to the customer by clicking on "Finish Phone Call" button 27, abandon a call by clicking on "Quit Without Finishing Call" button 28 and add comments to the database on that customer ID by clicking on "Add Comment" button 29.
The system, which in practice will be the company's server, may be provided with means for removing calls from the list if they remain present for a predetermined amount of time after the specified call back time has expired. The server may be configured to hold incoming calls and form information from display on the operator's screen until they are within a predetermined time period, say 30 minutes, of the customer's call back request time.
Clearly, the content, number and presentation of menu and form pages can be created to take the customer through a logical sequence of questions which focus in on the particular type of problem and appliance in question and can be modified to suit the particular needs of the customer and company. Although the embodiment described above is designed to link a customer to an appliance repair centre, the principles of the invention may be applied to other situations such as after-sales support, product or service ordering systems and the like.