Scheduled online presence on instant messenger

The embodiments provide systems and methods which allow users to schedule routine online presence information to let outside world see the users appear to be “online” or “offline” at a particular day and time. An exemplary system of scheduling and displaying an online presence of a user of an instant messaging (IM) application is provided. The system includes an online presence scheduler for entering the time zone of the user and for scheduling an online schedule for the user to appear online. The online schedule includes a start time, an end time, and a routine of the user. The system also includes a presence management server (PMS). PMS determines the online presence of the user based on a login time of the user to the IM application, the online schedule for the user, and an identification of the user. The PMS prepares an online presence information to reflect the determined online presence of the user for display. The time zone and online schedule of the user entered into the online presence scheduler and the identification of the user are stored in the PMS.

APPLICATION FOR CLAIM OF PRIORITY

This application claims the benefit of Indian Patent Application No. 1833/CHE/2007, filed Aug. 17, 2007, entitled “Scheduled Online Presence on Instant Messenger.” The disclosure of the above-identified application is incorporated herein by reference.

BACKGROUND

1. Field of the Invention

This invention relates generally to the displaying of online presence of a user of an instant messenger (IM) or an instant messaging (IM) system. Specifically, the displayed online presence can be scheduled in advanced by the user.

2. Description of the Related Art

Instant messaging (IM) allows users to exchange information, such as text messages, files, voice, and videos, in real-time. The information exchanges occur between two or more people, who log into a particular IM service or IM services that interface with one another. Allowing for instantaneous communication between a number of parties at the same time, instant messaging can thus transmit information quickly and efficiently, as well as receive an immediate acknowledgement or reply. Therefore IM is an effective communication and collaboration tool. With the benefit of being able to see the other party using webcams, and even talking directly for free over the internet, this form of digital communication has been widely accepted by individuals of all ages.

As described above, instant messaging (IM) offers real-time communication and allows easy collaboration. IM might be considered more akin to genuine conversation than email's “letter” format. In contrast to e-mail, the parties know whether the peer is available. On the other hand, people are not forced to reply immediately to incoming messages. For this reason, some people consider communication via instant messaging to be less intrusive than communication via phone.

Most IM services offer presence (or status) information features, which indicate whether a user is currently online and available to exchange information or is offline and unavailable. These IM systems allow a user to manually set an “online presence (or status)” or “away message” so peers are notified when the user is available, busy, or away from the computer, after the user logs into IM systems. The above mentioned IM systems set a user to be “offline” (or unavailable) when the user logs off systems. Some IM systems also allow an user to appear “offline” while the user actually logs into the IM systems. However, manually setting an “online presence” or “away message” is undesirable, since it requires extra effort of a user to remember to take such an action.

In view of the foregoing, there is a need for systems and methods for setting and displaying programmable online presence information.

SUMMARY OF THE INVENTION

Broadly speaking, the embodiments of the present invention provide systems and methods which allow users to schedule routine online presence information to let outside world see the users appearing to be “online” or “offline” at a particular day and time. Such systems and methods provide online presence scheduling capability. Such systems and methods relieve the users from having to manually reset or modify the users' online presence information regularly. Using such systems and methods, a user can appear to be online or offline based on the user's preference at certain time periods of the day. Additionally, such systems and methods allow users to change their online presence information to be different from the “routine” online presence information, when the need arises. It should be appreciated that the present invention can be implemented in numerous ways, including as a method, a system, or a device. Several inventive embodiments of the present invention are described below.

In one embodiment, a method of scheduling and displaying an online presence of a user of an instant messaging (IM) application is provided. The method includes selecting a time zone of the user for an online presence scheduling. The method also includes setting an online schedule of the user, which includes a start time, an end time, and a routine of the user to appear online for the online presence scheduling. The user appears online when the user logs into the IM application during the online schedule and appears offline when the user logs into the IM application outside the online schedule. The method further includes determining the online presence of the user based on a login time of the user to the IM application, and the time zone and online schedule of the user. The login time is the time the user logs into the IM application. The time zone and the online schedule of the user are stored to enable the determining of the online presence of the user. In addition, the method includes displaying the determined online presence of the user in an IM control panel of the user.

