TELECOMMUNICATION ARCHITECTURE

Abstract: The present invention provides a novel telecommunication architecture. The architecture includes a subscriber agent for each subscriber within a telecommunication network. The subscriber agent includes the subscriber's telephone number and calling features. The network also includes terminal agents which are directly associated with one or more terminals such as telephones. The subscriber agent can be associated with one or more terminal agents within the network, so that the subscriber's telephone number and set of calling features can be carried to any terminal within the network. A wide variety of calling features and terminals are supported by the architecture.

Description: TELECOMMUNICATION ARCHITECTURE FIELD OF THE INVENTION The present invention relates to a system, apparatus and method of providing enhanced features in a telecommunications system. More specifically, the present invention relates to a telecommunication architecture that is associates subscribers with different telecommunication terminals. BACKGROUND OF THE INVENTION The Public Switched Telephone Network (PSTN) has undergone tremendous advancement since its inception. Fibre-optic cables and satellites can simultaneously carry an enormous number of telephone calls. The Signaling System #7 (SS7) protocol and the Advanced Intelligent Network (AIN) provide support for a number of enhanced calling features such as call forwarding, voice mail and the like. Notwithstanding these advancements, at its essence the PSTN still establishes a telephone call between subscribers by completing a connection between subscriber's telephone lines, which, as a circuit-switched network, makes the current PSTN notionally identical to the way calls were completed when the PSTN was first conceived. Inherent in the PSTN architecture is the paradigm that each subscriber is uniquely associated with a physical telephone line. Thus, a subscriber's telephone number and the calling features preferred by the subscriber are also uniquely associated with the same physical telephone line, which can constrain the creation of additional enriched features that would be otherwise supported by modern technology. For example, the unique association between a subscriber and a telephone line creates problems when implementing local-number portability, although SS7 does offer certainways to implement local-number portability within the existing PSTN. Furthermore, calling features, such as caller-id and call-waiting, can only be accessed at the subscriber's phone line -thus if the subscriber is using another telephone line the subscriber may not have access to these features. Another limitation with the PSTN structure relates to typical implementations of the call- forwarding feature. Due to the unique association between one subscriber and one telephone line, when a first subscriber forwards his telephone line to a second subscriber's telephone line, a caller for the first subscriber may be confused when the second subscriber answers. In any event, while the first subscriber's phone is forwarded, the caller will not be able to leave a message on the first subscriber's voicemail, nor will anyone using the first subscriber's telephone be able to receive an incoming telephone call, as all such calls will forward to the second subscriber's telephone. More flexibility in network architectures can be found outside the PSTN. For example, in WO-9925071-A2, a data network architecture is taught that allows users to access data from the network via different types of client devices (e.g. computer terminals, cell-phones, or personal digital assistants) that are connected in a distributed manner to the network. WO-9925071-A2 teaches a database in the network which stores client device capabilities, and a second database in the network that contains user profiles. When a user accesses a particular client, the network first determines the capability of the client, and then determines the services to which the user subscribes, granting access to the user based on the subscribed services making appropriate format conversions in data to allow presentation of accessed data on the client device. However, WO-9925071-A2 is limited to non-real time services such as the accessing of email or web-browsing. While WO- 9925071-A2 does contemplate some types of voice services (i.e. the retrieval of voicemail or text-to- speech conversions of email), WO-9925071-A2 does not teach a network that manages end-to-end real-time applications, such as voice telephone calls, such that WO-9925071-A2 does not present a viable alternative to the PSTN. Overall, it can be seen that the existing network architectures constrains the elegant implementation of certain enriched features, and it desirable to provide a novel structure that readily supports such features. SUMMARY OF THE INVENTION It is an object of the present invention to provide a novel telecommunication architecture that obviates or mitigates at least one of the above-identified disadvantages of the prior art. In an aspect of the invention, there is provided a telecommunication architecture comprising a network for carrying communications between subscribers and at least one terminal agent executing on the network that interfaces the network with a terminal. The architecture also includes at least one subscriber agent executing on the network that belongs to one of the subscribers. The subscriber agent has at least one terminal identifier. Each terminal identifier is for pointing to a n respective terminal agent, such that the one of the subscribers can establish a communication over the network from a terminal respective to the one of the terminal agents. In another aspect of the invention, there is provided a switch comprising at least one subscriber line interface for connection to a respective terminal; a network interface for connection to a network; a processing unit interconnecting the subscriber line interface and the network, the processing unit being operable to execute a subscriber agent associated with a subscriber and a terminal agent respective to each terminal; the subscriber agent for identifying the subscriber to the network and being configurable to point to the terminal agent in order to carry communication between the network and the terminal agent; and, the terminal agent for managing, via the subscriber line interface, communications between the terminal and the processing unit according to the terminal's capabilities such that a subscriber using the terminal can conduct a communication over the network. In another aspect of the invention, there is provided a method for setting up an incoming call to a subscriber comprising the steps of: receiving a request to establish the call with the subscriber; obtaining a profile of the subscriber; selecting a terminal appropriate to the call according to criteria stored in the profile; and, connecting the call to the terminal. In another aspect of the invention, there is provided a method of associating a subscriber with a terminal comprising the steps of: receiving a request from a subscriber to be associated with a terminal; obtaining a profile of a subscriber ho submitted the request; and, updating the profile to indicate that calls for the subscriber are to be directed to the terminal. In a particular aspect of either of the foregoing methods, there is an additional step of: providing calling features for the subscriber at the terminal in accordance with calling features listed in the profile. In another aspect of the invention, there is provided a method for setting up an outgoing call comprising the steps of: receiving a request to establish a call from a terminal; obtaining a profile of a subscriber who submitted the request; and connecting the call in accordance with criteria listed in the profile. In a particular aspect of either of the foregoing methods, the profile is a subscriber agent. In a particular aspect of either of the foregoing methods, the selecting step includes selecting a terminal agent that manages communications with the terminal and the connecting step includes pointing the subscriber agent to the terminal agent and establishing the connection according to the pointer. In a particular aspect of either of the foregoing methods, the terminal agent is further operable to manage the communication in accordance with the capabilities of the terminal. In another aspect of the invention there is provided a software structure executable on a switch having a processing unit that interconnects a network and at least one terminal, comprising: at least one terminal agent that manages communications with a respective one of the terminals according to its capabilities; and, a subscriber agent associated with a subscriber, the subscriber agent being configurable to point to one of the terminal agents and operable, when executing on the switch, so that the subscriber can establish a communication over the network from a terminal respective to the terminal agent. The present invention provides a novel telecommunication architecture. The architecture includes a subscriber agent for each subscriber within a telecommunication network. The subscriber agent includes the subscriber's telephone number and calling features. The network also includes terminal agents which are directly associated with one or more terminals such as telephones. The subscriber agent can be associated with one or more terminal agents within the network, so that the subscriber's telephone number and set of calling features can be earned to any terminal within the network. A wide variety of calling features and terminals are supported by the architecture. BRIEF DESCREPTION OF THE DRAWINGS Preferred embodiments of the present invention will now be described, by way of example only, with reference to the attached Figures, wherein: Figure 1 is a schematic representation of a hardware structure of a switch in accordance with an embodiment of the invention; Figure 2 is a schematic representation the software structure of two switches that are identical to the switch shown in Figure 1; Figure 3 is a schematic representation of the software structure of Figure 2 wherein the subscriber agents are associated with different terminal agents; Figure 4 is a schematic representation of the software structure of Figure 2 wherein a subscriber agent is associated with a different terminal agent; Figure 5 is a schematic representation of the software structure of Figure 2 wherein a subscriber agent is associated with a different terminal agent; Figure 6 is a schematic representation of a software structure in accordance with another embodiment of the invention; Figure 7 is a schematic representation of the software structure of Figure 6 wherein a subscriber agent is associated with a different terminal agent; Figure 8 is a schematic representation of the software structure of Figure 6 wherein a subscriber agent is associated with different terminal agents; Figure 9 is a schematic representation of a software structure in accordance with another embodiment of the invention; Figure 10 is a schematic representation of the software structure of Figure 9 wherein a subscriber agent is associated with a different terminal agent; and, Figure 11 is a schematic representation of the software structure of Figure 9 wherein a subscriber agent is associated with terminal agents according to different behaviour criteria. DETAILED DESCRIPTION OF THE INVENTION A telecommunication architecture in accordance with an embodiment of the invention will now be discussed. Referring now to Figure 1, a switch 120 interconnects a communication network 124 and a pair of telephone lines 128. Communication network 124 can be the PSTN, a packet switched data network or a combination thereof. Accordingly, while switch 120 is not based on the SS7 protocols, appropriate PSTN gateways can be used between switch 120 and the PSTN in order to make switch 120 appear as if it were an SS7 switch to the remainder of the PSTN and thus operable to caπ-y voice telecommunications over the PSTN. In a present embodiment, telephone lines 128 are a traditional set of twisted-pair of copper wires now commonly used for POTS telephone lines, which in turn connect a pair of terminals 132, (which in a present embodiment are POTS telephones) to switch 120. Telephone lines 128 each connect to subscriber-line interfaces 136 which are mounted within a line-card rack 136 integral with switch 120. (In other embodiments of the invention, telephone lines 128 can be any type of link that connects to a corresponding type of terminal 132. For example, lines 128 can be a wireless link, based on CDMA, OFDM, TDMA or the like, and terminalsl32 can be mobile, fixed or nomadic wireless telephones with appropriate transceivers to communicate over linesl28. In a wireless system, subscriber-line interfaces 136 would thus be wireless transceivers within switch 120, and notionally, switch 120 would be a wireless base station. Other types of links that could be used instead of lines 128 will occur to those of skill in the art.) Switch 120 also includes a controller 144 for switching traffic between network 124 and lines 128. Switch 120 also includes a storage device 148 that stores information used by controller 144 to connect calls between network 124 and lines 128. More specifically, storage device 148 stores two terminal agents 152a and 152b, and storage device 148 also stores two subscriber agents 154a and 154b. Terminal agents 152a and 152b are each uniquely associated with their respective telephone lines 128 and 128b. Each terminal agent 152 thus contains a line-identifier that uniquely associates the terminal agent 152 with its respective telephone subscriber-line interface 140. Typically, terminal agents 152 also include information about the type, characteristics and functionality of its respective terminal 132. For example, since terminals 132a and 132b are POTS telephones, then terminal agents 152 will maintain information about these POTS telephones, such as the fact that the POTS telephones are only capable of voice telephone calls and that they do not include graphical user displays, and are therefore unable to receive caller-id information. Subscriber agents 154a and 154b, however, are not uniquely associated with any telephone line 128. Instead, subscriber agents 154a and 154b are uniquely associated with a subscriber, and thus each subscriber agent 143 typically includes the subscriber's telephone number and a list of calling features to which the subscriber subscribes. Subscriber agents 154 also include a terminal- identifier which associates the subscriber agent 154 with one (or more) of the terminal agents 152. As will be explained in greater detail below, the terminal-identifier can be changed according to the subscriber's wishes. While storage device 148 is shown to be physically located within switch 120, it is presently preferred that storage device 148 is implemented in a manner (for example, distributed) so that the data stored on device 148 is accessible by other switches. It is contemplated that, while terminal agents 152 are always associated with the same terminal 132 connected to its respective switch 120, the subscriber agents 154 can be associated with one or more terminals 132 that are connected to different switches 120. While Figure 1 shows switch 120 in terms of its hardware structure, in order to further explain the present embodiment it is useful to represent switch 120 in terms of its software structure, as shown in Figure 2. Referring now to Figure 2, two switches 120 1 and 120 2 , identical to switch 120, are represented in terms of the their software structure. Telephone lines 128a ... 128d each connect to switch 120 through their respective terminal agent 152a ... 152d. In turn, each terminal agent 152a, 152b, 152c, and 152d is shown interconnected by a dotted- line to subscriber agents 154a, 154b, 154c and 154d respectively. This interconnection by the dotted line represents that the terminal-identifiers within subscriber agents 154a , 154b, 154c and 154d each point to terminal agents 152a, 152b, 152c and 152d, respectively. Accordingly, an incoming call to the telephone number for subscriber agent 154a from network 124 will be directed to switch 120ι, and to subscriber agent 154a. In turn, the terminal- identifier within subscriber agent 154a will point to terminal agent 152a, thus directing the incoming call to line 128a and cause telephone terminal 132a to ring. Similarly, when an outgoing call is placed from teπninal 132a, switch 120ι identifies that the call is being made though terminal agent 152a, and is being made by the subscriber associated with subscriber agent 154a and thus, typically, billing for the call is charged to the subscriber associated with subscriber agent 154a, and the set of calling features (i.e. call-waiting, caller-id etc.) belonging to that same subscriber are made available to that subscriber. It will now be understood that the present embodiment shown in Figure 2 behaves, in its curcent arrangement and from the perspective of subscribers, substantially the same as a prior art telephone central-office switch. However, in contrast to the prior art, the embodiment shown in Figure 2 can be dynamically configured to different arrangements to provide novel behaviours. More specifically, the terminal agent of any subscriber agent 154a, 154b, 154c or 154d can be changed to point to one or more of terminal agents 152a, 152b, 152c or 152d. For example, Figure 3 shows the switches 120 of Figure 2, but wherein the terminal- identifier of subscriber agent 154a has been changed to point to terminal agent 152b, and the terminal-identifier of subscriber agent 154b has been changed to point to terminal agent 152a. Thus, incoming calls to the telephone number associated with subscriber agent 154a are now directed to telephone line 128b, and incoming calls to telephone number associated with subscriber agent 152a are now directed to telephone line 128a. Similarly, the entire set of calling features associated with each of these subscriber agents 154a and 154b are now available for telephone lines 128b and 128a, respectively. It will also be apparent that call-forwarding from one terminal 132 to another terminal 132 can be achieved simply by temporarily changing the terminal-identifier within a particular subscriber agent 154. For example, Figure 6 shows switches 120 of Figure 4, wherein the terminal-identifier of subscriber agent 154c has been changed to point to terminal agent 152d. Thus, incoming calls for the telephone number associated with subscriber agent 154c are now directed to telephone line 128d. Once the subscriber that owns subscriber agent 154c 'forwards' his phone from terminal agent 152c to terminal agent 152d, the subscriber can be physically present near terminal 132d and be able to receive all incoming calls and access all of the same calling features as if this subscriber was at terminal 132c. It should also be noted that, according to the configuration in Figure 6 subscriber agents 154c and 154d are both pointing to the same terminal agent 152d. According to this configuration, it can be desired to have subscriber agents 154c and I54d identify themselves to terminal agent 152d so that terminal agent I52d can use distinctive rings at terminal 132d to distinguish incoming calls for either subscriber agent 154c or 154d. Alternatively, if terminal 132d is equipped with a graphical display, then a message can be displayed thereon indicating which subscriber is receiving the incoming call. It is also to be understood that, due to the distributed nature of storage device 148, subscriber agents 154 can be instantiated in different switches 120 according to the identified terminal agent 152 within the terminal-identifier of the subscriber agent 154. For example, as shown in Figure 5 user agent 154a is shown as being instantiated in switch 120 2 , and pointing to terminal agent 152d. Another embodiment of the invention is shown in Figure 6, wherein four switches I20ι, 120 2 ... 120 4 are each interconnected by network 124. Switches 120j, 120 2 in Figure 6 are the same as switches 120ι, 120 2 in Figures 1-5. However, in contrast to the embodiment shown in Figures 1- 5, the embodiment of Figure 6 includes two additional switches 120 3 , and 120 4 , each of which have different terminal agents 152 and corresponding terminals 132 than switches 120ι, 120 2 . Furthermore, as shown in Figure 6 additional switches 120 3 , and 120 4 , do not include any subscriber agents 154, but switches 120 3 , and 120 4 are operable to instantiate appropriate subscriber agents 154 that have terminal-identifiers which point to their terminal agents 152. Switch I2O 3 connects, via terminal agent 152e, to a rich-featured telephone terminal 132e via a copper twisted-pair link 128e. Switch 120 3 also connects via terminal agent 152f, to a lap-top computer terminal 132f via an Ethernet link 128f or the like. Terminal agents 152e and 152f are configured to interact with their respective terminals 132 based on the functionality of those terminals 132. For example, rich-featured telephone terminal I32e includes a graphic display and accordingly, terminal agent 152e is configured to pass caller-id streams to that graphic display if a subscriber agent 154 subscribes to caller-id. Similarly, lap-top computer terminal 132f includes a speaker and a microphone and accordingly, terminal agent 152f includes protocols and software to convert voice traffic into a data format that can be carried over Ethernet link 128f and utilized by lap-top computer 132f to conduct a voice telephone call over network 124. Caller-id streams sentto computer terminal 132f can then be used for a variety of enhanced features on terminal 132f, such as showing a photograph of the incoming-caller on the display of terminal 132f in addition to or in lieu of simply showing the incoming caller's name and number. Switch 120 4 connects, via terminal agent 152g, to a mobile telephone terminal 132g via a wireless link 128g. Switch 120 3 also connects via terminal agent 152h, to a pager terminal 132h via a wireless link 128h. Terminal agents 152g and 152h are configured to interact with their respective terminals 132 based on the functionality of those terminals 132. For example, mobile telephone terminal 132g includes a graphic display and accordingly, terminal agent 152g is configured to pass short messaging service (SMS) data streams to that graphic display if a subscriber agent 154 so subscribes. Similarly, pager terminal 132h only includes a graphic display and a beeper, and accordingly, terminal agent 152f includes software to present an interactive voice response (IVR) system to an incoming voice caller for a subscriber agent attached to terminal agent 152f. The IVR system prompts the incoming caller to leave a numeric message that can be displayed on pager terminal 132h, but blocks the incoming voice call connection. An example of how the embodiment of Figure 6 can operate will now be discussed. For purposes of the explanation, it will be assumed that the subscriber associated with subscriber agent 154a is named "Bill" who has the telephone number 555-555-5555. In addition, Bill subscribes to caller-id. Accordingly, subscriber agent 154a includes Bill's name, his phone number and the fact that he subscribes to caller-id and all other information associated with Bill's services. It will also be assumed that Bill's home-telephone is telephone terminal 132a, which is located in Bill's home premises. It will be further assumed that, as shown in Figure 6, the terminal- identifier of Bill's subscriber agent 154a is currently pointing to terminal agent 152a, and thus, any incoming calls for Bill will ring at terminal 132a in Bill's home. Finally, it will be assumed that terminals 132e, 132f, 132g and 132h also all belong to Bill, namely: terminal 132e is Bill's office telephone, terminal 132f is Bill's work computer, terminal 132g is Bill's mobile telephone, and terminal 132h is Bill's pager. The exemplary explanation of operation of the embodiment continues with reference to Figure 9, where Bill's subscriber agent 154a is shown pointing to terminal agent 152g, thus directing Bill's incoming calls and Bill's set of calling features, to mobile telephone terminal 132g. Bill can use any suitable means to redirect his subscriber agent 154a from terminal agent 152a to terminal agent 152g, such as by using an IVR menu system from telephone terminal 132a that directs subscriber agent 154a to change its terminal-identifier from terminal agent 152a to terminal agent 152g, or using a web-browser interface (from any internet- ready device) that gives Bill the ability to access his subscriber agent 154a. Accordingly, a caller dialing Bill's number "555-555-5555" will now be able to reach Bill at his mobile telephone terminal I32g. Similarly, the incoming caller's telephone number will be displayed on mobile telephone terminal 132g, because Bill's subscriber agent 154a indicates that Bill is a subscriber to the caller-id calling feature. The exemplary explanation of operation of the embodiment continues with reference to Figure 10, where Bill's subscriber agent 154a is shown pointing to terminal agents 152e and 152f, thus directing Bill's incoming calls, and carrying Bill's set of calling features to terminals 132e and 132f. Again, Bill can use any suitable means to redirect his terminal agent 154a from terminal agent 152g to terminal agents 152e and 152f, such as by using an IVR menu system from telephone terminal 132g, or alternatively, by using a verification-procedure at either terminal 132e or 132f, such as typing a user-id and password into computer terminal 132f, which effectively logs Bill into switch 120 3 and instantiates subscriber agent 154a therein. Accordingly, a caller dialing Bill's number "555-555-5555" will now be able to reach Bill at either rich-featured telephone terminal 132e, or at lap-top computer terminal 132f, giving Bill the option of a private call using terminal 132e, or a hands-free call using terminal 132f. Similarly, the incoming caller's telephone number will be displayed on terminal 132e and 132f because Bill's subscriber agent 154a indicates that Bill is a subscriber to the caller-id calling feature. It is contemplated that the various rules, verification procedures, terminal-pointers, and other behaviours of subscriber agent 154a can be programmable by a service provider and/or the subscriber using any suitable input-device. For example, using the arrangement shown in Figure 8, it is contemplated that Bill can access a user-interface on laptop computer terminal 132f to program the various rules, verification procedures, terminal-pointers, and other behaviours of subscriber agent 154a. Any desired type of behaviour criteria can be programmed. For example, subscriber agent 154a can be programmed to point to different terminal agents 152 depending on a number of criteria, such as the time of day, or the power-on state of different terminals 132. For instance, subscriber agent 154a can be programmed to point to terminal agent 152g any time that mobile telephone terminal 132g is turned 'on' and identifies itself to terminal agent 152g. Alternatively, or in addition, subscriber agent 154a can be programmed to: 1) point to terminal agent 152a (i.e. Bill's home telephone) from 6:00PM- 8:00AM; 2) point to terminal agent 152g (i.e. Bill's mobile telephone) from 8:00AM-9:00AM and 5:00PM-6:00PM; and 3) point to terminal agents 152e and 152f (i.e. Bill's office phone and office computer) from 9:00AM-5:00PM. Other criteria for pointing subscriber agent 154a to different terminal agents 152 will occur to those of skill in the art and are within the scope of the invention. For example, subscriber agent 154a can be programmed to hunt for its subscriber, Bill, at different terminal agents 152 if Bill does not answer, or if the terminal 132 associated with the terminal agent 152 is turned-off, finally pointing subscriber agent 154 to pager terminal 132h in the event that Bill does not answer any other terminal. Another type of criteria for pointing subscriber agent 154a to different terminal agents 152 includes setting up rules based on caller-id information. For example, incoming telephone numbers with numbers associated with Bill's personal calls can be directed to Bill's home at telephone terminal 132a, while incoming telephone numbers with numbers associated with Bill's work calls can be directed to Bill's office at rich-featured telephone terminal 132e. In another embodiment of the invention, additional types of terminal agents 152 and terminals 132 are supported. Referring now to Figure 9 switches 120ι ... 120 4 are the same as switches 120 1 ... 120 4 in the embodiment shown in Figures 6-8. However, the embodiment of Figure 9 includes an additional switch 120 5 that connects, via terminal agent 152i, to a point-of- purchase terminal 132g via any suitable wired link 128g. Switch 120 5 also connects via terminal agent 152j, to a voicemail-server terminal 132j via any suitable wired link 132j. Terminal agents 152i and 152j are configured to interact with their respective terminals 132 based on the functionality of those terminals 132. For example, point-of-purchase terminal 132g includes a card- reader, a keyboard and a graphic display and accordingly, terminal agent 152i is configured to receive financial purchase information, including the purchase price and bank-card or credit-card information, and subscriber verification information, of a subscriber from point-of-purchase terminal 132i. Terminal agent 152i is also configured to send authorization messages to point-of-purchase terminal 132i. Overall, it is to be understood that point-of-purchase terminal 1321 functions, from the perspective of the merchant and the purchaser, substantially the same as prior art point-of- purchase terminals, but that point-of-purchase terminal 132i interacts with network 124 via terminal agent 152i and thus, from the perspective of network 124, performs authorizations in a different manner than the prior art, the details of which will be discussed in greater detail below. Similarly, voicemail-server terminal 132j includes a processing unit and storage device to play outgoing voicemail messages to callers, record incoming voicemail messages from those callers, and to play those recorded messages to subscribers. Thus, voicemail-server terminal 132j performs the same functions as known voicemail systems, but, as will be explained in greater detail below, interacts with network 124 via terminal agent 152j and one or more subscriber agents 154 An example of how the embodiment of Figure 9 can operate will now be discussed. For purposes of the explanation, it will be assumed that the subscriber associated with subscriber agent 154a is the same "Bill" as discussed in the example used to illustrate the embodiment shown in Figures 6-8. Accordingly, subscriber agent 154a includes Bill's name, his phone number and the fact that he subscribes to caller-id. In addition, subscriber agent 154a includes Bill's bank-card number, and includes the banking information associated with that number, such as the name of Bill's bank, Bill's bank account number, and the necessary protocols to seek debit authorizations from Bill's bank account. Continuing with explanation of exemplary operation of the embodiment, it is assumed that Bill has swiped his bank card through the card-reader at point-of-purchase terminal 132i. Bill's bank-card information is then sent to terminal agent 152i, causing Bill's subscriber agent 154a to be instantiated in switch 120 5 , as shown in Figure 10. At this point, subscriber agent 154a uses appropriate verification procedures, (such as a personal identification number (PIN) entered into terminal agent 152i by Bill, and then authenticated by Bill's subscriber agent 154a,) and then utilizes Bill's banking information stored in subscriber agent 154a to seek appropriate purchase authorization from Bill's bank, by accessing Bill's bank through network 124. It should now be apparent that Bill's subscriber agent 154a can also be pointed to the terminal-identifier associated with terminal agent 152j, thus directing Bill's incoming voice calls to voicemail server terminal 132j. Again various criteria can be used to determine where the terminal- identifier in Bill's subscriber agent 154a will point. An example of how voicemail-terminal agent 152j can operate will now be discussed with reference to Figure 11. For purposes of the explanation, it will be assumed that the subscriber associated with subscriber agent 154a is the same "Bill" as discussed in the example used to illustrate the embodiment shown in Figures 9-10. Accordingly, subscriber agent 154a includes Bill's name, his phone number and the fact that he subscribes to caller-id. In addition, it will be assumed that the subscriber associated with subscriber agent 154b is named "Hillary" who has the telephone number 666-666-6666. Accordingly, subscriber agent 154b includes Hillary's name and her phone number. In addition, it will be assumed that the subscriber associated with subscriber agent 154d is named "Monica" who has the telephone number 777-777- 7777. Accordingly, subscriber agent 154d includes Monica's name and her phone number. Tables I-HI provide a summary of subscriber agents 154a, 154b, and 154d and the criteria associated therewith. Table I Subscriber agent 154a Bill Table π Subscriber agent 154b Table HI Subscriber agent 154d Monica Referring again to Figure 9, subscriber agent 154a is shown pointing to terminal agents 152a, 152j and 152h, which are Bill's home, voicemail and pager, respectively. The various terminal agents 152 to which subscriber agent 154 points in Figure 9 are thus representative of the criteria described in Table I. Continuing now with explanation of the exemplary operation of the embodiment in Figure 11 , it will be assumed that Monica wishes to call Bill. Accordingly, Monica uses her telephone terminal 132d causing the corresponding terminal agent 152d to notify Monica's subscriber agent 154d that Monica is placing a call. Monica then dials Bill's phone number, 555-555-5555, into her terminal 132d. Next, Monica's subscriber agent 154d accesses network 124 and locates Bill's subscriber agent 154a. Monica's subscriber agent 154d identifies itself to Bill's subscriber agent 154a and indicates that Monica is trying to contact Bill. During this stage of the call setup between Monica and Bill, subscriber agents 154d and 154a can negotiate certain parameters for the call, by exchanging information about each of the subscriber agents, such as: which party (Monica or Bill) will pay for the call; the type of voice coder used for the call; whether the call is to be encrypted; whether Monica is calling from a terminal 132 that supports voice-only or whether it supports voice and video; or any other terms or parameters that may be desired in setting up a call between Monica and Bill. As part of this negotiation, subscriber agent 154a will check its behaviour criteria, as shown in Table I, and, upon determining that the call originates from Monica, subscriber agent 154a will route Monica's call to Bill's pager terminal 132h. Accordingly, as part of the negotiation, terminal agent 152h will notify Bill's subscriber agent 154a, that terminal agent 152h is unable to accept Monica's incoming voice call, and will instead present the IVR menu system that notifies Monica that Bill is unavailable but that she can leave a message for display on Bill's pager terminal 132h. At this stage in the call Monica can either leave the message or simply terminate the call, thus terminating the interaction between her subscriber agent 154d and Bill's subscriber agent 154a. In addition, Bill's subscriber agent 154d can display a message on Bill's pager terminal 132h indicating that Monica attempted to call Bill and include the time and date of Monica's attempted call. The embodiment in Figure 9 can operate in other ways. For example, assume that Hillary is trying to phone Bill. Accordingly, Hillary uses her telephone terminal 132b, and terminal agent 152b notifies Hillary's subscriber agent 154b that Hillary is placing a call. Hillary then enters Bill's phone number, 555-555-5555 into her terminal 132b. Next, Hillary's subscriber agent 154d locates Bill's subscriber agent 154a. Hillary's subscriber agent 154b identifies itself to Bill's subscriber agent 154a and indicates that Hillary is trying to contact Bill. During this stage of the call setup between Hillary and Bill, subscriber agents 154b and 154a can negotiate certain parameters for the call, by exchanging information about each of the subscriber agents. As part of this negotiation, subscriber agent 154a checks its behaviour criteria, as shown in Table I, and, upon determining that no special behaviour criteria apply, the call is routed to Bill's home terminal 132a. Accordingly, Bill's telephone terminal 132a will start ringing. Assuming Bill does not answer, Bill's subscriber agent 154a will examine its behaviour criteria (listed in Table I) and, having determined Bill is not answering, subscriber agent 154a will reroute Hillary's call to voicemail terminal agent 152j, where Hillary will be given the opportunity to leave a voicemail. While the embodiments discussed herein are directed to specific implementations of the invention, it will be understood that combinations, sub-sets and variations of the embodiments are within the scope of the invention. For example, the embodiments herein show only one instance of a subscriber agent appearing at a time, yet it can be desired to have multiple instances of the subscriber agent, each instance interacting synchronously with each other, in order to provide desired telecommunication access by a subscriber, such as setting up multiple calls at different terminal agents. However, it will also be understood that the system can be configured so that a particular subscriber agent need not instantiate itself within a particular switch in order to interact with a terminal agent within that same switch, but that the subscriber agent can be instantiated anywhere within the network and remotely interact with any terminal agent within any given switch. It is also to be understood that a subscriber agent can be pointed to another subscriber agent instead of, or in addition to, pointing to a terminal agent. For example, where a subscriber agent belongs to a customer service representative (CSR) in a company, and that CSR is on vacation, then the vacationing CSR can point his/her terminal identifier to a colleague's subscriber agent, so that calls thereto are answered during the vacationing CSR's absence. A person of skill in the art will now recognize that by simply changing the terminal-identifier within a subscriber agent, the present invention provides an implementation of the FCC mandated local-number portability requirement. The present invention is intended to encompass a broad variety of subscriber agents. While the embodiments discussed herein discuss subscriber agents that belong to individual subscribers, it is contemplated that subscriber agents can be associated with groups of people or organizations. For example, a corporation can have a subscriber agent that, according to various behaviour criteria, will direct incoming calls to individual receptionists, or to an IVR system containing the corporate phone directories. Again, such subscriber agents can be configured with a broad variety of behaviour, such as answering incoming calls in different ways depending on the time of day or based on the incoming caller's caller-id stream. Another type of group subscriber agent includes the operator. Thus, when a caller dials '0', the call will be directed to a subscriber agent within the system that is associated with the operator, which in turn can manage the incoming call in any desired way, such as directing the caller to a person who works in the capacity as an operator. Other types of group subscriber agents will occur to those of skill in the art, such as a technical assistance center (TAC) for a corporation. It is contemplated that, if desired, individuals can have multiple subscriber agents that can be programmed to interact if desired. For instance an individual can have a 'work' subscriber agent and a 'personal' subscriber agent, each of which may direct incoming callers to different or identical terminal agents, according to the wishes of the individual subscriber. It is to be understood that the present invention is not limited to the various types of terminals 132 specifically discussed in the previous embodiments; other types of terminals are within the scope of the invention, such as video-telephones that show picture images of each caller in addition to voice traffic, personal digital assistants, network-enabled appliances and the like. It is to be understood that terminal agents can also be configured with different types of behaviour criteria that interact and/or negotiate with subscriber agents in order to establish the terms and types of calls. For example, a terminal agent can be configured to have one or more subscribers that own that particular terminal. Additionally, a terminal that belongs to a first subscriber, may be configured to restrict access to other subscribers. For example, the first subscriber may wish to limit telephone calls to five minutes. Thus, the first subscriber can configure his terminal agent to automatically cut-off calls that are placed by a second subscriber once the second subscriber has used the terminal for longer than five minutes. Another type of behaviour criteria can be to simply restrict which subscriber agents are actually allowed to point themselves at the terminal agent i.e. the subscriber that owns the subscriber agent may prevent all other subscriber agent's from pointing to his terminal agent. Other types of behaviour criteria for a particular terminal agent will occur to those of skill in the art. It is to be understood that any suitable verification procedure can be used in order to point the terminal-identifier of a given subscriber agent 154 to a given terminal agent 152. For example, a switch 120 can include an IVR menu system that requires the subscriber to enter his telephone number and a corresponding PIN number can be used. Alternatively, or in addition, smart-card readers can be incorporated into terminals 132 which send a subscriber's smart-card contents to switch 120, which can associate the smart-card to the subscriber's subscriber agent. Other procedures, such as voice recognition, can also be suitable verification protocols, as will occur to those of skill in the art. It is to be understood that the switches 120 discussed in the previous embodiments are scalable and can support any number of terminal agents 152 and/or user agents 154, as desired. It is also contemplated that smaller switches 120 can be implemented inside a subscriber premises, functioning as a private branch exchange (PBX) for a small business or a consumer household that require multiple subscriber agents and/or multiple telephones or and/or other types of terminals. It is to be understood that the present invention can be used to implement all known calling features (i.e. call waiting, caller-id, call-forwarding, speed dialing etc.), and, in addition can be used to implement any additional calling features that may be operable, desirable or otherwise supportable on a given terminal and/or within a particular network. While the embodiments discussed herein refer to terminal agents and subscriber agents, it is to be understood that other types of software structures, other than agents, are within the scope of the invention. It is to be understood that the present invention can be incorporated into existing telecommunication networks, such as the PSTN, by including appropriate gateways. For example, subscriber agents can include functionality that allows it to recognize when a call is to be completed with a PSTN subscriber, and then mimic a prior art PSTN to make the subscriber agent behave transparently to the PSTN, thus allowing the completion of the call. The present invention provides a novel telecommunication architecture. The architecture includes a subscriber agent for each subscriber within a telecommunication network. The subscriber agent includes the subscriber's telephone number and calling features. The subscriber agent can be associated with one or more terminal agents within the network, so that the subscriber's telephone number and complete set of calling features can be carried to any terminal within the network. A wide variety of calling features and terminals are supported by the architecture. For example, unlike the prior art a subscriber can invoke a personal set of calling features from any terminal within the network. In addition, local number portability is readily achieved with the present invention. Other advantages will occur to those of skill in the art. The above-described embodiments of the invention are intended to be examples of the present invention and alterations and modifications may be effected thereto, by those of skill in the art, without departing from the scope of the invention which is defined solely by the claims appended hereto.

