One example of this invention is about ensuring all messages be delivered to the intended users in any instant Messaging applications (Server/client). In one embodiment, the solution requires making improvements at both Server and client sides, to ensure correct delivery of the message. Various parameters, such as time stamp and wait time, are discussed.

Patent
   7487220
Priority
Mar 15 2008
Filed
Mar 15 2008
Issued
Feb 03 2009
Expiry
Mar 15 2028
Assg.orig
Entity
Large
4
10
EXPIRED
1. A method for alerting a receiving user of a message in an instant messaging system, said method comprising:
a sending user composing said message for said receiving user on a sending client;
wherein said sending client communicates with said instant messaging system;
if sending user activates a sending function, then establishing a session between said sending client and said receiving client, and sending said message from said sending client to said receiving client via said instant message system;
wherein said composing is done prior to said establishing said session;
upon said composing said message, creating a record identifying said sending user and a message modification timestamp, and associating said record with said receiving user;
wherein said message modification timestamp indicates a latest time said message is modified by said sending user;
updating said message modification timestamp in said record if said sending user modifies said message during said composing of said message and prior to said establishing said session;
removing said record upon said establishing said session, upon said sending user logging off or disconnecting said sending client from said instant message system, or upon said sending user closing said message;
if said receiving user attempts to logoff or disconnect said receiving client from said instant message system, then querying said record associated with said receiving user; and
upon said querying said record, if said record is not yet removed, then determining said sending user and said modification timestamp from said record, and alerting said receiving user that said message is pending from said sending user if said modification timestamp of said record is not older than a current time by a configurable maximum wait time.

Instant Messaging (IM) allows instantaneous communication between number of parties simultaneously, by transmitting information quickly and efficiently, featuring immediate receipt of acknowledgement or reply. In certain cases, Instant Messaging involves additional features, which make it even more popular, i.e. to see the other party, e.g. by using web-cams, or to talk directly for free over the Internet.

It is possible to save a conversation for later reference. Instant messages are typically logged in a local message history which closes the gap to the persistent nature of e-mails and facilitates quick exchange of information like URLs (Universal Resource Locator) or document snippets (which can be unwieldy when communicated via telephone).

Let's assume that user A and user B are the two users in any Instant Messaging application (Buddies). Most of the Instant Messaging applications display status in the chat window if other user is typing a message. This is good enough only if the message window at the other side is opened. The problem is when user A wants to send a message to user B for the first time. User A opens a chat window for user B and starts typing a message. (Note that, the message is not sent yet.) If at the same time, user B wants to logoff or disconnect from the instant message server, then user B may lose any message from user A (e.g., user A could be a friend, a manager, or a client). In this case, user B never gets notified that user A is typing a message or about what user A is typing.

User B will get a message only if the chat window with user A is opened. If the chat session is not started yet, then in that case, the user B may lose any message from user A. The existing solution only allows user B get a status that “user A is typing a message” if the chat session has already started between user A and user B.

In an organization with thousands of employees, the chances of many people experience losing messages on a daily basis based on this scenario is appreciable.

The present invention, as an example, proposes a solution to address this problem for when the chat session has not yet started, so that all messages will be delivered to the intended recipient.

An embodiment of this invention provides features to ensure all messages be delivered to the intended users in any Instant Messaging applications (Server/Client). The solution may involve making improvements at both Server and Client sides, to ensure correct delivery of the message. Various parameters, such as time stamp and wait time, are discussed.

FIG. 1 is a schematic diagram of the instant messaging network environment.

FIG. 2 is a data flow diagram delivering instant messages to the intended.

In an embodiment of the invention, whenever user A wants to initiates a message session with user B by opening the chat window and typing the message, at the same time, a new record will be created at the server. The lifetime of this record is only until the user A types this first message for user B.

In one embodiment, the table name which holds the information about all users who are typing the first message for other users but not sent yet is called Incomplete Session. This means that the record will be created as soon as the chat window is opened for the first time. The record will be deleted as soon as either user A sends the message or closes the chat window. At the other end with user B, Logoff/Disconnect procedure will be a two-step procedure. Step 1 would just query the above mentioned Incomplete Session table at the server to see if any user is trying to send a message to user B. If the query finds any such record in the table, this indicates that someone is trying to send a message to user B. In this case, before actually logging off the user from the server, an Alert message will be displayed at the user B's client (to whom user A is trying to send the message). Once the alert is displayed at the user B's client, it will be up to user B to wait until the message arrives at user B's client.