In another embodiment, a system of scheduling and displaying an online presence of a user of an instant messaging (IM) application is provided. The system includes an online presence scheduler for entering the time zone of the user and for scheduling an online schedule for the user to appear online. The online schedule includes a start time, an end time, and a routine of the user. The system also includes a presence management server (PMS). PMS determines the online presence of the user based on a login time of the user to the IM application, the online schedule for the user, and an identification of the user. The PMS also prepares an online presence information to reflect the determined online presence of the user for display, and the time zone and online schedule of the user entered into the online presence scheduler and the identification of the user are stored in the PMS.

In yet another embodiment, computer readable media including program instruction for scheduling and displaying an online presence of a user of an instant messaging (IM) application are provided. The computer readable media include program instruction for selecting a time zone of the user for an online presence scheduling. The computer readable media also include program instruction for setting an online schedule of the user, which includes a start time, an end time, and a routine of the user to appear online for the online presence scheduling. The user appears online when the user logs into the IM application during the online schedule and appears offline when the user logs into the IM application outside the online schedule. The computer readable media further include program instruction for determining the online presence of the user based on a login time of the user to the IM application, and the time zone and online schedule of the user. The login time is the time the user logs into the IM application, the time zone and the online schedule of the user being stored to enable the determining of the online presence of the user. In addition, the computer readable media include program instruction for displaying the determined online presence of the user in an IM control panel of the user.

DETAILED DESCRIPTION

Broadly speaking, the embodiments of the present invention provide systems and methods which allow users to schedule routine online presence (or status) information to let outside world see the users appearing to be “online” or “offline” at a particular day and time. Such systems and methods provide online presence scheduling capability. Such systems and methods relieve the users from having to manually reset or modify the users' online presence information regularly. Using such systems and methods, a user can appear to be online or offline based on the user's preference at certain time periods of the day. Additionally, such systems and methods allow users to change their online presence information to be different from the “routine” online presence information, when the need arises.

In one embodiment, presence information of a user mentioned above would appear on control panels of the user and other users who exchange IM messages with the user. These other users are on the user's buddy list and the user is also on these other users' buddy lists. Friends or colleagues who exchanges information through IM for personal or professional purposes put one another on the “buddy” lists.

IM applications typically provide default presence information for a user, such as “available”, when the user logs into IM (or become online) or “unavailable” when the user logs off IM (or become offline). Some IM systems allow a user to appear “offline” when the user is actually “online”. This situation can happen when a user is exchanging information with a friend after work through IM and the user does not want his colleagues from work know that he is using IM. The user might want to avoid IM exchange requests from colleagues after work hours. As described above, some IM systems allow a user to appear “offline” when the user is actually “online”. These IM systems require users manually change the default presence information into a non-default presence information.

The user might want to display a regular and scheduled online presence (or online status) to people on the user's buddy list. For example, a user might want to appear to others as “offline” between 6 pm to 10 pm everyday to avoid getting IM requests from people. Even though the user might use IM to communicate with one or more of his/her friends between 6 pm to 10 pm occasionally. Therefore, the user would prefer that his/her online presence to appear as “offline” to the outside world. Only the friends or acquaintances that the user is using the IM to exchange messages with know that the user is actually online.

Current IM applications do not have such a feature or function to allow users to set routine online presence information. In view of the foregoing, there is a need for systems and methods for setting and displaying routine online presence information. When users log into the IM application, the routine online presence information shows the online presence information that the users want others to see, regardless of the whether the user is online or offline.

FIG. 1shows a diagram illustrating an embodiment of an Instant Messaging (IM) system100operating over the Internet. In this embodiment, USER-1and USER-2exchange instant messages. An Instant Messaging (IM) client creates an Instant Messaging (IM) window102of USER-1on an IM client of USER-1. The IM window102of USER-1is a graphical user interface. IM window102of USER-1generally includes a history window104containing messages that have been exchanged in the past, and a new text window106for new messages to be entered by USER-1. USER-1enters messages to communicate with USER-2in text window106. The text in the text window106can be entered by typing in characters or symbols through a keyboard. Alternatively, USER-1can “speak” numbers, characters, words or sentences to a speaker. A voice recognition decoder can then translate the spoken characters, numbers, words or sentences into texts appear on the text window106.

