US8375309B2 - Integration of collaboration systems in an instant messaging application - Google Patents

Integration of collaboration systems in an instant messaging application Download PDF

Info

Publication number
US8375309B2
US8375309B2 US12/349,014 US34901409A US8375309B2 US 8375309 B2 US8375309 B2 US 8375309B2 US 34901409 A US34901409 A US 34901409A US 8375309 B2 US8375309 B2 US 8375309B2
Authority
US
United States
Prior art keywords
instant messaging
contact
priority
message
information
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, expires
Application number
US12/349,014
Other versions
US20100174999A1 (en
Inventor
Giuseppe Fioretti
Sandro Piccinini
Luigi Pichetti
Marco Secchi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Snap Inc
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to US12/349,014 priority Critical patent/US8375309B2/en
Assigned to INTERNATIONAL BUSINESS MACHINES CORPORATION reassignment INTERNATIONAL BUSINESS MACHINES CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: FIORETTI, GIUSEPPE, PICCININI, SANDRO, PICHETTI, LUIGI, SECCHI, MARCO
Publication of US20100174999A1 publication Critical patent/US20100174999A1/en
Priority to US13/733,512 priority patent/US9225674B2/en
Application granted granted Critical
Publication of US8375309B2 publication Critical patent/US8375309B2/en
Assigned to Snapchat, Inc. reassignment Snapchat, Inc. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: INTERNATIONAL BUSINESS MACHINES CORPORATION
Assigned to SNAP INC. reassignment SNAP INC. CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: Snapchat, Inc.
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/046Interoperability with other network applications or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/10Office automation; Time management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/043Real-time or near real-time messaging, e.g. instant messaging [IM] using or handling presence information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/226Delivery according to priorities

Definitions

  • Embodiments of the inventive subject matter generally relate to the field of instant messaging applications, and more particularly to integration of collaboration systems in an instant messaging application.
  • Instant messaging applications allow two or more users to communicate in real time by sending messages via standard internet protocol(s). Users may create contact lists of friends, family and business associates in the instant messaging application. The application allows the user to check if a certain contact is online and exchange messages with them. Instant messaging applications is rapidly becoming a preferred means of business collaboration because many instant messaging applications support voice conversations, file sharing, and text based chat.
  • Embodiments include a method directed to retrieving information corresponding to a plurality of instant messaging contacts from one or more collaboration applications, where the plurality of instant messaging contacts are stored by an instant messaging application.
  • a contact priority is determined for each of the plurality of instant messaging contacts based, at least in part, on the associated information. The priority can suggest a level of attention for each of the instant messaging contacts.
  • a tip may be generated based on the contact priority, where the tip specifies a reason for the contact priority. An indication of the priority and the tip are displayed in an instant messaging contacts list.
  • FIG. 1 is an example conceptual diagram of integrating information from collaboration applications into an instant messaging application.
  • FIG. 2 is an example conceptual diagram of determining priorities of instant messaging contacts based on information from collaboration applications associated with the instant messaging contacts.
  • FIG. 3 is a flowchart depicting example operations for determining priorities of instant messaging contacts based on information from collaboration applications associated with the instant messaging contacts.
  • FIG. 4 is an example conceptual diagram of determining a priority of an IM based on information from collaboration applications associated with an instant messaging contact.
  • FIG. 5 is a flowchart depicting example operations for determining a priority of an IM based on information from collaboration applications associated with an instant messaging contact.
  • FIG. 6 depicts an example computer system.
  • a user of an instant messaging application may interact with his or her instant messaging contacts in other collaboration applications (e.g., e-mail, online meeting applications, calendar applications, voicemail applications, etc.).
  • Instant messaging conversations may relate to information in the other collaboration applications.
  • an employee may send an e-mail containing marketing data to his manager and wishes to discuss the data further.
  • the employee may also send an instant message (IM) to the manager referencing the data.
  • IM instant message
  • the manager should read the e-mail before responding to the IM, but the manager may not know that she received the e-mail.
  • Some embodiments can integrate information from a plurality of collaboration applications into an instant messaging application.
  • a collaboration integration unit can collect information from a plurality of collaboration applications and associate the information with instant messaging contacts and provide suggestions of based on the information.
  • the manager's instant messaging application can collect information from an e-mail application and display, to the manager, a tip indicating that she has an unread e-mail message from the employee.
  • FIG. 1 is an example conceptual diagram of integrating information from collaboration applications into an instant messaging application.
  • the collaboration devices can include desktop computers, personal digital assistants (PDAs), mobile phones, etc.
  • An instant messaging client 103 is running on the collaboration device 101 .
  • the instant messaging client 103 comprises a collaboration integration unit 105 .
  • An instant messaging client 115 is running on collaboration device 113 .
  • the instant messaging clients 103 and 115 include functionality for sending and receiving messages, displaying messages, managing instant messaging contacts, etc.
  • An e-mail application 109 and a calendar application 111 are running on the computer 107 .
  • the instant messaging client 105 receives an instant message from an instant messaging contact logged into the instant messaging client 115 .
  • the collaboration integration unit 105 requests information from one or more registered applications corresponding to the instant messaging contact.
  • the request may include identifying information associated with the instant messaging contact (e.g., a full name, an e-mail address, a phone number, etc.).
  • a user registers an application with the collaboration integration unit 105 to indicate that information from the application should be integrated into the instant messaging client 103 .
  • a user may provide an application identifier, a username, a password, etc.
  • a user may provide an e-mail address, password, and mail server address to register an e-mail application.
  • registered applications include an e-mail application, a calendar application, an online meeting application, a contact management application, etc.
  • the registered applications are depicted as running on the computer 107 , embodiments are not so limited.
  • the registered applications may be running on the collaboration device 101 or on a server.
  • the registered applications are the e-mail application 109 and the calendar application 111 .
  • the e-mail application 109 returns, to the collaboration integration unit 105 , information about unread emails.
  • the calendar application 111 returns, to the collaboration integration unit 105 , information about scheduled meetings corresponding to the instant messaging contact.
  • the registered applications may return information corresponding to the contact.
  • the e-mail application 109 returns information about unread emails from the instant messaging contact (e.g., emails in which the instant messaging contact's email address is in the “from” field).
  • the registered applications may return information corresponding to more than one contact.
  • the e-mail application 109 returns information about all unread e-mails.
  • the collaboration integration unit 105 examines the information to determine if any of the information is associated with the instant messaging contact.
  • the collaboration integration unit 105 determines a priority for the instant message and generates a tip based on the information.
  • the priority indicates a suggested level of attention to be paid to an IM or an instant messaging contact.
  • the tip can specify a reason for the priority.
  • the tip may be generated from a tip template based on the information and the priority.
  • the tip template may be stored locally and may be customized by a user. For example, an instant message is received from an instant messaging contact that a user is scheduled to meet in fifteen minutes.
  • the collaboration integration unit 105 may determine a high priority for the instant message because the communication may be urgent in regard to the meeting.
  • the collaboration integration unit 105 may generate a tip stating, “URGENT: You have a meeting with Contact X in fifteen minutes.”
  • the instant messaging client 103 displays the instant message with an indication of the priority and the tip.
  • Priority may be indicated by a color scheme, a font effect (e.g., underline, bold, italics, etc.), a flashing banner, etc.
  • the tip may be displayed in an IM window, in a mouse-over balloon, etc.
  • FIG. 2 is an example conceptual diagram of determining priorities of instant messaging contacts based on information from collaboration applications associated with the instant messaging contacts.
  • an instant messaging client 205 an e-mail application 225 and a calendar application 227 are running on a collaboration device 203 .
  • the instant messaging client comprises a collaboration integration unit 207 .
  • the e-mail application 225 and the calendar application 227 comprise registered applications 223 of the collaboration integration unit 207 .
  • the instant messaging client 205 detects launch of an instant messaging application. For example, a user signs in to an instant messaging application.
  • the collaboration integration unit 207 requests information from the registered applications 223 corresponding to a plurality of instant messaging contacts.
  • the e-mail application 225 returns information about unread emails.
  • the e-mail application 225 returns information about an unread e-mail from contact James 211 .
  • the calendar application 227 returns information about scheduled meetings.
  • the calendar application 227 returns information about a meeting with contact Marcos 213 .
  • the collaboration integration unit 207 determines a priority for each of the instant messaging contacts and generates a tip based on the information. In this example, the collaboration integration unit 207 determines a high priority for the contact Marcos 213 and a medium priority for the contact James 211 . The collaboration integration unit 207 generates a tip 211 A, “1 unread email,” for the contact James 211 and a tip 213 , “Meeting in 30 min,” for the contact Marcos 213 .
  • the instant messaging client 205 displays an indication of the priority and the tip for each of the plurality of contacts in a contacts list 201 .
  • the contact Marcos 213 is double underlined to indicate the high priority.
  • the contact James 211 is bolded to indicate the medium priority. Priority may also be indicated by a color, flashing text, font size, etc.
  • Contacts may also be arranged by priority in the contacts list 201 .
  • the tips 211 A and 213 A are displayed under the contacts James 211 and Marcos 213 , respectively.
  • a tip may contain a link to information in a collaboration application.
  • a tip indicating an unread messaged may contain a link to view the unread email.
  • the link is clicked, the email is displayed in the instant messaging application 205 or in the e-mail application 225 .
  • collaboration integration unit may retrieve information from the registered applications by accessing data stored by the registered applications.
  • the collaboration integration unit retrieves information from a database maintained by a registered calendar application.
  • the collaboration integration unit retrieves e-mail messages stored on a mail server of a registered e-mail application.
  • FIG. 3 is a flowchart depicting example operations for determining priorities of instant messaging contacts based on information from collaboration applications associated with the instant messaging contacts.
  • a loop begins for each instant messaging contact.
  • a collaboration integration unit retrieves information corresponding to the instant messaging contact from one or more registered applications. For example, the collaboration integration unit retrieves information about meetings scheduled for today from a calendar database.
  • the collaboration integration unit may also access a repository storing profile information of the instant messaging contact.
  • the profile information may include the instant messaging contact's full name, a job title, a location, one or more e-mail addresses, a phone number, etc.
  • the public information may be cached in an instant messaging client and used to associate retrieved data with the instant messaging contact.
  • a user may also indicate profile information of the instant messaging contact.
  • the collaboration integration unit determines if information corresponding to the instant messaging contact was retrieved. For example, the collaboration integration unit retrieves an email message. The collaboration integration unit determines that information corresponding to the instant messaging contact was retrieved if the instant messaging contact's name and/or email address is contained the email message. If information corresponding to the instant messaging contact was retrieved, flow continues at block 306 . If information corresponding to the instant messaging contact was not retrieved, flow continues at block 313 .
  • the collaboration integration unit associates the information with the instant messaging contact.
  • the collaboration integration unit determines a priority for the instant messaging contact based on the associated information.
  • Priority may be influenced by other factors in addition to the associated information. For example, priority of a contact may be influenced by company rank. If two contacts have unread e-mail messages, the contact with a higher company rank would have a higher priority. As another example, a deadline may be approaching for a project, so a user adds instant messaging contacts on the project team to a list of important contacts.
  • the collaboration integration unit generates a tip based on the associated information and the priority. For example, an instant messaging contact has a high priority because there is an unread urgent e-mail from the instant messaging contact and a meeting is scheduled for the contact in 30 minutes.
  • the collaboration integration unit may generate a tip, “1 unread URGENT e-mail, meeting in 30 min.”
  • the collaboration integration unit displays an indication of the priority and the tip in a contacts list.
  • the priority can be indicated by displaying the instant messaging contact's name in flashing text.
  • the tip is displayed in a bubble.
  • the priority indication and tip may be displayed in an IM.
  • the flow in FIG. 3 can be executed when an instant messaging application is started and at certain intervals while the instant messaging application is running
  • the interval may be specified by a user or may be a default value.
  • FIG. 4 is an example conceptual diagram of determining a priority of an IM based on information from collaboration applications associated with an instant messaging contact.
  • an instant messaging client 405 an e-mail application 421 and a calendar application 423 are running on a collaboration device 403 .
  • the instant messaging client comprises a collaboration integration unit 407 .
  • the e-mail application 421 and the calendar application 423 comprise registered applications 419 of the collaboration integration unit 407 .
  • the instant messaging client 405 detects that an IM 401 has been received from an instant messaging contact.
  • the collaboration integration unit 407 requests information from registered applications 419 corresponding to the instant messaging contact.
  • the e-mail application 421 returns information about unread emails from the instant messaging contact. In this example, there is one unread e-mail from the instant messaging contact.
  • the collaboration integration unit 407 determines a priority for the instant message and generates a tip based on the information.
  • the instant message is assigned a medium priority because there is an unread e-mail from the instant messaging contact.
  • the priority suggests that the e-mail should be read before responding to the IM.
  • the collaboration integration unit generates a tip from a tip template based on the priority. The generated tip states, “You have 1 unread e-mail from Marcos. You may want to read the email before responding.”
  • the instant messaging client displays the instant message with an indication of the priority and the generated tip.
  • Priority may be indicated by a color scheme, flashing text, font effects (e.g., bold, italics, underline, etc.).
  • the tip may be displayed in an IM window, a hover balloon, etc.
  • FIG. 5 is a flowchart depicting example operations for determining a priority of an IM based on information from collaboration applications associated with an instant messaging contact. Flow begins at block 501 , where an instant messaging application detects than an IM has been received from an instant messaging contact.
  • a collaboration integration unit retrieves information corresponding to the instant messaging contact from one or more registered applications. For example, the collaboration integration unit accesses profile information in a repository to determine the instant messaging contact's name and e-mail addresses. The collaboration integration unit then retrieves e-mail messages from a mail server. The collaboration integration unit examines the retrieved e-mail for the instant messaging contact's name and email addresses.
  • the collaboration integration unit determines if information corresponding to the instant messaging contact was retrieved. In the above example, the collaboration integration unit determines that information corresponding to the instant messaging contact was retrieved if the instant messaging contact's name and/or email address is contained in one of the email messages. If information corresponding to the instant messaging contact was retrieved, flow continues at block 506 . If information corresponding to the instant messaging contact was not retrieved, flow continues ends.
  • the collaboration integration unit associates the information with the instant messaging contact.
  • the collaboration integration unit determines a priority for the IM based on the associated information. For example, the collaboration integration unit determines a medium priority for the IM because there is one unread e-mail containing the instant messaging contact's name in the e-mail's message text.
  • the collaboration integration unit generates a tip from a tip template based on the received information and the priority.
  • the tip states, “1 unread e-mail references Contact X. You may want to read the e-mail before responding.”
  • the instant messaging client displays the IM with an indication of the priority and the generated tip.
  • the priority is indicated by a red color scheme and the generated tip is displayed in a window of the IM.
  • the indication of the priority and generated tip may be displayed in a contacts list.
  • Embodiments may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.”
  • embodiments of the inventive subject matter may take the form of a computer program product embodied in any tangible medium of expression having computer usable program code embodied in the medium.
  • the described embodiments may be provided as a computer program product, or software, that may include a machine-readable medium having stored thereon instructions, which may be used to program a computer system (or other electronic device(s)) to perform a process according to embodiments, whether presently described or not, since every conceivable variation is not enumerated herein.
  • a machine readable medium includes any mechanism for storing (“machine-readable storage medium”) or transmitting (“machine-readable transmission medium”) information in a form (e.g., software, processing application) readable by a machine (e.g., a computer).
  • the machine-readable storage medium may include, but is not limited to, magnetic storage medium (e.g., floppy diskette); optical storage medium (e.g., CD-ROM); magneto-optical storage medium; read only memory (ROM); random access memory (RAM); erasable programmable memory (e.g., EPROM and EEPROM); flash memory; or other types of medium suitable for storing electronic instructions.
  • machine-readable transmission medium embodiments may be embodied in an electrical, optical, acoustical or other form of propagated signal (e.g., carrier waves, infrared signals, digital signals, etc.), or wireline, wireless, or other communications medium.
  • propagated signal e.g., carrier waves, infrared signals, digital signals, etc.
  • Computer program code for carrying out operations of the embodiments may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages.
  • the program code may execute entirely on a user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
  • the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN), a personal area network (PAN), or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
  • LAN local area network
  • PAN personal area network
  • WAN wide area network
  • Internet Service Provider for example, AT&T, MCI, Sprint, EarthLink, MSN, GTE, etc.
  • FIG. 6 depicts an example computer system.
  • a computer system includes a processor unit 601 (possibly including multiple processors, multiple cores, multiple nodes, and/or implementing multi-threading, etc.).
  • the computer system includes memory 607 .
  • the memory 607 may be system memory (e.g., one or more of cache, SRAM, DRAM, zero capacitor RAM, Twin Transistor RAM, eDRAM, EDO RAM, DDR RAM, EEPROM, NRAM, RRAM, SONOS, PRAM, etc.) or any one or more of the above already described possible realizations of machine-readable media.
  • the computer system also includes a bus 603 (e.g., PCI, ISA, PCI-Express, HyperTransport®, InfiniBand®, NuBus, etc.), a network interface 605 (e.g., an ATM interface, an Ethernet interface, a Frame Relay interface, SONET interface, wireless interface, etc.), and a storage device(s) 609 (e.g., optical storage, magnetic storage, etc.).
  • the computer system also includes a collaboration integration unit 621 that retrieves information from a plurality of registered applications, associates the retrieved information with a plurality of instant messaging contacts, determines the priority of the instant messaging contacts based on the associated information and generates a tip based on the priority.
  • any one of these functionalities may be partially (or entirely) implemented in hardware and/or on the processing unit 601 .
  • the functionality may be implemented with an application specific integrated circuit, in logic implemented in the processing unit 601 , in a co-processor on a peripheral device or card, etc.
  • realizations may include fewer or additional components not illustrated in FIG. 6 (e.g., video cards, audio cards, additional network interfaces, peripheral devices, etc.).
  • the processor unit 601 , the storage device(s) 609 , and the network interface 605 are coupled to the bus 603 .
  • the memory 607 may be coupled to the processor unit 601 .

Abstract

A user of an instant messaging application may interact with instant messaging contacts in other collaboration applications (e.g., e-mail, calendar applications, etc.). IM conversations may relate to information in the collaboration applications. For example, an employee may send an e-mail containing marketing data to his manager and wishes to discuss the data further. The employee sends an IM to the manager referencing the data. The manager should read the e-mail before responding, but the manager may not know that she received the e-mail. Information from a plurality of collaboration applications can be integrated into an instant messaging application. A collaboration integration unit can collect and associate information from the collaboration applications with instant messaging contacts and provide suggestions based on the information. In the previous example, the manager's instant messaging application collects information from an e-mail application and indicates that she has an unread e-mail from the employee.

Description

BACKGROUND
Embodiments of the inventive subject matter generally relate to the field of instant messaging applications, and more particularly to integration of collaboration systems in an instant messaging application.
Instant messaging applications allow two or more users to communicate in real time by sending messages via standard internet protocol(s). Users may create contact lists of friends, family and business associates in the instant messaging application. The application allows the user to check if a certain contact is online and exchange messages with them. Instant messaging applications is rapidly becoming a preferred means of business collaboration because many instant messaging applications support voice conversations, file sharing, and text based chat.
SUMMARY
Embodiments include a method directed to retrieving information corresponding to a plurality of instant messaging contacts from one or more collaboration applications, where the plurality of instant messaging contacts are stored by an instant messaging application. A contact priority is determined for each of the plurality of instant messaging contacts based, at least in part, on the associated information. The priority can suggest a level of attention for each of the instant messaging contacts. A tip may be generated based on the contact priority, where the tip specifies a reason for the contact priority. An indication of the priority and the tip are displayed in an instant messaging contacts list.
BRIEF DESCRIPTION OF THE DRAWINGS
The present embodiments may be better understood, and numerous objects, features, and advantages made apparent to those skilled in the art by referencing the accompanying drawings.
FIG. 1 is an example conceptual diagram of integrating information from collaboration applications into an instant messaging application.
FIG. 2 is an example conceptual diagram of determining priorities of instant messaging contacts based on information from collaboration applications associated with the instant messaging contacts.
FIG. 3 is a flowchart depicting example operations for determining priorities of instant messaging contacts based on information from collaboration applications associated with the instant messaging contacts.
FIG. 4 is an example conceptual diagram of determining a priority of an IM based on information from collaboration applications associated with an instant messaging contact.
FIG. 5 is a flowchart depicting example operations for determining a priority of an IM based on information from collaboration applications associated with an instant messaging contact.
FIG. 6 depicts an example computer system.
DESCRIPTION OF EMBODIMENT(S)
The description that follows includes exemplary systems, methods, techniques, instruction sequences and computer program products that embody techniques of the present inventive subject matter. However, it is understood that the described embodiments may be practiced without these specific details. For instance, although examples refer to instant messaging applications, embodiments may be implemented in short message service (SMS) applications. In other instances, well-known instruction instances, protocols, structures and techniques have not been shown in detail in order not to obfuscate the description.
A user of an instant messaging application may interact with his or her instant messaging contacts in other collaboration applications (e.g., e-mail, online meeting applications, calendar applications, voicemail applications, etc.). Instant messaging conversations may relate to information in the other collaboration applications. For example, an employee may send an e-mail containing marketing data to his manager and wishes to discuss the data further. The employee may also send an instant message (IM) to the manager referencing the data. The manager should read the e-mail before responding to the IM, but the manager may not know that she received the e-mail.
Some embodiments can integrate information from a plurality of collaboration applications into an instant messaging application. For example, a collaboration integration unit can collect information from a plurality of collaboration applications and associate the information with instant messaging contacts and provide suggestions of based on the information. From the example above, the manager's instant messaging application can collect information from an e-mail application and display, to the manager, a tip indicating that she has an unread e-mail message from the employee.
FIG. 1 is an example conceptual diagram of integrating information from collaboration applications into an instant messaging application. In FIG. 1, two collaboration devices 101 and 113, and a computer 107 are connected to a network 117. The collaboration devices can include desktop computers, personal digital assistants (PDAs), mobile phones, etc. An instant messaging client 103 is running on the collaboration device 101. The instant messaging client 103 comprises a collaboration integration unit 105. An instant messaging client 115 is running on collaboration device 113. Although not shown, the instant messaging clients 103 and 115 include functionality for sending and receiving messages, displaying messages, managing instant messaging contacts, etc. An e-mail application 109 and a calendar application 111 are running on the computer 107.
At stage A, the instant messaging client 105 receives an instant message from an instant messaging contact logged into the instant messaging client 115.
At stage B, the collaboration integration unit 105 requests information from one or more registered applications corresponding to the instant messaging contact. The request may include identifying information associated with the instant messaging contact (e.g., a full name, an e-mail address, a phone number, etc.). A user registers an application with the collaboration integration unit 105 to indicate that information from the application should be integrated into the instant messaging client 103. When registering an application, a user may provide an application identifier, a username, a password, etc. For example, a user may provide an e-mail address, password, and mail server address to register an e-mail application. Examples of registered applications include an e-mail application, a calendar application, an online meeting application, a contact management application, etc. Although the registered applications are depicted as running on the computer 107, embodiments are not so limited. The registered applications may be running on the collaboration device 101 or on a server. In this example, the registered applications are the e-mail application 109 and the calendar application 111.
At stage C, the e-mail application 109 returns, to the collaboration integration unit 105, information about unread emails. Also, the calendar application 111 returns, to the collaboration integration unit 105, information about scheduled meetings corresponding to the instant messaging contact. The registered applications may return information corresponding to the contact. For example, the e-mail application 109 returns information about unread emails from the instant messaging contact (e.g., emails in which the instant messaging contact's email address is in the “from” field). The registered applications may return information corresponding to more than one contact. For example, the e-mail application 109 returns information about all unread e-mails. The collaboration integration unit 105 examines the information to determine if any of the information is associated with the instant messaging contact.
At stage D, the collaboration integration unit 105 determines a priority for the instant message and generates a tip based on the information. The priority indicates a suggested level of attention to be paid to an IM or an instant messaging contact. The tip can specify a reason for the priority. The tip may be generated from a tip template based on the information and the priority. The tip template may be stored locally and may be customized by a user. For example, an instant message is received from an instant messaging contact that a user is scheduled to meet in fifteen minutes. The collaboration integration unit 105 may determine a high priority for the instant message because the communication may be urgent in regard to the meeting. The collaboration integration unit 105 may generate a tip stating, “URGENT: You have a meeting with Contact X in fifteen minutes.”
At stage E, the instant messaging client 103 displays the instant message with an indication of the priority and the tip. Priority may be indicated by a color scheme, a font effect (e.g., underline, bold, italics, etc.), a flashing banner, etc. The tip may be displayed in an IM window, in a mouse-over balloon, etc.
FIG. 2 is an example conceptual diagram of determining priorities of instant messaging contacts based on information from collaboration applications associated with the instant messaging contacts. In FIG. 2, an instant messaging client 205, an e-mail application 225 and a calendar application 227 are running on a collaboration device 203. The instant messaging client comprises a collaboration integration unit 207. The e-mail application 225 and the calendar application 227 comprise registered applications 223 of the collaboration integration unit 207.
At stage A, the instant messaging client 205 detects launch of an instant messaging application. For example, a user signs in to an instant messaging application.
At stage B, the collaboration integration unit 207 requests information from the registered applications 223 corresponding to a plurality of instant messaging contacts. In this example, there are seven instant messaging contacts, Cortney 209, James 211, Marcos 213, Mary 215, Alice 217, George 219, and Matt 221.
At stage C, the e-mail application 225 returns information about unread emails. In this example, the e-mail application 225 returns information about an unread e-mail from contact James 211.
At stage D, the calendar application 227 returns information about scheduled meetings. In this example, the calendar application 227 returns information about a meeting with contact Marcos 213.
At stage E, the collaboration integration unit 207 determines a priority for each of the instant messaging contacts and generates a tip based on the information. In this example, the collaboration integration unit 207 determines a high priority for the contact Marcos 213 and a medium priority for the contact James 211. The collaboration integration unit 207 generates a tip 211A, “1 unread email,” for the contact James 211 and a tip 213, “Meeting in 30 min,” for the contact Marcos 213.
At stage F, the instant messaging client 205 displays an indication of the priority and the tip for each of the plurality of contacts in a contacts list 201. In this example, the contact Marcos 213 is double underlined to indicate the high priority. The contact James 211 is bolded to indicate the medium priority. Priority may also be indicated by a color, flashing text, font size, etc. Contacts may also be arranged by priority in the contacts list 201. The tips 211A and 213A are displayed under the contacts James 211 and Marcos 213, respectively.
In some embodiments, a tip may contain a link to information in a collaboration application. For example, a tip indicating an unread messaged may contain a link to view the unread email. When the link is clicked, the email is displayed in the instant messaging application 205 or in the e-mail application 225.
Although examples refer to a collaboration integration unit requesting information from one or more registered applications, embodiments are not so limited. The collaboration integration unit may retrieve information from the registered applications by accessing data stored by the registered applications. For example, the collaboration integration unit retrieves information from a database maintained by a registered calendar application. As another example, the collaboration integration unit retrieves e-mail messages stored on a mail server of a registered e-mail application.
FIG. 3 is a flowchart depicting example operations for determining priorities of instant messaging contacts based on information from collaboration applications associated with the instant messaging contacts. At block 301, a loop begins for each instant messaging contact.
At block 303, a collaboration integration unit retrieves information corresponding to the instant messaging contact from one or more registered applications. For example, the collaboration integration unit retrieves information about meetings scheduled for today from a calendar database. The collaboration integration unit may also access a repository storing profile information of the instant messaging contact. The profile information may include the instant messaging contact's full name, a job title, a location, one or more e-mail addresses, a phone number, etc. The public information may be cached in an instant messaging client and used to associate retrieved data with the instant messaging contact. A user may also indicate profile information of the instant messaging contact.
At block 305, the collaboration integration unit determines if information corresponding to the instant messaging contact was retrieved. For example, the collaboration integration unit retrieves an email message. The collaboration integration unit determines that information corresponding to the instant messaging contact was retrieved if the instant messaging contact's name and/or email address is contained the email message. If information corresponding to the instant messaging contact was retrieved, flow continues at block 306. If information corresponding to the instant messaging contact was not retrieved, flow continues at block 313.
At block 306, the collaboration integration unit associates the information with the instant messaging contact.
At block 307, the collaboration integration unit determines a priority for the instant messaging contact based on the associated information. Priority may be influenced by other factors in addition to the associated information. For example, priority of a contact may be influenced by company rank. If two contacts have unread e-mail messages, the contact with a higher company rank would have a higher priority. As another example, a deadline may be approaching for a project, so a user adds instant messaging contacts on the project team to a list of important contacts.
At block 309, the collaboration integration unit generates a tip based on the associated information and the priority. For example, an instant messaging contact has a high priority because there is an unread urgent e-mail from the instant messaging contact and a meeting is scheduled for the contact in 30 minutes. The collaboration integration unit may generate a tip, “1 unread URGENT e-mail, meeting in 30 min.”
At block 311, the collaboration integration unit displays an indication of the priority and the tip in a contacts list. In the above example, the priority can be indicated by displaying the instant messaging contact's name in flashing text. When a user hovers over the name with a mouse, the tip is displayed in a bubble. In addition to displaying the indication of the priority and the tip in the contacts list, the priority indication and tip may be displayed in an IM.
At block 313, the loop ends.
The flow in FIG. 3 can be executed when an instant messaging application is started and at certain intervals while the instant messaging application is running The interval may be specified by a user or may be a default value.
In addition to determining a priority for an instant messaging contact, a priority may be determined for an IM. FIG. 4 is an example conceptual diagram of determining a priority of an IM based on information from collaboration applications associated with an instant messaging contact. In FIG. 4, an instant messaging client 405, an e-mail application 421 and a calendar application 423 are running on a collaboration device 403. The instant messaging client comprises a collaboration integration unit 407. The e-mail application 421 and the calendar application 423 comprise registered applications 419 of the collaboration integration unit 407.
At stage A, the instant messaging client 405 detects that an IM 401 has been received from an instant messaging contact.
At stage B, the collaboration integration unit 407 requests information from registered applications 419 corresponding to the instant messaging contact.
At stage C, the e-mail application 421 returns information about unread emails from the instant messaging contact. In this example, there is one unread e-mail from the instant messaging contact.
At stage D, the collaboration integration unit 407 determines a priority for the instant message and generates a tip based on the information. In this example, the instant message is assigned a medium priority because there is an unread e-mail from the instant messaging contact. The priority suggests that the e-mail should be read before responding to the IM. The collaboration integration unit generates a tip from a tip template based on the priority. The generated tip states, “You have 1 unread e-mail from Marcos. You may want to read the email before responding.”
At stage E, the instant messaging client displays the instant message with an indication of the priority and the generated tip. Priority may be indicated by a color scheme, flashing text, font effects (e.g., bold, italics, underline, etc.). The tip may be displayed in an IM window, a hover balloon, etc.
FIG. 5 is a flowchart depicting example operations for determining a priority of an IM based on information from collaboration applications associated with an instant messaging contact. Flow begins at block 501, where an instant messaging application detects than an IM has been received from an instant messaging contact.
At block 503, a collaboration integration unit retrieves information corresponding to the instant messaging contact from one or more registered applications. For example, the collaboration integration unit accesses profile information in a repository to determine the instant messaging contact's name and e-mail addresses. The collaboration integration unit then retrieves e-mail messages from a mail server. The collaboration integration unit examines the retrieved e-mail for the instant messaging contact's name and email addresses.
At block 505, the collaboration integration unit determines if information corresponding to the instant messaging contact was retrieved. In the above example, the collaboration integration unit determines that information corresponding to the instant messaging contact was retrieved if the instant messaging contact's name and/or email address is contained in one of the email messages. If information corresponding to the instant messaging contact was retrieved, flow continues at block 506. If information corresponding to the instant messaging contact was not retrieved, flow continues ends.
At block 506, the collaboration integration unit associates the information with the instant messaging contact.
At block 507, the collaboration integration unit determines a priority for the IM based on the associated information. For example, the collaboration integration unit determines a medium priority for the IM because there is one unread e-mail containing the instant messaging contact's name in the e-mail's message text.
At block 509, the collaboration integration unit generates a tip from a tip template based on the received information and the priority. In the above example, the tip states, “1 unread e-mail references Contact X. You may want to read the e-mail before responding.”
At block 511, the instant messaging client displays the IM with an indication of the priority and the generated tip. For example, the priority is indicated by a red color scheme and the generated tip is displayed in a window of the IM. In addition to displaying the indication of the priority and the generated tip, the indication of the priority and generated tip may be displayed in a contacts list.
Embodiments may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, embodiments of the inventive subject matter may take the form of a computer program product embodied in any tangible medium of expression having computer usable program code embodied in the medium. The described embodiments may be provided as a computer program product, or software, that may include a machine-readable medium having stored thereon instructions, which may be used to program a computer system (or other electronic device(s)) to perform a process according to embodiments, whether presently described or not, since every conceivable variation is not enumerated herein. A machine readable medium includes any mechanism for storing (“machine-readable storage medium”) or transmitting (“machine-readable transmission medium”) information in a form (e.g., software, processing application) readable by a machine (e.g., a computer). The machine-readable storage medium may include, but is not limited to, magnetic storage medium (e.g., floppy diskette); optical storage medium (e.g., CD-ROM); magneto-optical storage medium; read only memory (ROM); random access memory (RAM); erasable programmable memory (e.g., EPROM and EEPROM); flash memory; or other types of medium suitable for storing electronic instructions. In addition, machine-readable transmission medium embodiments may be embodied in an electrical, optical, acoustical or other form of propagated signal (e.g., carrier waves, infrared signals, digital signals, etc.), or wireline, wireless, or other communications medium.
Computer program code for carrying out operations of the embodiments may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on a user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN), a personal area network (PAN), or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
FIG. 6 depicts an example computer system. A computer system includes a processor unit 601 (possibly including multiple processors, multiple cores, multiple nodes, and/or implementing multi-threading, etc.). The computer system includes memory 607. The memory 607 may be system memory (e.g., one or more of cache, SRAM, DRAM, zero capacitor RAM, Twin Transistor RAM, eDRAM, EDO RAM, DDR RAM, EEPROM, NRAM, RRAM, SONOS, PRAM, etc.) or any one or more of the above already described possible realizations of machine-readable media. The computer system also includes a bus 603 (e.g., PCI, ISA, PCI-Express, HyperTransport®, InfiniBand®, NuBus, etc.), a network interface 605 (e.g., an ATM interface, an Ethernet interface, a Frame Relay interface, SONET interface, wireless interface, etc.), and a storage device(s) 609 (e.g., optical storage, magnetic storage, etc.). The computer system also includes a collaboration integration unit 621 that retrieves information from a plurality of registered applications, associates the retrieved information with a plurality of instant messaging contacts, determines the priority of the instant messaging contacts based on the associated information and generates a tip based on the priority. Any one of these functionalities may be partially (or entirely) implemented in hardware and/or on the processing unit 601. For example, the functionality may be implemented with an application specific integrated circuit, in logic implemented in the processing unit 601, in a co-processor on a peripheral device or card, etc. Further, realizations may include fewer or additional components not illustrated in FIG. 6 (e.g., video cards, audio cards, additional network interfaces, peripheral devices, etc.). The processor unit 601, the storage device(s) 609, and the network interface 605 are coupled to the bus 603. Although illustrated as being coupled to the bus 603, the memory 607 may be coupled to the processor unit 601.
While the embodiments are described with reference to various implementations and exploitations, it will be understood that these embodiments are illustrative and that the scope of the inventive subject matter is not limited to them. In general, techniques for integration of collaboration systems in an instant messaging application as described herein may be implemented with facilities consistent with any hardware system or hardware systems. Many variations, modifications, additions, and improvements are possible.
Plural instances may be provided for components, operations or structures described herein as a single instance. Finally, boundaries between various components, operations and data stores are somewhat arbitrary, and particular operations are illustrated in the context of specific illustrative configurations. Other allocations of functionality are envisioned and may fall within the scope of the inventive subject matter. In general, structures and functionality presented as separate components in the exemplary configurations may be implemented as a combined structure or component. Similarly, structures and functionality presented as a single component may be implemented as separate components. These and other variations, modifications, additions, and improvements may fall within the scope of the inventive subject matter.

Claims (16)

1. A method comprising:
receiving information corresponding to a plurality of instant messaging contacts from one or more collaboration applications, wherein the plurality of instant messaging contacts are stored by an instant messaging application, wherein the collaboration applications comprise an e-mail application, a calendar application, an online meeting application, and a voicemail application;
associating the information with the instant messaging contacts;
determining a contact priority for each of the instant messaging contacts based, at least in part, on the association between the information and the instant messaging contacts, wherein the contact priority indicates an attention level associated with each of the instant messaging contacts;
generating a contact tip based, at least in part, on the contact priority, wherein the contact tip specifies a reason for the contact priority; and
displaying an indication of the contact priority and the contact tip in an instant messaging contacts list;
detecting that an instant message has been received from one of the instant messaging contacts;
receiving, from the one or more collaboration applications, contact information corresponding to the instant messaging contact;
associating the contact information with the instant messaging contact, wherein the contact information comprises contact priority;
determining a message priority for the instant message based, at least in part, on the association between the corresponding contact priority and the instant messaging contact, wherein the message priority indicates an attention level for the instant message;
generating a message tip based, at least in part, on the message priority, wherein the message tip specifies a reason for the message priority and suggests an action based on the message priority; and
displaying the instant message with an indication of the message priority and the message tip.
2. The method of claim 1, wherein said receiving information corresponding to the plurality of instant messaging contacts from the one or more collaboration applications further comprises at least one of requesting information from the one or more collaboration applications, and accessing data stored by the one or more collaboration applications.
3. The method of claim 1, wherein determining a contact priority for each of the instant messaging contacts includes determining the contact priority in accordance with a read status of an email from an instant messaging contact.
4. The method of claim 1, wherein determining a contact priority for each of the instant messaging contacts includes determining the contact priority in accordance with a project deadline for a project including the instant messaging contact.
5. The method of claim 1, wherein determining a contact priority for each of the instant messaging contacts includes determining the contact priority in accordance with a calendar event associated with the instant messaging contact.
6. The method of claim 1, wherein said associating the information with the instant messaging contacts further comprises retrieving profile information of the instant messaging contacts from a profile repository, wherein the profile information comprises at least one of a full name, an e-mail address, a phone number, a job title, and a location.
7. The method of claim 6, further comprising searching the information for profile information of the instant messaging contacts.
8. The method of claim 1 further comprising:
detecting user selection of a link in the contact tip; and
displaying the associated information in at least one of the instant messaging application and one of the one or more collaboration applications.
9. The method of claim 1, wherein the indication of the priority is at least one of a color scheme, a font effect, a font size, and flashing text.
10. One or more machine-readable storage media having stored therein a program product, which when executed by a set of one or more processor units causes the set of one or more processor units to perform operations that comprise:
receiving information corresponding to a plurality of instant messaging contacts from one or more collaboration applications, wherein the plurality of instant messaging contacts are stored by an instant messaging application, wherein the collaboration applications comprise an e-mail application, a calendar application, an online meeting application, and a voicemail application;
associating the information with the instant messaging contacts;
determining a contact priority for each of the instant messaging contacts based, at least in part, on the association between the information and the instant messaging contacts, wherein the contact priority indicates an attention level associated with each of the instant messaging contacts;
generating a contact tip based, at least in part, on the contact priority, wherein the contact tip specifies a reason for the contact priority; and
displaying an indication of the contact priority and the contact tip in an instant messaging contacts list;
detecting that an instant message has been received from one of the instant messaging contacts;
receiving, from the one or more collaboration applications, contact information corresponding to the instant messaging contact;
associating the contact information with the instant messaging contact, wherein the contact information comprises contact priority;
determining a message priority for the instant message based, at least in part, on the association between the corresponding contact priority and the instant messaging contact, wherein the message priority indicates an attention level for the instant message;
generating a message tip based, at least in part, on the message priority, wherein the message tip specifies a reason for the message priority and suggests an action based on the message priority; and
displaying the instant message with an indication of the message priority and the message tip.
11. The machine-readable storage media of claim 10, wherein said receiving information corresponding to the plurality of instant messaging contacts from the one or more collaboration applications further comprises at least one of requesting information from the one or more collaboration applications, and accessing data stored by the one or more collaboration applications.
12. The machine-readable storage media of claim 10, wherein said associating the information with the instant messaging contacts further comprises retrieving profile information of the instant messaging contacts from a profile repository, wherein the profile information comprises at least one of a full name, an e-mail address, a phone number, a job title, and a location.
13. The machine-readable storage media of claim 12, wherein the operations further comprise searching the information for profile information of the instant messaging contacts.
14. The machine-readable storage media of claim 10, wherein the operations further comprise:
detecting user selection of a link in the contact tip; and
displaying the associated information in at least one of the instant messaging application and one of the one or more collaboration applications.
15. The machine-readable storage media of claim 10, wherein the indication of the priority is at least one of a color scheme, a font effect, a font size, and flashing text.
16. An apparatus comprising:
a set of one or more hardware processing units;
a network interface; and
a collaboration integration unit executable by at least one of the set of one or more hardware processing units and configured to,
receive information corresponding to a plurality of instant messaging contacts from one or more collaboration applications, wherein the plurality of instant messaging contacts are stored by an instant messaging application, wherein the collaboration applications comprise an e-mail application, a calendar application, an online meeting application, and a voicemail application;
associate the information with the instant messaging contacts;
determine a contact priority for each of the instant messaging contacts based, at least in part, on the association between the information and the instant messaging contacts, wherein the contact priority indicates an attention level associated with each of the instant messaging contacts;
generate a contact tip based, at least in part, on the contact priority, wherein the contact tip specifies a reason for the contact priority; and
display an indication of the contact priority and the contact tip in an instant messaging contacts list;
detect that an instant message has been received from one of the instant messaging contacts;
receive, from the one or more collaboration applications, contact information corresponding to the instant messaging contact;
associate the contact information with the instant messaging contact, wherein the contact information comprises contact priority;
determine a message priority for the instant message based, at least in part, on the association between the corresponding contact priority and the instant messaging contact, wherein the message priority indicates an attention level for the instant message;
generate a message tip based, at least in part, on the message priority, wherein the message tip specifies a reason for the message priority and suggests an action based on the message priority; and
display the instant message with an indication of the message priority and the message tip.
US12/349,014 2009-01-06 2009-01-06 Integration of collaboration systems in an instant messaging application Active 2031-02-28 US8375309B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US12/349,014 US8375309B2 (en) 2009-01-06 2009-01-06 Integration of collaboration systems in an instant messaging application
US13/733,512 US9225674B2 (en) 2009-01-06 2013-01-03 Integration of collaboration systems in an instant messaging application

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/349,014 US8375309B2 (en) 2009-01-06 2009-01-06 Integration of collaboration systems in an instant messaging application

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/733,512 Continuation US9225674B2 (en) 2009-01-06 2013-01-03 Integration of collaboration systems in an instant messaging application

Publications (2)

Publication Number Publication Date
US20100174999A1 US20100174999A1 (en) 2010-07-08
US8375309B2 true US8375309B2 (en) 2013-02-12

Family

ID=42312514

Family Applications (2)

Application Number Title Priority Date Filing Date
US12/349,014 Active 2031-02-28 US8375309B2 (en) 2009-01-06 2009-01-06 Integration of collaboration systems in an instant messaging application
US13/733,512 Active 2029-10-09 US9225674B2 (en) 2009-01-06 2013-01-03 Integration of collaboration systems in an instant messaging application

Family Applications After (1)

Application Number Title Priority Date Filing Date
US13/733,512 Active 2029-10-09 US9225674B2 (en) 2009-01-06 2013-01-03 Integration of collaboration systems in an instant messaging application

Country Status (1)

Country Link
US (2) US8375309B2 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130297317A1 (en) * 2012-04-16 2013-11-07 Htc Corporation Method for offering suggestion during conversation, electronic device using the same, and non-transitory storage medium
US20160188127A1 (en) * 2014-12-30 2016-06-30 Fih (Hong Kong) Limited Communication device and method for processing message of the communication device
US9560001B1 (en) * 2012-04-02 2017-01-31 Google Inc. Managing notifications across services
US20180212920A1 (en) * 2017-01-20 2018-07-26 Salesforce.Com, Inc. User Availability Aware Communication System
US20220210107A1 (en) * 2020-12-31 2022-06-30 Snap Inc. Messaging user interface element with reminders
US20220377030A1 (en) * 2020-04-30 2022-11-24 Beijing Bytedance Network Technology Co., Ltd. Information presentation method, apparatus, electronic device, and storage medium
US20220385618A1 (en) * 2020-04-30 2022-12-01 Beijing Bytedance Network Technology Co., Ltd. Information display method and apparatus, electronic device, and storage medium

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8375309B2 (en) 2009-01-06 2013-02-12 International Business Machines Corporation Integration of collaboration systems in an instant messaging application
US9787827B2 (en) * 2010-03-31 2017-10-10 Genband Us Llc Systems and methods for fused services including an integrated management system
US10554594B2 (en) * 2013-01-10 2020-02-04 Vmware, Inc. Method and system for automatic switching between chat windows
KR102178258B1 (en) 2013-09-27 2020-11-12 삼성전자주식회사 Display apparatus and Method for providing font effect thereof
CN106020784B (en) * 2015-03-18 2020-09-08 小米科技有限责任公司 Application message display method and device and terminal
US9721551B2 (en) 2015-09-29 2017-08-01 Amper Music, Inc. Machines, systems, processes for automated music composition and generation employing linguistic and/or graphical icon based musical experience descriptions
US10854180B2 (en) 2015-09-29 2020-12-01 Amper Music, Inc. Method of and system for controlling the qualities of musical energy embodied in and expressed by digital music to be automatically composed and generated by an automated music composition and generation engine
CN105323152A (en) * 2015-11-17 2016-02-10 小米科技有限责任公司 Message processing method, device and equipment
WO2017136363A1 (en) 2016-02-05 2017-08-10 Howard Fredrick T Time limited image sharing
CN108111387A (en) * 2016-11-25 2018-06-01 深圳联友科技有限公司 A kind of immediate communication platform and its workflow examination and approval method
CN108712321A (en) * 2018-04-24 2018-10-26 维沃移动通信有限公司 A kind of reminding method and mobile terminal of message
US10964299B1 (en) 2019-10-15 2021-03-30 Shutterstock, Inc. Method of and system for automatically generating digital performances of music compositions using notes selected from virtual musical instruments based on the music-theoretic states of the music compositions
US11024275B2 (en) 2019-10-15 2021-06-01 Shutterstock, Inc. Method of digitally performing a music composition using virtual musical instruments having performance logic executing within a virtual musical instrument (VMI) library management system
US11037538B2 (en) 2019-10-15 2021-06-15 Shutterstock, Inc. Method of and system for automated musical arrangement and musical instrument performance style transformation supported within an automated music performance system

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030131064A1 (en) * 2001-12-28 2003-07-10 Bell John Francis Instant messaging system
US20040078448A1 (en) 2002-09-17 2004-04-22 Malik Dale W. Initiating instant messaging (IM) chat sessions from email messages
US6791583B2 (en) * 2000-03-09 2004-09-14 Sun Microsystems, Inc. System and method for providing spatially distributed device interaction
US6832245B1 (en) * 1999-12-01 2004-12-14 At&T Corp. System and method for analyzing communications of user messages to rank users and contacts based on message content
US20050166154A1 (en) * 2004-01-22 2005-07-28 Wilson Richard M. Enhanced instant message status message area containing time/date stamped entries and editable by others
US20050289470A1 (en) * 2004-06-24 2005-12-29 Sun Microsystems, Inc. Identity based user interface
US20060031497A1 (en) 2004-05-21 2006-02-09 Bea Systems, Inc. Systems and methods for collaborative content storage
US20060059237A1 (en) 2004-09-14 2006-03-16 International Business Machines Corporation Dynamic integration of application input and output in an instant messaging/chat session
US20060167991A1 (en) 2004-12-16 2006-07-27 Heikes Brian D Buddy list filtering
US20070022157A1 (en) * 2005-07-21 2007-01-25 International Business Machines Corporation Audio-visual indication of instant message priority
US20070043822A1 (en) 2005-08-18 2007-02-22 Brumfield Sara C Instant messaging prioritization based on group and individual prioritization
US20070174389A1 (en) * 2006-01-10 2007-07-26 Aol Llc Indicating Recent Content Publication Activity By A User
US20070271340A1 (en) 2006-05-16 2007-11-22 Goodman Brian D Context Enhanced Messaging and Collaboration System
US20070293206A1 (en) * 2006-06-20 2007-12-20 Microsoft Corporation Microsoft Patent Group Cell phone communication management
US7454716B2 (en) * 2003-12-22 2008-11-18 Microsoft Corporation Clustering messages

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6801520B2 (en) * 1998-02-17 2004-10-05 Genesys Telecommunications Laboratories, Inc. Queue prioritization based on competitive user input
US6351764B1 (en) * 1998-12-31 2002-02-26 Michael Voticky System and method for prioritizing communications messages
US7961853B2 (en) * 1998-12-31 2011-06-14 S.F. Ip Properties 30 Llc System and method for prioritizing communications messages
US6654791B1 (en) * 2000-03-24 2003-11-25 International Business Machines Corporation Method and apparatus for processing electronic mail using an importance indicator
US7844666B2 (en) * 2000-12-12 2010-11-30 Microsoft Corporation Controls and displays for acquiring preferences, inspecting behavior, and guiding the learning and decision policies of an adaptive communications prioritization and routing system
US20070047726A1 (en) * 2005-08-25 2007-03-01 Cisco Technology, Inc. System and method for providing contextual information to a called party
US8526580B2 (en) * 2006-08-31 2013-09-03 Broadcom Corporation System and method for voicemail organization
US8214746B2 (en) * 2007-03-15 2012-07-03 Accenture Global Services Limited Establishment of message context in a collaboration system
US8375309B2 (en) 2009-01-06 2013-02-12 International Business Machines Corporation Integration of collaboration systems in an instant messaging application

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6832245B1 (en) * 1999-12-01 2004-12-14 At&T Corp. System and method for analyzing communications of user messages to rank users and contacts based on message content
US6791583B2 (en) * 2000-03-09 2004-09-14 Sun Microsystems, Inc. System and method for providing spatially distributed device interaction
US20030131064A1 (en) * 2001-12-28 2003-07-10 Bell John Francis Instant messaging system
US20040078448A1 (en) 2002-09-17 2004-04-22 Malik Dale W. Initiating instant messaging (IM) chat sessions from email messages
US7454716B2 (en) * 2003-12-22 2008-11-18 Microsoft Corporation Clustering messages
US20050166154A1 (en) * 2004-01-22 2005-07-28 Wilson Richard M. Enhanced instant message status message area containing time/date stamped entries and editable by others
US20060031497A1 (en) 2004-05-21 2006-02-09 Bea Systems, Inc. Systems and methods for collaborative content storage
US20050289470A1 (en) * 2004-06-24 2005-12-29 Sun Microsystems, Inc. Identity based user interface
US20060059237A1 (en) 2004-09-14 2006-03-16 International Business Machines Corporation Dynamic integration of application input and output in an instant messaging/chat session
US20060167991A1 (en) 2004-12-16 2006-07-27 Heikes Brian D Buddy list filtering
US20070022157A1 (en) * 2005-07-21 2007-01-25 International Business Machines Corporation Audio-visual indication of instant message priority
US20070043822A1 (en) 2005-08-18 2007-02-22 Brumfield Sara C Instant messaging prioritization based on group and individual prioritization
US20070174389A1 (en) * 2006-01-10 2007-07-26 Aol Llc Indicating Recent Content Publication Activity By A User
US20070271340A1 (en) 2006-05-16 2007-11-22 Goodman Brian D Context Enhanced Messaging and Collaboration System
US20070293206A1 (en) * 2006-06-20 2007-12-20 Microsoft Corporation Microsoft Patent Group Cell phone communication management

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9948592B1 (en) 2012-04-02 2018-04-17 Google Llc Managing notifications across services
US10659418B1 (en) * 2012-04-02 2020-05-19 Google Llc Managing notifications across services
US9560001B1 (en) * 2012-04-02 2017-01-31 Google Inc. Managing notifications across services
US10270728B1 (en) * 2012-04-02 2019-04-23 Google Llc Managing notifications across services
US9685160B2 (en) * 2012-04-16 2017-06-20 Htc Corporation Method for offering suggestion during conversation, electronic device using the same, and non-transitory storage medium
US20130297317A1 (en) * 2012-04-16 2013-11-07 Htc Corporation Method for offering suggestion during conversation, electronic device using the same, and non-transitory storage medium
US20160188127A1 (en) * 2014-12-30 2016-06-30 Fih (Hong Kong) Limited Communication device and method for processing message of the communication device
US20180212920A1 (en) * 2017-01-20 2018-07-26 Salesforce.Com, Inc. User Availability Aware Communication System
US10511564B2 (en) * 2017-01-20 2019-12-17 Salesforce.Com, Inc. User availability aware communication system
US20220377030A1 (en) * 2020-04-30 2022-11-24 Beijing Bytedance Network Technology Co., Ltd. Information presentation method, apparatus, electronic device, and storage medium
US20220385618A1 (en) * 2020-04-30 2022-12-01 Beijing Bytedance Network Technology Co., Ltd. Information display method and apparatus, electronic device, and storage medium
US11929965B2 (en) * 2020-04-30 2024-03-12 Beijing Bytedance Network Technology Co., Ltd. Information presentation method, apparatus, electronic device, and storage medium
US20220210107A1 (en) * 2020-12-31 2022-06-30 Snap Inc. Messaging user interface element with reminders
US11924153B2 (en) * 2020-12-31 2024-03-05 Snap Inc. Messaging user interface element with reminders

Also Published As

Publication number Publication date
US20130124658A1 (en) 2013-05-16
US20100174999A1 (en) 2010-07-08
US9225674B2 (en) 2015-12-29

Similar Documents

Publication Publication Date Title
US9225674B2 (en) Integration of collaboration systems in an instant messaging application
US9071560B2 (en) Tagging email and providing tag clouds
US9203796B2 (en) Messaging system with multiple messaging channels
US8706824B2 (en) Rescinding messages in a messaging system with multiple messaging channels
CN102567299B (en) Interacted with electrical form using text message
US8788602B1 (en) Method and system for providing notifications for specific messages
JP5674665B2 (en) System and method for collaborative short message and discussion
US20110047222A1 (en) Retrospective changing of previously sent messages
US20130041957A1 (en) Providing Transparency in a Messaging System With Multiple Messaging Channels
US9652531B2 (en) Prioritizing work and personal items from various data sources using a user profile
AU2011213254A1 (en) Active e-mails
US11943310B2 (en) Performing operations based upon activity patterns
US11714522B2 (en) Controlling a graphical user interface using a presentation of messages based upon predicted interactions with the messages
US20160269337A1 (en) Extended email functionality
US11474838B2 (en) Modifying content interface based upon level of activity
US20230259890A1 (en) Systems and methods for future event recommendation
AU2011326513A1 (en) Messaging system with multiple messaging channels
US10069780B2 (en) Methods and systems for structuring information of email messages
US9036648B2 (en) Message attachment tracking
US20110161437A1 (en) Action-based e-mail message quota monitoring
US10432776B1 (en) Managing unanswered digital communications
US20110055175A1 (en) System, method, and apparatus for management of media objects
US20180255065A1 (en) Technology for generating a multi-user response in a network
US20120143962A1 (en) Intelligent Email Management System
US10958609B2 (en) Controlling a graphical user interface based upon a prediction of a messaging action of a messaging account

Legal Events

Date Code Title Description
AS Assignment

Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:FIORETTI, GIUSEPPE;PICCININI, SANDRO;PICHETTI, LUIGI;AND OTHERS;REEL/FRAME:022074/0789

Effective date: 20081204

STCF Information on status: patent grant

Free format text: PATENTED CASE

AS Assignment

Owner name: SNAPCHAT, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INTERNATIONAL BUSINESS MACHINES CORPORATION;REEL/FRAME:037573/0170

Effective date: 20151216

FPAY Fee payment

Year of fee payment: 4

AS Assignment

Owner name: SNAP INC., CALIFORNIA

Free format text: CHANGE OF NAME;ASSIGNOR:SNAPCHAT, INC.;REEL/FRAME:047690/0016

Effective date: 20160923

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 8