Method, system, and program product for differentially displaying an instant messaging (IM) availability

The invention provides a method, system, and program product for differentially displaying an instant messaging (IM) availability to a plurality of potential interlocutors. In one embodiment, the invention includes creating a relationship chart of potential interlocutors based on an organizational chart; defining a willingness to communicate, including a temporal component; establishing an IM availability for each potential interlocutor using the relationship chart and the willingness to communicate; sending the IM availability to a server; transmitting the IM availability from the server to a potential interlocutor's computing device capable of displaying the IM availability; receiving an IM invitation from an interlocutor; and generating an alert based on the IM availability for the interlocutor.

BACKGROUND OF THE INVENTION

1. Technical Field

The invention relates generally to messaging systems, and more particularly, to a method, system, and program product for differentially displaying an instant messaging (IM) availability to a plurality of potential interlocutors.

2. Background Art

Instant messaging (IM) is often used for both personal and business-related communications. In a work environment, IM can greatly enhance work performance by instantly connecting two or more employees, who can then collaborate to solve a particular problem or execute a task.

Receiving too many IM invitations or receiving IM invitations at inconvenient times can, however, decrease an employee's performance by distracting him/her from other duties. Most IM systems permit a user to establish his/her online status or availability, which is then displayed to potential interlocutors. For example, a user may set his/her status to “do not disturb,” in which case potential interlocutors known not to send the user an IM invitation. Optionally, some systems automatically block IM invitations from potential interlocutors when a user's status indicates unavailability (e.g. “do not disturb”).

Such solutions are often overly restrictive, however, in that all potential interlocutors are treated in the same manner. It may be desirable, for example, for a user's supervisor to be able to send the user an IM invitation even though his/her status is “do not disturb.”

To this extent, a need exists for an IM method and system that does not suffer from defects known in the art.

SUMMARY OF THE INVENTION

The invention provides a method, system, and program product for differentially displaying an instant messaging (IM) availability to a plurality of potential interlocutors. In one embodiment, the invention includes creating a relationship chart of potential interlocutors based on an organizational chart; defining a willingness to communicate, including a temporal component; establishing an IM availability for each potential interlocutor using the relationship chart and the willingness to communicate; sending the IM availability to a server; transmitting the IM availability from the server to a potential interlocutor's computing device capable of displaying the IM availability; receiving an IM invitation from an interlocutor; and generating an alert based on the IM availability for the interlocutor.

A first aspect of the invention provides a method for differentially displaying an instant messaging (IM) availability to a plurality of potential interlocutors, the method comprising: creating a relationship chart of potential interlocutors; defining a willingness to communicate; establishing an IM availability for each potential interlocutor using the relationship chart and the willingness to communicate; sending the IM availability to a server; and transmitting the IM availability from the server to a potential interlocutor's computing device capable of displaying the IM availability.

A second aspect of the invention provides a system for differentially displaying an instant messaging (IM) availability to a plurality of potential interlocutors, the system comprising: a system for creating a relationship chart of potential interlocutors; a system for defining a willingness to communicate; a system for establishing an IM availability for each potential interlocutor using the relationship chart and the willingness to communicate; a system for sending the IM availability to a server; and a system for transmitting the IM availability from the server to a potential interlocutor's computing device capable of displaying the IM availability.

A third aspect of the invention provides a program product stored on a computer-readable medium, which when executed, differentially displays an instant messaging (IM) availability to a plurality of potential interlocutors, the program product comprising: program code for creating a relationship chart of potential interlocutors; program code for defining a willingness to communicate; program code for establishing an IM availability for each potential interlocutor using the relationship chart and the willingness to communicate; program code for sending the IM availability to a server; and program code for transmitting the IM availability from the server to a potential interlocutor's computing device capable of displaying the IM availability.

A fourth aspect of the invention provides a method for deploying an application for differentially displaying an instant messaging (IM) availability to a plurality of potential interlocutors, comprising: providing a computer infrastructure being operable to: create a relationship chart of potential interlocutors; define a willingness to communicate; establish an IM availability for each potential interlocutor using the relationship chart and the willingness to communicate; send the IM availability to a server; and transmit the IM availability from the server to a potential interlocutor's computing device capable of displaying the IM availability.

The illustrative aspects of the present invention are designed to solve the problems herein described and other problems not discussed, which are discoverable by a skilled artisan.

DETAILED DESCRIPTION

As indicated above, the invention provides a method, system, and program product for differentially displaying an instant messaging (IM) availability to a plurality of potential interlocutors.