A second Instant Messaging client of USER-2also creates an Instant Messaging (IM) window122of USER-2. IM window122of USER-2also includes a history window124and a new text window126. USER-2enters messages he/she communicates with USER-1in text window126. A history window124contains messages that have been exchanged between USER-1and USER-2earlier. Instant Messaging window122displays a message sent from Instant Messaging window102via message server112.

An IM server112is also connected to the Internet to interact with the Instant Messaging window102of USER-1and the Instant Messaging window122of USER-2. In various IM systems, the message server may perform different functions such as receiving messages and transferring them, replacing certain text with symbols, or otherwise modifying or relaying messages. In addition, the Instant Messaging client may display various menus and buttons that activate common Instant Messaging functions such as changing font, ringing another user, inserting symbols, etc.

FIG. 2Ashows an embodiment of an IM control panel210for USER-1. The IM control panel210is also an IM client. In this IM control panel210, there is a list (friend list or buddy list)230of friends, which includes friends, colleagues and acquaintances, which USER-1communicates through IM. List230shows that USER-1has “Friend A”, “Friend B”, “Friend C”, “Friend D”, and “Friend E” on USER-1's friend list (or buddy list). Next to the name of each “friend”, there is an icon that reflects the online presence (or online status) of the friend. For example, next to “Friend A”, there is an icon with a smiley face, which is used to indicate that “Friend A” is online (or available) for IM exchanges. In contrast, next to “Friend D”, there is an icon of non-smiley face, which is used to indicate that “Friend D” is not online (or offline, unavailable) for IM exchanges. In addition to simple icons that reflect whether a user is online or offline, additional online presence description can be used. For example, next to “Friend C”, there is a smiley face with a circle, which has a short horizontal bar inside the circle. The circle with the short horizontal bar resembles a stop symbol for traffic sign. Next to “Friend C”, there is also a text of “busy”, which is used to indicate that “Friend C” is busy. The icon and text next to “Friend C” shows that although “Friend C” is available, “Friend C” is busy. The circle with the short horizontal bar is used to show that although “Friend C” is online, but “Friend C” might not be free for IM changes. If USER-1wishes to exchange messages with “Friend C”, USER-1might not receive an instant response. Additional coloring of the icon can also be used to emphasize the presence of the users. For example, the smiley face icons next to “Friend A”, “Friend B”, and “Friend C” might be colored with a bright yellow color to emphasize that these three friends (or buddies) are online. In contrast, the non-smiley face icons next to “Friend D” and “Friend E” might be colored with a dull gray to show that these two friends are offline and not available. The online presence (or online status) icons and texts in IM control panel210allow USER-1to tell if his/her friends are online for exchanging messages with USER-1.

FIG. 2Bshows a few examples of online presence symbols and texts, which includes online presence250and offline presence260. Other icons (or symbols) and texts can be used too.

In addition to list230of friends, there could be a button240which allow USER-1to add people to his list230of friends. IM control panel210can also include a field230next to the name of USER-1that shows the online presence of USER-1. In the example ofFIG. 2A, USER-1is shown to be “Available” in field230. This “Available” online presence is a default online presence set by the system when a user logs into IM. This “Available” online presence is also shown in the online presence of lists of friends, similar to list230, in control panels of users who have USER-1in their friend lists. In some IM system if a user has manually set his/her online presence to be “offline” (or “unavailable”), the default online presence when the user logs into the IM system is “offline”.

Field230can also be used to modify the online presence of USER-1. If USER-1wishes to appear “offline” to the outside world, USER-1can click on field220. The arrow next the text “Available” in field220indicates that there are other selections available. When field220is clicked, a window225appears below field220, as shown inFIG. 2Cin accordance with one embodiment of the present invention. Window225lists the other online presence available for USER-1to select. USER-1can move the cursor226next to the selection of a non-smiley face with text “Unavailable”, which are used to indicate an offline presence, and make a click. Such selection would prompt the text in the field220to be changed to “Unavailable”. The existing IM systems require users, such as USER-1, to manually change the default presence information into a non-default presence information.

