SEARCHANDNOTIFY
A Customizable Personal Notification Service
for Search Engine Results
1. Background

With the advent of the wireless Internet, personalized and dynamic notification services will become increasingly important, even indispensable. While this trend is already manifest in stock quotes, and (more recently) with weather reports, and other domains, no products exist to monitor how the results provided by a search engine for a particular criterion of interest shift over time. A search engine result monitoring product would have several markets: companies that market over the Internet, market research companies that are trying to make sense of the Internet, and anyone interested in reacting immediately to changes in the search results for key criteria.

Cs3 has built a product called SearchAndNotify -a web-based service for individuals to monitor how their search results are changing over time without having to perform the monitoring or analysis themselves.

Cs3 would like to explore relationships with potential partners who are well represented in the search engine market to rapidly consolidate and exploit the opportunity for notification services like SearchAndNotify in the marketplace.

2. Key Functional Features

Key functional features of SearchAndNotify are the following:

Convenient, intuitive, powerful language for statement of patterns of change or criteria for notification. The set of criteria are specified dynamically by the individual users of the service, NOT pre-determined by the information provider.

Ability for individuals to "subscribe" to being notified about specific patterns of changes in the search results for specific search expressions of interest to them. For example, you can be notified when there is any specific change in the top 10 (or n) results, or track the movement of a competitor's URL in relationship to your own, or track when a specified URL enters or exits the top 10 (or n). These are just a few of the patterns.

Subscribers will be notified if, and only if, those changes occur! They will never again need to do manual monitoring or analysis of the search engines for that particular expression to figure out if the changes of interest to them have occurred. Responses can be to send email or page or send information through the personal communication systems.

Ability to add/remove specific subscriptions dynamically -in effect, users manage their own subscriptions as their needs change.

3. How to Use SearchAndNotify

Through SearchAndNotify, the user can access all the search engines he wishes in the normal fashion. He simply selects the appropriate search engine. See the introductory screen below:

The above screen shows how the user instituted a search on Google for the criterion "Event Monitoring". First 10 results are shown, but more can be seen by going to the original search engine link available through the above screen.

When the user encounters any particular search expression for which he would like results tracked, he SUBSCRIBES to SearchAndNotify to create a subscription for the specific pattern of changes he is interested in. SearchAndNotify is an open-ended service - you can define the patterns you wish to track for any particular search result in a notation called Flea (please see www.cs3-inc.com/flea.html for an overview). This language is, of course, quite technical (like SQL). However, to make it convenient for users, certain common patterns are made available directly through the interface.

The user will find it very easy to use these particular patterns and they are extremely useful. Examples of the pre-packaged subscriptions include the following:

  • Tell me when there is any change in the top N (default 10) results to a particular search expression for a particular search engine.
  • Tell me when a specific URL shifts up or down in the search results to a particular search expression for a particular search engine.
  • Tell me when there a specific URL enters or leaves the top N (default 10) results to a particular search expression for a particular search engine.
  • Tell me when a specific URL moves ahead or behind another specified URL in the results to a particular search expression for a particular search engine.

An example of a particular subscription screen is shown below. The screen shows you can add a subscription of the type of pattern where a particular result URL enters or leaves the top N

(default 10) results

At any given time, the user is free to add or delete his subscriptions, letting him manage his own subscriptions conveniently. In the above screen, you can see the places where the existing subscriptions of this type are shown to the user. To unsubscribe to a particular subscription, select that subscription, and click <unsubscribe> button from the above screen.

4. Technical Features

SearchAndNotify is a specific application of a more generic technology called TriggerWare that Cs3 currently markets (www.cs3-inc.com). TriggerWare is a patented, generic, event correlation engine that forms the backbone for the next generation of intelligent notification service. TriggerWare is written in Common Lisp and is equipped to serve up "reactive", event-triggered applications over the Web.

The architecture of the SearchAndNotify service is as shown below:

There are several key technical architectural components to the SearchAndNotify Service:

The Search Engine in the architecture can be pretty much any search engine that is currently in use on the Internet. This component is, of course, used as is. The SearchAndNotify service provides ways to track the changes in results yielded by search engines in dynamic ways.