Referring now to the drawings,FIG. 1shows a flow diagram of an illustrative method according to the invention. At S1, a relationship chart is created including data related to the relationships between a user and his/her potential interlocutors. In some embodiments, the relationship chart may include or utilize an organizational chart110of the user's business or another group to which the user belongs. In other embodiments, the relationship chart may include or utilize IM data120related to past IM activity of the user (e.g., with whom the user has corresponded using IM).

At S2, the user defines a willingness to communicate. The willingness to communicate may take any number of forms. For example, a user may select a willingness from a group of text-based descriptions of willingness (e.g., “available,” “busy,” “very busy,” “do not disturb,” “offline,” etc.). Alternatively, the willingness to communicate may utilize a scale (e.g., from “1” to “10” with “1” indicating availability and “10” indicating unavailability). Other methods and techniques for indicating a user's willingness to communicate are possible, of course, and within the scope of the invention.

As shown inFIG. 1, the willingness to communicate defined at S2may include a temporal component210. For example, a user may indicate that he/she is unavailable for a particular period of time (e.g., “do not disturb until 3 PM,” “available between 9 AM and 12 PM,” etc.).

At S3, an IM availability is established for each potential interlocutor using the relationship chart created at S1and the willingness to communicate defined at S2. For example, a user may define his/her willingness to communicate as “very busy” at S2. Based on this, the IM availability of the user to one subset of potential interlocutors (e.g., those lower in the organizational chart110used to create the relationship chart) will be established as “unavailable” or some equivalent, while the IM availability of the user to another subset of potential interlocutors (e.g., those higher in the organizational chart110) will be established as “available,” “very busy,” or some availability other than “unavailable.” Thus, a user need only define a single willingness to communicate in order to differentially display his/her IM availability to a plurality of potential interlocutors.

Alternatively, as will be described in greater detail below, the same IM availability may be established for all potential interlocutors using the willingness to communicate defined at S2, with IM invitations from one subset of potential interlocutors being blocked and IM invitations from another subset of potential interlocutors being displayed to the user.

At S4, the IM availability (or IM availabilities) established at S3is sent to an IM server or other storage device for storing, accessing, and/or routing IM data between individuals. At S5, the IM availability (or IM availabilities) sent to the server at S4is transmitted to potential interlocutor(s).

At (optional) S6, a user's IM application receives an IM invitation from a potential interlocutor. At S7, it is determined whether the user is available to the potential interlocutor, based on the IM availability established for the potential interlocutor at S3. If so (i.e., “Yes” at S7), an alert message is generated at S8to alert the user to the IM invitation. If not (i.e., “No” at S7), the IM invitation is blocked at S9.

FIG. 2shows a more detailed view of S1through S3ofFIG. 1. Organizational chart110shows the relative position of an employee144using an IM program according to the invention relative to the positions of other members of the organization. As inFIG. 1, above, the employee144has defined his willingness to communicate at S2as “very busy.”

Table200shows the IM availabilities established at S3based on organizational chart110and the willingness to communicate defined at S2. Table200includes an interlocutor column250containing the name and/or position of each member of the organization other than the employee144, an availability column260containing the IM availability of the employee144established for each member of the organization (e.g., the IM availabilities sent to the server at S4ofFIG. 1), and a displayed availability column270containing the IM availability of the employee that will be transmitted to each member of the organization (e.g., the IM availabilities transmitted at S5ofFIG. 1).

As can be seen inFIG. 2, based on organizational chart110and a single willingness to communicate defined at S2, the employee's IM availability is both differentially established for and displayed to each member of the organization. For example, the employee's IM availability and displayed availability is “available” for both the President and Workgroup Supervisor, since both are located higher than the employee in the organizational chart110. The IM availability and displayed availability is “very busy” for the employee's coworker, since the coworker may need to communicate important information to the employee, but should know that the employee should not be disturbed unless absolutely necessary. The IM availability for the Personnel Manager is “very busy,” since the Personnel Manager is located higher than the employee in the organizational chart110, but does not directly supervise the employee. The IM availability displayed to the Personnel Manager (“do not disturb”) is different than the established IM availability, however, since messages from the Personnel Manager are less likely to be of immediate importance to the employee. Finally, the IM availability for the Payroll Clerk is “unavailable” and the displayed availability is “offline,” since the Payroll Clerk is not higher than the employee in the organizational chart110and messages from the Payroll Clerk are unlikely to be of immediate importance to the employee.

