The present application relates generally to office communications management and, more specifically, to a personal status communications manager.
Within the area of personal communications management, users of personal communications management applications often find it useful to indicate a level of availability.
A given user may be associated with a wide range of network entities, each of the network entities associated with a mode of communication and operable to indicate a level of availability of the user.
A user status may be updated at one of a plurality of network entities associated with a user. Through communication between the network entity on which the update has been made and a central server, an indication of the status update may be transmitted, by the central server, to the other network entities associated with the user.
In accordance with an aspect of the present invention there is provided a method of facilitating automatic replication of a user status associated with one mode of communication among a plurality of modes of communication, the replication accomplished across a plurality of network entities of the plurality of modes of communication. The method including receiving indication of an occurrence of a trigger event representative of a change in the user status associated with the one mode of communication, selecting, based on the trigger event, an instruction associated with a network entity associated with a given mode of communication among the plurality of modes of communication and transmitting, to the network entity, the instruction, thereby allowing the network entity to represent the user status in a manner suitable for the network entity. In other aspects of the present invention, an apparatus is provided for carrying out this method and a computer readable medium is provided for adapting an apparatus to carry out this method.
Other aspects and features of the present invention will become apparent to those of ordinary skill in the art upon review of the following description of specific embodiments of the invention in conjunction with the accompanying figures.
Reference will now be made to the drawings, which show by way of example, embodiments of the invention, and in which:
Within many calendar applications there is the ability to set up an out of office notification that applies to the email system that the user has as their preferred email system.
Prior to this invention it is not possible to accurately reflect a user's out of office status on all of their endpoints as co-ordination of those endpoints and their management was not consistent.
This lead to the problem that a user had to hand manage individual network entities using explicit proprietary command sequences for that network entity.
Also connected to the wide area data network 104 is a Private Branch Exchange (PBX) 114. The PBX 114 may be additionally connected to a telephone network 106. It will be understood that many telephones may be connected to the PBX 114, however, only one example telephone 116 is illustrated in
One or more client applications may be executed by a personal computer (PC) 102, which is illustrated communicatively connected to the wide area data network 104. Memory (not shown) in the first PC 102 may be loaded with software for executing aspects of the present disclosure from a software medium 118 which could be a disk, a tape, a chip or a random access memory containing a file downloaded from a remote source.
Other communication equipment may also form a portion of the network environment 100 of
The network environment 100 of
To summarize
Users of Microsoft Outlook™ in conjunction with Microsoft Exchange™ Server may be familiar with an Out of Office assistant that arranges automated transmission of a preset response to messages received at a user's e-mail inbox. The preset response may be edited by the user to indicate that the user will be away from the office and out of e-mail contact for a predetermined amount of time.
Similarly, with a voice mail system, a user may select among a regular outgoing greeting and a vacation greeting. The vacation greeting indicate that the user will be away from the office and out of touch with the voice mail server for a predetermined amount of time.
Furthermore, instant messaging applications have developed more finely grained status indications. A user of an instant messaging application may set status to: Online; Busy; Be Right Back; Away; On The Phone; Out To Lunch; or Appear Offline.
In overview, aspects of the present disclosure, the user may indicate a status to a single one of the providers of modes of communication. Subsequently, the status may be distributed to all of the providers of modes of communication associated with the user.
To facilitate co-ordination and distribution of user status updates by the application server 108, the user creates and edits a user profile. Such creation and editing may be accomplished by the user with a client application executed on the PC 102. The client application may communicate, over the wide area network 104, with a personal status communications manager application executed on the processor of the application server 108. Alternatively, a user profile may be created and edited by an administrator.
A user profile may be configured to associate the user with network entities and modes of communication. The user profile may define a trigger event and associate with the trigger event handling rules that specify actions to be carried out by the servers of the modes of communications.
The orchestration is an internal application construct that is intelligent enough to understand how the incoming event is to be handled based upon a series of user generated handling rules. These rules take the incoming event, the OOO alert with the associated OOO information, and begins the process of setting up the required alerts.
For example, the voice mail system is identified from the user profile and the incoming user OOO greeting is converted to the relevant format necessary for the voice mail system to re-play the greeting to callers, and the user's network entities is then set up to forward to the voice mail system when any caller terminates on that network entity. The orchestration engine will issue the relevant signaling and media control sequences to effect that forwarding activity and this may well be very different for each voice mail system and network entity.
The users instant message system is identified from the profile and is then sent the relevant control and media signaling to set up the required notification for the OOO alert.
This sequence of control and media signaling is repeated for each of the relevant devices or network entities in the user profile that is associated with handling the OOO alert and each network entity may require very different handling and this is transparent to the user.
The user now can automatically update multiple environments without having to individually update those network entities one by one.
Responsive to receiving (step 402), from the network entity, the indication of the event, the personal status communications manager selects (step 404), based on the trigger event (202,
The application server 108 may include a “rules engine” to extract, from a user profile, behavioral rules that associate trigger events with instructions for network entities. When performing the selection of step 404, the personal status communications manager may simply select the instructions 204 in the order in which the instructions 204 appear in the user profile.
Subsequent to selecting (step 404) an instruction from the user profile, the application server transmits (step 406) the selected instruction 204 to the associated network entity 206. The network entity, upon receipt of the instruction, carries out the instruction.
As will be clear to a person of ordinary skill in the art, the application server 108 may be configured with protocols and signaling schemes appropriate for communication with each of the network entities with which the application server 108 will be expected to communicate.
Subsequent to transmitting (step 406) the instruction, the personal status communications manager determines (step 408) whether any further instructions remain to be transmitted, according to the user profile 200. Upon determining (step 408) that further instructions remain to be sent, the personal status communications manager returns to the selecting step to select (step 404) a further instruction and transmit (step 406) the transmitted instruction.
Consider a scenario in which the user uses the telephone 116 to connect to the voice mail server 110 via the PBX 114. The user interacts with an interface presented by the voice mail server 110 and indicates a desire to record an out of office outgoing greeting. The user may, for example, record a outgoing greeting that says “I am out of the office. I plan to return to the office on the 10th.” Upon completion of interaction with the voice mail server 110, the user hangs up the telephone 116. Responsive to the occurrence of a recognized event, i.e., the setting of the out of office greeting, the voice mail server 110 transmits an indication of the event to the application server 108.
Turning to
Responsive to receiving (step 402), from the voice mail server 110, the indication of the event, the personal status communications manager selects (step 404), based on the trigger event, an instruction associated with a network entity associated with a given mode of communication among the plurality of modes of communication. Recall that the user profile 300 of
For example, the personal status communications manager may select (step 404), based on the setting of the out of office voice mail greeting trigger event, the instruction associated with the e-mail server 128. Upon selecting (step 404) the instruction associated with the e-mail server 128, the personal status communications manager may then transmit (step 406), to the e-mail server 128, an instruction to turn on out of office assistant.
It could be that the voice mail server 110 is equipped with speech-to-text conversion software. Accordingly, when indicating to the application server 108 that the out of office voice mail greeting trigger event has occurred, the voice mail server may also indicate that the outgoing message has been set as “I am out of the office. I plan to return to the office on the 10th.” Given an appropriate protocol, the personal status communications manager, when transmitting (step 406), to the e-mail server 128, the instruction to turn on out of office assistant may, as part of the instruction, indicate that the out of office greeting should read “I am out of the office. I plan to return to the office on the 10th.”
Alternatively, the voice mail server 110 could transmit, to the application server 108, a digital representation of the audio of the outgoing out of office greeting. Then, the application server 108 could perhaps perform speech-to-text conversion on the audio and, as part of the instruction to the e-mail server 128, indicate that the out of office greeting should read “I am out of the office. I plan to return to the office on the 10th.”
Upon determining (step 408) that further instructions remain to be transmitted, the personal status communications manager may select (step 404) the instruction associated with the IM server 120. The personal status communications manager may then transmit (step 406), to the IM server 120, a message instructing the IM server 120 to change the indication of the status of the user to “Away”.
Such selecting (step 404) and transmitting (step 406) may continue until the personal status communications manager determines (step 408) that no more instructions associated with the trigger event remain to be sent. Responsively, the method may be considered to be complete.
Advantageously, the user is able to update status on a single network entity and the status of the user, as presented by each of the user's associated network entities, is updated. Conveniently, the network entity on which the status update is set need not understand signaling and control requirements specific to each of the other network entities.
The associated network entities are managed for the user, with relevant proprietary command sequences sent to the network entities to effect the change of state and provide the relevant notification to users of the mode of communication associated with that network entity.
The above-described embodiments of the present application are intended to be examples only. Alterations, modifications and variations may be effected to the particular embodiments by those skilled in the art without departing from the scope of the application, which is defined by the claims appended hereto.