The user's desktop computer can be of any type, so long as it runs a standard Web browser - the SearchAndNotify service can be used conveniently through the Web. In order for asynchronous notifications of search results changes to work, a constant Internet connection is assumed from the desktop where the user wishes to be notified.

The SearchAndNotify software is the critical guts of the entire service, and it has two major aspects to it:

TriggerWare Database: Search results are stored into the proprietary TriggerWare database (essentially a standard relational database with very advanced triggering capabilities, TriggerWare is a patented Cs3 technology). For example, supposing the user joe@acme.com was interested in the search pattern "Event Monitoring" on Google, the first 10 URLs (this can be customized) are stored in a special table designed for this purpose in the TriggerWare database.

User Email Search Engine Search Expression Position Result URL

Search results of importance (i.e., those for which there are subscriptions) will be stored in the above table so that TriggerWare can automatically detect when they are changed in the ways that users are interested in.

Subscription Manager : Users can manage subscriptions through this tool. It lets the users add new subscriptions, or delete existing subscriptions. The subscription manager compiles each new subscription into a TriggerWare rule. This rule can be deleted if the user wishes to stop subscribing. Note that subscriptions are for a specific PATTERN of change to the search results. For example, one can track when there is change in the top 10 results, or track the movement (up or down) if a selected URL from the search results, etc. The Subscription Manager provides end users with a simple intuitive interface in which they can subscribe to specific patterns of changes. Internally, subscriptions are encoded internally in a logic-based language called Flea -- somewhat like SQL extended with events and a couple of triggering constructs.

Subscriptions are themselves stored into tables as above. Each new subscription gets compiled into a new TriggerWare trigger, and added dynamically to the database. The only response now to any trigger is to notify the person by email that something of interest to them has occurred. This is easily changed to include paging, etc. When a person removes a previously specified subscription, the corresponding trigger is simply removed from the database.

Each user subscription turns into a rule in TriggerWare. When the search results tables in TriggerWare are updated, using patented technology, TriggerWare determines if the changes trigger any of the subscription rules. In that case, the response is to notify the subscriber of the change by email. But, when do the search results tables get updated within TriggerWare? At the present time, the SearchAndNotify data inside TriggerWare are updated by automatically polling the search engines using the search expressions for which there are valid subscriptions. The polling interval is search engine specific, or the user can specify the polling interval.

5. Deployment Architectures for SearchAndNotify

There are two (not necessarily mutually exclusive) architectures in which the SearchAndNotify product/service can be deployed/distributed -each with different technical trade-offs and business models:

1. Central SearchAndNotify Server over the Web

The service can be offered as a "server", over the Web by a particular search engine or information service as added value to their normal offerings. In this case, the SearchAndNotify software would run as a central server, and the individual desktop users would use it by connecting to its URL. If the central server is actually deployed by a search engine service, all the better from the perspective of data updating - because we could even eliminate polling because the search engine can simply let the SearchAndNotify server know about the presence of new data.

In this case, ALL the users are on a single server, and heavy-duty subscribers could slow occasional users down because all the triggers are in the same database. This will need to be figured into the business model somehow so that heavy users are paying their fair share. In this case, there is no special client software needed. People use the service by simply going to a web site, which offers the service. To get a free demonstration of this service:

Contact Cs3!

From a business-model perspective, SearchAndNotify will provide added value/differentiation to any search engine - that will greatly help with advertising revenue generated by traffic and usage. However, the technology is well suited to charging by usage, should that be necessary.

2. Personalized SearchAndNotify Server at Desktop

The service can be offered as a downloadable, personal notification system for the individual user. The SearchAndNotify software, in this case, will be running on each user's computer, and each engine will be responsible for managing and running just the subscriptions of just that user.

If the user wishes instantaneous notifications of changes, this will require polling of the search engine sites (our standard approach) to detect when data have changed. It is also possible that the search engines can themselves tell the desktop software to update its results if the software is being distributed by a specific search engine.

In turn, this means there needs to be a constant Internet connection if you are interested in notifications around the clock (e.g., many people, although fewer businesses, still use dialups - and this requirement could be a problem for them). In this case, SearchAndNotify is simply a desktop product that can be paid for the user or by the search engine that wishes to make it available to its users as an added value. The best feature of this approach is that each user pays the price for his own subscriptions, and there is no interference in performance or otherwise between users.