Claims: We Claim: 1. A telecommunication architecture comprising: a network for carrying communications between subscribers; at least one terminal agent executing on said network that interfaces said network with a terminal; at least one subscriber agent executing on said network that belongs to one of said subscribers, said subscriber agent having a terminal identifier for pointing said subscriber agent to one of said terminal agents, such that said one of said subscribers can establish a communication over said network from a terminal respective to said one of said terminal agents. 2. A switch comprising: at least one subscriber line interface for connection to a respective terminal; a network interface for connection to a network; a processing unit interconnecting said subscriber line interface and said network, said processing unit being operable to execute a subscriber agent associated with a subscriber and a terminal agent respective to each terminal; said subscriber agent for identifying said subscriber to said network and being configurable to point to said terminal agent in order to carry communication between said network and said terminal agent; and, said terminal agent for managing, via said subscriber line interface, communications between said terminal and said processing unit according to said terminal's capabilities such that a subscriber using said terminal can conduct a communication over said network. 3. The switch according to claim 2 wherein said terminal is a telephone. 4. The switch according to claim 2 wherein said terminal is a rich-featured telephone having a graphical display. 5. The switch according to claim 2 wherein said terminal is a wireless telephone and said switch is a wireless base station. 6. The switch according to claim 2 wherein said terminal is a pager. 7. The switch according to claim 2 wherein said terminal is a personal digital assistant. The switch according to claim 2 wherein said terminal is a voicemail server. 9. The switch according to claim 2 wherein said terminal is a point-of-purchase terminal. 10. The switch according to claim 2 wherein said network is the PSTN. 11. The switch according to claim 2 wherein said network is the Internet. 12. The switch according to claim 2 wherein said subscriber agent includes said subscriber's name. 13. The switch according to claim 2 wherein said subscriber agent includes a set of calling features belonging to said subscriber. 14. The switch according to claim 13 wherein said calling features are accessible by said subscriber at any terminal to which said subscriber agent points. 15. The switch according to claim 13 wherein said calling features include at least one of caller-id, call waiting, speed calling, call privacy, visual call waiting, and call privacy. 16. The switch according to claim 13 wherein said calling features includes call forwarding that is implemented by configuring said subscriber agent to a desired terminal agent. 17. A software structure executable on a switch having a processing unit that interconnects a network and at least one terminal, comprising: at least one terminal agent that manages communications with a respective one of said terminals according to its capabilities; and, a subscriber agent associated with a subscriber, said subscriber agent being configurable to point to one of said terminal agents and operable, when executing on said switch, so that said subscriber can establish a communication over said network from a terminal respective to said terminal agent. 18. The software structure according to claim 17 wherein said terminal is a telephone and wherein said communication is a voice telephone call. 19. The software structure according to claim 17 wherein said terminal is a personal computer. 20. The software structure according to claim 17 wherein said terminal is a wireless telephone and said switch is a wireless base station. 21. The software structure according to claim 17 wherein said terminal is a pager and wherein said communication includes a paging message. 22. The software structure according to claim 17 wherein said terminal is a personal digital assistant. 23. The software structure according to claim 17 wherein said terminal is a voicemail server. 24. The software structure according to claim 17 wherein said terminal is a point-of- purchase terminal and wherein said communication includes a purchase authorization. 25. The software structure according to claim 17 wherein said network is the PSTN and said 9T switch includes a PSTN gateway. 26. The software structure according to claim 17 wherein said network is the Internet. 27. The software structure according to claim 17 wherein said subscriber agent includes said subscriber's name. 28. The software structure according to claim 17 wherein said subscriber agent includes a set of calling features belonging to said subscriber. 29. The software structure according to claim 28 wherein said calling features are accessible by said subscriber at any terminal capable of supporting said features and to which said subscriber agent points. 30. The software structure according to claim 28 wherein said calling features include at least one of caller-id, call waiting, speed calling, call privacy, visual call waiting, and call privacy. 31. The software structure according to claim 28 wherein said calling features includes call forwarding that is implemented by pointing said subscriber agent to a desired terminal agent. 32. A method for setting up an incoming call to a subscriber comprising the steps of: receiving a request to establish said call with said subscriber; obtaining a profile of said subscriber; selecting a terminal appropriate to said call according to criteria stored in said profile; and, connecting said call to said terminal. 33. A method of associating a subscriber with a terminal comprising the steps of: receiving a request from a subscriber to be associated with a terminal; obtaining a profile of a subscriber who submitted said request; and, updating said profile to indicate that calls for said subscriber are to be directed to said terminal. 34. The method according to claim 32 further comprising the step of: providing calling features for said subscriber at said terminal in accordance with calling features listed in said profile. 35. A method for setting up an outgoing call from a subscriber comprising the steps of: receiving a request to establish a call from a terminal; obtaining a profile of a subscriber who submitted said request; and connecting said call in accordance with criteria listed in said profile. 36. The method according to any of claim 32 wherein said profile is a subscriber agent. 37. The method according to any of claim 32 wherein said selecting step includes selecting a terminal agent that manages communications with said terminal and said connecting step includes pointing said subscriber agent to said terminal agent and establishing said connection according to said pointer. 38. The method according to claim 37 wherein said terminal agent is further operable to manage said communication in accordance with the capabilities of said terminal. 39. The method according to any of claim 32 wherein said terminal is a telephone. 40. The method according to any of claim 32 wherein said terminal is a personal computer. 41. The method according to any of claim 32 wherein said terminal is a wireless telephone. 42. The method according to any of claim 32 wherein said terminal is a pager. 43. The method according to any of claim 32 wherein said terminal is a personal digital assistant. 44. The method according to any of claim 32 wherein said terminal is a voicemail server. 45. The method according to any of claim 35 wherein said terminal is a point-of-purchase terminal and wherein said communication includes a purchase authorization. 46. The method according to any of claim 32 wherein said subscriber agent includes said subscriber's name. 47. The method according to claim 34 wherein said calling features include at least one of caller-id, call waiting, speed calling, call privacy, visual call waiting, and call privacy. 48. The method according to claim 34 wherein said calling features includes call forwarding. 49. The architecture according to claim 1, wherein said subscriber is an individual. 50. The architecture according to claim 1, wherein said subscriber represents a group of persons. 51. The architecture according to claim 50, wherein said group is corporation. 52. The architecture according to claim 50, wherein said group is a technical assistance center. 53. The architecture according to claim 1, wherein said subscriber is an individual. 54. The method according to claim 32 wherein said subscriber represents a group of persons. 55. The method according to claim 50 wherein said group is a collection of network operators. 56. The method according to claim 50 wherein said group is a '911' call center. 57. A method for associating a subscriber with a terminal comprising the steps of: receiving an identification of a subscriber from a terminal to set up a call; retrieving a subscriber profile corresponding to said identity; and, providing calling privileges to said subscriber according to said profile. 58. A method for setting up a call comprising the steps of: receiving an identification of a subscriber from a terminal to set up a call; retrieving a subscriber profile corresponding to said identity; receiving a request from subscriber to set up a call; verifying said request is in accordance with calling privileges in said profile; and, establishing said call if said request is verified. 59. The architecture according to claim 1, wherein said subscriber agent is identifiable by said subscriber's telephone number. 60. The method according to claim 32 wherein said step of receiving request to establish said call includes the step of providing said subscriber's telephone number.

Inventors: DE SIMONE MAURICIO, FRAZER MARK JAMES, PREISS BRUNO RICHARD, SNELGROVE WILLIAM MARTIN, STUMM MICHAEL, DE SIMONE, MAURICIO, FRAZER, MARK, JAMES, PREISS, BRUNO, RICHARD, SNELGROVE, WILLIAM, MARTIN, STUMM, MICHAEL
Applicants: FRAZER MARK JAMES, PREISS BRUNO RICHARD, SIMONE MAURICIO DE, SNELGROVE WILLIAM MARTIN, SOMA NETWORKS INC, STUMM MICHAEL, DE SIMONE, MAURICIO, FRAZER, MARK, JAMES, PREISS, BRUNO, RICHARD, SNELGROVE, WILLIAM, MARTIN, SOMA NETWORKS, INC., STUMM, MICHAEL
Application year: 2001
Main classification: H04Q3
IPC codes: H04M3, H04Q3