As discussed above, an IM user might want to display a regular and scheduled online presence to people on the user's buddy list. For example, a user might want to appear to others as “online” between 8 am to 6 pm and “offline” the rest of the day everyday to avoid getting IM requests from people between 6 pm to Sam the next day. Even though the user might use IM to communicate with one or more of his/her friends after 6 pm, such as between 6 pm to 10 pm, occasionally, the user does not want his/her colleagues to know. Therefore, the user would prefer that his/her online presence to appear as “offline” to the outside world. Only the friends or acquaintances that the user is using the IM to exchange messages with know that the user is actually online.

As discussed above, the existing IM systems do not provide such a scheduling feature or function. Users of IM need to manually change the online presence from “available” (or “online”) to “unavailable” (or “offline”) when users utilizes IM during the hours that the users do not want outside world to know that the users are online. In addition, the users need to remember to change the online presence back to “available” when the users log into IM systems again during hours that the users want to appear online. All these presence changes require additional effort and attention from the users.

FIG. 3Ashows an embodiment of an IM control panel310for USER-1. The control panel310is very similar to the IM control panel210described above. In this embodiment, USER-1has a friend USER-2, who is “Online” (or available) according to the presence information332of USER-2. The difference ofFIG. 3AfromFIG. 2Ais that USER-1click on the button220ofFIG. 2Ato appear “Offline” or “Invisible to Everyone”. The reason could be that USER-1needs to perform IM exchanges with one of his friend, such as “Friend A”, and does not wish to let others know that he/she has logged into IM. Therefore, USER-1would like to appear to be “Offline” and “Invisible to Everyone.

FIG. 3Bshows an embodiment of an IM control panel350of USER-2, who logs into IM at about the same time as USER-1. Since USER-1's online presence is set to be “Offline” or “Invisible to Everyone”, the presence information342of USER-1in USER-2's control panel350is “Offline” (with a non-smiley face). When USER-2sees the presence information342of USER-1, USER-2thinks that USER-1is “offline” and would most likely not initiate IM exchanges with USER-1. However, USER-1is actually online and could possibly be engaging in IM changes with “Friend A”.

As discussed above, existing IM applications do not allow scheduled online presence. Users would appear either online or offline based on users' login presence with IM or based on users' manual resetting. However, as discussed above, sometimes users would like to maintain certain online or offline presence in a preset time period on a routine basis. For example, users, such as USER-1, use IM for work and for personal usage. USER-1might use IM to exchange messages with his/her colleagues either locally or in remote locations for work purposes. For example, USER-1uses IM to exchange messages with his/her colleagues during his/her work hours from Sam to 6 pm. USER-1logs into IM during work hours and uses IM to exchange messages with colleagues for work related or non-related issues. USER-1wants his/her colleagues to know that he/she is available during work hours. During work hours, such as Sam to 6 pm, USER-1engages in different IM sessions with different people on his/her IM friend list and appears to be “online” during work hours.

However, after work, such as after 6 pm, USER-1no longer wishes his colleagues to contact him on job related issues. USER-1might still want to use IM for his/her personal exchanges. USER-1could reset his/her online presence manually to make USER-1appear offline to everyone on his/her IM list of friends. However, this takes effort on USER-1's part and USER-1has to remember to take such an action. In addition, in some IM systems, if USER-1has manually made his/her online presence to appear “unavailable to everyone”, USER-1would have to reset the online presence to “available” when USER-1log into IM next time. Otherwise, USER-1would appear to be “offline” after USER-1logs in. If USER-1forgets to modify his/her online presence correctly, USER-1could appear offline during work hour and appear online after work, both are undesirable to USER-1. Therefore, it is desirable to have a system and a method that that allow users, such as USER-1, to pre-set or pre-schedule online presence. Such pre-setting would save users time and effort and can more accurately reflect users' desired online presence.

FIG. 4Ashows an embodiment of an IM control panel410of USER-1. In control panel410, there is an “online presence schedule” button450. USER-1can click on button450to schedule his/her preferred online presence during particular period(s). When USER-1clicks on button450, an online presence scheduler455, as shown inFIG. 4B, appears.FIG. 4Bshows an embodiment of an online presence scheduler455, which appears after a user click on the “online presence schedule” button450, for scheduling a routine that shows USER-1is “online”. During the time period(s) not chosen, USER-1would be shown “offline” (or unavailable).

