The invention relates to a system for subscribing to information updates from network-based and non-network-based information sources. More particularly, the invention relates to a system for providing updates from network-based and non-network-based information sources based on criteria selected by a user.
Staying informed of current developments in a particular area of expertise is important for many disciplines. The manual process of having to search for and read recent publications, however, is very cumbersome and time consuming. Often, people are unable to dedicate time to perform this process and may not be able to stay abreast of changes in a particular area.
Systems have been developed which attempt to automate the process of delivering updated information related to a particular field to one or more system users. Such systems may be used in a client/server architecture having one or more users connected over a network to one or more databases, such as server databases. Present systems generally perform a search of these databases to determine objects containing desired information.
Some systems, however, are dedicated to on-line information providers that publish information relating to various fields of endeavor. A user of a network system may access an information provider and request that information related to, for example, a particular topic, be forwarded to the user (e.g., via electronic mail) upon publication. This type of delivery may be included in systems utilizing “push” technology. In this manner, the user is notified of reports related to that topic upon its publication by the provider.
Such systems are limited to on-line information providers and are not capable of providing a user with updates from other sources of information. Present systems are also unable to determine whether information sources or computer applications (e.g., an electronic mail application) contain new information related to a particular topic and notify a user that such information exists.
These and other drawbacks exist.
An object of the invention is to overcome these and other drawbacks in existing systems.
Another object is to provide a system, method, and computer readable medium that automatically provides system users with current information from network-based and non-network based information sources.
Another object is to provide a system, method, and computer readable medium that automatically provides system users with updated information from network-based and non-network-based information sources and permits system users to determine a search criteria with which to retrieve the information.
These and other objects are achieved according to various embodiments of the invention. According to one embodiment, a system, method, and computer readable medium containing computer readable program code embodied therein are provided that enable a user to automatically receive information updates from network-based and non-network-based information sources.
The system may enable a user to request a “subscription” to information produced by one or more information sources accessed by a computer application. The subscription may contain a request for continuous updates to information related to a particular topic. The system presents a subscription request view to a user and enables the user to request one or more subscriptions. The system may also enable a user to input a search criteria for performing the search. Once input, the subscription is submitted to the system. After receiving the subscription, the system may perform periodic searches of the information sources accessed by the computer application to retrieve information satisfying the search criteria. The periodic updates received may be automatically presented to the user.
These and other objects, features, and advantages of the invention will be apparent to those having ordinary skill in the pertinent art from the detailed description of the preferred embodiments with reference to the figures.
According to the invention, the system enables a user to set-up one or more subscriptions from both network-based and non-network based information sources. Once set up, the user may then desire to periodically review the results. The subscriptions, which may be periodically updated, may thus be viewed through inputting various parameters because a user may not desire to see all of the results of a particular subscription.
For example, a user may subscribe to a World Wide Web site for sports information. The user may desire to periodically review the subscription for all articles written by a particular sports writer.
The invention may include a set of objects for information retrieval and related functions to filter and deliver desired updates from one or more databases. The objects may comprise software modules running on a general purpose programmed computer.
Accordingly, a graphical user interface, or view, may be provided.
Subscription view 100 may also comprise options 106, 108, 110 related, for example, to options that enable a user to specify the author, subject, and size of subscriptions, respectively. Options 106, 108, and 110 may include selectable parameters for each option. For example, author option 106 may include a pull-down menu comprising options that enable the user to select “contain the text,” “include any of these names,” “exclude all of these names,” etc. Subject option 108 also may include selectable options such as “begins with,” “has any of these words,” or “has none of these words.” Similarly, size option 110 may include “is less than,” “is larger than,” or “is equal to” as selectable options.
Additionally, a “Documents must match” field 112 may be included. “Documents must match” field 112 may comprise selectable criteria. For example, the selectable criteria may include “any of the above criteria,” “all of the above criteria,” etc. This criteria may be displayed as a pull-down menu or as various other known selectable mechanisms. If “Documents must match” field 112 is selected, all of the criteria specified must be satisfied in order for the information object in the database to be presented to the user.
If a user requests a subscription of only new or modified objects matching a selection formula, a selection formula field 114 may be provided in subscription view 100. A user may input, for example, lines of program code that identifies search criteria.
Furthermore, a “Check Syntax” function may be displayed as a selectable button 116. Check Syntax button 116 may be used to determine whether the code input in selection formula field 114 is correct. If the Check Syntax function determines that the syntax of the input code is correct, a message window (for example) may be displayed notifying the user that the code syntax is correct. If the Check Syntax function determines that there is at least one syntax error in the code, the system may display a message window notifying the user that at least one syntax error exists. Additionally, the system may identify the syntax error(s) in the input code and suggest possible corrections.
Subscription view 100 may also comprise a status field 118 indicating the most recently searched server and the time the server was searched. A “Temporarily disable this subscription” option 120 may also be included in status field 118 (or other location). “Temporary disable this subscription” option 120 may be used to discontinue a subscription for a period of time. Additionally, subscription view 100 may include an “Additional Information” field 122 which may display additional information relating to a particular subscription (e.g., a replica identification, selection formula used, etc.). Those of ordinary skill in the art recognize that various parameters and modes of display may be used. For example, all parameters may be shown with a corresponding selectable radio button and additional options may also be presented.
According to one embodiment of the invention, step 80 may periodically and automatically obtain information matching the search criteria. Step 80 may periodically perform searches for objects matching the search criteria on a random, user assigned, or system administrator assigned basis. For example, the user may instruct the system to perform a search on a weekly, daily, or hourly basis. The system performs the search at the designated intervals, then may automatically present the information matching the search criteria to the user, for example, on a “Welcome” page of a web browser.
According to another embodiment, step 80 retrieves the information objects from the subscriptions that match the search criteria from the database(s). The system may then notify the user in step 82 that objects matching the search criteria have been identified. In step 84, the system may inquire whether the user desires to present the matching objects immediately. This may be performed by displaying a message window comprising a question (e.g., “Do you want to view the matching objects now?”), with “yes”/“no” options. If a user selects yes, the system may present the matching objects in step 86. If the user selects no, the matching objects may be stored for later retrieval in step 88.
To perform the steps described above, an update system 14 (shown in
A criteria receiving object 34 receives the search criteria input by the user. A subscription submitting object 36 submits the subscription to update system 14. Update system 14 may perform subscription validation by communicating with a server to confirm user account status, access rights, payment status or other requirements for establishing a valid subscription. After a subscription has been submitted and, if necessary, validated, update system 14 establishes a schedule to periodically perform searches (e.g., randomly or as determined by the user or a system administrator) of the corresponding database to identify objects which match the criteria of the subscription.
In terms of establishing the subscription,
In accordance with one embodiment, the invention operates on a client/server system. The invention preferably accesses information objects stored in one or more databases, via a server. Databases may include, for example, software applications provided over a network, software applications stored on a local computer, files, documents, or other database. The system may perform a search of one or more databases, for example, servers located on the Internet, accessed by applications accessed by one or more clients to retrieve information requested by a user. Each client may comprise a personal computer running Windows™ 95, 98 or NT™, Unix™, Linux™ or other operating systems, as well as other computing or communications devices. Alternatively, each client may comprise individual threads running under a multitasking operating system on one computer. Update system 14 may be implemented as a software module running on a separate server, or similarly as an individual process thread on one computer along with clients. Update system 14 is a search and delivery engine providing users with periodically updated information regarding topics of selected interest. Update system 14 may be connected to a server via a communication link, which may be a dial-up modem connection, ISDN line, T1 or T3 digital connection, Ethernet, wireless, optical or other link.
The server may be in turn connected to one or more databases via a communications link, which may also be a dial-up modem connection, ISDN line, T1 or T3 digital connection, Ethernet, wireless, optical or other link. Each database may be a database residing for instance on hard disk, CD ROM, electronic memory or other storage media, contained within a server computer (not shown) or within information nodes in a local network, or other sources. It should be understood that a database may comprise a computer file, application, or other mechanism.
The server computer or other apparatus housing an object store may thus be an on-line resource connected to the Internet at an assigned http:// address, or a resource connected via a private intranet, a distributed database connected to a local area network, or connected in other fashions over a communications link to a server. It may be noted that in the implementation of the invention, it is not necessary, and update system 14 does not strictly expect, that database be solely an online database. When the database is an on-line source, in the context of delivery of updates over an Internet server may be deployed by an Internet service provider (ISP) via a PPP or SLIP connection. The database, however, may be a CD or DVD ROM, archival tape bank, or other off-line database connected as a peripheral to a client, as well as an on-line or off-line e-mail buffer, or any other accessible information source. It will again be appreciated that the invention operates with both Internet-based and non Internet-based information services.
According to a specific embodiment, a user may open a computer application, for example, an electronic mail or calendar application. The user may select, for example, a “Create” button from a pull-down field and select a “Subscription” option. A subscription form (for example, as shown in
The system may then perform periodic searches randomly, at times assigned by the user or by other known mechanisms of electronic mail messages received to determine whether the messages contain the word “paycheck.” If “paycheck” appears in a message, the update system notifies the user that a message containing the word “paycheck” has been received (e.g., by presenting the message or a portion thereof in a subscription window). Additionally, the update system may ask the user whether the message should be presented immediately.
According to one specific embodiment, update system 14 operates in the environment of Lotus Notes™ (developed by Lotus Development Corporation) under a function entitled “Subscriptions.” According to one embodiment, Subscriptions and Lotus Notes™ may be operating on a Windows™ operating system licensed by the Microsoft Corporation. A Subscriptions icon may be presented in a navigation panel in Lotus Notes™. According to this embodiment, selecting the Headlines icon presents a Headlines window containing, for example, a list of subscriptions the user has created, the user's calendar application, a predetermined web site, etc., in various frames. A user may select the information to be displayed when the Headlines icon is selected. In the particular context of a Notes™ implementation, the storage of all forms of data, including database, electronic mail, word processing documents and others in a consistent file format (.NSF extension) permits particularly efficient searching through selected fields. That is, data can be tested against search criteria and target fields quickly and reliably since those data structures are well defined in that environment. Likewise is that environment, data can be readily stored in distributed copies of an overarching Notes™ file but readily shared and searched for updates by a variety of users throughout an enterprise. Preferably, update system 14 enables subscription view 100 to be configured according to a user's preference. For example, a user may select the number and arrangement of the frames to be searched or presented in the Notes™ context.
Update system 14 may be provided on a computer readable storage medium comprising computer readable code embodied therein and loaded onto a client. Various objects of the client may also be provided on a computer readable storage medium.
Other embodiments and uses of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. The specification and examples should be considered exemplary only. The scope of the invention is intended to be limited only by the following claims.
Number | Name | Date | Kind |
---|---|---|---|
4253157 | Kirschner et al. | Feb 1981 | A |
5311572 | Friedes et al. | May 1994 | A |
5666526 | Reiter et al. | Sep 1997 | A |
5708780 | Levergood et al. | Jan 1998 | A |
5740362 | Buickel et al. | Apr 1998 | A |
5761662 | Dasan | Jun 1998 | A |
5764899 | Eggleston et al. | Jun 1998 | A |
5832208 | Chen et al. | Nov 1998 | A |
5855014 | Smith | Dec 1998 | A |
5870717 | Wiecha | Feb 1999 | A |
5892909 | Grasso et al. | Apr 1999 | A |
5913032 | Schwartz et al. | Jun 1999 | A |
5913215 | Rubinstein et al. | Jun 1999 | A |
5923845 | Kamiya et al. | Jul 1999 | A |
5953732 | Meske, Jr. et al. | Sep 1999 | A |
5963618 | Porter | Oct 1999 | A |
5978833 | Pashley et al. | Nov 1999 | A |
5987454 | Hobbs | Nov 1999 | A |
6020980 | Freeman | Feb 2000 | A |
6038601 | Lambert et al. | Mar 2000 | A |
6044205 | Reed et al. | Mar 2000 | A |
6044372 | Rothfus et al. | Mar 2000 | A |
6047323 | Krause | Apr 2000 | A |
6049796 | Siitonen et al. | Apr 2000 | A |
6061681 | Collins | May 2000 | A |
6078924 | Ainsbury et al. | Jun 2000 | A |
6094655 | Rogers et al. | Jul 2000 | A |
6101531 | Eggleston et al. | Aug 2000 | A |
6101537 | Edelstein et al. | Aug 2000 | A |
6108700 | Maccabee et al. | Aug 2000 | A |
6119101 | Peckover | Sep 2000 | A |
6122633 | Leymann et al. | Sep 2000 | A |
6125388 | Reisman | Sep 2000 | A |
6141653 | Conklin et al. | Oct 2000 | A |
6278993 | Kumar et al. | Aug 2001 | B1 |
6292835 | Huang et al. | Sep 2001 | B1 |
6343311 | Nishida et al. | Jan 2002 | B1 |
6366899 | Kernz | Apr 2002 | B1 |
6374252 | Althoff et al. | Apr 2002 | B1 |
6442549 | Schneider | Aug 2002 | B1 |
6571234 | Knight et al. | May 2003 | B1 |
6587547 | Zirngibl et al. | Jul 2003 | B1 |
6611862 | Reisman | Aug 2003 | B1 |
6643666 | Kernz | Nov 2003 | B1 |
20050044280 | Reisman | Feb 2005 | A1 |