Example of an alert to user B is: “User A is trying to send a message for you. Do you still want to disconnect?” If the query does not find any such record associated with user B, then user B can logoff, without getting prompted with an alert.

An embodiment of the invention is a method (FIG. 1) for use of instant messaging network environment. In one embodiment, a plurality of users may be connected via an external network such as Internet (110) or other communications network. The users may access the Internet (110) via client devices (116,118,120 and 122). The client devices may include, for example, portable communication devices (116,118, and 120) and/or a personal computer (122). Additionally included in this example is a server (112) that is coupled to a data storage unit (114).

During an instant messaging session, a user may activate instant messaging client software that is stored on the user's client device (116). Activation of the instant messaging client software can facilitate a connection request with the server (112), which may be a dedicated instant messaging server. The server (112) can then authenticate the user via various authentication techniques, including: if the data submitted by the user matches the data stored in data storage (114), the user can be authenticated.

Once the user has been authenticated, the user can send an instant message to any of his or her contacts. Generally speaking, the user can send an Instant message to anyone who has an account with the server (112).

FIG. 2 is a schematic diagram illustrating an embodiment for a data flow delivering instant messages to the intended. User A (210) opens up a chat window for user B (214) and starts typing the message (in this case, the record will be created at server (212)), but user A does not click on the send button, nor does user A (210) closes the chat window (216). In this case, the invention prompts user B with an alert message after user B (214) attempts to log off or disconnect, based on a configurable maximum wait time (220). If user B (214) does not receive message by the specified time, then either the record will be deleted automatically by the server (212) (server side setting), or user B (214) can logoff without getting prompted, even if the record is still there in the database (218). If the maximum wait time is exceeded and user B (214) logs off, then the message which was there in user A's (210) chat window can still be sent to user B, (214) as an offline message, as in current existing solutions, in order to have user B (214) receive the message, when logging to the system again. One embodiment of the invention is a method for alerting a receiving user of a message in an instant messaging system, the method comprising:

A system, apparatus, or device comprising one of the following items is an example of the invention: IM server, alarm, meeting organizer, email server, server, client device, PDA, mobile device, cell phone, storage to store the messages, router, switches, network, communication media, cables, fiber optics, physical layer, buffer, nodes, packet switches, computer monitor, or any display device, applying the method mentioned above, for purpose of invitation, communication, collaboration, social interaction, work, project, or meeting management.

Any variations of the above teaching are also intended to be covered by this patent application.

Mahawadiwar, Nitin M.

Patent Priority Assignee Title
10387614, Jun 08 2010 MERATIVE US L P Remote control of medical devices using instant messaging infrastructure
8621213, Jun 08 2010 MERATIVE US L P Remote control of medical devices using instant messaging infrastructure
9385977, Jun 08 2010 MERATIVE US L P Remote control of medical devices using instant messaging infrastructure
9485633, Dec 09 2013 Cellco Partnership Message timestamp re-alignment for message thread consistency across multiple devices
Patent Priority Assignee Title
20040205775,
20050027839,
20050080868,
20050210394,
20060048061,
20070143417,
20070174405,
20070180028,
20070224978,
20080037722,
//
Executed onAssignorAssigneeConveyanceFrameReelDoc
Feb 21 2008MAHAWADIWAR, NITIN MInternational Business Machines CorporationASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0206570054 pdf
Mar 15 2008International Business Machines Corporation(assignment on the face of the patent)
Date Maintenance Fee Events
Jan 05 2009ASPN: Payor Number Assigned.
Sep 17 2012REM: Maintenance Fee Reminder Mailed.
Feb 03 2013EXP: Patent Expired for Failure to Pay Maintenance Fees.


Date Maintenance Schedule
Feb 03 20124 years fee payment window open
Aug 03 20126 months grace period start (w surcharge)
Feb 03 2013patent expiry (for year 4)
Feb 03 20152 years to revive unintentionally abandoned end. (for year 4)
Feb 03 20168 years fee payment window open
Aug 03 20166 months grace period start (w surcharge)
Feb 03 2017patent expiry (for year 8)
Feb 03 20192 years to revive unintentionally abandoned end. (for year 8)
Feb 03 202012 years fee payment window open
Aug 03 20206 months grace period start (w surcharge)
Feb 03 2021patent expiry (for year 12)
Feb 03 20232 years to revive unintentionally abandoned end. (for year 12)