In the online presence scheduler455there is a time zone setting box460, start time selection boxes,471,474and477, end time selection boxes,472,475, and478, and routine selection boxes473,476, and479. USER-1can use the time zone setting box460to set the time zone that the user is currently at. User can click on the arrow461to get a list of time zones of United States and countries to choose from. When USER-1click on arrow461, a list462of time zones would show below box460, as shown inFIG. 4C, in accordance with one embodiment of the present invention. If the user is in a place at west coast, such as San Jose, Calif., the user can move the cursor over “Pacific Time” and click on the selection. Alternatively, if the user is in Japan, the use can move the cursor over to “Japan” and make a selection. The time zone allows the USER-1to travel to locations in different time zones and allows USER-1still to maintain the online presence routine consistent with the local time. For example, USER-1can be based in California. When USER-1travels to work in Japan, USER-1can maintain USER-1preferred online presence schedule, such as appearing “online” between 8 am to 6 pm, according to the local time. The selections shown inFIG. 4Care just examples. Alternatively, other ways of displaying time zones for setting time zone can also be used.

Once the time zone of USER-1is set, the list462disappears and USER-1is brought back to scheduling window455. After the time zone is selected, the user can select the start time, end time and routine which show USER-1is “online”. Boxes471,472and473form a set of schedule selection for online presence scheduling. Similarly, boxes474,475,476form another set, and boxes477,478, and479form yet another set. Although the embodiment shown in browse455includes 3 selection sets, only 1 set is needed. Alternatively, additional selection sets can be added to provide additional scheduling choices.

USER-1can choose the start time, which shows that he/she is “online” by clicking on button431of box471. When button431is clicked, a list491of start time is shown below box471, as demonstrated inFIG. 4D, in accordance with one embodiment of the present invention. USER-1can choose a start time of a routine, which shows that USER-1is online. In one embodiment, the start time is the time that USER-1starts to work. For example, USER-1can choose 8 am as his/her start time. USER-1moves the cursor (or mouse) over the desired start time and clicks to make a selection. For example, USER-1can choose “8:00 AM” as his/her start time. Once the selection is made, the expanded time selection collapses and only the selected time, such as “8:00 AM”, is shown in box471. Afterwards, user can choose the end time that shows that the user is online by using box472. Similar to the selection of start time, end time selection can be revealed by clicking on arrow432. A list492of end time can be found below box472, as shown inFIG. 4E, in accordance with one embodiment of the present invention. For example, user can choose “6:00 PM” as the end time.

Alternatively, the start time and end time in boxes471and472can be entered by key board, instead of choosing by clicking on a selection. After the start time and end time are chosen, the routine of showing the online presence with the selected start time and end time is selected by using box473. When user clicks on the arrow (or box)433of box473, a list493of routine selection appears. The routine can include “daily”, “weekdays”, “weekend”, “Monday”, “Tuesday” . . . etc. If a routine, such as “weekday”, is chosen, USER-1would be shown to be “online” when USER-1logs into IM, from the start time, such as 8 am, to end time, such as 6 pm, during the weekdays. During the rest of the time, USER-1is shown to be “offline” regardless whether USER-1has actually logged off IM or not.

In addition to selecting an online presence routine by using boxes471,472, and473, additional online presence can be shown by using boxes474,475, and476, in a manner similar to selecting a routine using boxes471,472, and473. Additional online presence can also be set by using boxes477,478, and479. Alternatively, the system can be made to allow additional choices. Once the selection is complete, USER-1can click on the “Done” button465to end the online presence scheduling session.

In one embodiment, there are status setting boxes485,487,488, next to the 3 time selection choices, as shown inFIG. 4B. In addition to selecting “available” (with the smiley face symbol), USER-1can choose other status (or presence) symbols, such as the ones shown inFIG. 2C. For example, USER-1might regularly eats lunch between 12 noon to 1 pm. In this case, USER-1can choose a start time of 12 pm, an end time of 1 pm, a routine of weekday, with a status symbol of a smiley face with a stop symbol representing “not at my desk”, as shown inFIG. 2C. This symbol (or symbol accompanied by text) would allow friends of USER-1to know that USER-1is away from the desk between 12 noon to 1 pm. USER-1can use arrow486to choose different status (or presence) symbols. In the example illustrated here, symbols are used to represent online presence (or status). However, they are merely used as examples. Other representations of online presence, such as texts, can also be used.

