CROSS-REFERENCE TO RELATED DOCUMENTSThe present patent application is a Continuation application of copending patent application 08/948,530, filed Oct. 10, 1997, which is a divisional application of S/N 08/928,410, filed Sep. 12, 1997 (now US Pat. No. 6,064,667), which is a CIP of S/N 08/866,357 filed on Feb. 10, 1997, which is a CIP of application 08/802,660. The present application is also a Continuation of applications having the S/Ns 09/096,729 filed Jun. 11, 1998, 09/574,315 filed May 19, 2000, 09/592,182 filed Jun. 12, 2000, 09/659,933 filed Sep. 12, 2000, and 09/561,139 filed Apr. 28, 2000. The prior applications are all incorporated herein in their entirety by reference.[0001]
FIELD OF THE INVENTIONThe present invention is in the area of telephone call processing and switching, and pertains more particularly to intelligent call-routing systems.[0002]
BACKGROUND OF THE INVENTIONTelephone call processing and switching systems are, at the time of the present patent application, relatively sophisticated, computerized systems, and development and introduction of new systems continues, including Internet-based telephony systems, which are known in the art as Internet Protocol Telephony (IPT) systems. It is also true that the older telephony call-switching networks, and the more recent Internet telephony systems are beginning to merge, and many believe will one day be completely merged.[0003]
Much information on the nature of such hardware and software is available in a number of publications accessible to the present inventors and to those with skill in the art in general. For this reason, much minute detail of known systems is not reproduced here, as to do so would obscure the facts of the invention.[0004]
One document which provides considerable information on intelligent networks is “ITU-T Recommendation Q.1219, Intelligent Network User's Guide for Capability Set 1”, dated April, 1994. This document is incorporated herein by reference. There are similarly many documents and other sources of information describing and explaining IPT systems, and such information is generally available to those with skill in the art.[0005]
At the time of filing the present patent application there continues to be remarkable growth in telephone-based information systems, including IPT systems, wherein conventional telephone functions are provided by computer hardware and software. Recently emerging examples are telemarketing operations and technical support operations, among many others, which have grown apace with development and marketing of, for example, sophisticated computer equipment. More traditional are systems for serving customers of large insurance companies and the like. In some cases organizations develop and maintain their own telephony operations with purchased or leased equipment, and in many other cases, companies are outsourcing such operations to firms that specialize in such services.[0006]
A large technical support operation serves as a good example in this specification of the kind of applications of telephone equipment and functions to which the present inventions pertain and apply, and a technical support organization may be used from time to time in the current specification for example purposes. Such a technical support system, as well as other such systems, typically has a country-wide or even world-wide matrix of call centers for serving customer's needs. Such call center operations are more and more a common practice to provide redundancy and decentralization.[0007]
In a call center, a relatively large number of agents typically handle telephone communication with callers. Each agent is typically assigned to a telephone connected to a central switch, which is in turn connected to a public-switched telephone network (PSTN), well-known in the art. The central switch may be one of several types, such as Automatic Call Distributor (ACD), Private Branch Exchange (PBX), or PSTN. Each agent also typically has access to a computer platform having a video display unit (PC/VDU) which may be adapted, with suitable connectivity hardware, to process Internet protocol telephony calls.[0008]
At the time of the present patent application intelligent telephony networks and IP networks share infrastructure to some extent, and computer equipment added to telephony systems for computer-telephony integration (CTI) are also capable of Internet connection and interaction. There is therefore often no clear distinction as to what part of a network is conventional telephony, and what part is IPT.[0009]
In conventional telephony systems, such as publicly-switched telephony networks (PSTNs), there are computerized service control points (SCPs) that provide central routing intelligence (hence intelligent network). IPNs do not have a central router intelligence, such as a SCP. IPNs, however, have multiple Domain Name Servers (DNS), whose purpose is basically the same as the routers in intelligent networks, which is controlling the routing of traffic. Instead of telephony switches (PBXs), IP switches or routers are used.[0010]
An organization having one or more call centers for serving customers typically provides one or more telephone numbers to the public or to their customer base, or both, that may be used to reach the service. In the case of an IP network, a similar organization may provide an IP address for client access to services, and there are a number of ways the IP address may be provided. Such numbers or addresses may be published on product packaging, in advertisements, in user manuals, in computerized help files, and the like.[0011]
Routing of calls in intelligent networks, then, may be on several levels. Pre-routing may be done at SCPs and further routing may be accomplished at individual call centers. As described above a call center in an intelligent telephony system typically involves a central switch The central switch is typically connected to a publicly-switched telephone network (PSTN), well-known in the art. Agents, trained (hopefully) to handle customer service, man telephones connected to the central switch. This arrangement is known in the art as Customer Premises Equipment (CPE).[0012]
If the call center consists of just a central switch and connected telephone stations, the routing that can be done is very limited. Switches, although increasingly computerized, are limited in the range of computer processes that may be performed. For this reason additional computer capability in the art has been added for such central switches by connecting computer processors adapted to run control routines and to access databases. The processes of incorporating computer enhancement to telephone switches is known in the art as Computer Telephony Integration (CTI), and the hardware used is referred to as CTI equipment.[0013]
In a CTI system telephone stations connected to the central switch may be equipped also with computer terminals, as described above, so agents manning such stations may have access to stored data as well as being linked to incoming callers by a telephone connection. Such stations may be interconnected in a network by any one of several known network protocols, with one or more servers also connected to the network one or more of which may also be connected to a processor providing CTI enhancement, also connected to the central switch of the call center. It is this processor that provides the CTI enhancement for the call center. Agents having access to a PC/VDU connected on a LAN to a CTI processor in turn connected to a telephony switch, may also have multi-media capability, including Internet connectivity, if the CTI processor or another server connected to the LAN provides control for Internet connectivity for stations on the LAN.[0014]
When a telephone call arrives at a call center, whether or not the call has been pre-processed at a SCP, typically at least the telephone number of the calling line is made available to the receiving switch at the call center by a telephone carrier. This service is available by most PSTNs as caller-ID information in one of several formats. If the call center is computer-enhanced (CTI) the phone number of the calling party may be used to access additional information from a database at a server on the network that connects the agent workstations. In this manner information pertinent to a call may be provided to an agent.[0015]
Referring now to the example proposed of a technical-service organization, a system of the sort described herein will handle a large volume of calls from people seeking technical information on installation of certain computer-oriented equipment, and the calls are handled by a finite number of trained agents, which may be distributed over a decentralized matrix of call centers, or at a single call center. In examples used herein illustrating various aspects of the present invention, the case of a decentralized system of multiple call centers will most often be used, although, in various embodiments the invention will also be applicable to individual call centers.[0016]
Even with present levels of CTI there are still problems in operating such call centers, or a system of such call centers. There are waiting queues with which to contend, for example, and long waits may be experienced by some callers, while other agents may be available who could handle callers stuck in queues. Other difficulties accrue, for example, when there are hardware or software degradations or failures or overloads in one or more parts of a system. Still other problems accrue due to known latency in conventional equipment. There are many other problems, and it is well recognized in the art, and by the general public who have accessed such call centers, that there is much room for improvement in the entire concept and operation of such call center systems. It is to these problems, pertaining to efficient, effective, timely, and cost-effective service to customers (users) of call center systems that aspects and embodiments of the present invention detailed below are directed.[0017]
Further to the above, IPNT systems at the time of the present patent application are much less sophisticated in provision of intelligent routing, parallel data transfer, supplemental data provision to agents, and the like. The advantages that embodiments of the invention described below bring to conventional telephony systems may also in most cases be provided to ITP systems and systems in which the form of the network between conventional telephony and IP protocol is blurred.[0018]
SUMMARY OF THE INVENTIONIn a preferred embodiment of the present invention a computerized telephony call center for serving a customer base is provided, comprising a central switch connected to a plurality of telephones at operator workstations and adapted to route calls to individual ones of the telephones, and also connected by a first outside telephone line to a public switched telephone network; and a first processor connected to the central switch by a high-speed data link and to the telephone network by a digital network connection. The first processor is adapted to monitor transactional activity of the central switch, to process the activity information according to selected routines in the processor, and to communicate processed information to a second processor over the digital network connection.[0019]
In some embodiments the first processor communicates with the second processor over the digital network connection by TCP/IP protocol. Also in some embodiments the first processor is connected by a local area network (LAN) to network interfaces including a video display unit (VDU) and input apparatus proximate individual ones of the plurality of telephones connected to the central switch. A data server processor may be connected to the LAN as well, the data server processor running an instance of a database comprising data associated with customers.[0020]
In an alternative embodiment of the invention a telephony call-routing system is provided, comprising an initial call-processing system adapted for receiving calls from customers, and including a first processor adapted for routing incoming calls to selected destinations; a call center remote from the call-processing system, the call center comprising a telephony central switch connected to a plurality of telephones at operator workstations and adapted to route calls to individual ones of the telephones, and also connected to the initial call-processing system by a public switched telephone network; and a second processor connected to the telephony central switch by a data link and to the initial call processing system by a digital network connection. The second processor is adapted to monitor transactional activity of the telephony central switch, to process the activity information according to selected routines, and to communicate processed information to the first processor over the digital network connection, and wherein the first processor uses the processed information to select destinations to route the incoming[0021]
In another alternative embodiment a call processing system adapted for routing incoming calls to selected destinations is provided, comprising a telephony central switch connected to a public switched telephone network; and a call-routing processor coupled to the telephony central switch and to a digital network data link, the call routing processor adapted for receiving and storing processed information about transactions at remote telephony switches. In this embodiment the call-routing processor is adapted to select destinations for routing incoming calls based on the stored processed information about transactions at remote telephony switches.[0022]
Several methods for practicing the invention in several aspects are provided as well.[0023]
In embodiments of the present invention improvements over conventional systems and methods are provided, not the least of which is a way to use systems comprising equipment from different manufacturers in ways that are machine independent. Further, methods are provided that reduce call-waiting time in such systems, that improve efficiency, and that provide services at an improved cost efficiency compared to prior art systems.[0024]
In another aspect of the invention a call rerouting system is provided, comprising a first call center and a second call center; a rerouter connected to the first call center and to the second call center by digital network link; and a pool of unique destination numbers assigned to the second call center. The rerouter sends rerouted calls from the first call center to the destination numbers in the second call center in a sequential manner such that any destination number in the pool for the second call center, once used, is not used again until all of the remaining destination numbers in the pool are used once each.[0025]
There may also be multiple call centers, and a unique pool of destination numbers is assigned to each call center. Calls are rerouted from each call center to the others, and the rerouter sends rerouted calls from the any call center to another by using the destination numbers in a receiving call center in a sequential manner such that any destination number in the pool for any call center, once used, is not used again until all of the remaining destination numbers in the pool are used once each.[0026]
In various embodiments of the invention, by using the sequential method, the number of destination numbers required to be assigned to each call center for the purpose of directing rerouted calls is minimized.[0027]
BRIEF DESCRIPTION OF THE DRAWINGS FIGURESFIG. 1 is a system diagram of a call-routing system according to a preferred embodiment of the present invention.[0028]
FIG. 2A is a block diagram representing communication functionality between equipment groups in embodiments of the present invention.[0029]
FIG. 2B is a block diagram illustrating a unique call center-level routing system in an embodiment of the present invention.[0030]
FIG. 3 is a process flow diagram depicting steps in a process according to a preferred embodiment of the present invention.[0031]
FIG. 4 is another process flow diagram depicting steps in a process according to another preferred embodiment of the present invention.[0032]
FIG. 5 is yet another process flow diagram depicting steps in yet another preferred embodiment of the present invention.[0033]
FIG. 6 is a system diagram of a call-rerouting system according to an embodiment of the present invention.[0034]
FIG. 7 is a system diagram illustrating a CTI/DNT-equipped call center according to an embodiment of the present invention wherein one intelligent routing system may route all communications received.[0035]
FIG. 8 is a block diagram illustrating a multimedia queue according to an embodiment of the present invention.[0036]
FIG. 9 is a simplified overview of a telephony system according to an embodiment of the present invention.[0037]
FIG. 10 is a simplified process flow chart illustrating a basic features in an embodiment of the present invention.[0038]
FIG. 11 is an overview of a combined CTI and IPNT call center enhanced with automated survey capabilities according to an embodiment of the present invention.[0039]
FIG. 12 is a workflow chart illustrating various steps of a survey routine according to an embodiment of the present invention.[0040]
FIG. 13 is a block diagram illustrating a distribution network comprising WAN-connected communication centers practicing a method of application representation and distribution according to an embodiment of the present invention.[0041]
FIG. 14 is a flow diagram illustrating steps for generation and distribution of scripts according to an embodiment of the present invention.[0042]
DESCRIPTION OF THE PREFERRED EMBODIMENTSGeneral Description[0043]
FIG. 1 is a system diagram of a call-routing system according to a preferred embodiment of the present invention, comprising two[0044]call centers121 and122. In this embodiment there may be many more than the two call centers shown, but two is considered by the inventors to be sufficient to illustrate embodiments of the invention. Each ofcall centers121 and122 includes a telephony switch (switch123 forcenter121 and switch124 for center122) providing routing to individual agent stations.
[0045]Call centers121 and122 in FIG. 1 are CTI-enhanced by virtue of a processor connected by a high-speed data link to the associated call center switch. Atcall center121,processor223 is connected bylink212 to switch123, and atcall center122,processor224 is connected to switch124 bylink213. Eachprocessor223 and224 includes an instance of aCTI application207 known to the inventors as T-Server (T-S)207. Further, eachprocessor223 and224 at each call center is in turn connected to a local area network (LAN). Forexample LAN301 is shown connected toprocessor223 in FIG. 1. No equivalent network is shown atcall center122 for the sake of simplicity, although the architecture described herein forcall center121 may be presumed to be extant atcall center122 and other call centers as well.
Each call-in[0046]center121 and122 included in this example also includes at least two telephone-equipped agent workstations, which also each have a user interface (IF) to the associated LAN.Workstation131 atcenter121 for example has atelephone136 connected tocentral switch123, and aproximate user interface331 tonetwork301.Interface331 may be a PC, a network terminal, or other system, and typically provides a video display unit (VDU) and input apparatus (keyboard/pointer for example) allowing an agent to view data and make appropriate inputs. For descriptive purposes the computer workstation at each agent station will be termed a PC/VDU.
In like[0047]manner workstation132 illustrated has atelephone138 connected tocentral switch123 and a proximate PC/VDU332 providing an agent with display and input capability. For call enter122workstations133 and134 are shown having respectivelytelephones140 and142 connected tocentral switch124, in turn connected toprocessor224 bylink213. A local area network (LAN) equivalent toLAN301 atcall center121 is not shown forcall center122 for the sake of simplicity in illustration, and PC/VDUs for the agents are similarly not shown forcall center122.
As is true with LANs in general, servers of various sorts may be connected to[0048]LAN301 atcall center121. In FIG. 1 adata server303, in this instance including a customer database is shown connected toLAN301. A similar database server may also be connected to a LAN atcall center122. The customer database will typically comprise such as the names, addresses, and other information relating to customers for whom the call center is established, and also in many instances resource information for agents to access in helping callers with their problems.
In some embodiments of the present invention to be described in enabling detail below, agents at agent stations interact verbally with clients via the telephones at the workstations, and the PC/VDUs are utilized for such as screen pops with information about clients, scripts for agents to follow in aiding clients, and technical information and other data needed in interacting with clients. In other embodiments the PC/VDU equipment may be used more comprehensively, such as for video-conferencing with clients, receiving, storing and responding to electronic documents such as e-mail, and for Internet protocol telephony (IPT). In the case of Internet-based and related services, the CTI processor, or any other processor connected to the LAN at a call center may be Internet-connected, and provided with the necessary hardware and software known in the art for providing Internet access to agent's PC/VDUs also connected on the LAN at the call center.[0049]
Because of differences in conventional telephony service (CTS) and Internet telephony, and because the overt mechanism in both systems is modeled on the perceived, traditional model of telephone calls, a convention is necessary to distinguish. In the descriptions that follow, for this reason, CTS is referred to as intelligent network telephony (INT) and Internet telephony is referred to as Internet protocol network telephony (IPNT). This is not intended to imply that all CTS systems described herein are prior art, or that all IPNT systems described are inventive and unique. These distinctions will be made below as much as possible in every case described.[0050]
The main difference between CTS and IPNT is in the residence of network intelligence. In INT the firmware generating intelligence is mainly residing in network processors, where in IPNT, the firmware for the intelligence mostly resides in the end-equipment, whereas the network is often referred to as dumb network. Since most of the features of present inventions reside in the CTI server, known to the inventors as T-Server, and from there control certain network functions in certain ways, it is mostly irrelevant to their application, where the actual intelligence resides.[0051]
One of the variables in routing incoming calls, whether in INT or IPNT, is the skill set of each agent assigned to a workstation. This skill set may include a unique set of skills, resources and knowledge, such as, but not limited to, language capability, access to technical information, and specific training. In routing calls in a conventional system both at the network and at the call center level, the system and/or network needs to know such things as the status of any or all call centers, the availability of each agent, the skill set of each agent, the number of incoming calls, the number of calls waiting to be answered, and so forth. In a system using Internet protocol telephony for access to agents at call centers the same kinds of information needs to be available, and there needs to be also a way to route IPNT calls based on the information.[0052]
Referring again to FIG. 1, and specifically to[0053]call center121, there are a number of ways that PC/VDUs331 and332 may have access to the Internet, and thereby to IPNT calls as well as to data services and the like provided at the call center. For example, any one of PC/VDUs at the call center, or other call center such ascenter122, may have a modem connected to a phone line and software to connect to an Internet service provider. More likely, considering only callcenter121.Processor223 or another processor or IP router connected toLAN301 may have Internet access and provide access to stations on the LAN. In specific aspects of the invention described below, Internet access and IPNT telephony relative to the inventive concepts are discussed in more detail.
In this example, control routines executable on[0054]processor223 forcall center123 may access algorithms providing call routing at the call center level, and may also access data fromdata server303 for use in routing decisions and the like. Similar routines run onprocessor224 servingcall center122. In specific aspects of the invention described below, routing of IPNT calls will be discussed as well.
Telephone calls are routed to call[0055]centers121 and122 overconventional telephony lines105 and106 respectively from remote origination points (a customer seeking technical aid has placed a call, for example, to an advertised or otherwise provided 1-800 number).Cloud100 represents the intelligent telephone network system, and is referred to herein as a network cloud. This may be, for example purposes, a regional portion of the world-wide network, or may represent the entire world-wide network of connected telephone equipment. All conventional telephone calls routed to call-incenters121 and122 originate somewhere innetwork cloud100.
In addition to conventional telephone calls, there may be IPNT calls originating from computer platforms represented here by[0056]platform127, placed to the call centers through the Internet, an Intranet, or other data network, represented bycloud125, over a link such aslink126 shown connecting toprocessor223. It will be apparent to the skilled artisan that there are a number of alternative ways Internet and other data network access may be provided to stations at call centers. For descriptive purposes following descriptions will refer to cloud125 as the Internet cloud, although it should be understood that this is exemplary, and there may be other data networks involved.
In this example an incoming conventional telephone call to be routed to a call center is represented by[0057]vector107 into a Service Control Point (SCP)101. In some embodiments of the invention calls may go directly to one of the call centers illustrated, but in most embodiments an SCP is accessed first, and network-level routing may be done, wherein incoming calls may be routed based on information available to the SCP.
[0058]SCP101 typically comprises a telephony switch somewhat more local to the calling party than the switches atcall centers121 and122 illustrated.SCP101 is coupled in this example to anadjunct processor103 associated with a call-distribution processor104. Calldistribution processor104 has call statistics describing call distribution between call-incenters121 and122 (typically over a larger number of call-in centers than two).
An[0059]Intelligent Peripheral102 is provided in this example coupled toSCP101, and its function is to provide initial processing of incoming calls. This initial processing may be done by voice recognition, eliciting information from a caller such as type of product and model number, language preference for communication with an agent, and much more, depending on the nature of the service provided by the organization providing the call centers.
A[0060]processor208 including an instance oftelephony server T-S207, also including an instance of a statistical server (Stat Server)209 is coupled by two-way data link214 to the other parts of the system at the initial call processing and routing system associated withSCP101. It will be apparent to those with skill in the art that the functions ofCD Processor104,Adjunct Processor103,IP102,T-S207 andStat Server209 may be accomplished in a variety of ways in hardware and software mix. There may be, for example, a single hardware computer coupled tocentral switch101, and the various servers may be software implementations running on the one hardware system. There may be as well, more than one hardware system, or more than one CPU providing the various servers.
In this embodiment, as described above, conventional calls incoming to[0061]SCP101 are routed to callcenters121 and122 viaPSTN lines105 and106. The convergence oflines105 and106 toSCP101 and divergence to callcenters121 and122 is simply to illustrate that there may be considerable switching activity between these points.Processor208 connects toprocessor223 and toprocessor224 bydigital data links210 and211. Again the convergence is just to illustrate the network nature of these links, which may connect to many SCPs and to many call centers as well. In a preferred embodiment the network protocol is TCP/IP, which is a collection of data protocols which are not discussed in detail here, as these protocols are in use and very well-known in the art. There are other protocols that might be used, new protocols may be developed to provide better and faster communication, and other methods may be used to speed up communication. For example, Urgent Dispatch Protocol (UDP) may be used in some instances, which, for example, allows data packets to bypass routing queues.
Although not explicitly shown in FIG. 1, processors at the SCP shown may have Internet access into[0062]cloud125, so IPNT calls may be directed to computer equipment at the SCP, and, as will be described further below, processes at the SCP may apply to IPNT calls as well as to conventional calls.
[0063]Processor208 running an instance of T-S207 as described above may control routing of calls, both conventional and IPNT at the network level, that is, calls received atSCP101, in the same manner thatprocessor223 may control routing atcentral switch123. In the case of routing of IPNT calls by the processes of an intelligent network router, the inventors are not aware of such intelligent routing in the art for IPNT calls, and this functionality is considered by the inventors unique.
It is emphasized again that not all embodiments of the present invention require all of the elements and connectivity shown in FIG. 1, although some embodiments will use all of the elements and connectivity shown. Also, functionality in various embodiments of the invention described in enabling detail below will differ not in hardware and connectivity in all cases, but in application and execution of unique control routines in many cases.[0064]
Uniform Control of Mixed Platforms in Telephony (3208)In a preferred embodiment of the present invention unique control routines are provided for execution on such as[0065]processor223,processor224 andprocessor208, providing communication ability thereby between call centers such ascenters121 and122, and between call centers and initial call processing centers such as that represented bySCP101.
FIG. 2A is a block diagram representing a unique communication capability provided in a preferred embodiment of the present invention. There are, as described above in the Background section and known in the art, several different kinds and manufactures of call switching equipment. Each central switch uses a proprietary communication protocol for CTI applications. In CTI enhancement as known in the art, individual manufacturers provide processors connecting to their own switches and using the communication protocols proprietary to those switches. The computer enhancements, then, can serve a single manufacturer's switches, and provide communication between those switches. If a user, however, has multiple call center sites, for example, having equipment from different manufacturers, a difficult situation arises. If that user decides on a computer enhancement, depending on which manufacturer provides the enhancement, the equipment at the other site may quickly become obsolete. To communicate with the other site, it may be necessary to purchase all new equipment for the other site to be compatible with the computer-enhanced site.[0066]
[0067]Processors223,224, and208 are shown in FIG. 2A connected bylinks210 and211 as in FIG. 1, with additional detail of both software and hardware illustrated in a particular exemplary embodiment. In each processor there is an instance of T-S207 executable. To communicate with other devices each processor must have one or more ports configured to accomplish the communication. The implementation of such ports is represented in FIG. 2A by therepresentation PND215.PND215 in each instance is a physical network adapter for the network to which it is intended to connect, such as microwave, optical, coaxial, ring-network, and the like, as well as the software drivers required to control those adapters.
Layered to each instance of T-[0068]Server207 in each processor is a control routine for handling data communication with either an instance of telephony equipment (switch123 for example) or another T-server. Hence, in FIG. 2A, each instance of T-server207 is layered with a Telephony Equipment Driver (TED) on one side, and an Inter T-Server Driver (ITD) on the other side. Connectivity of an ITD or a TED to a PND is based on the external connection intended at the PND. Forexample processor223 is connected on one side to switch123 bylink212, soTED216 in the instance ofprocessor223 will be configured to drive communication with switch223 (according to the make and manufacture of that switch). On theother side processor223 is connected vialink210 to processors running other instances of T-server207. ThereforeITD217 connects toPND215 atlink210.
Although not shown explicitly in FIG. 2A, which follows the architecture of FIG. 1, it will be apparent to those with skill that a processor may also be configured with an instance of TED on each side of a instance of T-[0069]Server207, providing thereby a processor capable of interconnecting two central switches of different type, make, or manufacture directly. In this manner processors may be adapted to interconnect central switches of various manufacturers and processors running instances of T-Server207, and, by providing the correct PNDs, the processors thus configured may be adapted to communicate over any known type of data network connection.
In the matter of Internet protocol telephony, in the general description provided above with reference to FIG. 1, it was described that Internet access may be made by processors at either call centers or SCPs in the conventional network, and that functions provided for conventional telephony may also be applied to IPNT calls. With regard to FIG. 2A, IPNT calls received at any processor associated with[0070]SCP101 may be routed throughprocessor208 and vialinks210 and211 toprocessors223 and224, where such IPNT data may be provided to agent's stations at associated call centers. In this process, IP addresses may be altered and substituted, as a way of routing the IPNT data. For example, an IPNT call may be directed toprocessor208 by one IP address, and the IPNT call may be found to be from a particular client of the organization to which the call centers are dedicated. A routing decision may be made at the SCP such as inprocessor208 as to the call center best adapted to deal with the client, and the IP address for a processor at the call center may be substituted.
In this manner, according to embodiments of the present invention, a system is provided for the first time that allows radically different telephony systems to be joined in high-functionality integrated intelligent networks.[0071]
Escalatory Reactive Call Routine (3207)FIG. 2B is a block diagram depicting a unique escalatory[0072]reactive routing system330 according to a preferred embodiment of the present invention, which may be implemented on a call center or at the network level, such as incall center121 or such as innetwork cloud100 of FIG. 1. In this routing system, as implemented at the call center level, processor223 (FIG. 1) is notified when a call is received, and sends information about the call to arouting server342.Routing server342 is typically implemented as a part of T-server207, which routes a call to an agent best qualified to answer the call based on predetermined criteria. The T-server having the routing server need not necessarily be implemented onprocessor207 as shown in FIG. 1, but could be resident elsewhere in the networked system.Routing server342 typically directsswitch123 to route the incoming call to the designated agent.
[0073]Database344 in FIG. 2B is a customer database typically maintained on such as data file server303 (FIG. 1).Routing server342 comprises control routines which may be executed on processor223 (FIG. 1) or there may be a separate processor onnetwork301 executing the router. Astat server140 is adapted to track and provide statistical data concerning calls made, completed and the like, and to maintain data on agents skill profiles and agent's activities, and to generate reports. Again,stat server140 may execute onprocessor223, or on another processor connected tonetwork301. Finally, anetwork manager352 is also connected on the network, and is adapted to the task of managing aspects ofLAN301.
Routing in this embodiment is typically based on (i) the skills set of the agent (ii) information relating to the calling party, (iii) activities of the call center, and (iiii) legal or other authorization held by an agent. Examples of the skills set of the agent are language, product knowledge, and the like. Examples of calling party information are products purchased, geographical location and the like. Examples of call center activities are number of available agents, calls previously handles by an agent, and the like.[0074]
At the same time an incoming call is directed to a particular agent, data retrieved from[0075]database344 is directed onLAN301 to the proximate video display unit (VDU) at the workstation assigned to that agent. The agent is then enabled to deal with the call in the best possible manner.
It is apparent to the present inventors that the expeditious functioning of[0076]routing system330 is highly dependent on the expeditious functioning of the various elements of the overall system, including, but not limited to software and hardware elements. These elements include the functions of all of the elements shown in FIG. 1, specifically including all of the communication links, both telephony and digital. If for example,stat server340 ordatabase344 experiences a sudden degradation in service, the routing server is going to be delayed as well. As another example, there may be an unexpectedly large number of accesses todatabase344 in a short time, overloading a search engine associated with the database, and this circumstance could degrade overall performance in routing. As a further example a partial or total loss of a communication link, such asdigital network link210, will severely degrade overall system performance.
By virtue of network connection and interconnection,[0077]network manager352 is enabled to track and monitor performance and function of all system elements, and to report todatabase344 and torouting server342, and the routing server also has access to other data and statistics viastat server340 anddatabase344.Routing server342 also has access in this embodiment to multiple routing algorithms which may be stored at any one of several places in the overall system. An object of the invention in the instant embodiment is to provide for executing different routing algorithms based on system performance as reported bynetwork manager352 and in accordance with data available fromdatabase344,stat server340, and received viadigital network link210 as described in further detail below.Database340, routingserver342, andstat server340 communicate through layered protocol as known in the art, including but not limited to layers for network-dependent protocol, Internet protocol (IP), User Datagram Protocol (UDP), Simple Network Management Protocol (SNMP), and manager process.
In a preferred embodiment, routing[0078]server342 selects a routing algorithm to be executed based on degradation in performance of part of the call center or components, either hardware or software, in an escalatory manner. The more the system degrades, the more the router reverts to emergency measures. The selected algorithm preferably reduces or eliminates access to or use of the component or resource adduced to be degrading in performance.
It will be apparent to those with skill in the art that the invention described with reference to FIGS. 2A and 2B is not limited to monitoring only system and component faults. It has broader application. For example, algorithms may be stored for operating according to load level. Other algorithms may be selected according to specific times-of-day, and such algorithms may be selected based on the time window in a 24-hour period. As another example, algorithms may be stored and selectable based on days of the week. Still other algorithms might be prepared to be accessed with introduction of new products and the like. Statistics may be tracked relative to the percentage of agents free, for example, and a routing algorithm may be accessed for the situation wherein 90% of agents are busy, routing calls only to the next free agent rather than following a skill-based routing algorithm. The invention in this embodiment allows routing algorithms to be selected and executed based upon a very broad congruence of circumstances, so that a call center may be operated at best efficiency even as circumstances alter rapidly, including circumstances of hardware and software functionality, as described in specific embodiments above.[0079]
In other embodiments of the instant invention escalatory reactive call routing may be implemented at the network level, with a router implemented as a portion of T-S[0080]207 running onprocessor208. In this case stored routing algorithms may be selected and implemented in conjunction with functionality of network level components, both hardware and software, and in accordance with call loading intoSCP101.
In the matter of Internet protocal telephony, IPNT calls received anywhere in the system can be redirected (routed) by the intelligence provided and described relative to conventional telephony, and such calls, once received and redirected, may be conducted to final agent destinations either through the connectivity of the calls centers and the intelligent network, or redirected by new IP address back into the Internet (or Intranet) and thence to agents equipment by direct connection.[0081]
Agent Level Call Routing in Telephony Systems (3200)Referring now back to FIG. 1, associated with[0082]SCP101 in embodiments of the present invention, there is aprocessor208 comprising an instance of a Stats-server209 and an instance of T-Server207, which processor communicates with other components via two-way data link214. Communication in this embodiment is as illustrated in FIG. 2A and described in disclosure above relative to FIG. 2A.
In description above reference was made to TCP/IP communication on[0083]links210 and211, and that this protocol is merely exemplary. There are other protocols that might be used, new protocols may be developed to provide better and faster communication, and other methods may be used to speed up communication. For example, User Datagram Protocol (UDP) may be used in some instances, which, for example, allows data packets to bypass routing queues.
In conventional systems known to the present inventors, routing at the network level, that is, in the[0084]network cloud100 associated with switching equipment receiving incoming calls and routing these calls to call centers, is typically done with reference to statistical history of call center activity, and routing to call centers is to queues at the call centers. In this conventional method, activity at each call center in a network is tracked and provided to service control points, and incoming calls are routed to the calls centers based on the latest available history. As an example of such a history algorithm, if there are two call centers in the system, and the latest statistical history indicates thatcall center1 has received twice as many calls ascall center2, calls will be preferentially routed tocall center2 at a ratio to balance the activity. In this conventional system calls are routed from the network level to queues at the call center level. Once a call is received in a queue at a call center, the caller waits until his call is answered in order.
Referring now to FIG. 1, in a unique embodiment of the present invention, termed by the inventors Agent Level Routing, actual transactions at the call center level, rather than historical summaries, are reported from call centers to service control points, and calls are routed to agents rather than to queues or groups. Referring to[0085]call center121 as an example, transactions ofcentral switch123 are monitored by T-Server207 executing onprocessor223, and shared on a continuing basis with T-Server207 running onprocessor208 associated withSCP101. This activity data is stored and accessible with reference tostat server209 onprocessor208. Activity ofcentral switch124 atcall center122 is reported vialink211 also to T-Server207 in cloud100 (which represents one instance of possible multiple SCPs and T-Servers in the network. Each T-Server may serve more than one SCP). Actual activity at all call centers is reported to all SCPs in this manner.
In addition to this actual call center activity data, data relative to agent skills and the like is also provided and stored at the network level. For example, when an agent logs in at a call center, the availability of this agent is reported to the network level, and the stat-servers at the network level have agent profiles for reference in making routing decisions.[0086]
In the instant embodiment an[0087]incoming call107 atSCP101 is processed, for example, with the aid ofIP102. With information about the needs of the caller,T-S207 makes reference to the stat-server data of actual agent status at call centers, which is continuously updated viadigital network links210 and211, for example, from call centers, and to the available data on agent profiles and the like, which is updated as well, but at perhaps longer time increments. T-Server207 makes a routing decision to an agent based on the best fit with the latest available data.
Once the routing decision has been made at the network level, the destination decision for the call is transferred by T-[0088]Server207 running onprocessor208, for example, at the network level, to T-Server207 at the call center where the agent to which the call is to go is resident. For exemplary purposes assume the destination is an agent at call center121 (FIG. 1), and the destination information is sent to T-S207 running onprocessor223.
The call is received on[0089]line105 at the call center and matched with the destination data received byT-S207 onlink210.T-S207 onprocessor223 now routes the call to the agent.
Call-center-level routing in embodiments of the present invention was described above, and may be done in the instant embodiment as well. For example,[0090]T-S207 running onprocessor223 has received a call online105 and matched that call with data received onlink210, which data includes an agent destination for the call based on the best fit available to T-S207 running onprocessor208 at the network level. In the time since the original routing occurred and the call and data have been received atcall center105, the situation may have changed. The agent to which the call was routed may have, for example, logged off, and is no longer available.T-S207 atprocessor223, executing a routing algorithm, may now reroute the call to the agent who is a next best fit and available atcall center121.
As a further example of agent level call routing, consider a call received at[0091]SCP101 from a customer who speaks Spanish, and indicates a preference for a Spanish-speaking agent. In FIG. 1 the pool of Spanish-speaking agents is represented byinclusion area241, encompassingworkstations132 at call-incenter121 andworkstation134 at call-incenter122. An agent profile provided to stat-server209 at the network level for each of these agents indicates the Spanish skill. The continuously updated transaction information fromcall centers121 and122 indicates the agent attelephone138 is available, while the agent attelephone142 is not available. Given this information, the call will be routed tocall center121 online105, and the data as to agent destination will be sent to T-S207 atcall center121 viadigital link210.
In summary, in the instant embodiment, agent level routing is accomplished by providing actual call center agent status on a continuing basis to Service Control Points along with agent skill profiles and the like. Incoming calls are then routed to agents, rather than to queues at call centers. At the call center to which a call is routed with destination data for an agent, a further opportunity for routing allows such calls to be rerouted at the call center level.[0092]
In the matter of IPNT calls which may be directed first to a processor associated with a SCP in an intelligent network, given the origin of the call, just as is available form an ANI field, for example, in a conventional telephony call, decisions may be made as to agent level routing in a manner similar to the decisions made for conventional calls. It is only the mechanism for directing the IPNT calls that differs.[0093]
Moreover, IPNT calls directed to a processor associated with a SCP may be processed by an IP in an automatic manner, even including voice response, eliciting further information from the caller, which may then be factored into the routing of the calls.[0094]
It should also be understood that reception of and routing of IPNT calls need not be done at the same equipment and using the same software as is used for conventional telephony. Entirely separate centers may well be provided in various embodiments of the invention for handling IPNT calls. Internet servers may be provided for example, wherein adjunct processors, IP functionality, and the like is provided for IPNT in a manner parallel to that described herein for conventional telephony. In the matter of call center operation and management the idea of a dumb IP network may be just that. Intelligence is needed and preferred for managing large call volume to a wide range of possible destinations for best customer service.[0095]
Parallel Data Transfer and Synchronization (3201)In another aspect of the present invention enhanced functionality is provided in routing and processing telephone calls from Service Control Points (SCPs) and other origination points at the network level or at other call centers established for servicing callers seeking service. This enhanced functionality enables agents at such call-in centers to have immediate access to information derived both from callers and from stored data. In descriptions below of the instant embodiment, assumption of[0096]SCP101 in the network cloud andcall center121 is made for principle purposes of illustration.
In descriptions above, referring now to FIG. 1, an intelligent peripheral (IP)[0097]102 was described, serving to aid in initial processing of calls from persons seeking services from an organization providing such services from one or more call-in centers. In the above descriptions also, such callers were referred to as customers, following a continuing example utilizing an organizational structure having a technical service call-in operation for such as a computer equipment manufacturer.
Following the example of persons calling in to seek technical services in installing and/or configuring computer-related products, when such a caller first connects (FIG. 1,[0098]vector107, SCP101), initial processing will typically include eliciting information from the caller relative to such as caller preferences and relationship of the caller to the service provider's customer database. For example, the caller may have just purchased a model of one of the provider's products, meant to be installed in or connected to a particular make and model computer, and is experiencing difficulty in installing the product and making it function properly with the computer. In another instance such a caller may have had the provider's product for some time, and is only recently experiencing difficulty.
Most manufacturers provide a service whereby a customer may register a product, and in the process of registration a range of information from the customer is solicited, which will typically include the exact nature of the product in question, including model number, and also the characteristics of the computer (in this example) to which the customer has installed or is attempting to install the product. If a customer has registered his/her purchase, that information will typically be recorded in the customer database, which, referring to FIG. 1, may be stored on[0099]Data File Server303 connected toLAN301, to whichprocessor223 running an instance ofT-S207 is also connected. In other instances there may be other information stored in the customer database. For example, in the case of an insurance company, the customer's name and address, policy number, and the like will be in the database.
If there is information about a call in a customer database at a call center, it will be advantageous to both the customer and the service provider to access that information and provide same to the agent who handles the customer's call. Such information cannot be retrieved, however, until and unless some correlation is made between the incoming call and the database.[0100]
In the instant embodiment of the invention, which is exemplary only, initial processing is used incorporating[0101]IP102 to elicit information from a customer. This may be done preferably by recorded query and voice recognition. In such a system a call is answered, and a menu system is used to categorize the caller and to elicit and record sufficient information to enable routing (as described above) and hopefully to correlate a customer with an existing database.. By recording is meant enrolling the nature of the responses in some form, not necessarily by voice recording. For example, a typical initial processing transaction involves a recorded query to the caller such as “Do you prefer Spanish or English”. In some locales the query might be phrased in a language other than English. The caller is requested to respond typically by selecting a key on the touch-tone pad of his/her telephone. In many instances now as well, voice recognition is built into the initial processing machine intelligence, and the customer is instructed in verbal response, such as: “Say Yes or No”. The IP in this case recognizes the response and codes data accordingly.
Information derived from a caller in such initial processing in conventional systems, as has been described herein above, is coded and sent with the routed call, to be dealt with at the call center to which the call is routed after the call is received. In instant embodiments of the present invention, such data, and in some cases other data, is routed to a call center in parallel with the routed call, over a digital network link, allowing the data to precede the call in most cases. The data is re-associated with the call at the call center in a unique fashion described below. This parallel data transfer also makes the transfer switch-independent.[0102]
Referring again to FIG. 1, an instance of T-[0103]Server207 is running onprocessor223 connected tocentral switch123 ofcall center121.Processor223 is connected to digital data link210, and switch123 is connected to thePSTN line105. In the exemplary embodiment there is an instance of T-Server207 also running onprocessor208 associated withSCP101. In the instant embodiment T-S207 atprocessor208 requests a semaphore fromT-S207 atprocessor223 at the call center level. The semaphore is a virtual routing point in the call center, that is associated with the destination of the call, but is not the same as the destination of the call. Also, the semaphore is freed as soon as the call is completed. Once the semaphore is returned, the routed call is forwarded to switch123 in this example overline105 to the destination associated with the semaphore. Data associated with the call, which may be data elicited from a caller with the aid ofIP102, is not coded and sent with the call, however, as in the prior art, but rather transferred to T-S207 atprocessor223 overdigital network line210.
As[0104]digital network link210 is generally a faster link thantelephone line105, the data associated with a forwarded call will typically arrive before the call. This is not, however, a requirement of the invention. The data sent overlink210 to T-Server207 onprocessor223 includes not only data associated with the call, but the semaphore as described above. The call received online105 is not transferred directly to a final destination but to a semaphore routing point. When the call and the data are available, the call center T-Server207 associates the call with the data by the knowledge of the semaphore to which the call has been associated. From the semaphore routing point the call is routed on to the final destination.
The semaphore can be accomplished in a number of ways. For example, the call can be directed to a virtual number and the data may have the virtual number in one field of the data protocol. The semaphore could also be an agent's extension number, but the call is still routed to a semaphore control point to be associated with the data before being routed on to the agent. Those with skill in the art will recognize that the semaphore association may be made in other ways as well.[0105]
The data typically in this embodiment is sent via[0106]network301 to a VDU of the network interface at the operator's workstation to which the call is finally routed. This may be, for example, IF331 or332 in FIG. 1. Moreover, data associated with the call and transferred to T-S207 at the call center may be used to associate the caller with the customer database inData File Server303, and to retrieve further data which may also be forwarded to the VDU at the agent's workstation. As described above, it will most usually be the case that the data will arrive before the call, and correlation with a customer database may therefore be done before the call arrives.
The re-association (synchronization) of the call and the data at a re-routing point also affords an opportunity for further re-routing. There will be, as described above in the section on agent-based routing, some calls wherein the agent to which a call is originally has become unavailable in the time wherein a call is transferred. In this case T-[0107]Server207 may re-route the call from the semaphore point to another agent, and send the data to the new destination.
It is not strictly necessary in the instant embodiment that the data be transferred by another instance of T-Server as described in the preferred embodiment immediately above. The call forwarded and the data transferred may in fact be sent by an originating entity such as another call center (i.e. PBX), an SCP or IP (network IVR), or some other IVR which may or may not be in the network.[0108]
In the matter of IPNT calls received at processors associated with SCPs, whether the SCPs are adapted to handle both conventional and IPNT calls, or just IPNT, data elicited from the caller may be prepared and provided by a separate link to a call center, and re-associated with the IP call redirected to an agent at the call center, or to a lower-level routing point at the call center, where both the call and the data may be rerouted. In this fashion all of the advantages of the invention described for conventional telephony may also be provided for IPNT.[0109]
Statistically-Predictive and Agent-Predictive Call Routing (3202)In still another embodiment of the present invention predictive routing is incorporated into machine intelligence to expedite routing in a most cost-effective manner. Predictive routing according to embodiments of the present invention is based on knowledge of latency experienced in equipment while implementing certain operations, together with reasonable, but non-obvious assumptions that may be made to expedite operations. It is in implementing the assumptions that the inventions lie in the instant aspects and embodiments of the invention.[0110]
Referring again to FIG. 1, in the general case T-[0111]Server207 running onprocessor208 does call routing for calls incoming atSCP101. This routing is done with the aid of data stored at stat-server209, which may be data obtained from call centers on some regular basis.
In the instant embodiment related to group-predictive routing, incoming calls are routed to groups at call centers ([0112]call center121 for example). In routing calls to groups, the goal is to route an incoming call to the group which has the lowest projected handling time for the call. The algorithm, for example, for handling time may be the present number of calls in the group queue times the historical average call length.
In this embodiment the projected handling time is extrapolated on past history and the last action which occurred, and is re-computed each time feedback from the group is received. The predictive nature is derived from the fact that each time a call is routed, an assumption is made that the new call is added to the queue at the group to which it routed, without waiting for the call center to return the information, which involves latency. For example, when a call is received at SCP[0113]101 (FIG. 1), there is a finite time involved before a routing decision may be made. Once the call is routed, there is a delay (latency) before the call is received at the call center and added to the group queue (in this example). There is a further delay for T-Server207 to be cognizant of the arrival of the call. Then there is a delay until the time that T-Server207 atprocessor207 sends updated group queue data to T-Server207 atprocessor208, which updates the historical data at stat-server209.
The overall latency and delay until historical data may be updated at the network level may vary, but an exemplary assumption may be made for purposes of illustration. Assume the overall delay between actual updates is twenty seconds. If calls are being received at the SCP at the rate of ten calls per second, two hundred calls will be received to be routed in the time between updates of historical information upon which routing decisions are made. In the group-predictive embodiment described, each time a call is routed at the network level, an assumption is made that the call is actually received at the call enter group queue, and the data (stat server[0114]209) is recalculated based on that assumption. The next call received is then immediately routed based on the recalculated data based on the assumption. The update that eventually arrives is used to readjust the database to reality, and call routing continues between updates based on the assumptions made.
In the case of routing calls to logical destinations wherein further routing is done at the call center level, as described above for agent-based call routing, wherein agent status is reported to the network level, predictive routing according to an embodiment of the present invention may be done similarly to the predictive group routing described above. In the agent routing case incoming calls are immediately routed with an assumption that the agent to which the call is routed is then busy, and the status is corrected when actual agent state is returned.[0115]
FIG. 3 is a process flow diagram depicting the decision and action flow for a predictive routing process according to the instant embodiment of the invention. At[0116]step401 action is precipitated on a next call to be routed. Action is typically controlled in this embodiment by an instance of T-Server207 running on a processor at the network level. Atstep403 current statistics are consulted, which, in the case of group level routing comprises an indication of projected handling time for each group in the decision set to which calls may be routed.
At[0117]step405 the call is routed based on the statistics available. Atstep407 it is determined whether or not a real update to the statistics has been received. If Yes, atstep409 the statistical data is updated to reflect the real information, correcting all assumptions since the last real update, if any correction is necessary. Then control passes to step411, where statistics are updated based on the routed call as well.
If a real update is not yet received, at[0118]step411 the statistical data is updated based on an assumption that the call just routed was completed, and the call is added to the statistics, which are recalculated based on the assumption. Then a next call is taken to be routed atstep401.
In the case of agent level routing the process flow is much the same as that shown in FIG. 3, except calls are routed at[0119]step405 based on agent status, and updates are based on agent status. That is, when a call is routed, the assumption is that the agent is then busy. Agent status is updated to real data as real data is reported back to network level from call centers. If no real data comes back, an assumption based on statistical call length is used to ‘best-guess’ re-availability of that agent.
Group level predictive call routing may be done for conventional call centers that are capable of reporting only historical data to the network level. Predictive call routing based on agent status is only possible in the unique case wherein actual status of call center switches may be reported to network level.[0120]
It will be apparent to those with skill in the art that predictive call routing may be applied to directing and redirecting of IPNT calls as well as to routing conventional telephony calls as described above. The differences are only in the details of the connectivity and data protocols, all of whiuch is well-known in the art. The inventive subject matter in predictive routing is in the decisions made based on predictive assumptions, not in the nature of the call or the organization of data packets and the like.[0121]
Dynamic Re-Routing (3203)In yet another aspect of the present invention, dual routing is performed. Reference is made again to FIG. 1, wherein a network level system shown in[0122]cloud100 is enabled to perform original routing by virtue of an instance of T-Server207 running onprocessor208. In the instant embodiment routing is done at the network level by any of the methods discussed above. That is to group level, agent level, logical application, and so on. Original routing, however, is not done to the actual destination. Rather calls are routed to a call-center-level routing point, and data is sent to the call center via the digital data link, such aslink210 toprocessor223 running an instance of T-Server207 and connected to switch123. The data sent comprises an indication or instruction of how the call should be treated.
Whenever a call is routed to a call center, it is never certain that by the time the actual call arrives, the destination will still be available, or the best fit for the call. There are many reasons for this. For example, because of latency in transmission and so forth, other calls may be routed to the same destination in the interim. Also, in many systems switches at the call center level are also accepting local calls as well as calls routed from the network level. In other instances some equipment malfunction of fault may misroute one or more calls. The uncertainty of availability when the call arrives is the reason for the instant embodiment of the invention.[0123]
At the call center routing point the call is synchronized with whatever data is sent, and a second routing request is generated. This second request is referred to by the inventors as “double-dipping”. The second routing request is made to a local router running typically as a function of the instance of T-[0124]Server207 executing on such as processor223 (FIG. 1).
Because the local router is closer to the requested destination, and because it arbitrates all incoming calls, it can confirm the original routing assuming the original destination is still free, or it can re-route the call if the destination is no longer available, or queue the call, etc.[0125]
FIG. 4 is a process flow diagram depicting a process flow in the “double-dip” embodiment of the present invention described herein. At step[0126]413 a call is received at the network level. Atstep415 initial processing is accomplished, which may include eliciting information from the caller. Atstep417 the network-level router is called, and a best fit destination is determined for the call based on the information available at the network level.
At[0127]step419 the call is forwarded, but not to the best-fit destination determined. The call is forwarded rather to a routing point at the call center local to the best-fit destination. Data associated with the call, including the best-fit destination determined instep417 is forwarded to the call center via a digital data link such aslink210 in FIG. 1. Atstep421 the call is received at the call center routing point.
At[0128]step423 it is determined whether the originally routed destination is still the best destination according to information at the call center level. If so the call is forwarded to the original destination atstep427. If not, the call is re-routed based on local information by the local router.
It will be apparent to the skilled artisan that dynamic rerouting, like other aspects of the present invention, may apply to IPNT calls as well as to conventional telephony as described above. IPNT calls may be directed to selected destinations, synchronized with data perhaps provided by a different route, and the redirected, even several times if necessary.[0129]
External Positivistic Forward Transfer in Call routing Systems (3204)In yet another embodiment of the present invention calls are routed to call centers and data passed in a switch-independent manner, similar to that described above in the section entitled[0130]Parallel Data Transfer and Synchronization. In the previous description, however, the instance of T-Server running at the network level requests a semaphore from the call center. When the semaphore is returned, the call is routed and data is transferred on the digital network link, the data including the semaphore, which allows the data to be synchronized with the call at the semaphore point at the call center level.
In the instant embodiment, time to route and transfer is improved by having the instance of T-Server running at the network level (on[0131]processor208 in FIG. 1, for example) co-opt a semaphore, based on the best available information then at the network level. This presumption by the router in the T-Server at the network level eliminates the time required for negotiation with the T-Server at the call center. The semaphore assumed by the network level T-Server is freed later when CTI information is returned that the call was correctly processed.
As in the previous description, when the routed call arrives at the call center semaphore point, the data, by virtue of having an indication of the semaphore included, is synchronized with the call and the call is forwarded to the destination. Data may be provided to a VDU at the agent's workstation at the destination via LAN connection as shown in FIG. 1.[0132]
FIG. 5 is a process flow diagram indicating steps in practicing this embodiment of the invention. At step[0133]501 a call is received. Atstep503 initial processing is performed. Atstep505 the router at the network level consults a stat-server (seeelement209, FIG. 1) for a best-fit destination. Atstep507 the router selects a semaphore destination based on the information instep507. Atstep509 the call is routed to the call center semaphore point and associated call data is routed via a separate data link (seelink210, FIG. 1) to the call center. Atstep511 the data and the call are synchronized at the routing point. Further step are as indicated above in the section titledParallel Data Transfer and Synchronization.
It will be apparent to the skilled artisan as well that positivistic forward transfer may apply to intelligent routing of IPNT calls, just as it applies to conventional telephony calls as described in this section.[0134]
Agent-Initiated Dynamic Requeuing (3206)In yet another aspect of the present invention a method is provided for rerouting calls from agent level, wherein the agent discovers, having received a call and interacted with the caller, that the call was misrouted, or needs attention by another qualified agent. By misrouted in this context is meant that for whatever reason the agent that received the call is unable to provide the service the caller wants or needs. The call may have been physically misrouted due to some error in hardware or software, so it is handled by a different agent than to whom it was originally routed, or, the call may have gone to the right agent, but the caller gave the wrong information, or insufficient information, for the system to get the call to an agent able and ready to provide the needed service, or, during the call, need arises for an agent with specific skills or knowledge.[0135]
In this embodiment a first agent has received the call and has discerned from the caller that another agent is required to handle the call. Potentially the agent also has a VDU with the caller's data displayed and input apparatus (keyboard, pointer) with which to communicate with the local T-Server.[0136]
In the conventional case the agent would be limited in options. The agent would transfer to or conference a physical phone number on the local or a remote central switch. The Automatic Call Distributor (ACD) on that switch would requeue the call. If the ACD were configured as a network ACD the call could potentially be distributed to other sites, but network ACD products typically work only between switches of the same manufacture. Also, the caller may have to wait again the full queue time.[0137]
In the instant embodiment of the present invention, by virtue of the presence and interconnectivity of the local instance of T-Server running on a processor ([0138]223, FIG. 1) connected to the local switch (123, FIG. 1), also connected to the agent's equipment byLAN301, and using unique control routines provided in T-Server207, the agent hands the call back to a local or a network routing point, potentially with added data elicited from the caller to better aid in further routing.
This operation is essentially agent-initiated double-dipping ala the description above in the section entitled[0139]Dynamic Rerouting. At the rerouting point rerouting of the call is requested of the local instance of T-Server207, and the call is redistributed. The agent does not know who is available where for this transfer, and ACD is not involved. The agent, however, in this embodiment of the invention may have a choice of selecting a cold, warm, or conference transfer, which the agent may do by any convenient input which has been programmed into the control routines in the preferred embodiment.
In a cold transfer, the agent simply sends the call back to the rerouting point with whatever new data can be added, and the call is then transferred to a new agent directly without any participation by the first agent. In a warm transfer, the first agent is connected to the next agent to whom the call is re-routed before the caller is connected, allowing the first agent to confer with the next agent before the caller. In a conferenced transfer the first agent and the caller are connected to the next agent at the same time.[0140]
It will be apparent to the skilled artisan that agent-initiated re-routing may apply to intelligent routing of IPNT calls, just as it applies to conventional telephony as described herein. For example, an agent may ultimately receive an IPNT call at his/her PC/VDU, either with or without a screen pop of data pertaining to the client placing the call and/or to scripting for the agent to follow in handling the call. It may become apparent to the agent that the call has been mis-routed, or would, for whatever reaason, be better handled by another agent. By virtue of adaptive software executing at the agent's station or at a connected processor, or both, such a call may be handed back to a routing point with whatever additional data the agent may have ascertained, and then be rerouted to a (hopefully) better destination based on the original and/or new data.[0141]
Number Pool Data and Call SynchronizationIn yet another aspect of the present invention, a unique routing method is provided for rerouting calls between call centers while minimizing the number of destination numbers required for the purpose. It is well-known in the art that the overall cost of operating a call center is strongly influenced by the number of destination numbers that have to be maintained to provide for peak traffic. In this aspect of the invention two or more call centers are assigned unique number pools of destination numbers that are used by a router in a sequential order to reroute calls between call centers.[0142]
Referring now to FIG. 6, three[0143]call centers501,502, and503 are illustrated having each an incoming telephone line over which calls out ofnetwork cloud100 are originally routed.Line521 carries calls tocall center501,line522 tocall center502, andline523 tocall center503. A service control point (SCP)101 is shown innetwork cloud101 with avector107 representing incoming calls that are initially processed, then routed to one of the three call centers.
It will be apparent to those with skill in the art that there may be more than one SCP sending calls to each call center, as there may be multiple 800 numbers used, the network may take any of several forms, and there may be more than the three call centers shown. The simplified representation of FIG. 6 is for purpose of illustration. There may also be other equipment in the SCP and a variety of protocols utilized in call processing and original routing.[0144]
It is unfortunate but true that not all calls routed to a call center are correctly routed, and may be handed over to agents at the call center where originally routed. A certain percentage of calls will be discovered to have been incorrectly routed, and to require rerouting to another call center. There may be any number of reasons for incorrect routing, and the reasons are not pertinent to the present aspect of the invention. What is important in this regard is that some calls will have to be rerouted.[0145]
In a conventional system, calls originally routed are sent to a destination number at a call center by a semaphore system, as has been described above, and sufficient destination numbers must be assigned and maintained at each call center to account for peak traffic. At the call center, calls are typically rerouted to agents at extensions at the call center, based on origination information and preprocessing information elicited at the SCP. The process of matching calls arriving at a call center with call data, and further routing calls to agents, and then clearing the semaphore so the destination number is free to be used again typically takes about twenty seconds.[0146]
The time of twenty seconds to handle an incoming call strongly influences the number of destination numbers that must be maintained. For example, if twenty incoming original calls per second are to be handled, a call center will need 400 destination numbers to allow twenty seconds to handle each call.[0147]
I like manner, in a conventional system, calls that have to be rerouted will each take the twenty second processing time, and additional destination numbers will have to be maintained for the rerouting traffic.[0148]
In the embodiment of the present invention illustrated by FIG. 6 a[0149]main re-router510 is provided connected by adigital network link511 tocall center501, bydigital network link512 tocall center502, and bydigital network link513 tocall center503. In practice, actual routing is accomplished, as known in the art, by control routines executed on a computer platform, known typically in telecommunications art as a processor. In the description herein the term router is meant to encompass all of hardware/software characteristic of routing, thus reference is made torouter510.
In this embodiment the connection from[0150]router510 to each of the call centers is through dedicated processors (514,515, and516 respectively) further connected to the respective call centers byCTI links504,505, and506, and each running an instance of T-server207 described previously. This is a preferred embodiment, but in some embodiments the connection may be directly to the switch at the call center, assuming that the call center switch is adapted to execute the necessary control routines in conjunction withrouter510 as described more fully below. Further, in thisembodiment call centers501,502, and503 are interconnected bytelephone lines525 and527. These lines are preferred, but not strictly required in practicing the invention, as calls may also be rerouted between call centers back throughnetwork cloud100.
It will be apparent to one with skill in the art that there may be many more than three call centers such as[0151]501 connected to the network. In this instant embodiment there are only three call centers shown, however, this number is deemed sufficient for the purposes of illustrating an embodiment of the present invention.
In conventional network routing systems, as described above, destination numbers are assigned to a typical call center, and it to these destination numbers that incoming calls are routed. These destination numbers are phone numbers paid for by the company that operates the particular network. A typical call center may have many hundreds of destination numbers assigned to it. In a typical embodiment, each destination number costs about one dollar per month to maintain. In the case of a large network there may be many call centers, each having many hundreds of destination numbers that are generating costs to the company.[0152]
In the present embodiment of the invention unique number pool assignments are made to each call center interconnected by[0153]router510, and used sequentially for rerouting of calls between call centers.
In the instant embodiment incoming calls are routed to various call centers, such as[0154]call center501, viaTelephony lines521,522, and523, as described above. The call center destination to which a call will be sent is based on information obtained from the caller atSCP101.Call center501 having received a call, then sends a Call Arrival Message (CAM) tomain router510.Main router510 uses the information provided in the CAM to make a routing decision.Main router510 may also, in some embodiments, request additional information by sending a Route Request Message. A RRM would typically access additional information related to the caller that may be stored on a database or file server somewhere on the network. After a RRM is received, a Route Request Response (RRR) is sent back tomain router510. Ifmain router510 determines that the call has been routed properly, then the call is forwarded on to it's final destination such as an agents extension, etc. In this case conventional destination numbers would apply, and a semaphore would be sent back to the origination point when that particular call has been forwarded freeing it's destination number for the next call. This process takes approximately 20 seconds over conventional network lines.
However, if it is determined that a more appropriate call center such as[0155]call center503 would best handle the call that arrived atcall center501, the call is rerouted tocall center503.Router510 maintains a data set (pool) of unique destination numbers assigned to each connected call center for the purpose of handling the rerouted traffic. These are not the same destination numbers used by origination points in the network for sending original calls to call centers. It is not required that there be any sequential association in the actual destination numbers. What is required and maintained byrouter510 is that the destination numbers at each call center be identified in a sequential order. For example, there is a first number for center501 a second number forcenter501, and so on, up to a last number forcenter501. The same is true for numbers assigned in a unique pool tocall center502 andcall center503.
Consider as a very simple example that the unique pool of rerouting destination numbers for[0156]call center502 has three numbers designated for our purpose as A, B, and C. A call arrived atcall center501, and it is determined that the call must be rerouted tocall center502. This call is sent to destination number A. A second call arrives atcall center501 for which it determined that rerouting tocall center502 is proper. This call will be sent to destination number B atcall center502. Similarly a call then arrives atcall center503 for which it is determined that rerouting tocenter502 is needed. This call is rerouted to destination number C atcall center502. Now, the next call at eithercall center501 or503 for which rerouting tocall center502 is needed is sent to destination number A atcenter502.
As operation continues, calls rerouted to call center A are sent sequentially to the identified numbers in the unique number pool associated with[0157]call center502, always returning to the first after the last is used, then proceeding again through the pattern. At the same time, calls arriving at eithercenter501 or502, to be rerouted tocall center503, are sent sequentially to identified numbers atcenter503, and calls rerouted from503 and502 to501 are sent sequentially to identified unique numbers at501.
As previously described, there may be many more than the three call centers shown, and there may be many more than three destination numbers assigned to each call center in the unique rerouting destination number pool. The sequencing may be quite complex, but, at each call center, the unique numbers are used in a sequential pattern so that after one number is used, it is not reused again until all of the other numbers assigned to that call center for the purpose of rerouting are used once more.[0158]
There is another difference between the rerouting and the original routing. That is that the origination and the final destination of a call are both known in the rerouting, and a rerouted call sent to one of the numbers in the unique rerouting pool may be therefor almost immediately handed off to an agent, or to a queue for an agent. The processing time is about one second. The quantity of destination numbers necessary for each call center in the unique pool is thus one number greater than the number of calls that can be routed by[0159]main router510 in one second. Typicallyrouter510 will be sized based on empirical data and statistics. If, in ahypothetical situation router510 is capable of rerouting 100 calls per second, then the quantity of destination numbers for each call center is theoretically101, to be sure that each number used has a full second to clear before it is used again. In practice, a margin for safety may be employed by providing a quantity of destination numbers equaling, for example, 1.5 times the number of calls that can be routed in one second.
In FIG. 6 and the accompanying descriptions above relative to FIG. 6, a single router was described, referred to as[0160]router510. In alternative embodiments of the present invention there may be more than a single router instance. There could, for example, be a router operable at each of theswitches501,502, and503 shown operating either onprocessors514,515, and516, or, if the switches permit, on the switches. In anotheralternative router510 could be connected to other routers in other locations not shown, and these further routers may be connected to other switches at other call centers, and so on. In these alternative embodiments, incorporating multiple routers, individual routers may negotiate with other connected routers, delivering messages, unique destination numbers for routing, unique call ID, any data attached to the original call or retrieved based on data attached to the original call, so the other routers may perform continued or additional routing.
Multimedia Managing and Prioritized Queuing System Integrated with Intelligent Routing Capability (3310)While intelligent routing is performed within call centers with regards to COST calls, DNT calls, and E-mail in systems known to the inventor, but not necessarily known in the art, the routing function is typically not integrated to encompass multiple forms of received communication, and does not typically include faxes or voice-mails. Therefore, it is an object of the present invention to provide an intelligent, integrated routing system that will allow client's communications of all sorts to be stored according to pre-set priority rules, and be delivered to next-best available agents based on intelligent routing implementations such as skill-set of the agent, predictive routing, and so on. Such a system will also include typically overlooked forms of communication such as voice-mail messages and facsimiles messages.[0161]
It is further an object of the present invention to provide a system as described above wherein live callers in queue may receive periodic options to change their form of communication to a virtual communication requesting a specific and timely response from a best-matched service agent.[0162]
Various elements found in the priority co-pending patent applications as listed in the “Cross-reference to related documents section” will be combined and employed along with newly innovative techniques and apparatus to provide the enabling disclosure of the present invention as provided in the examples to follow.[0163]
FIG. 7 is a system diagram illustrating a CTI/DNT-equipped call center according to a preferred embodiment of the present invention wherein one intelligent routing system using a single set of rules may route all call-center communications received.[0164]Communications architecture1011 comprises a CTI/DNT call-center1019 that is linked to a publicly-switched telephony network (PSTN)1013 via telephony trunks1016 and to a wide-area-network (WAN)1011, which in this embodiment is the well-known Internet, via adigital link1030. The Internet is used as an example because of it's universal nature, and standardized protocol.Internet1011 may, in other embodiments, be of the form of a corporate Intranet or other private WAN as may be known in the art. AlsoPSTN1013 may be of the form of a private telephone network rather than a public network as shown. The examples illustrated and taught herein utilize a public-access infrastructure only as a preferred embodiment. There are many other possibilities that are well known in the art.
COST calls represented by[0165]vector1018 arriving at aswitching apparatus1017 in the PSTN may originate from anywhere inPSTN1013. Similarly DNT communications represented by avector1020 arriving at anInternet routing node1029 may originate from any client having a computer running the appropriate software and having access toInternet1015.
Telephony trunks[0166]1016 will typically provide for outbound calls from call-center1019 as well as for in-bound calls switched from the network.Digital1030 may take any of a number of forms capable of carrying DNT telephony data as well as other forms of digital data. Other network-level hardware such as additional processors, servers, and the like for enhancing pre-routing capabilities such as routing calls to additional call centers and so on are not shown in this embodiment, but may be assumed to be present. It may also be assumed that a company hosting a call center such ascall center1019 may also host a number of additional centers distributed over a wide geographic range. However, the methods and apparatus of the present invention may also be applied for a single call center hosted by a single company or other organization.
Referring again to FIG. 7, COST calls to call[0167]center1019 arrive at aswitching apparatus1021, typically at a routing point, where they await further switching per routing instruction. CTI enhancement to switch1021 is provided by aCTI processor1023 via aCTI link1024.Processor1023 is also connected to a local-area-network (LAN)1057 withincall center1019, and via alink1055, through a CTI-adapter, to arouter1027 further described below.CTI processor1023 is adapted, in this embodiment, to control both COST-related hardware and DNT-related hardware implemented withincall center1019 with regards to routing execution of communication events as well as other control functions such as requesting additional information from other sources, and the like.
An interactive voice response (IVR)[0168]unit1022 is connected to switchingapparatus1021 in a manner that COST calls may be switched to the IVR, andunit1022 is also connected toLAN1057 by which interaction withCTI processor1023 may be achieved.IVR1022 is adapted to handle incoming cost calls fromswitch1021 that are not immediately routed to an agent. An internaltelephone wiring system1028 links individual agent's telephones to switch1021.
[0169]CTI Processor1023 is adapted, as one of many CTI applications it may provide, to creating and queuing electronic records representing client's COST calls, including retrieving and recording associated information related to the call. Provision may also be made in some embodiments for converting a connected COST call to a DNT call that may be routed over LAN57 to a connected agent, to be processes by an agent's computer station having a video display unit (PC/VDU) using suitable software. This conversion function, if used, may reside in switchingapparatus1021, or be adapted to the system in another way. In preferredembodiments CTI processor1023 also assigns priority to incoming calls based on predetermined rules.
In the present example, as shown in FIG. 7, there are five agent stations which share[0170]LAN1057. These areagent stations1045,1033,1031,1047, and1049. Two of the five agent stations, namely,stations1033 and1031 are shown in expanded view illustrating network and switch-connected components such as agent'stelephones1035 and1037, and agent's PC/VDUs1039 and1041. It will be apparent to one with skill in the art that there may be many more than five agent stations within call center19 without departing from the spirit and scope of the present invention, however, the inventor has deemed the illustration of five stations as shown herein to be adequate for the purpose of properly explaining the dynamics of the present invention. Further, some stations may be equipped for special functions, such as monitoring and supervision and the like.
Agents working within[0171]call center1019 are telephone-connected to switchingapparatus1021 via wiring1028 from the switch to each of agent's telephones such as telephone1035. LAN access for each agent is provided through the agent's PC/VDU such as PC/VDU1041. In this way agents may receive DNT and COST calls at their respective stations. Also connected toLAN1057 is a database/information server1043 and a statistical server (Stat-Server)1051.
[0172]Server1043 in many embodiments records information related to clients, such as purchase history, shipping information, preferences, and other such parameters.Server1043 may also contain product information, inventory reports, etc.STAT server1051 records statistical information regarding agent history and performance including all customer transactions and dispositions as well as agent skill levels and agent status in real time. In this way, intelligent routing routines may rely upon up-to-date information regarding agent overall status and history for use in predictive routing.
It will be apparent to one with skill in the art that there may be several separate servers having dedicated functions connected to[0173]LAN1057 without departing from the spirit and scope of the present invention. The inventor has chosen to illustrate separate functions within a few connected servers such asservers1043,1051, and1023. It will be appreciated that the routing software and other control routines for intelligent routing will generally be implemented withinprocessor1023. However,servers1043 and1051, as well as other dedicated servers or routers (not shown) that may be connected toLAN1057 may also execute routing routines. The embodiment shown here is but one example of many possible implementations.
In the example shown DNT communication via[0174]Internet1015 entersmultimedia server1027 withincall center1019.Multimedia server1027 in this embodiment is an E-mail server, as in related case 08/795,680, that has been further improved and adapted to accept electronic faxes, video-mail, DNT calls and the like. AnIVR unit1025 adapted to handle live DNT calls and programmed to interact with callers is connected tomultimedia server1027, and performs essentially the same functions for DNT calls (in this case IPNT calls), that are performed byIVR server1022 for COST calls. Multimedia-to-CTI adapter1026 is provided for the purpose of converting incoming multimedia communications into a record format that is transportable via LAN and may be understood by LAN-connected devices. In this way, all communication requests along with attached information may be routed via a single set of routing rules.
Unique software of the present invention creates a prioritized multimedia-queue (M-Queue)[0175]1036 similar in many respects to the intelligent queue described with reference to co-pending patent application 09/024,933 wherein live and virtual communications may be prioritized and represented while awaiting further routing instruction. M-Queue1036 has all of the attributes of the queue of case 09/024,933 with the added adaptation that enables storing and processing records of all forms of multimedia communication, including DNT and COST calls. A prioritized multimedia-queue application for a queue such asqueue1036 may reside inCTI processor1023, or in a separate LAN connected device. In some embodiments of the present invention, there may be more than one queue established by the software of the invention with each queue dedicated to different forms of communication and prioritized according to pre-set rules. However, due to an innovative technique of the present invention wherein any communication may be represented by a LAN-transportable virtual-communication record, one queue is all that is required.
In the case of a COST call, and in the event of heavy call loading, calls are routed to[0176]IVR1022.IVR1022 may inform the caller regarding the estimated time before an agent will be available and ask if the caller would rather leave a voice-mail message instead of waiting. If the caller leaves a message, it is prioritized and made of record as a virtual call and routed byCTI processor1023 taking it's place in queue according to pre-set criteria.
When the record of the voice-mail reaches the head of the queue, it is routed to the next best available agent utilizing all of the sophisticated routing protocol most often reserved for live calls, including the retrieval and inclusion of any relevant information associated with the record. The agent receiving the record initiates a response action based on the content of the record. For example, if the voice-mail requests a call-back, the agent may initiate the call, or transfer the request to an automated outbound dialing queue, including instruction provided by the caller as to time to call and the like. In one embodiment, automatic outbound dialing would be the routing destination for the record instead of the agent. In this way, the client may be called and connected to the agent with a high priority so as to insure connection.[0177]
In an alternative embodiment the IVR informs the caller of the wait time, and offers the caller an option of being called back at a time close to the wait time, and being placed back in the queue at the point where the call would be if placed in the queue originally. For example, in this embodiment, if the wait time in the queue is ten minutes, the IVR may schedule a call-back to the customer in 9 minutes and 45 seconds, and queue the call-back in an outbound dialer, which will make the call at the appointed time. After making connection with the customer again, the system places the new call in the queue at or near the head of the queue, so the live call will then be connected to an appropriate agent very quickly. By this method callers may be assured of being serviced in the time given as a wait time, alleviating any incredulity or mistrust, and establishing good will for the host of the call center.[0178]
In the case of a live DNT call,[0179]IVR1025 informs the client of the estimated waiting period before an agent will be available to answer the DNT call. An electronic voice message may be left by the customer, stored and routed in the same manner as virtual calls representing COST calls, as described immediately above. Multimedia-to-CTI adapter1026 makes record of and prioritizes the message for placement inqueue1036 according to pre-set rules. Again, when the record advances to the head of the queue, it is routed to a next best agent overLAN1057. The agent receiving the record may initiate the requested response.
In the event that a caller, informed of delay by an IVR, elects to wait for an agent, then the record will indicate a live call waiting either at switch[0180]1021 (COST call) or at multimedia server1027 (DNT call). The virtual-queuing function may operate as the default mode, or be set to become operative during times of need such as peak-load hours.
Prioritizing communications may depend only on the type of media used. For example, live calls may be identified to assume highest priority while faxes assume the lowest priority. Priority may also be established according to additional customer information that may be retrieved from[0181]database1043. For example, an E-mail from a company's largest buyer will be assigned a higher priority than a voice-mail from a smaller buyer, and so on. A parser tool may also be used to review certain types of messages, such as E-mail or faxes, in order to assign priority based on content of the message.
IVRs such as[0182]IVR1022 or1025, in addition to offering voice-messaging, may also offer a series of generic automated responses such as fax-backs or E-mails containing standard information. In this case, the record would automatically be routed to such automated services transparent to the agent.
As previously described in co-pending patent application 09/024,933, a virtual queue is provided wherein callers may disconnect from the call center after being queued without losing their place in the queue. When their virtual call reaches the head of the queue the client is called back and connected to a next best available agent to handle the call.[0183]
In co-pending case 09/024,825, a queue is provided that allows calls to be prioritized and sequentially stacked so that the highest priority calls are routed first according to existing routing rules. As described in numerous examples in the specification of that prior application, the prioritizing technique can be used with virtually any type of routable communication such as E-mail, V-mail, faxes, Internet protocol (IP) calls, and so on. However, different forms of communication would be handled separately (different queues), with live callers required to remain connected to the call center until their call is answered.[0184]
An object of the present invention is to combine the innovative aspects and technology found in the above described cases and further improve the combination to obtain the queuing system of the present invention.[0185]
FIG. 8 is a block diagram illustrating a multimedia queue according to an embodiment of the present invention.[0186]Queue1036 is a virtual queue wherein all communications may be represented by records, and wherein live callers may disconnect and be called back without losing their place in the queue. In addition to live calls (both COST and DNT), E-mails, video-mails, voice mails, faxes, and the like may be made record of and placed inqueue1036. The record created for each type of communication is standardized with respect to format for the purpose of universal understanding by LAN—connected devices such as PC/VDUs operated by the agents. With respect to live calls as described above, a client placing a live call may elect to hold with the record so designating. A client electing not to hold may instead place a voice mail, perhaps requesting a call-back with the record so designating.
An innovation inherent to the present invention is a fact that each record representing a type of communication may be routed according to existing routing rules such as skill-based and predictive rules. A further innovation inherent to the present invention allows for prioritizing the records in a combined fashion using a single set of rules. Record priority bumping may take place in the queue regardless of communication type.[0187]
Some attributes used in multimedia are not generally compatible with telephony-based LAN-connected storage and routing services such as with E-mails for example. An E-mails reply address may not be recognizable to a LAN connected storage device or to routing software that is generally used for the routing of telephone calls. This condition is described with reference to co-pending application 08/795,680. For this reason, a multimedia-to-[0188]CTI adapter1026 is used to convert such attributes to a format that can be easily understood by routing and storage software. After the proper formatting is performed inadapter1026, then the record is created and prioritized. Actual multimedia communications may be stored in a separate dedicated LAN-connected server or servers. Multimedia toCTI adapter1026 is equipped to retrieve information from other sources on the LAN much the same way asIVR1022.
Yet a further innovation allows the actual multimedia message such as a voice mail to be routed in unison or in parallel with the record. More specifically, the actual media is retrieved and routed based on the direction of the record. Multimedia-to-[0189]CTI adapter1026 formats all media that is not a live call for transport over the LAN to connected devices and systems. The agent may receive a notice of the record and then retrieve the media, or the media can be routed to the agent based on the record.
Referring now to FIG. 8, there are[0190]7 records1-7 representing various forms of communication placed inqueue1036. In this embodiment, the records are prioritized according to media type. For example,records1 and2 are live calls (one is a COST call and the other a DNT call, although this distinction is not shown in the figure),record3 represents a voice mail left by a live caller who has elected to disconnect from the call center during the waiting period associated withqueue1036.Records4 and5 represent E-mails, whilerecords6 and7 represent faxes. One can appreciate that they are stacked according to assigned priority.
It will be apparent to one with skill in the art that[0191]queue1036 may contain many more records of communication than are illustrated here, however, the inventor has deemed7 such records sufficient for the purpose of adequately describing the present invention. It will also be apparent to one with skill in the art that there are many possible priority rules that may be implemented and applied to queue1036 without departing from the spirit and scope of the present invention. The example illustrated herein is but one of those many possibilities.
Because the records are universally understandable to LAN-connected devices and intelligent routing software, they may be stored in a single general queue as shown here. However, separate queues may be used if desired without departing from the spirit and scope of the present invention. Such a case may be if facilities or departments responding to the records are divided by media type and separated geographically.[0192]
A group of[0193]agents1059 represents the agents of FIG. 7 residing atagent stations1045,1033,1031,1047, and1049. Each agent ingroup1059 has a specific skill set, although an indication of each set is not indicated in the figure. For example,agent1 is a software specialist.Agent2 is a hardware specialist whileagent3 is a hardware specialist who also speaks fluent Spanish.Agent4 is a troubleshooting specialist.Agent5 is a shipping coordinator.
As previously described, records[0194]1-3 are voice mails that were left after clients placing COST calls were prompted viaIVR1022.IVR1022 is multi-taskable meaning that it may interact simultaneously with a number of clients according to a number of different criteria. For example, voice recognition may be used to determine the original nature of a call. Touch tone techniques may then be employed to offer the client an option of perhaps leaving a voice mail or receiving an automated fax or E-mail.
In one embodiment,[0195]IVR1022 is enhanced with outbound dialing capability (or interfaced with an outbound dialer) so that if a client requests a call back, his record may queued in an outbound queue. When his or her record advances to the head of the queue, the outbound dialer will place the call to the destination number of the client and connect the client to an available agent when he or she answers the call. Such outbound calls may be given priority over normal incoming calls so that requeuing would not be required.
Other automated services may be provided by the call center such as automated faxes, E-mails, voice messages and the like. In these cases,[0196]IVRs1022 and1025 would offer the services as an option. If the client only seeks information and does not require a live agent, he or she may well select an automated response. In this case, the record would be routed to the appropriate automated system to prepare and send the information according to the media type selected. In this way, agents may be kept busy answering calls and responding to other communications that actually require their attention.
[0197]CTI server1023 creates digital records of COST calls according to customer preference with regard to available options, and assigns a priority for each record. One function of the innovative software allows retrieval of stored information regarding the client in order to aid the prioritizing process. The actual recorded voice mail may be stored in a separate multimedia database such asdatabase1043 of FIG. 1. When the record is routed to an available agent, the actual voice-mail may be retrieved by the agent, or may be routed in unison with the corresponding record.
In this embodiment,[0198]record1 is a live call from a client seeking particulars of a recently shipped order. Therefore, when this call reaches the head of the queue it is routed toagent5 who is the shipping coordinator.Record2 in this example is from a Spanish-speaking client with a hardware problem to solve. Whenrecord2 advances to the head of the queue it will be routed toagent3 who handles hardware and speaks Spanish. All records are so routed unless they are destined for automated services as previously described.
[0199]Multimedia server1027 receives communications from clients by way of a WAN such asInternet1015 of FIG. 7. It will be appreciated that live communication as well as E-mails, Video mails, file transfers, and the like may entermultimedia server1027. IVR1025 (a digital equivalent to IVR22) intercepts live communications such as a DNT call. The same services may be offered to a client byIVR1025 as described with reference toIVR1022 as well as allowing the client to leave a voice-mail message, which may be recorded and routed.
In one embodiment of the present invention, separate servers may be used for separate media forms such as a fax server for faxes, an E-mail server for E-mails, a digital server for Video-mails and other audio-visual media, and so on. However, in a preferred embodiment, one digital storage facility/server may be used. COST clients may leave voice messages by phone that are then digitized and stored with other multimedia communications. In this way, a COST client requesting a call back on the telephone may have his voice mail accessed via the agent's PC/VDU instead of from a traditional voice mail box.[0200]
Referring again to FIG. 8, records one through[0201]7 have been created, prioritized and queued inqueue1036. If a record8 is now created and entersqueue1036, it may be assigned a higher priority than records already entered. For example, record8 may be a video-mail from a client known to be the largest single buyer of the company's products or services. In this case, record8 would perhaps bumprecord1 thereby being the next record at the head of the queue.
In one embodiment, wherein such a VIP client has placed a live call, then immediate routing may take place bypassing the queue altogether. When an agent receives notification of such a call, a current transaction engaged in by the agent may be terminated to free the agent for the call and so on. In another embodiment, IVR[0202]1022 (if a COST call) or IVR1025 (if a DNT call) may, through accessing stored records, assign a highest priority inqueue1036 including welcoming the client by name and assuring him or her that there is no need to disconnect as the call will move immediately to the head of the queue. Such a personal feature may help companies to secure high value clients.
It will be apparent to one with skill in the art that different types of companies will vary in the way they set routing and priority rules with regards to[0203]queue1036. It will also be apparent to one with skill in the art that companies hosting call centers that do not engage in one or more forms of communication covered in this specification may still practice the present invention with communication media that is practiced. The method and apparatus may be implemented in a COST-call center, a DNT-only call center, or in a combination CTI/DNT call center as taught herein without departing from the spirit and scope of the present invention. Intelligent routing implementations such as predictive routing, skill-based routing, statistical routing, and other types of intelligent implementations can now be performed with all media types using a single set of rules. There are many possible implementations some of which have already been described. The spirit and scope of the present invention is limited only by the claims.
Internet Call WaitingIn various embodiments of the present invention, described in enabling detail below, a telephony system is provided wherein, during the time a client is connected to the Internet, a unique call-waiting system is enabled. The unique call-waiting system alerts the client by audio and/or video display at the client's Internet-connected computer when a PSTN call is waiting. Facility is provided wherein the client can choose to connect to a waiting call, whereby the selected call is connected to the client's computer over the Internet connection as an IP call. In some embodiments facility is also provided for alerting a client to multiple calls waiting, and the client is enabled to refuse calls, connect to calls, or connect and return an automatic pre-recorded announcement. In various embodiments of the invention the client's connection status is maintained in various ways, described below in enabling detail.[0204]
FIG. 9 is a simplified overview of a telephony-communication network and system according to an embodiment of the present invention, wherein PSTN telephone calls placed to a client's telephone number cause an alert to be sent to the client via the client's Internet-connected computer, and accepted calls may be converted to IP calls and connected to the client without interruption of an ongoing Internet session. In this specification the term client is used to mean any person to whom the services of the invention are provided in practicing the invention in any embodiment.[0205]
The inventor in the following disclosure teaches several embodiments of the invention wherein PSTN calls may be routed to a client having an ongoing Internet session and Internet telephone capability, after first alerting the client to the call or calls waiting. It will be apparent to the skilled artisan that the embodiments described below are examples of practice of the invention, and are not meant to be limiting. There are other possible alterations that may be made within the scope of the invention.[0206]
In the system of FIG. 9 a[0207]client premises2110 comprises atelephone2111 and apersonal computer2112 sharing a telephone line and linked to atelephony switch2151 in public-switched telephone network (PSTN)2100 via aline2150.Telephony line2150 may be of the form of analog connection, digital and analog connection such as ISDN, or any other line type deemed appropriate to carry both digital data and analog data.
[0208]Telephony switch2151 is exemplary of switches in the PSTN, and viaswitch2151 the client may place telephone calls viatelephone2111 to virtually anywhere on the planet, and may also connect through the PSTN and an Internet Service Provider's (ISP) modem bank2120 to the Internet network, indicated bynetwork cloud2101. Once connected to the ISP and logged on, the client can browse the Internet, connecting to a multitude of servers also connected to the Internet network. In embodiments of the present invention, the client atpremises2110 will be logged onto the Internet as described immediately above.
In one embodiment of the present invention, a person at a[0209]premises2115 having a telephone2116 places a PSTN call to the client atstation2110 using the telephone2116 connected toPSTN2100 vialine2152.Caller2115 may or may not have a PC or an Internet connection. To clearly illustrate the present invention it is intended, for purposes of this example, that the person atpremises2115 has no PC and is not connected to the Internet.
In one embodiment of the present invention, when a client places a call to log onto the Internet via his Internet Service Provider (ISP), a pre-defined forwarding number is programmed into[0210]telephony switch2151 using the Centrex functions of the switch, and the client's call-waiting services (if any) are temporarily discontinued. The necessary commands may be added to the dialing string, for example, that is used by the client's computer to dial-up the ISP. Centrex functions are software functions that are part of a normal telephone service such as call waiting, call forwarding, conference calling, and the like.
The number to which incoming calls for[0211]telephone2111 are forwarded is a destination number associated with atelephony switch2141. While the client is connected to the ISP, all incoming calls that are designated for the client at station2110 (telephone2111) are routed vialine2154 to switch2141.
[0212]Telephony switch2141 has an IP telephony interface, that is, the switch is adapted to convert incoming calls fortelephone2111 into digital Internet protocol telephone calls using a Transfer Control Protocol/Internet Protocol (TCP/IP) format andconnection2136, and routing the data to the Internet. TCP/IP is a standard communication protocol that is well known in the art and utilized in much computer integrated communication with the Internet. In some embodiments the necessary hardware and software interface to do the call conversion may be integrated withtelephony switch2141. In other embodiments there may be external equipment connected to switch2141 and to link2136.
At[0213]telephony switch2141 the conversion is made and the call is routed through TCP/IP link2136 to anInternet sub-net2131 hosted byISP2130. Now converted to one of several Internet formats (actual format depends on the client's Internet phone application (IPA)2113), the call can be received bycustomer2110 in the form of an Internet phone call toPC2112 running an instance of anIPA2113.
To process incoming calls it is necessary that[0214]switch2141, or a processor connected to the switch, have a look-up table or other means for associating client's with IP numbers. The association is made during setup. The association can be made from destination number data arriving atswitch2141 with a forwarded call. When a forwarded call is received atswitch2141, an association is made to the client, the client's IP address is retrieved, and the call is forwarded to sub-net2131 as a IP telephone call. In many cases, clients will not have a permanent IP address, as the IP address for many services is assigned anew each time the client logs on. In this case, the IP address is retrieved from the client'sISP2130, or from the client'sIPA2113. It will be apparent to those with skill in the art how this may be done in many ways.
In another aspect of the invention the client's computer station is adapted to deal with incoming calls in a variety of ways. This adaptation is accomplished through software, such as by a plug-in operating in concert with the client's WEB browser. An important function of this application is to alert the client to a waiting call, because the call alert is now coming on the Internet connection and not on[0215]telephone2111. In a preferred embodiment, when an incoming call is received atswitch2141 an alert signal is sent over the Internet to the client atcomputer station2112, and the signal initiates an alert action at the client's computer. The client's software may display a telephone icon, for example, on the video display of the computer, and the alert signal may result in an audio “ringing” accomplished through the multimedia abilities of the client's computer, together with a visual effect, such as the telephone vibrating on the screen. Also in a preferred embodiment caller ID information may arrive with the alert signal, and cause the caller's ID to be displayed in conjunction with the audio/visual alert.
In a preferred embodiment the client may respond to the audio/visual alert in a number of ways. Firstly, the client may elect to accept the call, which action may be predicated in any number of ways known in the art, such as double-clicking the alert icon. When the client accepts the call, the system completes the IP call to the client via[0216]link2136, sub-net2131, and the client's Internet connection.
In alternative embodiments, additional functionality may be built in to the client's application, such as an ability to handle more than one call at a time, presenting the client with separate icons or other indicia for each call, including caller ID. The client may select to return pre-recorded messages as well, such as “Thank you for the call. I'm on an Internet session. Please call back after 4:00 PM.” In another alternative the client may select to take the call as a PSTN call, and end the Internet session, at which time the system forwards the call to the client as a PSTN call to[0217]telephone2111. In yet another embodiment of the invention the client may elect to continue the Internet session, but to have the incoming call forwarded to a conventional (not Internet protocol) telephone number, such as a cellular telephone which the client may have nearby, or another telephone set in the same premises. In this embodiment the system is adapted to redirect the incoming call according to the recipient's selection. In this embodiment the client mat set his/her routing rules in subscribing to the service to have incoming calls during browsing sessions redirected to a cell phone number, an alternate telephone at or near his/her premises, or to some other destination. Alternatively the client may select a forwarding after being alerted to an incoming call.
In embodiments of the[0218]invention switch2141 and associated equipment along with a subscription service allowing client's to register and provide the necessary information to use the service (telephone number, IP address, etc.), may be implemented in a number of ways. For example, this equipment and service may be provided by an Internet Service Provider, such asISP2130, as shown in FIG. 9, or may be provided by, for example, a local telephone company.
In an alternative embodiment of the present invention, initiation of service through[0219]switch2141 is accomplished throughISP2130, rather than by call forwarding via the Centrex functions of a PSTN switch, as in the first embodiment described above. Referring again to FIG. 9, in this alternative embodiment, at the time of Internet connection, using an amended log-in procedure for subscribers to the service, a command is sent from modem bank2120 associated withISP2130 to a telephone-survey server2133 connected to sub-net2131 ofISP2131.Telephone survey server2133 is a special server hosted byISP2130 in this embodiment, and is the repository of the subscriber list, look-up tables for associating subscriber's numbers with IP addresses, and so forth, as described above.
Telephone-[0220]survey server2133 is connected viadigital link2134 to a CTI-server (hereinafter T-Server)2142. It will be apparent to one with skill in the art that T-server2142 and telephone-survey server2133 may be one server capable of the required functions of the present invention. Separate servers are illustrated here for the explicit purpose of describing separate functionality.
T-[0221]server2142 in this embodiment is a CTI-Sever capable of monitoring and directing activities ofswitch2141. T-Server2142 receives direction vialink2134 from telephone-survey server2133 and directsswitch2141 to initiate a call to the remote access forwarding number of the client, thereby directing forwarding of incoming calls for the client to a number atswitch2141. From this point operation is the same as described above for the first embodiment, with incoming calls being converted at the IP interface associated withswitch2141 to TCP/IP protocol and routed to the client viaconnection2136 andISP2130.
There are certain advantages to this embodiment made possible by the unique server capability. One advantage is that due to bypassing the centrex functions of[0222]telephony switch2151 by having the modem bank initiate the forwarding command to T-server2142, no delay would be experienced bycustomer2110 in logging on to the Internet.
Another advantage of a server-controlled environment is that with appropriate software features available with PC[0223]2112 (plug-in2114), a method is enabled whereby the client atstation2110 can place a call to a person not connected to the Internet such as a friend, or public business, and so on, without disconnecting from the browsing session To further illustrate, assume thatcustomer2110 is engaged in a current Internet session with a single line, and has realized that he must place a time-sensitive call to confirm a business appointment. Icons available through his plug-in2114 could be matched with the conventional telephone number of the person he desires to contact. This can be done either by accessing telephone-survey server2133 over the Internet and initiating the appropriate configuration of the selected icon to that particular analog number, or by obtaining the desired number from a telephone book and manually configuring it to the selected icon. Instead of dialing the analog number from the single Internet-connected analog telephone as would be required without the appropriate software,customer2110 double clicks the icon representing the desired contact andInternet phone application2113 places a digital call through modem bank2120, sub-net2131, and TCP/IP link2136 totelephony switch2141 where the digital call is converted to analog.Switch2141 then places the analog call to the desired destination, and performs the two-way conversion required for the on-going call once connection is made. Associated toll charges could be stored on a separate server such asserver2143, and later billed tocustomer2110 in a conventional manner such as on his telephone bill.
It will be apparent to one with skill in the art that once connected to an analog phone, continued analog to digital and digital to analog data conversion would be required to maintain dialog in the conversation. A full-duplex sound card will be required on[0224]PC2112 to enable the client atstation2110 to receive and send audio at the same time, avoiding problems such as the need to wait until the incoming transaction is complete before speaking and so on.
In another embodiment of the[0225]invention switch2151 is connected to CTI-server2142 via aCTI link2153, (FIG. 1) and T-Server2142 may thereby monitor and direct activities of switch251 directly. In this embodiment, when the client atstation2110 logs on toISP2130 via modem bank2120, T-Server2142 recognizes the activity, and sets up call forwarding of incoming PSTN calls for that client to switch2141, where such calls are converted and directed via the Internet as described above for the first two embodiments.
In yet another embodiment of the invention, the local telephone company may have a server (not shown) connected to switch[0226]2151 for performing functions according to the present invention. This server could be a CTI-server connected via a CTI link and executing a CTI application, or could be a server of another sort, or the functionality may be integrated with the functions ofswitch2151. The special server is Internet-connected, and hosts a WEB page. In this embodiment plug-in2114 in the client's WEB Browser, after connection is made to the Internet throughswitch2151, negotiates with the server through the Internet, which then sets upswitch2151 to redirect incoming calls through the Internet to the client. This embodiment has the advantage of providing all the necessary services at the local PSTN switch hosted by the phone company, and the ISP need not be involved.
It will be apparent to one with skill in the art that the hardware used in various embodiments of the present invention is well known in the art and can be utilized in various ways without departing from the spirit and scope of the invention.[0227]
In some embodiments of the present invention, any one of several commercially-available Internet telephone software packages may be used[0228]
FIG. 10 is a process flow chart illustrating various steps in practicing an embodiment of the present invention in a general and broad sense At[0229]step2303 the client places a call to access his/her dialup ISP. The system at step305 activates Internet call-waiting for that client while the client is connected to the Internet through the ISP.
At[0230]step2307 an incoming call is placed for the client. Atstep2309 the system sends an alert to the client via the client's Internet connection that there is a call waiting.. Atstep2311 the client responds to the alert by accepting the call. Atstep2313 the incoming call is routed through the Internet to the client as an Internet phone call.
Interaction of the client's PC to incoming calls, and function of software of the client's PC in practicing the invention in other ways has been described to some extent above. In all cases there needs to be a minimum software ability at the client's station to receive Internet telephone calls, and there are several commercially-available applications for the purpose. Moreover, a plug-in for a client's WEB Browser has been described for providing functionality according to several embodiments of the present invention. Considerably more functionality may be provided in some embodiments than presently available from commercially-available Internet Phone software. The software at the client's PC, for example, may cause icons and windows to be displayed in a graphic user interface (GUI) such that incoming calls may be displayed as icons, labeled as to caller and time, and so on. Functionality may be provided such that selecting an icon may connect the call to the client's speakers and microphone such that a conversation may take place. Other windows and functions may be provided as well, and many will be apparent to those with skill in the art in addition to those that have been herein taught[0231]
Several embodiments have herein been described for practicing the present invention, and given the teaching herein, more may be apparent to the skilled artisan. Moreover, there are many alterations that might be made in the embodiments described, without departing from the spirit and scope of the invention. There are, for example, many individual preferences in coding software while providing essentially the same functionality. There are also variations in connectivity that might be made and variations in computer platforms provided for accomplishing the ends of the invention, without departing from the spirit and scope of the invention. The breadth of the invention is limited, therefore, only by the language of the claims.[0232]
Automated Survey Control Routine in a Call Center EnvironmentFIG. 11 is an overview of a combined CTI and IPNT call center enhanced with automated survey capabilities according to an embodiment of the present invention wherein a call-center administrator may select incoming calls via automated routine for the purpose of initiating and completing a customer survey.[0233]
Integrated telephony-[0234]communications network3011 comprises acall center3019 that is linked to both the Internet represented bycloud3015 and a publicly switched telephone network (PSTN) represented bycloud3013. Telephony communication systems with Internet connectivity such assystem3011 are becoming more prevalent in the art and are capable of both conventional telephony analog and Internet-based communication. By conventional telephony is meant all of the telephone system infrastructure that is not IPNT.
A[0235]single switching apparatus3017 is shown inPSTN network3013 to represent all of the apparatus and connecting trunks and such that may be extant in the network.Switch3017 is shown connected viatrunk3045 to atelephony switch3021 withincall center3019.PSTN3013 may be a private network rather than a public network andInternet3015 may be of the form of another wide area network (WAN) such as are known in the art.
The embodiment illustrated herein represents just one example of a telephony communications environment that can utilize the method and apparatus of the present invention. Further, the method and apparatus of the present invention can be implemented in a telephony communications system that is not linked to a WAN. In a preferred embodiment, the present invention is utilized with voice calls arriving at a call center such as[0236]call center3019 within the scope of a CTI telephony architecture. However, application of the present invention may also be made to an IPNT system, as briefly noted in the background section and represented here. In this embodiment,call center3019 may handle calls from the conventional telephone network as well as IPNT calls.
Referring now back to FIG. 11, calls originating from[0237]PSTN3013 are, in this embodiment, routed to switch3021 in the call center premises. In this embodiment acomputer processor3023 is linked to switch3021 via aCTI link3024.CTI processor3023 provides computer enhancement tocall center3019. Routing protocol and similar control routines such as statistical and skill based routines are stored and executed viaprocessor3023, which may access other sources of information and data.
[0238]CTI processor3023 is connected to a local area network (LAN)3057, which also interconnects PCs agent stations withincall center3019 such as anagent station3031 and anagent station3033.Agent station3031 comprises an agent'stelephone3037 and an agent'sPC3041.Agent station3033 comprises an agent'sphone3035 and an agent'sPC3039. Also connected toLAN3057, there is a customer information system (CIS)data server3043 and an interactive voice response (IVR)unit3061.IVR3061 is connected totelephony switch3021 vialink3063.CIS data server3043 may contain information regarding customers such as history, preferences, order information, and the like.IVR unit3061 includes software and typically digitally recorded messages needed to interact with callers who may be routed to the IVR instead of to live agent.
[0239]IVR3061 is multi-taskable meaning that it can interact with callers according to a number of differing criteria. For example, information may be obtained by callers via interactive exchange as well as information being made available to the call center via the same method. Interactive exchange between an IVR such asIVR3061 and a client typically involves voice recognition technology. However, other methods known in the art such as touch tone response may also be employed.
[0240]Processor3023 in this embodiment is shown linked to Internet server309 via a TCP/IP connection3059. In other embodiments the Internet access may be through another server on the LAN accessible toprocessor3023.Internet server3029 is accessible to agents from PCs onLAN3057 throughprocessor3023 anddigital connection3059.Switch3017 inPSTN3013 is shown connected to an Internet Service Provider (ISP)3027 vialine3049. The Internet connectivity, as illustrated within this embodiment, is meant to show only that Internet-based communication as well as conventional telephony communication is provided forcall center3019, and that aspects of the present invention may be applied to both mediums. WAN access such as access toInternet3015 may be of the form of a dial-up connection or a connection that remains open so that agent's PC's such as agent'sPC3041 and agent'sPC3039 are continually connected toInternet3015 while they are logged-in to telephony-communications network3011.
In an embodiment of the present invention a software routine enables a call-center administrator, manager or other responsible party to select incoming calls at[0241]telephony switch3021 withincall center3019, based upon a percentage or random method, for the purpose of initiating a “post call” survey with the selected client-callers. For example, selected calls, prior to being routed to an agent for normal business, are routed to eitherIVR3061 or a live agent such as an agent atagent station3033. In either case, permission is first elicited from the client-caller to participate in the survey. If a selected caller agrees to participate in the survey, he/she is requested not to discuss the fact of the survey with any agent to whom the call may be routed, and to hold, rather than hang up, after the transaction with the agent is complete so that the caller may be transferred back toIVR3061, or in some embodiments, to a survey agent responsible for conducting the survey. In the case of a live agent conducting the survey, any eligible trained agent or agent supervisor who is not a subject of the survey himself may be used, at any agent station. It will be apparent to those with skill in the art that there will typically be many more agent stations than the twostations3031 and3033 shown in FIG. 11. In this embodiment there are only two agent stations shown,agent station3033 andagent station3031.
The software according to an embodiment of the present invention may execute on[0242]processor3023 or another processor linked toLAN3057 and linked totelephony switch3021. In various embodiments, call selection and survey participation may be either partly or wholly automated. For example, in a completely automated instance, a particular group of agents withincall center3019 may be designated to be subjects of the survey. Either part of or all of the incoming calls routed to that particular group of agents could be automatically selected and routed to an IVR such asIVR3061.IVR3061, in this case, automatically solicits customer permission to conduct the survey. Willing customers are automatically transferred (after their session with a target agent) to the same or another IVR to participate in the survey. After the interactive survey is performed, the call is terminated and the information cached for later review. In a partially automated instance, call selection and the solicitation of customer permission could be automated while the survey may be conducted by a live agent or agents.
It will be apparent to one with skill in the art that there may be more than one IVR such as[0243]IVR3061 connected toLAN3057 without departing from the spirit and scope of the present invention. Forexample IVR3061 may be used for asking permission from a caller to conduct a survey, and another IVR may be used to actually conduct the survey, and so on. It will also be apparent to one with skill in the art that there may be more than two agent stations such asagent stations3033 and3031 without departing from the spirit and scope of the present invention. In actual practice, many agents could be the subject of surveys during any given time period while many other agents may be conducting surveys, and so on.
In an embodiment wherein IPNT calls are accepted from[0244]Internet cloud3015, incoming calls would also be selected from a general queue or routing point. Such a routing point or “virtual destination” could be implemented inprocessor3023, or in a LAN accessible and Internet-connected file server such asfile server3029. In this embodiment it is assumed that IPNT calls are received at a routing point and intelligently routed to agents best suited to handle the calls, just as is accomplished for plain old telephony service (POTS) calls.
In this case an IVR is implemented to operate in Internet Protocol. Selected calls are routed to the IPNT IVR for the solicitation of permission for participation, just is the previously described case. In some instances the IVR for both POTS calls and IPNT calls could be the same IVR ([0245]3061). FromIVR3061 willing IP calls are routed to the PCs of target agents while non-willing IP callers are routed to regular agents who are not the subject of the survey. After agent contact has transpired, willing IP callers are either re-queued inIVR3061 to participate in the survey or routed to a survey agent's PC to participate in the survey.
In some embodiments, an IVR such as IVR[0246]61 may, as described above, handle IP and POTS calls at the same time, and may also accept overload calls originally destined for live survey agents. Furthermore, live survey agents may be put to work accepting overload calls originally destined for the IVR survey. The method and apparatus of the present invention may be integrated with any number of routing rules.
FIG. 12 is a workflow chart illustrating steps of a survey routine according to an embodiment of the present invention wherein incoming calls are selected on a percentage basis. In various embodiments of the invention the selection criteria may be altered. For example, in an embodiment as depicted here, wherein calls are selected by percentage, the percentage may be set by an administrator, such as 1%, 5% and so on. In other embodiments, selection criteria might be to ask clients from certain geographical regions to participate. For example, 10% of all callers from Georgia may be selected for a survey for a certain period of time, then 10% of all callers from West Virginia for another period of time. The skilled artisan will appreciate that the selection criteria may be altered very widely.[0247]
In[0248]step3100 an incoming call is selected from a queue or virtual destination point, according to established selection criteria. In addition to a percentage, as indicated above, other information may be available for a caller. For example, in many instances preprocessing of calls is done in the network in a Service Control Point (SCP), and in that process a caller may be asked to provide certain information. Additionally, elicited information or available with a call, or a DNIS number (for example) as a key, may be used to retrieve more information on a caller from such as database3043 (FIG. 11).
At step[0249]3102 a selected caller is asked to take part in a survey. Calls in the survey system are further routed based on this response. For example, if a caller indicates that he/she is not willing to do the survey, then the call is routed to a regular agent. In step3107 a regular agent that is not part of the survey agent population receives the call and disposes of it according to normal procedure. If however, the caller has indicated instep3102 that he/she is willing to take part in the survey, then the call is routed instep3103 to a target agent. A caller agreeing to take the survey is informed in step3103 (or alternatively in step3102) not to discuss the fact with a target agent, and the caller is asked to hold after the transaction with the agent. Instep3105, an available target agent receives the call.
As previously described with regards to FIG. 11, the survey routine may be wholly or partially automated. For example,[0250]step3102 may be performed via an IVR or other automated interactive means such as an interactive web page (in the case of an IPNT call), or by a live operator or agent. Automation will almost always be thecase regarding step3100 because of the volume of incoming calls that is typical in a large call center. However, in some embodiments, even step3100 may be performed by a live agent.
After a transaction with a target agent has occurred, the caller/participant will either hold as previously instructed, or may inadvertently terminate the call in[0251]step3109. If a caller holds as instructed, he/she is transferred instep3109 to either an IVR, a live agent, or an agent supervisor to partake in the survey. Instep3113, the survey is conducted and the call is then terminated. If however, the caller has inadvertently terminated the call because of memory lapse or another interruption, an automated out-dialer may place a call and attempt to reconnect with the caller instep3111. If reconnection is established, the call is transferred to an IVR or live agent as previously mentioned instep3113.
A certain number of callers who indicated a willingness to participate in the survey in[0252]step3102 may, for whatever reason, during the process, decide that they are no longer interested in taking the survey. For this reason, an automated reconfirmation may be initiated atstep3111 in the form of automated voice allowing the customer to decline the survey or choose to accept one through the mail, and so on. The out-dialer may be programmed to make an appropriate number of re-tries to the “lost” caller before reporting a failed attempt to re-connect.
It will be apparent to one with skill in the art that the method and apparatus of the present invention may be utilized both with POTS calls and IPNT calls without departing from the spirit and scope of the present invention. For example, a call center equipped with CTI enhancement, wherein agents are connected via a LAN that is also connected through a server to a WAN such as the Internet, and having the appropriate switching, IVR, file server, and software capabilities may handle both analog and IP calls. It may be, as well that a call center may be devoted entirely to IPNT calls, in which case the call center will have agent stations with PCs connected on a LAN to a managing computer, but may not have conventional telephones or telephone switching apparatus such as[0253]switch3021 of FIG. 11.
It will also be apparent to one with skill in the art that the method and apparatus of the present invention may be integrated with known routing logic being used in a given call center such as skill-based logic and the like. There are many possible applications to which the method and apparatus of the present invention may be applied without departing from the spirit and scope of the present invention.[0254]
By applying the present invention with full automation, a large number of general surveys may be conducted simultaneously, generating much valuable information. By utilizing human control, more intimate surveys may be conducted, perhaps regarding only a few individuals. Criteria for call selecting may be widely varied according to virtually any logical routing criteria that may be in place. Levels of automation may also vary widely. The spirit and scope of the present invention is limited only by the claims that follow.[0255]
Method and Apparatus for Distributing Computer Integrated Telephony (CTI) Scripts using Extensible Mark-up Language (XML) for Mixed Platform Distribution and Third Party ManipulationFIG. 13 is a block diagram illustrating a[0256]distribution network4009 comprising WAN-connected communication centers4011-4013 practicing a method of CTI application representation and distribution according to an embodiment of the present invention.Network4009 comprises a Data-Packet-Network (DPN), which is, in this embodiment, the Internet network.Network4009 may be a WAN other than the Internet as long as appropriate data-transfer-protocols are supported. Examples of applicable WANs other than the Internet would encompass both corporate and private networks. The inventor chooses the Internet network asdistribution network4009 because of its accessibility and because it already supports the data transfer protocols required for practice of the present invention.
[0257]Network4009 is exemplified by anInternet backbone4018, which represents all of the lines and connection points that make up the Internet network as a whole including connected sub-networks as may be known in the art. Therefore, there is no geographic limit or formal network boundary for practicing the present invention.
In this example, communication centers[0258]4011-4013 are illustrated as having Internet connection tobackbone4018 and therefore included within the scope ofdistribution network4009. Internet connection tobackbone4018 may be of any known means including dial-up or continuous connections using appropriate access lines and services. The term communication center replaces the term call center hereinafter in this specification because of expanded multi-media handling performed at such state-of-the-art centers. Communication centers4011-4013 may be thought of as CTI-enhanced call-in centers with additional capability of handling Internet-sourced or IP telephony calls and other electronic documents. Therefore, each center may be assumed to contain all of the equipment types described in the background section with regards to CTI-processors and servers, and other equipment types and capabilities known to exist in state-of-the-art communication centers. Such equipment types include but are not limited to Interactive Voice Response (IVR) units, automated fax systems, Customer Information Systems (CIS), IP data routers, e-mail routing systems, and so on.
In this example,[0259]center4011 is defined as a source center that distributes object-oriented CTI scripts tocenters4012 and4013, and by inference to many other centers as well. A central file/data server4021 is illustrated as connected tobackbone4018 and participating innetwork4009.Server4021 is adapted as an XML server.Server4021 contains XML representations of CTI scripts created withincenter4011 and stores them for access bycenters4012 and4013. Any of centers4011-4013 may serve as an application source-center. The inventor choosescenter4011 for exemplary purpose only. Similarly, there may be many more than three communication centers connected to and participating indistribution network4009 without departing from the spirit and scope of the present invention. However, all that is required to practice distribution innetwork4009 is two communication centers.
In one embodiment, a distributing entity may not be an actual communication center practicing the art of CTI telephony. In these alternate cases, the distributing entity may instead be a dedicated application source, testing and distribution facility.[0260]
A[0261]knowledge center4015 represents a remote testing facility having at least one manned workstation, illustrated in this example by a computer icon19.Knowledge center4015 is illustrated as connected tobackbone4018 by virtue of Internet connection as described with communication centers4011-4013.
In one embodiment of the invention,[0262]knowledge center4015 may be resident within and a functional part of one or all of communication centers4011-4013. The purpose ofcenter4015 is to analyze communication-center scripts for accuracy and functionality within the scope of a dedicated testing facility.Center4015 may have one workstation resident therein as is illustrated in this example, or it may have many resident workstations having similar capabilities. Only oneworkstation4019 is illustrated in this example and deemed sufficient for teaching of the present invention. Knowledge center15 may be assumed to be a third party as described in the background section.
[0263]Communication center4011 comprises, among other utilities, asoftware suite4017a, which is adapted for creating and implementing communication center functionality. A good example of an applicable software suite is the Nirvana™ suite mentioned in the background section and known to the inventor.Centers4012 and4013 utilize similar software suites for creating and implementing their own internal communication center functionality. These are represented assuites4017band4017crespectively. It is important to note here that the functional CTI software and hardware exhibited by centers401-403 does not have to be of the same manufacturer or provider. In fact, all three centers may use equipment types and software suites that, for general purposes, are foreign to one another in terms of interoperability. The term disparate as used earlier in this specification describes this arrangement.
It is a goal of the present invention is to facilitate interoperability between centers[0264]4011-4013 with regard to distributed or shared CTI applications. For example, each provided software suite4017a-4017ccomprises an object-oriented-programming-system (OOPS). Each instance of OOPS may follow different rules and protocol than other illustrated instances. The basic function of each illustrated instance of OOPS is to provide a method for creating object-oriented CTI scripts for controlling communication center operations.
In order for communication centers[0265]4011-4013 to share and distribute object-oriented CTI scripts with each other in current art, each illustrated instance of OOPS must be compatible with or supported by other instances in terms of rules and protocol. Similarly, objects defined by the OOPS in each system must be identical or within a supported range of objects allowed by a proprietary protocol. Moreover, a proprietary DL must be used to describe the objects for distribution purposes.
In this example, it is assumed that software and hardware configurations attributed to centers[0266]4011-4013 are not identical. For example, objects created and defined by the OOPS ofsuite4017aincenter4011 may not be identical in definition or available functionality as objects created and defined by the OOPS ofsuite4017cincenter4013 and so on. Distributing functional CTI applications created, for example, incenter4011 tocenter4013 would be extremely difficult in current art. A means of software and hardware integration would have to be provided for both systems to share and distribute CTI applications to each other. In some cases, hardware and operating systems may have to be modified to insure compatibility.
In order to achieve integration and compatibility between centers[0267]4011-4013 without requiring substantial software and/or hardware modification, the inventor provides a unique connector (CONN.) described as an SEE extension that is adapted to read and write in XML. XML is a standard mark-up language developed by the World Wide Web Consortium (W3C). Much information regarding the XML standard is published and available to the skilled artisan.
One CONN. is illustrated in each[0268]suite4017a,4017b, and4017c. A CONN. is further defined in this specification as interfacing extension or hardware-enabled driver that interfaces with a SEE generic to the OOPS utilized in each center. For example, incenter4011,suite4017ahas an OOPS that defines and stores created objects during the process of creating new object-oriented CTI scripts. The CONN. insuite4017aallows the parameters of these objects to be described in XML, which is a standard and platform-independent language known in the art and available to the inventor. CONN. instances insuite4017band insuite4017cfunction likewise to interface with respective OOPS SEEs.
As per the above description, it can be seen now that each communication center[0269]4011-4013 has the ability to convert object-oriented scripts into XML and upload the XML scripts ontonetwork4009 throughbackbone4018, which is the Internet in this example. This process is entirely automated. As is known in the art, a document-type-definition (DTD) accompanies an XML file in transit over a DPN. A DTD describes how data is to be organized and presented or used on a receiving system. In this example, there is a controlling or source/distribution center described earlier in this specification ascenter4011.
In order for[0270]center4011 to provide object-oriented scripts to function incenters4012 or4013, it only has to have knowledge of the objects specific to each receiving center as defined by existing instances of OOPS at each center. Therefore, as an application creator and distributor,center4011 creates a DTD that contains all of its objects, all of the objects ofcenter4012, and all of the objects ofcenter4013. In this way, a universal DTD exists that provides instruction for application generation at the receiving end that is suitable with the platform used at the receiving end. It is noted herein that a distributing center may create an application and distribute it directly to a target center connected tonetwork4009. However, in this example, it is preferred thatserver4021 manages distribution of the XML scripts tocenters4012 and4013, and to other connected centers not shown.
In practice of the present invention, assume that[0271]center4011 hostscenter4012 andcenter4013. In this case,center4011 will provide CTI scripts for application atcenters4012 and4013. It is assumed in this case that all three centers have differing OOPS protocols, and defined objects as described above.Center4011 first creates a DTD containing its own objects as well as the objects available in the OOPS ofcenter4012 andcenter403.Center4011 can now create an object-oriented CTI application using its own OOPS and convert it to XML by virtue of its CONN. using the universal DTD containing the objects ofcenters4012 and4013 as a subset. The XML script created is a text or “flat file” that does not contain memory objects and is therefore platform independent. The XML script is uploaded intoserver4021 from whence it can be accessed bycenters4012 and4013, and bystation4015.
[0272]Suites4017band4017aread the XML script by virtue of CONN. instances and generate the CTI application using the accompanying DTD, which contains their system-specific objects. As a result,center4012 andcenter4013 may generate the CTI application from XML script, each using their own OOPS for implementation in their respective environments.
[0273]System center4015 may be utilized for analyzing and testing CTI scripts fromserver4021 before they are made available to designated centers, or at other times as well. In this regard,center4015 would have an OOPS simulation and modeling system, a SEE and a CONN. (components not shown). As previously described,center4015 may be incorporated as an internal-applications testing facility inside one or all of centers4011-4013. In this embodiment,center4015 functions from a remote location and may intercept and perform third party analysis of scripts destined to any receiving center.
One with skill in the art of Petri-Net theory and application, and XML representation of objects will appreciate that virtually any type of object-oriented CTI script may be expressed as a form of XML for transportation over a DPN. XML versions of distributed scripts may be interpreted according to appropriate DTD parameters. At receiving centers, the CTI applications may be generated from XML description to produce object-oriented applications that are ready for installation using OOPS generic to the receiving center. Also, the method and apparatus of the present invention may be practiced with virtually any existing OOPS system and is not limited to Nirvana™ script.[0274]
FIG. 14 is a flow diagram illustrating steps for generation and distribution of object-oriented scripts according to an embodiment of the present invention. In[0275]step4023, an object-oriented CTI application is generated at a source facility using a generic OOPS. A DTD is then created that contains all of the object parameters specific to the application and defined by the OOPS instep4025. Also included in the DTD ofstep4025 are the appropriate object parameters of equivalent objects defined by OOPS within receiving facilities that will receive and generate the created CTI application.
It is important to note here that an object-oriented CTI application may comprise only one script, or a plurality of separate scripts designed to perform as one routine. Therefore, a DTD may contain only those object parameters required to execute a routine. In another embodiment, a universal DTD may be created that contains all of the object parameters of the creating facility as well as all of the object parameters of the receiving facility or facilities. In this way one universal DTD may be used for separate CTI applications.[0276]
In[0277]step4027, the created CTI application is written as an XML “flat file” at the creating facility by virtue of a CONN. described in FIG. 13. The XML contains all of the description required for successful implementation at a receiving facility with the DTD providing appropriate object parameters.
In[0278]step4029 the XML file representing the created CTI application is uploaded to a WAN-connected server, which is analogous toXML server4021 of FIG. 13, and made available to a target facility or facilities. The term facility as used in this example is analogous to communication center as used in FIG. 13. However, a source facility may or may not be an actual communication center.
In[0279]step4031, the XML file representing the created CTI application is downloaded from the WAN-connected server by a target facility. In one embodiment, XML files representing created CTI applications may be distributed directly to target facilities. However, because one application may be used in a plurality of disparate facilities, it is preferred that such facilities “pull” their files from a central location on the network.
At[0280]step4033, the XML file representing the created application is read by virtue of a CONN. in a target facility and an object-oriented CTI application is generated and installed by an existing OOPS using the XML instruction and associated DTD guidelines for appropriate objects.
It will be apparent to one with skill in the art that the process flow represented herein comprises basic steps and should be considered exemplary only of a basic order of steps involved in application creation, XML expression, XML interpretation, and generation of the application at the receiving end based on XML instruction. In one embodiment, additional steps may be inserted to allow for third party testing of a generated CTI application before implementation within a target facility.[0281]
In still another embodiment, it is possible that a CTI application may be created that includes DNT functionality such that there is a CTI implementation and a DNT implementation for the routine or string of routines characterized by the application. If a receiving facility is a CTI-only center then it may ignore the DNT version of the application. If the receiving center is a DNT only center, then it may ignore the CTI version of the application. If the receiving facility is a dual capable facility, then it may incorporate both versions of the application.[0282]
The method and apparatus of the present invention allows one object-oriented CTI application to be sent to and utilized by a plurality of disparate communication centers without requiring special hardware, software, or a proprietary DL. All that is required of each participating facility is that their OOPS objects be defined and included in a DTD at the source, and that they are capable of receiving and interpreting XML and using the information in their OOPS for generating object-oriented application.[0283]
It will also be apparent to one with skill in the art that an application creating facility may be created that provides CTI solutions to clients defined as the receiving facilities connected to network[0284]9. In this case, the source facility would design solutions, test them for operability and integrity, and distribute them to clients as needed. There are many possibilities. Therefore, the spirit and scope of the present invention should be afforded the broadest scope under examination. The spirit and scope of the present invention is limited only by the claims.
The spirit and Scope of the InventionIt will be apparent to those with skill in the art that there are many alterations that may be made in the embodiments of the invention herein described without departing from the spirit and scope of the invention. Many individual hardware elements in the invention as described in embodiments above are well-known processors and data links. The connectivity, however, of many of these elements is unique to embodiments of the present invention. Moreover, many of the functional units of the system in embodiments of the invention may be implemented as code routines in more-or-less conventional computerized telephony equipment and computer servers. It is well-known that programmers are highly individualistic, and may implement similar functionality by considerably different routines, so there will be a broad variety of ways in code that unique elements of the invention may be implemented. Also, the invention may be applied to widely varying hardware and software systems, and to both conventional telephony calls, or to Internet protocol calls, or to calls made by data mechanisms in any data environment, be it Internet, Intranet, or other. Further, the links between processors running T-Servers at the call center level and processors running T-Servers at the network level may be done in a variety of ways as well to the associated equipment may be done in a number of ways, and there is a broad variety of equipment that might be adapted to provide the[0285]servers223 and224, and other such servers associated with call centers. There are similarly many other alterations inn the embodiments described herein which will fall within the spirit and scope of the present invention in it's several aspects described. The invention is limited only by the breadth of the claims below.