US20080189388A1 - Delivery of any type of information to anyone anytime anywhere - Google Patents
Delivery of any type of information to anyone anytime anywhere Download PDFInfo
- Publication number
- US20080189388A1 US20080189388A1 US12/098,371 US9837108A US2008189388A1 US 20080189388 A1 US20080189388 A1 US 20080189388A1 US 9837108 A US9837108 A US 9837108A US 2008189388 A1 US2008189388 A1 US 2008189388A1
- Authority
- US
- United States
- Prior art keywords
- user
- information
- interest
- level
- topics
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/335—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9538—Presentation of query results
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99932—Access augmentation or optimizing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
- Y10S707/99935—Query augmenting and refining, e.g. inexact access
Definitions
- the present invention relates to the field of information processing. More specifically, the present invention relates to the worldwide delivery of information of any type to anyone at any place and time.
- One aspect of the invention organizes information into canonical topics, such as “who,” “what,” “when,” and/or “where,” facilitates a user to persistently subscribe to a topic, routes the information to the user based on the user's level of interest in a topic.
- a user subscribes to information of interest to the user, registers devices and application on which to receive subscriptions and specifies a threshold level of interest in a topic.
- a user also specifies device profiles for each device and an application profile for each application.
- the system consults the device and application profiles and routes the information accordingly.
- Another aspect of the invention delivers the information to the user on microserver-equipped client systems.
- Other features and advantages as well as the structure and operation of various embodiments are described in detail below.
- FIG. 1 is a block diagram of a communication environment suitable for implementing aspects of the invention
- FIG. 2 illustrates a method of the invention in accordance with one embodiment
- FIG. 3 is a block diagram of the information control network 108 of FIG. 1 ;
- FIG. 4 illustrates a display on a client computer of an exemplar user interface whereby a user can persistently subscribe to a topic by name or by category;
- FIG. 5 illustrates a display on a client computer of an exemplar user interface whereby a user can persistently subscribe to a user's presence
- FIG. 6 illustrates a display on a client computer of an exemplar user interface whereby a user can persistently subscribe to a web resource
- FIG. 7 illustrates a display on a client computer of an exemplar user interface whereby a user can register a device or application to receive information, as it becomes available, under a subscription;
- FIG. 8 illustrates a display on a client computer of an exemplar user interface whereby a user can register a device or application to publish information
- FIG. 9 illustrates a purchase order system embodiment
- FIG. 10 illustrates a display on a client computer of an exemplar user interface whereby a user can set or change preferences for devices, applications, times, dates, or time frames;
- FIG. 11 is an exemplar computer processor suitable for implementing aspects of the invention.
- FIG. 1 is a block diagram illustrating an overview of aspects of the invention in accordance with an embodiment. As illustrated several users 102 a , 102 b , 102 c , and 102 d (collectively the user(s) 102 ) are coupled to each other and to an information control network 108 . The users and the information control network are coupled to the Internet 110 .
- any of the users 102 can be publishers or consumers of information.
- the user 102 b is a publisher, which provides information via the information control network 108 , to other users, and over the Internet 110 via a computer server 112 a .
- the same is true for the user 102 d , which has a computer server 112 b .
- the computer servers 112 a and 112 b are referred to collectively as the computer server(s) 112 ).
- the computer servers 112 can be a broad range of data sources, business, education, entertainment, and the like, constituted with a single or cluster of shared or dedicated computer servers. Suitable computer servers include, but are not limited to those available from IBM of Armonk, N.Y. and Sun Microsystems of Mountain View, Calif.
- the users 102 a and 102 c are consumers, which persistently request information in accordance with the present invention, and subsequently receive notification that the requested information is available from another user 102 , the information control network 108 , and/or the Internet 110 .
- the users 102 a and 102 c use client computers 104 a and 104 b (collectively client computer(s) 104 ) to request, and subsequently receive information, as it becomes available, from the computer servers 112 .
- the user 102 a has a microserver 106 embedded in its client computer 104 a , which facilitates the user 102 a to be a publisher as well as a consumer.
- the client computers 104 are intended to represent a broad range of well-known computers of any number of forms, desktop, laptop, hand-held, and the like, equipped with the proper communication or networking equipment, as well as operating systems and other software.
- Suitable client computers include, but are not limited to those available from Dell Computer of Austin, Tex. and Apple Computers of Cupertino, Calif.
- Operating systems include, but are not limited to the Windows® family of operating systems available from Microsoft® Corporation of Redmond, Wash., Linux available from Red Hat of Durham, N.C., and OS/& available from Apple Computers of Cupertino, Calif.
- Any of the client computers 104 may be equipped with a well-known web browser (not shown), which facilitates accessing and surfing the world-wide-web (web) using the Internet 110 .
- Suitable web browsers include, but are not limited to Internet Explorer available from Microsoft® Corporation of Redmond, Wash. and Netscape Navigator available from Netscape® Communication of Mountain View, Calif.
- the microserver 106 is a “stripped down” web server, having minimal functionality to support delivering of requested information in the form of a request to store information from information control network 108 .
- the employment of micro-server 106 facilitates the user to persistently submit their requests for information, and subsequently receive the information as they become available, without requiring the users to remain “connected” to the information control network 108 , while awaiting availability of the requested information.
- the functionality to support a request to store information is known in the art, and implemented in many well-known web servers. Accordingly, implementation of these functionalities will not be further described.
- the information control network 108 is equipped to detect publication of information, organize information into topics, to facilitate the users 102 a and 102 c to persistently subscribe to information related to topics of interest, to dynamically route information subscribed to the users 102 a and 102 c based on the topic and their particular levels of interest, and to deliver the information matching the subscription to the users 102 a and 102 c on the client computers 104 a and 104 b.
- the information control network 108 is a single centralized network through which all detections, organizations, subscriptions, registrations, preferences, and information flows.
- the information control network 108 is located within an organization without being connected to the “outside world.” In this embodiment, the information control network 108 also hosts business logic rules.
- the Internet 110 is intended to represent a broad range of public and private data networks that have hubs, routers, switches, gateways, and the like, known in the art, and not necessarily “the Internet” of common usage. Suitable networking equipment is available from CISCO Systems and 3COM, both of San Jose, Calif.
- FIG. 2 illustrates a method 200 performed in accordance with an aspect of the present invention.
- an embodiment of the present invention organizes information into topics.
- an embodiment facilitates a user 102 to persistently subscribe to one or more topics.
- the information control network 108 continuously and independently monitors/searches the Internet 110 for information related to the topic(s).
- An advantage the persistent subscription feature is that the user 102 is relieved from having to make multiple requests for information.
- the network 108 effectuates the repetitive/continuous request transparently to the user 102 .
- an embodiment routes information to a user 102 based on the user 102 's level of interest in the topic.
- a user 102 's level of interest can be determined in various ways.
- One embodiment facilitates a user 102 to generate device profiles and application profiles which set priorities for which topics are to be routed to which devices and/or applications. Priorities can depend on the time, day, date, etc.
- the network 108 determines which topics are to be routed to which devices and/or applications based on a user 102 's response to receipt of earlier information.
- an embodiment delivers information matching the subscription to a user 102 , on a user device or user application, or on a microserver-equipped client computer.
- the user 102 registers a client computer with the network 108 as a device on which to receive information, as it becomes available, under a subscription.
- microserver-equipped client computer 104 a can “locally” maintain (i.e., on the client computer itself) a communication path between the information-request-making application and receive the requested information on the application's behalf as an “independent” request for service from the information control network 108 .
- FIG. 3 is a block diagram of the information control network 108 in more detail.
- the information control network 108 includes an organizer 302 , a router 304 , a sensor 306 , a priority module 308 , and a notification module 310 .
- the organizer 302 organizes information into canonical topics.
- the router 304 routes information to a user based on the user 102 's level of interest.
- the sensor 306 senses published information.
- the priority module 308 filters information according to a user 102 's preferences.
- the priority module 308 also scores information according to a user 102 's preferences.
- the notification module 310 notifies a user 102 that information that the user 102 has subscribed to is available.
- the information control network 108 also includes a subscription manager 320 that manages subscriptions to information, a registration manager 330 , which manages registration of devices and applications, and a preferences manager 340 , which manages preferences for the users 120 .
- the information control network 108 also includes a controller 380 , which facilitates communication within the information control network 108 .
- the controller 380 facilitates cooperation among the organizer 302 , the router 304 , the sensor 306 , the priority module 308 , the notification module 310 , the subscription manager 320 , the registration manager 330 , and the preferences manager 340 .
- the controller 380 also facilitates communication and cooperation of the information control network 108 with the users 102 and the Internet 110 .
- the information control network 108 also includes a database 390 to store information about topics, registration, subscriptions, users 102 preferences, routing, etc.
- the database 390 includes at least one index generator to generate index information that identifies relationships among the users 102 and topics, registration, subscriptions, preferences, priorities, etc.
- the index information establishes the organization of the information stored in the database 390 .
- the database 390 is a dedicated computer running a relational database.
- the database 390 can be implemented using any database management system that facilitates multiple processors to manipulate the stored information.
- the database 390 is depicted as only one database, persons of ordinary skill in the relevant art will readily recognize how to implement the database 390 using more than one database.
- Suitable database management systems include Microsoft Access available from Microsoft Corporation in Redmond, Wash. or any well-known Structured Query Language (SQL) computer server. Moreover, many of the functions implemented by the database 390 can be implemented by other components.
- SQL Structured Query Language
- the information control network 108 senses or detects information from various locations.
- Sources of information can be electronic libraries, databases, business process, legacy environments (e.g., file computer servers, Notes), email applications, instant messaging applications, chat applications, or other information in electronic form, such as information posted on websites and message boards.
- the information can also be from news services, file sharing applications, network management applications, etc.
- the information control network 108 is passive and waits for information to be published. In another embodiment, the information control network 108 is active and crawls the various sources looking for information of interest. The information control network 108 scrapes information using well-known robot crawlers and text analysis techniques, and suitable systems are available from Napster.com in San Mateo, Calif. and FaceTime.com in Foster City, Calif.
- a user 102 may be interested in information just published on a web site.
- Conventional systems find the web site and repeatedly poll it. If the web site changes, the conventional systems send an email to the user 102 indicating that the web site has changed.
- Typical conventional systems do not provide information on what the information changed from and changed to.
- One such system is available from Netmind.com.
- the information control network 108 senses what the information changed from and changed to because it organizes the event based on its XML tags (e.g., the publisher marked up the electronic information with “who, what, when, where” XML tags), which is described more fully below.
- XML tags e.g., the publisher marked up the electronic information with “who, what, when, where” XML tags
- the information control network 108 organizes information into canons that include “who,” “what,” “when,” and/or “where.” Information can be organized based on other canons as well. For example, “price” can be a canon. Suppose that a Bach concert is being held Thursday, Oct. 12, 2000 at 7:00 p.m. at the Orange County Performing Arts Center. The organization sponsoring the concert issues this fact as an “event.” The organization also may post the information on its web site.
- the “event” has a specific who, what, when, where, etc. For example, the “who” is “Bach,” the “what” is “concert,” the “when” is “Thursday, Oct. 12, 2000 at 7:00 p.m.” and the “where” is “Orange County Performing Arts Center.” The “what” also cross-posts as “symphony” because it is a synonym of “concert.”
- Information organized under the “who” topic can include names of individual people, groups of people, etc.
- the names can be personal, such as John, James, Gerald, the Jefferson's, etc., or common, such as boys, firemen, teachers, biologists, etc.
- Information organized under the “what” topic can include any type of information, and is generally arranged by category, sub-category, sub-sub-category, etc.
- Exemplar “what” categories can include recreation, entertainment, fashion, etc.
- exemplar sub-categories can include indoor recreation and outdoor recreation, concerts and movies, men's fashion and women's fashion.
- Information organized under the “when” topic can include times, such as “10:00 o'clock a.m.,” days, such as “Sundays,” and dates, such as “Feb. 19, 1935.”
- the “when” topic also can include times of day, such as “morning” or “lunchtime.”
- the “when” topic also can include “weekends” or “Father's Day.”
- Information organized under the “where” topic can be a galaxy, planet, country, state, city, street, address, etc. Thus, it can be as broad as “Milky Way Galaxy,” “Earth” “West Coast,” “Pacific Northwest,” “Washington,” and a narrow as “Woodinville,” and “Chateau Ste. Michelle Winery.”
- the organizer 302 When the organizer analyzes information, the organizer 302 considers linguistic relationships, such as synonyms, hypernyms, hyponyms, etc. Thus, the organizer 320 knows that “entertainment” is a hypernym (or sub-category) of “music,” which is a hypernym of “classical,” and that “reggae” is a hyponym of “music” and that “music” is a hyponym of “entertainment.” The organizer 302 also knows that “music” is a hyponym of “arts.” Likewise, the organizer 302 knows that with respect to music, “country” is a synonym of “western.” The organizer 302 also knows that “symphony” is a synonym of “concert,” and, as such, that a Los Angeles Times “symphony” event is comparable to a New York Times “concert” event.
- linguistic relationships such as synonyms, hypernyms, hyponyms, etc.
- the information control network 108 also cross-posts information.
- the “what” of the Bach concert also cross-posts as “symphony” because it is a synonym of “concert.”
- the “where” of “Orange County Performing Arts Center” cross-posts to the “where” of “California” because Orange County Performing Arts Center is a hyponym of California.
- the topic “Performing Arts Centers” would include hyponyms such as Benaroya Hall in Seattle, Wash., Constitution Hall in Washington, D.C., and the Chateau Ste. Michelle Winery in Woodinville, Wash.
- the “event” indicating that the Bach concert is being held Thursday, Oct. 12, 2000 at 7:00 p.m. at the Orange County Performing Arts Center therefore also may trigger other “events.”
- a non-profit watch organization may trigger “events” whenever it receives an “event” from a non-profit organization.
- the organizer 302 also considers what the words mean in context, or their semantics. For example, the organizer 302 knows that words can have several meanings, which change depending on the audience. Thus the organizer 302 knows that to a New Yorker “San Francisco” may include “San Jose,” but to anyone who lives in San Jose, “San Francisco” does not include “San Jose.”
- Information can come from a variety of sources and generally includes any information available in cyberspace, on the web, on the Internet, etc. Information typically is generated by commercial corporations, government entities, media, religious and other non-profit organizations, hospitals, etc. Although information has been referred to as an “event,” information may also be referred to as “non-events,” “alerts,” “messages,” “queries,” “data,” “data content,” “consumer/customer information,” or other terminology that can be interpreted to mean information usable by cyberspace and/or Internet users. Information can also be patterns, streams, queues, etc.
- Information can be in any language, such as English, Spanish, Japanese, Swedish, Chinese, Hebrew, Swahili, Portuguese, Farsi, etc., and can be in any form, such as video, audio, multimedia, or streaming media. This includes text, graphical images, computer-animated graphics, sound effects, and music, for example.
- a specific type, form, or language of information is not important for the invention, and those skilled in the art will understand that a wide variety of information may be made available on the web. That is, any type of information in any form or language can be made available to the users 102 .
- the organizer 302 assigns “who” “what” “when” and/or “where” extensible markup language (XML) tags (who-what-when-where XML tags) to information.
- XML extensible markup language
- a user can assign “who” “what” “when” and/or “where” XML tags to information prior to publishing it.
- the “who” “what” “when” and/or “where” XML tags operate as a protocol (the who-what-when-where protocol) rather than a static, binary, language-specific application programming interface (API) that can trip up internet-scale heterogeneous systems.
- API application programming interface
- a detected “event” “Rohit is going to San Francisco to buy that $5000 laptop from Sony” is organized into canonical topics and assigned who-what-when-where XML tags. According to this embodiment, the information becomes
- who-what-when-where XML tags also include a price XML tag.
- one aspect of the invention facilitates the users 102 to persistently express an interest in a topic.
- the information control network 108 searches for information related to the topic. When such information is found, the user 102 may be notified. Unlike with conventional systems, the user 102 does not have to make multiple manual requests for information. Instead, the user 102 makes one subscription indicating a persistent interest in the topic(s).
- a user 102 also can persistently subscribe to a web user, which is a person, or a web resource, which is any device that can be referenced by a uniform resource locator (URL).
- a web resource may also be a queue, event stream, etc., such as an electronic ticker tape.
- FIG. 4 shows a display on a client computer 104 of an exemplar user interface 400 whereby a user 102 can persistently subscribe to a topic by name or by category.
- the user interface 400 as well as other user interfaces described herein, run on a computer display and are viewable and operable by a user 102 .
- the user 102 simply selects the particular window by clicking on it.
- Some windows allow the user 102 to make entries via a computer keyboard. Other windows, when clicked on, transport the user 102 to another user interface.
- the user interface 400 depicts a “Subscribe to a topic” heading 402 , a “Subscribe by name” window 404 , and a “Subscribe by category” window 406 .
- the user 102 selects a “who” window 410 and enters a name, selects a “what” window 412 and enters a thing, selects a “where” window 414 and enters a location, and selects a “when” window 416 and enters a date, time, etc.
- a user 102 Miguel, subscribes to an R.E.M. concert at Chateau Ste. Michelle Winery in Woodinville, Wash. for Friday, Apr.
- a user can persistently subscribe to a category.
- the user 102 selects the R.E.M. window 420 .
- “Entertainment” is the category and “Music” is a hyponym of “Entertainment.”
- “Pop 40 ” includes the groups Raw Sienna and REO Speedwagon as well as the group R.E.M.
- the user 102 can select from among any of the hyponyms. Although not shown, the user 102 also can select a category other than Entertainment.
- FIG. 5 shows an exemplar user interface 500 whereby a user 102 can persistently subscribe to a user's presence.
- the subscription manager 320 may perform some of the functions described with reference to FIGS. 4 , 5 , and 6 .
- the user interface 500 depicts a “Subscribe to a user's presence” heading 502 , a “by e-mail address” heading 504 , and a “by contact” heading 506 .
- the user 102 selects an “e-mail address” window 510 and enters an e-mail address, such as johndoe@mycorporation.com.
- the user 102 selects a “First name” window 510 and enters a person's first name, selects a “Last name” window 512 and enters a person's last name, selects a “country” window 514 and enters a country, and selects a “city” window 516 and enters a city, and/or selects a “State” window 518 and enters a state.
- the user 102 selects a “Search” window 530 to check for the presence for persons matching entries.
- FIG. 6 shows an exemplar user interface 600 whereby a user 102 can persistently subscribe to a web resource.
- the user interface 600 depicts a “Subscribe to a Web resource” heading 602 .
- the user 102 selects a “URL” window 604 and enters a URL, such as http:www.bstz.corn or http://www.knownow.com.
- the subscription manager 320 receives the entries as subscription data, processes the subscription data, and stores it for use by the information control network 108 .
- the users 102 are persistently subscribed to the entered user's presence, topic(s), and web resources.
- Subscription data can be stored in a database according to Table 1, which illustrates an embodiment of a Subscription Table.
- Table 1 illustrates an embodiment of a Subscription Table.
- the Subscription Table shows that Joe has subscribed to any Seattle R.E.M. concert and Bill has subscribed to books related to R.E.M. Bill's subscription persists until May 1, 2001. John has subscribed to all concerts, regardless of the venue, the date, or who is playing. Bob has subscribed to any REO Speedwagon information. Note that the Subscription Table shows from the example above that Miguel has subscribed to the R.E.M. concert at the Chateau Ste. Michelle Winery on Apr. 11, 2000.
- a user subscribes to be notified on her spreadsheet whenever expenses in her department exceed $500,000. Other embodiments will be readily apparent to persons of ordinary skill in the relevant art reading the description herein.
- one aspect of the invention routes information to a user based on the user's level of interest in a topic.
- a user subscribes to a topic.
- the user registers a device or application for the subscription.
- “Subscription” refers to what to send or receive, i.e., information related to a topic, a user, a device, an application, or a resource, while “registration” refers to where to send information, i.e., to a pager, buddy list, etc.
- the user specifies a level of interest in a particular topic by establishing preferences.
- subscribing to a topic implicitly registers the device used to subscribe.
- the information control network 108 recognizes that the device used to subscribe to the topic is unknown to the information control network 108 and automatically registers the device.
- Registration also can refer to from where information is published. This is described in greater detail with reference to FIG. 8 below.
- the information control network 108 aggregates the user 102 's registrations, subscriptions, and preferences, and filters information such that when information relating to the subscribed topic is found, the information control network 108 routes the information on a topic-interest basis. This quells the barrage of alerts, events, etc., from brokers, doctors, auctioneers, etc., such that potential interruptions become decisions.
- FIG. 7 is an exemplar user interface 700 whereby a user can register a device or application on which to receive subscribed to information.
- the registration manager 330 may perform some of the functions described with reference to FIGS. 7 and 8 .
- the user interface 700 depicts a “Register a device/application—subscribe” heading 702 and a “Notify me on my” heading 704 .
- the user 102 selects a “pager” window 710 and enters a pager address in an “Address/number to notify me at:” window 740 .
- the pager address according to the example in FIG. 1 has been entered as “1768825@skytel.com.” As the information becomes available it is sent to the address entered in the window 740 .
- the user 102 selects a “Cell phone (read it to me)” window 712 and enters a telephone number in the “Address/number to notify me at:” window 740 .
- the information subscribed to is read to the subscriber over the cellular telephone as the information becomes available.
- the user 102 selects a “Cell phone (data message)” window 714 and enters a telephone number in the “Address/number to notify me at:” window 740 .
- the information subscribed to is sent to the cellular telephone in text form as the information becomes available.
- the user 102 selects an “e-mail” window 716 and enters an email address in the “Address/number to notify me at:” window 740 . As the information becomes available it is sent by email to the email address entered in the window 740 .
- the user 102 selects a “microserver-equipped client” window 718 and enters an address in the “Address/number to notify me at:” window 740 . As the information becomes available it is sent to the address entered in the window 740 .
- the user 102 selects a “Microsoft® Instant Messenger” window 720 , for Microsoft®, a “Yahoo! Instant Messenger” window 722 for Yahoo!, and “AOL Instant Messenger” window 724 , for America On Line Instant Messenger.
- the user 102 enters an instant messenger address “Address/number to notify me at:” window 740 . As the information becomes available it is sent to instant messenger address entered in the window 740 .
- the user 102 selects a “fax machine” window 726 and enters a telephone number in the “Address/number to notify me at:” window 740 . As the information becomes available it is sent to facsimile number entered in the window 740 .
- the user 102 selects an “others . . . ” window 728 and enters an address or telephone number in the “Address/number to notify me at:” window 740 .
- Other devices include any device capable of communicating electronically.
- Other applications include word processing applications, spreadsheets, accounting applications, web browsers, file sharing applications, etc. As the information becomes available it is sent to address or telephone number entered in the window 740 .
- FIG. 8 is an exemplar user interface 800 whereby a user can register an application or device from which to publish information.
- the user interface 800 depicts a “Register an application/device—publish” heading 802 , a “Publish info to the Information Control Network” window 804 , and an “Also publish info to” window 806 .
- the user 102 selects a box 808 .
- the user 102 To register to publish information to a location other than the information control network 108 , the user 102 selects a box 810 , and enters a location, usually in the form of an address, in the window 812 . According to the example in FIG. 8 , the user 102 has entered a URL (ICN.mycorp.com).
- FIG. 9 shows an embodiment where a purchase order system 910 registers and subscribes to information related to printers 920 and 922 and to a copier 924 , which may be located at a Reprographics Business 926 , such as Kinko's®.
- the Reprographics Business 926 has registered to publish information related to printers 920 and 922 and the copier 924 to the information control network 108 .
- the printer 920 or 922 or the copier 924 publishes information indicating that it is out of paper
- the purchase order system 910 receives this information.
- the Reprographics Business 926 has registered to publish information related to printers 920 and 922 and the copier 924 to the purchase order system 910 .
- the printer 920 or 922 or the copier 924 publishes information indicating that it is out of paper
- the purchase order system 910 receives this information directly.
- the purchase order system 910 can act on the subscribed to information in various ways, including placing an order for paper to be sent to the Reprographics Business 926 . Note that no human intervention in this transaction, and in many aspects of the invention, no human intervention is necessary.
- a user 102 also may specify certain preferences for subscriptions, including threshold levels of interest in a topic.
- One embodiment allows a user 102 to assign a priority level for thresholds such that below a certain threshold, information is routed in one manner, and above a certain threshold, information is routed in another manner. For example, a user 102 may prefer to have information sent to his or her cellular phone in the mornings and afternoons during commuting times and to his or her laptop computer during the middle of the day. On weekends, the user 102 may prefer to be contacted on his or her pager. Both the sender's preferences and the recipient's preferences are taken into consideration.
- the information control network 108 can adaptively adjust a user's level of interest.
- the network sends information to a user. If the user never acknowledges receipt of information, the information control network 108 interprets the failure to acknowledge as a lack of interest and adjusts the preferences accordingly. This process can be iterative and dynamic such that the information control network 108 continually adapts to the user 102 .
- a user 102 can specify that if there are any messages from her parents, the information control network 108 should find the user, notifying the user 102 on any registered device or application. In this instance the information control network 108 escalates the priority on the device(s) or application(s) accordingly.
- the notification does not necessarily have to be on a registered device or application.
- the information control network 108 can dispatch a skywriter to deliver notifications, put messages on reader boards or electronic billboards, or other instrumentality to ensure the user 102 is notified.
- FIG. 10 is a user interface 1000 whereby a user 102 establishes or changes preferences.
- the router 304 and the priority module 308 may perform some of the functions described when referring to FIG. 10 .
- the user interface 1000 depicts a “Set/Change your preferences” heading 1002 , a “Notify me according to the following priorities:” heading 1004 , and an “Escalate information based on the following rules” heading 1006 .
- the user interface 1000 also shows the devices and applications that the particular user 102 has registered, which include e-mail, instant messaging (IM), and a pager.
- IM instant messaging
- the windows under the “Notify me according to the following priorities:” heading 1004 allow a user 102 to establish priorities for devices and applications, times, and dates. To set a preference for a device or application default priority level, the user 102 engages a “Default Priority Level” window 1020 .
- One embodiment allows a user 102 to assign a priority between 0 and 100 for thresholds. The example in FIG. 10 shows that for a particular subscription the user 102 prefers to receive information, as it becomes available, with a priority of 30 to his email, information with a priority between 31 and 89 on his instant messenger, and information with a priority greater than 89 on his pager.
- the user 102 can set or change preferences for other devices and applications not shown in FIG. 10 .
- the user 102 engages a “Lunch hour” window 1030 .
- the example in FIG. 10 shows that during lunchtime the user 102 prefers to receive information, as it becomes available, with a priority less than 75 on his email and information with a priority greater than or equal to 75 on his pager.
- the user 102 can set or change preferences for other times not shown in FIG. 10 .
- the user 102 engages a “Weekends” window 1040 .
- the example in FIG. 10 shows that on weekends the user 102 prefers to receive information, as it becomes available, with a priority less than 80 on his email and information with a priority greater than or equal to 75 on his pager.
- the user 102 can set or change preferences for other days (e.g., holidays, travel days, etc.) not shown in FIG. 10 .
- the information control network 108 may generate a device profile.
- the device/application profiles can be as follows. Email receives all information with a priority of less than 30 during the week, with a priority of less than 75 during the week at lunchtime, and with a priority of less than 80 on the weekends. Instant messenger only receives information during the week, and only information with a priority between 31 and 89.
- the windows under the “Escalate information based on the following rules” heading 1006 allow a user 102 to establish priorities for certain events. According to the entries in the windows under the “Escalate information based on the following rules” heading 1006 , the router 304 escalates any event having a priority of 50 (window 1052 ) or greater (window 1054 ) by 10 (window 1056 ) every fifteen minutes (window 1058 ) until the user 102 acknowledges receipt of the information.
- the default priority level for any preference is 75.
- Miguel has a default priority of 75 for information about the R.E.M. concert at Chateau Ste. Michelle.
- the topic-interest profile for Miguel's R.E.M. event is as follows. If Miguel receives her R.E.M. event during the week at 10:00 o'clock in the morning, the event is routed to her instant messenger. If Miguel receives her R.E.M. event during the week at lunchtime, the event is routed to her pager. If Miguel receives her R.E.M. event on the weekend, the event is routed to her email. These may change if Miguel fails to acknowledge receipt of the event, in which case the priority is escalated.
- a user 102 also can train the router 304 by providing a “more urgent” or “less urgent” response to information.
- the information control network 108 routes information using the “who, what, when, where” XML tags as a message protocol rather than a static, binary, language-specific application programming interface (API) that can trip up internet-scale heterogeneous systems.
- the “who, what, when, where” message protocol ensures interoperability with other proprietary devices, platforms, systems, etc.
- the router 304 uses a consistent hashing algorithm to calculate the set of subscribers needing to receive the information relating to the subscribed topic.
- the information control network 108 After a user 102 has subscribed, registered, and set preferences, the information control network 108 notifies the user 102 whenever information is sensed that matches the subscription, registration, and preferences. Notification is thus sent to pagers, instant messaging, spreadsheets, cellular telephones, etc., according to profiles described above.
- the user 102 who prefers to have information sent to his cellular phone in the mornings gets notified on his cell phone in the mornings. He is notified on his cell phone in the afternoons and during commuting times. He is notified on his laptop computer during the middle of the day. On weekends, he is notified on his or her pager.
- the user 102 wants to be notified whenever any story about Akamai is posted to the New York Times web site. The user 102 does not want to have to get the whole “newspaper,” just the Akamai story. When the story is posted, the registered user device or user application is notified and the changes are automatically synchronized.
- the information control network 108 knows which device or application to notify based on the user's profiles.
- Miguel has a subscription to information about the R.E.M. concert at Chateau Ste. Michelle, also has registered the client computer 104 a to receive information, as it becomes available, and the microserver 106 to publish information.
- Miguel might get an email announcing that tickets have gone on sale, which he may miss, especially if it is the weekend. Alternatively, Miguel is asleep and does not want to be awakened.
- the microserver 106 facilitates users being able to persistently submit requests for information, and subsequently receive the information as they become available, without requiring the users to remain “connected” to the information control network 108 , while awaiting availability of the requested information. For example, when the sensor 306 has detected an “event” indicating that tickets are now on sale for the R.E.M. concert at Chateau Ste. Michelle on Friday, Apr. 11, 2001, the information control network 108 notifies Miguel's client computer 104 a . The microserver 106 establishes a connection with a server at Ticket Master and sends a request to purchase four tickets to the R.E.M. concert.
- the microserver 106 accesses Miguel's credit card information stored on the client computer 104 a in a well-known manner and provides the credit card information to Ticket Master.
- the microserver 106 permits Miguel to purchase tickets regardless of where he is or what time it is.
- FIG. 11 is a block diagram of an exemplar computer system 1100 to facilitate a user to set up and participate in open web communications.
- computer system 1100 is described with specific components and architecture for illustration, it should be understood that the invention could be implemented in other ways.
- the invention can be implemented on multiple cooperating networked computer systems.
- each component can be implemented as a combination of one or more of hardware, software and firmware.
- each subscriber, publisher, client system, computer server system, as well as the information control network 108 has some or all of the components contained in the exemplar computer system 1100 , as required, to implement the functions described herein.
- the computer system 1100 includes a main unit 1102 with one or more processors, such as processor 1110 .
- the main unit 1102 also includes a random access memory (RAM) 1120 , a secondary storage 1130 , a graphics controller 1160 , a display unit 1170 , a network interface 1180 , and an input interface 1190 . All the components except the display unit 1170 can communicate with each other over a communication path 1150 , which typically contains several buses, as is well-known in the relevant arts.
- RAM random access memory
- the processor 1110 executes instructions stored in RAM 1120 to provide several features of the invention.
- the RAM 1120 retrieves such instructions from the secondary storage 1130 using the communication path 1150 .
- the instructions are retrieved on the network interface 1180 from an external computer server provided, for example, by an application service provider (ASP) or by another division within a same organization.
- the network interface 1180 typically is implemented using Internet protocol (IP).
- the graphics controller 1160 receives commands and data on the communication path 1150 from the processor 1110 , and generates display signals (e.g., in RGB format) to the display unit 1170 .
- the display signals are generated according to the commands and data received on the communication path 1150 .
- the display unit 1170 contains a display screen to display the images defined by the display signals.
- the input interface 1190 usually corresponds to a keyboard and/or mouse (not shown), and generally facilitates a user to provide inputs. Components suitable for implementing the processor 1110 , the RAM 1120 , the graphics controller 1160 , the display unit 1170 , the network interface 1180 , and the input interface 1190 are well known.
- the secondary memory 1130 typically contains a hard drive 1135 and a removable storage drive 1137 .
- the hard drive 1135 stores the software instructions and data, which facilitate the computer system 1100 to provide several features in accordance with the invention.
- some or all of the data and instructions may be provided on removable storage unit 1140 , and the data and instructions are read and provided by the removable storage drive 1137 to the processor 1110 .
- a floppy disk drive, a magnetic tape drive, a compact disk read-only-memory (CDROM) drive, a digital video disk (DVD) drive, a removable memory chip (e.g., a PCMCIA Card, and EPROM, etc.) are examples of suitable components to implement the removable storage drive 1137 .
- the removable storage unit 1140 is detachable from the main unit 1102 .
- the removable storage unit 1140 is implemented using a medium and storage format compatible with the removable storage drive 1137 such that the removable storage drive 1137 can read the data and instructions.
- the removable storage unit 1140 includes a computer usable storage medium having stored therein computer software and/or data.
- An embodiment of the invention is implemented using software running (that is, executing) in the computer system 1100 .
- the term “computer program product” is used generally to refer to the removable storage unit 1140 or a hard disk installed in the hard drive 1135 . These computer program products are means for providing software to the computer system 1100 .
- computer programs also called computer control logic
- main memory RAM 1110
- secondary storage 1130 computer programs
- the software may be stored in a computer program product and loaded into the computer system 1100 using the removable storage drive 1137 , the hard drive 1135 , or the network interface 1180 .
- the control logic when executed by the processor 1110 , causes the processor 1110 to perform the functions of the invention as described herein.
- control logic software
- the operation and implementation of the control logic can be best understood by considering example implementations different software modules, which may, together, implement various aspects of the invention.
Abstract
Information delivery system and methods detects and organizes information into canonical topics, such as who, what, when, where, price, etc., and facilitates a user to persistently subscribe to topics, web users, web resources, event streams, etc. The system facilitates a user to register devices and applications on which to receive information, as it becomes available, related to the subscription(s). The system facilitates users to specify preferences for the topics, web users, web resources, and registrations, which prioritize delivery of information. The system senses information, aggregates the user's registrations, subscriptions, and preferences, and filters information a topic-interest basis. The system notifies a user based on the preferences.
Description
- 1. Field of the Invention
- The present invention relates to the field of information processing. More specifically, the present invention relates to the worldwide delivery of information of any type to anyone at any place and time.
- 2. Background Information
- Nowadays there is a great demand for information, especially considering that more people recognize how empowering information can be. Sometimes the information we seek is for work; many times it is for entertainment. Take the case of Miguel, an avid fan of the musical group R.E.M. Miguel wants to know any and everything about REM. He wants to know biographical information on the band members, concert dates, trivia, new music release dates, etc.
- To find information, Miguel can surf the net in hopes of stumbling across information about R.E.M. He will likely find information related to the musical group R.E.M., such as official R.E.M. websites, unofficial R.E.M. websites, newsgroups for R.E.M. discussions, etc. Miguel will also find several websites on resource and environmental management, R. E. Mahler graphic arts, etc.
- The problem is that this process of accessing information from the web can be time consuming and frustrating. For example, Miguel can sift through all this information and eliminate the websites on resource and environmental management and R. E. Mahler graphic arts. After a while, however, all Miguel wants is new information on the musical group R.E.M. There is no easy way for Miguel to know when there is new information about R.E.M, however. To get any new information, Miguel has to go to the same web pages, which don't really change very often and sift through them looking for the new information. He can surf for new websites, but will likely pull up websites on resource and environmental management and R. E. Mahler graphic arts again. The process of accessing information from the web can be even more troublesome when trying to access obscure information. What should be an empowering experience suddenly becomes quite disconcerting.
- Timely delivery of information is also crucial, especially when trying to fit entertainment into our busy schedules. Suppose that R.E.M. has announced that they are playing a concert in Miguel's hometown this summer. Anyone who knows anything about R.E.M. knows that the concerts sell out very quickly, sometimes in a matter of hours. Miguel needs to know as soon as the concert is announced to make sure he gets tickets.
- If he has subscribed to an official R.E.M. website he should get an email sent to his mailbox. However, any email sent is only as timely as Miguel is in checking it. If Miguel is not online, he misses the email. If Miguel is not checking this particular mailbox, he misses the email. Even if Miguel is checking his mailbox regularly, sometimes email delays can be several days such that by the time Miguel gets the email, the concert is sold out. Because Miguel did not have a more timely way to get his information, the concert event of a lifetime turns into a huge disappointment.
- The advent of cell phones, computers, pagers, and other personal communication devices allows us to conduct our affairs in a more decentralized fashion. Miguel could be at home for the evening, in Hong Kong for a few days, or at a football game on Sunday afternoon. He still wants this information delivered to him regardless of where he is. What is needed therefore is delivery of any type of information to anyone at any time and at any place.
- Presented herein is a system and corresponding methods to send and receive any type of information to anyone at anytime and anywhere. One aspect of the invention organizes information into canonical topics, such as “who,” “what,” “when,” and/or “where,” facilitates a user to persistently subscribe to a topic, routes the information to the user based on the user's level of interest in a topic.
- Initially, a user subscribes to information of interest to the user, registers devices and application on which to receive subscriptions and specifies a threshold level of interest in a topic. A user also specifies device profiles for each device and an application profile for each application. When information relating to the subscribed topic is sensed, the system consults the device and application profiles and routes the information accordingly.
- Another aspect of the invention delivers the information to the user on microserver-equipped client systems. Other features and advantages as well as the structure and operation of various embodiments are described in detail below.
- The invention is best understood by reference to the figures wherein references with like reference numbers generally indicate identical, functionally similar, and/or structurally similar elements. The drawing in which an element first appears is indicated by the leftmost digit(s) in the reference number in which:
-
FIG. 1 is a block diagram of a communication environment suitable for implementing aspects of the invention; -
FIG. 2 illustrates a method of the invention in accordance with one embodiment; -
FIG. 3 is a block diagram of theinformation control network 108 ofFIG. 1 ; -
FIG. 4 illustrates a display on a client computer of an exemplar user interface whereby a user can persistently subscribe to a topic by name or by category; -
FIG. 5 illustrates a display on a client computer of an exemplar user interface whereby a user can persistently subscribe to a user's presence; -
FIG. 6 illustrates a display on a client computer of an exemplar user interface whereby a user can persistently subscribe to a web resource; -
FIG. 7 illustrates a display on a client computer of an exemplar user interface whereby a user can register a device or application to receive information, as it becomes available, under a subscription; -
FIG. 8 illustrates a display on a client computer of an exemplar user interface whereby a user can register a device or application to publish information; -
FIG. 9 illustrates a purchase order system embodiment; -
FIG. 10 illustrates a display on a client computer of an exemplar user interface whereby a user can set or change preferences for devices, applications, times, dates, or time frames; and -
FIG. 11 is an exemplar computer processor suitable for implementing aspects of the invention. - A system and corresponding methods to receive send and receive any type of information at anytime and anywhere is described herein. In the following description, various aspects of the invention are described. However, it will be apparent to those skilled in the art that the invention may be practiced with only some or all aspects of the invention. For purposes of explanation, specific numbers, methods, materials and configurations are set forth in order to provide a thorough understanding of the invention. However, it will also be apparent to one skilled in the art that the invention may be practiced without the specific details. In other instances, well-known features are omitted or simplified in order not to obscure the invention.
- Some parts of the description will be presented using terms such as protocol, module, application, functionality, and so forth, commonly employed by those skilled in the art to convey the substance of their work to others skilled in the art. Other parts of the description will be presented in terms of operations performed by a computer system, using terms such as facilitating, determining, reducing, transmitting, and so forth. As is well understood by those skilled in the art, these quantities and operations take the form of electrical, magnetic, or optical signals capable of being stored, transferred, combined, and otherwise manipulated through mechanical and electrical components of a digital system; and the term “digital system” includes general purpose as well as special purpose data processing machines, systems, and the like, that are standalone, adjunct or embedded.
- Various operations will be described as multiple discrete steps performed in turn in a manner that is most helpful in understanding the invention. However, the order in which they are described should not be construed to imply that these operations are necessarily order dependent or that the operations be performed in the order in which the steps are presented. Furthermore, the phrase “in one embodiment” will be used repeatedly, however the phrase does not necessarily refer to the same embodiment, although it may.
- The invention is described below in further detail with respect to several examples for illustration. It should be understood, however, that the invention may be implemented in several other embodiments. A method in accordance with the invention is described below first.
-
FIG. 1 is a block diagram illustrating an overview of aspects of the invention in accordance with an embodiment. As illustrated several users 102 a, 102 b, 102 c, and 102 d (collectively the user(s) 102) are coupled to each other and to aninformation control network 108. The users and the information control network are coupled to theInternet 110. - Any of the
users 102 can be publishers or consumers of information. According to the exemplar inFIG. 1 , the user 102 b is a publisher, which provides information via theinformation control network 108, to other users, and over theInternet 110 via a computer server 112 a. The same is true for the user 102 d, which has a computer server 112 b. (The computer servers 112 a and 112 b are referred to collectively as the computer server(s) 112). - For ease of understanding, four users are shown. It will be readily apparent to those of ordinary skill in the art that any number of users could be included without affecting the spirit and scope of the invention.
- The computer servers 112 can be a broad range of data sources, business, education, entertainment, and the like, constituted with a single or cluster of shared or dedicated computer servers. Suitable computer servers include, but are not limited to those available from IBM of Armonk, N.Y. and Sun Microsystems of Mountain View, Calif.
- Also according to the exemplar in
FIG. 1 , the users 102 a and 102 c are consumers, which persistently request information in accordance with the present invention, and subsequently receive notification that the requested information is available from anotheruser 102, theinformation control network 108, and/or theInternet 110. Thus, the users 102 a and 102 c use client computers 104 a and 104 b (collectively client computer(s) 104) to request, and subsequently receive information, as it becomes available, from the computer servers 112. The user 102 a has amicroserver 106 embedded in its client computer 104 a, which facilitates the user 102 a to be a publisher as well as a consumer. - Except for the
microserver 106, the client computers 104 are intended to represent a broad range of well-known computers of any number of forms, desktop, laptop, hand-held, and the like, equipped with the proper communication or networking equipment, as well as operating systems and other software. Suitable client computers include, but are not limited to those available from Dell Computer of Austin, Tex. and Apple Computers of Cupertino, Calif. Operating systems include, but are not limited to the Windows® family of operating systems available from Microsoft® Corporation of Redmond, Wash., Linux available from Red Hat of Durham, N.C., and OS/& available from Apple Computers of Cupertino, Calif. - Any of the client computers 104 may be equipped with a well-known web browser (not shown), which facilitates accessing and surfing the world-wide-web (web) using the
Internet 110. Suitable web browsers include, but are not limited to Internet Explorer available from Microsoft® Corporation of Redmond, Wash. and Netscape Navigator available from Netscape® Communication of Mountain View, Calif. - The
microserver 106 is a “stripped down” web server, having minimal functionality to support delivering of requested information in the form of a request to store information frominformation control network 108. As will be described in more detail below, the employment ofmicro-server 106 facilitates the user to persistently submit their requests for information, and subsequently receive the information as they become available, without requiring the users to remain “connected” to theinformation control network 108, while awaiting availability of the requested information. The functionality to support a request to store information is known in the art, and implemented in many well-known web servers. Accordingly, implementation of these functionalities will not be further described. - The
information control network 108 is equipped to detect publication of information, organize information into topics, to facilitate the users 102 a and 102 c to persistently subscribe to information related to topics of interest, to dynamically route information subscribed to the users 102 a and 102 c based on the topic and their particular levels of interest, and to deliver the information matching the subscription to the users 102 a and 102 c on the client computers 104 a and 104 b. - In one embodiment, the
information control network 108 is a single centralized network through which all detections, organizations, subscriptions, registrations, preferences, and information flows. In another embodiment, theinformation control network 108 is located within an organization without being connected to the “outside world.” In this embodiment, theinformation control network 108 also hosts business logic rules. - The
Internet 110 is intended to represent a broad range of public and private data networks that have hubs, routers, switches, gateways, and the like, known in the art, and not necessarily “the Internet” of common usage. Suitable networking equipment is available from CISCO Systems and 3COM, both of San Jose, Calif. -
FIG. 2 illustrates amethod 200 performed in accordance with an aspect of the present invention. At 202, an embodiment of the present invention organizes information into topics. - At 204, an embodiment facilitates a
user 102 to persistently subscribe to one or more topics. To fulfill theuser 102's subscription theinformation control network 108 continuously and independently monitors/searches theInternet 110 for information related to the topic(s). An advantage the persistent subscription feature is that theuser 102 is relieved from having to make multiple requests for information. Thenetwork 108 effectuates the repetitive/continuous request transparently to theuser 102. - At 206, an embodiment routes information to a
user 102 based on theuser 102's level of interest in the topic. Auser 102's level of interest can be determined in various ways. One embodiment facilitates auser 102 to generate device profiles and application profiles which set priorities for which topics are to be routed to which devices and/or applications. Priorities can depend on the time, day, date, etc. In another embodiment, thenetwork 108 determines which topics are to be routed to which devices and/or applications based on auser 102's response to receipt of earlier information. - At 208, an embodiment delivers information matching the subscription to a
user 102, on a user device or user application, or on a microserver-equipped client computer. In one embodiment, initially, theuser 102 registers a client computer with thenetwork 108 as a device on which to receive information, as it becomes available, under a subscription. - Of course, it is well known that conventional client computers can make requests for information and receive the requested information synchronously by maintaining the communication connection, as in the case of a web browser, or receiving the requested information asynchronously by employing alternate channels, such as emails. Conventional client computers, however, cannot allow pseudo-synchronous responses to requests for information without either maintaining the communication connection open or employing an alternate communication channel. The microserver-equipped client computer 104 a can “locally” maintain (i.e., on the client computer itself) a communication path between the information-request-making application and receive the requested information on the application's behalf as an “independent” request for service from the
information control network 108. -
FIG. 3 is a block diagram of theinformation control network 108 in more detail. Theinformation control network 108 includes anorganizer 302, arouter 304, asensor 306, apriority module 308, and anotification module 310. Of course, theinformation control network 108 does not necessarily have to be partitioned among these particular functionalities. Theorganizer 302 organizes information into canonical topics. Therouter 304 routes information to a user based on theuser 102's level of interest. Thesensor 306 senses published information. Thepriority module 308 filters information according to auser 102's preferences. Thepriority module 308 also scores information according to auser 102's preferences. Thenotification module 310 notifies auser 102 that information that theuser 102 has subscribed to is available. - The
information control network 108 also includes asubscription manager 320 that manages subscriptions to information, aregistration manager 330, which manages registration of devices and applications, and apreferences manager 340, which manages preferences for the users 120. - The
information control network 108 also includes acontroller 380, which facilitates communication within theinformation control network 108. Thecontroller 380 facilitates cooperation among theorganizer 302, therouter 304, thesensor 306, thepriority module 308, thenotification module 310, thesubscription manager 320, theregistration manager 330, and thepreferences manager 340. Thecontroller 380 also facilitates communication and cooperation of theinformation control network 108 with theusers 102 and theInternet 110. - The
information control network 108 also includes adatabase 390 to store information about topics, registration, subscriptions,users 102 preferences, routing, etc. Thedatabase 390 includes at least one index generator to generate index information that identifies relationships among theusers 102 and topics, registration, subscriptions, preferences, priorities, etc. The index information establishes the organization of the information stored in thedatabase 390. - In one embodiment, the
database 390 is a dedicated computer running a relational database. Of course, thedatabase 390 can be implemented using any database management system that facilitates multiple processors to manipulate the stored information. Moreover, although thedatabase 390 is depicted as only one database, persons of ordinary skill in the relevant art will readily recognize how to implement thedatabase 390 using more than one database. - Suitable database management systems include Microsoft Access available from Microsoft Corporation in Redmond, Wash. or any well-known Structured Query Language (SQL) computer server. Moreover, many of the functions implemented by the
database 390 can be implemented by other components. - The
information control network 108 senses or detects information from various locations. Sources of information can be electronic libraries, databases, business process, legacy environments (e.g., file computer servers, Notes), email applications, instant messaging applications, chat applications, or other information in electronic form, such as information posted on websites and message boards. The information can also be from news services, file sharing applications, network management applications, etc. - In one embodiment, the
information control network 108 is passive and waits for information to be published. In another embodiment, theinformation control network 108 is active and crawls the various sources looking for information of interest. Theinformation control network 108 scrapes information using well-known robot crawlers and text analysis techniques, and suitable systems are available from Napster.com in San Mateo, Calif. and FaceTime.com in Foster City, Calif. - A
user 102 may be interested in information just published on a web site. Conventional systems find the web site and repeatedly poll it. If the web site changes, the conventional systems send an email to theuser 102 indicating that the web site has changed. Typical conventional systems do not provide information on what the information changed from and changed to. One such system is available from Netmind.com. - According to one embodiment of the invention, the
information control network 108 senses what the information changed from and changed to because it organizes the event based on its XML tags (e.g., the publisher marked up the electronic information with “who, what, when, where” XML tags), which is described more fully below. - In one embodiment, the
information control network 108 organizes information into canons that include “who,” “what,” “when,” and/or “where.” Information can be organized based on other canons as well. For example, “price” can be a canon. Suppose that a Bach concert is being held Thursday, Oct. 12, 2000 at 7:00 p.m. at the Orange County Performing Arts Center. The organization sponsoring the concert issues this fact as an “event.” The organization also may post the information on its web site. - Other web sites, such as Ticket Master, may also post the information. The “event” has a specific who, what, when, where, etc. For example, the “who” is “Bach,” the “what” is “concert,” the “when” is “Thursday, Oct. 12, 2000 at 7:00 p.m.” and the “where” is “Orange County Performing Arts Center.” The “what” also cross-posts as “symphony” because it is a synonym of “concert.”
- Information organized under the “who” topic can include names of individual people, groups of people, etc. The names can be personal, such as John, James, Gerald, the Jefferson's, etc., or common, such as boys, firemen, teachers, biologists, etc.
- Information organized under the “what” topic can include any type of information, and is generally arranged by category, sub-category, sub-sub-category, etc. Exemplar “what” categories can include recreation, entertainment, fashion, etc., while exemplar sub-categories can include indoor recreation and outdoor recreation, concerts and movies, men's fashion and women's fashion.
- Information organized under the “when” topic can include times, such as “10:00 o'clock a.m.,” days, such as “Sundays,” and dates, such as “Feb. 19, 1935.” The “when” topic also can include times of day, such as “morning” or “lunchtime.” The “when” topic also can include “weekends” or “Father's Day.”
- Information organized under the “where” topic can be a galaxy, planet, country, state, city, street, address, etc. Thus, it can be as broad as “Milky Way Galaxy,” “Earth” “West Coast,” “Pacific Northwest,” “Washington,” and a narrow as “Woodinville,” and “Chateau Ste. Michelle Winery.”
- When the organizer analyzes information, the
organizer 302 considers linguistic relationships, such as synonyms, hypernyms, hyponyms, etc. Thus, theorganizer 320 knows that “entertainment” is a hypernym (or sub-category) of “music,” which is a hypernym of “classical,” and that “reggae” is a hyponym of “music” and that “music” is a hyponym of “entertainment.” Theorganizer 302 also knows that “music” is a hyponym of “arts.” Likewise, theorganizer 302 knows that with respect to music, “country” is a synonym of “western.” Theorganizer 302 also knows that “symphony” is a synonym of “concert,” and, as such, that a Los Angeles Times “symphony” event is comparable to a New York Times “concert” event. - The
information control network 108 also cross-posts information. Thus, from the example above, the “what” of the Bach concert also cross-posts as “symphony” because it is a synonym of “concert.” The “where” of “Orange County Performing Arts Center” cross-posts to the “where” of “California” because Orange County Performing Arts Center is a hyponym of California. Moreover, the topic “Performing Arts Centers” would include hyponyms such as Benaroya Hall in Seattle, Wash., Constitution Hall in Washington, D.C., and the Chateau Ste. Michelle Winery in Woodinville, Wash. - The “event” indicating that the Bach concert is being held Thursday, Oct. 12, 2000 at 7:00 p.m. at the Orange County Performing Arts Center therefore also may trigger other “events.” For example, a non-profit watch organization may trigger “events” whenever it receives an “event” from a non-profit organization.
- The
organizer 302 also considers what the words mean in context, or their semantics. For example, theorganizer 302 knows that words can have several meanings, which change depending on the audience. Thus theorganizer 302 knows that to a New Yorker “San Francisco” may include “San Jose,” but to anyone who lives in San Jose, “San Francisco” does not include “San Jose.” - Information can come from a variety of sources and generally includes any information available in cyberspace, on the web, on the Internet, etc. Information typically is generated by commercial corporations, government entities, media, religious and other non-profit organizations, hospitals, etc. Although information has been referred to as an “event,” information may also be referred to as “non-events,” “alerts,” “messages,” “queries,” “data,” “data content,” “consumer/customer information,” or other terminology that can be interpreted to mean information usable by cyberspace and/or Internet users. Information can also be patterns, streams, queues, etc.
- Information can be in any language, such as English, Spanish, Japanese, Swedish, Chinese, Hebrew, Swahili, Portuguese, Farsi, Afrikaans, etc., and can be in any form, such as video, audio, multimedia, or streaming media. This includes text, graphical images, computer-animated graphics, sound effects, and music, for example. Of course, a specific type, form, or language of information is not important for the invention, and those skilled in the art will understand that a wide variety of information may be made available on the web. That is, any type of information in any form or language can be made available to the
users 102. - The
organizer 302 assigns “who” “what” “when” and/or “where” extensible markup language (XML) tags (who-what-when-where XML tags) to information. Alternatively, a user can assign “who” “what” “when” and/or “where” XML tags to information prior to publishing it. The “who” “what” “when” and/or “where” XML tags operate as a protocol (the who-what-when-where protocol) rather than a static, binary, language-specific application programming interface (API) that can trip up internet-scale heterogeneous systems. - In one embodiment, a detected “event” “Rohit is going to San Francisco to buy that $5000 laptop from Sony” is organized into canonical topics and assigned who-what-when-where XML tags. According to this embodiment, the information becomes
-
“<WHO>Rohit</WHO>is going to <WHERE>San Francisco</WHERE> to buy that <PRICEtype=“usd”>5000</PRICE> <WHAT> laptop from Sony</WHAT>” - after being marked up. Note that the who-what-when-where XML tags also include a price XML tag.
- Recall that one aspect of the invention facilitates the
users 102 to persistently express an interest in a topic. When auser 102 subscribes to one or more topics, theinformation control network 108 searches for information related to the topic. When such information is found, theuser 102 may be notified. Unlike with conventional systems, theuser 102 does not have to make multiple manual requests for information. Instead, theuser 102 makes one subscription indicating a persistent interest in the topic(s). - A
user 102 also can persistently subscribe to a web user, which is a person, or a web resource, which is any device that can be referenced by a uniform resource locator (URL). A web resource may also be a queue, event stream, etc., such as an electronic ticker tape. -
FIG. 4 shows a display on a client computer 104 of anexemplar user interface 400 whereby auser 102 can persistently subscribe to a topic by name or by category. Theuser interface 400, as well as other user interfaces described herein, run on a computer display and are viewable and operable by auser 102. Theuser 102 simply selects the particular window by clicking on it. Some windows allow theuser 102 to make entries via a computer keyboard. Other windows, when clicked on, transport theuser 102 to another user interface. - The
user interface 400 depicts a “Subscribe to a topic” heading 402, a “Subscribe by name”window 404, and a “Subscribe by category”window 406. To subscribe by name, theuser 102 selects a “who”window 410 and enters a name, selects a “what”window 412 and enters a thing, selects a “where”window 414 and enters a location, and selects a “when”window 416 and enters a date, time, etc. According to the exemplar ofFIG. 4 , auser 102, Miguel, subscribes to an R.E.M. concert at Chateau Ste. Michelle Winery in Woodinville, Wash. for Friday, Apr. 11, 2000 when theuser 102 enters “R.E.M.” in the “who”window 410, “concert” in the “what”window 412, “Chateau Ste. Michelle” in the “where”window 414, and “Fri, Apr. 11, 2000” in the “when”window 416. - Alternatively, a user can persistently subscribe to a category. To subscribe to R.E.M. by category, the
user 102 selects the R.E.M.window 420. - Note that the “Entertainment” is the category and “Music” is a hyponym of “Entertainment.” There are various hyponyms of “music,” including “Benefits,” “Classical,” “Pop 40,” “Reggae,” and “Others.” Note also that “Pop 40” includes the groups Raw Sienna and REO Speedwagon as well as the group R.E.M. The
user 102 can select from among any of the hyponyms. Although not shown, theuser 102 also can select a category other than Entertainment. -
FIG. 5 shows anexemplar user interface 500 whereby auser 102 can persistently subscribe to a user's presence. Thesubscription manager 320 may perform some of the functions described with reference toFIGS. 4 , 5, and 6. Theuser interface 500 depicts a “Subscribe to a user's presence” heading 502, a “by e-mail address” heading 504, and a “by contact” heading 506. To subscribe by e-mail address, theuser 102 selects an “e-mail address”window 510 and enters an e-mail address, such as johndoe@mycorporation.com. To subscribe by contact info, theuser 102 selects a “First name”window 510 and enters a person's first name, selects a “Last name”window 512 and enters a person's last name, selects a “country”window 514 and enters a country, and selects a “city”window 516 and enters a city, and/or selects a “State”window 518 and enters a state. Theuser 102 selects a “Search”window 530 to check for the presence for persons matching entries. -
FIG. 6 shows anexemplar user interface 600 whereby auser 102 can persistently subscribe to a web resource. Theuser interface 600 depicts a “Subscribe to a Web resource” heading 602. To subscribe to a web resource, theuser 102 selects a “URL”window 604 and enters a URL, such as http:www.bstz.corn or http://www.knownow.com. - The
subscription manager 320 receives the entries as subscription data, processes the subscription data, and stores it for use by theinformation control network 108. Theusers 102 are persistently subscribed to the entered user's presence, topic(s), and web resources. - Subscription data can be stored in a database according to Table 1, which illustrates an embodiment of a Subscription Table. The Subscription Table shows that Joe has subscribed to any Seattle R.E.M. concert and Bill has subscribed to books related to R.E.M. Bill's subscription persists until May 1, 2001. John has subscribed to all concerts, regardless of the venue, the date, or who is playing. Bob has subscribed to any REO Speedwagon information. Note that the Subscription Table shows from the example above that Miguel has subscribed to the R.E.M. concert at the Chateau Ste. Michelle Winery on Apr. 11, 2000.
-
TABLE 1 Subscription Table WHO WHAT WHERE WHEN USER . . . . . . . . . . . . . . . R.E.M. Concert Seattle * Joe R.E.M. Concert Chateau Ste. Apr. 11, 2001 Miguel Michelle R.E.M. Book Until May 1, 2001 Bill * Concert * John REO * * Bob Speedwagon . . . . . . . . . . . . . . . - In an embodiment, a user subscribes to a message by pointing a web browser to an event. For example, take “kirksoffice/printer?subscribe=pinteroutofpaper” as a means to subscribe Kirk's web browser to receive notifications that the printer in his office is out of paper. Kirk's web browser waits for a printer to issue an “out of paper” message. When the printer issues an “out of paper” message, the message appears on Kirk's web browser. In another embodiment, a user subscribes to be notified on her spreadsheet whenever expenses in her department exceed $500,000. Other embodiments will be readily apparent to persons of ordinary skill in the relevant art reading the description herein.
- Recall that one aspect of the invention routes information to a user based on the user's level of interest in a topic. Initially, a user subscribes to a topic. The user then registers a device or application for the subscription. “Subscription” refers to what to send or receive, i.e., information related to a topic, a user, a device, an application, or a resource, while “registration” refers to where to send information, i.e., to a pager, buddy list, etc. The user then specifies a level of interest in a particular topic by establishing preferences.
- In one embodiment, subscribing to a topic implicitly registers the device used to subscribe. The
information control network 108 recognizes that the device used to subscribe to the topic is unknown to theinformation control network 108 and automatically registers the device. - Registration also can refer to from where information is published. This is described in greater detail with reference to
FIG. 8 below. - The
information control network 108 aggregates theuser 102's registrations, subscriptions, and preferences, and filters information such that when information relating to the subscribed topic is found, theinformation control network 108 routes the information on a topic-interest basis. This quells the barrage of alerts, events, etc., from brokers, doctors, auctioneers, etc., such that potential interruptions become decisions. -
FIG. 7 is anexemplar user interface 700 whereby a user can register a device or application on which to receive subscribed to information. Theregistration manager 330 may perform some of the functions described with reference toFIGS. 7 and 8 . Theuser interface 700 depicts a “Register a device/application—subscribe” heading 702 and a “Notify me on my” heading 704. - To register a pager, the
user 102 selects a “pager”window 710 and enters a pager address in an “Address/number to notify me at:”window 740. The pager address according to the example inFIG. 1 has been entered as “1768825@skytel.com.” As the information becomes available it is sent to the address entered in thewindow 740. - To register a cellular telephone for information in audio, the
user 102 selects a “Cell phone (read it to me)”window 712 and enters a telephone number in the “Address/number to notify me at:”window 740. The information subscribed to is read to the subscriber over the cellular telephone as the information becomes available. To register a cellular telephone for information in text, theuser 102 selects a “Cell phone (data message)”window 714 and enters a telephone number in the “Address/number to notify me at:”window 740. The information subscribed to is sent to the cellular telephone in text form as the information becomes available. - To register to receive information via email, the
user 102 selects an “e-mail”window 716 and enters an email address in the “Address/number to notify me at:”window 740. As the information becomes available it is sent by email to the email address entered in thewindow 740. - To register to receive information via a microserver-equipped client computer, such as the client computer 104 a, the
user 102 selects a “microserver-equipped client”window 718 and enters an address in the “Address/number to notify me at:”window 740. As the information becomes available it is sent to the address entered in thewindow 740. - To register to receive information via an instant messenger, the
user 102 selects a “Microsoft® Instant Messenger”window 720, for Microsoft®, a “Yahoo! Instant Messenger”window 722 for Yahoo!, and “AOL Instant Messenger”window 724, for America On Line Instant Messenger. Theuser 102 enters an instant messenger address “Address/number to notify me at:”window 740. As the information becomes available it is sent to instant messenger address entered in thewindow 740. - To register to receive information via a facsimile machine, the
user 102 selects a “fax machine”window 726 and enters a telephone number in the “Address/number to notify me at:”window 740. As the information becomes available it is sent to facsimile number entered in thewindow 740. - To register to receive information via other devices or applications, the
user 102 selects an “others . . . ”window 728 and enters an address or telephone number in the “Address/number to notify me at:”window 740. Other devices include any device capable of communicating electronically. Other applications include word processing applications, spreadsheets, accounting applications, web browsers, file sharing applications, etc. As the information becomes available it is sent to address or telephone number entered in thewindow 740. -
FIG. 8 is anexemplar user interface 800 whereby a user can register an application or device from which to publish information. Theuser interface 800 depicts a “Register an application/device—publish” heading 802, a “Publish info to the Information Control Network”window 804, and an “Also publish info to”window 806. To register to publish information to theinformation control network 108, theuser 102 selects abox 808. - To register to publish information to a location other than the
information control network 108, theuser 102 selects abox 810, and enters a location, usually in the form of an address, in thewindow 812. According to the example inFIG. 8 , theuser 102 has entered a URL (ICN.mycorp.com). -
FIG. 9 shows an embodiment where apurchase order system 910 registers and subscribes to information related toprinters copier 924, which may be located at a Reprographics Business 926, such as Kinko's®. The Reprographics Business 926 has registered to publish information related toprinters copier 924 to theinformation control network 108. Whenever theprinter copier 924 publishes information indicating that it is out of paper, thepurchase order system 910 receives this information. - Alternatively, the Reprographics Business 926 has registered to publish information related to
printers copier 924 to thepurchase order system 910. In this embodiment, whenever theprinter copier 924 publishes information indicating that it is out of paper, thepurchase order system 910 receives this information directly. - The
purchase order system 910 can act on the subscribed to information in various ways, including placing an order for paper to be sent to the Reprographics Business 926. Note that no human intervention in this transaction, and in many aspects of the invention, no human intervention is necessary. - A
user 102 also may specify certain preferences for subscriptions, including threshold levels of interest in a topic. One embodiment allows auser 102 to assign a priority level for thresholds such that below a certain threshold, information is routed in one manner, and above a certain threshold, information is routed in another manner. For example, auser 102 may prefer to have information sent to his or her cellular phone in the mornings and afternoons during commuting times and to his or her laptop computer during the middle of the day. On weekends, theuser 102 may prefer to be contacted on his or her pager. Both the sender's preferences and the recipient's preferences are taken into consideration. - Alternatively, the
information control network 108 can adaptively adjust a user's level of interest. In one embodiment, the network sends information to a user. If the user never acknowledges receipt of information, theinformation control network 108 interprets the failure to acknowledge as a lack of interest and adjusts the preferences accordingly. This process can be iterative and dynamic such that theinformation control network 108 continually adapts to theuser 102. - A
user 102 can specify that if there are any messages from her parents, theinformation control network 108 should find the user, notifying theuser 102 on any registered device or application. In this instance theinformation control network 108 escalates the priority on the device(s) or application(s) accordingly. The notification does not necessarily have to be on a registered device or application. For example, theinformation control network 108 can dispatch a skywriter to deliver notifications, put messages on reader boards or electronic billboards, or other instrumentality to ensure theuser 102 is notified. -
FIG. 10 is auser interface 1000 whereby auser 102 establishes or changes preferences. Therouter 304 and thepriority module 308 may perform some of the functions described when referring toFIG. 10 . Theuser interface 1000 depicts a “Set/Change your preferences” heading 1002, a “Notify me according to the following priorities:” heading 1004, and an “Escalate information based on the following rules” heading 1006. In awindow 1008, theuser interface 1000 also shows the devices and applications that theparticular user 102 has registered, which include e-mail, instant messaging (IM), and a pager. - The windows under the “Notify me according to the following priorities:” heading 1004 allow a
user 102 to establish priorities for devices and applications, times, and dates. To set a preference for a device or application default priority level, theuser 102 engages a “Default Priority Level”window 1020. One embodiment allows auser 102 to assign a priority between 0 and 100 for thresholds. The example inFIG. 10 shows that for a particular subscription theuser 102 prefers to receive information, as it becomes available, with a priority of 30 to his email, information with a priority between 31 and 89 on his instant messenger, and information with a priority greater than 89 on his pager. Of course, theuser 102 can set or change preferences for other devices and applications not shown inFIG. 10 . - To set a lunchtime preference, the
user 102 engages a “Lunch hour”window 1030. The example inFIG. 10 shows that during lunchtime theuser 102 prefers to receive information, as it becomes available, with a priority less than 75 on his email and information with a priority greater than or equal to 75 on his pager. Of course, theuser 102 can set or change preferences for other times not shown inFIG. 10 . - To set a preference for receipt of information during weekends, the
user 102 engages a “Weekends”window 1040. The example inFIG. 10 shows that on weekends theuser 102 prefers to receive information, as it becomes available, with a priority less than 80 on his email and information with a priority greater than or equal to 75 on his pager. Of course, theuser 102 can set or change preferences for other days (e.g., holidays, travel days, etc.) not shown inFIG. 10 . - Once the default priority levels are set for the device(s) or application(s) of interest, the
information control network 108 may generate a device profile. The device/application profiles can be as follows. Email receives all information with a priority of less than 30 during the week, with a priority of less than 75 during the week at lunchtime, and with a priority of less than 80 on the weekends. Instant messenger only receives information during the week, and only information with a priority between 31 and 89. - The windows under the “Escalate information based on the following rules” heading 1006 allow a
user 102 to establish priorities for certain events. According to the entries in the windows under the “Escalate information based on the following rules” heading 1006, therouter 304 escalates any event having a priority of 50 (window 1052) or greater (window 1054) by 10 (window 1056) every fifteen minutes (window 1058) until theuser 102 acknowledges receipt of the information. - In one embodiment, the default priority level for any preference is 75.
- Continuing with an example from Table 1—Subscription Table above, Miguel has a default priority of 75 for information about the R.E.M. concert at Chateau Ste. Michelle.
- Once a
user 102 has registered devices and applications, made subscriptions, and specified preferences, the result is a topic-interest profile. The topic-interest profile for Miguel's R.E.M. event according to the preferences of the example inFIG. 10 is as follows. If Miguel receives her R.E.M. event during the week at 10:00 o'clock in the morning, the event is routed to her instant messenger. If Miguel receives her R.E.M. event during the week at lunchtime, the event is routed to her pager. If Miguel receives her R.E.M. event on the weekend, the event is routed to her email. These may change if Miguel fails to acknowledge receipt of the event, in which case the priority is escalated. Auser 102 also can train therouter 304 by providing a “more urgent” or “less urgent” response to information. - The
information control network 108 routes information using the “who, what, when, where” XML tags as a message protocol rather than a static, binary, language-specific application programming interface (API) that can trip up internet-scale heterogeneous systems. The “who, what, when, where” message protocol ensures interoperability with other proprietary devices, platforms, systems, etc. - Typically, there are
many users 102, often millions. In this case, therouter 304 uses a consistent hashing algorithm to calculate the set of subscribers needing to receive the information relating to the subscribed topic. - After a
user 102 has subscribed, registered, and set preferences, theinformation control network 108 notifies theuser 102 whenever information is sensed that matches the subscription, registration, and preferences. Notification is thus sent to pagers, instant messaging, spreadsheets, cellular telephones, etc., according to profiles described above. - For example, the
user 102 who prefers to have information sent to his cellular phone in the mornings gets notified on his cell phone in the mornings. He is notified on his cell phone in the afternoons and during commuting times. He is notified on his laptop computer during the middle of the day. On weekends, he is notified on his or her pager. Suppose theuser 102 wants to be notified whenever any story about Akamai is posted to the New York Times web site. Theuser 102 does not want to have to get the whole “newspaper,” just the Akamai story. When the story is posted, the registered user device or user application is notified and the changes are automatically synchronized. Theinformation control network 108 knows which device or application to notify based on the user's profiles. - Recall that Miguel has a subscription to information about the R.E.M. concert at Chateau Ste. Michelle, also has registered the client computer 104 a to receive information, as it becomes available, and the
microserver 106 to publish information. Conventionally, Miguel might get an email announcing that tickets have gone on sale, which he may miss, especially if it is the weekend. Alternatively, Miguel is asleep and does not want to be awakened. - According to an aspect of the invention, the
microserver 106 facilitates users being able to persistently submit requests for information, and subsequently receive the information as they become available, without requiring the users to remain “connected” to theinformation control network 108, while awaiting availability of the requested information. For example, when thesensor 306 has detected an “event” indicating that tickets are now on sale for the R.E.M. concert at Chateau Ste. Michelle on Friday, Apr. 11, 2001, theinformation control network 108 notifies Miguel's client computer 104 a. Themicroserver 106 establishes a connection with a server at Ticket Master and sends a request to purchase four tickets to the R.E.M. concert. When Ticket Master's server requests billing information for Miguel, themicroserver 106 accesses Miguel's credit card information stored on the client computer 104 a in a well-known manner and provides the credit card information to Ticket Master. Themicroserver 106 permits Miguel to purchase tickets regardless of where he is or what time it is. - The same can be said for the paper being ordered from Kinko's® for the copiers and printers. That is, no matter what time of day, day of the week, or what topic, subscribers are notified of even obscure information and actions are taken as though a human were actively involved in the transactions.
-
FIG. 11 is a block diagram of anexemplar computer system 1100 to facilitate a user to set up and participate in open web communications. Even thoughcomputer system 1100 is described with specific components and architecture for illustration, it should be understood that the invention could be implemented in other ways. For example, the invention can be implemented on multiple cooperating networked computer systems. In addition, each component can be implemented as a combination of one or more of hardware, software and firmware. Moreover, each subscriber, publisher, client system, computer server system, as well as theinformation control network 108 has some or all of the components contained in theexemplar computer system 1100, as required, to implement the functions described herein. - The
computer system 1100 includes amain unit 1102 with one or more processors, such asprocessor 1110. Themain unit 1102 also includes a random access memory (RAM) 1120, asecondary storage 1130, agraphics controller 1160, adisplay unit 1170, anetwork interface 1180, and aninput interface 1190. All the components except thedisplay unit 1170 can communicate with each other over acommunication path 1150, which typically contains several buses, as is well-known in the relevant arts. - The
processor 1110 executes instructions stored inRAM 1120 to provide several features of the invention. TheRAM 1120 retrieves such instructions from thesecondary storage 1130 using thecommunication path 1150. In the alternative, the instructions are retrieved on thenetwork interface 1180 from an external computer server provided, for example, by an application service provider (ASP) or by another division within a same organization. Thenetwork interface 1180 typically is implemented using Internet protocol (IP). - The
graphics controller 1160 receives commands and data on thecommunication path 1150 from theprocessor 1110, and generates display signals (e.g., in RGB format) to thedisplay unit 1170. The display signals are generated according to the commands and data received on thecommunication path 1150. Thedisplay unit 1170 contains a display screen to display the images defined by the display signals. Theinput interface 1190 usually corresponds to a keyboard and/or mouse (not shown), and generally facilitates a user to provide inputs. Components suitable for implementing theprocessor 1110, theRAM 1120, thegraphics controller 1160, thedisplay unit 1170, thenetwork interface 1180, and theinput interface 1190 are well known. - The
secondary memory 1130 typically contains ahard drive 1135 and aremovable storage drive 1137. Thehard drive 1135 stores the software instructions and data, which facilitate thecomputer system 1100 to provide several features in accordance with the invention. In the alternative, some or all of the data and instructions may be provided onremovable storage unit 1140, and the data and instructions are read and provided by theremovable storage drive 1137 to theprocessor 1110. A floppy disk drive, a magnetic tape drive, a compact disk read-only-memory (CDROM) drive, a digital video disk (DVD) drive, a removable memory chip (e.g., a PCMCIA Card, and EPROM, etc.) are examples of suitable components to implement theremovable storage drive 1137. - The
removable storage unit 1140 is detachable from themain unit 1102. In general, theremovable storage unit 1140 is implemented using a medium and storage format compatible with theremovable storage drive 1137 such that theremovable storage drive 1137 can read the data and instructions. Thus, theremovable storage unit 1140 includes a computer usable storage medium having stored therein computer software and/or data. An embodiment of the invention is implemented using software running (that is, executing) in thecomputer system 1100. In this document, the term “computer program product” is used generally to refer to theremovable storage unit 1140 or a hard disk installed in thehard drive 1135. These computer program products are means for providing software to thecomputer system 1100. - As noted above, computer programs (also called computer control logic) are stored in the main memory (RAM 1110) and/or the
secondary storage 1130. In the embodiments implemented using software, the software may be stored in a computer program product and loaded into thecomputer system 1100 using theremovable storage drive 1137, thehard drive 1135, or thenetwork interface 1180. The control logic (software), when executed by theprocessor 1110, causes theprocessor 1110 to perform the functions of the invention as described herein. - The operation and implementation of the control logic (software) can be best understood by considering example implementations different software modules, which may, together, implement various aspects of the invention.
- Having described and illustrated the principles of the invention with reference to illustrated embodiments, it will be recognized that the illustrated embodiments can be modified in arrangement and detail without departing from such principles.
- And, even though the foregoing discussion has focused on particular embodiments, it is understood that other configurations are contemplated. In particular, even though expressions such as “in one embodiment,” “in another embodiment,” and the like are used herein, these phrases are meant to generally reference embodiment possibilities, and are not intended to limit the invention to particular embodiment configurations.
- As used herein, these terms may reference the same or different embodiments, and unless expressly indicated otherwise, are combinable into other embodiments. Consequently, in view of the wide variety of permutations to the above-described embodiments, the detailed description is intended to be illustrative only, and should not be taken as limiting the scope of the invention. What is claimed as the invention, therefore, is all such modifications as may come within the scope and spirit of the following claims and equivalents thereto.
Claims (51)
1-26. (canceled)
27. A method comprising:
monitoring and detecting publication of information in a network;
organizing the detected information into a set of topics;
facilitating a user to persistently subscribe to information based on at least one topic selected from among the set of topics;
routing information to the user based on the organization and subscription; and
delivering the information to the user on at least one of a client system, a device, or an application wherein delivering the information to the user is initiated by a data source.
28. The method of claim 27 , further comprising organizing information into a set of topics including who, what, when, or where.
29. The method of claim 27 , further comprising organizing information into a set of topics including names, times, time frames, dates, places, and information categories.
30. The method of claim 27 , further comprising organizing information into a set of topics including hyponyms, hypernyms, or synonyms of names, times, time frames, dates, places, and information categories.
31. The method of claim 27 , further comprising organizing information into a set of topics, based on the semantics or linguistic relationships of terms in the information.
32. The method of claim 27 , further comprising organizing information into a set of topics, the information including events, non-events, alerts, messages, queries, data, data content, patterns, streams, or queues.
33. The method of claim 27 , further comprising organizing information into a set of topics, the information including video, audio, multimedia, or streaming media.
34. The method of claim 27 , further comprising organizing information into a set of topics, the information including English, Spanish, Japanese, Swedish, Chinese, Hebrew, Swahili, Portuguese, Farsi or Afrikaans.
35. The method of claim 27 , further comprising organizing information into a set of topics including who, what, when, or where and assigning extensible markup language (XML) tags to information, based on the who, what, when, or where topics.
36. The method of claim 27 , further comprising facilitating a user to persistently subscribe to a web resource, based on a universal resource locator (URL), and to specify a level of interest in the web resource.
37. The method of claim 27 , further comprising facilitating a user to persistently subscribe to a web user, based on an email address, a name or a location, and to specify a level of interest in the web user.
38. The method of claim 27 , further comprising facilitating a user to persistently subscribe to a user's presence, based on an email address, a name or a location, and to specify a level of interest in the web user.
39. The method of claim 27 , further comprising facilitating a user to persistently subscribe to information based on at least one hyponym, hypernym, or synonym of a topic selected from among the set of topics and to specify a level of interest in the selected hyponym, hypernym, or synonym.
40. The method of claim 27 , further comprising routing information to the user on a user device or user application, based on the selected topic and level of interest in the selected topic.
41. The method of claim 27 , further comprising registering a user device or user application and routing information to the user on the registered user device or user application, based on the selected topic and level of interest in the selected topic.
42. The method of claim 27 , further comprising registering a pager, cellular telephone, email, instant messenger, purchase order system, microserver-equipped client computer, facsimile machine, web browser, or spreadsheet and routing information to the user on the registered pager, cellular telephone, email, instant messenger, purchase order system, microserver-equipped client computer, facsimile machine, web browser, or spreadsheet, based on the selected topic and level of interest in the selected topic.
43. The method of claim 27 , further comprising registering a user device or user application and facilitating a user to establish preferences for routing information to the user on the registered user device or user application, the preferences specifying the level of interest in the selected topic.
44. The method of claim 27 , further comprising registering a user device or user application and facilitating a user to establish preferences for routing information to the user on the registered user device or user application, the preferences specifying a level of interest in the registered user device or user application.
45. The method of claim 27 , further comprising facilitating a user to register a user device or user application and facilitating a user to establish preferences for routing information to the user on the registered user device or user application, the preferences specifying a level of interest in the registered user device or user application, the preferences specifying the level of interest in the selected topic, the preferences specifying a time, date, or time frame.
46. The method of claim 27 , further comprising registering at least one user device or user application and establishing preferences for routing information to the user on the registered user device or user application, the preferences specifying the level of interest in the selected topic.
47. The method of claim 27 , further comprising registering at least one user device or user application, establishing at least one preference for routing information to the user on the registered user device or user application, the preferences specifying the level of interest in the information, and automatically changing the preferences based on the level of interest in the information.
48. The method of claim 27 , further comprising registering a user device or user application, assigning at least one threshold level for routing information to the user on the registered user device or user application, the threshold levels specifying the level of interest in the information, and automatically changing the threshold levels based on the level of interest in the information.
49. The method of claim 27 , further comprising filtering the information based on the selected topic and level of interest in the selected topic, and delivering the filtered information to the user on a user device or user application.
50. The method of claim 27 , further comprising filtering the information, based on the selected topic and level of interest in the selected topic, and delivering the filtered information to the user on a client system having an embedded microserver.
51. The method of claim 27 , further comprising filtering the information based on the selected topic and level of interest in the selected topic, delivering the filtered information to the user on a client system having an embedded microserver, and facilitating the user to reply to the filtered information using the embedded microserver.
52. A method comprising:
monitoring and detecting publication of information in a network;
organizing the detected information into a set of topics;
facilitating a user to persistently subscribe to information based on at least one topic selected from among the set of topics;
routing information to the user based on the organization and subscription; and
delivering the information to the user on at least one of a client system, a device, or an application, wherein the information already has been delivered to other users.
53. The method of claim 52 , further comprising organizing information into a set of topics including who, what, when, or where.
54. The method of claim 52 , further comprising organizing information into a set of topics including names, times, time frames, dates, places, and information categories.
55. The method of claim 52 , further comprising organizing information into a set of topics including hyponyms, hypernyms, or synonyms of names, times, time frames, dates, places, and information categories.
56. The method of claim 52 , further comprising organizing information into a set of topics, based on the semantics or linguistic relationships of terms in the information.
57. The method of claim 52 , further comprising organizing information into a set of topics, the information including events, non-events, alerts, messages, queries, data, data content, patterns, streams, or queues.
58. The method of claim 52 , further comprising organizing information into a set of topics, the information including video, audio, multimedia, or streaming media.
59. The method of claim 52 , further comprising organizing information into a set of topics, the information including English, Spanish, Japanese, Swedish, Chinese, Hebrew, Swahili, Portuguese, Farsi or Afrikaans.
60. The method of claim 52 , further comprising organizing information into a set of topics including who, what, when, or where and assigning extensible markup language (XML) tags to information, based on the who, what, when, or where topics.
61. The method of claim 52 , further comprising facilitating a user to persistently subscribe to a web resource, based on a universal resource locator (URL), and to specify a level of interest in the web resource.
62. The method of claim 52 , further comprising facilitating a user to persistently subscribe to a web user, based on an email address, a name or a location, and to specify a level of interest in the web user.
63. The method of claim 52 , further comprising facilitating a user to persistently subscribe to a user's presence, based on an email address, a name or a location, and to specify a level of interest in the web user.
64. The method of claim 52 , further comprising facilitating a user to persistently subscribe to information based on at least one hyponym, hypernym, or synonym of a topic selected from among the set of topics and to specify a level of interest in the selected hyponym, hypernym, or synonym.
65. The method of claim 52 , further comprising routing information to the user on a user device or user application, based on the selected topic and level of interest in the selected topic.
66. The method of claim 52 , further comprising registering a user device or user application and routing information to the user on the registered user device or user application, based on the selected topic and level of interest in the selected topic.
67. The method of claim 52 , further comprising registering a pager, cellular telephone, email, instant messenger, purchase order system, microserver-equipped client computer, facsimile machine, web browser, or spreadsheet and routing information to the user on the registered pager, cellular telephone, email, instant messenger, purchase order system, microserver-equipped client computer, facsimile machine, web browser, or spreadsheet, based on the selected topic and level of interest in the selected topic.
68. The method of claim 52 , further comprising registering a user device or user application and facilitating a user to establish preferences for routing information to the user on the registered user device or user application, the preferences specifying the level of interest in the selected topic.
69. The method of claim 52 , further comprising registering a user device or user application and facilitating a user to establish preferences for routing information to the user on the registered user device or user application, the preferences specifying a level of interest in the registered user device or user application.
70. The method of claim 52 , further comprising facilitating a user to register a user device or user application and facilitating a user to establish preferences for routing information to the user on the registered user device or user application, the preferences specifying a level of interest in the registered user device or user application, the preferences specifying the level of interest in the selected topic, the preferences specifying a time, date, or time frame.
71. The method of claim 52 , further comprising registering at least one user device or user application and establishing preferences for routing information to the user on the registered user device or user application, the preferences specifying the level of interest in the selected topic.
72. The method of claim 52 , further comprising registering at least one user device or user application, establishing at least one preference for routing information to the user on the registered user device or user application, the preferences specifying the level of interest in the information, and automatically changing the preferences based on the level of interest in the information.
73. The method of claim 52 , further comprising registering a user device or user application, assigning at least one threshold level for routing information to the user on the registered user device or user application, the threshold levels specifying the level of interest in the information, and automatically changing the threshold levels based on the level of interest in the information.
74. The method of claim 52 , further comprising filtering the information based on the selected topic and level of interest in the selected topic, and delivering the filtered information to the user on a user device or user application.
75. The method of claim 52 , further comprising filtering the information, based on the selected topic and level of interest in the selected topic, and delivering the filtered information to the user on a client system having an embedded microserver.
76. The method of claim 52 , further comprising filtering the information based on the selected topic and level of interest in the selected topic, delivering the filtered information to the user on a client system having an embedded microserver, and facilitating the user to reply to the filtered information using the embedded microserver
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/098,371 US20080189388A1 (en) | 2000-07-14 | 2008-04-04 | Delivery of any type of information to anyone anytime anywhere |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/615,663 US7379963B1 (en) | 2000-07-14 | 2000-07-14 | Delivery of any type of information to anyone anytime anywhere |
US12/098,371 US20080189388A1 (en) | 2000-07-14 | 2008-04-04 | Delivery of any type of information to anyone anytime anywhere |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/615,663 Continuation US7379963B1 (en) | 2000-07-14 | 2000-07-14 | Delivery of any type of information to anyone anytime anywhere |
Publications (1)
Publication Number | Publication Date |
---|---|
US20080189388A1 true US20080189388A1 (en) | 2008-08-07 |
Family
ID=24466329
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/615,663 Expired - Lifetime US7379963B1 (en) | 2000-07-14 | 2000-07-14 | Delivery of any type of information to anyone anytime anywhere |
US12/098,371 Abandoned US20080189388A1 (en) | 2000-07-14 | 2008-04-04 | Delivery of any type of information to anyone anytime anywhere |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/615,663 Expired - Lifetime US7379963B1 (en) | 2000-07-14 | 2000-07-14 | Delivery of any type of information to anyone anytime anywhere |
Country Status (3)
Country | Link |
---|---|
US (2) | US7379963B1 (en) |
AU (1) | AU2001288217A1 (en) |
WO (1) | WO2002007009A1 (en) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030236856A1 (en) * | 2002-06-01 | 2003-12-25 | International Business Machines Corporation | Method and system for information enrichment using distributed computer systems |
US20040003048A1 (en) * | 2002-03-20 | 2004-01-01 | Bellsouth Intellectual Property Corporation | Outbound notification using customer profile information |
US20070191034A1 (en) * | 2006-01-27 | 2007-08-16 | Acer Inc. | Method, device and system for mobile information services |
US20090125593A1 (en) * | 2007-11-08 | 2009-05-14 | Tanel Hiir | Message Delivery System and Method |
US20090265369A1 (en) * | 2008-04-19 | 2009-10-22 | David Hyman | Playable music library building in a streaming media environment |
US20100049815A1 (en) * | 2008-08-23 | 2010-02-25 | Mobile Tribe Llc | Programmable and Extensible Multi-Social Network Alert System |
US20100070607A1 (en) * | 2008-09-16 | 2010-03-18 | Ingboo Inc. | Scalable Method for Contextual Information Updates and Notification |
US20100169424A1 (en) * | 2005-03-24 | 2010-07-01 | Telefonaktiebolaget Lm Ericsson (Pubi) | Method and arrangment in a communication system for delivering messages to a recipient |
US20120005221A1 (en) * | 2010-06-30 | 2012-01-05 | Microsoft Corporation | Extracting facts from social network messages |
US20150120854A1 (en) * | 2013-10-28 | 2015-04-30 | International Business Machines Corporation | Subscriber based priority of messages in a publisher-subscriber domain |
US20170060869A1 (en) * | 2010-07-09 | 2017-03-02 | Iii Holdings 1, Llc | Methods and System for Generating Content Delivery URLs from Business Cards |
US20170134516A1 (en) * | 2015-11-11 | 2017-05-11 | Facebook, Inc. | Sending notifications as a service |
US20170244657A1 (en) * | 2016-02-22 | 2017-08-24 | International Business Machines Corporation | Message delivery in a message system |
WO2019112577A1 (en) * | 2017-12-06 | 2019-06-13 | Rovi Guides, Inc | Systems and methods for bandwidth consumption management |
US20220103439A1 (en) * | 2020-09-28 | 2022-03-31 | Jpmorgan Chase Bank, N.A. | Method and system for facilitating an audit of event-based business processes |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020087630A1 (en) * | 2000-10-20 | 2002-07-04 | Jonathan Wu | Enhanced information and presence service |
US20030088793A1 (en) * | 2001-11-06 | 2003-05-08 | Parry Travis J. | Managing customized menus across multiple imaging devices |
US7386528B2 (en) | 2002-05-31 | 2008-06-10 | American Express Travel Related Services Company, Inc. | System and method for acquisition, assimilation and storage of information |
US7941542B2 (en) | 2002-09-06 | 2011-05-10 | Oracle International Corporation | Methods and apparatus for maintaining application execution over an intermittent network connection |
US7912899B2 (en) * | 2002-09-06 | 2011-03-22 | Oracle International Corporation | Method for selectively sending a notification to an instant messaging device |
US7412481B2 (en) | 2002-09-16 | 2008-08-12 | Oracle International Corporation | Method and apparatus for distributed rule evaluation in a near real-time business intelligence system |
US8165993B2 (en) | 2002-09-06 | 2012-04-24 | Oracle International Corporation | Business intelligence system with interface that provides for immediate user action |
US7899879B2 (en) | 2002-09-06 | 2011-03-01 | Oracle International Corporation | Method and apparatus for a report cache in a near real-time business intelligence system |
US8255454B2 (en) | 2002-09-06 | 2012-08-28 | Oracle International Corporation | Method and apparatus for a multiplexed active data window in a near real-time business intelligence system |
US7945846B2 (en) * | 2002-09-06 | 2011-05-17 | Oracle International Corporation | Application-specific personalization for data display |
US7401158B2 (en) | 2002-09-16 | 2008-07-15 | Oracle International Corporation | Apparatus and method for instant messaging collaboration |
US8108488B2 (en) | 2002-11-18 | 2012-01-31 | Jackbe Corporation | System and method for reducing bandwidth requirements for remote applications by utilizing client processing power |
US20050015355A1 (en) * | 2003-07-16 | 2005-01-20 | Apple Computer, Inc. | Method and system for data sharing between application programs |
US20090019468A1 (en) * | 2005-03-09 | 2009-01-15 | Vvond, Llc | Access control of media services over an open network |
US8219635B2 (en) * | 2005-03-09 | 2012-07-10 | Vudu, Inc. | Continuous data feeding in a distributed environment |
US7698451B2 (en) * | 2005-03-09 | 2010-04-13 | Vudu, Inc. | Method and apparatus for instant playback of a movie title |
US20090025046A1 (en) * | 2005-03-09 | 2009-01-22 | Wond, Llc | Hybrid architecture for media services |
US20080022343A1 (en) | 2006-07-24 | 2008-01-24 | Vvond, Inc. | Multiple audio streams |
US7191215B2 (en) * | 2005-03-09 | 2007-03-13 | Marquee, Inc. | Method and system for providing instantaneous media-on-demand services by transmitting contents in pieces from client machines |
US8904463B2 (en) * | 2005-03-09 | 2014-12-02 | Vudu, Inc. | Live video broadcasting on distributed networks |
US9176955B2 (en) * | 2005-03-09 | 2015-11-03 | Vvond, Inc. | Method and apparatus for sharing media files among network nodes |
US7937379B2 (en) * | 2005-03-09 | 2011-05-03 | Vudu, Inc. | Fragmentation of a file for instant access |
US8099511B1 (en) | 2005-06-11 | 2012-01-17 | Vudu, Inc. | Instantaneous media-on-demand |
US7640263B2 (en) * | 2005-06-20 | 2009-12-29 | Microsoft Corporation | Queued system event notification and maintenance |
US8296812B1 (en) | 2006-09-01 | 2012-10-23 | Vudu, Inc. | Streaming video using erasure encoding |
US20090024404A1 (en) * | 2007-07-18 | 2009-01-22 | Verizon Laboratories Inc. | Enhanced real estate listings via multiple devices |
KR101458205B1 (en) * | 2007-09-17 | 2014-11-12 | 삼성전자주식회사 | Apparatus and method for receiving and transmitting broadcast service in mobile broadcasting system |
US8335762B2 (en) | 2008-10-06 | 2012-12-18 | Microsoft Corporation | Resource tracking |
GB2496681A (en) * | 2011-11-21 | 2013-05-22 | Push Technology Ltd | A publish/subscribe system with time-sensitive message delivery to subscribers |
US20140143434A1 (en) * | 2012-11-12 | 2014-05-22 | Calgary Scientific Inc. | Framework to notify and invite users to join a collaborative session |
US9847961B2 (en) * | 2013-02-25 | 2017-12-19 | Qualcomm Incorporated | Automatic IoT device social network expansion |
US9658994B2 (en) * | 2013-05-20 | 2017-05-23 | Google Inc. | Rendering supplemental information concerning a scheduled event based on an identified entity in media content |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6035339A (en) * | 1997-03-13 | 2000-03-07 | At&T Corporation | Network information delivery system for delivering information based on end user terminal requirements |
US6112246A (en) * | 1998-10-22 | 2000-08-29 | Horbal; Mark T. | System and method for accessing information from a remote device and providing the information to a client workstation |
US6163795A (en) * | 1994-01-14 | 2000-12-19 | Elonex Plc | Server for notifying items of interest and delivering locally accessed video in a WAN to client stations on demand |
US6178424B1 (en) * | 1997-05-14 | 2001-01-23 | Nec Corporation | Information distributing system and storage medium recorded with a program for distributing information |
US6182066B1 (en) * | 1997-11-26 | 2001-01-30 | International Business Machines Corp. | Category processing of query topics and electronic document content topics |
US6349307B1 (en) * | 1998-12-28 | 2002-02-19 | U.S. Philips Corporation | Cooperative topical servers with automatic prefiltering and routing |
US6457046B1 (en) * | 1997-06-26 | 2002-09-24 | Fujitsu Limited | Information providing apparatus for server and computer-readable recording medium storing information providing program for server |
US6578025B1 (en) * | 1999-06-11 | 2003-06-10 | Abuzz Technologies, Inc. | Method and apparatus for distributing information to users |
US6581207B1 (en) * | 1998-06-30 | 2003-06-17 | Kabushiki Kaisha Toshiba | Information filtering system and method |
US6671715B1 (en) * | 2000-01-21 | 2003-12-30 | Microstrategy, Inc. | System and method for automatic, real-time delivery of personalized informational and transactional data to users via high throughput content delivery device |
US6725460B1 (en) * | 1998-01-31 | 2004-04-20 | Ricoh Company, Ltd. | Multi-media data automatic delivery system |
US6910070B1 (en) * | 2000-01-24 | 2005-06-21 | Oracle International Corporation | Methods and systems for asynchronous notification of database events |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5442778A (en) | 1991-11-12 | 1995-08-15 | Xerox Corporation | Scatter-gather: a cluster-based method and apparatus for browsing large document collections |
US5530852A (en) | 1994-12-20 | 1996-06-25 | Sun Microsystems, Inc. | Method for extracting profiles and topics from a first file written in a first markup language and generating files in different markup languages containing the profiles and topics for use in accessing data described by the profiles and topics |
US5649186A (en) | 1995-08-07 | 1997-07-15 | Silicon Graphics Incorporated | System and method for a computer-based dynamic information clipping service |
US5801957A (en) | 1995-11-01 | 1998-09-01 | Digital Equipment Corporation | Implicit tree-mapping technique |
US5937163A (en) | 1996-03-26 | 1999-08-10 | Industrial Technology Research Institute | Method and system at a host node for hierarchically organizing the links visited by a world wide web browser executing at the host node |
US5987460A (en) | 1996-07-05 | 1999-11-16 | Hitachi, Ltd. | Document retrieval-assisting method and system for the same and document retrieval service using the same with document frequency and term frequency |
JP3655714B2 (en) | 1996-11-15 | 2005-06-02 | 株式会社ニューズウオッチ | Information filtering apparatus and recording medium |
US5933849A (en) | 1997-04-10 | 1999-08-03 | At&T Corp | Scalable distributed caching system and method |
US6167438A (en) | 1997-05-22 | 2000-12-26 | Trustees Of Boston University | Method and system for distributed caching, prefetching and replication |
SE510048C3 (en) | 1997-07-24 | 1999-05-03 | Mirror Image Internet Ab | Internet caching system |
US6745237B1 (en) * | 1998-01-15 | 2004-06-01 | Mci Communications Corporation | Method and apparatus for managing delivery of multimedia content in a communications system |
-
2000
- 2000-07-14 US US09/615,663 patent/US7379963B1/en not_active Expired - Lifetime
-
2001
- 2001-06-28 AU AU2001288217A patent/AU2001288217A1/en not_active Abandoned
- 2001-06-28 WO PCT/US2001/020720 patent/WO2002007009A1/en active Application Filing
-
2008
- 2008-04-04 US US12/098,371 patent/US20080189388A1/en not_active Abandoned
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6163795A (en) * | 1994-01-14 | 2000-12-19 | Elonex Plc | Server for notifying items of interest and delivering locally accessed video in a WAN to client stations on demand |
US6035339A (en) * | 1997-03-13 | 2000-03-07 | At&T Corporation | Network information delivery system for delivering information based on end user terminal requirements |
US6178424B1 (en) * | 1997-05-14 | 2001-01-23 | Nec Corporation | Information distributing system and storage medium recorded with a program for distributing information |
US6457046B1 (en) * | 1997-06-26 | 2002-09-24 | Fujitsu Limited | Information providing apparatus for server and computer-readable recording medium storing information providing program for server |
US6182066B1 (en) * | 1997-11-26 | 2001-01-30 | International Business Machines Corp. | Category processing of query topics and electronic document content topics |
US6725460B1 (en) * | 1998-01-31 | 2004-04-20 | Ricoh Company, Ltd. | Multi-media data automatic delivery system |
US6581207B1 (en) * | 1998-06-30 | 2003-06-17 | Kabushiki Kaisha Toshiba | Information filtering system and method |
US6112246A (en) * | 1998-10-22 | 2000-08-29 | Horbal; Mark T. | System and method for accessing information from a remote device and providing the information to a client workstation |
US6349307B1 (en) * | 1998-12-28 | 2002-02-19 | U.S. Philips Corporation | Cooperative topical servers with automatic prefiltering and routing |
US6578025B1 (en) * | 1999-06-11 | 2003-06-10 | Abuzz Technologies, Inc. | Method and apparatus for distributing information to users |
US6671715B1 (en) * | 2000-01-21 | 2003-12-30 | Microstrategy, Inc. | System and method for automatic, real-time delivery of personalized informational and transactional data to users via high throughput content delivery device |
US6910070B1 (en) * | 2000-01-24 | 2005-06-21 | Oracle International Corporation | Methods and systems for asynchronous notification of database events |
Cited By (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040003048A1 (en) * | 2002-03-20 | 2004-01-01 | Bellsouth Intellectual Property Corporation | Outbound notification using customer profile information |
US7996481B2 (en) * | 2002-03-20 | 2011-08-09 | At&T Intellectual Property I, L.P. | Outbound notification using customer profile information |
US20030236856A1 (en) * | 2002-06-01 | 2003-12-25 | International Business Machines Corporation | Method and system for information enrichment using distributed computer systems |
US8478825B2 (en) * | 2005-03-24 | 2013-07-02 | Telefonaktiebolaget L M Ericsson (Publ) | Method and arrangment in a communication system for delivering messages to a recipient |
US20100169424A1 (en) * | 2005-03-24 | 2010-07-01 | Telefonaktiebolaget Lm Ericsson (Pubi) | Method and arrangment in a communication system for delivering messages to a recipient |
US20070191034A1 (en) * | 2006-01-27 | 2007-08-16 | Acer Inc. | Method, device and system for mobile information services |
US20090125593A1 (en) * | 2007-11-08 | 2009-05-14 | Tanel Hiir | Message Delivery System and Method |
US10298532B2 (en) | 2007-11-08 | 2019-05-21 | Skype | Message delivery system and method |
US9756004B2 (en) * | 2007-11-08 | 2017-09-05 | Skype | Message delivery system and method |
US20090265369A1 (en) * | 2008-04-19 | 2009-10-22 | David Hyman | Playable music library building in a streaming media environment |
US8924390B2 (en) * | 2008-04-19 | 2014-12-30 | Beats Music, Llc | Playable music library building in a streaming media environment |
WO2010025084A1 (en) * | 2008-08-23 | 2010-03-04 | Mobile Tribe Llc | Programmable and extensible multi-social network alert system |
US20100049815A1 (en) * | 2008-08-23 | 2010-02-25 | Mobile Tribe Llc | Programmable and Extensible Multi-Social Network Alert System |
US20100070607A1 (en) * | 2008-09-16 | 2010-03-18 | Ingboo Inc. | Scalable Method for Contextual Information Updates and Notification |
US8775400B2 (en) * | 2010-06-30 | 2014-07-08 | Microsoft Corporation | Extracting facts from social network messages |
US20120005221A1 (en) * | 2010-06-30 | 2012-01-05 | Microsoft Corporation | Extracting facts from social network messages |
US20170060869A1 (en) * | 2010-07-09 | 2017-03-02 | Iii Holdings 1, Llc | Methods and System for Generating Content Delivery URLs from Business Cards |
US20150120852A1 (en) * | 2013-10-28 | 2015-04-30 | International Business Machines Corporation | Subscriber based priority of messages in a publisher-subscriber domain |
US9497288B2 (en) * | 2013-10-28 | 2016-11-15 | International Business Machines Corporation | Subscriber based priority of messages in a publisher-subscriber domain |
US9503548B2 (en) * | 2013-10-28 | 2016-11-22 | International Business Machines Corporation | Subscriber based priority of messages in a publisher-subscriber domain |
US20150120854A1 (en) * | 2013-10-28 | 2015-04-30 | International Business Machines Corporation | Subscriber based priority of messages in a publisher-subscriber domain |
US10375188B2 (en) * | 2015-11-11 | 2019-08-06 | Facebook, Inc. | Sending notifications as a service |
US20170134516A1 (en) * | 2015-11-11 | 2017-05-11 | Facebook, Inc. | Sending notifications as a service |
US10225219B2 (en) * | 2016-02-22 | 2019-03-05 | International Business Machines Corporation | Message delivery in a message system |
US10257142B2 (en) * | 2016-02-22 | 2019-04-09 | International Business Machines Corporation | Message delivery in a message system |
US20170244657A1 (en) * | 2016-02-22 | 2017-08-24 | International Business Machines Corporation | Message delivery in a message system |
WO2019112577A1 (en) * | 2017-12-06 | 2019-06-13 | Rovi Guides, Inc | Systems and methods for bandwidth consumption management |
US11218753B2 (en) * | 2017-12-06 | 2022-01-04 | Rovi Guides, Inc. | Systems and methods for bandwidth consumption management |
US11528520B2 (en) | 2017-12-06 | 2022-12-13 | Rovi Guides, Inc. | Systems and methods for bandwidth consumption management |
US20220103439A1 (en) * | 2020-09-28 | 2022-03-31 | Jpmorgan Chase Bank, N.A. | Method and system for facilitating an audit of event-based business processes |
US11757735B2 (en) * | 2020-09-28 | 2023-09-12 | Jpmorgan Chase Bank, N.A. | Method and system for facilitating an audit of event-based business processes |
Also Published As
Publication number | Publication date |
---|---|
WO2002007009A1 (en) | 2002-01-24 |
AU2001288217A1 (en) | 2002-01-30 |
US7379963B1 (en) | 2008-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7379963B1 (en) | Delivery of any type of information to anyone anytime anywhere | |
US11682051B1 (en) | System and method for targeting information based on message content in a reply | |
US7127473B2 (en) | Methods and systems for providing supplemental contextual content | |
US7321887B2 (en) | Enriching information streams with contextual content | |
US7725508B2 (en) | Methods and systems for information capture and retrieval | |
US7346668B2 (en) | Dynamic presentation of personalized content | |
US8812515B1 (en) | Processing contact information | |
KR100738871B1 (en) | Method and system for continuous interactive communication in an electronic network | |
US8751578B2 (en) | Providing an answer to a question from a social network site using a separate messaging site | |
US8275839B2 (en) | Methods and systems for processing email messages | |
US7707142B1 (en) | Methods and systems for performing an offline search | |
US20060168054A1 (en) | Messaging method and apparatus | |
US20040003097A1 (en) | Content delivery system | |
US20080133593A1 (en) | Automatic playlist generation in correlation with local events | |
US20160092576A1 (en) | Association- and perspective-based content item recommendations | |
US7412708B1 (en) | Methods and systems for capturing information | |
JPH113304A (en) | Improved type discussion technique system | |
US20140108621A1 (en) | System and method for internet services aggregation | |
US20110045807A1 (en) | Electronic document callback triggers | |
Shapira et al. | ePaper: A personalized mobile newspaper | |
US20110045808A1 (en) | Dynamic callback triggers for an electronic document | |
WO2001027783A1 (en) | System and methods for accessing internet information using internet appliances | |
US20110047122A1 (en) | Electronic document callback trigger creation | |
Yeh | Understanding Taiwanese mobile information access behavior |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |