Alternate destination call redirection for telecommunications systems
This application is a continuation of application Ser. No. 500,649, filed on Mar. 28, 1990 now abandoned. 
    
    
     TECHNICAL FIELD 
     This invention relates to arrangements for redirecting telecommunications calls when a primary destination is unavailable or inaccessible. 
     PROBLEM 
     A large total volume of telecommunications traffic is directed to large business customers who have geographically diverse facilities for handling the same general type of call. For example, an airline may have private branch exchanges (PBXs) for accepting reservations in a number of cities. In such situations, it is economically important for the business customer to be able to use these facilities efficiently by ensuring that customers may reach alternate facilities even if a particular preferred PBX facility is unavailable through being busy or because of congestion in the telecommunications network between the caller and the preferred facility. The term PBX as used herein includes automatic call distributor (ACD) arrangements controlled at the customer&#39;s premises or at a local switch connected thereto, and includes central office controlled arrangements such as Centrex. The PBX may be accessed directly from a toll switch or may be accessed via a local switch. 
     In one presently available arrangement, a database is accessed in order to decide which PBX facility of a particular business customer is to receive a particular call. This database allocates calls on a percentage basis to the different automatic call distributors. A disadvantage of this arrangement is that the different facilities may experience different holding times for their calls at any particular time so that even if a fair allocation of the traffic is made, some of these facilities may be temporarily overloaded and others temporarily underloaded. 
     In another arrangement, the database maintains a record of the number of active calls which have been directed to each of the automatic call distributors. If the primary choice PBX for any particular call is overloaded, then the call is routed to an alternate PBX. In this arrangement, the database maintains a record of the amount of traffic routed to each PBX in order to detect overloads. Customers can be automatically routed to other teams of agents if no agents are available at the preferred PBX but if the other teams are also busy, the call is queued at the preferred PBX. 
     In another arrangement, if a particular PBX is overloaded it will still accept the call but reroute it via dedicated private facilities to an alternate PBX. 
     All of these schemes have a number of limitations. A problem with any arrangement wherein a database maintains a record of calls to the various ACDs is that congestion in the toll network or failure in the toll network cannot be readily detected so and calls continue to be routed to a PBX even through these calls are likely to be blocked as a result of the network congestion. Further, the database maintains a fixed maximum number of calls that can be accepted by each PBX, although this number is changeable by a traffic administration; if the PBX is connected to the toll network by facilities shared with other kinds of traffic, for example, outgoing traffic, this number, in fact, changes dynamically. The arrangement wherein calls are redirected over private facilities to an alternate PBX is costly since all or part of these private facilities are usually provided only for this purpose; furthermore, the total number of call completions is limited by the access facilities of the primary PBX. 
     Accordingly, a problem of the prior art is that there is no economically satisfactory solution to the problem of distributing traffic among a plurality of PBX facilities of a multilocation or multi-entity customer which is both capable of routing traffic to any PBX having an available server or a sufficiently small queue for such a server, and capable of responding immediately to network congestion or failure conditions, or customer premises disruptions, or traffic surges which exceed the capabilities of a shared access arrangement to serve offered traffic. 
     SOLUTION 
     In accordance with the principles of this invention, an advance is made over the prior art in a method and apparatus arrangement wherein calls are initially directed to a preferred choice destination and, if the call cannot be completed satisfactorily to that destination for any reason, the call is redirected to a prespecified alternate destination. Among the reasons why the call may not be completed are: congestion in the toll network required to access the preferred choice or other destinations; unavailability of access facilities between the toll network and the destination; and failure of the toll egress switch for accessing the destination. For the special case of customers having PBX facilities capable of sending message signals to the toll network, these reasons are further expanded to include a busy message from the destination or a message from the PBX requesting redirection because of internal overload or any other reason. Advantageously, such an arrangement permits the toll network to allocate traffic dynamically in response to all of the above-named conditions. 
     The destination may be a PBX, a central office controlled ACD, a multi-line hunting group or a single line. 
     In one specific implementation, this kind of messaging capability is provided through the facilities of an Integrated Services Digital Network (ISDN) capability between the switch serving the PBX and the PBX. 
     In accordance with one feature of this invention in one specific embodiment of the invention, one or more databases shared by a toll network provides an identification of the preferred choice PBX. This identification is normally in the form of a switch identification, trunk group identification, and a specific identification of the customer premises equipment. In accordance with one specific implementation, this number is transmitted to an ingress toll switch in the form of a non-existent switch number that is used for accessing a translation table which provides both the identification of the real switch and the trunk number for accessing the preferred destination PBX. Advantageously, a non-existent switch number is a convenient signal that the features of this invention are being invoked for this call. 
     In accordance with one aspect of the invention, a customer PBX responds to an incoming call request by either accepting the call request or rejecting it with a call reject message. This call reject message or a corresponding message triggered thereby is subsequently transported back to the ingress toll switch and used as an indication to redirect the call. Advantageously, the intelligence of the customer premises equipment can be used to make an immediate decision based on current traffic at that PBX and current availability of agents at that PBX to determine whether to accept the call or to cause the call to be rerouted to another PBX. In accordance with one aspect of this feature, the PBX may send a call redirection message redirecting the call to a voice message operations center for storing a voice message from the caller. This feature can also be used in the following way. Calls to different telephone numbers may for the purposes of administration be routed in the same way to the same groups of PBXs. However, these calls may represent different priority types of business, for example, they may represent complaints or new orders. Clearly, new order traffic is more important to the business customer than complaint traffic; the PBX may therefore set a different threshold for rejecting complaint calls than for rejecting new order calls. This can be done by sending out a redirect message for a high priority call and a reject message for a low priority call. 
     The call redirection discussed herein is for redirecting calls at or prior to the time that the PBX receives an incoming call message. In response to the incoming call message, the PBX accepts the call either by placing it in a queue or by immediately connecting it to an agent or rejects the call with or without a request that the call be redirected to an alternate PBX. 
     In another application of this feature, the alternate destination and the first choice destination are the same. However, the alternate destination is accessed using a different path through the toll network and preferably using a different egress toll switch. The two paths and toll egress switches are selected as a result of different translations at the database and toll ingress switch. Advantageously, with such an arrangement, calls can be completed to a particular PBX even if the primary egress switch for serving that PBX is out of service. 
    
    
     BRIEF DESCRIPTION OF THE DRAWING 
     FIG. 1 is a block diagram illustrating how calls are directed and redirected in accordance with the principles of this invention; and 
     FIGS. 2 and 3 are flow diagrams of a method for performing redirection of calls. 
    
    
     DETAILED DESCRIPTION 
     FIG. 1 is a block diagram of an example network illustrating how calls may be redirected in accordance with the principles of this invention. A caller station 10 originates a call which can be served from PBX 30 or PBX 39, both associated with the same business. PBX 30 and PBX 39 might be, for example, two PBXs for serving reservation requests for one airline. PBX 30 and PBX 39 are in different cities and are served by different switches of a toll network 20. The caller station accesses toll network 20 via local exchange network 12 which is connected to switch 1 of toll network 20. For the purposes of this call, switch 1 is an ingress switch to the toll network and switches 2 and 3 connected respectively to PBXs 30 and 39 are egress switches of the network. While only three switches of the network are shown, a typical real toll network may contain many more switches and the connections between ingress switch 1 and egress switch 2 or egress switch 3 may be via one or more intermediate toll switches. In addition, toll network 20 includes a database 4 which is used for obtaining data about certain classes of dialed destinations. 
     In this specific example, the telephone number dialed to be connected to an agent of the airline is an 800 number using the initial digits 800 instead of a conventional numbering plan area (NPA) code. Calls to 800 numbers are not restricted to the area served by any one NPA. The principles of routing 800 calls under the control of a database are disclosed in R. P. Weber, U.S. Pat. No. 4,191,860. All the toll switches are operative under the control of processor means controlled by a program. Processor 40, including memory 41 which stores among other items a program 42, is the processor means for controlling ingress switch 1. Egress switches 2 and 3 have similar processors. When ingress switch 1 receives a call destined for the airline served by PBX 30 or PBX 39, it first accesses database 4 to obtain the data necessary to route the call to its destination. Ingress switch 1 accesses database 4 via data link 5 with the 800 number dialed from caller station 10. Database 4 responds over data link 5 with a ten-digit number comprising a switch identification (SSS), a trunk group identification within the switch (TTT) and a further specific identification of the destination (XXX). In accordance with the specific embodiment of the invention, for a customer who wishes that calls which cannot be completed to a preferred one of that customer&#39;s PBXs be redirected to a second of that customer&#39;s PBXs, this information from the database contains a number of a non-existent switch instead of the conventional SSS switch number. In this case SSS-TTT=208-000. When ingress switch 1 detects that the data returned by the database includes the number of a non-existent switch, processor 40 of ingress switch 1 access table 46 using the returned non-existent switch number and the returned TTT number to obtain the real number of the switch which is connected to the preferred choice PBX, in this case, PBX 30. The translation therefore is from the non-existent switch number to the number 002 which identifies egress switch 2 connected to the preferred PBX 30. Ingress switch 1 sends an initial address message 50 comprising the non-existent switch number as well as the TTT and XXXX number 51 obtained from the database 4 and routes the call toward egress switch 2, the switch identified in the translation of table 46. The call is routed to egress switch 2 which translates the incoming address message in its own version of table 46 and discovers that the identification of the switch for SSS-TTT equals 208-000 is its own switch number. Switch 2 obtains in its own translation table the number of the trunk group 178 to be used for accessing the desired destination, in this case PBX 30. 
     If the call has not been successfully extended to egress switch 2, a release message for the call is sent from the point at which the extension was not successful. If egress switch 2 detects an all circuits busy connection for circuits to PBX 30, egress switch 2 will send a release message. If PBX 30 is a program controlled system comprising a processor 31 and message generating capabilities, and wishes to reject the call, it will send a call rejection message 58 comprising a reason for rejection segment 59 back to egress switch 2. In response to receiving such a rejection message, egress switch 2 will send back to ingress switch 1 a release message 60 comprising a reason for release indicator 62. If release messages have been generated for any of the reasons discussed above and transmitted to ingress switch 1, whatever portion of the connection from ingress switch 1 toward PBX 30 has been established, is released and ingress switch 1 consults table 44 to determine an alternate non-existent switch code corresponding to switch code 208. In this case the alternate non-existent switch code is 209. The entry in table 46 of processor 40 of ingress switch 1 corresponding to 209-000 (000 is the TTT number originally provided by database 4) is 3. Therefore, a second initial address message 65 containing the number 209-000 (segment 66) is transmitted to egress switch 3, switch 3 having been the switch identified in the above-noted access of table 46. Switch 3 translates 209-000 to 3-195, thus discovering that the call is destined for itself, trunk group 195. Thereafter, if PBX 39 is able to accept the call, the call is extended from ingress switch 1 via egress switch 3 to PBX 39. 
     The specific reason for the release may be used to modify the redirection. For example, if the redirection is to the same destination via another egress switch, no redirection is performed if the reason is that the called subscriber is busy. 
     In this specific embodiment, table 44 is used to advance from one non-existent switch number to the next. Alternatively, a programmed algorithm for performing this advance (such as incrementing by 1 but limited to some specified parameter, such as 212 to be comparable to the table 44 prescription) could also be used. If, in a particular situation, the number of alternate PBX destinations is finite then the attempt to advance beyond the last alternate PBX is signaled by having a translation in table 46 which indicates a non-existent switch number as a signal that there are no more PBXs to which calls can be redirected. Further, while in this example the egress switch is directly connected to the PBX, it can be connected to the PBX via a local exchange network provided that the local exchange network has a satisfactory method of signaling to the egress switch that the call cannot be satisfactorily completed to the selected destination. Note that the destination need not be a PBX, but could be a single line customer, or any other destination. 
     There are, of course, many other alternative data layouts which can be used to accomplish the fundamental objectives of allowing for the recognition of a call which may be redirected from one destination to another; allowing for the termination of attempts to redirect the call; providing an indication to a selected egress switch that the call is to be connected to a destination connected to that egress switch, and identifying the proper trunk group for accessing the PBX. For example, table 46 can be arranged to supply the primary and alternate switch numbers and to use the table 44 to advance from one non-existent switch number to the next or to provide the primary switch number and an alternate non-existent switch number and TTT number which latter could then be used for accessing table 46 to find the next alternative switch and next alternative non-existent switch number and TTT number. Further, a separate table could be used for identifying TTT numbers associated with a switch acting as an egress switch. 
     FIG. 2 is a flow diagram of actions performed to implement automatic redirection in accordance with the principles of this invention. The flow diagram illustrates a specific example of a call but it will be apparent from the example what actions are performed by the program in a general case. 
     Suppose that the caller dials an 800 number, in this case 1-800-234-5678 (action block 202) The caller is connected via local exchange network 12 to switch 1. Switch 1 requests routing from database 4 for the called number 1-800-234-5678 (action block 204). Database 4 returns to ingress switch 1 a number of the format SSSTTTXXXX wherein SSS specifies a switch number, TTT a trunk group within that switch, and XXXX a specific identification of the called destination. In this case, database 4 returns the number 208-000-1234 (action block 206). 208 is an identification of a non-existent switch (the AT&amp;T network contains fewer than 150 toll switches). The number 208-000 is used by ingress switch 1 to access memory table 46 which has a record corresponding to the 208-000 accessing number that indicates that the preferred destination egress switch is switch 2 (action block 207). Switch 1 then sends an initial address message with the destination field containing the number 208-000-1234 and routes the call to egress switch 2 (action block 210). Egress switch 2 is the switch whose number was obtained in the translation step 207. Test 212 checks whether the call encounters network congestion. If so, a release message is sent from the point of congestion to switch 1 (action block 214). Note that in case switch 1 itself detects that congestion will be encountered in trying to access switch 2, that the actions beginning with action block 240, described hereinafter, are immediately initiated. If test 212 indicates that the call has not encountered network congestion, test 216 (FIG. 3) checks whether the call encounters an all circuits busy condition at the destination PBX 30. If so, then a release message is sent to switch 1 from egress switch 2 (action block 214, FIG. 2). If the result of test 216 (FIG. 3) is negative then PBX 30 tests whether it wants to reject the call. Outright call rejection as opposed to redirection might be requested if the PBX is overloaded, if the call is low priority, and if there are indications that alternate PBX&#39;s are also overloaded. If so, then the PBX sends a reject message to switch 2 (action block 220) and switch 2 generates a release message with reason indicator 62 set to reject (action block 221) and sends this message to switch 1 (action block 214). If the result of test 218 is negative, then test 222 is used to test whether the PBX wants to redirect the call. This may occur because too many calls are in the queue for the number of active agents; the incoming queue has no more space; there has been an unexpected work stoppage; or only priority type calls, such as calls to place orders, can be accepted at this PBX. If the PBX wants to redirect the call, then the PBX sends a redirect indication to switch 2 (action block 224) and switch 2 converts the redirect indication into a release message (action block 226), in this case, with the reason indicator 62 being marked redirect. The release message is then sent to switch 1 (action block 214, FIG. 2). If the PBX does not want to redirect the call, then the PBX will accept the call and the call is completed (action block 228, FIG. 3). 
     In accordance with one aspect of the invention, the call control message from a destination such as the PBX, comprises an identification of a preferred alternate destination. The ingress switch is responsive to such a release message indicating that the call cannot be completed to the one of the destinations and supplying an alternate destination for rerouting the call to the alternate destination. 
     Following the sending of a release message to switch 1 (action block 214, FIG. 2), described above, switch 1 receives the release message (action block 230). Switch 1 then performs test 232 to determine whether or not the release message is for a redirectable call. In applicants&#39; specific embodiment, the same type of release message is used for simple release in case of busy as for a requested redirection; this has reduced the development effort required to implement applicants&#39; invention. Other reasons why the release message might not be for a redirectable call are that the customer has not subscribed to call redirection service, or that the redirection is only active during certain hours of certain days of the week, or that only calls originating in certain NPA codes should be redirected. If the release message is not for a redirectable call, then the call is released under the control of ingress switch 1 (action block 234). If the release message is for a redirectable call (positive result of test 232) then ingress switch 1 translates from the non-existent switch number associated with this call attempt (in this case 208) to find the redirect alternative non-existent switch number (action block 240). (The redirect alternative non-existent switch number for 208 is 209 as specified in table 44). Ingress switch 1 then uses the new non-existent switch number to access table 46 using the same TTT number (000) originally provided by database 4 to obtain the identification of an egress switch for the alternative destination PBX. In this case, table 46 indicates that the egress switch number corresponding to SSS-TTT=209-000 is switch 3, the switch connected to PBX 39 which is the alternative destination PBX. Ingress switch 1 then sends an IAM message with destination 209-000-1234 routing the call to switch 3 identified in action block 242 (action block 244). Thereafter, the same actions previously described for blocks 212 starting with block 212 are performed except in this case switch 3 will send the release message to switch 1. 
     The basic principles discussed above can be used to redirect a call more than once if the first redirected to destination is also unavailable. 
     While in this specific embodiment, the database supplies only an initial translation and the subsequent translations are made in the ingress switch, it is also possible to perform all the translations in the database by providing a list of alternative destinations to ingress switch 1 at the time of the first access or to request the alternative destinations in a series of subsequent queries. The advantage of providing these translations from the database is that only one database need be updated as customers for whom redirect capabilities are added or as customers change their redirection requests. 
     Alternatively, the PBX could provide the redirection number as part of the message and thus retain control of the redirection process. 
     In other arrangements for other types of calls, the routing data can be directly stored in ingress switch 1, thus avoiding the necessity for accessing remote database 4. For example, for a particularly important destination, such as a government bureau, for added security, the alternative destinations may be stored directly in ingress switch 1, Also for destinations serving very high volume traffic, it is desirable to avoid the extra per call database access by storing the routing data in ingress switch 1. 
     The call may originally be routed to a local exchange controlled Centrex which is programmed to give the same kinds of response messages discussed above for a program controlled PBX. 
     It is to be understood that the above description is only of one preferred embodiment of the invention. Numerous other arrangements may be devised by one skilled in the art without departing from the spirit and scope of the invention. The invention is thus limited only as defined in the accompanying claims.