|Publication number||US20050108747 A1|
|Application number||US 11/021,747|
|Publication date||May 19, 2005|
|Filing date||Dec 23, 2004|
|Priority date||Dec 16, 1999|
|Also published as||US6694352, US20040111747|
|Publication number||021747, 11021747, US 2005/0108747 A1, US 2005/108747 A1, US 20050108747 A1, US 20050108747A1, US 2005108747 A1, US 2005108747A1, US-A1-20050108747, US-A1-2005108747, US2005/0108747A1, US2005/108747A1, US20050108747 A1, US20050108747A1, US2005108747 A1, US2005108747A1|
|Original Assignee||Microsoft Corporation|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (32), Referenced by (13), Classifications (9), Legal Events (1)|
|External Links: USPTO, USPTO Assignment, Espacenet|
This application is a continuation of and claims priority to both U.S. patent application Ser. No. 10/726,126, filed on Dec. 2, 2003 which is a continuation of and claims priority to U.S. patent application Ser. No. 09/465,533, filed on Dec. 16, 1999, the disclosures of which are incorporated by reference herein.
The present invention relates to interactive entertainment systems, such as interactive television or interactive computing network systems, and to electronic program guides which operate in conjunction with these systems. In particular, the invention relates to methods and systems for notifying clients concerning electronic presentations that are being or are about to be broadcast.
Television viewers are very familiar with printed programming schedules that appear in daily newspapers or weekly magazines, such as TV Guide®. The printed program guide lists the various television shows in relation to their scheduled viewing time on a day-to-day basis.
Cable TV systems often include a channel with a video broadcast of the printed program guide. The cable channel is dedicated to displaying listings of programs available on the different available channels. The listings are commonly arranged in a grid. Each column of the grid represents a particular time slot, such as 4:00 p.m. to 4:30 p.m. Each row represents a particular broadcast or cable channel, such as ABC, PBS, or ESPN. The various scheduled programs or shows are arranged within the rows and columns, indicating the channels and times at which they can be found. The grid is continuously scrolled vertically so that a viewer can scan a continuously refreshing set of programs within three or four time slots.
Newer, interactive cable distribution systems feature electronic program guides (EPGs) which function somewhat similar to the broadcast program listing channels described above. Rather than scrolling automatically, however, an EPG allows a viewer to use a remote control device to scroll as desired both horizontally and vertically through a program grid. This functionality utilizes the two-way communications capabilities of interactive cable systems.
The EPG is typically implemented in software which runs on a set-top box (STB) connected between a TV and a cable system home entry line. When scrolling to a new column or row, the set-top box inserts the appropriate programming information into each new row or column. This information is either cached at the STB, or requested from the cable system's headend.
Printed programming schedules, video broadcasts of programming schedules and EPGs all suffer a drawback in that a user who is interested in viewing a particular program must be diligent in monitoring for the program of interest so that they do not miss it. For example, a user must physically review printed or broadcast programming schedules, as well as EPGs in order to find a particular program of interest and the time when it is going to be broadcast. They must then be diligent in remembering when the show is being broadcast so that they can view it. Typically, and because programming guides change regularly (e.g. weekly or monthly), users must continuously consult the new programming guides to see what shows have been scheduled for subsequent time periods. Having to regularly and diligently consult programming guides can be inconvenient for users and can take them away from activities where their time might be more productively spent.
This problem is not, however, confined to the world of television. Specifically, there are other media over which “programs” of interest or, more broadly, “electronic presentations” are broadcast. For example, electronic presentations can be broadcast over a network such as the Internet and viewed on client viewing devices such as personal computers. An example of such an electronic presentation includes, without limitation, streaming multimedia broadcasts (e.g. audio, video, graphical, etc.). With a wide variety of sources of electronic presentations, it can become a daunting task for a user to sift through all of the potential presentations to find the ones that they want to view.
In addition, many times a user will want only to view certain events within a particular presentation and not the whole presentation itself. Yet, in order to view the events of interest, a user must typically monitor the entire presentation or at least a large portion of it. For example, a user might only be interested, when watching a football game, in viewing third downs, touchdowns, half time and end-of-game shows. As another example, a user might be interested in a particular streaming multimedia conference of CEOs of high tech companies, but may only want to hear Bill Gates speak. If the user does not know specifically when Bill Gates is to speak, then they may have to watch a good portion of the presentation. As can be appreciated, having to watch an entire presentation in order to view only those portions of particular interest is wasteful.
Accordingly, this invention arose out of concerns associated with improving the user experience insofar as being able to efficiently select and view one or more electronic presentations.
Systems for enabling users to register for notifications pertaining to electronic presentations of interest are described. In one embodiment, a notification system is configured to receive source information from at least one source of an electronic presentation. The source information describes one or more aspects of the electronic presentation as it is being or is about to be broadcast by the source. The system evaluates the source information against user information that gives an indication of electronic presentations that might be of particular interest to a particular user. The system generates a notification to one or more users if, as a result of an evaluation of the source information against the user information, it appears that the one or more users would be interested in an electronic presentation.
Exemplary Network Structure
Principles of the invention described below can be implemented in connection with any suitable network that can enable source and user information to be collected and processed as described below. It is to be appreciated that the described embodiment constitutes but one example and is not intended to limit the invention to the specifically illustrated architecture.
In the context of this document, the terms “client” and “client processing device” are intended to include, without limitation, any form of television set, enhanced television set (e.g. interactive TV or set-top box), computer or personal computer, or any other type of computing device such as a hand-held machine. The term “user” refers to an individual or entity that uses a client processing device. The term “source” is intended to include, without limitation, any source that can produce an electronic presentation that can be run or viewed on any of the exemplary client processing devices. In addition, the term “electronic presentation” is intended to include any and all types of electronic presentations that are capable of being run or displayed on the exemplary client processing devices described above. Some examples include, among others, television programs, multimedia streaming presentations, and the like.
Client processing devices 12 are configured to generate user information that is provided by a user. The user information gives an indication of electronic presentations that might be of particular interest to a particular user. The user information might also be gathered by consulting a database that contains user information such as user occupation, client processing device location, and the like. The user information can include a wide variety of information such as the titles or names of particular electronic presentations, as well as key words or subjects that might be of interest to a particular user. For example, a user on a client device might be interested in viewing any electronic presentations that discuss or are related to Bill Gates. In this instance the user information might just include “Bill Gates” as a subject. The user might alternately be interested in electronic presentations that deal only with Beluga whales. In this instance the user information might include “Beluga whales” as a subject. Alternately, and in the case of passively gathered user information (that is, user information that is not directly input by a user for the purpose of determining desirable electronic presentations), there might be a database that contains information about various users or client device locations. For example, a user might be a software developer and might be interested in electronic presentations having to do with developer conferences. Further, it might be known that a certain client device is located in the Green Bay Wis. area. In that case, the user of the client device might be interested in receiving notifications about Packer games. The user information, whether provided by the user or ascertained about the user, is collected and managed by notification server 14 in one or more databases 18.
As sources 16 are about to begin broadcasting, or during broadcasting of their particular electronic presentations, source information about the respective electronic presentations is sent to and received by the notification server 14. The source information is preferably not the actual continuous play broadcast of the presentation, but rather describes one or more aspects of a particular “live” electronic presentation. This source information can be maintained in database 18 and used as the basis of a search of all of the registered user information. The notification server 14 evaluates the source information against the user information and generates a notification when it appears that an electronic presentation includes information of interest to a user. In the described embodiment, the source information includes so-called meta information which is essentially any type of information that relates to a particular electronic presentation. Meta information can have many forms. For example, meta information can include the title or name of a presentation and statements about the content of the presentation. Meta information can also include audio, visual, graphic or other types of information that can be derived from an electronic presentation. For example, scene changes in a particular electronic presentation can be detected and rendered into meta information that conveys the fact that a scene has changed. The meta information can also include captured images of the electronic broadcasts themselves. Other examples of meta information are given below. The meta information can be rendered or generated manually or automatically. In the manual case, an individual might observe a broadcast and type information about the broadcast into an encoder (e.g. “Bill Gates is speaking”). Alternately, various devices can be used to automatically collect meta information, e.g. screen-capturing software might intermittently capture images of a presentation and provide them to the server 14 for display for users who have registered for them.
In the described embodiment, notification server 14 receives both the user and the source information and, if appropriate, places it into a database 18. For example, in many instances it will be advantageous to place the source information in the database. In other instances, source information might just be cached during searching. From there, the notification server 14 is able to evaluate the source information and the user information and ascertain whether any of the users need to be notified about electronic presentations for which they have registered. An exemplary notification server and database are described in more detail in connection with
Exemplary Computer System
Computer 130 includes one or more processors or processing units 132, a system memory 134, and a bus 136 that couples various system components including the system memory 134 to processors 132. The bus 136 represents one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures. The system memory 134 includes read only memory (ROM) 138 and random access memory (RAM) 140. A basic input/output system (BIOS) 142, containing the basic routines that help to transfer information between elements within computer 130, such as during start-up, is stored in ROM 138.
Computer 130 further includes a hard disk drive 144 for reading from and writing to a hard disk (not shown), a magnetic disk drive 146 for reading from and writing to a removable magnetic disk 148, and an optical disk drive 150 for reading from or writing to a removable optical disk 152 such as a CD ROM or other optical media. The hard disk drive 144, magnetic disk drive 146, and optical disk drive 150 are connected to the bus 136 by an SCSI interface 154 or some other appropriate interface. The drives and their associated computer-readable media provide nonvolatile storage of computer-readable instructions, data structures, program modules and other data for computer 130. Although the exemplary environment described herein employs a hard disk, a removable magnetic disk 148 and a removable optical disk 152, it should be appreciated by those skilled in the art that other types of computer-readable media which can store data that is accessible by a computer, such as magnetic cassettes, flash memory cards, digital video disks, random access memories (RAMs), read only memories (ROMs), and the like, may also be used in the exemplary operating environment.
A number of program modules may be stored on the hard disk 144, magnetic disk 148, optical disk 152, ROM 138, or RAM 140, including an operating system 158, one or more application programs 160, other program modules 162, and program data 164. A user may enter commands and information into computer 130 through input devices such as a keyboard 166 and a pointing device 168. Other input devices (not shown) may include a microphone, joystick, game pad, satellite dish, scanner, or the like. These and other input devices are connected to the processing unit 132 through an interface 170 that is coupled to the bus 136. A monitor 172 or other type of display device is also connected to the bus 136 via an interface, such as a video adapter 174. In addition to the monitor, personal computers typically include other peripheral output devices (not shown) such as speakers and printers.
Computer 130 commonly operates in a networked environment using logical connections to one or more remote computers, such as a remote computer 176. The remote computer 176 may be another personal computer, a server, a router, a network PC, a peer device or other common network node, and typically includes many or all of the elements described above relative to computer 130, although only a memory storage device 178 has been illustrated in
When used in a LAN networking environment, computer 130 is connected to the local network 180 through a network interface or adapter 184. When used in a WAN networking environment, computer 130 typically includes a modem 186 or other means for establishing communications over the wide area network 182, such as the Internet. The modem 186, which may be internal or external, is connected to the bus 136 via a serial port interface 156. In a networked environment, program modules depicted relative to the personal computer 130, or portions thereof, may be stored in the remote memory storage device. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers may be used.
Generally, the data processors of computer 130 are programmed by means of instructions stored at different times in the various computer-readable storage media of the computer. Programs and operating systems are typically distributed, for example, on floppy disks or CD-ROMs. From there, they are installed or loaded into the secondary memory of a computer. At execution, they are loaded at least partially into the computer's primary electronic memory. The invention described herein includes these and other various types of computer-readable storage media when such media contain instructions or programs for implementing the steps described below in conjunction with a microprocessor or other data processor. The invention also includes the computer itself when programmed according to the methods and techniques described below.
For purposes of illustration, programs and other executable program components such as the operating system are illustrated herein as discrete blocks, although it is recognized that such programs and components reside at various times in different storage components of the computer, and are executed by the data processor(s) of the computer.
Encoders and Notification Server
It will be appreciated that encoder 26 can be a separate, non-integral component of the source. Encoder 26 receives live content or presentations in the form of different media streams 17. Encoders 26 can be dedicated media servers, or alternatively other more general-purpose computer systems. These media streams 17 can be individual media streams (e.g., audio, video, graphical, etc.), or alternatively can be composite media streams including two or more of such individual streams. The media streams 17 can be provided to the encoders on a “live” basis from other data source components through dedicated communications channels or through the Internet itself. The encoder can also be a human being who is observing an electronic presentation and rendering meta information about the presentation.
Encoders 26 coordinate the streaming of the live content to other components on the network that request the content or notifications thereof, such as client processing device 12. It is to be appreciated that although the media streams are referred to as being “live”, there may be a delay (e.g., between one second and thirty seconds) between the time of the actual event and the time the media streams reach the encoder(s).
There are various standards for streaming media content and composite media streams. “Advanced Streaming Format” (ASF) is an example of such a standard, including both accepted versions of the standard and proposed standards for future adoption. ASF specifies the way in which multimedia content is stored, streamed, and presented by the tools, servers, and clients of various multimedia vendors. ASF provides benefits such as local and network playback, extensible media types, component download, scalable media types, prioritization of streams, multiple language support, environment independence, rich inter-stream relationships, and expandability. Further details about ASF are available from Microsoft Corporation of Redmond, Wash.
Encoders 26 can transmit any type of presentation over the network. This includes the source information that is used by the notification server 14. Examples of such presentations include audio/video presentations (e.g., television broadcasts or presentations from a “NetShow™” server (available from Microsoft Corp. of Redmond, Wash.)), video-only presentations, audio-only presentations, graphical or animated presentations, etc.
Registration interface 20 is configured, in this example, to enable collection of both user information and source information. The collected user information is stored in database 18 in a user information database portion 28 that can be designated for holding only user information. The source information is collected and can be stored in database 18 in a live content portion 30. The live content portion 30 holds all of the source information that might be associated with a particular electronic presentation.
Analysis/Search engine 22 performs all of the analysis and searching that is necessary to enable appropriate notifications to be generated and sent to a user. For example, as meta information arrives from one or more of the sources 16, the database 18 is updated and a search is conducted to identify all of the users, if any, who have registered for notifications. If a particular user is found to have registered for a notification when source information of a particular type is detected, then an appropriate notification is generated and sent to the user or client processing device that requested the notification.
Exemplary Client Information Database
The user information database enables a user to register for notifications for different electronic presentations that might be broadcast by one or more sources, and/or notifications about particular events that might occur within one or more electronic presentations.
The client ID field 202 holds the identification of each client processing device or user. The identification is used when a notification is to be sent to a user. The identification can be a URL, email address, or any other suitable type of identification that enables notification server 14 to send a notification to a particular client processing device or user. In the present example, there are four users or clients who have registered for notifications. The clients are numbered 1 through 4.
The title field 204 holds a title of the electronic presentation that has been indicated by a user to be of interest. In the present example, clients or users 1, 2 and 4 have registered for notifications regarding specific titled electronic presentations. Specifically, client of user 1 has registered for notifications regarding the Microsoft company meeting; client or user 2 has registered for notifications regarding the Seahawks football game; and client or user 4 has registered for notifications regarding the MTV Countdown of popular songs. Client or user 3 has not registered for any notifications that are associated with a particular titled electronic presentation. A good reason for this is that client or user 3 might not know the title of a specific electronic presentation that contains information of interest, as will become apparent just below.
The subject field 206 holds the subject of an electronic presentation that may be of interest to a user. The subject field gives a user the flexibility to register for notifications for certain subjects while not necessarily requiring the user to know the specific title of the electronic presentation. In the present example, client or user 3 has registered for notifications associated with the subject of an electronic presentation. Client 3 has registered for notifications regarding any electronic presentation that deals with “Beluga whales”. The electronic presentations can come from any source. By registering for notifications dealing with a subject and not specifically a titled presentation, client 3 will be notified when Beluga whales are the topic on any of the sources monitored by the notification server.
The descriptive information field 208 holds information that has been specified by a user as being of interest to the user. By entering specific information in the descriptive information field, a user will be notified when the specified events occur within the specified electronic presentation. This can be in addition to an initial notification that the electronic presentation is being broadcast. For example, client or user 1 has registered for notifications regarding the Microsoft company meeting. When the Microsoft company meeting is broadcast, a user or client will typically be notified of the start of the meeting. In addition, client 1 has indicated that they are only interested in notifications when Steve Ballmer is talking. Thus, a notification will be generated to the client or user when Steve Ballmer is talking. Similarly, client 2 has registered for notifications regarding the Seahawks games. Client 2 is only interested, however, in notifications associated with the events described in the Descriptive Information field 208, i.e. first downs, touchdowns, halftime, and end of game. Accordingly, notification server 14 will monitor the meta information that is provided by the source of the Seahawks game and generate an appropriate notification to client or user 2 on the occurrence of the specified events. Client or user 4, while being interested in the MTV Countdown of popular songs, is only interested in the top two songs. Accordingly, client or user 4 has specified information in the Descriptive Information field 208 that will result in notifications only for the number 1 and 2 songs.
Exemplary Live Content Database
The name/title field 212 includes the name or title of the current electronic presentation that is being broadcast by a source. In the illustrated example, four different sources are being monitored for electronic broadcasts that include the Microsoft company meeting, Wild Planet, the American League Championship game, and the MTV Countdown. As these electronic presentations are being broadcast, meta information is regularly received by the notification server 14 that describes what is taking place during the broadcast. This information is used to continuously update the database so that client notifications can be sent in a timely manner.
The source field 214 identifies the sources from which the electronic presentations can be obtained.
The topic field 216 identifies the current topic of the electronic presentation. For example, the topic currently being discussed at the Microsoft company meeting is “Windows”. Similarly, the current topic of the Wild Planet show is “lions”.
The descriptive information field 218 includes information that describes the content of the corresponding presentation. This information can include one or more key words describing the presentation. For example, the descriptive information describing the Microsoft company meeting indicates that “Bill Gates is talking”. Similarly, the descriptive information for the Wild Planet broadcast indicates that “migration habits” and “hunting” are currently being discussed. The descriptive information can include any information that describes a current broadcast including a summary or abstract of the presentation, or a textual transcript of the presentation.
The data or information for descriptive information field 218 can be generated manually or automatically. Manual generation refers to an individual (e.g., the presentation author) creating the data. For example, the author may write a summary or a list of key words for the presentation and provide them to server 14 (either directly or via an encoder 26).
Automatic generation refers to one of the components, such as an encoder 26 or server 14, using any of a variety of mechanisms to generate data describing the presentation as the presentation occurs. For example, a conventional key word generation process may be employed to identify key words from the presentation. This may be carried out by an encoder 26, server 14, or some other component coupled to the network. By way of another example, closed captioning information may be used as the data, or a conventional speech-to-text conversion process may be used to convert audio data into text data.
The information maintained in the live content database 30 is used by analysis/search engine 22 (
Information regarding electronic presentations that satisfies any of the user-specified criteria is provided to the client processing device 12 of the user that placed the request. Such information may be the entire entry from database 30 (e.g. one or more of the row entries of
Information from each entry that satisfies the user criteria is provided to the user and, if multiple entries satisfy each criteria, then the user can select one or more presentations based on this information. Alternatively, server 14 may rank the entries based on how well they match the user criteria and return information for only the highest ranking entry (or entries) to the user.
Step 304 monitors one or more sources of electronic presentations. Monitoring can take place in any suitable way. In the described embodiment, monitoring takes place through the use of a network, such as the Internet, that connects the sources and one or more notifications servers together. In the illustrated example, source information is developed pertaining to the electronic presentations that are currently being broadcast (or are about to be broadcast) by the sources. The source information can be received directly from a source or, alternately, from an encoder that is associated with a source. Examples of the various types of source information that can be received are given above.
Step 306 determines whether any source information is received. In the described example, source information can be received when a broadcast is about to begin, as well as throughout the broadcast itself. The source information that is received during the source's broadcast of an electronic presentation can describe various events that can occur within a particular presentation. Examples of such events were given above in connection with
In this way, information that is generated before, during and concerning various electronic presentations from a number of different sources can be monitored. The generated information is processed to determine whether any of a number of different users would be interested in viewing at least a portion of a particular electronic presentation. In the described embodiment, the generated information is processed by one or more notification servers 14 that compare the generated information with user information provided by one or more users. The information concerning the various electronic presentations can be periodically updated and subsequently used to search the user information. Thus, users can be continuously updated on a number of different electronic presentations without having to physically connect to the sources of the electronic presentations for continuous play. This is advantageous and constitutes a much desired improvement over previous systems and methods for a number of reasons. First, a user can monitor many different electronic presentations on various media (e.g. television, client/server computer system etc.) without having to physically view each or any of them. This means that users have a much greater breadth in the number of shows that can be monitored. In addition, once the user information database is established, a user can go about their business and forget that they have even registered for notifications. The notifications are automatically generated and sent to the user thereby alleviating the monitoring burden from the user. Furthermore, the granularity at which the notifications are generated are at a level that the user can truly isolate events of interest and be notified only when those events occur, e.g. events within a particular electronic presentation. Other advantages will be apparent to those of skill in the art.
In one implementation, one or more user interfaces are provided and advantageously interface with a user. The user interfaces are configured to allow a user to both provide user information to the notification server, and to allow the notification server to provide information, such as monitored source information, to a user or client processing device. The information exchange protocol that is employed can comprise any suitable protocol that is capable of establishing communication and information exchange between the client processing devices 12 and the notification server(s) 14. One protocol that has been particularly useful in the context of a network such as the Internet is one based upon Extensible Markup Language (XML). Extensible Markup Language (XML) is a meta-markup language that provides a format for describing structured data. XML is similar to HTML in that it is a tag-based language. XML is a derivative of Standard Generalized Markup Language (SGML) that provides a uniform method for describing and exchanging structured data in an open, text-based format. XML utilizes the concepts of elements and namespaces. Compared to HTML, which is a display-oriented markup language, XML is a general-purpose language used to represent structured data without including information that describes how to format the data for display. More recently, XML has emerged as a desired protocol for communication between client/server systems.
An input application 410 is stored in the program memory 406 and executes on the processor to render a user display or registration interface that enables a user to input information of interest that can be used by the notification server 14 to build and maintain its user information database 28. This information can also be used by the notification server to conduct the appropriate searches when it receives the source information as described above. It will be appreciated that the input application 410 may also be a monitoring application that monitors a user's viewing habits and provides information to the notification server pertaining the viewing habits. This can allow the notification server to maintain statistics on a user's viewing habits so that the user can be notified, when appropriate, of electronic presentations that conform to their established viewing habits.
A notification method field 422 can also be provided to give the user the ability to select the type of notification that they are to receive. In the illustrated example, there are four types of notification that the user can select, i.e. email, fax, pager, and other. These selections can reference additional fields so that the appropriate information can be entered by the user. Once all of the information has been entered by a user, they can simply click the “send” button which sends the information to the notification server 14. In one implementation, the client information is bundled up as an XML data packet that it sent to and processed by the notification server 14. The notification server can then go about the process of entering the information into the user information database (
When all of the user information has been collected and stored for a particular user, the notification server 14 can then begin to monitor the source information for the particular electronic presentations that have been specified by the user. When the notification server 14 detects an electronic presentation that fits with user-registered information, it generates and sends a notification to the appropriate client processing device or user. The client processing device or user interface can then take the notification and render it into information that is displayed for the user.
In addition, a number of tabs 432 are provided and enable a user to click through various information displays. In the illustrated example, four such tabs are provided and include a “Now” tab, a “Rec.” tab (for “Recorded), a “Future” tab, and a “Reg.” tab (for “Registered”). The “Now” tab enables a user to access what is currently being monitored by the notification server 14. This might include all of the electronic presentations that are being monitored, in addition to the ones that are the subject of the current user's registrations. The “Rec.” tab allows a user to access a list of electronic presentations that might have been recorded for the user. For example, if a user notification is sent to a user, but is not acknowledged, the user may have set a default “record” setting that provides for the presentation to be recorded for future viewing. The “Future” tab allows a user to access a list of presentations/events that have been registered for by the user for some time in the future. The user can then be given the opportunity to edit their choices such as by unregistering for certain presentations or events, or by changing the parameters associated with one or more presentation or event. The “Reg.” tab allows a user to access a list of presentations and events that they are currently registered for, and which are currently being broadcast. In the present example, two presentations for which the user has registered are currently being broadcast, i.e. Wild Planet and MTV Countdown. In the case of the Wild Planet presentation, the current event is “lions” and their migration habits. Recall that in the
Various aspects of the invention provide an interactive, robust user tool that enables a user to register for notifications pertaining to many different electronic presentations that can originate from many different sources. Users can adjust the granularity at which the notifications occur by registering for certain events that might occur during an electronic presentation. Novel use of real time meta information (source information) is made to enable various electronic presentations to be monitored live or in real time so that timely notifications can be sent to those users who have registered for certain events. Users can thus have many different electronic presentations monitored without having to physically connect to the sources for continuous play. Source information can include information that is pulled from various sources or information that is pushed from various sources.
Although the invention has been described in language specific to structural features and/or methodological steps, it is to be understood that the invention defined in the appended claims is not necessarily limited to the specific features or steps described. Rather, the specific features and steps are disclosed as preferred forms of implementing the claimed invention.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US5613032 *||Sep 2, 1994||Mar 18, 1997||Bell Communications Research, Inc.||System and method for recording, playing back and searching multimedia events wherein video, audio and text can be searched and retrieved|
|US5644715 *||Dec 9, 1994||Jul 1, 1997||International Business Machines Corporation||System for scheduling multimedia sessions among a plurality of endpoint systems wherein endpoint systems negotiate connection requests with modification parameters|
|US5654886 *||Mar 14, 1995||Aug 5, 1997||Wsi Corporation||Multimedia outdoor information system|
|US5793438 *||Apr 3, 1996||Aug 11, 1998||Hyundai Electronics America||Electronic program guide with enhanced presentation|
|US5809204 *||Jun 7, 1995||Sep 15, 1998||Starsight Telecast, Inc.||User interface for television schedule system|
|US5930473 *||Mar 8, 1996||Jul 27, 1999||Teng; Peter||Video application server for mediating live video services|
|US5977964 *||Jan 5, 1998||Nov 2, 1999||Intel Corporation||Method and apparatus for automatically configuring a system based on a user's monitored system interaction and preferred system access times|
|US5996015 *||Oct 31, 1997||Nov 30, 1999||International Business Machines Corporation||Method of delivering seamless and continuous presentation of multimedia data files to a target device by assembling and concatenating multimedia segments in memory|
|US6157401 *||Jul 17, 1998||Dec 5, 2000||Ezenia! Inc.||End-point-initiated multipoint videoconferencing|
|US6195093 *||Sep 14, 1998||Feb 27, 2001||Fuji Xerox Co., Ltd.||Systems and method for controlling a presentation using physical objects|
|US6219694 *||May 29, 1998||Apr 17, 2001||Research In Motion Limited||System and method for pushing information from a host system to a mobile data communication device having a shared electronic address|
|US6279040 *||Apr 27, 1999||Aug 21, 2001||Industrial Technology Research Institute||Scalable architecture for media-on demand servers|
|US6292825 *||Nov 12, 1998||Sep 18, 2001||International Business Machines Corporation||Service application with pull notification|
|US6359557 *||Jan 26, 1998||Mar 19, 2002||At&T Corp||Monitoring and notification method and apparatus|
|US6366933 *||Oct 27, 1995||Apr 2, 2002||At&T Corp.||Method and apparatus for tracking and viewing changes on the web|
|US6466252 *||Apr 12, 2000||Oct 15, 2002||Nec Corporation||Video conference system, and its reservation server, control unit, video conference terminal equipment, and storage medium stored therein program thereof|
|US6466969 *||Mar 17, 1999||Oct 15, 2002||Sony International (Europe) Gmbh||Notification subsystem|
|US6487599 *||Jul 14, 1999||Nov 26, 2002||Tumbleweed Communications Corp.||Electronic document delivery system in which notification of said electronic document is sent a recipient thereof|
|US6594682 *||Oct 28, 1997||Jul 15, 2003||Microsoft Corporation||Client-side system for scheduling delivery of web content and locally managing the web content|
|US6606649 *||Sep 28, 1999||Aug 12, 2003||Microsoft Corporation||Application programming interface functions for supporting an improved message store for hand-held computers|
|US6637029 *||Jun 30, 1998||Oct 21, 2003||Nds Limited||Intelligent electronic program guide|
|US6657643 *||May 17, 1999||Dec 2, 2003||Microsoft Corporation||Modulating the behavior of an animated character to reflect beliefs inferred about a user's desire for automated services|
|US6684399 *||Sep 17, 1999||Jan 27, 2004||Spotware Technologies, Inc.||Electronic program guide including live network multimedia broadcast channels|
|US6694352 *||Dec 16, 1999||Feb 17, 2004||Microsoft Corporation||Methods and systems for notifying clients concerning live electronic presentations|
|US6721954 *||Jun 23, 1999||Apr 13, 2004||Gateway, Inc.||Personal preferred viewing using electronic program guide|
|US6810526 *||Aug 14, 1997||Oct 26, 2004||March Networks Corporation||Centralized broadcast channel real-time search system|
|US6813776 *||Oct 6, 1998||Nov 2, 2004||International Business Machines Corporation||Method for automatic and semi-automatic event scheduling based on information embedded in multimedia content|
|US6983483 *||Jan 18, 2001||Jan 3, 2006||Thomson Licensing||Scheduler apparatus employing a gopher agent for use in a television receiver|
|US7185355 *||Mar 4, 1998||Feb 27, 2007||United Video Properties, Inc.||Program guide system with preference profiles|
|US20010039568 *||Dec 14, 1998||Nov 8, 2001||Daniel Murray||Distance learning implementation|
|US20020056013 *||May 1, 1998||May 9, 2002||Alban Couturier||Process for sending a notification in a data processing network with distributed applications|
|US20050138660 *||Sep 3, 2004||Jun 23, 2005||United Video Properties, Inc.||Electronic mail reminder for an internet television program guide|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US7046394 *||Aug 30, 2001||May 16, 2006||Matsushita Electric Industrial Co., Ltd.||Facsimile apparatus|
|US7069449||Aug 3, 2001||Jun 27, 2006||Itech Group, Inc.||Method and system for encrypting and storing content to a user|
|US7200853 *||Mar 7, 2001||Apr 3, 2007||Sony Corporation||Electronic information content distribution processing system, information distribution apparatus, information processing apparatus, and electronic information content distribution processing method|
|US8310694 *||Feb 2, 2007||Nov 13, 2012||Canon Kabushiki Kaisha||Information processing apparatus and control method thereof|
|US8375100||Jun 5, 2008||Feb 12, 2013||United Services Automobile Association (Usaa)||Systems and methods for sending consolidated electronic mail messages|
|US8856240 *||Jun 23, 2004||Oct 7, 2014||Nokia Corporation||Method, system and computer program to provide support for sporadic resource availability in SIP event environments|
|US20010052123 *||Mar 7, 2001||Dec 13, 2001||Eiji Kawai||Electronic information content distribution processing system, information distribution apparatus, information processing apparatus, and electronic information content distribution processing method|
|US20020015496 *||Aug 3, 2001||Feb 7, 2002||Weaver J. Dewey||Method and system for controlling content to a user|
|US20020018568 *||Aug 3, 2001||Feb 14, 2002||Weaver J. Dewey||Method and system for encrypting and storing content to a user|
|US20020053082 *||Aug 3, 2001||May 2, 2002||Weaver J. Dewey||Method and system for program guide delivery|
|US20060013233 *||Jun 23, 2004||Jan 19, 2006||Nokia Corporation||Method, system and computer program to provide support for sporadic resource availability in SIP event environments|
|US20090025044 *||Feb 28, 2008||Jan 22, 2009||Samsung Electronics Co., Ltd.||Method for providing information and broadcast receiving apparatus using the same|
|EP2242261A1 *||Apr 16, 2010||Oct 20, 2010||Thomas Ryan Wood||Communication device and system|
|U.S. Classification||725/32, 725/50|
|International Classification||H04L29/06, H04L29/08|
|Cooperative Classification||H04L69/329, H04L67/325, H04L29/06|
|European Classification||H04L29/08N31T, H04L29/06|
|Jan 15, 2015||AS||Assignment|
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034766/0001
Effective date: 20141014