The same reference number represents the same or similar element on all drawings.
The status updating system 100 communicates with the presence server 122 over a network to update the user status of the user on the presence server 122. The status updating system 100 comprises an interface system 112 and a processing system 114. The interface system 112 is provided in the status updating system 100 to allow the user to interface with the status updating system 100 through a communication device 140. The processing system 114 coupled to the interface system 112 is provided in the status updating system 100 to process requests from the user using the client device 140 to update the user status on presence server 122.
The communication server 120 comprises any system, server or device that provides the communication service, such as an instant messaging service, through a network to the client device 130. The client device 130 operates the client application 132 to receive the communication service from the communication server 120. For example, the client device 130 may be a PC, and the client application 132 may be an instant messaging application. The presence server 122 monitors the user status, and may publish the user status to peer users through a peer device 150. A communication service enables an individual to communicate with one or more other individuals through a client device, such as a computer, a PDA, a telephone, etc. Examples of communication services include instant messaging, chat systems, online gaining systems, etc.
The user status on the presence server 122 is traditionally changed through the client application 132. For instance, when the user initially logs into the communication server 120 through client device 130, the user status on the presence server 122 may be set to “on-line”. The client application 132 may be adapted to allow the user to manually change the user status after the initial login. For instance, when the user leaves the client device 130, the user may manually change the user status through the client application 132 to “away from desk.”
The peer device 150 accesses the communication server 120 and the presence server 122 through a network utilizing a peer client application 152, and may receive a communication service from the communication server 120. The peer client application 152 may be a similar software application to the client application 132. For example, peer client application 152 and client application 132 may both be instant messaging applications. Further, the peer client application 152 and the client application 132 may be receiving the same or a similar communication service from the communication server 120. When the user status changes on the presence server 122, the peer user may receive an updated user status of the user through the peer client application 152.
If the user leaves the client device 130 operating the client application 132, he or she may forget to manually change the user status on the presence server 122 to show an unavailability to communicate with peer users utilizing the peer client application 152. For example, the user may leave his or her office to attend a meeting. If peer users attempt to communicate with the user through communication server 120, an immediate response from the user may not be forthcoming. To avoid the situation previously described, the user may want to remotely update the user status on the presence server 122 to reflect the unavailability to communicate with other users through the communication server 120. The user may use communication device 140, which may not be operating the client application 132, to access the status updating system and remotely update the user status on the presence server 122.
In step 202, the interface system 112 receives the request to update the user status on the presence server 122 from the user using the communication device 140. The communication device 140 may comprise any communication device adapted to transmit a message. Exemplary devices include a phone adapted to provide a phone call, a mobile phone or PDA adapted to provide a text message, or a computer, PDA or web-enabled phone adapted to receive a web page or other internet service from an internet server.
In step 204, the processing system 114 identifies a user identifier for the user on the communication server 120. The user identifier may comprise a username, a password, a pin number or some other information identifying the communication service for the user on the communication server 120. The processing system 114 may identify the user identifier by prompting the user to provide the user identifier. If the communication server 120 and presence server 122 are not part of the core network comprising the status updating system 100, then the user identifier may further identify the identity and/or location of the presence server 122. For example, the user identifier may comprise a username and domain address.
In step 206, the processing system 114 transmits an update message to the presence server 122 instructing the presence server 122 to update the user status for the communication service indicated by the user identifier. The update message may be any message adapted to instruct the presence server 122 to update the user status. The update message may additionally comprise authorization credentials, such as a username and/or a password, to authenticate the user of the communication device 140 to the presence server 122. In response to receiving the update message, the presence server 122 may update the user status to reflect the specified updated user status in the request to the status updating system 100.
The status updating system 100 may further be adapted to receive a selection of a status change through the interface system 112 from the user of the communication device 140, and transmit the update message to the presence server 122 to update the user status based upon the selection from the user. For instance, the user may use communication device 140 to enter a numerical selection indicating a status change to “unavailable”, “away from desk”, etc. In response to the presence server 122 receiving the update message, the user status of the user may be updated. Peer users may receive the updated user status of the user.
The status updating system 300 communicates with the communication server 320 over a network. The status updating system 300 comprises an interface system 312 and a processing system 314. The interface system 312 further comprises an interactive voice response system 316 provided to interface with a communication device, such as a phone 340. The status updating system 300 further comprises a processing system 314 coupled to the interface system 312 to remotely update the user status of the user on presence server 322. In the described embodiment in
Assume for example that a user has been logged in to his or her instant messaging account through the instant messaging client 332 running on the computer 330. The instant messaging status of the user is presently “on-line” indicating that the user is available to receive instant messaging messages. Assume further that the user leaves the proximity of the computer 330 without changing his or her instant messaging status to reflect an unavailability to communicate. If the user desires to update his or her instant messaging status, then the user would traditionally have to do so through the computer 330. According to features and aspects herein, the user can remotely update his or her instant messaging status through virtually any communication device that is not operating the instant messaging application 332. “Remotely update” refers to updating the instant messaging status through a device other than the computer 330 that is operating the instant messaging application 332, such as a cell phone, a telephone, etc. For instance, if the user leaves the computer 330 for a meeting, then the user may use the phone 340 found in the meeting room to remotely update his or her instant messaging status.
In the described embodiment in
In step 402, the interface system 312 prompts the user of phone 340 for an instant messaging identifier and an authentication credential. For example, the prompt may come from the interactive voice response system 316. The instant messaging identifier may be used to identify the user's instant messaging account on the instant messaging server 320 and the presence server 322. The authentication credential may be used to authenticate the user of the phone 340 to the instant messaging server 320 and/or the presence server 322. Additionally, the authentication credential may be used to authenticate the user of the phone 340 to the status updating system 300. For instance, the instant messaging identifier is a username that the user typically enters to access the instant messaging server 320, such as jdoe@instant_messaging_server. Further, the authentication credential may comprise a password used by the user in conjunction with the username to access the instant messaging server 320.
In step 404, the processing system 314 receives the authorization credential and instant messaging identifier from the user of the phone 340. The instant messaging identifier of the user of the phone 340 is identified by the processing system 314 by receiving the information provided by the user of the phone 340.
In an alternative to prompting the user for the instant messaging identifier, the processing system 314 may identify an instant messaging identifier for the user of the phone 340 from other information provided by the user. For example, the instant messaging identifier may be stored in the processing system 314. In response to receiving the information from the user of the phone 340, the processing system 314 may use one or more pieces of the information to locate a instant messaging identifier stored in the processing system 314 by matching one or more fields of the stored instant messaging identifier with one or more pieces of information provided by the user of the phone 340.
In step 406, the processing system 314 authenticates the user of the phone 340 through a prescribed method of authentication. For example, the processing system 314 may store the instant messaging identifier and authorization credentials (e.g., a username and password) for the user in the processing system 314. Upon receiving the instant messaging identifier and authorization credentials from the user of the phone 340, the processing system 314 may check the stored instant messaging identifier and authorization credential records to determine if the instant messaging identifier provided by the user of the phone 340 matches a known instant messaging identifier. If the processing system 314 locates a stored instant messaging identifier matching the instant messaging identifier provided by the user of the phone 340, then the processing system 314 may further determine if a stored authorization credential for the stored instant messaging identifier matches the authorization credential provided by the user of the phone 340. If both the instant messaging identifier and authorization credential provided by the user of the phone 340 match a stored instant messaging identifier and authorization credential, then the user of the phone 340 is correctly authenticated.
In step 408, the processing system 314 may transmit the instant messaging identifier and/or authentication credential to the presence server 322 to authenticate the user of the phone 340 to the presence server 322. The presence server 322 receives the instant messaging identifier and/or authentication credential from the processing system 314, and checks the stored account records of users on the presence server 322 to determine if the user of the phone 340 has an account on the presence server 322. The account records may be based upon the instant messaging identifier. If an account record is found on the presence server 322, then the presence server 322 may further determine if the authentication credential, such as the password, is correct for the user of the phone 340. If the user of the phone 340 is correctly authenticated by the presence server 322, then the presence server 322 may send back an acknowledgment message to the processing system 314 instructing the processing system 314 that the user of the phone 340 has been correctly authenticated. Once the acknowledgment message has been received by the processing system 314 from the presence server 322, then the processing system 314 may provide the user of the phone 340 with a menu comprising at least one status option.
In step 410, in response to the processing system 314 authenticating the user, the interactive voice response system 316 provides a menu to the user of the phone 340 comprising at least one status option. A status option is a status a user can select to be displayed to peer users. For instance, one of the instant messaging status options may comprise an option to change the instant messaging status to “away from desk”.
In step 412, the interactive voice response system 316 receives a selection from the user of one of the status options. For instance, the user of the phone 340 may press “1” to change the instant messaging status to “away from desk”. After receiving the selection from the user, the processing system 314 transmits the update message to the presence server 322.
In the embodiment described in
In step 502, the processing system identifies a domain identifier for the presence server 322 in response to receiving the instant messaging identifier provided by the user of the phone 340. In this instance, the processing system 314 may identify the domain identifier by discarding the contents of the username to the left of the @character, leaving a domain identifier of imserver1. The processing system 314 may identify the user of the phone 340 as a user of an presence server 322 at a domain imserver1.
In step 504, processing system 314 identifies the protocol of presence server 322. The processing system 314 may store in memory the protocols relating to one or more instant messaging servers 320. If the protocols for presence server 322 are not stored in memory, then the processing system 314 may query a server to acquire the protocols.
In step 506, the processing system 314 identifies a network address for the presence server 322 from the domain identifier. In the instance described, the processing system 314 may use a DNS table to determine the network address for imserver1.
In step 508, the processing system 314 translates the update message to the protocol of the presence server 322. For example, the update message may embody an HTTP form request comprising a username for the user, a password for the user, and a numerical selection of an updated instant messaging status message.
In step 510, the processing system 314 transmits the update message through a network to the presence server 322 at the network address. For instance, the update message may be in the form of a SQL statement specifying the selection of at least one status option from the user and the instant messaging identifier for the user desiring to change their instant messaging status on the presence server 322.
In response to receiving the update message, the presence server 322 updates the instant messaging status to reflect the updated instant messaging status requested by the user. Peer users using the peer client application 352 operating on the peer device 340 connected to presence server 322 may receive an update to the “Friends List” specifying the updated instant messaging status of the user.
The status updating system 300 has been described in an embodiment receiving the request from the user through the phone 340. In an alternate embodiment of the invention, status updating system 300 may receive the request to update the instant messaging status of a user on presence server 322 from another type of communication device, such as a PDA having internet capabilities. For instance, the user of the PDA may be provided with a web site for the status updating system 300. The interface system 314 may comprise a web server. The user of the PDA may visit the web site and request a web page comprising a form from the interface system 314. The interface system 314 may provide the form in response to the request for the web page. The form may comprise one or more fields for the user of the PDA to provide his or her instant messaging identifier and authentication credential, such as a username and a password for the instant messaging service on the presence server 322. The form may additionally comprise a menu of at least one status option.
The user of the PDA may complete the form and select at least one status option, and submit the form to the status updating system 300. The status updating system 300 receives the information provided by the user of the PDA in the form using the interface system 314.
The processing system 314 identifies the instant messaging identifier of the user for the presence server 322 in response to receiving the request. In this instance, the processing system 314 may identify the instant messaging identifier for the user of the PDA based upon a username provided by the user of the second device. In response to identifying the instant messaging identifier, the processing system 314 transmits an update message to the presence server 322. The update message is translated by the processing system 314 based upon the selection of at least one status option by the user of the second device, and transmitted to the presence server 322.
Although specific embodiments were described herein, the scope of the invention is not limited to those specific embodiments. The scope of the invention is defined by the following claims and any equivalents thereof.