FIG. 3shows an illustrative system10for differentially displaying an IM availability. To this extent, system10includes a computer infrastructure12that can perform the various process steps described herein for differentially displaying an IM availability. In particular, computer infrastructure12is shown including a computer system14that comprises an IM availability system40, which enables computer system14to differentially display a user's IM availability by performing the process steps of the invention.

Computer system14is shown including a processing unit20, a memory22, an input/output (I/O) interface26, and a bus24. Further, computer system14is shown in communication with external devices28and a storage system30. In general, processing unit20executes computer program code, such as IM availability system40, that is stored in memory22and/or storage system30. While executing computer program code, processing unit20can read and/or write data from/to memory22, storage system30, and/or I/O interface26. Bus24provides a communication link between each of the components in computer system14. External devices28can comprise any device that enables a user (not shown) to interact with computer system14or any device that enables computer system14to communicate with one or more other computer systems.

In any event, computer system14can comprise any general purpose computing article of manufacture capable of executing computer program code installed by a user (e.g., a personal computer, server, handheld device, etc.). However, it is understood that computer system14and IM availability system40are only representative of various possible computer systems that may perform the various process steps of the invention. To this extent, in other embodiments, computer system14can comprise any specific purpose computing article of manufacture comprising hardware and/or computer program code for performing specific functions, any computing article of manufacture that comprises a combination of specific purpose and general purpose hardware/software, or the like. In each case, the program code and hardware can be created using standard programming and engineering techniques, respectively.

Similarly, computer infrastructure12is only illustrative of various types of computer infrastructures for implementing the invention. For example, in one embodiment, computer infrastructure12comprises two or more computer systems (e.g., a server cluster) that communicate over any type of wired and/or wireless communications link, such as a network, a shared memory, or the like, to perform the various process steps of the invention. When the communications link comprises a network, the network can comprise any combination of one or more types of networks (e.g., the Internet, a wide area network, a local area network, a virtual private network, etc.). Regardless, communications between the computer systems may utilize any combination of various types of transmission techniques.

As previously mentioned, IM availability system40enables computer system14to differentially display a user's IM availability. To this extent, IM availability system40is shown including a chart creating system42, a willingness defining system44, an availability establishing system46, a sending/transmitting system48, an invitation receiving/blocking system50, and an alert generating system52. Operation of each of these systems is discussed above. IM availability system40may further include other system components54to provide additional or improved functionality to IM availability system40. It is understood that some of the various systems shown inFIG. 3can be implemented independently, combined, and/or stored in memory for one or more separate computer systems14that communicate over a network. Further, it is understood that some of the systems and/or functionality may not be implemented, or additional systems and/or functionality may be included as part of system10.

While shown and described herein as a method and system for differentially displaying an IM availability, it is understood that the invention further provides various alternative embodiments. For example, in one embodiment, the invention provides a computer-readable medium that includes computer program code to enable a computer infrastructure to differentially display an IM availability. To this extent, the computer-readable medium includes program code, such as IM availability system40, that implements each of the various process steps of the invention. It is understood that the term “computer-readable medium” comprises one or more of any type of physical embodiment of the program code. In particular, the computer-readable medium can comprise program code embodied on one or more portable storage articles of manufacture (e.g., a compact disc, a magnetic disk, a tape, etc.), and/or on one or more data storage portions of a computer system, such as memory22and/or storage system30(e.g., a fixed disk, a read-only memory, a random access memory, a cache memory, etc.).

In another embodiment, the invention provides a business method that performs the process steps of the invention on a subscription, advertising, and/or fee basis. That is, a service provider could offer to differentially display an IM availability as described above. In this case, the service provider can create, maintain, support, etc., a computer infrastructure, such as computer infrastructure12, that performs the process steps of the invention for one or more customers. In return, the service provider can receive payment from the customer(s) under a subscription and/or fee agreement and/or the service provider can receive payment from the sale of advertising space to one or more third parties.

In still another embodiment, the invention provides a method of generating a system for differentially displaying an IM availability. In this case, a computer infrastructure, such as computer infrastructure12, can be obtained (e.g., created, maintained, having made available to, etc.) and one or more systems for performing the process steps of the invention can be obtained (e.g., created, purchased, used, modified, etc.) and deployed to the computer infrastructure. To this extent, the deployment of each system can comprise one or more of (1) installing program code on a computer system, such as computer system14, from a computer-readable medium; (2) adding one or more computer systems to the computer infrastructure; and (3) incorporating and/or modifying one or more existing systems of the computer infrastructure, to enable the computer infrastructure to perform the process steps of the invention.