As shown inFIG. 4B, the scheduling window455is connected to an IM server112through the Internet, in accordance with one embodiment of the present invention. In one embodiment, the scheduling information entered would be stored in a user online presence schedule storage150in the IM server112. Alternatively, the user online presence schedule storage150can be in a separate server that is coupled to IM server112. User online presence schedule storage150is a database that includes the online presence scheduling for IM users coupled to the IM server112.FIG. 4Gshows an example of a database480of the user online presence schedule storage150. In the database480, there are records, such as records481,482,483, etc., for all users coupled to the IM server112ofFIG. 4B. Records481,482and483contain time zones, start times, end times, and routines of USER-1, USER-2, and USER-3.

The online presence schedule entered by USER-1would reflect on the control panel310′ of USER-1and control panel350′ of USER-2, both are logged into IM and USER-2has USER-1on the friend list. If other people on USER-1's friend list are also logged into IM, they would able to able to see USER-1's online presence, just like USER-2. If the current time is 10 am, which is between 8 am and 6 pm, USER-1's online presence342′ on USER-2's control panel350′ would appear to be “online” or “available”, as shown inFIG. 4B.

FIG. 5Ashows a presence management server (PMS)500, in accordance with one embodiment of the present invention. PMS500determine the online presence of an IM user. The presence management server500can be in an IM server, such as an IM server112described earlier inFIGS. 1 and 4B, or in a separate server coupled to an IM server. In the PMS500shown inFIG. 5A, PMS500includes an online presence decider (OPD)520. PMS500receives a user's login information, which include user's identity information and the time that user login and pass them to OPD520. OPD520decides if the user is scheduled to appear as “online” or “offline” at the login time. The online status decider (OPD)520includes an online status schedule storage (OPSS)530, which is similar to the user online presence schedule storage150ofFIG. 4B, and a time synchronizer and keeper (TS/K)540. OPSS530stores a user's scheduled online presence information, which includes user's selected time zone and user's selected duration to appear “online”, which includes start time, end time and routine (or frequency) of the start time and end time as described inFIGS. 4B-4G. TS/K540synchronizes the login time the user with the time of the PMS500and keeps the time zone of the users. TS/K keeps track of the time at the user's selected time zone to allow the system to decide if the user is “online” or “offline” according to the scheduled online presence information.

If a user who lives and works in California and has scheduled the online presence information while in California, this user would need to reset his/her time zone to allow system500to perform time synchronization, if this user travels to Japan for a business trip. This time zone resetting due to time zone change would allow PMS500to would decide the user's online presence correctly.

After OPD520decides if the user is “online” or “offline”, the decision is passed to an online presence indicator (OPI)550, which prepares the online presence information to reflect the user's online presence at the login time. For example, if the OPD520decides that the user is “online” at login time, OPI550would present user's online presence as “online” on user's control panel and on control panels of users, who have the user on their friend lists and are online themselves.

After USER-1logs in, IM server112would verify the online presence of the user regularly to see if the user, such as USER-1, is still logged in, in accordance with one embodiment of the present invention. IM server112sends PMS500identity information of users who are currently login and current time to verify the scheduled online presence of these users. In one embodiment, the online presence checking is performed every 5 minutes. In another embodiment, the online status checking is performed everyone 15 minutes. Any frequency of checking is possible. The frequency is determined by the system setup. If a user's online presence has changed, the changed presence would reflect on control panels showing the user's presence.

FIG. 5Bshows an embodiment of an IM client590interacting with PMS500through an IM server112. The IM client590sends login information to IM server112. The IM server112passes the user's login information, which includes user's name (or identification) and user's login time, to PMS500.

The PMS500passes the login information to OPD520in a manner described above. The OPSS530and TS/K540of OPD520decide the online status of the user and pass the decision to OPT550to prepare online presence of the user, such as USER-1, and returns the information to the IM client590, such as of USER-1, and an IM client of another user, such as USER-2, who has the user on his/her list of IM friends and is currently logged in. Although only one control panel592of a friend of the user is shown inFIG. 5B, additional control panels of friends of the users who are currently logged in could also be receive correct online presence from PMS500.

