US9686214B2 - Status and time-based delivery services for instant messengers - Google Patents
Status and time-based delivery services for instant messengers Download PDFInfo
- Publication number
- US9686214B2 US9686214B2 US15/231,780 US201615231780A US9686214B2 US 9686214 B2 US9686214 B2 US 9686214B2 US 201615231780 A US201615231780 A US 201615231780A US 9686214 B2 US9686214 B2 US 9686214B2
- Authority
- US
- United States
- Prior art keywords
- time
- status
- unattended
- recovery
- triggers
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
- H04L51/046—Interoperability with other network applications or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/107—Computer-aided management of electronic mailing [e-mailing]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/109—Time management, e.g. calendars, reminders, meetings or time accounting
-
- H04L12/581—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/02—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
-
- H04L51/12—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/07—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
- H04L51/18—Commands or executable codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/212—Monitoring or handling of messages using filtering or selective blocking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/226—Delivery according to priorities
-
- H04L51/26—
-
- H04L67/24—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/54—Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
Definitions
- the present invention relates to computer communication systems and more particularly to a status and time-based delivery service for instant messengers.
- IM systems allow two or more users on computer systems such as PCs or mobile computing devices to exchange messages in real-time (or near real-time).
- IM systems allow users to maintain a list of other users, called a buddy or contact list, with whom they wish to interact.
- a user can send an instant message to any person on their contact list as long as that person is on-line.
- IM systems typically provide current status information about users on the contact list, telling the contact list owner whether each user on the list is on-line or off-line so that they will know with whom they may interact. This feature is often called presence management. Sending a message to an on-line user opens up a window where each user may type messages that the other user may see, allowing for an electronic “conversation”.
- IM systems The popularity of IM systems is partially based on the immediacy of IM systems, particularly when compared to e-mail. Unlike e-mail, this immediacy requires both parties in an IM exchange to be on-line at the same time.
- the immediacy of IM systems allows for interactive, back-and-forth exchanges of information without having to perform multiple steps to read, reply, and send a reply e-mail.
- IM systems typically provide a choice of different status configurations indicating a user's current status. These status indications will be seen by other users from their own IM programs. If a user is active and available for instant messaging, their status will indicate “active”. If a user is active on the system and desires not to receive instant messages, they may also select a “do not disturb” status which will tell other users not to transmit instant messages even though the user is on-line. If a user is logged in to the system but will be unable to respond to instant messages, such as when they are in a meeting, they may select an “away” status.
- the desired contact of a user will appear as unavailable, e.g., “do not disturb” and “in a meeting”.
- the user finds he is constantly checking his contact list to determine when the desired contact becomes available, or must simply risk interrupting the contact by sending a message despite “away” or “unavailable” status. Consequently, the user must waste time by having to constantly check status for the desired contact, waste time waiting to be notified that the desired contact has returned to her computer or potentially annoy the desired contact by sending an IM message.
- Embodiments of the present invention address deficiencies of the art in respect to status and time-based unattended messages in an instant messaging (IM) environment and provide a novel and non-obvious method, system and computer program product for unattended status and time-based messages in an IM environment.
- a method for unattended status and time-based messaging can be provided. The method can include receiving a request from an IM user to queue an unattended status and time-based message, retrieving a recovery trigger for the unattended status and time-based message, and assigning the unattended status and time-based message to a message queue.
- the method further can include monitoring IM environment communications for transmission of recovery triggers, detecting a recovery trigger in an IM communication, matching the detected recovery trigger from the IM communication to the recovery trigger of the queued unattended status and time-based message, and transmitting the queued unattended status and time-based message to a designated recipient.
- matching the detected recovery trigger from the IM communication to the recovery trigger of the queued unattended status and time-based message can include determining if the recovery trigger is a conditional recovery trigger based on recipient IM status and selecting the queued unattended status and time-based message that fulfills the status conditions of the conditional recovery trigger.
- an unattended status and time-based messaging system can be provided.
- the system can include an instant messaging client executing in a host computing platform, and status and time-based messaging logic coupled to the instant messaging client.
- the status and time-based messaging logic can include program code enabled to generate requests to queue unattended status and time-based messages, and generate recovery triggers for assigning and retrieving unattended status and time-based messages from a message queue.
- FIG. 1 is a schematic illustration of an instant messaging (IM) system configured for unattended status and time-based messaging in an IM environment; and,
- FIG. 2 is a flow chart illustrating a process for unattended status and time-based messaging in an IM environment.
- Embodiments of the present invention provide a method, system and computer program product for unattended status and time-based messaging in an instant messaging (IM) environment.
- a request from an IM user to queue an unattended status and time-based message can be received by an IM system manager and analyzed to identify recovery triggers.
- the request to queue the unattended status and time-based message is typically the result of a desired recipient being unavailable for an IM session.
- a recovery trigger can be retrieved from the unattended status and time-based message and stored with the unattended message in a message queue.
- the IM environment communications can be monitored to detect subsequent transmissions of recovery triggers.
- the recovery triggers can be conditional recovery triggers and an analysis of the type of condition, e.g., time-based or status-based can be performed in order to select the appropriate unattended message from a message queue for transmission to a desired recipient.
- FIG. 1 schematically depicts an IM system 100 configured for unattended status and time-based messaging.
- the system can include a plurality of computer systems 105 in communication with a computer communications network 160 .
- Each computer system 105 can include a host-computing platform 110 supporting an operating system 120 .
- the operating system 120 in turn can host an instant messaging client 140 configured to provide instant messaging communications with IM system manager 170 over network 160 .
- IM system 100 also can include operational data store 180 in communication with IM system manager 170 and/or network 160 . Operational data store 180 can provide storage for any type of information for the IM system manager 170 .
- IM system 100 also can include IM client data store 130 in communication with operating system 120 , IM system manager 170 and/or network 160 .
- Optional IM client data store 130 can provide storage for any type of information related to the IM users 105 .
- optional IM client data store 130 can provide storage for calendaring information of the IM users 105 .
- IM system 100 the computer systems 105 , IM system manager 170 , and operational data store 180 may be located at the same location, such as in the same building or computer lab, or could be remote.
- IM system manager 170 can facilitates instant messaging between IM clients 140 on different computer systems 105 by transmitting and receiving information, such as the identification, status and network address of the IM clients 140 and/or computer systems 105 . All of this information can be stored in operational data store 180 and/or IM client data store 130 .
- status and time-based messaging logic 150 can be coupled to the IM client 140 and the optional IM client data store 130 .
- the status and time-based messaging logic 150 can include program code enabled to compose a request to queue unattended messages, which in turn can be received and processed by the IM system manager 170 to determine appropriate queuing for the unattended messages. More specifically, the program code of the status and time-based messaging logic 150 can be enabled to generate conditional recovery triggers for the status and time-based unattended messages which in turn can be used to determine which unattended message should be recovered from the IM messaging queue for delivery to desired contact.
- a user on a computer system 105 can open an IM client 140 so that it is executing on the computer system 105 .
- the IM client 140 attempts to connect to the IM system manager 170 using network 160 .
- the user then typically enters a user name (or other identification) to log in to the IM system manager 170 .
- the IM client 140 then transmits connection information (such as the IP address and port number assigned to IM client 140 on computer system 105 , as well as a contact list, etc.) of the computer system 105 on which the IM client 140 is located.
- the IM system manager 170 may then determine if any users from the contact list are currently logged in (e.g., their IM client 140 is active and running), after which it will transmit status information (as well as IP address and port number) for users on the contact list back to the initial IM client 140 , as well as transmitting status information, e.g., “active”, for the initial IM client 140 to the users in the contact list.
- Status information for each user may be stored at the IM system manager 104 , operational data store 180 and/or IM client data store 130 .
- FIG. 2 is a flow chart illustrating a process for status and time-based messaging in an IM system.
- a request to queue one or more unattended status and time-based messages can be received by the IM system manager 170 .
- the corresponding one or more unattended status and time-based messages can be selected and in block 215 conditional recovery triggers for each unattended message are evaluated.
- the one or more unattended messages can be place in an unattended message queue.
- the process can repeat through block 210 . Otherwise, when no further unattended messages remain to be processed, in block 230 , the IM system manager 170 can monitor the IM system 100 for any of the conditional recovery triggers that were processed and correspond to an unattended message stored in the unattended message queue. For example, Adam (sender) wants to send a message to Bob (recipient) to let him know where he is going to be, but Bob is currently away from his computer. This presents a problem because by the time Bob gets back, Adam may be somewhere else and unable to update Bob.
- unattended message recovery triggers are based on the time that Bob (recipient) recovers, or is determine to be “active” by the IM system 100 .
- the IM system manager 170 can detect the change of status for the desired recipient, e.g., Bob, observe which recovery trigger occurred and match that recovery trigger to the queued unattended message having the same recovery trigger.
- the queued unattended message having the same recovery trigger can be transmitted to the desired recipient.
- a sender e.g., Adam
- an option e.g., “Inform User of My Location on Recovery”
- one or more of the queued or generated unattended messages may be a null message (i.e., no message at all).
- a time-based expiration or pre-emption of content-bearing messages is created.
- a sender e.g., Bob
- a desired recipient e.g., Adam
- no message is sent if Adam recovers after 9 PM.
- the sender's IM client 140 can receive the relevant message data and monitor the indicated recipient until the recovery trigger, such as the status condition is fulfilled.
- the message policy could be located on an intermediate server, which could perform the receiving, storing, monitoring and retrieving functions. In this embodiment, the sending IM client 140 could then shut off, which would be more convenient for end users who might be mobile.
- Embodiments of the invention can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment containing both hardware and software elements.
- the invention is implemented in software, which includes but is not limited to firmware, resident software, microcode, and the like.
- the invention can take the form of a computer program product accessible from a computer-usable or computer-readable medium providing program code for use by or in connection with a computer or any instruction execution system.
- a computer-usable or computer readable medium can be any apparatus that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
- the medium can be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system (or apparatus or device) or a propagation medium.
- Examples of a computer-readable medium include a semiconductor or solid state memory, magnetic tape, a removable computer diskette, a random access memory (RAM), a read-only memory (ROM), a rigid magnetic disk and an optical disk.
- Current examples of optical disks include compact disk-read only memory (CD-ROM), compact disk-read/write (CD-R/W) and DVD.
- a data processing system suitable for storing and/or executing program code will include at least one processor coupled directly or indirectly to memory elements through a system bus.
- the memory elements can include local memory employed during actual execution of the program code, bulk storage, and cache memories which provide temporary storage of at least some program code in order to reduce the number of times code must be retrieved from bulk storage during execution.
- I/O devices including but not limited to keyboards, displays, pointing devices, etc.
- Network adapters may also be coupled to the system to enable the data processing system to become coupled to other data processing systems or remote printers or storage devices through intervening private or public networks. Modems, cable modem and Ethernet cards are just a few of the currently available types of network adapters.
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Data Mining & Analysis (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Embodiments of the present invention address deficiencies of the art in respect to unattended status and time-based messaging in an instant messaging (IM) environment and provide a method, system and computer program product for unattended status and time-based messaging in an instant messaging (IM) environment. In an embodiment of the invention, a method for unattended status and time-based messaging in an instant messaging (IM) environment can be provided. The method can include receiving a request from an IM user to queue an unattended status and time-based message, retrieving a recovery trigger for the unattended status and time-based message, and assigning the unattended status and time-based message to a message queue.
Description
This application is a Continuation of U.S. patent application Ser. No. 11/971,737, filed on Jan. 9, 2008, the entirety of which is herein incorporated by reference.
Field of the Invention
The present invention relates to computer communication systems and more particularly to a status and time-based delivery service for instant messengers.
Description of the Related Art
The widespread use of PCs and mobile computing devices in various segments of society has resulted in a reliance on computer systems both at work and at home, such as for telecommuting, news, stock market information and trading, banking, shopping, shipping, communication in the form of hypertext transfer protocol (http) and e-mail, as well as other services. Many of these functions take advantage of the communication abilities offered by the Internet. E-mail, which allows a user to transmit a message to another user, is one of the more popular uses of the Internet, and its use continues to increase.
Another application that continues to increase in popularity is instant messaging (IM). IM systems allow two or more users on computer systems such as PCs or mobile computing devices to exchange messages in real-time (or near real-time). IM systems allow users to maintain a list of other users, called a buddy or contact list, with whom they wish to interact. Using the IM system, a user can send an instant message to any person on their contact list as long as that person is on-line. IM systems typically provide current status information about users on the contact list, telling the contact list owner whether each user on the list is on-line or off-line so that they will know with whom they may interact. This feature is often called presence management. Sending a message to an on-line user opens up a window where each user may type messages that the other user may see, allowing for an electronic “conversation”.
The popularity of IM systems is partially based on the immediacy of IM systems, particularly when compared to e-mail. Unlike e-mail, this immediacy requires both parties in an IM exchange to be on-line at the same time. The immediacy of IM systems allows for interactive, back-and-forth exchanges of information without having to perform multiple steps to read, reply, and send a reply e-mail.
IM systems typically provide a choice of different status configurations indicating a user's current status. These status indications will be seen by other users from their own IM programs. If a user is active and available for instant messaging, their status will indicate “active”. If a user is active on the system and desires not to receive instant messages, they may also select a “do not disturb” status which will tell other users not to transmit instant messages even though the user is on-line. If a user is logged in to the system but will be unable to respond to instant messages, such as when they are in a meeting, they may select an “away” status.
Oftentimes, the desired contact of a user will appear as unavailable, e.g., “do not disturb” and “in a meeting”. In such situations, the user finds he is constantly checking his contact list to determine when the desired contact becomes available, or must simply risk interrupting the contact by sending a message despite “away” or “unavailable” status. Consequently, the user must waste time by having to constantly check status for the desired contact, waste time waiting to be notified that the desired contact has returned to her computer or potentially annoy the desired contact by sending an IM message.
Embodiments of the present invention address deficiencies of the art in respect to status and time-based unattended messages in an instant messaging (IM) environment and provide a novel and non-obvious method, system and computer program product for unattended status and time-based messages in an IM environment. In an embodiment of the invention, a method for unattended status and time-based messaging can be provided. The method can include receiving a request from an IM user to queue an unattended status and time-based message, retrieving a recovery trigger for the unattended status and time-based message, and assigning the unattended status and time-based message to a message queue.
In one aspect of the embodiment, the method further can include monitoring IM environment communications for transmission of recovery triggers, detecting a recovery trigger in an IM communication, matching the detected recovery trigger from the IM communication to the recovery trigger of the queued unattended status and time-based message, and transmitting the queued unattended status and time-based message to a designated recipient. In another aspect of the embodiment, matching the detected recovery trigger from the IM communication to the recovery trigger of the queued unattended status and time-based message can include determining if the recovery trigger is a conditional recovery trigger based on recipient IM status and selecting the queued unattended status and time-based message that fulfills the status conditions of the conditional recovery trigger.
In another embodiment of the invention, an unattended status and time-based messaging system can be provided. The system can include an instant messaging client executing in a host computing platform, and status and time-based messaging logic coupled to the instant messaging client. The status and time-based messaging logic can include program code enabled to generate requests to queue unattended status and time-based messages, and generate recovery triggers for assigning and retrieving unattended status and time-based messages from a message queue.
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 this 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:
Embodiments of the present invention provide a method, system and computer program product for unattended status and time-based messaging in an instant messaging (IM) environment. In accordance with an embodiment of the present invention, a request from an IM user to queue an unattended status and time-based message can be received by an IM system manager and analyzed to identify recovery triggers. The request to queue the unattended status and time-based message is typically the result of a desired recipient being unavailable for an IM session. A recovery trigger can be retrieved from the unattended status and time-based message and stored with the unattended message in a message queue. The IM environment communications can be monitored to detect subsequent transmissions of recovery triggers. The recovery triggers can be conditional recovery triggers and an analysis of the type of condition, e.g., time-based or status-based can be performed in order to select the appropriate unattended message from a message queue for transmission to a desired recipient.
In illustration, FIG. 1 schematically depicts an IM system 100 configured for unattended status and time-based messaging. The system can include a plurality of computer systems 105 in communication with a computer communications network 160. Each computer system 105 can include a host-computing platform 110 supporting an operating system 120. The operating system 120 in turn can host an instant messaging client 140 configured to provide instant messaging communications with IM system manager 170 over network 160. IM system 100 also can include operational data store 180 in communication with IM system manager 170 and/or network 160. Operational data store 180 can provide storage for any type of information for the IM system manager 170. Optionally, IM system 100 also can include IM client data store 130 in communication with operating system 120, IM system manager 170 and/or network 160. Optional IM client data store 130 can provide storage for any type of information related to the IM users 105. For example, optional IM client data store 130 can provide storage for calendaring information of the IM users 105.
In IM system 100, the computer systems 105, IM system manager 170, and operational data store 180 may be located at the same location, such as in the same building or computer lab, or could be remote. IM system manager 170 can facilitates instant messaging between IM clients 140 on different computer systems 105 by transmitting and receiving information, such as the identification, status and network address of the IM clients 140 and/or computer systems 105. All of this information can be stored in operational data store 180 and/or IM client data store 130.
Notably, status and time-based messaging logic 150 can be coupled to the IM client 140 and the optional IM client data store 130. The status and time-based messaging logic 150 can include program code enabled to compose a request to queue unattended messages, which in turn can be received and processed by the IM system manager 170 to determine appropriate queuing for the unattended messages. More specifically, the program code of the status and time-based messaging logic 150 can be enabled to generate conditional recovery triggers for the status and time-based unattended messages which in turn can be used to determine which unattended message should be recovered from the IM messaging queue for delivery to desired contact.
In one embodiment, a user on a computer system 105 can open an IM client 140 so that it is executing on the computer system 105. The IM client 140 then attempts to connect to the IM system manager 170 using network 160. Using the IM client 140, the user then typically enters a user name (or other identification) to log in to the IM system manager 170. In this embodiment, the IM client 140 then transmits connection information (such as the IP address and port number assigned to IM client 140 on computer system 105, as well as a contact list, etc.) of the computer system 105 on which the IM client 140 is located. The IM system manager 170 may then determine if any users from the contact list are currently logged in (e.g., their IM client 140 is active and running), after which it will transmit status information (as well as IP address and port number) for users on the contact list back to the initial IM client 140, as well as transmitting status information, e.g., “active”, for the initial IM client 140 to the users in the contact list. Status information for each user may be stored at the IM system manager 104, operational data store 180 and/or IM client data store 130.
In yet further illustration of the operation of the status and time-based messaging logic 150, FIG. 2 is a flow chart illustrating a process for status and time-based messaging in an IM system. Beginning in block 205, a request to queue one or more unattended status and time-based messages can be received by the IM system manager 170. In block 210, the corresponding one or more unattended status and time-based messages can be selected and in block 215 conditional recovery triggers for each unattended message are evaluated. In block 220, based on the evaluated conditional recovery triggers, the one or more unattended messages can be place in an unattended message queue.
In decision block 225, if there are additional unattended messages to be processed, the process can repeat through block 210. Otherwise, when no further unattended messages remain to be processed, in block 230, the IM system manager 170 can monitor the IM system 100 for any of the conditional recovery triggers that were processed and correspond to an unattended message stored in the unattended message queue. For example, Adam (sender) wants to send a message to Bob (recipient) to let him know where he is going to be, but Bob is currently away from his computer. This presents a problem because by the time Bob gets back, Adam may be somewhere else and unable to update Bob. As such, Adam sets it up so that if Bob recovers soon, he will receive the message “I went to lunch at the mall”; however, if Bob recovers after 1 pm, Bob will instead receive the message “I went to the dentist” and so on for as many messages Adam would like to register. In this embodiment, unattended message recovery triggers are based on the time that Bob (recipient) recovers, or is determine to be “active” by the IM system 100.
Consequently, in block 330, the IM system manager 170 can detect the change of status for the desired recipient, e.g., Bob, observe which recovery trigger occurred and match that recovery trigger to the queued unattended message having the same recovery trigger. In block 235, the queued unattended message having the same recovery trigger can be transmitted to the desired recipient.
In another embodiment, a sender, e.g., Adam, could set up his Instant Messenger to pull records from his calendar database and select an option, e.g., “Inform User of My Location on Recovery”, to automatically forward data from the sender's calendar relative to that sender's scheduled location to the desired recipient upon the desired recipient's recovery to the IM system 100.
In another embodiment, one or more of the queued or generated unattended messages may be a null message (i.e., no message at all). In this embodiment, a time-based expiration or pre-emption of content-bearing messages is created. For example, a sender, e.g., Bob, can create a message to a desired recipient, e.g., Adam, that consists of the content “call me” if Adam recovers prior to 9 PM, however, no message is sent if Adam recovers after 9 PM.
In another embodiment, instead of the IM system manager 170 receiving the unattended message, placing it in the unattended message queue and monitoring the IM system for matching recovery triggers, the sender's IM client 140 can receive the relevant message data and monitor the indicated recipient until the recovery trigger, such as the status condition is fulfilled. In yet another embodiment, the message policy could be located on an intermediate server, which could perform the receiving, storing, monitoring and retrieving functions. In this embodiment, the sending IM client 140 could then shut off, which would be more convenient for end users who might be mobile.
Embodiments of the invention can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment containing both hardware and software elements. In a preferred embodiment, the invention is implemented in software, which includes but is not limited to firmware, resident software, microcode, and the like. Furthermore, the invention can take the form of a computer program product accessible from a computer-usable or computer-readable medium providing program code for use by or in connection with a computer or any instruction execution system.
For the purposes of this description, a computer-usable or computer readable medium can be any apparatus that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The medium can be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system (or apparatus or device) or a propagation medium. Examples of a computer-readable medium include a semiconductor or solid state memory, magnetic tape, a removable computer diskette, a random access memory (RAM), a read-only memory (ROM), a rigid magnetic disk and an optical disk. Current examples of optical disks include compact disk-read only memory (CD-ROM), compact disk-read/write (CD-R/W) and DVD.
A data processing system suitable for storing and/or executing program code will include at least one processor coupled directly or indirectly to memory elements through a system bus. The memory elements can include local memory employed during actual execution of the program code, bulk storage, and cache memories which provide temporary storage of at least some program code in order to reduce the number of times code must be retrieved from bulk storage during execution. Input/output or I/O devices (including but not limited to keyboards, displays, pointing devices, etc.) can be coupled to the system either directly or through intervening I/O controllers. Network adapters may also be coupled to the system to enable the data processing system to become coupled to other data processing systems or remote printers or storage devices through intervening private or public networks. Modems, cable modem and Ethernet cards are just a few of the currently available types of network adapters.
Claims (14)
1. A method for unattended status and time-based messaging in an instant messaging (IM) environment, the method comprising:
receiving a request from an IM user to queue a plurality of unattended status and time-based messages to be sent from the IM user to a designated recipient at a later time according to a time condition;
retrieving a plurality of recovery triggers, respectively from the plurality of unattended status and time-based messages, the triggers specifying a time condition responsive to which one of the unattended status and time-based messages is to be transmitted to the designated recipient;
transferring the plurality of unattended status and time-based messages to a message queue along with the triggers;
subsequently detecting a recovery trigger in an IM communication in connection with a designated recipient of one of the queued unattended status and time-based messages;
matching the detected recovery trigger from the IM communication to one of the plurality of recovery triggers of the queued unattended status and time-based messages based upon a time condition associated with the detected recovery trigger; and,
selecting the queued unattended status and time-based message associated with the one of the plurality of recovery triggers that fulfills the time condition and transmitting the selected queued unattended status and time-based message to the designated recipient.
2. The method of claim 1 , further comprising, upon detecting a change in status of the desired recipient, automatically forwarding scheduled location data from a calendaring application of the IM user to the desired recipient.
3. A computer program product comprising a computer usable storage memory device having stored thereon computer usable program code for unattended status and time-based messaging in an instant messaging (IM) environment, the computer usable program code, when executed on a computer device, causing the computer device to perform the operations of:
receiving a request from an IM user to queue a plurality of unattended status and time-based messages to be sent from the IM user to a designated recipient at a later time according to a time condition;
retrieving a plurality of recovery triggers, respectively from the plurality of unattended status and time-based messages, the triggers specifying a time condition responsive to which one of the unattended status and time-based messages is to be transmitted to the designated recipient;
transferring the plurality of unattended status and time-based messages to a message queue along with the triggers;
subsequently detecting a recovery trigger in an IM communication in connection with a designated recipient of one of the queued unattended status and time-based messages;
matching the detected recovery trigger from the IM communication to one of the plurality of recovery triggers of the queued unattended status and time-based messages based upon a time condition associated with the detected recovery trigger; and,
selecting the queued unattended status and time-based message associated with the one of the plurality of recovery triggers that fulfills the time condition and transmitting the selected queued unattended status and time-based message to the designated recipient.
4. The computer program product of claim 3 , wherein the computer usable program code, when executed on the computer device, causes the computer device to further perform the operations of,
upon detecting a change in status of a desired recipient, automatically forwarding scheduled location data from a calendaring application of the IM user to the desired recipient.
5. A computer hardware instant messaging (IM) system manager for unattended status and time-based messaging in an instant messaging (IM) environment, comprising:
an operational data store including a message queue; and
a processor configured to
receive a request from an IM user to queue, in the message queue, a plurality of unattended status and time-based messages to be sent from the IM user to a designated recipient at a later time according to a time condition;
retrieving a plurality of recovery triggers, respectively, from the plurality unattended status and time-based messages, the triggers specifying a time condition responsive to which one of the unattended status and time-based messages is to be transmitted to the designated recipient;
transferring the plurality of unattended status and time-based messages to the message queue along with the triggers;
subsequently detecting a recovery trigger in an IM communication in connection with a designated recipient of one of the queued unattended status and time-based messages;
matching the detected recovery trigger from the IM communication to one of the plurality of recovery triggers of the queued unattended status and time-based messages based upon a time condition associated with the detected recovery trigger; and
selecting the queued unattended status and time-based message associated with the one of the plurality of recovery triggers that fulfills the time condition and transmitting the selected queued unattended status and time-based message to the designated recipient.
6. The method of claim 1 , wherein only a single one of the plurality of the status and time-based messages is selected.
7. The method of claim 1 , wherein less than all of the plurality of queued unattended status and time-based message is selected.
8. The method of claim 1 , wherein each of the plurality of recovery triggers is specific to a single status time-based message of the plurality of unattended status and time-based messages.
9. The computer program product of claim 3 , wherein only a single one of the plurality of the status and time-based messages is selected.
10. The computer program product of claim 3 , wherein less than all of the plurality of queued unattended status and time-based message is selected.
11. The computer program product of claim 3 , wherein each of the plurality of recovery triggers is specific to a single status time-based message of the plurality of unattended status and time-based messages.
12. The computer hardware instant messaging system manager of claim 5 , wherein only a single one of the plurality of the status and time-based messages is selected.
13. The computer hardware instant messaging system manager of claim 5 , wherein less than all of the plurality of queued unattended status and time-based message is selected.
14. The computer hardware instant messaging system manager of claim 5 , wherein each of the plurality of recovery triggers is specific to a single status time-based message of the plurality of unattended status and time-based messages.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/231,780 US9686214B2 (en) | 2008-01-09 | 2016-08-08 | Status and time-based delivery services for instant messengers |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/971,737 US9412095B2 (en) | 2008-01-09 | 2008-01-09 | Status and time-based delivery services for instant messengers |
US15/231,780 US9686214B2 (en) | 2008-01-09 | 2016-08-08 | Status and time-based delivery services for instant messengers |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/971,737 Continuation US9412095B2 (en) | 2008-01-09 | 2008-01-09 | Status and time-based delivery services for instant messengers |
Publications (2)
Publication Number | Publication Date |
---|---|
US20160352662A1 US20160352662A1 (en) | 2016-12-01 |
US9686214B2 true US9686214B2 (en) | 2017-06-20 |
Family
ID=40845449
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/971,737 Expired - Fee Related US9412095B2 (en) | 2008-01-09 | 2008-01-09 | Status and time-based delivery services for instant messengers |
US15/231,780 Active US9686214B2 (en) | 2008-01-09 | 2016-08-08 | Status and time-based delivery services for instant messengers |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/971,737 Expired - Fee Related US9412095B2 (en) | 2008-01-09 | 2008-01-09 | Status and time-based delivery services for instant messengers |
Country Status (1)
Country | Link |
---|---|
US (2) | US9412095B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150026283A1 (en) * | 2000-03-06 | 2015-01-22 | Facebook, Inc. | Selectively translating portions of electronic messages |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9131020B2 (en) * | 2012-12-11 | 2015-09-08 | International Business Machines Corporation | Focused real time collaboration |
US20170041262A1 (en) * | 2015-08-04 | 2017-02-09 | International Business Machines Corporation | Prioritizing and handling of messages across multiple communication systems |
US11477139B2 (en) | 2016-02-25 | 2022-10-18 | Meta Platforms, Inc. | Techniques for messaging bot rich communication |
US10958604B2 (en) * | 2016-06-30 | 2021-03-23 | Telenav, Inc. | Communication system for conditional communication mechanism and method of operation thereof |
WO2021061319A1 (en) * | 2019-09-23 | 2021-04-01 | Snap Inc. | Personalized fonts |
Citations (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6301609B1 (en) | 1999-07-07 | 2001-10-09 | Lucent Technologies Inc. | Assignable associate priorities for user-definable instant messaging buddy groups |
US20020087649A1 (en) | 2000-03-16 | 2002-07-04 | Horvitz Eric J. | Bounded-deferral policies for reducing the disruptiveness of notifications |
US20030182391A1 (en) | 2002-03-19 | 2003-09-25 | Mike Leber | Internet based personal information manager |
US6691162B1 (en) | 1999-09-21 | 2004-02-10 | America Online, Inc. | Monitoring users of a computer network |
US20050055412A1 (en) | 2003-09-04 | 2005-03-10 | International Business Machines Corporation | Policy-based management of instant message windows |
US6920478B2 (en) | 2000-05-11 | 2005-07-19 | Chikka Pte Ltd. | Method and system for tracking the online status of active users of an internet-based instant messaging system |
US6988128B1 (en) | 2000-09-27 | 2006-01-17 | International Business Machines Corporation | Calendar events and calendar-driven application technique |
US20060048061A1 (en) | 2004-08-26 | 2006-03-02 | International Business Machines Corporation | Systems, methods, and media for updating an instant messaging system |
US20060168204A1 (en) | 2004-12-01 | 2006-07-27 | Barry Appelman | Mobile blocking indicators on a contact list |
US20060210034A1 (en) | 2005-03-17 | 2006-09-21 | Beadle Bruce A | Enabling a user to store a messaging session entry for delivery when an intended recipient is next available |
WO2006107181A1 (en) | 2005-04-08 | 2006-10-12 | Samsung Electronics Co., Ltd. | System and method for instant message transmission in mobile communication terminal |
US20070016640A1 (en) | 2005-07-12 | 2007-01-18 | Vincent Auvray | Contacting method for inter-person communication |
US20070016643A1 (en) | 2005-07-14 | 2007-01-18 | International Business Machines Corporation | Active session queue management using contextual systems with an instant messaging proxy service |
US20070168863A1 (en) | 2003-03-03 | 2007-07-19 | Aol Llc | Interacting avatars in an instant messaging communication session |
US20080214161A1 (en) | 2005-05-26 | 2008-09-04 | Symb | Location Based Push Presence and Profile on a Wireless Communications Device |
US7428580B2 (en) | 2003-11-26 | 2008-09-23 | Aol Llc | Electronic message forwarding |
US7461378B2 (en) | 2002-06-11 | 2008-12-02 | Siemens Communications, Inc. | Methods and apparatus for processing an instant message |
US20090138599A1 (en) | 2005-12-21 | 2009-05-28 | Symbian Software Limited | Selecting Communication Channels in a Computing Device |
US7668918B2 (en) | 2004-08-02 | 2010-02-23 | Microsoft Corporation | Utilizing instant messaging to effectuate structured communication |
US7698327B2 (en) | 2003-04-04 | 2010-04-13 | Yahoo! Inc. | Universal search interface systems and methods |
US7747685B2 (en) | 2005-01-20 | 2010-06-29 | International Business Machines Corporation | Method for automatic detection of display sharing and alert generation in instant messaging |
US7752268B2 (en) | 2003-09-25 | 2010-07-06 | Oracle America, Inc. | Method and system for presence state assignment based on schedule information in an instant messaging system |
US7895314B1 (en) | 2003-12-19 | 2011-02-22 | Symantec Operating Corporation | System and method for administering a device via instant messaging |
US8086672B2 (en) | 2000-06-17 | 2011-12-27 | Microsoft Corporation | When-free messaging |
US8122088B2 (en) | 2007-06-28 | 2012-02-21 | International Business Machines Corporation | Adding personal note capabilities to text exchange clients |
US8213425B2 (en) | 2007-07-17 | 2012-07-03 | Zte Corporation | Method for matching initial request message in the IP multimedia subsystem service triggering process |
US8631076B1 (en) | 2004-03-31 | 2014-01-14 | Google Inc. | Methods and systems for associating instant messenger events |
US8856236B2 (en) | 2002-04-02 | 2014-10-07 | Verizon Patent And Licensing Inc. | Messaging response system |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070124386A1 (en) * | 2005-11-21 | 2007-05-31 | Research In Motion Limited | Method for regulating instant messaging traffic |
-
2008
- 2008-01-09 US US11/971,737 patent/US9412095B2/en not_active Expired - Fee Related
-
2016
- 2016-08-08 US US15/231,780 patent/US9686214B2/en active Active
Patent Citations (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6301609B1 (en) | 1999-07-07 | 2001-10-09 | Lucent Technologies Inc. | Assignable associate priorities for user-definable instant messaging buddy groups |
US6691162B1 (en) | 1999-09-21 | 2004-02-10 | America Online, Inc. | Monitoring users of a computer network |
US20020087649A1 (en) | 2000-03-16 | 2002-07-04 | Horvitz Eric J. | Bounded-deferral policies for reducing the disruptiveness of notifications |
US6920478B2 (en) | 2000-05-11 | 2005-07-19 | Chikka Pte Ltd. | Method and system for tracking the online status of active users of an internet-based instant messaging system |
US8086672B2 (en) | 2000-06-17 | 2011-12-27 | Microsoft Corporation | When-free messaging |
US6988128B1 (en) | 2000-09-27 | 2006-01-17 | International Business Machines Corporation | Calendar events and calendar-driven application technique |
US20030182391A1 (en) | 2002-03-19 | 2003-09-25 | Mike Leber | Internet based personal information manager |
US8856236B2 (en) | 2002-04-02 | 2014-10-07 | Verizon Patent And Licensing Inc. | Messaging response system |
US7461378B2 (en) | 2002-06-11 | 2008-12-02 | Siemens Communications, Inc. | Methods and apparatus for processing an instant message |
US20070168863A1 (en) | 2003-03-03 | 2007-07-19 | Aol Llc | Interacting avatars in an instant messaging communication session |
US7698327B2 (en) | 2003-04-04 | 2010-04-13 | Yahoo! Inc. | Universal search interface systems and methods |
US20050055412A1 (en) | 2003-09-04 | 2005-03-10 | International Business Machines Corporation | Policy-based management of instant message windows |
US7752268B2 (en) | 2003-09-25 | 2010-07-06 | Oracle America, Inc. | Method and system for presence state assignment based on schedule information in an instant messaging system |
US7428580B2 (en) | 2003-11-26 | 2008-09-23 | Aol Llc | Electronic message forwarding |
US7895314B1 (en) | 2003-12-19 | 2011-02-22 | Symantec Operating Corporation | System and method for administering a device via instant messaging |
US8631076B1 (en) | 2004-03-31 | 2014-01-14 | Google Inc. | Methods and systems for associating instant messenger events |
US7668918B2 (en) | 2004-08-02 | 2010-02-23 | Microsoft Corporation | Utilizing instant messaging to effectuate structured communication |
US20060048061A1 (en) | 2004-08-26 | 2006-03-02 | International Business Machines Corporation | Systems, methods, and media for updating an instant messaging system |
US20060168204A1 (en) | 2004-12-01 | 2006-07-27 | Barry Appelman | Mobile blocking indicators on a contact list |
US7747685B2 (en) | 2005-01-20 | 2010-06-29 | International Business Machines Corporation | Method for automatic detection of display sharing and alert generation in instant messaging |
US20060210034A1 (en) | 2005-03-17 | 2006-09-21 | Beadle Bruce A | Enabling a user to store a messaging session entry for delivery when an intended recipient is next available |
WO2006107181A1 (en) | 2005-04-08 | 2006-10-12 | Samsung Electronics Co., Ltd. | System and method for instant message transmission in mobile communication terminal |
US20080214161A1 (en) | 2005-05-26 | 2008-09-04 | Symb | Location Based Push Presence and Profile on a Wireless Communications Device |
US20070016640A1 (en) | 2005-07-12 | 2007-01-18 | Vincent Auvray | Contacting method for inter-person communication |
US7519672B2 (en) | 2005-07-14 | 2009-04-14 | International Business Machines Corporation | Active session queue management using contextual systems with an instant messaging proxy service |
US20070016643A1 (en) | 2005-07-14 | 2007-01-18 | International Business Machines Corporation | Active session queue management using contextual systems with an instant messaging proxy service |
US20090138599A1 (en) | 2005-12-21 | 2009-05-28 | Symbian Software Limited | Selecting Communication Channels in a Computing Device |
US8122088B2 (en) | 2007-06-28 | 2012-02-21 | International Business Machines Corporation | Adding personal note capabilities to text exchange clients |
US8213425B2 (en) | 2007-07-17 | 2012-07-03 | Zte Corporation | Method for matching initial request message in the IP multimedia subsystem service triggering process |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150026283A1 (en) * | 2000-03-06 | 2015-01-22 | Facebook, Inc. | Selectively translating portions of electronic messages |
US9887940B2 (en) * | 2000-03-06 | 2018-02-06 | Facebook, Inc. | Selectively translating portions of electronic messages |
Also Published As
Publication number | Publication date |
---|---|
US20160352662A1 (en) | 2016-12-01 |
US9412095B2 (en) | 2016-08-09 |
US20090177749A1 (en) | 2009-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9686214B2 (en) | Status and time-based delivery services for instant messengers | |
US11290555B2 (en) | Push notification delivery system | |
US7725542B2 (en) | Forwarding IM messages to E-mail | |
US7725541B2 (en) | Forwarding to automatically prioritized IM accounts based upon priority and presence | |
US8880615B2 (en) | Managing a workflow using an instant messaging system to gather task status information | |
US8250132B2 (en) | Managing messages related to workflows | |
US20070143414A1 (en) | Reference links for instant messaging | |
US20070143417A1 (en) | Instant messaging confirmation and receipt | |
US20020065894A1 (en) | Local presence state and user-controlled presence and message forwarding in unified instant messaging | |
US20070143415A1 (en) | Customizable presence icons for instant messaging | |
US20100056187A1 (en) | Method and system for providing cellular telephone subscription for e-mail threads | |
US8082305B2 (en) | Saving un-viewed instant messages | |
US20080027996A1 (en) | Method and system for synchronizing data using a presence service | |
EP2248042B1 (en) | Instant messaging method and system | |
US20090282138A1 (en) | System, method, and apparatus for electronic communication initiation contingent on busyness | |
US8407304B2 (en) | Method and system for email notification | |
US8726079B2 (en) | Handling of messages in a message system | |
US20070239830A1 (en) | Method and apparatus for instant message notification and forwarding | |
US20060265454A1 (en) | Instant message methods and techniques to broadcast or join groups of people | |
US20060020677A1 (en) | Providing sender-specific notifications of received e-mail messages | |
US20110029595A1 (en) | Non-blocking communication between an application and a server | |
US20110025820A1 (en) | Program-specific presence | |
CA2615573C (en) | Method and system for email notification | |
KR20030067319A (en) | Realtime User State Information Management Method for using SMS in Instant Messaging System based on Wireless Internet | |
JP2008052422A (en) | Presence search apparatus and messaging system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MCLEAN, JAMES G.;PAGAN, WILLIAM G.;SIGNING DATES FROM 20160706 TO 20160916;REEL/FRAME:039774/0521 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |