Abstract:
Disclosed is a method for distributing customer contacts to a transaction processing entity of a transaction processing system. The method includes determining a media type for a customer contact in the transaction processing system and finding a transaction processing entity that is capable of handling the media type. In addition, the method includes routing the customer contact to a transaction processing entity that is capable of handling the media type. In one embodiment, a transaction routing table is used to perform the distribution of customer contacts. It is emphasized that this abstract is provided to comply with the rules requiring an abstract that will allow a searcher or other reader to quickly ascertain the subject matter of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. 37 CFR 1.72(b).

Description:
BACKGROUND OF THE INVENTION 
     This invention relates generally to communication systems, more particularly, to transaction processing systems. 
     Communications systems with customer contact centers are known. Such systems are typically used as a means of distributing customer contacts, such as telephone calls, among a group of agents of an organization. As customer contacts are directed to the organization from a communications network, such as a public switch telephone network (PSTN), the communications system directs the customer contacts to its agents based upon some algorithm. For example, a communications system such as an automatic call distributor (ACD), a private branch exchange (PBX), or a central office exchange service (Centrex) may recognize a call target based upon an identity of an incoming trunk line and route the call accordingly. 
     Businesses, service organizations, and other entities may use customer contact centers to handle the daily influx of telephone calls, email messages and voice mail contacts for marketing, sales, product support, and other customer service functions. Agents of the communications system may provide product support, take sales orders, and handle inquiries. In essence, the agents provide the wide array of services that the companies that use them require. Thus, the effectiveness and efficiency of a communications system may depend on the performance of the agents. 
     However, the present format is limited. Currently, an unlimited number of customer contacts may be delivered to any one agent. For example, an agent may be handling a telephone call and simultaneously “chatting” with an Internet customer. In such a situation, the agent may not be able to handle another customer contact, however, another customer contact may be sent to the agent. Sending too many customer contacts to any one agent may degrade the quality and effectiveness of the communications system. Accordingly, a need exists for a system and method for routing transaction types. 
     SUMMARY 
     Under one embodiment of the invention, disclosed is a method for distributing customer contacts to a transaction processing entity of a transaction processing system. The method includes determining a media type for a customer contact in the transaction processing system and finding a transaction processing entity that is capable of handling the media type. In addition, the method includes routing the customer contact to a transaction processing entity that is capable of handling the media type. In yet another embodiment, a transaction routing table is used to perform the distribution of customer contacts. 
     Other embodiments, features, and advantages of the invention will be apparent to one with skill in the art upon examination of the following figures and detailed description. It is intended that all such additional embodiments, features, and advantages be included within this description, be within the scope of the invention, and be protected by the accompanying claims. 
    
    
     
       BRIEF DESCRIPTION OF THE FIGURES 
       The components in the figures are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the invention. In the figures, like reference numerals designate corresponding parts throughout the different views. 
         FIG. 1  illustrates a block diagram of a transaction processing system in accordance with an embodiment of the invention. 
         FIG. 2  illustrates a table that may be used by the system of  FIG. 1 . 
     
    
    
     DETAILED DESCRIPTION 
       FIG. 1  depicts a block diagram of an exemplary embodiment of a transaction processing system  10  which may be used to route customer contacts across multiple access channels to a customer contact center  12 . The customer contact center  12  may be defined as a communication technology that enables customers and agents of an enterprise to communicate across multiple access channels, including but not limited to telephone, Internet, radio, cellular, satellite, cable, facsimile, email, web and video. As shown in  FIG. 1 , the customer contact center  12  may be described with reference to an automatic call distributor (ACD)  18 . As is known in the art, a PBX, Centrex system or other system capable of incoming and/or outgoing communications may also be used in place of the ACD  18 . Implementing a customer contact center  12  with any suitable switching system is considered to be equivalent and variations will not be further discussed. In addition, the customer contact center  12  is also often identified by other terms including call center, connected call center, customer care center, customer communications center and services center. 
     As used herein, a customer contact may be based on any suitable communications connection including, but not limited to, a switched circuit connection (i.e., through the PSTN) or a packet connection (e.g., through the Internet). A switched circuit connection (also sometimes referred to simply as a “telephone connection” in the telephony arts) refers to a dedicated channel existing between two parties. As used herein, a packet connection does not necessarily represent a physical connection, but may simply be the possession and concurrent use by two users of the other user&#39;s identifier (e.g. IP address). 
     In the illustrated embodiment, customer contacts may be received from customers  46 ,  48 ,  50 ,  52 ,  54 ,  56  and may be routed to a selected transaction processing entity (e.g., agent stations  20 ,  22  or interactive voice response units (WRs)  72 ,  74 ) of the transaction processing system  10 . For example, each agent station  20 ,  22  may include a telephone console  24 ,  28  and a terminal  26 ,  30 . Switched circuit customer contacts with customers  48 ,  50 ,  52 ,  54 ,  56  placed through the ACD  18 , may be routed by matrix switch  36  of the ACD  18  to a console  24 ,  28  of the agent station  20 ,  22  or to an appropriate IVR  72 ,  74 . Customer contacts through the Internet  44  may occur as any Internet communications including email, chat sessions, file transfers, and teleconferences. Further, the customer contacts may process voice over IP (VOIP). In any case, a host  34  may route the customer contact to a terminal  26 ,  30  of an agent station  20 ,  22  or to an appropriate IVR  72 ,  74 . As shown in the art, the host  34  and ACD  18  functionality may also be controlled by the same processor. 
     The customer may, for example, use a conventional telephone or cell phone and/or a computer to place/receive a contact with the transaction processing system  10 . Alternatively, the customer  52  may place/receive a contact using an interactive channel of a community antenna television (CATV) system  60 , land mobile radio  56  or a transmission channel of a satellite  68 . Where the customer  52 ,  54 ,  56  places a customer contact using an interactive channel of a community antenna television (CATV) system  60 , a land mobile radio  56  or a transmission channel of a satellite  68 , often such a customer contact is initiated by the entry of a target identifier (e.g., a telephone number of the ACD  18 ). 
     Regardless of how a customer contact is processed by the transaction processing system  10 , each customer contact is characterized by a media type. As used herein, media type refers to information that describes the customer contact (e.g. the source or access channel of the customer contact). In an illustrative example, media types include video, email, voice, voicemail, webcast and chat. The media type may also include proprietary versions of the aforementioned media types, such as NetMeeting (by Microsoft, Inc.), ICQ and IRC. In addition, media type may include facsimile. Accordingly, the term “media type” is used in this description and in the appended claims to encompass all variations of media type. Further, the various embodiments and implements thereof to form communication between a customer  46 ,  48 ,  50 ,  52 ,  54 ,  56  and an agent station  20 ,  22  of a customer contact center  12  are known in the communications art and will not be further described herein. 
     For simplicity, reference to an agent herein shall be to the agent station  20 ,  22  without regard to the device  24 ,  26 ,  28 ,  30  actually used by the agent. Further, the agent station  20 ,  22  may be equipped with necessary hardware and software to interface with the delivered customer contact. Similarly, reference to a customer herein shall be to a station  46 ,  48 ,  50 ,  52 ,  54 ,  56  of the customer without regard to the device actually used. 
     While the transaction processing system  10  has been described with reference to customer contacts initiated by the customer  46 ,  48 ,  50 ,  52 ,  54 ,  56 , it should be understood that customer contacts may just as well be initiated by the transaction processing system  10 . For example, customer lists may be maintained in a database of the host  34 . The CPU  40  of the system  10  may initiate outgoing customer contacts to the customers  46 ,  48 ,  50 ,  52 ,  54 ,  56 . The customer contacts may be placed through the PSTN  16 , radio frequency (RF) transceiver  62  or by the host  34  through the Internet  44 . In one embodiment, associated with each customer  46 ,  48 ,  50 ,  52 ,  54 ,  56  may be an identifier and routing information. The identifier may be an identifier used for identifying the customer  46 ,  48 ,  50 ,  52 ,  54 ,  56  within a particular communication system (e.g., a telephone number within the PSTN  16 , an IP address within the Internet  44 , a customer account number within the CATV system  60 , an electronic serial number (ESN) within the land mobile radio  56  or satellite system  56 , etc.). 
     In addition, the routing information may be used to identify the particular system (e.g. PSTN  16 , Internet  44 , CATV  60 , land mobile radio  56 , satellite  68 , etc.) within which the identifier is to be used. In the case of the transaction processing system  10 , the routing information may be in one embodiment simply identify the port through which the customer contact is to be processed. For example, a port for an Internet customer contact may be an Internet connection with the host  34 . A telephone customer contact may be processed through a first set of trunk connections  42  using a respective port of a switch  36  of the ACD  18 . A customer contact with a cable subscriber  52 , land mobile user  56  or satellite customer  54  may be processed through a second set of trunk connections  70  using a respective port of the switch  36  of the ACD  18 . The identifier and routing information may, together, be referred to herein as customer contact associated information. By using the customer contact associated information, the system  10  may initiate outgoing customer contacts to the customers  46 ,  48 ,  50 ,  52 ,  54 ,  56 . The bi-directional nature of transaction processing of customer contacts in some embodiments may be reflected by using the phrase “customer contacts with customers  46 ,  48 ,  50 ,  52 ,  54 ,  56 ”. 
     Whether a customer contact is incoming or outgoing, the distribution of the customer contact to transaction processing entities  20 ,  22 ,  72 ,  74  may be substantially the same. When the customer contact is outgoing, the transaction processing system  10  inherently knows the media type of the customer contact and the identity of the customer target. When the customer contact is incoming, the transaction processing system  10  may determine the media type and the identity of the customer contact based upon the customer contact associated information (e.g., a port number and ANI or IP address information in the case of the PSTN or Internet). By knowing the incoming media type, the transaction processing system  10  may route the customer contact based upon an understanding of capabilities of the transaction processing entities  20 ,  22 ,  72 ,  74  or some other well-known criteria. 
     Customer contacts with customers  46 ,  48 ,  50 ,  52 ,  54 ,  56  may be routed to transaction processing entities (e.g. agent stations  20 ,  22 ) based upon one of two formats. Under a first format, a customer contact may be detected by the ACD  18  as a switched circuit format formed through the PSTN  16 . Customer contacts received under the first format are typically delivered along with customer contact associated information (e.g., DNIS, ANI, ESN, switch port number, etc.). Customer contact associated information may be used by a CPU  40  as a means of routing the customer contact. Customer contacts under this first type may be routed based upon any of a number of predetermined criteria (e.g., the number called, the identity of the caller, the locale of the caller, the time of day, etc.). 
     Customer contacts with customers  46  under the second format occur through the Internet. As with switched circuit customer contacts, the host  34  may inherently know the identity of outgoing customer contacts. Since the host  34  would know the identity of outgoing customer contacts, the host  34  can easily route the customer contact based upon customer records. Incoming customer contacts through the Internet may also be routed by the host  34  based upon customer contact associated information (i.e., the IP address of the customer  46 ). If the customer  46  is an existing customer, the host  34  can identify the customer in its database using the IP address of the customer contact as a search term. As above, historical records of the customer may be used as a basis for routing the customer contact. If the customer contact  46  is not an existing customer, then the host  34  may route the customer contact  46  based upon the context (e.g., an identity of a website visited, a webpage from which a query originates, an identity of the e-mail address within the system  10  which receives a query, etc.). 
     Because Internet customer contacts and PSTN customer contacts may be distributed to a common set of transaction processing entities  20 ,  22 ,  72 ,  74 , the CPU  40  and host  34  may coordinate their efforts in distributing customer contacts. When an Internet customer contact is received, the host  34  may consult an internal table of transactions and agents or retrieve a table from the CPU  40  of the ACD  18 . From that table, the host  34  may select the most qualified agent for assignment of the customer contact. Upon selection of the agent, the host  34  routes the customer contact to the selected agent station  20 ,  22 . When the host  34  assigns a customer contact, the host  34  sends notification to the CPU  40  of the ACD  18 . Notification of a customer contact assignment by the host  34  causes the CPU  40  to update its table of transactions and agents. Similarly, when the CPU  40  assigns a customer contact, the CPU  40  may send notification to the host  34 . Using this method, the CPU  40  and host  34  may each maintain a table of transactions and agents. 
     Customer contact delivery to a transaction processing entity  20 ,  22 ,  72 ,  74  may be accomplished under several formats. For example, where the customer contact is of a switched circuit format, the CPU  40  selects a transaction processing entity  20 ,  22 ,  72 ,  74  and delivers the customer contact to the console  24 ,  26  of the selected agent  20 ,  22  or to the selected IVR  72 ,  74 . The CPU  40  may send a customer contact delivery message including the customer contact associated information to the host  34 . Where the host  34  is able to identify customer records, the host  34  may present those records to the selected customer contact processing entity  20 ,  22  at the instant of delivery (e.g., as a screen pop on a terminal  26 ,  30  of the selected agent). 
     Where a customer contact is through the Internet, presentation may in one embodiment be entirely through the terminal  26 ,  30  of the selected agent. Email messages may be forwarded in their entirety to the selected agent. Where the customer contact is in the form of a web telephony session, the host  34  may, for example, forward the IP address of the requestor to the selected agent. Where the host  34  is able to identify customer records, those records may be presented to the agent along with the email, web telephony request or Internet query. 
     In one embodiment, a threshold value may be used in conjunction with any media type as a basis for routing customer contacts. Selection of an agent for a customer contact may be made based upon an understanding of other customer contacts that are assigned to each agent. Each agent may have a maximum number of customer contacts that he or she may handle. For example, agent stations  20 ,  22  may not be able to handle more than 100 emails in a timely fashion and therefore the transaction processing system may not assign more than 100 emails to either of the agent stations  20 ,  22 . Further, certain media types require the agents fall attention and therefore, the agent may not be able to service other customer contacts. For example, if agent station  20  is servicing a voice customer contact then the agent station  20  may not also be involved with an Internet webcast. In an illustrative embodiment, the transaction processing system  10  categorizes media types as exclusive and nonexclusive. As used herein, exclusive may mean that the agents full attention is required and the agent may not receive new customer contacts while servicing the current media type. For example, exclusive media types include voice, video and webcast. As used herein, all other media types are defined as nonexclusive. In an alternative embodiment, the transaction processing system  10  may specify a range of priorities for each media type (e.g., high, medium and low priority). For example, customer contacts with high priority are processed before those with a lower priority. 
     In an illustrative embodiment, the transaction processing center  10  checks a transaction routing table to determine whether a customer contact may be routed to a selected agent. In general, a supervisor working through a supervisors terminal  32  may evaluate a skill of each agent  20 ,  22 . The skill evaluated by the supervisor may be against a number of different criteria. More specifically, the supervisor may enter a skill for each agent  20 ,  22  with regard to each media type. For example, the agent  20  may be able to handle up to 100 emails while the agent  22  may only be able to handle up to 50 emails. The supervisor may evaluate the skill of each agent based upon the length of time that the agent has been working in the call center  12  or the agent&#39;s knowledge. Further, agents may become available to accept calls in any of a number of ways. 
     In some embodiments, a supervisor may utilize a force management package to determine an overall number of agents required by the ACD  18 . Once a number is determined, the supervisor may specify the specific agents needed for customer contacts based upon his own personal knowledge or upon a skill mix provided by the force management package. Using the workforce management package, the supervisor may come to an understanding of agent skills and be able to create a transaction routing table listing the maximum number of customer contacts that each agent may service. For example, shown in  FIG. 2  is an example transaction routing table where the denominator in each cell describes a threshold for the maximum number of customer contacts that each agent may service for each media type and the numerator in each cell describes a metric for the number of assigned customer contacts. For example, as shown in  FIG. 2 , Jane&#39;s threshold for email customer contacts is 100 emails and she is currently assigned to 100 emails (line # 2 ). Further, Sue (line # 4 ) may only service 50 emails since the supervisor may have ascertained that Sue&#39;s skill level requires a threshold of 50 emails. 
     Calls may be routed to an agent by determining whether the agent is capable of handling the media type of the customer contact. One factor for determining whether the agent is capable of handling the media type is to determine whether the media type is exclusive. For example, Tony in line # 1  is handling a voice customer contact and a voice media type is exclusive; thus, Tony should not be assigned another exclusive customer contact (e.g., voice, video or webcast). Note that the denominator for those media types have the number “1” that denotes that the media type is exclusive. As long as Tony is servicing the voice customer contact, the transaction processing system may not require Tony to handle another voice, video, or webcast customer contact. 
     In an illustrative embodiment, the transaction processing system  10  determines whether an agent is capable of handling a customer contact by referring to a transaction routing table. For instance, before an exclusive customer contact is routed to an agent, the transaction processing system determines whether the selected agent is already handling another exclusive customer contact. If the agent is already assigned to an exclusive customer contact, then the transaction processing system selects another entry in the routing table to find an agent capable of handling the exclusive customer contact. In yet another instance, before an agent is routed a webcast, the transaction processing system may determine whether the agent&#39;s terminal is capable of handling the webcast customer contact by referring to the threshold for webcast customer contacts. For example, Mary is not able to handle Internet-based customer contacts as the threshold for chat and webcast customer contacts is set to zero (line # 6 ). In yet another instance, before an agent is routed an email, the transaction processing system may determine whether the agent&#39;s threshold for email has been met. In like fashion, the transaction processing system  10  refers to a transaction routing table before routing customer contacts to transaction processing entities in the system  10 . 
     While various embodiments of the invention have been described, it will be apparent to those of ordinary skill in the art that many more embodiments and implementations are possible that are within the scope of this invention.