1. Technical Field
The invention relates to the field of information technology, and more particularly, to providing information to multiple recipients in a targeted manner.
2. Description of the Related Art
Many different types of applications generate information that can be shared among multiple participants. For example, the output of presentation software such as Lotus Freelance® available from Lotus Development Corporation of Cambridge, Mass., can be viewed not only on the presenter's computer, but also on a display that can be viewed by a larger audience, such as a large projection display of the sort typically used with portable computers. Other applications including electronic meeting software such as Lotus Sametime®, also available from Lotus Development Corporation, can present data that can be simultaneously viewed by the owner of the meeting as well as the meeting participants in a distributed computing environment.
Although conventional applications can be configured to present data to multiple participants, such applications provide the same data to each participant. That is, such applications provide the same data to each participant without regard for the type of data being provided or the class of user to whom the data is being provided. Thus, if a need arises to select only a subset of the total data output based on who is to receive the data, conventional applications cannot perform such actions. For example, during a business presentation, a presenter may rely upon “speaker notes” when presenting audio and/or visual material to an audience. With conventional presentation software, the audience sees the same screen content as the presenter. Thus, the presenter must prepare hard copy notes to prevent the audience from viewing the speaker notes. Similarly, in the case of conventional meeting software, although the owner or initiator of a meeting can choose who may and may not participate in a given meeting, each user can view everything that the meeting owner elects to share.
The problem further can be exacerbated when the information to be presented is not generated until after multiple participants have already begun participating in a session. Conventional applications not only rely on the meeting owner to determine which items may or may not be shared with other participants, but typically require such determinations be made prior to a meeting or other presentation session, or prior to generating the data to be shared. In situations where data is generated and shared dynamically during an online meeting, however, one may not be able to determine whether the resulting data is public or private until the data is generated and the results can be evaluated. This can be especially true in cases where the actual content of the data determines whether the information is of a public or private nature. Presently, conventional applications do not allow for dynamic determinations of whether data is public or private, nor do conventional applications evaluate data based upon the content of the data.
The invention disclosed herein provides a solution for delivering targeted information to multiple users based upon a category of the information, the designated class of user, as well as the actual content of the data being presented. The data can be dynamically targeted to one or more users according to the aforementioned factors. Accordingly, one aspect of the present invention can include a method of targeted information delivery. The method can include generating data items to be output to classes of at least one user.
The data items can be associated with data categories. The data categories can be associated with at least one of the classes of users. For example, the category associations and the user class associations with the data items can be determined by applying distribution rules to the data items. The distribution rules also can include content rules. Accordingly, the data item content can be compared with the content rules. For instance, the content of the data items can be determined. From comparing the content rules with the data item content, one of the user classes can be disassociated from the data category of the data items. Alternatively, a different one of the user classes can be associated with the data category of the data items according to the data item content and the content rules. Notably, as the content rules can specify associations between the data item content and the user classes, the associating step can take place dynamically during a session wherein the data items are generated for presentation to one or more classes of user.
The data items can be distributed to classes of users that are associated with the data categories of the data items. Thus, the classes of users receive only data items which the classes of users are authorized to receive. In providing the data to the classes of users, a preferred media format can be determined for distributing the data items to the various classes of users. The media format of the data items to be provided to the classes of users can be converted to the determined preferred media format.
There are shown in the drawings embodiments which are presently preferred, it being understood, however, that the invention is not limited to the precise arrangements and instrumentalities shown.
The invention disclosed herein provides a solution for delivering targeted information to multiple users. In particular, the present invention provides for the distribution of information to one or more users or classes of users according to the type of information to be delivered. Thus, the present invention not only can deliver selected items of information, but also can deliver those selected items of information to particular users or classes of users. Notably, determinations as to which data items are to be provided as well as to whom those data items are to be provided can be made before, during, and after the information is generated in an application. For example, such determinations can be made dynamically as the information is generated, or shortly thereafter, during a collaboration session or presentation session. Moreover, in addition to distributing data items according to the data item type and the class of user, the distribution of data items can be dependent upon the actual content of the data items.
The application 125 can be any of a variety of applications which provide information to one or more users such as collaborative work applications, presentation applications, online conferencing applications, spread sheet applications, word processing applications, financial applications, and the like. The application program can be configured to generate data and compare that data with distribution rules to be discussed in greater detail. The distribution rules can be included within the application 125 or can be located external to the application 125. Alternatively, the application program 125 can be configured to provide output to a system for comparing the output data to the distribution rules and routing the data as necessary.
The distribution rules 105 can be used to specify to whom particular data items are to be provided as well as the formatting and means of delivery of the data items. The user information 110, for example, can specify one or more users who can interact with the application 125 in a given session. This information, however, also can be specified in the application 125. For example, if the application 125 is an electronic meeting application such as Lotus Sametime® which is available from Lotus Development Corporation of Cambridge, Massa., the user information 110 can specify which users are to be participating in the online meeting. In the case where application 125 is a presentation application for displaying audio and/or visual material, the user information 110 can specify a master user, for example a presenter, and one or more users who will be viewing the presentation material.
The user information 110 can associate users with one or more user classes, each of which can include one or more users. Additionally, the user information 110 can associate a media format with the users and/or the user classes. Thus, users can be assigned to a class such as employee, manager, executive, or any other suitable class designation or logical grouping depending upon the particular application 125 and/or information to be presented. The media format can specify the type of output to be provided to user classes and/or individual users specified in the user information 110. For example, the media type can specify that information is to be presented as audio, video, data intended as input to another application, electronic mail, or markup language formatted data.
In illustration, the media format can specify that information to be sent to managers can be specified as a Hypertext Markup Language (HTML) document to be presented through a visual browser, as text within or attached to an electronic mail, or as audio output to be presented through a speech browser. Accordingly, the user information 110 can specify delivery information such as the electronic mail address for one or more users, a directory or address where a markup language document can be stored, network addresses of computer systems to receive data, and the like.
The media format also can specify a designated output device to which any data generated by the application 125 can be provided. For example, the media format can associate particular data categories with the display of a computer while other data categories are directed to an external visual display such as a projection display so that other users or attendees to a presentation can view the presentation materials. Similarly, in the case of several networked computer systems, the network address of each computer system can designate the output device. Thus, information can be delivered to selected computer systems depending upon the data category and class of user at each computer system.
The content rules 115 can be used to examine the content of particular data items, objects, data structures, and/or variables. In particular, the content rules can specify which content is to be presented to particular user classes. The content rules 115 allow the system 100 of
The data category information 120 can associate particular data items with various data item categories. For example, various objects, data structures, algorithm outputs, and the like can be associated with a particular data item category such as financial, technical, human resource, or any other suitable data item designation. Additionally, the data category information 120 can specify associations between data categories and user classes. Notably, as the user classes can include one or more users, the data category information 120, similar to the media formatting information of the user information 110 and content-rules 115, can specify categories on a user class basis as well as an individual user basis.
The format converter 130, for example a transcoder, can dynamically filter and reformat content from one format or markup language to another, thereby permitting content to be converted from one modality to another. The format converter 130 can receive data items, reformat the data items, and send the data items out directly to recipients (not shown). Alternatively, as shown in
In illustration, one embodiment of the invention can include a presentation application 125 where a primary user or administrative level user has designated particular data items or material to be presented as either public or private. In this embodiment, no users need be associated with classes as the delivery of data can depend solely upon the designation of the data as public or private. The private data items such as any speaker notes, for example, can be routed to the private display of the primary user, in this case a speaker. The public information, can be routed to a large public display such as a projector display. Still, some information such as the slides can be annotated as both private and public so that the speaker and the audience may view the slides. A similar approach can be utilized, for example, where public information is published to a server as a markup language document for viewing in a browser and private information is distributed as an electronic mail to selected users on a computer communications network.
Other embodiments of the invention can include, but are not limited to, a financial application where a user wishes to share limited asset information with a financial advisor having access to the financial application and the financial advisor desires to restrict client access to commission and other expense related information; medical applications where the patient does not wish to share selected personal information with a doctor while the doctor does not wish to share particular operational data with the patient; or legal software where different categories of information are to be delivered to a judge or arbitrator, opposing attorney, clients, and the like.
Accordingly, the system 100 of
The media format also can specify a format to which the data is to be converted. For example, the data can be reformatted from XML to HTML or VoiceXML, can be included within an electronic mail, or sent via instant messaging. In the case where data is to be sent through a computer communications network, the media format can specify one or more destination electronic addresses. Similarly, if data is to be published to a network location, that location and/or address can be specified within the media format information, or can be distributed to one or more user classes via electronic mail, a hyperlink on an intranet site, and/or instant messaging.
The method can begin in step 405 where data is generated. The data can be generated by an application program which has been configured to access a set of distribution rules. As mentioned, the distribution rules can be included as part of the application program, or alternatively, the application program can be configured to provide information to a data processing engine for comparing and/or filtering the output data in accordance with the distribution rules. In any case, in step 410, the category of data can be determined. For example, the data category can be identified by any of a variety of means such as referencing a corresponding variable name or a function of the application responsible for generating, storing, and/or outputting the data, noting the placement of the data within a message or data stream wherein the placement indicates the data category, detecting data category identifiers which can be included in the data output, and the like. According to one aspect, the data can be provided with a data designator which can be compared with the distribution rules for specifying a data category, one or more associated user classes, and a media format.
For example, a human resources application can generate a variety of different forms of information including financial information, employee personal information, and marketing information. Each item of data output by the system can be identified as belonging to a particular data category. Notably, the data item categories can be refined to varying degrees of specificity. For example, while a general financial information category can exist, so too can a collections data category, expenses data category, salary data category, and the like. Thus, data such as social security numbers and salary that is categorized as highly confidential personal data can be provided only to those employees having a need to know designated by a particular user class, while less sensitive data such as one's job title can be readily available. Accordingly, in step 415, the authorized classes of users can be identified. That is, the classes of users that are associated with, and thus, are authorized to receive and access the respective data categories can be identified.
In step 420, the content of the data can be determined and analyzed according to one or more content rules. The content of the data items can be determined as the data items are calculated and the analysis can be performed with reference to the content rules. For example, in the case of a collaborative financial work environment, although a manager class typically may be provided with financial data, some financial data, such as results over a particular dollar amount, may be restricted from the manager class and intended for executive management use only.
Taking another example, data items having content specifying a dollar value exceeding a predetermined threshold can be considered private or confidential. Thus, with regard to a presentation application where data is generated dynamically during the presentation, depending upon the audience, particular items of information exceeding a dollar amount threshold can be considered private, and therefore, can be diverted from a public viewing device, masked on the public viewing device, or can be provided only to the presenter's display. Notably, the content rules can specify multiple thresholds for analyzing data item content. For example, while dollar values above a threshold may be accessed by executive staff only, and dollar values within a mid-range also may be accessed by salespersons, dollar values below a third threshold may be accessed in an unrestricted manner.
In step 425, the distribution of the data items can be expanded or restricted based upon a comparison of the data item content to the content rules. As previously illustrated, particular data items can be distributed only to those persons authorized to access the data. For example, the content rules can specify that one or more classes of users are to receive the analyzed data items or that one or more classes of users are not to receive the analyzed data items. In consequence, comparison of the data item content with the content rules can lead to an expansion of the user classes designated to receive the data items as well as a reduction in the classes of users designated to receive the data items.
Thus, particular items of data can be provided to particular classes of users as determined by application of the content rules to the content of the data items. In this manner, data can be dynamically directed to one or more users not only based upon the category of the data, but also according to the content of the data. Any of a variety of content rules can be specified based upon the particular data item to be analyzed, as well as the data category, user class, and media format specified in the distribution rules.
In step 430, the data items can be formatted for delivery to the classes of users associated with the data type. As this information can be specified by the media type, the output format converter then can perform any transcoding as may be required to reformat the data for delivery to authorized users in a suitable or user specified format. In step 435, the data items can be delivered to the users. While the format converter may be capable of transmitting one or more different media types to various users, for example, distributing electronic mails, instant messages, and/or publishing markup language documents, the format converted material also can be provided back to the application for distribution. Depending upon the method of delivery, the users can interact with the application that generated the data items to provide responses and/or additional data.
The present invention provides a solution for selectively distributing data to multiple users in a distributed environment. According to the inventive arrangements disclosed herein, the data can be categorized, associated with one or more different users and/or user classes, analyzed for content, and format converted for delivery in any of a variety of suitable formats. Content rules further can specify where and how the information is to be delivered.
The present invention can be realized in hardware, software, or a combination of hardware and software. The present invention can be realized in a centralized fashion in one computer system, or in a distributed fashion where different elements are spread across several interconnected computer systems. Any kind of computer system or other apparatus adapted for carrying out the methods described herein is suited. A typical combination of hardware and software can be a general purpose computer system with a computer program that, when being loaded and executed, controls the computer system such that it carries out the methods described herein.
The present invention also can be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods. Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form.
This invention can be embodied in other forms without departing from the spirit or essential attributes thereof. Accordingly, reference should be made to the following claims, rather than to the foregoing specification, as indicating the scope of the invention.
Number | Name | Date | Kind |
---|---|---|---|
5392400 | Berkowitz et al. | Feb 1995 | A |
5629981 | Nerlikar | May 1997 | A |
5864684 | Nielsen | Jan 1999 | A |
5996077 | Williams | Nov 1999 | A |
6014138 | Cain et al. | Jan 2000 | A |
6047288 | Kurosawa et al. | Apr 2000 | A |
6138139 | Beck et al. | Oct 2000 | A |
6151620 | Madsen et al. | Nov 2000 | A |
6219706 | Fan et al. | Apr 2001 | B1 |
6282547 | Hirsch | Aug 2001 | B1 |
6442558 | Brown et al. | Aug 2002 | B1 |
6480885 | Olivier | Nov 2002 | B1 |
Number | Date | Country |
---|---|---|
08-293925 | Nov 1996 | JP |
10-254758 | Sep 1998 | JP |
2000-357195 | Dec 2000 | JP |
2001-257008 | Dec 2001 | JP |
Number | Date | Country | |
---|---|---|---|
20030236839 A1 | Dec 2003 | US |