Abstract:
According to one aspect of the present invention there is provided a method, in a telecommunication system, of processing a communication event associated with a subscriber of a communication network, the method comprising: obtaining context data relating to the subscriber, and in response to receiving the communication event, the telecommunications system processing the communication event in accordance with one or more rules generated by the telecommunications system based on the obtained context.

Description:
[0001]     This application claims priority from European patent application 05300740.7, filed on Sep. 12, 2005. The entire content of the aforementioned application is incorporated herein by reference.  
       FIELD OF THE INVENTION  
       [0002]     The present invention relates generally to event processing, and more specifically to context-based event processing, particularly, although not exclusively, in telecommunications systems.  
       BACKGROUND OF THE INVENTION  
       [0003]     Modern telecommunication systems provide users with facilities to enable a degree of personalisation of both telecommunication services and telecommunication devices.  
         [0004]     For instance, many telephone services enable users to set up multiple call routing options to provide a highly customisable and personalised telephone service. For example, a user may instruct a telephone network to forward calls intended for his telephone subscriber number to a different telephone subscriber number. A user may also instruct a telephone network to forward calls made to a telephone subscriber number whilst that number is busy to be forwarded to a voice mail service.  
         [0005]     Similarly, a user may customise a device, such as a mobile telephone, so that the device operates in a personalised manner. For example, a user may configure a mobile telephone to use a vibrating ringing alert rather than a ring tone in certain situations.  
         [0006]     As the user&#39;s activity changes through a day so the user may wish to modify the way in which any personalisation options are configured. For example, when a user is at work, he may wish to instruct his residential telephone network to forward any calls made to his residential telephone subscriber number to his office telephone subscriber number. If the user is sleeping, the user may wish that all calls made to his residential telephone subscriber number are immediately forwarded to the user&#39;s voice mail service, or he may wish that his mobile telephone vibrates rather than rings when an incoming call is received.  
         [0007]     Users may also use more than one customisable service or device, such as, for example, a residential telephone network and a mobile telephone network, a landline telephone, a mobile telephone and a personal computing device. Each service and device may need personalising in a different way depending on the activity of the user.  
         [0008]     However, one drawback with the current situation is that the user of such systems or devices has to ensure that any personalisation is constantly updated to ensure that the personalisation accurately reflects the users current desired personalisation options. For example, if a user is away from his home telephone and wishes all calls made to his home subscriber number to be forwarded to his mobile telephone subscriber the user has to actively instruct the home telephony network to forward all calls in the desired manner. If, when back at home, the user wishes to receive all calls made to his mobile telephone subscriber number to be forwarded to his home telephone subscriber number the user has to instruct both the mobile network or mobile device to forward calls to the home telephone subscriber number, and must also instruct the home telephone network to cancel forwarding calls to the mobile telephone subscriber number.  
         [0009]     The current situation is thus somewhat unsatisfactory as users have to ensure that each of their personalisable services or devices are correctly configured at all times if they wish their services and devices to function in the anticipated manner. Furthermore the user has to know how to configure each device or service, with each device and service likely being configurable in different manners and to different extents.  
       SUMMARY OF THE INVENTION  
       [0010]     Accordingly, one aspect of the present invention aims to overcome, or at least alleviate, at least some of the above-mentioned problems.  
         [0011]     According to a first aspect of the present invention, there is provided a method, in a telecommunication system, of processing a communication event associated with a subscriber of a communication network. The method comprises receiving the communication event, obtaining context data relating to the subscriber, and processing the communication event in accordance with one or more rules generated based on the obtained context.  
         [0012]     Advantageously, a service or device may generate its own rules based on the obtained context, without requiring the user or subscriber to define any specific rules or to effect any manual configuration of a device or service.  
         [0013]     Suitably, the method further comprises obtaining the context from a context store.  
         [0014]     Suitably, the method further comprises generating the rules in response to obtaining the context.  
         [0015]     Suitably, the step of obtaining the context comprises obtaining a context defined by the subscriber.  
         [0016]     Suitably, the step of generating the rules generates the rules based on the obtained context and additional information stored in a user profile store.  
         [0017]     The method may be performed by a communications service, such as a telecommunication service provided by a communications network.  
         [0018]     The method may be performed by a communications device, such as a telephone.  
         [0019]     Suitably, the communication event is a call establishment request.  
         [0020]     The step of obtaining the context may comprise obtaining the context of the subscriber initiating the communications event.  
         [0021]     The step of obtaining the context may comprise obtaining the context of the subscriber receiving the communication event.  
         [0022]     According to a second aspect of the present invention, there is provided apparatus for processing a communication event associated with a subscriber of a communication network. The apparatus comprises a receiver for receiving the communication event, a communication module for obtaining context data relating to the subscriber, a rule generator for generating one or more rules based on the obtained context, and processing logic for processing the communication event in accordance with the one or more generated rules.  
         [0023]     Suitable, the communication module is adapted to obtain context data from a context store.  
         [0024]     Suitably, the rule generator is arranged to generate the rules in response to obtaining the context.  
         [0025]     Suitably, the communication module is arranged to obtain a context defined by the subscriber.  
         [0026]     Suitably, the rule generator is arranged to generate the rules based on the obtained context and additional information stored in a user profile store.  
         [0027]     Suitably, the apparatus is adapted for use where the communication event is a call establishment request.  
         [0028]     Suitably, the communication module is adapted to obtain the context of the subscriber initiating the communication event.  
         [0029]     Suitably, the communication module is adapted to obtain the context of the subscriber receiving the communication event.  
         [0030]     According to a third aspect of the present invention, there is provided a communications service comprising the apparatus as described above.  
         [0031]     According to a fourth aspect of the present invention, there is provided a communications device comprising the apparatus as described above.  
         [0032]     According to a fifth aspect of the present invention, there is provided a telecommunications system comprising a communication service as described above.  
         [0033]     According to a sixth aspect of the present invention, there is provided a telecommunications system comprising a communication device as described above. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0034]     Embodiments of the present invention will now be described, by way of non-limiting example only, in which:  
         [0035]      FIG. 1  is a block diagram showing an overview of a system according to the prior art;  
         [0036]      FIG. 2  is a block diagram showing of an overview of a system according to one embodiment of the present invention;  
         [0037]      FIG. 3  is a diagram representing part of a graphical user interface for defining a context, according to one embodiment of the present invention; and  
         [0038]      FIG. 4  is a flow diagram outlining example processing steps taken by a service or a device according to one embodiment of the present invention.  
     
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS  
       [0039]     Referring now to  FIG. 1  there is shown a block diagram of an overview of a system  100  according to the prior art.  FIG. 1  shows a user device  104 , such as a mobile telephone interacting with a service  108 , such as a mobile telephone network, and a user device  102 , such as a residential telephone handset interacting with a service  106  such as a residential telephone network.  
         [0040]     If the user of the telephone handset  102  wishes to cause all telephone calls made thereto to be automatically forwarded to the mobile telephone handset  104  the user instructs the residential telephone network  106  to forward all calls to the telephone subscriber number associated with mobile telephone handset  104 . Typically the instruction will be provided using the telephone handset  102  by, for example, dialling a predetermined code followed by the telephone subscriber number to which calls are to be forwarded, as shown in the example below:  
         [0041]     *94*0123456789  
         [0042]     where *94* is a code defined by the network to indicate a call forwarding request;  
         [0043]     and where 0123456789 indicates the telephone subscriber number to which all incoming calls are to be forwarded.  
         [0044]     In a similar manner, if the user wishes to personalise or customise other features of the service  106 , this can be achieved by using the user device  102  in an appropriate manner, as will be understood by those skilled in the art.  
         [0045]     In addition to personalising the features of the service  106 , the user may also personalise features of the user device  102  to affect the functioning of the device in response to certain events. For example, the user of a mobile telephone can instruct the mobile telephone to use a ‘silent’ alert instead of a ringing tone when an incoming call is received.  
         [0046]     One of the problems with the current situation, however, is that the user has to perform active programming or configuration steps in order to personalise a service or device in response to some parameter or characteristic of the user. A parameter or characteristic of the user may be, for example, the location of the user, the activity of the user, the conscious state of the user, and so on.  
         [0047]     Furthermore, as shown in the example above, the configuration step may require the user to know how to personalise each service, and the information (such as a telephone subscriber number to which to forward incoming calls, etc) required for such personalisation. For example, the manner in which a call forward is set up on a residential telephone network is likely to be different to the manner in which a call forward is set up on a mobile telephone network.  
         [0048]     Referring to  FIG. 2 , there is shown a block diagram of an overview of a system  200  according to one embodiment.  FIG. 2  shows a number of user devices  202  and  204 , such as a mobile telephone, personal digital assistant, personal computer, or other suitable computing device, and a number of services  206  and  208 . Each of the user devices and services has access, via a suitable network, to a context store  210 .  
         [0049]     In the present example the user device  204  is a mobile telephone handset, the service  208  is a mobile telephone service provided by a suitable mobile telephone network, the user device  202  is a residential telephone handset, and the service  206  is a residential telephone service provided by a suitable residential telephone network.  
         [0050]     The user device  202  has access to the user context store  210  to which the user device  202  publishes, or otherwise makes available, information representing the context of the user at a given time.  
         [0051]     The context may be determined by the user through use of the user device  202 . For example, the user device  202  may present to the user a list, such as shown in  FIG. 3 , of different parameters which the user can use to describe his current context. Using an appropriate user interface of the user device  202 , the user can, for example, tick each of the boxes which correspond to his current context, thereby providing a description of his current context which can be published to the context store  210 . For example, some of the items in the list may relate to the current location of the user, others to the current activity of the user, others to the conscious state of the user, and so on.  
         [0052]     For example, if the user is working at home, the user may tick the box “Working” and the box “At Home”. Similarly, if the user is sleeping at home the user may tick the boxes “At Home” and “Sleeping”. Alternative ways of defining a context could also be used such as, for example, a graphical user interface. Such a graphical user interface could be arranged to use graphical icons to represent different characteristics or parameters of the user&#39;s context. For example, a ‘house’ icon could be used to indicate that the user is at home, a ‘car’ icon could be used to indicate that a user is driving, and so on. In this way a user could use a drag-and-drop technique, for example, to drag-and-drop all relevant graphical icons onto a graphic representation of the user to define the user&#39;s context.  
         [0053]     In other embodiments the context may also be defined by another user, for example on behalf of a user, automatically by a user device, or in any other appropriate manner.  
         [0054]     Some of the context parameters may include additional information such as, for instance, the telephone subscriber number of the user&#39;s mobile telephone or business telephone.  
         [0055]     Once the context has been defined it may be published by the user device  202  to the context store  210  in an appropriate manner, such as using an appropriate protocol such as HTTP. The publishing may be automatic upon modification or definition of the context, or the user may be prompted to effect the publishing of the context. The published context does not define any actions to be taken according to the context, but simply describes the current context of the user of the user device  102 .  
         [0056]     Each of the user devices  202  and  204  and services  206  and  208  have access to the context store through an appropriate network, such as the Internet. The user may use any suitable user device, such as user device  202  or  204 , for defining the user context and for publishing the defined user context to the context store  210 .  
         [0057]     Reference is now made to  FIG. 4 , which shows a flow diagram outlining example processing steps taken by one of the services  206  or  208 , or by one of the user devices  202  or  204 , in response to a communication event being received thereby. For example, the communication event may be a call establishment request sent from a telephone handset (not shown) to the user device  202  in order to establish a telephone call. Other examples of communication events include a hang-up or off-hook signal, a dialled number, and the like.  
         [0058]     When a communication event, such as a call establishment request intended for the telephone handset  202 , is received (step  402 ), through an appropriate receiving element or module (not shown), by the residential telephone network  206 , and prior to processing the communication event, the residential telephone network  206  obtains (steps  404 ), through use of an appropriate communication module (not shown), the published context of the user of the user device  202  from the context store  210 . Those skilled in the art will appreciate that the user&#39;s context may be retrieved from the context store at other times, for example on a periodic or polled basis, and stored in a context cache (not shown) with the telephone network  206 . The telephone network may be arranged to process both incoming and outgoing communication events in accordance with the obtained context.  
         [0059]     Since, as previously described, the stored context contains no rules the telephone network  206  generates (step  406 ), using a suitable rule generator or processing logic (not shown), one or more custom rules based on the context, as described in more detail below. The rules may also be generated based on data in addition to the obtained context, such as the current time, network state, or any other appropriate data. In other embodiments the rules may be pre-generated by the telephone network  206 , in which case the step  406  may consist in retrieving the pre-generated rules.  
         [0060]     Once the custom rules have been generated based on the obtained context, the communication event is handled or processed (step  408 ), using appropriate processing logic (not shown), in accordance with the generated rules.  
         [0061]     For example, if the retrieved context indicates that the user is: 
        At home; and     Sleeping 
 
 a rule may be generated causing the residential telephone network  206  to immediately forward all incoming calls made to the user&#39;s residential telephone subscriber number to the user&#39;s voice mail service, thereby avoiding disturbing the user. Alternatively, the generated rule may cause the user&#39;s telephone handset  202  to ring only twice before forwarding the call to the user&#39;s voice mail service. The generated rule may be implemented in a telephone network, for example, by the appropriate programming of a network switch or other network element, as appropriate, as will be apparent to those skilled in the art. 
       
 
         [0064]     In another example, if the retrieved context indicates that the user is: 
        in car; and     not working 
 
 the residential telephone network  206  may generate a rule such that all incoming calls made to the user&#39;s residential telephone subscriber number are immediately forwarded to the user&#39;s mobile telephone subscriber number. 
       
 
         [0067]     In the same manner, when a call establishment request is received by the mobile telephone network  208  the same steps  402  to  408  are performed. However, the generated rules based on the context may be different to the rules generated by the residential telephone network  206 , even though the context is the same. In the present example where the retrieved context indicates that the user is: 
        in car; and     not working 
 
 the generated rule may cause all calls made to the mobile telephone subscriber number to be automatically forwarded to the user&#39;s mobile voice mail service. A call made to the user&#39;s work telephone subscriber may cause the generation of a rule which causes all calls made to the user&#39;s work telephone subscriber number to be immediately forwarded to his work voice mail system. 
       
 
         [0070]     One advantage of such a system is that a user only has to publish a single context which reflects his current context, and the personalisation of one or more user services or devices is effected, without requiring the user to specify any rules along with the context, and without requiring the user to personally program or effectuate the personalisation.  
         [0071]     Each device or service may generate its own rules based on the published context in any appropriate manner, such as using artificial intelligence or any other appropriate rule generation techniques, thereby enabling each device or service to be customised or personalised in an appropriate manner. For example, a rule generator may perform a keyword search on the published context to determine one or more rules to generate. For example, if the published context includes the text string “Sleeping” a rule generator may recognise this and generate a rule which will prevent the user from being disturbed, for example by forwarding all calls immediately to a voice mail service, by causing a user handset to use a non-auditory alert, and so on. Similarly, if the residential telephone network knows that it is the “home” telephone network and that the context indicates that the user is “at work” the rule generator may infer that the user is not at home and generate a rule that forwards all incoming calls to the users residential telephone subscriber number to the user&#39;s mobile or work telephone subscriber number. As mentioned earlier, the telephone subscriber numbers for a home, work or other location may be included in the context.  
         [0072]     In a further embodiment each service or device alternatively, or additionally, comprises a local, or locally accessible, user profile store (not shown) for storing, for example, the user&#39;s residential, work and mobile telephone subscriber numbers. The user profile may also include some user rules or preferences which may be used when generating the rules, such as “If context is ‘sleeping’ forward calls to voice mail”, or “If context is ‘sleeping’ use silent alert’.  
         [0073]     In a yet further embodiment, the user context obtained from the context store is not the context of the subscriber receiving the communication event, but is the context of the subscriber initiating the event. For example, in the case of a call establishment request, the service or device receiving the call establishment request will process it based on one or more rules generated based on the context of the caller, rather than the callee.  
         [0074]     Although the above embodiments are described in relation to a communication event, those skilled in the art will appreciate that the embodiments are not limited thereto. For example, rules may be generated to cause the customisation or personalisation of any device or service to modify the manner in which a device or service responds to or processes stimuli.