The present invention relates to a system and method for using business rules to control invitations to join instant message collaborations.
If primary invitees who are invited to join an instant message collaboration are unavailable, it is desirable to invite backup invitees. In conventional instant messaging systems, such as the system disclosed in U.S. Patent Application Pub. No. US 2004/0205134, determining the unavailability of a primary invitee and then inviting a backup invitee are based on limited, inflexible and incomplete conditions and attributes of the invitees and of the collaboration. The known instant messaging systems make invitee unavailability and backup invitee decisions based on information such as the invitee's online presence, availability filtering, who initiated the collaboration, the collaboration's topic, and whether an invitee is defined as a necessary attendee. Reliance on such limited information fails to detect other indications of an invitee's unavailability to participate in the collaboration and the related need to invite a backup invitee. Thus, there exists a need to overcome at least one of the preceding deficiencies and limitations of the related art.
In first embodiments, the present invention provides a computer-implemented method of using business rules to control invitations to participate in instant message collaborations, the method comprising:
inviting, via a first instant message sent by a computing system, a primary invitee to participate in an instant message (IM) collaboration;
applying, by the computing system, a business rule associated with the primary invitee;
determining, by the computing system and in response to the applying, that the primary invitee is unavailable to participate in the IM collaboration; and
automatically inviting, via a second instant message sent by the computing system and consequent to the determining that the primary invitee is unavailable to participate in the IM collaboration, a backup invitee to participate in the IM collaboration.
A computing system, computer program product, and process for supporting computing infrastructure corresponding to the above-summarized method are also described and claimed herein.
In second embodiments, the present invention provides a computer-implemented method for using business rules to control invitations to participate in instant message collaborations, comprising:
identifying, by a computing system, a primary invitee to be invited to participate in an instant message (IM) collaboration via a first instant message to be sent at a specified time;
applying, by the computing system, a business rule associated with the primary invitee, the business rule associating the primary invitee with one or more credentials;
determining, by the computing system and in response to the applying, that a condition for inviting a backup invitee is satisfied, wherein the condition is selected from the group consisting of the specified time being outside a valid invitation time period and none of the one or more credentials being included in a set of one or more predefined credentials; and
automatically inviting, via a second instant message sent by the computing system and consequent to the determining that the condition is satisfied, a backup invitee to participate in the IM collaboration.
Advantageously, the present invention provides a technique for using business rules to control invitations to join instant message collaborations. Further, the present invention provides an iterative process of applying business rules to primary invitees and a series of backup invitees that facilitates the resolution of crisis situations by, for example, alerting a person who is available to respond and restore a vital computer-based service that is inoperative. Still further, the iterative process can incorporate an escalation process in which business rules direct requests to a hierarchy of escalation persons (e.g., manager, regional manager, etc.) if the person who is initially designated to receive the request is unavailable. Additional advantages provided by the present invention include: (1) eliminating the need to publish backup schedules for people who are on rotational coverage because the backup coverage information is included within the business rules; (2) for call centers that allow users to initiate a chat message collaboration, enabling agents for the call center to work from a single public IM ID; and (3) using the business rules to allow a pool of resources (e.g., administrative assistants) to be grouped together.
The present invention imposes business rules onto an instant message (IM) collaboration to control invitations to join the collaboration. The invitees to the IM collaboration may be dynamically altered in accordance with business objectives (i.e., a business policy) predefined by one or more business rules. Examples of such dynamic alteration of collaboration invitees include inviting a backup to a primary invitee (1) if the primary invitee does not join the IM collaboration in a predefined amount of time following an invitation, (2) if the timing of the invitation is not within the primary invitee's predefined working period, or (3) if the credentials of the primary invitee are not included in a set of predefined credentials required for participation in the collaboration.
As used herein, a business rule is defined as an expression of desired operational attributes of a system for controlling invitations to join an IM collaboration. Examples of such desired operational attributes include (1) a valid invitation time period for an invitee, (2) a set of credentials required for participation in the IM collaboration, (3) a maximum amount of time the system waits for an invitee to respond to an invitation before inviting the invitee's backup, (4) an identification of a backup invitee to a primary invitee, and (5) conditions under which an entity is notified of the invocation of a business rule.
System Overview
IM application server 104 includes an IM participant session establishment and control engine 116 that establishes and controls an IM collaboration session that includes the aforementioned current participants and is capable of including the invited participant or the backup of the invited participant. Engine 116 communicates with IM participant clients 109-111, 113 and 115 via a network (e.g., Internet or intranet).
A business rule administrator 118 provides business rules or updated business rules via a business rule administrative interface 120 to a business rule establishment and alteration engine 122 included in IM application server 124. The business rules provided by business rule administrator 118 are stored in data store 124 by business rule establishment and alteration engine 122. The business rules stored in data store 124 are accessible by IM participant session establishment and control engine 116 for controlling the IM collaboration session.
The present invention's application of business rules within a real-time collaboration system supports a business quality collaboration service that is provided by an internet service provider such as AOL® or provided as a business service from a service provider such as International Business Machines Corporation of Armonk, N.Y. In one embodiment, system 100 is incorporated into instant message environments such as Lotus® Sarnetime® offered by International Business Machines Corporation or AOL Instant Messenger® offered by AOL® LLC of Dulles, Va.
In one embodiment, system 100 is modified to accommodate the initiation of an IM collaboration session. In other words, the present invention also contemplates a system that includes a plurality of computing units of invited participants and backups to the invited participants at a time when the IM collaboration is in its initial stages and there are no current participants yet.
Preparation Phase
In another embodiment, instead of business rule administrator 118 (see
Operational Phase
If IM participant session establishment and control engine 116 (see
If IM participant session establishment and control engine 116 (see
Altering Business Rules
Inviting Collaboration Participants
If inquiry step 502 determines that a time of an IM collaboration invitation to a primary invitee is not valid, then a backup invitee is identified and the participant invitation process continues with inquiry step 504. A primary invitee is the entity The invitation time in step 502 is validated by comparing the current time, day, date, etc. with a valid invitation time period specified in a business rule associated with the primary invitee. The valid invitation time period in the business rule specifies, for example, the times of the day (e.g., regular working hours of the primary invitee), days of the week, and/or days of the year during which the primary invitee is allowed to receive an invitation to an IM collaboration. If the current time, day, date, etc. is included in or specified by the business rule's valid invitation time period, then the Yes branch of step 502 is followed by the participant invitation process.
As one example, if the current time is 09:00 U.S. Eastern Time and a business rule associated with a primary invitee includes a valid invitation time that specifies that the primary invitee is allowed to receive invitations to join IM collaborations between 08:00 and 16:00 U.S. Eastern Time, then the current time is allowable for an IM collaboration invitation to the primary invitee (i.e., 09:00 is within the valid invitation time period of 08:00 to 16:00) and the participant invitation process of
As another example, if the current time is 07:00 U.S. Eastern Time and a business rule associated with a primary invitee specifies that the primary invitee is allowed to receive invitations to join IM collaborations between 08:00 and 16:00 U.S. Eastern Time, then the current time is not allowable for an IM collaboration invitation to the primary invitee (i.e., 07:00 is not within the valid invitation time period of 08:00 to 16:00) and the participant invitation process of
Inquiry step 504 follows a finding in step 502 that the timing of the collaboration invitation does not satisfy the valid invitation time of the business rule associated with the primary invitee. If inquiry step 504 determines that the backup invitee is listed as a primary invitee in another business rule stored in data store 124 (see
Following step 510 or if inquiry step 508 determines that no alert is required, the process loops back to inquiry step 502, which determines the validity of the invitation time for the new primary invitee set in step 506.
Returning to step 502, if the IM collaboration invitation time is valid according to the business rule associated with the primary invitee, the process continues with inquiry step 512. If inquiry step 512 determines that one or more credentials of the primary invitee are not acceptable according to a set of predetermined credentials associated with the invitation and which are required for allowing the primary invitee to participate in the collaboration, then the process continues with inquiry step 504; otherwise the invitation process of
In step 514 of
The aforementioned loop back to step 502 after step 510 or via the No branch of step 508 provides for an iterative application of business rules described above in steps 502, 504, 508 and/or 512. For instance, the invitation process of
Verifying Responses
If inquiry step 602 determines that the invitee that was sent an invitation to an IM collaboration has responded to the invitation, then the process continues with step 604. If inquiry step 604 determines that all pending invitees have been checked for their responses to their respective invitations, then the process continues with step 302 of
If inquiry step 602 determines that the invitee has not responded to the invitation to the IM collaboration, then step 608 determines if a predetermined maximum time to wait for the invitee's response to the invitation has been exceeded. That is, step 608 checks whether a predefined maximum wait time specified by the business rule associated with the invitee has been exceeded. The predefined maximum wait time is a predefined duration during which the IM collaboration invitation is allowed to be active but not responded to by the invitee. In one embodiment, the business rule applied in step 608 is the same business rule applied in steps 502, 504, 508 and 512 of
In step 612 of
Database for Storing Business Rules
Primary Invitee: Identity of the person or group desired to be invited to an IM collaboration.
Valid Invite Time: Time of day, month, year, day of week, etc. that an invitee is allowed to be invited to an IM collaboration.
Invitee Credentials: Identifies one or more attributes (e.g., citizenship or skills) that are exhibited by the primary invitee and that are compared to a predefined set of one or more credentials. The one or more credentials in the predefined set are the credentials an invitee is required to have before an invitation to join an IM collaboration is allowed to be sent to the invitee. If the aforementioned comparison determines that the predefined set of one or more credentials are included in the one or more attributes in the Invitee Credentials field, then the IM participant session establishment and control engine 116 (see
Credential Authority: Identifies the authoritative source for verification of the corresponding credential listed in the Invitee Credentials field.
Wait Time: Duration that the invitation to the invitee is allowed to remain active without being responded to by the invitee, after which the invitation is revoked and the invitee's backup invitee is invited to join the IM collaboration.
Backup Invitee: Identity of the person or group designated to be invited if the primary invitee cannot join the IM collaboration according to a business rule or does not join the IM collaboration within the corresponding time in the Wait Time field. In an alternate embodiment, a business rule does not include a backup invitee field, but includes an alert receiver that receives an alert message that indicates that a primary invitee is unavailable to participate in an IM collaboration or unable to participate in the IM collaboration due to the timing of the invitation or the primary invitee'lack of required credentials.
Alert Conditional: One or more conditions that cause an alert to be sent. For example, a “no response” alert conditional specifies that an alert is to be sent if the primary invitee does not respond to the invitation within the wait time. Further, a “revocation” alert conditional specifies that an alert is to be sent if the IM collaboration invitation is revoked. Still further, a “substitution” alert conditional indicates that an alert is to be sent if the backup invitee has been set as the primary invitee.
Alert Receiver: Identity of the entity that receives an alert sent as a result of the corresponding condition in the Alert Conditional field. As used herein, an alert is defined as an informational message which describes one or more actions of an IM collaboration system (e.g., system 100 of
In a first example that applies a business rule specified by the first data row of table 700 (i.e., the John Doe business rule), an invitation to join an IM collaboration is to be sent to John Doe at 17:00 Eastern Time (et). Since the time of 17:00et is outside John Doe's valid invitation time period of 8:00-16:00et, weekdays, except holidays (see the Valid Invite Time column in the John Doe business rule), the application of the business rule causes the process of
In a second example that applies a business rule specified by the second data row of table 700 (i.e., the 1st Shift Help Desk business rule), an invitation to join an IM collaboration is to be sent to the 1st Shift Help Desk at 17:00et. Since 17:00et is not within the Valid Invite Time of the 1st Shift Help Desk business rule (i.e., between 8:00-16:00et weekdays, except holidays), the invitation process proceeds over the No branch of step 502 (see
In a third example that applies a business rule specified by the second data row of table 700 (i.e., the 1st Shift Help Desk business rule), an invitation to join an IM collaboration is to be sent to the 1st Shift Help Desk at 9:00et and the invitation does not specify any required credentials. Therefore, step 502 (see
In a fourth example that applies a business rule specified by the second data row of table 700 (i.e., the 1st Shift Help Desk business rule), an invitation to join an IM collaboration is to be sent to the 1st Shift Help Desk at 9:00et. The invitation is associated with a set of required credentials that allow only participants that possess Certificate-123445 or Certificate-123446. Again, 9:00et is allowable according to the Valid Invite Time for the 1st Shift Help Desk business rule, and therefore the Yes branch of step 502 (see
It should be understood that table 700 is only an example of the database structure used in data store 124 (see
Context-Sensitive Text Examples
Computing System
Memory 1004 may comprise any known type of data storage and/or transmission media, including bulk storage, magnetic media, optical media, random access memory (RAM), read-only memory (ROM), a data cache, a data object, etc. Cache memory elements of memory 1004 provide temporary storage of at least some program code (e.g., system for IM collaboration establishment and control using business rules 1014) in order to reduce the number of times code must be retrieved from bulk storage during execution. Moreover, similar to CPU 1002, memory 1004 may reside at a single physical location, comprising one or more types of data storage, or be distributed across a plurality of physical systems in various forms. Further, memory 1004 can include data distributed across, for example, a LAN, WAN or storage area network (SAN) (not shown).
I/O interface 1006 comprises any system for exchanging information to or from an external source. I/O devices 1010 comprise any known type of external device, including a display monitor, keyboard, mouse, printer, speakers, handheld device, printer, facsimile, etc. Bus 1008 provides a communication link between each of the components in computing system 1000, and may comprise any type of transmission link, including electrical, optical, wireless, etc.
I/O interface 1006 also allows computing system 1000 to store and retrieve information (e.g., program instructions or data) from an auxiliary storage device 1012. The auxiliary storage device may be a non-volatile storage device such as a magnetic disk drive or an optical disk drive (e.g., a CD-ROM drive which receives a CD-ROM disk). Computing system 1000 can store and retrieve information from other auxiliary storage devices (not shown), which can include a direct access storage device (DASD) (e.g., hard disk or floppy diskette), a magneto-optical disk drive, a tape drive, or a wireless communication device.
Memory 1004 includes a system 1014 for IM collaboration establishment and control using business rules, which implements the processes of
The invention can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment containing both hardware and software elements. In a preferred embodiment, the invention is implemented in software, which includes but is not limited to firmware, resident software, microcode, etc.
Furthermore, the invention can take the form of a computer program product accessible from a computer-usable or computer-readable medium providing program code of a system 1014 for using business rules to control instant message collaborations for use by or in connection with a computing system 1000 or any instruction execution system to provide and facilitate the capabilities of the present invention. For the purposes of this description, a computer-usable or computer-readable medium can be any apparatus that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
The medium can be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system (or apparatus or device) or a propagation medium. Examples of a computer-readable medium include a semiconductor or solid state memory, magnetic tape, a removable computer diskette, RAM 1004, ROM, a rigid magnetic disk and an optical disk. Current examples of optical disks include compact disk-read-only memory (CD-ROM), compact disk-read/write (CD-R/W) and DVD.
Any of the components of the present invention can be deployed, managed, serviced, etc. by a service provider that offers to deploy or integrate computing infrastructure with respect to the process for using business rules to control instant message collaborations of the present invention. Thus, the present invention discloses a process for supporting computer infrastructure, comprising integrating, hosting, maintaining and deploying computer-readable code into a computing system (e.g., computing unit 1000), wherein the code in combination with the computing system is capable of performing a method of using business rules to control instant message collaborations.
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, such as a Solution Integrator, can offer to create, maintain, support, etc. a process of using business rules to control instant message collaborations of the present invention. In this case, the service provider can create, maintain, support, etc. a computer infrastructure 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 content to one or more third parties.
The flow diagrams depicted herein are provided by way of example. There may be variations to these diagrams or the steps (or operations) described herein without departing from the spirit of the invention. For instance, in certain cases, the steps may be performed in differing order, or steps may be added, deleted or modified. All of these variations are considered a part of the present invention as recited in the appended claims.
While embodiments of the present invention have been described herein for purposes of illustration, many modifications and changes will become apparent to those skilled in the art. For example, the business rules used in the present invention can be modified to control invitations to join real-time collaborations (e.g., web conferencing) other than IM collaborations. Accordingly, the appended claims are intended to encompass all such modifications and changes as fall within the true spirit and scope of this invention.
Number | Name | Date | Kind |
---|---|---|---|
7679518 | Pabla et al. | Mar 2010 | B1 |
20020029160 | Thompson et al. | Mar 2002 | A1 |
20040161090 | Digate et al. | Aug 2004 | A1 |
20040205134 | Digate et al. | Oct 2004 | A1 |
20050273382 | Beartusk et al. | Dec 2005 | A1 |
20060123082 | Digate et al. | Jun 2006 | A1 |
Number | Date | Country | |
---|---|---|---|
20090063639 A1 | Mar 2009 | US |