EP1087628A2 - Personal communications system - Google Patents

Personal communications system Download PDF

Info

Publication number
EP1087628A2
EP1087628A2 EP00308268A EP00308268A EP1087628A2 EP 1087628 A2 EP1087628 A2 EP 1087628A2 EP 00308268 A EP00308268 A EP 00308268A EP 00308268 A EP00308268 A EP 00308268A EP 1087628 A2 EP1087628 A2 EP 1087628A2
Authority
EP
European Patent Office
Prior art keywords
call
routing
subscriber
destination
destinations
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP00308268A
Other languages
German (de)
French (fr)
Other versions
EP1087628A3 (en
Inventor
Walter Bruce Galt
James Bartoszewicz
Roy Sells
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nortel Networks Corp
Original Assignee
Nortel Networks Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nortel Networks Corp filed Critical Nortel Networks Corp
Publication of EP1087628A2 publication Critical patent/EP1087628A2/en
Publication of EP1087628A3 publication Critical patent/EP1087628A3/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/0016Arrangements providing connection between exchanges
    • H04Q3/0029Provisions for intelligent networking
    • H04Q3/005Personal communication services, e.g. provisions for portability of subscriber numbers

Definitions

  • the present invention relates generally to an improved communications system and in particular to a method and apparatus for routing calls in a communications system. Still more particularly, the present invention provides a method and apparatus for routing calls to a subscriber who may be contacted at one of a number of phones.
  • Intelligent network or advanced intelligent network (AIN) provide mechanisms to create and support uniform telecommunications services.
  • Intelligent network elements tied together with signaling system no. 7 (SS7) or common channel signaling no. 7 (CCS7) provide an infrastructure to deliver a variety of new telecommunications services.
  • SS7 signaling system no. 7
  • CCS7 common channel signaling no. 7
  • TCAP transaction capabilities application part
  • ISUP ISDN-user part
  • SSPs service switching points
  • STPs signal transfer points
  • SCPs service control points
  • SCPs service control points
  • a service control point (SCP) is an "intelligence center” with access to application databases enabling it to deliver various combinations of features, such as 1-800 number services and call redirection.
  • a signal transfer point (STP) is a signaling hub or concentrator, typically connecting several service switching points to an SCP.
  • a service switching point is a network node normally associated with central office switch equipped with signaling system number 7 (SS7) messaging links to permit communication with the SCPs and which has special IN call processing software including a plurality of "Point-in-Call triggers" which can be provisioned or set to interrupt call processing momentarily and initiate a TCAP query to the SCP for instructions on how to complete the call processing.
  • the originating end office seizes a trunk to a neighboring switch and creates an initial address message which it sends to the neighboring switch via the signaling network.
  • the initial address message includes various parameters which will control routing of the call to its destination.
  • Intelligent call redirection involves assigning a number to a subscriber by which callers may contact the subscriber at different locations or telephones. In this case, a telephone number is assigned to a specific person rather than to a physical telephone.
  • the call is routed to a telephone at one of a number of locations. If the user cannot be located at one of the locations, the call may be routed to a voice messaging system. Further, the call also may be routed to a cellular telephone or a pager.
  • the primary difficulty in effectively implementing personal telephone numbers involves accurately determining to which physical telephone instrument to forward calls.
  • One approach in locating a subscriber follows a "find me” approach which typically forwards calls to a personal telephone number to different telephones according to a preset sequence until the subscriber is located.
  • This approach involves defining the potential location of a subscriber and routing the calls to a telephone where the subscriber may be found at a particular time.
  • One problem with this mechanism is that a subscriber may not keep a rigid schedule resulting in delays in finding the subscriber. These delays are caused because the caller must wait while the system rings each telephone number in the sequence three or four times before proceeding to the next telephone number if the subscriber does not answer the currently called telephone number.
  • Another approach involves a "follow me” approach, which forwards calls to a personal telephone number according to recent activity of the subscriber.
  • This activity includes the subscriber engaging in credit card calls, credit card transactions, or automated teller transactions indicating the location of the subscriber.
  • the location of the individual is recorded in a database that tracks the location of the subscriber. Calls can then be forwarded to the specific telephone number associated with the last known location of the subscriber, or to the telephone number in the subscriber's defined list of calls that is nearest to the last known location as indicted by the area code, cellular region, paging area, etc.
  • a method in a communications system for routing a call comprising: receiving a call; identifying call routing information for the call; responsive to identifying call routing information, determining whether a function has been selected for routing the call; and responsive to a determination that a function has been selected for routing the call, routing the call using a sequence of destinations associated with the function.
  • the method further comprises the steps of: responsive to identifying call outing information, determining whether a call routing schedule based on time has been selected for routing the call; and responsive to a determination that a call routing schedule based on time is to be used, routing the call using a call routing schedule based on time. More preferably, the method further comprises the steps of: monitoring results from routing of the call to the subscriber; and automatically modifying the call routing information based on the results to form modified call routing information, wherein subsequent calls are routed using the modified call routing information.
  • the method further comprises the steps of: responsive to a determination that a function has been selected for routing the call, determining whether a time period for the function has expired; responsive to a determination that a time period for the function has expired, routing the call; and routing the call using a call routing schedule based on time instead of using the sequence of destinations associated with the function.
  • the method further comprises the steps of: monitoring results from routing of the call; and automatically modifying the call routing information based on the results to form modified call routing information, wherein subsequent calls are routed using the modified call routing information.
  • the call may be routed to a subscriber associated with the function.
  • a computer program element comprising: computer program code means to make a computer execute any of the steps described above in relation to the first aspect of the present invention.
  • the computer program element is embodied on a computer readable medium.
  • a method in a communications system for call routing a call comprising: receiving a call to a subscriber; routing the call to the subscriber using a sequence of destinations associated with the subscriber; and responsive to a success of routing the call to the subscriber to a destination within the sequence of destinations, automatically modifying the sequence of destinations used to call the subscriber, wherein the sequence of destinations is modified to favor destinations with successful call completions.
  • the sequence of destinations may be modified to favor destinations with a selected level of call completions.
  • the method further comprises the step of: responsive to detecting initiation of a call by the subscriber from an origin absent from the sequence of destinations, modifying the sequence of destinations to include the origin as a destination within the sequence of destinations.
  • the origin may be included as a destination within the sequence of destinations for a period of time.
  • the calling line identifier may be recorded to identify the origin from which the subscriber initiated the call.
  • the sequence of destinations may be associated with a time slot.
  • the sequence of destinations may be associated with a function.
  • a computer program element comprising: computer program code means to make a computer execute any of the steps described above in relation to the third aspect of the present invention.
  • the computer program element is embodied on a computer readable medium.
  • a method in a communications system for call routing a call comprising: receiving a call to a subscriber; routing the call using call routing information associated with the subscriber; monitoring results from routing of the call to the subscriber; and automatically modifying the call routing information based on the results to form modified call routing information, wherein subsequent calls are routed using the modified call routing information.
  • the step of routing the call comprises: routing the call to a main destination; and responsive to an absence of an answer at the main destination, routing the call to an alternate destination.
  • a computer program element comprising: computer program code means to make a computer execute any of the steps described above in relation to the fifth aspect of the present invention.
  • the computer program element is embodied on a computer readable medium.
  • a method in a communications system for call routing a call comprising: receiving a call to a subscriber; identifying a time of the call; routing the call to the first destination in an ordered set of destinations for the subscriber based on the time of the call; responsive to an absence of an answer of the call at the first destination, routing the call to a second destination in the ordered set of destinations; responsive to an absence of an answer of the call at the second destination, routing the call to a third destination in the ordered set of destinations; and responsive to an answer of the call at the third destination for a number of times, selecting the third alternate destination as the first alternate destination.
  • the second alternate destination may be selected as the first alternate destination for a temporary period of time.
  • the temporary period of time may be a day.
  • the method further comprises the step of: responsive to the third destination being answered over a period of time, setting the third destination as the second destination.
  • the method further comprises the step of: responsive to the second destination being answered over a period of time, setting the second destination as the first destination.
  • a computer program element comprising: computer program code means to make a computer execute any of the steps described above in relation to the seventh aspect of the present invention.
  • the computer program element is embodied on a computer readable medium.
  • a method in a graphical user interface for use in routing calls in a communications system comprising the computer implemented steps of: displaying a set of icons, wherein each icon within the set of icons is associated with a function used to route calls to a party; and responsive to a selection of an icon within the set of icons, sending a message to the communications system to route calls to the party using a calling sequence associated with the function.
  • the method further comprises the steps of: displaying a scheduling icon; and responsive to a selection of the scheduling icon, sending a message to the communications system to route calls to the party using a time based calling schedule.
  • the selection of an icon from the set of icons may override any previous selection of an icon from the set of icons.
  • the selection of the icon may override a previous selection of the scheduling icon.
  • the data processing system may be a personal computer.
  • the data processing system may be a mobile phone.
  • the data processing system may be a personal digital assistant.
  • a computer program element comprising: computer program code means to make a computer execute any of the steps described above in relation to the ninth aspect of the present invention.
  • the computer program element is embodied on a computer readable medium.
  • a switch comprising: an input for receiving a call for a party; signaling interface for sending a request to a database for call routing information, wherein call routing information from the database includes a calling sequence for a function associated with the party in response to the party previously selecting the function; and a switch fabric, wherein the call is routed from the input though the switch fabric to an output to a destination returned by the database using the calling sequence for the function.
  • the request sent from the signaling interface to the database is sent to a service control point, which provides an interface to the database.
  • a service control point comprising: an input/output interface, wherein request for routing information is received from a requestor at the input/output interface and routing information returned to the requestor; a database containing a plurality of calling sequences for subscribers; and a processing unit connected to the input/output interface and the database, wherein the processing unit has a plurality of modes of operation including: a first mode of operation in which the processing unit monitors for requests for routing information; a second mode of operation, responsive to receiving a request, in which the processing unit identifies routing information for the call; a third mode of operation, responsive to identifying routing information for the call, in which the processing unit determines whether a function has been selected for routing the call; a fourth mode of operation, responsive to a determination that a function has been selected for routing the call, in which the processing unit sends routing information for the call using a sequence of destinations associated with the function; and a fifth mode of operation, responsive to an absence of
  • a communications system for routing a call comprising: receiving means for receiving a call; identifying means for identifying call routing information for the call; determining means, responsive to identifying call routing information, for determining whether a function has been selected for routing the call; and routing means, responsive to a determination that a function has been selected for routing the call, for routing the call using a sequence of destinations associated with the function.
  • the communications system further comprises: determining means, responsive to identifying call routing information, for determining whether a call routing schedule based on time has been selected for routing the call; and routing means, responsive to a determination that a call routing schedule based on time is to be used, for routing the call using a call routing schedule based on time. More preferably, the communications system further comprises monitoring means for monitoring results from routing of the call to the subscriber; and modifying means for automatically modifying the call routing information based on the results to form modified call routing information, wherein subsequent calls are routed using the modified call routing information.
  • the communications system further comprises: determining means, responsive to a determination that a function has been selected for routing the call, for determining whether a time period for the function has expired; first routing means, responsive to a determination that a time period for the function has expired, for routing the call; and second routing means for routing the call using a call routing schedule based on time instead of using the sequence of destinations associated with the function.
  • the communications system further comprises: first monitoring means for monitoring results from routing of the call; and second modifying means for automatically modifying the call routing information based on the results to form modified call routing information, wherein subsequent calls are routed using the modified call routing information.
  • the call may be routed to a subscriber associated with the function.
  • a communications system for call routing a call comprising: receiving means for receiving a call to a subscriber; routing means for routing the call to the subscriber using call a sequence of destinations associated with the subscriber; and modifying means, responsive to a success of routing the call to the subscriber to a destination within the sequence of destinations, for automatically modifying the sequence of destinations used to call the subscriber, wherein the sequence of destinations is modified to favor destinations with successful call completions.
  • the communications system further comprises: modifying means, responsive to detecting initiation of a call by the subscriber from an origin absent from the sequence of destinations, for modifying the sequence of destinations to include the origin as a destination within the sequence of destinations.
  • the origin may be included as a destination within the sequence of destinations for a period of time.
  • the calling line identifier may be recorded to identify the origin from which the subscriber initiated the call.
  • the sequence of destinations may be associated with a time slot.
  • the sequence of destinations may be associated with a function.
  • a communications system for call routing a call comprising: receiving means for receiving a call to a subscriber; routing means for routing the call using call routing information associated with the subscriber; monitoring means for monitoring results from routing of the call to the subscriber; and modifying means for automatically modifying the call routing information based on the results to form modified call routing information, wherein subsequent calls are routed using the modified call routing information.
  • the means of routing the call comprises: first routing means for routing the call to a main destination; and second routing means, responsive to an absence of an answer at the main destination, for routing the call to an alternate destination.
  • a communications system for call routing a call comprising: receiving means for receiving a call to a subscriber; identifying means for identifying a time of the call; first routing means for routing the call to the first destination in an ordered set of destinations for the subscriber based on the time of the call; second routing means, responsive to an absence of an answer of the call at the first destination, for routing the call to a second destination in the ordered set of destinations; responsive to an absence of an answer of the call at the second destination, routing the call to a third destination in the ordered set of destinations; responsive to an answer of the call at the third destination for a number of times, selecting the third alternate destination as the first alternate destination.
  • the second alternate destination is selected as the first alternate destination for a temporary period of time.
  • the temporary period of time is a day.
  • the communications system further comprises: setting means, responsive to the third destination being answered over a period of time, for setting the third destination as the second destination.
  • the communications system further comprises: setting means, responsive to the second destination being answered over a period of time, for setting the second destination as the first destination.
  • a graphical user interface for use in routing calls in communications system, the graphical user interface comprising: displaying means for displaying a set of icons, wherein each icon within the set of icons is associated with a function used to route calls to a party; and sending means, responsive to a selection of an icon within the set of icons, for sending a message to the communications system to route calls to the party using a calling sequence associated with the function.
  • the graphical user interface further comprises: displaying means for displaying a scheduling icon; and sending means, responsive to a selection of the scheduling icon, for sending a message to the communications system to route calls to the party using a time based calling schedule.
  • the selection of an icon from the set of icons overrides any previous selection of an icon from the set of icons. More preferably, the selection of the icon overrides a previous selection of the scheduling icon.
  • the data processing system may be a personal computer.
  • the data processing system may be a mobile phone.
  • the data processing system may be a personal digital assistant.
  • the present invention provides an improved method and apparatus for routing a call to a subscriber who may be reached at a number of different locations.
  • the present invention includes a mechanism that is function based rather than time based for locating a subscriber at different locations.
  • the function may be, for example, "at home" or "going to work”.
  • a method in a communications system for routing a call includes receiving a call request to a subscriber and identifying call routing information for the subscriber. In order to identify call routing information for the subscriber, a determination is made as to whether function based routing has been selected. If so, the call may be routed using a sequence of destinations associated with the function. If function based selection is not active, then the call is routed using a scheduled based on time.
  • the present invention also allows for automatically changing and extending routing information.
  • the changes may be based on successful call completions to different destinations. These changes are made both for the call routing schedule and the function.
  • An interface is provided to the user to select the type of call location mechanism, call routing schedule or function.
  • the interface may be, for example, be provided over the Internet or through a telephone device.
  • Communications system 100 is an example of a communications system in which the processes and apparatus of the present invention may be implemented to provide a more user friendly and more efficient mechanisms for routing calls to a subscriber who may be contacted at one of a number of telephones or other communication devices based on their current activity schedule.
  • Communications system 100 includes service switching points (SSPs) 102-112 interconnected by T1 trunks 114-122 .
  • a SSP is a local exchange in a telephone network.
  • a SSP may be a combination of a voice switch and SS7 switch or an adjunct computer connected to the voice switch of a local exchange.
  • Each switch includes a switch fabric with input and output ports used to route a call to a destination.
  • the SSP provides the functionality of communicating with the voice switch via the use of primitives in creating packets, or signal units, needed for transmission in a SS7 network.
  • a SSP will send requests or queries to a database to determine where to route a call.
  • the SSP will use the information provided by the call party, such as dialed digits, to determine how to connect the call.
  • SSP 112 is a tandem access SSP, which is employed to provide access between networks within communications system 100 , such as providing a connection between two local exchange carriers (LECs) within communications system 100 .
  • LECs local exchange carriers
  • SSP 102-106 may be located in one LEC while SSPs 108-110 may be located in another LEC.
  • SSPs 102-106 are connected to signaling transfer (STP) 124 by signaling links 126-130 while SSPs 108-110 are connected to STP 132 by signaling links 134 and 136 .
  • STP signaling transfer
  • All SS7 packets travel from one SSP to another through the services of a STP.
  • the STP serves as a router in the SS7 network.
  • the STP also is typically adjunct to a voice switch.
  • Also found in communications system 100 are service control points (SCPs) 138 and 140 .
  • SCP 138 is connected to STP 124 by signaling link 142 while SCP 140 is connected to STP 132 by signaling link 144 .
  • a SCP serves as an interface to various databases, which may contain information about subscriber services, routing of special service numbers, calling card validation and fraud protection, and AIN services.
  • the SCP is usually a computer used as a front end to a computer database.
  • Each SSP may communication with a SCP, such as SCP 138 or 140 using TCAP messages to ascertain a particular call.
  • a SCP may communicate with other SCPs by means of ISDN user part initial address messages (ISUP-IAM) to set up trunk connections for calls.
  • ISUP-IAM ISDN user part initial address messages
  • communications system 100 includes a cellular network 146 which has a connection to SSP 138 through T1 line 148 . Signaling and routing information may be sent between STP 124 and cellular network 136 through signaling line 150 .
  • Telephone devices such as telephones 152-164 are connected to SSPs 102-106 and SSPs 108 and 110 in communications system 100 . Through this network, a user at one telephone may call a user at another telephone or a user at a mobile station, such as mobile station 166 in cellular network 146 .
  • communications system 100 may include Internet 168 , which provides a mechanism for a subscriber to access subscriber information stored in a SCP 138 .
  • Communications system 100 may exclude shown components and/or include other components not shown in the depicted example. The illustration in Figure 1 is not meant to imply architectural limitations on the present invention.
  • the present invention provides a method, apparatus, and instructions for using information from successful call attempts to modify the call sequences in order to favor call set up to the location that is identified as having previously answered calls during a specific time period. For example, a subscriber may be located at different locations or telephones depending on the time of the day and the day of the week. The calling sequence may identify different numbers at which the subscriber may be contacted. Furthermore, if the subscriber uses the service as a full personal agent environment to which they place calls then the system notes the last used caller line identification (CLI) of the subscriber and uses that as a potential contact location.
  • CLI caller line identification
  • the mechanism of the present invention also allows a subscriber to setup the sequence of numbers to call the subscriber based on functions or activities of the subscriber.
  • SCP service control point
  • SCP 200 is an example of a SCP in which the process of the present invention may be implemented.
  • SCP 200 includes a bus 202 interconnecting a processing unit 204 , memory 206 , input/output (I/O) unit 208 , I/O unit 210 , and storage device 212 .
  • Storage device 212 includes a number of databases, such as, for example, line number portability (LNP) 214 , call management services database (CMSDB) 216 , and call routing database 218 . Calls to a subscriber may be received from a STP through I/O unit 208 .
  • SCP 200 may access other databases located remotely from SCP 200 through I/O unit 210 .
  • a business services database is used to allow subscribers to store call processing instructions, network management procedures, and other data relevant to a private network of the subscriber.
  • a database is not located within SCP 200 , but may be accessed through I/O unit 210 .
  • information relating to routing lists or sequences of numbers used to call a subscriber may be stored within call routing database 218 .
  • the instructions for executing the processes of the present invention may be stored within memory 206 and executed by processing unit 204 .
  • Data processing system 300 is an example of a computer at which a subscriber may set, modify, and activate various call routing functions of the present invention.
  • Data processing system 300 employs a peripheral component interconnect (PCI) local bus architecture.
  • PCI peripheral component interconnect
  • Processor 302 and main memory 304 are connected to PCI local bus 306 through PCI bridge 308 .
  • PCI bridge 308 also may include an integrated memory controller and cache memory for processor 302 . Additional connections to PCI local bus 306 may be made through direct component interconnection or through add-in boards.
  • local area network (LAN) adapter 310 SCSI host bus adapter 312 , and expansion bus interface 314 are connected to PCI local bus 306 by direct component connection.
  • audio adapter 316 graphics adapter 318 , and audio/video adapter 319 are connected to PCI local bus 306 by add-in boards inserted into expansion slots.
  • Expansion bus interface 314 provides a connection for a keyboard and mouse adapter 320 , modem 322 , and additional memory 324 .
  • SCSI host bus adapter 312 provides a connection for hard disk drive 326 , tape drive 328 , and CD-ROM drive 330 .
  • Typical PCI local bus implementations will support three or four PCI expansion slots or add-in connectors.
  • An operating system runs on processor 302 and is used to coordinate and provide control of various components within data processing system 300 in Figure 3 .
  • the operating system may be a commercially available operating system such as OS/2, which is available from International Business Machines Corporation. "OS/2" is a trademark of International Business Machines Corporation.
  • FIG. 3 may vary depending on the implementation.
  • Other internal hardware or peripheral devices such as flash ROM (or equivalent nonvolatile memory) or optical disk drives and the like, may be used in addition to or in place of the hardware depicted in Figure 3 .
  • the processes of the present invention may be applied to a multiprocessor data processing system.
  • data processing system 300 may not include SCSI host bus adapter 312 , hard disk drive 326 , tape drive 328 , and CD-ROM 330 , as noted by dotted line 332 in Figure 3 denoting optional inclusion.
  • the computer to be properly called a client computer, must include some type of network communication interface, such as LAN adapter 310 , modem 322 , or the like.
  • data processing system 300 may be a Personal Digital Assistant (PDA) device which is configured with ROM and/or flash ROM in order to provide non-volatile memory for storing operating system files and/or user-generated data.
  • PDA Personal Digital Assistant
  • data processing system 300 may be a smart phone containing a processor and instructions used to set up and modify routing schedules and to turn on and turn off routing functions. Data processing system 300 may make these changes through a graphical user interface and a communications link to communications system 100 in Figure 1 .
  • a browser program such as, for example, Netscape Communicator from Netscape Communications Corporation, may be used by a subscriber to access and modify subscriber information for routing calls.
  • data processing system 300 also may be a notebook computer or hand held computer in addition to taking the form of a PDA.
  • data processing system 300 also may be a kiosk or a Web appliance.
  • FIGS 4-6 illustrate graphical user interfaces (GUls) that may be employed to allow a subscriber to set up and modify call routing information.
  • GUIs graphical user interfaces
  • the GUls in these examples are windows displayed in a data processing system. The actual presentation may take different forms depending on the implementation. For example, the windows may be those for a browser that display pages received from a device or node, such as a SCP on the communications system. In such a case, the subscriber accesses the subscriber's routing information through the World Wide Web on the Internet via a TCP/IP connection.
  • These GUls are examples of an interface that may be used by a subscriber or other user to route calls based on a function or based on a call routing schedule that is time based.
  • Interaction with the GUI causes messages or calls to be sent to the communications system to activate and deactivate different calling sequences depending on whether a function or call routing schedule is selected by the subscriber. In this manner an intuitive interface is provided to a subscriber to easily change the routing of calls to the subscriber.
  • GUI 400 provides an interface on a data processing system, such as, for example, data processing system 300 in Figure 3 , to view and initiate call routing functions.
  • the data processing system may take many forms, such as, for example, a personal computer, a personal digital assistant, or a digital wireless phone.
  • the information viewed by the subscriber may be received by the data processing system over a communications link established to a SCP. Messages or request may be sent back to the SCP over the same link.
  • GUI 400 includes a window 402 containing a call routing schedule 404 and a function schedule 406 .
  • call routing schedule 404 is a time-based schedule and shows that the subscriber is in the car between 8:00 a.m. and 8:30 a.m.. From 8:30 a.m. to 12:00 p.m. the subscriber may be contacted at work. From 12:00 p.m. to 1:00 p.m. the subscriber is at the gym as shown in call routing schedule 404 . Additional times and locations are not shown, but may be viewed by manipulating scroll bar 408 . Changes to the schedule displayed in call routing schedule 404 may be made by selecting change button 410 .
  • function list includes selectable functions that may be activated by selecting "on” button 412 .
  • a selected function may be deactivated by selecting "off” button 414 .
  • the functions include, “in car”, “at work”, “at home”, and “at gym”.
  • GUI 500 contains a window 502 that is displayed in response to a selection of change button 410 in Figure 4.
  • Window 502 is used by a subscriber to change the call routing schedule.
  • Window 502 includes a function list 504 in which a number of different locations may be selected for use in calling the subscriber.
  • Function list 504 is a list of functions that have been set up for the subscriber. In this example, “in car”, “at work”, “at gym”, “at home”, and “golfing" are the functions that have been set up for the subscriber. Selection of add button 506 will allow a user to add a new function in field 508 .
  • a time period for the function may be set in field 510 . A time period allows for the user to set a length of time during which the function will be active and used in place of the call routing schedule, which is a time-based call routing schedule.
  • the function will deactivate and calls made to the subscriber will be processed using the routing schedule. Additionally, the user may enter a start time in field 512 and an end time in field 514 during which a particular number associated with the function will be used to reach the subscriber. These two times are used to define a time slot.
  • One or more numbers may be entered into fields 516 , 518 , and 520 for the particular function. These numbers are also referred to as directory numbers. Numbers may be entered into additional fields not shown. These fields may be shown by manipulating controls 522 and 524 . The numbers entered in these fields have a priority used to call the subscriber.
  • field 516 has the highest priority
  • field 518 has the next highest priority
  • field 520 has the lowest priority.
  • the number entered in field 516 will be called first when attempting to call the subscriber for the particular function.
  • the number in field 518 will be called next if the subscriber cannot be reached at the number entered into field 516.
  • "Delete” button 526 may be used to delete an entire function in function list 504 .
  • "Ok” button 520 is used to accept changes made by the subscriber. Selection of "Ok” button 520 causes any changes to be stored for use in routing calls for the subscriber.
  • "Cancel” button 530 is used to cancel or prevent any changes entered by the subscriber from being stored or used to route calls.
  • GUI 600 includes a window 602 in which a subscriber may select different routing options for calls made to the subscriber.
  • schedule 604 is an icon or image that is selectable by the subscriber to initiate routing of calls based on a call routing schedule, which is time-based.
  • Window 602 also displays "at home” 606 , "at work” 608 , "in car” 610 , "golfing" 612 , which are icons or images selectable by the subscriber to initiate call routing associated with a function with which the subscriber is familiar.
  • Selection of one of these icons or images results in a request being sent to a SCP to use the destinations set up for the particular function to route calls to the subscriber.
  • these destinations are represented by telephone numbers or other call routing information in a database used to route calls between a caller and a call party.
  • schedule 604 had been previously selected by the subscriber, a selection of one of the function icons or images will result in the calling sequence associated with selected icon or image being used in place of the call routing schedule. This replacement or change in call routing may remain in effect until a different function is selected or until the icon or image for the call routing schedule, schedule 604 , is selected.
  • time period may be set for a function during which the calling sequence associated with the function will be used to route calls. When the time period expires, the routing will return to the call routing schedule or some other default function.
  • FIGS. 7-14 illustrate flowcharts of processes used in routing calls to a subscriber in which a call received for the subscriber may be routed to a number of destinations.
  • a flowchart for a process displaying a call routing schedule and functions is depicted in accordance with a preferred embodiment of the present invention.
  • the flowchart in Figure 7 is employed to process input to the graphical user interface illustrated in Figure 4 .
  • the process begins by displaying a window containing a call routing schedule and functions for a subscriber (step 700 ). This window may be window 402 , as illustrated in Figure 4 . Thereafter, the process waits to receive user input (step 702 ).
  • the selected function Upon receiving a user input that selects a function in the GUI, the selected function is highlighted (step 704 ) with the process then returning to step 702 to wait for additional user input. If the user input received is a selection of the "on” button, the selected function is activated (step 706 ) with the process returning to step 702 . Activating the function using the "on” button results in calls to the subscriber being directed towards one or more numbers in an ordered list associated with the function. For example, if the function is "in car", a call to the subscriber is routed first to the users mobile number. If no answer is received at the users mobile number, then the call is routed to the user's work number.
  • the call may be routed to a voice mailbox for the user.
  • the sequence of call routing is used in place of any sequence of numbers valid for the time in which the call was made. This function will continue until turned off. Alternatively, a time period may be set in which the function will take president over a time-based routing schedule. When the time period is expired, the time function will deactivate and the time-based routing schedule will again be used to route calls to the subscriber.
  • Selection of the "off" button as a user input results in the function being deactivated (step 708 ) with the process then returning to step 702 .
  • the deactivation of the function results in routing the calls using the time-based call routing schedule.
  • Selection of the modify button results in a display of a modification window (step 710 ) with the process terminating thereafter.
  • the modification window is window 502 in Figure 5 .
  • FIG. 8 a flowchart of a process for modifying and adding functions is depicted in accordance with a preferred embodiment of the present invention.
  • the process begins by displaying a list of functions for the subscriber (step 800 ). This display is in the form of a window, such as window 502 in Figure 5 . Thereafter, the process waits for user input (step 802 ). Upon receiving selection of a function, the selected function is then highlighted (step 804 ) with the process then returning to step 802 to wait for additional user input. Upon receiving selection of the delete button as an input, the selected function will be deleted from the list of functions (step 806 ) with the process then returning to step 802 .
  • the process Upon receiving user input to add a function, the process receives the function name (step 808).
  • the function named received is entered in a field in the window.
  • one or more phone numbers may be entered by the subscriber (step 810 ). These phone numbers may be placed in an order in which calls are to be routed to the subscriber.
  • a time slot is entered (step 812 ). Entry of the time slot may be made by entering a start and stop time for the function. Additionally, a time period may be entered for the function (step 814 ) with the process then returning to step 802 .
  • entries made in the fields for the function will be stored (step 816 ) with the process terminating thereafter. Receiving selection of the cancel button will result in the process terminating without saving any changes.
  • FIG 9 a flowchart of a process for routing calls is depicted in accordance with a preferred embodiment of the present invention.
  • This process is initiated when a subscriber requests a change in call routing options.
  • the request is made over the Internet using a TCP/IP connection.
  • the process begins by identifying the subscriber making the request (step 900 ).
  • Subscriber information is obtained from a database of subscribers, such as call routing database 218 in Figure 2 (step 902 ).
  • the information includes information needed to display various routing options for the subscriber.
  • a page or display is created using the subscriber information (step 904 ), and the page is sent to the subscriber (step 906 ).
  • the page is similar to GUI 700 in Figure 7 .
  • the process then receives user input (step 908 ).
  • a determination is made as to whether the user input is one initiating a function (step 910 ). If the user input initiates a function for call routing, then the routing of the calls to the subscriber is switched to use a group of destinations to find for the selected function (step 912 ). Thereafter, a determination is made as to whether a time period has been set for this function (step 914 ). If a time period has been set or defined, a timer is set to indicate when the routing of calls should be switched back to the call routing schedule (step 916 ) with the process then returning to step 908 . Otherwise, the process proceeds directly back to step 908 .
  • the routing of calls may be switched back to some other group of destinations instead of those defined by the call routing schedule. For example, the routing of calls may be switched to some default function or the subscriber may be queried for another selection.
  • step 910 if the user input is not a function initiation, a determination is made as to whether the user input initiates the call routing schedule (step 918 ). If the call routing schedule is to be initiated, the routing of calls for the subscriber is switched to a set of destinations defined in the call routing schedule (step 920 ) with the process then returning to step 908 . Otherwise, a determination is made as to whether the subscriber has exited the process (step 922 ). If the subscriber has exited the process terminates. Otherwise, the process returns to step 908 .
  • FIG. 10 a flowchart of a process for routing calls is depicted in accordance with a preferred embodiment of the present invention.
  • the process begins by receiving a call from a caller to a subscriber (step 1000 ).
  • the subscriber is then identified (step 1002 ).
  • Subscriber information is retrieved for the identified subscriber (step 1004 ).
  • a determination is then made as to whether routing is to be performed by a function selected by the subscriber (step 1006 ). If routing is to be made using a function, a determination is made as to whether a timer has expired for the selected function (step 1008 ). If the timer has not expired, then routing of the call is initiated using the selected function (step 1010 ) with the process terminating thereafter.
  • step 1012 the process then switches to the call routing schedule (step 1012 ). Call routing is then initiated using the call routing schedule (step 1014 ) with the process terminating thereafter.
  • step 1006 if routing is not to be made using a function, then process proceeds directly to step 1014 as described above.
  • a flowchart of a process for routing a call to a subscriber using a call routing schedule begins by identifying in the call routing schedule, the current time slot that is to be used to route the call (step 1100 ).
  • the main destination for the time slot is called (step 1102 ).
  • the main destination in this example is the first number or the number having the highest priority that is associated with the time slot.
  • a determination is made as to whether the call has been completed (step 1104 ). This determination is made by seeing whether the subscriber has answered the phone within a selected period of time.
  • step 1106 A determination is then made as to whether there are uncalled alternate destinations present for the time slot. If alternate destinations that have been uncalled are present, the next alternate destination is identified for the time slot and called (step 1108 ). Destinations for the time slot are placed in an order in which calls should be made to the subscriber. A determination is made as to whether the call has been completed (step 1110 ). If the call has not been completed, the process returns to step 1106 .
  • step 1112 if the call is completed, the process then increments a counter for the destination and time slot (step 1112 ). A determination is made as to whether the counter is greater than a threshold value (step 1114 ). The counter counts the number of successful connections to the destination. This counter is used to determine the likelihood of this destination being the preferred destination for this time period/function. If the counter is greater than a threshold value, the alternate destination is then set as the first alternate destination (step 1116 ) with the process terminating thereafter. In the depicted example, the threshold may be set to two. Thus, if three calls are successfully completed, the alternate destination will be set or made the first alternate destination. In the depicted examples, this change in step 1116 is temporary and good for a single day or 24-hour period.
  • step 1118 a determination is made as to whether another time slot is present. If another time slot is present, the next time slot in the sequence is selected (step 1120 ) with the process then returning to step 1102 . If additional time slots are not present, a default action is performed (step 1122 ) with the process terminating thereafter. This default action may take various forms. For example, the caller may be given a message that the subscriber is unavailable. Alternatively, the caller may be sent to a voice mail box for the subscriber. With reference again to step 1104 , if the call is completed, the process terminates, as does step 1114 if the threshold is less than the counter.
  • FIG 12 a flowchart for routing calls using a subscriber selected function is depicted in accordance with a preferred embodiment of the present invention.
  • the process begins by calling a main destination from a group of destinations associated with the selected function (step 1200 ). A determination is made as to whether the call was completed (step 1202 ). If the call was not completed, a determination is made as to whether uncalled alternate destinations are present (step 1204 ). If uncalled alternate destinations are present, the next destination is selected (step 1206 ). The group of destinations for the group of functions are placed in an order in which calls should be attempted. The selected destination is then called (step 1208 ). A determination is made as to whether the call to the alternate destination was completed (step 1210 ). If the call was not completed, the process returns to step 1204. Otherwise, the process then increments a counter for the destination (step 1212 ).
  • step 1214 a determination is made as to whether the counter is greater than a threshold value.
  • the counter counts the number of successful connections to the destination. This counter is used to determine the likelihood of this destination being the preferred destination for this time period/function. If the counter is greater than a threshold value, the alternate destination is then set as the first alternate destination (step 1216 ) with the process terminating thereafter. In the depicted examples, this change in step 1216 is temporary and good for a single day or 24-hour period. With reference again to step 1214, if the counter is not greater than the threshold, the process also terminates.
  • a default action is performed (step 1218 ) with the process terminating thereafter.
  • This default action may be, for example, a message indicating the unavailability of the subscriber or sending the caller to a voice mail box for the subscriber.
  • the process terminates.
  • the process begins by retrieving a routing schedule for the subscriber (step 1300 ).
  • a subscriber call history is retrieved (step 1302 ).
  • the time period for this history may vary depending on the implementation. For example, the history may be a one week period or a one month period.
  • the process selects a time slot from the routing schedule for processing (step 1304 ).
  • the destination having the most successful call completions is identified (step 1306 ).
  • a determination is then made as to whether this destination is a first alternate destination (step 1308 ).
  • the destination is then set as the main destination for the time slot (step 1310 ).
  • a determination is then made as to whether more unprocessed time slots are present (step 1314 ). If additional unprocessed time slots are present, the process returns to step 1304 . Otherwise, the process terminates.
  • step 1312 a determination is made as to whether the destination is the main destination (step 1312 ). If the destination is not the main destination, then the destination is set as the first alternate destination (step 1316 ) with the process then proceeding to step 1314 as described above. If the destination is the main destination, the process proceeds directly to step 1314 .
  • the process begins by detecting a subscriber initiated call (step 1400 ). Thereafter, the calling line identifier (CLI) is obtained for the call (step 1402 ). The CLI is then stored as the first alternate destination (step 1404 ) with the process terminating thereafter.
  • CLI calling line identifier
  • the description of the present invention has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art.
  • the interface may be a voice response system using voice recognition which may be employed to set up, modify, and select routing mechanisms.
  • call routing schemes or numbers used may be sent to the user via billing records. In this manner, a subscriber may see changes to the order in which destinations are called.
  • the embodiment was chosen and described in order to best explain the principles of the invention, the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.

Abstract

A method and apparatus in a communications system (180) for routing a call. A call to a subscriber is received. Call routing information is identified for the subscriber (1004). Responsive to identifying call routing information for the subscriber, a determination is then made as to whether a function has been selected for routing the call (1006). Responsive to a determination that a function has been selected for routing the call, the call is routed using a sequence of destinations associated with the function (1010). Responsive to an absence of a determination that the function has been selected for routing the call, the call is routed using a call routing schedule based on time (1014). Destinations to which calls are actually completed are monitored and the sequence in which destinations are selected and the sequence of destinations may be altered depending on the call completions made to destinations within the sequence of destinations (1114).

Description

  • The present invention relates generally to an improved communications system and in particular to a method and apparatus for routing calls in a communications system. Still more particularly, the present invention provides a method and apparatus for routing calls to a subscriber who may be contacted at one of a number of phones.
  • Intelligent network (IN) or advanced intelligent network (AIN) provide mechanisms to create and support uniform telecommunications services. Intelligent network elements, tied together with signaling system no. 7 (SS7) or common channel signaling no. 7 (CCS7) provide an infrastructure to deliver a variety of new telecommunications services. Such signaling systems exchange transaction capabilities application part (TCAP) messages or queries between network elements to invoke selected services and ISDN-user part (ISUP) messages between network node switching elements to set up and route calls. The TCAP and ISUP messages are handled by a data communications system separate from the trunks which carry the calls themselves. The elements of such intelligent telephone systems include service switching points (SSPs) interconnected by trunks for carrying calls, and signal transfer points (STPs) and service control points (SCPs) connected to each other and the SSPs by SS7 data links for carrying signaling. A service control point (SCP) is an "intelligence center" with access to application databases enabling it to deliver various combinations of features, such as 1-800 number services and call redirection. A signal transfer point (STP) is a signaling hub or concentrator, typically connecting several service switching points to an SCP. A service switching point (SSP) is a network node normally associated with central office switch equipped with signaling system number 7 (SS7) messaging links to permit communication with the SCPs and which has special IN call processing software including a plurality of "Point-in-Call triggers" which can be provisioned or set to interrupt call processing momentarily and initiate a TCAP query to the SCP for instructions on how to complete the call processing. Based upon the instructions, the originating end office seizes a trunk to a neighboring switch and creates an initial address message which it sends to the neighboring switch via the signaling network. The initial address message includes various parameters which will control routing of the call to its destination.
  • Some services provided by AIN include, for example, intelligent caller data, disaster routing, call screening, automatic callback, and intelligent call redirection. Intelligent call redirection involves assigning a number to a subscriber by which callers may contact the subscriber at different locations or telephones. In this case, a telephone number is assigned to a specific person rather than to a physical telephone. When a call is made to a subscriber's telephone number, the call is routed to a telephone at one of a number of locations. If the user cannot be located at one of the locations, the call may be routed to a voice messaging system. Further, the call also may be routed to a cellular telephone or a pager. The primary difficulty in effectively implementing personal telephone numbers involves accurately determining to which physical telephone instrument to forward calls.
  • One approach in locating a subscriber follows a "find me" approach which typically forwards calls to a personal telephone number to different telephones according to a preset sequence until the subscriber is located. This approach involves defining the potential location of a subscriber and routing the calls to a telephone where the subscriber may be found at a particular time. One problem with this mechanism is that a subscriber may not keep a rigid schedule resulting in delays in finding the subscriber. These delays are caused because the caller must wait while the system rings each telephone number in the sequence three or four times before proceeding to the next telephone number if the subscriber does not answer the currently called telephone number.
  • Another approach involves a "follow me" approach, which forwards calls to a personal telephone number according to recent activity of the subscriber. This activity includes the subscriber engaging in credit card calls, credit card transactions, or automated teller transactions indicating the location of the subscriber. When such an activity is performed, the location of the individual, potentially including the telephone number, is recorded in a database that tracks the location of the subscriber. Calls can then be forwarded to the specific telephone number associated with the last known location of the subscriber, or to the telephone number in the subscriber's defined list of calls that is nearest to the last known location as indicted by the area code, cellular region, paging area, etc.
  • One problem with this approach is that it provides a forwarding location for calls to a personal telephone number that may be available for only a limited time. The new number is valid only as long as the subscriber stays at the location where he performed that activity.
  • Therefore, it would be advantageous to have an improved method and apparatus for locating and calling a subscriber having a telephone number that is routable to a number of different locations.
  • According to a first aspect of the present invention, there is provided a method in a communications system for routing a call, the method comprising: receiving a call; identifying call routing information for the call; responsive to identifying call routing information, determining whether a function has been selected for routing the call; and responsive to a determination that a function has been selected for routing the call, routing the call using a sequence of destinations associated with the function.
  • Preferably, the method further comprises the steps of: responsive to identifying call outing information, determining whether a call routing schedule based on time has been selected for routing the call; and responsive to a determination that a call routing schedule based on time is to be used, routing the call using a call routing schedule based on time. More preferably, the method further comprises the steps of: monitoring results from routing of the call to the subscriber; and automatically modifying the call routing information based on the results to form modified call routing information, wherein subsequent calls are routed using the modified call routing information.
  • Preferably, the method further comprises the steps of: responsive to a determination that a function has been selected for routing the call, determining whether a time period for the function has expired; responsive to a determination that a time period for the function has expired, routing the call; and routing the call using a call routing schedule based on time instead of using the sequence of destinations associated with the function.
  • Preferably, the method further comprises the steps of: monitoring results from routing of the call; and automatically modifying the call routing information based on the results to form modified call routing information, wherein subsequent calls are routed using the modified call routing information.
  • The call may be routed to a subscriber associated with the function.
  • According to a second aspect of the present invention, there is provided a computer program element comprising: computer program code means to make a computer execute any of the steps described above in relation to the first aspect of the present invention.
  • Preferably, the computer program element is embodied on a computer readable medium.
  • According to a third aspect of the present invention, there is provided a method in a communications system for call routing a call, the method comprising: receiving a call to a subscriber; routing the call to the subscriber using a sequence of destinations associated with the subscriber; and responsive to a success of routing the call to the subscriber to a destination within the sequence of destinations, automatically modifying the sequence of destinations used to call the subscriber, wherein the sequence of destinations is modified to favor destinations with successful call completions.
  • The sequence of destinations may be modified to favor destinations with a selected level of call completions.
  • Preferably, the method further comprises the step of: responsive to detecting initiation of a call by the subscriber from an origin absent from the sequence of destinations, modifying the sequence of destinations to include the origin as a destination within the sequence of destinations.
  • The origin may be included as a destination within the sequence of destinations for a period of time.
  • The calling line identifier may be recorded to identify the origin from which the subscriber initiated the call.
  • The sequence of destinations may be associated with a time slot.
  • The sequence of destinations may be associated with a function.
  • According to a fourth aspect of the present invention, there is provided a computer program element comprising: computer program code means to make a computer execute any of the steps described above in relation to the third aspect of the present invention.
  • Preferably, the computer program element is embodied on a computer readable medium.
  • According to a fifth aspect of the present invention, there is provided a method in a communications system for call routing a call, the method comprising: receiving a call to a subscriber; routing the call using call routing information associated with the subscriber; monitoring results from routing of the call to the subscriber; and automatically modifying the call routing information based on the results to form modified call routing information, wherein subsequent calls are routed using the modified call routing information.
  • Preferably, the step of routing the call comprises: routing the call to a main destination; and responsive to an absence of an answer at the main destination, routing the call to an alternate destination.
  • According to a sixth aspect of the present invention, there is provided a computer program element comprising: computer program code means to make a computer execute any of the steps described above in relation to the fifth aspect of the present invention.
  • Preferably, the computer program element is embodied on a computer readable medium.
  • According to a seventh aspect of the present invention, there is provided a method in a communications system for call routing a call, the method comprising: receiving a call to a subscriber; identifying a time of the call; routing the call to the first destination in an ordered set of destinations for the subscriber based on the time of the call; responsive to an absence of an answer of the call at the first destination, routing the call to a second destination in the ordered set of destinations; responsive to an absence of an answer of the call at the second destination, routing the call to a third destination in the ordered set of destinations; and responsive to an answer of the call at the third destination for a number of times, selecting the third alternate destination as the first alternate destination.
  • The second alternate destination may be selected as the first alternate destination for a temporary period of time.
  • The temporary period of time may be a day.
  • Preferably, the method further comprises the step of: responsive to the third destination being answered over a period of time, setting the third destination as the second destination.
  • Preferably, the method further comprises the step of: responsive to the second destination being answered over a period of time, setting the second destination as the first destination.
  • According to an eighth aspect of the present invention, there is provided a computer program element comprising: computer program code means to make a computer execute any of the steps described above in relation to the seventh aspect of the present invention.
  • Preferably, the computer program element is embodied on a computer readable medium.
  • According to a ninth aspect of the present invention, there is provided a method in a graphical user interface for use in routing calls in a communications system, the method comprising the computer implemented steps of: displaying a set of icons, wherein each icon within the set of icons is associated with a function used to route calls to a party; and responsive to a selection of an icon within the set of icons, sending a message to the communications system to route calls to the party using a calling sequence associated with the function.
  • Preferably, the method further comprises the steps of: displaying a scheduling icon; and responsive to a selection of the scheduling icon, sending a message to the communications system to route calls to the party using a time based calling schedule.
  • The selection of an icon from the set of icons may override any previous selection of an icon from the set of icons.
  • The selection of the icon may override a previous selection of the scheduling icon.
  • The data processing system may be a personal computer.
  • The data processing system may be a mobile phone.
  • The data processing system may be a personal digital assistant.
  • According to a tenth aspect of the present invention, there is provided a computer program element comprising: computer program code means to make a computer execute any of the steps described above in relation to the ninth aspect of the present invention.
  • Preferably, the computer program element is embodied on a computer readable medium.
  • According to an eleventh aspect of the present invention, there is provided a switch comprising: an input for receiving a call for a party; signaling interface for sending a request to a database for call routing information, wherein call routing information from the database includes a calling sequence for a function associated with the party in response to the party previously selecting the function; and a switch fabric, wherein the call is routed from the input though the switch fabric to an output to a destination returned by the database using the calling sequence for the function.
  • Preferably, the request sent from the signaling interface to the database is sent to a service control point, which provides an interface to the database.
  • According to a twelfth aspect of the present invention, there is provided a service control point comprising: an input/output interface, wherein request for routing information is received from a requestor at the input/output interface and routing information returned to the requestor; a database containing a plurality of calling sequences for subscribers; and a processing unit connected to the input/output interface and the database, wherein the processing unit has a plurality of modes of operation including: a first mode of operation in which the processing unit monitors for requests for routing information; a second mode of operation, responsive to receiving a request, in which the processing unit identifies routing information for the call; a third mode of operation, responsive to identifying routing information for the call, in which the processing unit determines whether a function has been selected for routing the call; a fourth mode of operation, responsive to a determination that a function has been selected for routing the call, in which the processing unit sends routing information for the call using a sequence of destinations associated with the function; and a fifth mode of operation, responsive to an absence of a determination that a function has been selected for routing the call, in which the processing unit sends routing information for the call using a call routing schedule based on time.
  • According to a thirteenth aspect of the present invention, there is provided a communications system for routing a call, the communications system comprising: receiving means for receiving a call; identifying means for identifying call routing information for the call; determining means, responsive to identifying call routing information, for determining whether a function has been selected for routing the call; and routing means, responsive to a determination that a function has been selected for routing the call, for routing the call using a sequence of destinations associated with the function.
  • Preferably, the communications system further comprises: determining means, responsive to identifying call routing information, for determining whether a call routing schedule based on time has been selected for routing the call; and routing means, responsive to a determination that a call routing schedule based on time is to be used, for routing the call using a call routing schedule based on time. More preferably, the communications system further comprises monitoring means for monitoring results from routing of the call to the subscriber; and modifying means for automatically modifying the call routing information based on the results to form modified call routing information, wherein subsequent calls are routed using the modified call routing information.
  • Preferably, the communications system further comprises: determining means, responsive to a determination that a function has been selected for routing the call, for determining whether a time period for the function has expired; first routing means, responsive to a determination that a time period for the function has expired, for routing the call; and second routing means for routing the call using a call routing schedule based on time instead of using the sequence of destinations associated with the function.
  • Preferably, the communications system further comprises: first monitoring means for monitoring results from routing of the call; and second modifying means for automatically modifying the call routing information based on the results to form modified call routing information, wherein subsequent calls are routed using the modified call routing information.
  • The call may be routed to a subscriber associated with the function.
  • According to a fourteenth aspect of the present invention, there is provided a communications system for call routing a call, the communications system comprising: receiving means for receiving a call to a subscriber; routing means for routing the call to the subscriber using call a sequence of destinations associated with the subscriber; and modifying means, responsive to a success of routing the call to the subscriber to a destination within the sequence of destinations, for automatically modifying the sequence of destinations used to call the subscriber, wherein the sequence of destinations is modified to favor destinations with successful call completions.
  • Preferably, the communications system further comprises: modifying means, responsive to detecting initiation of a call by the subscriber from an origin absent from the sequence of destinations, for modifying the sequence of destinations to include the origin as a destination within the sequence of destinations.
  • The origin may be included as a destination within the sequence of destinations for a period of time.
  • The calling line identifier may be recorded to identify the origin from which the subscriber initiated the call.
  • The sequence of destinations may be associated with a time slot.
  • The sequence of destinations may be associated with a function.
  • According to a fifteenth aspect of the present invention, there is provided a communications system for call routing a call, the communications system comprising: receiving means for receiving a call to a subscriber; routing means for routing the call using call routing information associated with the subscriber; monitoring means for monitoring results from routing of the call to the subscriber; and modifying means for automatically modifying the call routing information based on the results to form modified call routing information, wherein subsequent calls are routed using the modified call routing information.
  • Preferably, the means of routing the call comprises: first routing means for routing the call to a main destination; and second routing means, responsive to an absence of an answer at the main destination, for routing the call to an alternate destination.
  • According to a sixteenth aspect of the present invention, there is provided a communications system for call routing a call, the communications system comprising: receiving means for receiving a call to a subscriber; identifying means for identifying a time of the call; first routing means for routing the call to the first destination in an ordered set of destinations for the subscriber based on the time of the call; second routing means, responsive to an absence of an answer of the call at the first destination, for routing the call to a second destination in the ordered set of destinations; responsive to an absence of an answer of the call at the second destination, routing the call to a third destination in the ordered set of destinations; responsive to an answer of the call at the third destination for a number of times, selecting the third alternate destination as the first alternate destination.
  • Preferably, the second alternate destination is selected as the first alternate destination for a temporary period of time.
  • More preferably, the temporary period of time is a day.
  • Preferably, the communications system further comprises: setting means, responsive to the third destination being answered over a period of time, for setting the third destination as the second destination.
  • Preferably, the communications system further comprises: setting means, responsive to the second destination being answered over a period of time, for setting the second destination as the first destination.
  • According to a seventeenth aspect of the present invention, there is provided a graphical user interface for use in routing calls in communications system, the graphical user interface comprising: displaying means for displaying a set of icons, wherein each icon within the set of icons is associated with a function used to route calls to a party; and sending means, responsive to a selection of an icon within the set of icons, for sending a message to the communications system to route calls to the party using a calling sequence associated with the function.
  • Preferably, the graphical user interface further comprises: displaying means for displaying a scheduling icon; and sending means, responsive to a selection of the scheduling icon, for sending a message to the communications system to route calls to the party using a time based calling schedule.
  • Preferably, the selection of an icon from the set of icons overrides any previous selection of an icon from the set of icons. More preferably, the selection of the icon overrides a previous selection of the scheduling icon.
  • The data processing system may be a personal computer.
  • The data processing system may be a mobile phone.
  • The data processing system may be a personal digital assistant.
  • The present invention provides an improved method and apparatus for routing a call to a subscriber who may be reached at a number of different locations. The present invention includes a mechanism that is function based rather than time based for locating a subscriber at different locations. The function may be, for example, "at home" or "going to work". More specifically, a method in a communications system for routing a call includes receiving a call request to a subscriber and identifying call routing information for the subscriber. In order to identify call routing information for the subscriber, a determination is made as to whether function based routing has been selected. If so, the call may be routed using a sequence of destinations associated with the function. If function based selection is not active, then the call is routed using a scheduled based on time.
  • The present invention also allows for automatically changing and extending routing information. The changes may be based on successful call completions to different destinations. These changes are made both for the call routing schedule and the function. An interface is provided to the user to select the type of call location mechanism, call routing schedule or function. The interface may be, for example, be provided over the Internet or through a telephone device.
  • Other aspects and features of the present invention will become apparent to those ordinarily skilled in the art upon review of the following description of specific embodiments of the invention in conjunction with the accompanying figures.
  • At least one embodiment of the invention will now be described, by way of example only, with reference to the accompanying drawings, in which:
  • Figure 1 is a block diagram of a communications system depicted in accordance with a preferred embodiment of the present invention;
  • Figure 2 is a block diagram of a service control point (SCP) depicted in accordance with a preferred embodiment of the present invention;
  • Figure 3 is a block diagram illustrating a data processing system in which the present invention may be implemented;
  • Figure 4 is an illustration of an interface used to view and select routing sequences depicted in accordance with a preferred embodiment of the present invention;
  • Figure 5 is an illustration of a GUI used to set up and modify a routing schedule and functions in accordance with a preferred embodiment of the present invention;
  • Figure 6 is an illustration of a GUI in which a subscriber may change call routing of calls to the subscriber accordance with a preferred embodiment of the present invention;
  • Figure 7 is a flowchart for a process displaying a call routing schedule and functions accordance with a preferred embodiment of the present invention;
  • Figure 8 is a flowchart of a process for modifying and adding functions depicted in accordance with a preferred embodiment of the present invention;
  • Figure 9 is a flowchart of a process for routing calls in accordance with a preferred embodiment of the present invention;
  • Figure 10 is a flowchart of a process for routing calls in accordance with a preferred embodiment of the present invention;
  • Figure 11 is a flowchart of a process for routing a call to a subscriber using a call routing schedule in accordance with a preferred embodiment of the present invention;
  • Figure 12 is a flowchart for routing calls using a subscriber selected function in accordance with a preferred embodiment of the present invention;
  • Figure 13 is a flowchart of a process for making long term changes to a routing schedule in accordance with a preferred embodiment of the present invention; and
  • Figure 14 is a flowchart for adapting a call routing schedule using subscriber initiated activity in accordance with a preferred embodiment of the present invention.
  • With reference now to the figures and in particular with reference now to Figure 1, a block diagram of a communications system is depicted in accordance with a preferred embodiment of the present invention. Communications system 100 is an example of a communications system in which the processes and apparatus of the present invention may be implemented to provide a more user friendly and more efficient mechanisms for routing calls to a subscriber who may be contacted at one of a number of telephones or other communication devices based on their current activity schedule.
  • Communications system 100 includes service switching points (SSPs) 102-112 interconnected by T1 trunks 114-122. A SSP is a local exchange in a telephone network. A SSP may be a combination of a voice switch and SS7 switch or an adjunct computer connected to the voice switch of a local exchange. Each switch includes a switch fabric with input and output ports used to route a call to a destination. The SSP provides the functionality of communicating with the voice switch via the use of primitives in creating packets, or signal units, needed for transmission in a SS7 network. In routing calls, a SSP will send requests or queries to a database to determine where to route a call. The SSP will use the information provided by the call party, such as dialed digits, to determine how to connect the call. In this example, SSP 112 is a tandem access SSP, which is employed to provide access between networks within communications system 100, such as providing a connection between two local exchange carriers (LECs) within communications system 100. For example, SSP 102-106 may be located in one LEC while SSPs 108-110 may be located in another LEC. SSPs 102-106 are connected to signaling transfer (STP) 124 by signaling links 126-130 while SSPs 108-110 are connected to STP 132 by signaling links 134 and 136.
  • All SS7 packets travel from one SSP to another through the services of a STP. The STP serves as a router in the SS7 network. The STP also is typically adjunct to a voice switch. Also found in communications system 100 are service control points (SCPs) 138 and 140. SCP 138 is connected to STP 124 by signaling link 142 while SCP 140 is connected to STP 132 by signaling link 144. A SCP serves as an interface to various databases, which may contain information about subscriber services, routing of special service numbers, calling card validation and fraud protection, and AIN services. The SCP is usually a computer used as a front end to a computer database.
  • Each SSP may communication with a SCP, such as SCP 138 or 140 using TCAP messages to ascertain a particular call. A SCP may communicate with other SCPs by means of ISDN user part initial address messages (ISUP-IAM) to set up trunk connections for calls.
  • Further, communications system 100 includes a cellular network 146 which has a connection to SSP 138 through T1 line 148. Signaling and routing information may be sent between STP 124 and cellular network 136 through signaling line 150. Telephone devices, such as telephones 152-164 are connected to SSPs 102-106 and SSPs 108 and 110 in communications system 100. Through this network, a user at one telephone may call a user at another telephone or a user at a mobile station, such as mobile station 166 in cellular network 146. Additionally, communications system 100 may include Internet 168, which provides a mechanism for a subscriber to access subscriber information stored in a SCP 138. Communications system 100 may exclude shown components and/or include other components not shown in the depicted example. The illustration in Figure 1 is not meant to imply architectural limitations on the present invention.
  • The present invention provides a method, apparatus, and instructions for using information from successful call attempts to modify the call sequences in order to favor call set up to the location that is identified as having previously answered calls during a specific time period. For example, a subscriber may be located at different locations or telephones depending on the time of the day and the day of the week. The calling sequence may identify different numbers at which the subscriber may be contacted. Furthermore, if the subscriber uses the service as a full personal agent environment to which they place calls then the system notes the last used caller line identification (CLI) of the subscriber and uses that as a potential contact location. The mechanism of the present invention also allows a subscriber to setup the sequence of numbers to call the subscriber based on functions or activities of the subscriber. These functions may be, for example, in the car, at work, at home, golfing, or at the gym in which the function is associated with a particular number or list of numbers. A mechanism in the form of a graphical user interface (GUI) is provided to allow a subscriber to setup and change the sequence of numbers used to reach the subscriber. This sequence of numbers is also referred to as a routing list or call routing schedule. The function may be setup using time slots or activated by the subscriber through the GUI or a series of digits using a phone menu system. The activated function may stay activated until cancelled or until after a selected period of time. When such a function is not active, the time based routing mechanism is used. With reference now to Figure 2, a block diagram of a service control point (SCP) is depicted in accordance with a preferred embodiment of the present invention. The process of the present invention may be implemented within SCP 200.
  • SCP 200 is an example of a SCP in which the process of the present invention may be implemented. SCP 200 includes a bus 202 interconnecting a processing unit 204, memory 206, input/output (I/O) unit 208, I/O unit 210, and storage device 212. Storage device 212 includes a number of databases, such as, for example, line number portability (LNP) 214, call management services database (CMSDB) 216, and call routing database 218. Calls to a subscriber may be received from a STP through I/O unit 208. In addition, SCP 200 may access other databases located remotely from SCP 200 through I/O unit 210. For example, a business services database (BSDB) is used to allow subscribers to store call processing instructions, network management procedures, and other data relevant to a private network of the subscriber. Such a database is not located within SCP 200, but may be accessed through I/O unit 210. In the depicted example, information relating to routing lists or sequences of numbers used to call a subscriber may be stored within call routing database 218. The instructions for executing the processes of the present invention may be stored within memory 206 and executed by processing unit 204.
  • With reference now to Figure 3, a block diagram illustrates a data processing system in which the present invention may be implemented. Data processing system 300 is an example of a computer at which a subscriber may set, modify, and activate various call routing functions of the present invention. Data processing system 300 employs a peripheral component interconnect (PCI) local bus architecture. Although the depicted example employs a PCI bus, other bus architectures such as Micro Channel and ISA may be used. Processor 302 and main memory 304 are connected to PCI local bus 306 through PCI bridge 308. PCI bridge 308 also may include an integrated memory controller and cache memory for processor 302. Additional connections to PCI local bus 306 may be made through direct component interconnection or through add-in boards. In the depicted example, local area network (LAN) adapter 310, SCSI host bus adapter 312, and expansion bus interface 314 are connected to PCI local bus 306 by direct component connection. In contrast, audio adapter 316, graphics adapter 318, and audio/video adapter 319 are connected to PCI local bus 306 by add-in boards inserted into expansion slots. Expansion bus interface 314 provides a connection for a keyboard and mouse adapter 320, modem 322, and additional memory 324. SCSI host bus adapter 312 provides a connection for hard disk drive 326, tape drive 328, and CD-ROM drive 330. Typical PCI local bus implementations will support three or four PCI expansion slots or add-in connectors.
  • An operating system runs on processor 302 and is used to coordinate and provide control of various components within data processing system 300 in Figure 3. The operating system may be a commercially available operating system such as OS/2, which is available from International Business Machines Corporation. "OS/2" is a trademark of International Business Machines Corporation.
  • Those of ordinary skill in the art will appreciate that the hardware in Figure 3 may vary depending on the implementation. Other internal hardware or peripheral devices, such as flash ROM (or equivalent nonvolatile memory) or optical disk drives and the like, may be used in addition to or in place of the hardware depicted in Figure 3. Also, the processes of the present invention may be applied to a multiprocessor data processing system.
  • For example, data processing system 300, if optionally configured as a network computer, may not include SCSI host bus adapter 312, hard disk drive 326, tape drive 328, and CD-ROM 330, as noted by dotted line 332 in Figure 3 denoting optional inclusion. In that case, the computer, to be properly called a client computer, must include some type of network communication interface, such as LAN adapter 310, modem 322, or the like. As a further example, data processing system 300 may be a Personal Digital Assistant (PDA) device which is configured with ROM and/or flash ROM in order to provide non-volatile memory for storing operating system files and/or user-generated data. Additionally, data processing system 300 may be a smart phone containing a processor and instructions used to set up and modify routing schedules and to turn on and turn off routing functions. Data processing system 300 may make these changes through a graphical user interface and a communications link to communications system 100 in Figure 1. For example, a browser program, such as, for example, Netscape Communicator from Netscape Communications Corporation, may be used by a subscriber to access and modify subscriber information for routing calls.
  • The depicted example in Figure 3 and above-described examples are not meant to imply architectural limitations. For example, data processing system 300 also may be a notebook computer or hand held computer in addition to taking the form of a PDA. Data processing system 300 also may be a kiosk or a Web appliance.
  • Figures 4-6 illustrate graphical user interfaces (GUls) that may be employed to allow a subscriber to set up and modify call routing information. The GUls in these examples are windows displayed in a data processing system. The actual presentation may take different forms depending on the implementation. For example, the windows may be those for a browser that display pages received from a device or node, such as a SCP on the communications system. In such a case, the subscriber accesses the subscriber's routing information through the World Wide Web on the Internet via a TCP/IP connection. These GUls are examples of an interface that may be used by a subscriber or other user to route calls based on a function or based on a call routing schedule that is time based. Interaction with the GUI causes messages or calls to be sent to the communications system to activate and deactivate different calling sequences depending on whether a function or call routing schedule is selected by the subscriber. In this manner an intuitive interface is provided to a subscriber to easily change the routing of calls to the subscriber.
  • With reference now to Figure 4, an illustration of an interface used to view and select routing sequences is depicted in accordance with a preferred embodiment of the present invention. GUI 400 provides an interface on a data processing system, such as, for example, data processing system 300 in Figure 3, to view and initiate call routing functions. The data processing system may take many forms, such as, for example, a personal computer, a personal digital assistant, or a digital wireless phone. The information viewed by the subscriber may be received by the data processing system over a communications link established to a SCP. Messages or request may be sent back to the SCP over the same link.
  • GUI 400 includes a window 402 containing a call routing schedule 404 and a function schedule 406. In the depicted example, call routing schedule 404 is a time-based schedule and shows that the subscriber is in the car between 8:00 a.m. and 8:30 a.m.. From 8:30 a.m. to 12:00 p.m. the subscriber may be contacted at work. From 12:00 p.m. to 1:00 p.m. the subscriber is at the gym as shown in call routing schedule 404. Additional times and locations are not shown, but may be viewed by manipulating scroll bar 408. Changes to the schedule displayed in call routing schedule 404 may be made by selecting change button 410. Additionally in window 402, function list includes selectable functions that may be activated by selecting "on" button 412. A selected function may be deactivated by selecting "off" button 414. In the depicted example, the functions include, "in car", "at work", "at home", and "at gym". By selecting a function and turning the function "on", call routing schedule 404 may be overridden such that calls are routed to the selected function.
  • With reference next to Figure 5, an illustration of a GUI used to set up and modify a routing schedule and functions is depicted in accordance with a preferred embodiment of the present invention. GUI 500 contains a window 502 that is displayed in response to a selection of change button 410 in Figure 4. Window 502 is used by a subscriber to change the call routing schedule.
  • Window 502 includes a function list 504 in which a number of different locations may be selected for use in calling the subscriber. Function list 504 is a list of functions that have been set up for the subscriber. In this example, "in car", "at work", "at gym", "at home", and "golfing" are the functions that have been set up for the subscriber. Selection of add button 506 will allow a user to add a new function in field 508. A time period for the function may be set in field 510. A time period allows for the user to set a length of time during which the function will be active and used in place of the call routing schedule, which is a time-based call routing schedule. After the time period has elapsed, the function will deactivate and calls made to the subscriber will be processed using the routing schedule. Additionally, the user may enter a start time in field 512 and an end time in field 514 during which a particular number associated with the function will be used to reach the subscriber. These two times are used to define a time slot. One or more numbers may be entered into fields 516, 518, and 520 for the particular function. These numbers are also referred to as directory numbers. Numbers may be entered into additional fields not shown. These fields may be shown by manipulating controls 522 and 524. The numbers entered in these fields have a priority used to call the subscriber. In this example, field 516 has the highest priority, field 518 has the next highest priority, and field 520 has the lowest priority. As a result, the number entered in field 516 will be called first when attempting to call the subscriber for the particular function. The number in field 518 will be called next if the subscriber cannot be reached at the number entered into field 516. "Delete" button 526 may be used to delete an entire function in function list 504. "Ok" button 520 is used to accept changes made by the subscriber. Selection of "Ok" button 520 causes any changes to be stored for use in routing calls for the subscriber. "Cancel" button 530 is used to cancel or prevent any changes entered by the subscriber from being stored or used to route calls.
  • Turning next to Figure 6, an illustration of a GUI in which a subscriber may change call routing of calls to the subscriber is depicted in accordance with a preferred embodiment of the present invention. GUI 600 includes a window 602 in which a subscriber may select different routing options for calls made to the subscriber. In this example, schedule 604 is an icon or image that is selectable by the subscriber to initiate routing of calls based on a call routing schedule, which is time-based. Window 602 also displays "at home" 606, "at work" 608, "in car" 610, "golfing" 612, which are icons or images selectable by the subscriber to initiate call routing associated with a function with which the subscriber is familiar. Selection of one of these icons or images results in a request being sent to a SCP to use the destinations set up for the particular function to route calls to the subscriber. In the depicted examples, these destinations are represented by telephone numbers or other call routing information in a database used to route calls between a caller and a call party. If schedule 604 had been previously selected by the subscriber, a selection of one of the function icons or images will result in the calling sequence associated with selected icon or image being used in place of the call routing schedule. This replacement or change in call routing may remain in effect until a different function is selected or until the icon or image for the call routing schedule, schedule 604, is selected. Optionally, time period may be set for a function during which the calling sequence associated with the function will be used to route calls. When the time period expires, the routing will return to the call routing schedule or some other default function.
  • Figures 7-14 illustrate flowcharts of processes used in routing calls to a subscriber in which a call received for the subscriber may be routed to a number of destinations. With reference now to Figure 7, a flowchart for a process displaying a call routing schedule and functions is depicted in accordance with a preferred embodiment of the present invention. The flowchart in Figure 7 is employed to process input to the graphical user interface illustrated in Figure 4. The process begins by displaying a window containing a call routing schedule and functions for a subscriber (step 700). This window may be window 402, as illustrated in Figure 4. Thereafter, the process waits to receive user input (step 702). Upon receiving a user input that selects a function in the GUI, the selected function is highlighted (step 704) with the process then returning to step 702 to wait for additional user input. If the user input received is a selection of the "on" button, the selected function is activated (step 706) with the process returning to step 702. Activating the function using the "on" button results in calls to the subscriber being directed towards one or more numbers in an ordered list associated with the function. For example, if the function is "in car", a call to the subscriber is routed first to the users mobile number. If no answer is received at the users mobile number, then the call is routed to the user's work number. If no answer is received at the work number, the call may be routed to a voice mailbox for the user. The sequence of call routing is used in place of any sequence of numbers valid for the time in which the call was made. This function will continue until turned off. Alternatively, a time period may be set in which the function will take president over a time-based routing schedule. When the time period is expired, the time function will deactivate and the time-based routing schedule will again be used to route calls to the subscriber.
  • Selection of the "off" button as a user input results in the function being deactivated (step 708) with the process then returning to step 702. The deactivation of the function results in routing the calls using the time-based call routing schedule. Selection of the modify button results in a display of a modification window (step 710) with the process terminating thereafter. In the depicted examples, the modification window is window 502 in Figure 5.
  • Turning now to Figure 8, a flowchart of a process for modifying and adding functions is depicted in accordance with a preferred embodiment of the present invention. The process begins by displaying a list of functions for the subscriber (step 800). This display is in the form of a window, such as window 502 in Figure 5. Thereafter, the process waits for user input (step 802). Upon receiving selection of a function, the selected function is then highlighted (step 804) with the process then returning to step 802 to wait for additional user input. Upon receiving selection of the delete button as an input, the selected function will be deleted from the list of functions (step 806) with the process then returning to step 802. Upon receiving user input to add a function, the process receives the function name (step 808). The function named received is entered in a field in the window. Thereafter, one or more phone numbers may be entered by the subscriber (step 810). These phone numbers may be placed in an order in which calls are to be routed to the subscriber. A time slot is entered (step 812). Entry of the time slot may be made by entering a start and stop time for the function. Additionally, a time period may be entered for the function (step 814) with the process then returning to step 802.
  • Upon receiving selection of okay button as an input, entries made in the fields for the function will be stored (step 816) with the process terminating thereafter. Receiving selection of the cancel button will result in the process terminating without saving any changes.
  • In Figure 9, a flowchart of a process for routing calls is depicted in accordance with a preferred embodiment of the present invention. This process is initiated when a subscriber requests a change in call routing options. In the depicted example, the request is made over the Internet using a TCP/IP connection. The process begins by identifying the subscriber making the request (step 900). Subscriber information is obtained from a database of subscribers, such as call routing database 218 in Figure 2 (step 902). The information includes information needed to display various routing options for the subscriber. A page or display is created using the subscriber information (step 904), and the page is sent to the subscriber (step 906). The page is similar to GUI 700 in Figure 7.
  • The process then receives user input (step 908). A determination is made as to whether the user input is one initiating a function (step 910). If the user input initiates a function for call routing, then the routing of the calls to the subscriber is switched to use a group of destinations to find for the selected function (step 912). Thereafter, a determination is made as to whether a time period has been set for this function (step 914). If a time period has been set or defined, a timer is set to indicate when the routing of calls should be switched back to the call routing schedule (step 916) with the process then returning to step 908. Otherwise, the process proceeds directly back to step 908. In step 916, the routing of calls may be switched back to some other group of destinations instead of those defined by the call routing schedule. For example, the routing of calls may be switched to some default function or the subscriber may be queried for another selection.
  • With reference again to step 910, if the user input is not a function initiation, a determination is made as to whether the user input initiates the call routing schedule (step 918). If the call routing schedule is to be initiated, the routing of calls for the subscriber is switched to a set of destinations defined in the call routing schedule (step 920) with the process then returning to step 908. Otherwise, a determination is made as to whether the subscriber has exited the process (step 922). If the subscriber has exited the process terminates. Otherwise, the process returns to step 908.
  • Turning next to Figure 10, a flowchart of a process for routing calls is depicted in accordance with a preferred embodiment of the present invention. The process begins by receiving a call from a caller to a subscriber (step 1000). The subscriber is then identified (step 1002). Subscriber information is retrieved for the identified subscriber (step 1004). A determination is then made as to whether routing is to be performed by a function selected by the subscriber (step 1006). If routing is to be made using a function, a determination is made as to whether a timer has expired for the selected function (step 1008). If the timer has not expired, then routing of the call is initiated using the selected function (step 1010) with the process terminating thereafter.
  • With reference again to step 1008, if the timer has expired, the process then switches to the call routing schedule (step 1012). Call routing is then initiated using the call routing schedule (step 1014) with the process terminating thereafter.
  • With reference again to step 1006, if routing is not to be made using a function, then process proceeds directly to step 1014 as described above.
  • With reference now to Figure 11, a flowchart of a process for routing a call to a subscriber using a call routing schedule is depicted in accordance with a preferred embodiment of the present invention. The process begins by identifying in the call routing schedule, the current time slot that is to be used to route the call (step 1100). The main destination for the time slot is called (step 1102). The main destination in this example is the first number or the number having the highest priority that is associated with the time slot. Thereafter, a determination is made as to whether the call has been completed (step 1104). This determination is made by seeing whether the subscriber has answered the phone within a selected period of time. If the call has not been completed, A determination is then made as to whether there are uncalled alternate destinations present for the time slot (step 1106). If alternate destinations that have been uncalled are present, the next alternate destination is identified for the time slot and called (step 1108). Destinations for the time slot are placed in an order in which calls should be made to the subscriber. A determination is made as to whether the call has been completed (step 1110). If the call has not been completed, the process returns to step 1106.
  • With reference again to step 1110, if the call is completed, the process then increments a counter for the destination and time slot (step 1112). A determination is made as to whether the counter is greater than a threshold value (step 1114). The counter counts the number of successful connections to the destination. This counter is used to determine the likelihood of this destination being the preferred destination for this time period/function. If the counter is greater than a threshold value, the alternate destination is then set as the first alternate destination (step 1116) with the process terminating thereafter. In the depicted example, the threshold may be set to two. Thus, if three calls are successfully completed, the alternate destination will be set or made the first alternate destination. In the depicted examples, this change in step 1116 is temporary and good for a single day or 24-hour period.
  • With reference again to step 1106, if uncalled alternated destinations are not present for the time slot, a determination is made as to whether another time slot is present (step 1118). If another time slot is present, the next time slot in the sequence is selected (step 1120) with the process then returning to step 1102. If additional time slots are not present, a default action is performed (step 1122) with the process terminating thereafter. This default action may take various forms. For example, the caller may be given a message that the subscriber is unavailable. Alternatively, the caller may be sent to a voice mail box for the subscriber. With reference again to step 1104, if the call is completed, the process terminates, as does step 1114 if the threshold is less than the counter.
  • In Figure 12, a flowchart for routing calls using a subscriber selected function is depicted in accordance with a preferred embodiment of the present invention. The process begins by calling a main destination from a group of destinations associated with the selected function (step 1200). A determination is made as to whether the call was completed (step 1202). If the call was not completed, a determination is made as to whether uncalled alternate destinations are present (step 1204). If uncalled alternate destinations are present, the next destination is selected (step 1206). The group of destinations for the group of functions are placed in an order in which calls should be attempted. The selected destination is then called (step 1208). A determination is made as to whether the call to the alternate destination was completed (step 1210). If the call was not completed, the process returns to step 1204. Otherwise, the process then increments a counter for the destination (step 1212).
  • Next, a determination is made as to whether the counter is greater than a threshold value (step 1214). The counter counts the number of successful connections to the destination. This counter is used to determine the likelihood of this destination being the preferred destination for this time period/function. If the counter is greater than a threshold value, the alternate destination is then set as the first alternate destination (step 1216) with the process terminating thereafter. In the depicted examples, this change in step 1216 is temporary and good for a single day or 24-hour period. With reference again to step 1214, if the counter is not greater than the threshold, the process also terminates.
  • With reference again to step 1204, if uncalled alternate destinations are not present, then a default action is performed (step 1218) with the process terminating thereafter. This default action may be, for example, a message indicating the unavailability of the subscriber or sending the caller to a voice mail box for the subscriber. With reference again to step 1202, if the call to the main destination is completed, the process terminates.
  • With reference now to Figure 13, a flowchart of a process for making long term changes to a routing schedule is depicted in accordance with a preferred embodiment of the present invention. The process begins by retrieving a routing schedule for the subscriber (step 1300). Next, a subscriber call history is retrieved (step 1302). The time period for this history may vary depending on the implementation. For example, the history may be a one week period or a one month period. The process selects a time slot from the routing schedule for processing (step 1304). The destination having the most successful call completions is identified (step 1306). A determination is then made as to whether this destination is a first alternate destination (step 1308). If the destination is the first alternate destination, the destination is then set as the main destination for the time slot (step 1310). A determination is then made as to whether more unprocessed time slots are present (step 1314). If additional unprocessed time slots are present, the process returns to step 1304. Otherwise, the process terminates.
  • With reference again to step 1308, if the destination is not a first alternate destination, a determination is made as to whether the destination is the main destination (step 1312). If the destination is not the main destination, then the destination is set as the first alternate destination (step 1316) with the process then proceeding to step 1314 as described above. If the destination is the main destination, the process proceeds directly to step 1314.
  • With reference now to Figure 14, a flowchart for adapting a call routing schedule using subscriber initiated activity is depicted in accordance with a preferred embodiment of the present invention. The process begins by detecting a subscriber initiated call (step 1400). Thereafter, the calling line identifier (CLI) is obtained for the call (step 1402). The CLI is then stored as the first alternate destination (step 1404) with the process terminating thereafter.
  • The processes described above in the flowcharts are used in a SCP in the depicted examples, but may be employed elsewhere depending on the implementation. For example, some of the steps may be implemented at a data processing system used by a subscriber.
  • Those of ordinary skill in the art will appreciate that the processes of the present invention are capable of being distributed in the form of a computer readable medium of instructions and a variety of forms for use in a communications system. Further, the present invention applies equally regardless of the particular type of signal bearing media actually used to carry out the distribution. Examples of computer readable media include recordable-type media such a floppy disc, a hard disk drive, a RAM, and CD-ROMs and transmission-type media such as digital and analog communications links.
  • The description of the present invention has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art. For example, although the depicted example provides an interface through the Internet, other interfaces may be used to select and modify routing schemes. For example, the interface may be a voice response system using voice recognition which may be employed to set up, modify, and select routing mechanisms. Additionally, call routing schemes or numbers used may be sent to the user via billing records. In this manner, a subscriber may see changes to the order in which destinations are called. The embodiment was chosen and described in order to best explain the principles of the invention, the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.

Claims (32)

  1. A method in a communications system for routing a call, the method comprising:
    receiving a call;
    identifying call routing information for the call;
    responsive to identifying call routing information, determining whether a function has been selected for routing the call; and
    responsive to a determination that a function has been selected for routing the call, routing the call using a sequence of destinations associated with the function.
  2. The method of claim 1 further comprising:
    responsive to identifying call routing information, determining whether a call routing schedule based on time has been selected for routing the call; and
    responsive to a determination that a call routing schedule based on time is to be used, routing the call using a call routing schedule based on time.
  3. The method of claim 1, further comprising:
    responsive to a determination that a function has been selected for routing the call, determining whether a time period for the function has expired;
    responsive to a determination that a time period for the function has expired, routing the call; and
    routing the call using a call routing schedule based on time instead of using the sequence of destinations associated with the function.
  4. The method of claim 1 further comprising:
    monitoring results from routing of the call; and
    automatically modifying the call routing information based on the results to form modified call routing information, wherein subsequent calls are routed using the modified call routing information.
  5. The method of claim 1, wherein the call is routed to a subscriber associated with the function.
  6. The method of claim 2 further comprising:
    monitoring results from routing of the call to the subscriber; and
    automatically modifying the call routing information based on the results to form modified call routing information, wherein subsequent calls are routed using the modified call routing information.
  7. A method in a communications system for call routing a call, the method comprising:
    receiving a call to a subscriber;
    routing the call to the subscriber using a sequence of destinations associated with the subscriber; and
    responsive to a success of routing the call to the subscriber to a destination within the sequence of destinations, automatically modifying the sequence of destinations used to call the subscriber, wherein the sequence of destinations is modified to favor destinations with successful call completions.
  8. The method of claim 7, wherein the sequence of destinations is modified to favor destinations with a selected level of call completions.
  9. The method of claim 7 further comprising:
       responsive to detecting initiation of a call by the subscriber from an origin absent from the sequence of destinations, modifying the sequence of destinations to include the origin as a destination within the sequence of destinations.
  10. The method of claim 8, wherein the origin is included as a destination within the sequence of destinations for a period of time.
  11. The method of claim 8, wherein the calling line identifier is recorded to identify the origin from which the subscriber initiated the call.
  12. The method of claim 7, wherein the sequence of destinations are associated with a time slot.
  13. The method of claim 7, wherein the sequence of destinations are associated with a function.
  14. A method in a communications system for call routing a call, the method comprising:
    receiving a call to a subscriber;
    routing the call using call routing information associated with the subscriber;
    monitoring results from routing of the call to the subscriber; and
    automatically modifying the call routing information based on the results to form modified call routing information, wherein subsequent calls are routed using the modified call routing information.
  15. The method of claim 14, wherein the step of routing the call comprises:
    routing the call to a main destination; and
    responsive to an absence of an answer at the main destination, routing the call to an alternate destination.
  16. A method in a communications system for call routing a call, the method comprising:
    receiving a call to a subscriber;
    identifying a time of the call;
    routing the call to the first destination in an ordered set of destinations for the subscriber based on the time of the call;
    responsive to an absence of an answer of the call at the first destination, routing the call to a second destination in the ordered set of destinations;
    responsive to an absence of an answer of the call at the second destination, routing the call to a third destination in the ordered set of destinations; and
    responsive to an answer of the call at the third destination for a number of times, selecting the third alternate destination as the first alternate destination.
  17. The method of claim 16, wherein the second alternate destination is selected as the first alternate destination for a temporary period of time.
  18. The method of claim 17, wherein the temporary period of time is a day.
  19. The method of claim 16 further comprising:
       responsive to the third destination being answered over a period of time, setting the third destination as the second destination.
  20. The method of claim 16 further comprising:
       responsive to the second destination being answered over a period of time, setting the second destination as the first destination.
  21. A method in a graphical user interface for use in routing calls in a communications system, the method comprising the computer implemented steps of:
    displaying a set of icons, wherein each icon within the set of icons is associated with a function used to route calls to a party; and
    responsive to a selection of an icon within the set of icons, sending a message to the communications system to route calls to the party using a calling sequence associated with the function.
  22. The method of claim 21 further comprising:
    displaying a scheduling icon; and
    responsive to a selection of the scheduling icon, sending a message to the communications system to route calls to the party using a time based calling schedule.
  23. The method of claim 22, wherein the selection of an icon from the set of icons overrides any previous selection of an icon from the set of icons.
  24. The method of claim 23, wherein the selection of the icon overrides a previous selection of the scheduling icon.
  25. A switch comprising:
    an input for receiving a call for a party;
    signaling interface for sending a request to a database for call routing information, wherein call routing information from the database includes a calling sequence for a function associated with the party in response to the party previously selecting the function; and
    a switch fabric, wherein the call is routed from the input though the switch fabric to an output to a destination returned by the database using the calling sequence for the function.
  26. The switch of claim 25, wherein the request sent from the signaling interface to the database is sent to a service control point, which provides an interface to the database.
  27. A service control point comprising:
    an input/output interface, wherein request for routing information is received from a requestor at the input/output interface and routing information returned to the requestor;
    a database containing a plurality of calling sequences for subscribers; and
    a processing unit connected to the input/output interface and the database, wherein the processing unit has a plurality of modes of operation including:
    a first mode of operation in which the processing unit monitors for requests for routing information;
    a second mode of operation, responsive to receiving a request, in which the processing unit identifies routing information for the call;
    a third mode of operation, responsive to identifying routing information for the call, in which the processing unit determines whether a function has been selected for routing the call;
    a fourth mode of operation, responsive to a determination that a function has been selected for routing the call, in which the processing unit sends routing information for the call using a sequence of destinations associated with the function; and
    a fifth mode of operation, responsive to an absence of a determination that a function has been selected for routing the call, in which the processing unit sends routing information for the call using a call routing schedule based on time.
  28. A communications system for routing a call, the communications system comprising:
    receiving means for receiving a call;
    identifying means for identifying call routing information for the call;
    determining means, responsive to identifying call routing information, for determining whether a function has been selected for routing the call; and
    routing means, responsive to a determination that a function has been selected for routing the call, for routing the call using a sequence of destinations associated with the function.
  29. A communications system for call routing a call, the communications system comprising:
    receiving means for receiving a call to a subscriber;
    routing means for routing the call to the subscriber using call a sequence of destinations associated with the subscriber; and
    modifying means, responsive to a success of routing the call to the subscriber to a destination within the sequence of destinations, for automatically modifying the sequence of destinations used to call the subscriber, wherein the sequence of destinations is modified to favor destinations with successful call completions.
  30. A communications system for call routing a call, the communications system comprising:
    receiving means for receiving a call to a subscriber;
    routing means for routing the call using call routing information associated with the subscriber;
    monitoring means for monitoring results from routing of the call to the subscriber; and
    modifying means for automatically modifying the call routing information based on the results to form modified call routing information, wherein subsequent calls are routed using the modified call routing information.
  31. A communications system for call routing a call, the communications system comprising:
    receiving means for receiving a call to a subscriber;
    identifying means for identifying a time of the call;
    first routing means for routing the call to the first destination in an ordered set of destinations for the subscriber based on the time of the call;
    second routing means, responsive to an absence of an answer of the call at the first destination, for routing the call to a second destination in the ordered set of destinations;
    responsive to an absence of an answer of the call at the second destination, routing the call to a third destination in the ordered set of destinations;
    responsive to an answer of the call at the third destination for a number of times, selecting the third alternate destination as the first alternate destination.
  32. A graphical user interface for use in routing calls in communications system, the graphical user interface comprising:
    displaying means for displaying a set of icons, wherein each icon within the set of icons is associated with a function used to route calls to a party; and
    sending means, responsive to a selection of an icon within the set of icons, for sending a message to the communications system to route calls to the party using a calling sequence associated with the function.
EP00308268A 1999-09-21 2000-09-21 Personal communications system Withdrawn EP1087628A3 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US400141 1982-07-20
US09/400,141 US6898274B1 (en) 1999-09-21 1999-09-21 Method and apparatus for adaptive time-based call routing in a communications system

Publications (2)

Publication Number Publication Date
EP1087628A2 true EP1087628A2 (en) 2001-03-28
EP1087628A3 EP1087628A3 (en) 2001-07-11

Family

ID=23582387

Family Applications (1)

Application Number Title Priority Date Filing Date
EP00308268A Withdrawn EP1087628A3 (en) 1999-09-21 2000-09-21 Personal communications system

Country Status (3)

Country Link
US (1) US6898274B1 (en)
EP (1) EP1087628A3 (en)
CA (1) CA2320610A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1895786A1 (en) * 2005-07-01 2008-03-05 Huawei Technologies Co., Ltd. A method and device for realizing intelligent call service
US7869799B2 (en) * 2005-07-28 2011-01-11 Research In Motion Limited Method and system for forwarding calls placed to a telecommunications destination
EP2242282A3 (en) * 2009-04-16 2011-10-19 Mitel Networks Corporation Extended cascaded ringing

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6691158B1 (en) * 2000-02-18 2004-02-10 Hewlett-Packard Development Company, L.P. E-service to manage contact information and track contact location
US20020160757A1 (en) * 2001-04-26 2002-10-31 Moshe Shavit Selecting the delivery mechanism of an urgent message
US20040240642A1 (en) * 2001-06-18 2004-12-02 Crandell Jeffrey L. Apparatus, systems and methods for managing incoming and outgoing communication
US7113775B2 (en) * 2001-07-06 2006-09-26 Siemens Communications, Inc. Self-learning intelligent call routing gatekeeper
US7113787B2 (en) * 2004-01-16 2006-09-26 Lucent Technologies Inc. Wireless priority service for intersystem call delivery
US20060020569A1 (en) * 2004-07-22 2006-01-26 Goodman Brian G Apparatus, system, and method for time-based library scheduling
US8111822B1 (en) * 2004-11-02 2012-02-07 TP Labs, Inc. System and method for mapping a voice identity across multiple telephony networks with time attributes
US8483102B1 (en) * 2004-11-02 2013-07-09 Tp Lab, Inc. System and method for mapping a voice identity across multiple telephony networks with time attributes
US7391858B1 (en) * 2004-11-02 2008-06-24 Tplab System and method for mapping a voice identity across multiple telephony networks with time attributes
US7672440B2 (en) * 2005-01-20 2010-03-02 International Business Machines Corporation Single point of contact personal communication system
CN1852357B (en) * 2005-07-01 2010-08-25 华为技术有限公司 Business integrating method
US8363805B2 (en) * 2006-06-22 2013-01-29 Burns Jr James M Media terminal adapter (MTA) initialization process display by use of an embedded caller name and caller identification
US8675856B2 (en) * 2006-08-01 2014-03-18 Cisco Technology, Inc. Media terminal adapter (MTA) routing of telephone calls based on caller identification information
US8233491B2 (en) * 2006-09-28 2012-07-31 Burns Jr James M Embedded media terminal adapter (EMTA) endpoint redirect mode
US8526583B2 (en) * 2006-09-29 2013-09-03 James M. Burns, JR. Media terminal adapter (MTA) local ringback option
US8130917B2 (en) 2006-12-21 2012-03-06 Verizon Data Services Llc Method and apparatus for group messaging
CA2705961C (en) * 2007-11-21 2016-07-05 Bce Inc. Method and apparatus for enabling a calling party to leave a voice message for a called party
CA2706392C (en) * 2007-11-23 2017-03-21 Matthew Rose Method and apparatus for enabling a calling party to leave a voice message for a called party in response to a command provided by the calling party
WO2009076739A1 (en) * 2007-12-19 2009-06-25 Bce Inc. Method and system for routing calls placed to a telephony identifier associated with a group of identities
WO2009079735A1 (en) * 2007-12-21 2009-07-02 Bce Inc. A method and system for establishing a connection with a packet-based application server
US8675830B2 (en) * 2007-12-21 2014-03-18 Bce Inc. Method and apparatus for interrupting an active telephony session to deliver information to a subscriber
CA2707020C (en) * 2007-12-27 2015-02-17 Bce Inc. Method and system for modifying routing information associated to a party
CA2695657C (en) * 2007-12-27 2015-11-24 Bce Inc. Method and system for processing calls in an architecture allowing a telephony identifier to be associated with a group of identities
US20090274287A1 (en) * 2008-04-30 2009-11-05 Hussain Nasser Al-Duwaish System and method for blocking mobile phone calls and messages
US8787872B2 (en) 2008-05-05 2014-07-22 Telecommunication Systems, Inc. Ingress/egress call module
US7903587B2 (en) * 2008-05-30 2011-03-08 Telecommunication Systems, Inc. Wireless emergency services protocols translator between ansi-41 and VoIP emergency services protocols
US8149997B2 (en) * 2008-05-30 2012-04-03 Telecommunication Systems, Inc. Protocol converting 9-1-1 emergency messaging center
US8102972B2 (en) * 2008-06-05 2012-01-24 Telecommunication Systems, Inc. Emergency services selective router interface translator
JP5338194B2 (en) * 2008-08-18 2013-11-13 日本電気株式会社 Telephone relay system, telephone relay device, computer program, and data processing method
CA2647920C (en) * 2008-12-24 2015-11-24 Bce Inc. Method and system for routing telephony communications together with modified calling party identifier information
US8971513B2 (en) * 2009-05-27 2015-03-03 Verizon Patent And Licensing Inc. Originating locator service
US9264537B2 (en) 2011-12-05 2016-02-16 Telecommunication Systems, Inc. Special emergency call treatment based on the caller
US9083771B2 (en) * 2012-06-21 2015-07-14 Ibasis, Inc. System and methods for multi-participant teleconferencing using preferred forms of telecommunication
US10057420B2 (en) * 2015-10-21 2018-08-21 At&T Intellectual Property I, L.P. Method and apparatus for identifying a user of a mobile device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994006236A2 (en) * 1992-08-26 1994-03-17 Bellsouth Corporation Personal number communications system
US5329578A (en) * 1992-05-26 1994-07-12 Northern Telecom Limited Personal communication service with mobility manager
US5793859A (en) * 1995-05-11 1998-08-11 Matthews Communications Management, Inc. Adaptive telephone number selection method and system

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4313035A (en) * 1980-01-18 1982-01-26 Bell Telephone Laboratories, Incorporated Method of providing person locator service
US5243645A (en) * 1990-11-01 1993-09-07 At&T Bell Laboratories Automatic system for forwarding of calls
US5276731A (en) * 1991-04-26 1994-01-04 Rolm Company Method and apparatus for handling incoming telephone calls
US5206901A (en) * 1991-12-23 1993-04-27 At&T Bell Laboratories Method and apparatus for alerting multiple telephones for an incoming call
US5706339A (en) * 1994-11-30 1998-01-06 At&T Technique for use in processing personal telephone calls
CA2146186A1 (en) 1995-04-03 1996-10-04 Edgar Martinez Enhanced efficient telephone number portability
US5793857A (en) 1995-09-27 1998-08-11 Northern Telecom Limited Method of using dynamic database to improve telephone number portability
US5905789A (en) 1996-10-07 1999-05-18 Northern Telecom Limited Call-forwarding system using adaptive model of user behavior
US6041114A (en) * 1997-03-27 2000-03-21 Active Voice Corporation Telecommute server
US6104799A (en) * 1997-10-24 2000-08-15 At&T Corp. Customer defined call setup
US6330322B1 (en) * 1998-09-14 2001-12-11 At&T Corp Method and apparatus for updating revertive telephone numbers

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5329578A (en) * 1992-05-26 1994-07-12 Northern Telecom Limited Personal communication service with mobility manager
WO1994006236A2 (en) * 1992-08-26 1994-03-17 Bellsouth Corporation Personal number communications system
US5793859A (en) * 1995-05-11 1998-08-11 Matthews Communications Management, Inc. Adaptive telephone number selection method and system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1895786A1 (en) * 2005-07-01 2008-03-05 Huawei Technologies Co., Ltd. A method and device for realizing intelligent call service
EP1895786A4 (en) * 2005-07-01 2008-03-05 Huawei Tech Co Ltd A method and device for realizing intelligent call service
US7869799B2 (en) * 2005-07-28 2011-01-11 Research In Motion Limited Method and system for forwarding calls placed to a telecommunications destination
EP2242282A3 (en) * 2009-04-16 2011-10-19 Mitel Networks Corporation Extended cascaded ringing
US8761746B2 (en) 2009-04-16 2014-06-24 Mitel Networks Corporation Extended cascaded ringing

Also Published As

Publication number Publication date
US6898274B1 (en) 2005-05-24
EP1087628A3 (en) 2001-07-11
CA2320610A1 (en) 2001-03-21

Similar Documents

Publication Publication Date Title
US6898274B1 (en) Method and apparatus for adaptive time-based call routing in a communications system
US6173049B1 (en) System and method for automated provision and customer selection of temporary caller identification services
US6104799A (en) Customer defined call setup
EP0990337B1 (en) A method and apparatus for routing calls based on the identification of the calling party or calling line
US5420914A (en) System and method for real time carrier selection
US7016482B2 (en) Method and system of providing caller identification with name
US5982866A (en) Method and apparatus for forwarding caller identification for a credit card or calling card call to an automatic number identification system of a telephone network
USRE41221E1 (en) System and method for automated provision and customer selection of temporary advanced intelligent network services
US6188757B1 (en) System and method for automatic provision customer selection, and deactivation of temporary advance intelligent network services
CA2242153C (en) Method for providing an open interface to automatic recall service
JP2000510315A (en) Systems and methods for managing telephone service feature interactions
US20080037524A1 (en) Remote Control Telephone Dialing System and Method
JPH0646150A (en) Telephone exchange network
WO2001060033A1 (en) System and method for locating subscribers using a best guess location algorithm
US6327358B1 (en) System and method for rerouting data calls to internet service provider via lowest access point in a telephone network
US6173047B1 (en) System and method for temporary voicemail service
CA2102992A1 (en) System for completing calls to roaming cellular telephone subscribers
JPH11284735A (en) Telecommunication system providing caller controlling service
CN1330838A (en) Initiation of services in telecommunications network
US6654453B1 (en) Method and system for minimizing database structure overhead in handling large volume advanced intelligent network services
US6968051B1 (en) Programmable feature queues
CA2282785C (en) System and method for automated provision and customer selection of temporary caller identification services
EP1585349B1 (en) A method for transparent handling of a temporarily unaccessible database at a number portability server
WO2002019675A1 (en) Method and system for assisting a telephone exchange operator
MXPA99011461A (en) A method and apparatus for routing calls based on the identification of the calling party or calling line

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): DE FR GB

AX Request for extension of the european patent

Free format text: AL;LT;LV;MK;RO;SI

PUAL Search report despatched

Free format text: ORIGINAL CODE: 0009013

AK Designated contracting states

Kind code of ref document: A3

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

AX Request for extension of the european patent

Free format text: AL;LT;LV;MK;RO;SI

17P Request for examination filed

Effective date: 20010712

RIN1 Information on inventor provided before grant (corrected)

Inventor name: SELLS, ROY

Inventor name: GALT, WALTER BRUCE

Inventor name: BARTOSZEWICZ, JAMES

AKX Designation fees paid

Free format text: DE FR GB

17Q First examination report despatched

Effective date: 20050204

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20080726