In this embodiment, PMS500is separate from the IM server112. In another embodiment, PMS500is integrated in the IM server112. As mentioned above, after a user logs in to IM server112, IM server would verify and modify to see if the user's online presence regularly until the user logs off.

If a user, such as USER-1, wants to appear to be “online” at 10 pm, against the scheduled online presence setup, the user, such as USER-1, can perform a “forced online” action, in accordance with one embodiment of the present invention.FIG. 5Cshows an embodiment of a control panel575, which has a “forced online” button551. The “forced online” button551allows USER-1to change his/her online presence from offline to online at an offline time, such as 10 pm. USER-1might want to do this because USER-1has an important project that he/she needs to work on after his/her regular work hours. USER-1needs to let colleagues know that he/she is online to exchange messages with them. Another example is that USER-1might want to exchange IM with his friends on a weekend, which he normally is scheduled to be offline. The “forced online” button451inFIG. 4Acan perform the same function.

When USER-1clicks on the “forced online” button571, a window574opens with multiple buttons for USER-1to choose from, as shown inFIG. 5Din one embodiment. USER-1can choose button575for “forced online”, or button576for “no change”, Afterwards, USER-1can click on the “done” button577to enter the selection and to close the window574. A “forced offline” button571is only an embodiment in accordance with the present invention. In another embodiment, USER-1can click on the arrow573in USER-1online presence box572ofFIG. 5C. When USER-1clicks on arrow573, a list of online presence choices is displayed below box572, as shown inFIG. 5E. USER-1can choose one of the online presences to change USER-1's online presence from “offline” to “online”.

FIG. 6shows a process flow diagram600for online presence determination. An IM user first performs a “login” action605by accessing an IM control panel610. The login information, which includes user's identification and login time, is sent to OSD620. OSD620decides whether the user is scheduled to appear “online” or “offline” by is checking to see if the login time falls within the scheduled online time with a decision-making action625. If the result is “yes”, the presence of “online” is sent to the control panel610through route626. If the answer is “no”, the presence of “offline” is sent to the control panel61—through route627. When the user takes a “logout” action690, the “offline” presence is sent to the control panel610through route628. In one embodiment, route628is separate from route627.

The IM control panel610can have a mean, or method, to access the online presence scheduler630, which is similar to online presence scheduler455described above. As described above, the mean can be the online presence schedule button450ofFIG. 4Adescribed above. The online presence scheduler630, which is coupled to the presence management server (PMS)640, which is similar to the PMS500described above. The IM control panel610can also has a mean, such as button451, to activate “forced online” action, which is described above.

The embodiments described above mainly focus on systems and methods allowing users to appear “offline”, while they are actually online. However, similar systems and methods can be created to allow users to appear “online”, while they are actually “online”. For example, a user might want his/her colleagues to think that the user is “online”, while the user is actually offline.

The online presence scheduling system described above allows users to schedule their online presence. Users can have their desired online presence at the time they desire. Online presence scheduling relieves the users from having to manually change their online presence from online to offline during hours that users prefer to be considered offline. Although the online presence of users are described to be shown in the IM control panels, online presence of users are not limited to be shown in IM control panels. Users' online presence can also be shown on other IM clients coupled to the IM servers.

Any of the operations (or processes) described herein that form part of the invention are useful machine operations. The invention also relates to a device or an apparatus for performing these operations. The apparatus may be specially constructed for the required purposes, or it may be a general-purpose computer selectively activated or configured by a computer program stored in the computer. In particular, various general-purpose machines may be used with computer programs written in accordance with the teachings herein, or it may be more convenient to construct a more specialized apparatus to perform the required operations (or processes).

The above-described invention may be practiced with other computer system configurations including hand-held devices, microprocessor systems, microprocessor-based or programmable consumer electronics, minicomputers, mainframe computers and the like. Although the foregoing invention has been described in some detail for purposes of clarity of understanding, it will be apparent that certain changes and modifications may be practiced within the scope of the appended claims. Accordingly, the present embodiments are to be considered as illustrative and not restrictive, and the invention is not to be limited to the details given herein, but may be modified within the scope and equivalents of the appended claims. In the claims, elements and/or steps do not imply any particular order of operation, unless explicitly stated in the claims.