1. Statement of the Technical Field
The present invention relates to the field of online instant messaging (IM) and more particularly to a system and method for allowing a user with more than one online communication device to have access to instant message sessions on all of the user's devices regardless of which device the instant message was delivered to.
2. Description of the Related Art
Instant messaging is a phenomenon that is sweeping both the consumer and the corporate worlds. In the business world, instant messaging provides a communication platform that enables employees from multiple locations to communicate instantly over the Internet. While e-mail remains the prime on-line text communication method, instant messaging has proven to be a simple, on-line tool for real-time text messaging and has become a staple in day-to-day business operations.
Instant messaging is the ability to send and receive messages in real-time, independent of locale. Information exchanges can occur interactively when two users communicate in a conferencing window or passively when a user sends a static message to another user. Users, after having installed the necessary software on their on-line computing device, register a unique name with an IM provider. When the user logs-on to a central server, other users are notified that the user is now “available”. The messages can be sent either through the IM service's central server or directly from one computer to another, via to peer-to-peer technology.
The prime attraction of instant messaging is the ability for the user to carry on a real-time “conversation” with one or more other users, while sitting at their personal computer, while perhaps being involved simultaneously in other tasks. A user typically enters one or more e-mail addresses on a “buddy” list and is notified (by a visual and/or audio cue) when users having e-mail addresses corresponding to those on the user's buddy list are online. The user then has the option of transmitting an instant message to one or more of the “active” users. When members sign on or sign off their on-line devices, the user is notified and is therefore always kept aware of which other members can currently receive instant messages.
In the business setting, the advantages are enormous. For example, an employee may be on the telephone with an important client and be asked a question that he does not know the answer to but knows that his colleague in the next room may have the answer. Instead of asking the client to hold while the employee runs around the office looking for the person with the answer, the user can continue to converse with the client while sending an instant message to his colleague. The colleague, if logged on, can respond within seconds with the answer.
However, one of the drawbacks with typical instant messaging systems is that they do not allow users to view all current instant message sessions if the user has transferred to a new client device. For example, a user may be carrying several instant message dialogs or sessions with other users while sitting at his home PC. The user then moves to a different on-line device, for example, his mobile phone or his office PC. However, when the user logs on to the network via his new client device, he will not be able to view the ongoing sessions since he is no longer logged onto the Internet via his original client device (his home PC) but is instead logged on via his other on-line device.
In other words, the user has switched to a new “active” device but the system is unaware of this and is further incapable of transferring the IM session text to the newly activated device. The user, who may have had several simultaneous sessions with a number of different users on his home PC will no longer have access to those sessions. Today's IM systems prohibit a user from having an IM “presence” on more than one on-line computing device. It is desirable therefore to provide a method and system to allow an on-line user to be able to view all current IM sessions with other active members regardless of which on-line computing device the user is currently logged into.
The present invention addresses the deficiencies in the art with respect to instant message user awareness and provides a novel and non-obvious method and system for allowing on-line users to have access to instant message notifications and text regardless of which on-line computing device they are currently logged into and regardless of which of their devices the instant message was sent to.
Methods consistent with the present invention provide a method for creating instant message awareness in a communications network for all of a user's on-line client devices. The method includes identifying an instant message session between two or more users, determining which client device for each user is active, and delivering text of the instant message session to the active client devices for the two or more users.
Systems consistent with the present invention include a system for creating instant message awareness for all of user client devices in a communications network. The system includes a database for storing text of instant message sessions, and a server coupled to the database and to one or more network users. The server contains a processor that identifies an instant message session between the users and determines which client device for each user is active. Finally, the server delivers the text of the instant message session to the active client devices for the two or more users.
In accordance with still another aspect, the present invention provides a computer readable storage medium storing a computer program which when executed performs an instant message awareness method. The computing method includes identifying an instant message session between two or more users, determining which client device for each user is active, and delivering the text of the instant message session to the active client devices for the two or more users.
Additional aspects of the invention will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The aspects of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the appended claims. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.
The accompanying drawings, which are incorporated in and constitute part of the specification, illustrate embodiments of the invention and together with the description, serve to explain the principles of the invention. The embodiments illustrated herein are presently preferred, it being understood, however, that the invention is not limited to the precise arrangements and instrumentalities shown, wherein:
The present invention is a system and method that allows an on-line user to be aware of all instant messages sent to any of the user's on-line client devices regardless of which client device the user is currently logged into. The invention further allows the user to migrate all instant message sessions from all of the user's client devices to the currently active device.
The invention provides a centralized model, in which the server manages and stores the text transcripts of all instant message sessions and routes all instant message transcripts to all client devices for all the users involved in the session. Also provided is a decentralized model in which the server acts as a router and distributes the instant message transcripts to all active user client devices without actually storing the session transcripts. In the decentralized model, the invention further provides a migration process that migrates or merges the instant messaging sessions from one on-line computing device for a particular user to another on-line computing device for that user, depending upon which device is deemed “active”.
Referring now to the drawing figures in which like reference designators refer to like elements there is shown in
Server 100 includes a processor that manages and routes ingoing and outgoing instant messages between users. Server 100 also contains a database 120 that stores the text transcripts of the instant message sessions between users A through n. Users A-n represent communication network users that have registered their IM addresses with the server and are capable of receiving and sending instant messages on one or more on-line computing devices (clients) such as personal computers, Personal Data Assistant (PDA) and/or laptop or notebook computers. The present invention provides two embodiments to allow a user to have access to current instant message sessions with other users regardless of which client device they are presently using.
Referring to
Once the server adds user A's recently activated client to user A's list, the server then determines if there are any active instant message sessions for user A (step 220). If there are instant message sessions active for user A, the server notifies user A's new active client by updating user A's session listing (step 230) and delivers the session transcript to the new client (step 240). The session transcript refers to the on-line dialog between user A and one or more other users. In this fashion, user A, having signed onto the network via a new client device, is now aware of all current IM sessions, even if an instant message was sent to a previously-active (and now non-active) user. Therefore, whether there are current active sessions for user A or not, each of user A's client devices are now synchronized (step 250) and user A can receive session transcripts to his or her currently active client.
However, because the server in the decentralized model does not store session transcript histories, the server does not deliver the session transcript to the new client. Instead, it notifies the new client of the existence of a new active session (i.e. it announces to the new client that another user is attempting to contact user A via an instant message), thereby synchronizing user A's new, active client, with user A's other client devices (step 340). Subsequently, via the migration process of the present invention, the server merges other session transcripts with the new client device.
Once user A has logged onto the system via a new client device, the server controls the routing of instant messages between users.
As shown in
If there is already an active IM session for user A and user B on the server, the existing session is updated to include the new message (step 440). Advantageously, the server, in the centralized model shown in
Due to hardware constraints, it may not always be possible to provide a server with the memory and processor capacity to manage the instant message protocol as shown in
Referring once again to
Because user B, the recipient of user A's instant message may have more than one client device, the server must determine which user B client user A's instant message was intended for, i.e. which of user B's clients will be “active” and receive user A's message. The server uses a listing of policy protocols to make this determination. For example, one protocol might be to designate the last client device user B was using as user B's active device. In another protocol, the recipient's client device may be determined to be the most frequently used client device of that particular user. Thus, if user B's home PC is the recipient of most of user B's instant messages, then his home PC is flagged as user B's “active client”.
Regardless of which policy is used, the server binds both active clients (step 580) and announces the session to all the clients of users A and B (step 590). Once again the server sends the message to the active clients of the users (step 530) and makes the session transcripts available to the active clients (step 540). However, in the scenario presented above, user B will not be aware of user A's latest IM since the message was sent as part of the ongoing session between user A and user B when user B was on his home PC. However, user B has moved to another client, for example, his office PC. Advantageously, the present invention provides a mechanism for recognizing that a new client for the recipient user (User B) has been activated and migrates the current session to this new client. Similarly, if user A, the sender of the instant message, transfers to a new client, the system recognize this as well and transfers the active session to the sender's new client.
In the example used above, user B has been in an IM session with user A but now transfers from his home PC and logs on via his work PC (step 600). Thus, user B's new client (his office PC) becomes the new active user for user B (step 610). The server, now recognizing that user B has logged onto a different client, rebinds this new active client with the previous session between user A and user B (step 620). Once the server has joined the new active client to the current session, the server sends a request to the previously active client for user B for the session transcript. The previously active client delivers all of the chat messages (text transcripts) of the IM session to the server (step 630), which sends the transcripts to user B's new active client (step 640). This results in the full session transcripts being made available on both user A and user B's currently active clients (step 650). Therefore, user B has successfully logged onto a new client, and can now view the entire text transcript of an instant message session that had been taking place on his previous (no longer active) client.
The system and method of the present invention allow an on-line user to switch to a new on-line client device and have access to instant message transcripts from instant message sessions that had been taking place on the user's previously used client device. In the centralized embodiment, the invention provides a server that not only routes instant messages from the sender to the recipient but also stores all message transcripts and makes the transcripts for each use session available to all clients of all the users. In the decentralized embodiment, the invention provides a system and method that routes a session transcript from a previously active client to the server, which then routes the transcript to the currently active device of the user. In either case, instant message users can receive messages sent to any one of their clients regardless of which client they are currently logged into, and, in turn, may send instant messages to other users on the network without any concern about which client device the other users are currently logged onto.
The present invention can be realized in hardware, software, or a combination of hardware and software. For example, the data handling policy can be stored in a database. An implementation of the method and system of the present invention can be realized in a centralized fashion in one computer system, or in a distributed fashion where different elements are spread across several interconnected computer systems. Any kind of computer system, or other apparatus adapted for carrying out the methods described herein, is suited to perform the functions described herein. For example, the data handling policy can be stored in a database.
A typical combination of hardware and software could be a general purpose computer system having a central processing unit and a computer program stored on a storage medium that, when loaded and executed, controls the computer system such that it carries out the methods and functions described herein. The present invention can also be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which, when loaded in a computer system is able to carry out these methods. Storage medium refers to any volatile or non-volatile storage device.
Computer program or application in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following a) conversion to another language, code or notation; b) reproduction in a different material form. In addition, unless mention was made above to the contrary, it should be noted that all of the accompanying drawings are not to scale. Significantly, this invention can be embodied in other specific forms without departing from the spirit or essential attributes thereof, and accordingly, reference should be had to the following claims, rather than to the foregoing specification, as indicating the scope of the invention.