This invention relates to on-line television programming, entertainment, and social activity information systems.
On-line interactive television program guides have been developed in which users may access a web site with their personal computer or Internet-enabled set-top box to obtain program listings and other program-related information. The internet also provides users with the ability to access information on entertainment and social activities. Users may use the internet to access entertainment and activity-related web sites that do not generally include television program listings. Users may, for example, access web sites to obtain schedules for sporting events, in-theater movies, live shows, church services, or schedules for other entertainment events or social activities in which the users are interested. The large amount of available television-related, entertainment-related, and social-activity-related information available on-line may tend to overload users. Users must typically weed through large amounts of undesired information to access information of interest.
It is therefore an object of the present invention to provide an on-line scheduling application that users may personalize to obtain television, entertainment, and social-activity-related information.
This and other objects of the present invention are accomplished in accordance with the principles of the present invention by providing an on-line scheduling application, such as an on-line television program guide. Users may personalize the on-line scheduling application and use it as a single on-line portal to television-related information and non-television-related information, such as entertainment-related information and social-activity-related information in which, they are interested. Television-related, entertainment-related, and social-activity-related information, is sometimes referred to herein as “scheduling information.”
The on-line scheduling application of the present invention may provide users with an opportunity to personalize scheduling information by, for example, setting criteria based on titles, keywords (i.e., any word which appears in a title or description such as television program title or description, movie title, or feature keyword), actors, genres, ratings, times of day, days of the week, channels, price, venue, any other suitable criteria, or any suitable combination thereof. The scheduling application may only provide scheduling information that meets any one of or a combination of these criteria.
The on-line scheduling application may also provide users with an opportunity to select the sources of information that the scheduling application uses. Users may, for example, personalize the application to obtain scheduling information from a number of different databases. Users may desire that the scheduling application obtain, for example, television-related information from one or more databases, such as a program listings database, a certain movies database, features database, or merchandise database. Users may desire that the scheduling application obtain, for example, schedule information for museum events from a database associated with particular museums, theater information from one or more theater databases, church information from certain church databases, hobby information from a hobbies database, or any other desired information from a suitable database or databases. Users may also select certain web sites from which the scheduling application obtains scheduling information. The scheduling application may provide users with separate opportunities to select one or more sources and to select genres or other suitable criteria. By separating the selection of sources and criteria, users are provided with enhanced flexibility in the manner of personalizing their television-related and non-television-related scheduling information.
Users may personalize the on-line scheduling application so that the application provides scheduling information sorted in a manner suitable to the user. Users may, for example, choose to access scheduling information sorted alphabetically, by genre, by time or date, or according to any other suitable sorting criteria. In an on-line television program guide, for example, users may personalize the guide to display favorite program listings at the top of a program listings list or grid. Program listings and schedule information for entertainment events and social activities may be provided as part of the same web page, thereby simplifying the user's access to this information.
Users may personalize the on-line scheduling application by selecting one or more schemes for delivering scheduling information to the user. Users may, for example, access personalized scheduling information each time the on-line application is accessed. Alternatively, users may elect to automatically receive scheduling information reminders by, for example, continuous delivery, regular e-mail, HyperText Markup Language (HTML) e-mail, pager, digital phone, continuous data, feed or by any other suitable method. In an on-line television program guide, for example, users may elect to receive personalized television program listings delivered via HTML mail every morning.
The on-line scheduling application may also provide users with an opportunity to personalize the display settings of the on-line application. Users may, for example, personalize the graphical attributes of on-line display screens, such as web pages. Users may, for example, set the primary text color, anchor text color, primary text font, anchor text font, primary text style, anchor text style, or any other suitable graphical attribute of the display screen. Users may also select anchor destinations. In an on-line television program guide, for example, users may elect to go to a program information page after selecting a listing, or may elect to go to some other suitable page.
If desired, the on-line scheduling application may maintain user histories and users may be targeted with reminders. Reminders may be based, for example, on the types of personalization criteria users select, on products users order, or based on any other suitable condition. For example, reminders may indicate to users that there are upcoming shows of a genre the user is interested in or that other users have watched who have similar interests. Alternatively, the on-line scheduling application may remind users of other types of events. If a user indicates that the user is interested in cars for example, the user may receive a reminder each fall reminding the user to flush his or her car's radiator and replace the engine coolant. The user may select the delivery mechanism to be used for such reminders.
Further features of the invention, its nature and various advantages will be more apparent from the accompanying drawings and the following detailed description of the preferred embodiments.
An Internet scheduling application system 10 is shown in
Scheduling information may include any suitable textual, graphical, video, or audio multimedia. Scheduling information may be television programming related, entertainment-related, social-activity-related, or any suitable combination thereof. Television programming related information may be any suitable information related to television programming and may include, for example, program identifiers, times, channels, cities, descriptions, categories, merchandise information, or any other suitable television-programming-related information.
Entertainment-related information may be, for example, any information related to movies, theatrical productions, concerts, music, sporting events, or other types of entertainment that users may be interested in. Entertainment-related information may include event identifiers, times, venues, titles, descriptions, categories, merchandise information, or any other suitable event-related information.
Social-activity-related information may be information regarding any other type of event users may attend for spiritual, academic, or other purposes other than primarily for entertainment. This may include, for example, church meetings, classes, Boy Scout or Girl Scout events, clubs, or any other suitable social activity. Social-activity-related information may include, for example, event identifiers, times, venues, titles, descriptions, categories, merchandise information, or any other suitable activity-related information.
Scheduling system 19 may include media library 12 and data server 14. Media library 12 preferably contains an array of compact disc read only memory (CD-ROM) disks, digital video disks (DVDs), or other suitable media for storing multimedia content. The multimedia stored in media library 12 is primarily video-based. Media library 12 may contain, for example, television programming clips and related interviews and reviews, video clips of sport ins events (major league, minor league, college level, high-school level, local-level, etc), video clips of classes, or any other suitable multimedia content depending on the application for which scheduling information is provided.
Scheduling system 19 may also include data server 14. Data server 14 may maintain one or more databases of scheduling information suitable for the application that is being provided. For example, data server 14 may have a media database containing descriptions of videos in media library 12. Data server 14 may also have a database containing television program listings, a movie database containing information regarding new releases of movies, a features database containing information regarding editorial features, and a merchandising database containing merchandise descriptions and ordering information. Data server 14 may, for example, have a cable system operator database containing channel lineups, information on the time zone of the operator, weather data for the operator's region, data on the sip codes in the cable system operator's area, etc. The scheduling information in data server 14 is primarily in non-video formats. Other databases may be supported by data server 14, as desired. If, for example, a scheduling system 19 provides scheduling information for local sporting events, data server 14 may maintain a database of teams, players, their statistics, game times, venues, etc.
Scheduling system 19 may also maintain databases of scheduling information for applications other than the one to which the given scheduling system 19 is primarily responsible for. In such an approach, a particular scheduling application may act as the entryway through which users may manage different types of on-line scheduling information. If, for example, a particular scheduling system 19 provides an on-line television, program guide application, users may personalize the on-line guide to provide scheduling information from other scheduling systems 19. Users may, for example, use an on-line television program, guide to view favorite television programming related information along with favorite theatrical and local sporting events scheduling information. Users may also view local church, school, club, or lodge schedules.
Scheduling information from different systems may be obtained by the scheduling application using any suitable approach. The scheduling application may obtain scheduling information using, for example, known web crawling and searching techniques. Data obtained toy the application may be maintained in a central database. Alternatively, a central database maintained by scheduling system 19 may be updated by remote databases (e.g., databases at local service system 15) using a suitable database engine. Remote databases may be replicated by scheduling system 19. A suitable database engine for this approach may include, for example, Lotus Notes by Lotus Development Corporation.
Media, library 12 and data server 14 may be interconnected with transmission server 16 via internal network 18. Media library 12, data server 14, network 18, and transmission server is may make up scheduling system 19. If desired, the data and multimedia storage and processing functions of media, library 12, data server 14, and transmission server 16 may be provided by a single, integrated system. Scheduling information may, for example, be stored on data server 14 in a relational database format and may be stored on transmission server 16 in an object-oriented database format. A building process implemented in the C++ programming language can be used to periodically (e.g., once a day) build a temporary data set of scheduling information (e.g., a seven-day to one-month data set) for storage on transmission server 16.
Transmission server 16 may also receive local television-related data, local entertainment-related data, local social event related data, or any suitable combination thereof, from local information service 15. Local information service 15 may be any suitable facility for obtaining data particular to a localized region and providing the data to transmission server 16 via link 17. Local information service 15 may be, for example, a local weather station that monitors the local weather, a local newspaper that obtains local information such as high school and college sports information, or any other suitable provider of information. Local information service 15 may be, for example, a local business with a computer for providing the scheduling information. If desired, local information service 15 may provide the scheduling information via Internet 24 to transmission server 16. There may be a number of local information services but only one has been shown to avoid overcomplicating the drawing.
Scheduling information and related data may foe transferred from transmission server 16 to web server 20 via communications line 22. Communications line 22 may be part of an internal network or may foe a standard dedicated communications line. Web server 20 can be connected to the Internet 24 via communications link 26. Communications link 26 is preferably a telephone line or other suitable Internet communications path, such as a coaxial television cable signal path, a hybrid fiber/coaxial television cable path, a satellite communications path, a broadcast communications path, other suitable communications paths, or a combination of such paths.
If transmission server 16 and web server 20 are separate devices, as shown in
Web server 20 may use standard protocols such as the TCP/IP (Transmission Control Protocol/Internet Protocol) and the Hypertext Transfer Protocol (HTTP) to make the scheduling information available over the Internet 24 to users at multimedia systems 28, 30, and 32 via communications links 34, 36, and 38. Communications links 34, 36, and 38 are Internet links formed from telephone links, radio-frequency (RF) links, cable modem links, satellite dish links, combinations of links such as these, or any other suitable connection link.
The scheduling application may include software running both on scheduling system 19 and web server 20. In this approach, various modules or components of the application may be dedicated to performing the tastes associated with system 19 and server 20 (e.g., database management, web service, etc.). In an alternative approach, the scheduling application may run on web server 20 and issue data requests to database server software running on system 19, while also acting as a front-end web server to multimedia systems 28, 30 and 32. In still another approach, the allocation of hardware and software functionality of scheduling application system 10 may be integrated into a single system that provides both web services and data services, if desired.
Multimedia system 28 has personal computer 40 and may have television 42. Certain scheduling application features, such as on-line television program guide features, may require that personal computer 40 be able to control, television 42 via link 41, which may be, e.g., an infrared communications link. Link 41 allows personal computer 40 to tune television 42 using control signals. Television 42 may receive television signals from input 44. The television signals received by input 44 and the other television signal inputs shown in
Multimedia system 30 may have an integrated personal computer and television 46, such as the Gateway 2000 Destination® PC-TV hybrid available from Gateway 2000 Inc. of North Sioux City, S. Dak. Television signals may be provided at input 48, or may be delivered via the Internet and communications link 36. Internet access is provided via communications link 36.
Multimedia system 32 has an Internet capable set-top box 50. Set-top box 50 may use the TV Online® set-top box application software of World Gate Corporation, which may be implemented on set-top boxes such as the DCT-5000® of General Instrument Corporation of Hatboro, Pa. and the 8600x® of Scientific Atlanta of Atlanta, Ga. Set-top box 50 may receive television signals via input 52. Internet access is provided via Internet communications link 38. Video display signals containing television and Internet information are provided to television 54 by line 56. In an alternative approach, television programming may be delivered by web server 20 via the Internet and communications link 38.
During operation of system 10, certain data processing functions, such as user-initiated searches and sorts, are typically performed on web server 20 or scheduling system 19. If desired, such functions can be performed on a suitable data processing component in multimedia systems 28, 30, and 32.
Certain scheduling application functions require only that multimedia systems 28, 30, and 32 contain web browsing capabilities. Other functions require television tuning and video recording capabilities, such as when the scheduling application is an on-line television program guide.
Tuner 70 may be used to select television programs from television signals on input 74 for viewing or recording. Tuner 70 may be controlled under the direction of control signals provided by processing unit 60 over communications link 66. Television signals and Internet information can be viewed using monitor 72. Recording unit 68 allows the user to make videocassette recordings of television programs. Recording unit 68 may also be controlled by control signals from processing unit 60.
The operation of processing unit 60 is determined based on the execution of instructions stored in memory in processing unit 60 and on control inputs received from the user via user interface 76. Suitable user interfaces include handheld infrared remote controls, keyboards, pointing devices, and voice recognition devices.
Multimedia systems such as multimedia system 58 of
Regardless of the specific configuration of the multimedia systems used in system 10, the user of such a multimedia system has the capability to access scheduling information on web server 20. Many of the features of the on-line scheduling application are available, using multimedia systems with the capabilities of a modern personal computer (desktop or laptop). If it is desired to use certain scheduling application features that rely upon controlling a tuner or recording unit such as in an on-line television programming guide, the multimedia system should also have the ability to tune to a desired television program from among the various television programs provided at inputs 44, 48, 52, and 74 and have the ability to record that program automatically, under the control of commands from processing unit 60.
Media library 80 and data server 82 are interconnected with transmission server 84 via internal network 83. Media library 80, data server 82, and internal network 83 make up guide scheduling system 87. Scheduling information may be stored on data server 82 in a relational database format and may be stored on transmission server 84 in an object-oriented database format. A building process implemented in the C++ programming language may be used to periodically (e.g., once a day) build a temporary data set of scheduling information (e.g., a seven-day to one-mouth data set) for storage on transmission server 84.
Transmission server 84 may also receive local television-related information, local entertainment-related information, local social event related information, or any suitable combination thereof, from local information service 15. Local information service 15 may foe any suitable facility for obtaining data particular to a localized region and providing the data to transmission server 84 via link 85. Local information service 15 may be, for example, a local weather station that monitors the local weather, a local newspaper that obtains local information such as high school and college sports information, or any other suitable provider of information. Local information service 15 may be, for example, a local business with a computer for providing the scheduling information. If desired, local information service 15 may provide the scheduling information via internet 24 to transmission server 84. There may be a number of local information services but only one has been shown to avoid overcomplicating the drawing.
A web server 86 is provided in each cable system headend 88. Cable system headend 88 has additional components (not shown) for distributing cable television signals to customers in the service area surrounding headend 88. Scheduling information (including video clips and associated television program data) is transmitted from transmission server 84 to each cable system headend 88 via satellite uplink 90 and satellite downlink 92. Each web server 86 uses the Internet TCP/IP protocol to make the scheduling information available to users at multimedia systems 94, 96, and 98 via respective communications links 100, 102, and 104. Communications links 100, 102, and 104 are Internet links formed from telephone links, radio-frequency (RF) links, cable modem links, satellite dish downlinks, combinations of links such as these, or any other suitable Internet connection paths. Although illustrated as direct links between multimedia systems 94, 96, and 98 and web server 86, communications links 100, 102, and 104 may be Internet paths that pass through extensive portions of the Internet.
Multimedia system 94 has personal computer 106 and may have television 108. Television 108 receives television signals from input 110. Alternatively, personal computer 106 may receive television programs from the internet and provide them to television 108 for display. Access to web server 86 is provided via Internet communications link 100.
Multimedia system 96 has an integrated personal computer and television 112, such as the Gateway 2000 Destination PC-TV hybrid. Television signals may be received at input 114. Alternatively, television programming may foe received from the Internet. Access to web server 86 is provided via internet communications link 102.
Multimedia system 98 has an Internet capable set-top box 116, such as the TV OnLine® set-top box. Set-top box 116 may receive television signals via input 118. Access to web server 86 is provided via internet communications link 104. Video display signals containing television and internet information are provided to television 120 by line 122. In another suitable approach, television programming may be received from the Internet.
The system hardware shown in
Because scheduling application services are provided using web pages, the services may be accessed using standard web browsers operating cm the appropriate processing unit in the user's multimedia system. For example, in multimedia system 58 of
An illustrative main menu page 100 for an on-line scheduling application in accordance with the principles of the present invention is shown in
Options area 106 may include any graphical user interface construct suitable for providing a user with an opportunity to access various features of the scheduling application. Options area 106 has been shown as including buttons that the user may select to, for example, see today's schedule, see this week's schedule, see this month's schedule, personalize the application, select reminder, mail, and notification delivery mechanisms, surf the web, set up scheduling application requests, set up multiple lineups, set up display characteristics, or access any other suitable feature.
Menu page 100 may also present, the user with an opportunity to select a profile from a number of user profiles. Profile selector 107 has bean shown as a drop down menu, but any suitable graphical user interface element may be used. In this example, four profiles have already been set. The user may select one of the profiles, or start a new one. The scheduling application uses profiles to search for schedule information and display the schedule information for the user in the manner personalized by the user.
Once the user has selected a profile or started a new profile (e.g., by selecting “New” and entering a name), the user may access any one of a number of scheduling application features. The user may personalize the application by, for example, selecting personalize button 109. The scheduling application may respond by providing a personalization page, such as personalization page 500 of
Users may indicate a desire to personalize television-related information by, for example, selecting television button 503. In response, the scheduling application may provide a television request page, such as illustrative television request page 600 of
Users may define television requests by successively selecting criteria and then assigning them one or more values. For example, the user may decide to personalize his or her television-related information by limiting the information to comedies. The user may select “GENRE”, and then pick a genre or genres from an on-screen list. Alternatively, the on-screen list may be displayed automatically when, for example, the user passes an on-screen pointer over the option “GENRE”. The user may then select one or more genres from the list. Any other suitable approach for providing a user with an opportunity to select the criteria and select values for the criteria may be used.
In still another suitable approach, the user may be prompted before selecting criteria or values. Prompts may, for example, be displayed in options area 106. After selecting “Comedy” for example, options area 106 may read “Your Criteria currently includes the following: Genre Comedy. Would you like to add to the criteria?” The user may add more criteria or set additional values criteria already selected by, for example, selecting an on-screen “Yes” button. In response, the scheduling application may provide television request page 600, and the user may select more criteria and assign them corresponding values. The user may, for example, select “Channel” and assign a channel value (e.g., Channel 23 criteria Fox KOKI). In response, options area 106 may read “Your criteria currently includes the following: Genre Comedy, Airing on Channel 23 Fox KOKI. Would you like to add to the criteria?” The user may then, for example, select van on-screen “yes” button to add more criteria or set additional values for criteria already selected.
The scheduling application may provide television request page 600, and the user may select more criteria and assign them corresponding values. For the purposes of illustration, the user may select “Channel” and assign a value of Channel 3 Comedy Central, as shown in
The user may also personalize his or her television-related information viewing experience by selecting the sources from which the scheduling application may obtain television-related information. In response to the user selecting “Search Within” from options area 106 of television request page 600 (
The sources shown in search within page 925 may be coded into the page code. Alternatively, the sources may be dynamically obtained by the scheduling application and inserted into the page. The sources may be dynamically obtained, for example continuously, each time the user accesses the page, or with any other suitable frequency, from data provided to web server 26 or 88 by transmission server 16 or 84. Options area 106 may list the sources available to the user for personalizing his or her television-related information viewing experience. The sources listed in
In this example, the scheduling application may provide television-related information from four sources. TV Listings database 703 may include, for example, national and local television program listings. Movie database 705, for example, may include movie listings for new releases available on premium channels, through pay-per-view services, through near video-on-demand (NVOD) services, or through, video on demand (VOD) services. Features database 707 may include, for example, information relating to editorial features. TV Guide store database 709, for example, may include merchandise descriptions and ordering information.
The databases may be independently maintained by system 10 (
After the user is finished entering requests and has selected which sources the user wants searched, the scheduling application may summarize the user's personalized viewing experience in one or more request summary pages. An illustrative television requests summary page 800 is shown in
The scheduling application may also provide users with an opportunity to personalize their entertainment-related information viewing experience. Users may indicate a desire to personalize entertainment-related information by, for example, selecting entertainment button 505 of personalization page 500 (
Users may define entertainment-related requests by successively selecting criteria and then assigning them one or more values. Alternatively, the user may fee prompted to select criteria and to select each value. In practice, any approach that is suitable for the chosen user interface may be used.
The user may also personalize his or her entertainment-related information viewing experience by selecting the sources from which the scheduling application may obtain entertainment-related information. In response to the user selecting “Search Within” from options area 106, the scheduling application may display a search within screen. Illustrative search within page 925 is shown in
The user's personalized entertainment-related viewing experience may be summarized in one or more summary pages, such as entertainment requests summary page 950 of
The scheduling application may also provide users with an opportunity to personalize their social-activity-related viewing experience, users may indicate a desire to personalize social-activity-related information by, for example, selecting social activities button 507 (
Users may define entertainment-related requests by, for example, selecting criteria and assigning values to the criteria. Social activity request page 1200, for example, allows users to define entertainment-related requests based on title, words, venue, genre, day of week, start time, or any other suitable criteria. If desired, the social-activity-related criteria may be statically programmed into the request page code, or may be dynamically derived from data provided to web server 26 or 88 by transmission server 16 or 84. Users may define social-activity-related requests by successively selecting criteria and assigning them one or more values. Alternatively, the user may be prompted to select each criteria and to set each value. The practice, any approach that is suitable for the chosen user interface may be used.
The user may also personalize his or her social-activity-related information viewing experience by selecting the sources from which the scheduling application may obtain social-activity-related information. In response to the user selecting “Search Within” from options area 106, the scheduling application may display a search within screen. Illustrative search within screen 1300 is shown in
The user's personalized social-activity-related viewing experience may be summarized in a summary page, such as social activity requests summary page 1400 of
The scheduling application may maintain a list or lists of the available sources that are inserted into search within pages, such as search within pages 700, 925, and 1300. The application may, for example, search the web for suitable sources using standard web-searching techniques. Alternatively, web sites may post information describing themselves to the scheduling application (e.g., via e-mail). The scheduling application may determine whether the web site is television, entertainment, or social-activity-related, based on the information provided. Alternatively, the scheduling application may search the web site and characterize the site itself. The scheduling application may, for example, include the site in a list of sources for each search within screen, or may maintain a single file of sources in which each source is identified with one or more search within screens. Found sites may be queried by the scheduling application periodically (e.g., daily, hourly, or with any other suitable frequency, or each time a user requests information. Alternatively, other web sites may provide information to the scheduling application automatically (e.g., when posting new information) or periodically.
Users may also personalize their scheduling information viewing experience by selecting the delivery scheme or schemes by which scheduling information is automatically delivered to the user. Users may indicate a desire to select one or more delivery schemes by, for example, selecting Reminder Delivery option 113 from menu page 100 (
In delivery page 1500, users may select delivery schemes by selecting check-boxes associated with the delivery schemes. In practice, however, any suitable graphical user interface may be used (e.g., the user may be require to enter a name or chooses a number corresponding to a given delivery scheme). In this example, users may choose from five delivery schemes: continuous delivery, e-mail delivery, HTML mail delivery, pager/digital phone reminder, and pager/digital phone notification. Users may select e-mail delivery to receive text-only versions of personalized scheduling information. This information may include hyperlinks to the related content if desired. Users may select HTML mail delivery to receive an HTML version of personalized scheduling information.
In practice, the number and type of delivery schemes provided may depend on how the scheduling application system is implemented. Continuous delivery, for example, may require a transmitter in the scheduling application system 10 or on-line television program guide system 78, and a receiver in multimedia system 58 configured to continuously transmit and receive scheduling information, respectively. Users may select pager/digital phone program reminder delivery to receive short text reminders of scheduling information found according to the user defined requests. The reminders may be provided at a predetermined time before an event associated with the scheduling information (e.g., twenty or thirty minutes). Users may select pager/digital phone update notification delivery to receive short text notifications indicating new scheduling information has been found that matches the user's requests. These approaches may require an e-mail addressable pager or digital phone or, alternatively, software and transmission hardware in the scheduling application system suitable for providing data directly to the pager or digital phone. This list is only illustrative, as any suitable combination of mail, reminder, or notification delivery schemes may be used.
In this example, the user has selected HTML mall delivery and pager/digital phone reminder delivery. This combination provides the user with the ability to review scheduling information each time the user accesses his or her e-mail, and to receive reminders of events. The user may indicate that he or she is finished selecting delivery schemes by, for example, selecting “Finish”. In response to the user indicating that he or she is finished, the scheduling application may query the user for e-mail addressee or other information necessary for delivering e-mail, reminders, or notifications.
The scheduling application may also provide users with an opportunity to centrally manage requests. Users may indicate a desire to centrally manage requests by, for example, selecting Request Setup option 115 from main menu page 100 (
The scheduling application may provide request setup page 1700 of
The scheduling application may also provide users with an opportunity to enter scheduling information for events that are personal to the user, such as birthdays, anniversaries, holidays, or other important events. In response to, for example, the user selecting Date book option 125 from main menu page 100 (
The scheduling application may also write events to the user's date book to provide the user with reminders for events that the user did not enter into the date book. The scheduling application may maintain user histories that track the types of personalization criteria users select, the types of information that the user searches for, the types of products ordered, the events set in the date book, or any other suitable condition or event. The scheduling application may, for example, insert special dates into the date book once the dates have expired (e.g., it may automatically re-enter birthdays once they have passed). In another suitable approach, the scheduling application may automatically re-enter events the user enters on a recurring basis.
The on-line scheduling application may remind users of other types of events. If a user indicates that the user is interested in cars for example, the user may receive a reminder each fall reminding the user to flush his or her car's radiator and replace the engine coolant. Alternatively, the scheduling application may track a user's on-line purchases to remind the user when to purchase additional items.
In some households, users may have mere than one television delivery platform. Some digital satellite services (DSS) homes, for example, also maintain a basic cable connection for clear reception of local channels. Some households may have television programs delivered over the internet. In systems providing television-related information, such as on-line television program guides, the scheduling application may provide users with an opportunity to set up lineups for which television-related information is displayed.
The scheduling application may present available lineups using any suitable approach. Users may for example, enter lineups by name. In this approach, options area 106 of lineups page 1900 may be initially blank until a user enters a lineup by, for example, selecting “New Lineup” option 1985. In another suitable approach, the scheduling application may maintain a database of available lineups by rip code, and display a list of available lineups to the user based on the user's zip code. In still another suitable approach, the scheduling application, may poll or query the user's media system for the type of hardware installed, using a suitable protocol (e.g., the Simple Network Management Protocol (SNMP)). The scheduling application may determine one or more available lineups from the result of the poll or query. If desired, a combination of these approaches, or any other suitable approach for determining available lineups, may be used.
Once a user has personalized his or her scheduling information viewing experience by, for example, defining requests, selecting sources, choosing a primary and secondary lineup (if applicable), or any suitable combination thereof, the scheduling application may obtain scheduling information for the selected lineups (if appropriate for a given source) from the selected sources and provide the information in one or more results pages. In practice, the scheduling application may obtain scheduling information from the selected sources using any approach suitable for the hardware on which the system is implemented and the number of users the hardware can adequately handle. The scheduling application, may, for example, continuously monitor the sources, as new information is stored in or posted to the sources, the scheduling application may determine if the new information meets any of the defined requests. If desired, each user may have a process running on scheduling system 19, web server 20, program guide scheduling system 87, or web server 86. Each request may be a separate thread within a single process for a given user. In one suitable approach, the processes may run distributively across scheduling system 19 and web server 20, or across program guide scheduling system 87 and web server 86, losing a distributed object oriented approach such as the distributed component object model (DCOM). In such an approach, data servers 14 and 82 may maintain object oriented databases.
In another suitable approach, the scheduling application may reside on web servers 20 or 86 acting as a front-end to users. The scheduling application may periodically query systems 19 or 87 for scheduling information. In approaches where systems 19 end 87 store data and media using a relational database (such as a Structured Query Language (SQL) database), the scheduling application may transform the user requests into SQL requests and transmit the SQL requests to systems 19 or 87 each time the user accesses the scheduling application. In still another suitable approach, systems 19 or 87 may indicate to web servers 20 or 86 when new scheduling information, is available.
When sources are not cross-referenced, links between related scheduling information may not be established. After searching each source for scheduling information meeting the user defined requests, the scheduling application may re-search the sources for scheduling information related to the scheduling information found on the first pass, using one or more keywords from the already found results. For example, if a television program listing for “Seinfeld” meets a user defined request, the scheduling application may then re-search other selected sources for information with “Seinfeld” in their titles. This approach may also be used when the scheduling application searches a source that does not have fields that map to the criteria used to defined requests (e.g., a given source may not provide a “start times” field).
The scheduling application may provide personalized scheduling information in one or more results pages. The scheduling information may be sorted, for example, alphabetically, by topic, by start time, by request, or using any other suitable approach. The scheduling application may provide users with an opportunity to view personalized scheduling information for the current day, week, month, or any other suitable period. Users may indicate a desire to view personalized scheduling information for the current day, week, or month by, for example, selecting options 117, 119, or 121 (
Results pages may include any suitable combination of text, graphics, video, or audio. Illustrative results-pages for the current day, week, and month are shown in
Request results 1920 within each type of scheduling, information are shown organized by source. Users may review request results 1920 and change a request by, for example, selecting a request number for a given result. Request results 1920 may include any suitable combination of text, graphics, or video. Results 1920 may include, for example, graphics 1917. Graphics 1917 may be, for example, a logo for a given television program, a graphic of an orderable item, or any other suitable graphic. Users may obtain additional information about a result 1920 by, for example, selecting a result.
The scheduling application may also allow users to personalize the application by setting various display settings. The scheduling application may, for example, provide illustrative display setup page 2100 of
The features of the present invention may be incorporated into an on-line television program guide. In practice, the television-related features of the present invention may be most appropriate for incorporating into a program guide. An illustrative main menu page 2200 for an on-line program guide is shown in
Available sources are provided at step 2400. The scheduling application may, for example, search the Internet for one or more web sites from which the scheduling application may obtain scheduling information (step 2405). Alternatively, the scheduling application may obtain information that sufficiently identifies one or more web sites to the scheduling application so that the web sites may be used as sources of scheduling information (step 2410).
The scheduling application obtains scheduling information from the sources at step 2500. This may be performed using any suitable approach, depending on the type of source. The scheduling application may issue one or more suitable database requests to obtain scheduling information from databases maintained by scheduling system 19 or guide scheduling system 87. The scheduling application may obtain scheduling information using, for example, known web crawling and searching techniques. Alternatively, a central database maintained by scheduling system is may be updated by remote databases using a suitable database engine.
The scheduling application may provide the scheduling information to the user at step 2600. Scheduling information may be provided in one or more results pages (step 2605), but may be provided in any suitable markup language document or page that is delivered via the web or using some other on-line approach. In an on-line program guide for example, users may obtain personalized scheduling information from a TV Mail box (option 2210
The foregoing is merely illustrative of the principles of this invention and various modifications can be made by those skilled in the art without departing from the scope and spirit of the invention.
This application is a continuation of U.S. patent application Ser. No. 12/173,690, filed Jul. 15, 2008, now U.S. Pat. No. 8,539,044, issued Sep. 17, 2013, which is a continuation of U.S. patent application Ser. No. 11/604,992 filed Nov. 28, 2006, now abandoned, which is a continuation of U.S. patent application Ser. No. 09/437,304, filed Nov. 9, 1999, now U.S. Pat. No. 7,165,098, issued Jan. 16, 2007, which claims the benefit of U.S. Provisional Patent Application No. 60/107,802, filed Nov. 10, 1998, all of which are hereby incorporated by reference herein in their entireties.
Number | Name | Date | Kind |
---|---|---|---|
5534911 | Levitan | Jul 1996 | A |
5550576 | Klosterman | Aug 1996 | A |
5589892 | Knee et al. | Dec 1996 | A |
5596373 | White et al. | Jan 1997 | A |
5623406 | Ichbiah | Apr 1997 | A |
5629733 | Youman et al. | May 1997 | A |
5721827 | Logan et al. | Feb 1998 | A |
5732216 | Logan et al. | Mar 1998 | A |
5774664 | Hidary et al. | Jun 1998 | A |
5778181 | Hidary et al. | Jul 1998 | A |
5790202 | Kummer et al. | Aug 1998 | A |
5828839 | Moncreiff | Oct 1998 | A |
5828945 | Klosterman | Oct 1998 | A |
5848396 | Gerace | Dec 1998 | A |
5850218 | LaJoie | Dec 1998 | A |
5855006 | Huemoeller | Dec 1998 | A |
5933778 | Buhrmann et al. | Aug 1999 | A |
5973683 | Cragun et al. | Oct 1999 | A |
5974406 | Bisdikian et al. | Oct 1999 | A |
5983227 | Nazem et al. | Nov 1999 | A |
5988078 | Levine | Nov 1999 | A |
6005565 | Legall et al. | Dec 1999 | A |
6016478 | Zhang | Jan 2000 | A |
6052145 | Macrae et al. | Apr 2000 | A |
6061719 | Bendinelli et al. | May 2000 | A |
6078348 | Klosterman et al. | Jun 2000 | A |
6085242 | Chandra | Jul 2000 | A |
6119095 | Morita | Sep 2000 | A |
6161112 | Cragun et al. | Dec 2000 | A |
6172677 | Stautner et al. | Jan 2001 | B1 |
6205485 | Kikinis | Mar 2001 | B1 |
6209007 | Kelley et al. | Mar 2001 | B1 |
6239794 | Yuen et al. | May 2001 | B1 |
6278449 | Sugiarto et al. | Aug 2001 | B1 |
6356956 | Deo et al. | Mar 2002 | B1 |
6388714 | Schein et al. | May 2002 | B1 |
6564378 | Satterfield et al. | May 2003 | B1 |
6756997 | Ward, III et al. | Jun 2004 | B1 |
6871220 | Rajan et al. | Mar 2005 | B1 |
7072932 | Stahl | Jul 2006 | B1 |
7165098 | Boyer et al. | Jan 2007 | B1 |
7185335 | Hind et al. | Feb 2007 | B2 |
7680882 | Tiu, Jr. et al. | Mar 2010 | B2 |
7756895 | Emigh | Jul 2010 | B1 |
7904924 | de Heer et al. | Mar 2011 | B1 |
8046801 | Ellis et al. | Oct 2011 | B2 |
20020026496 | Boyer et al. | Feb 2002 | A1 |
20020065802 | Uchiyama | May 2002 | A1 |
20020140728 | Zimmerman | Oct 2002 | A1 |
20030110499 | Knudson et al. | Jun 2003 | A1 |
20030144862 | Smith et al. | Jul 2003 | A1 |
20030226146 | Thurston et al. | Dec 2003 | A1 |
20040103434 | Ellis | May 2004 | A1 |
20040231003 | Cooper et al. | Nov 2004 | A1 |
20040260574 | Gross | Dec 2004 | A1 |
20050160458 | Baumgartner | Jul 2005 | A1 |
20050204388 | Knudson et al. | Sep 2005 | A1 |
20050251827 | Ellis et al. | Nov 2005 | A1 |
20050262542 | DeWeese et al. | Nov 2005 | A1 |
20050273812 | Sakai | Dec 2005 | A1 |
20060053449 | Gutta | Mar 2006 | A1 |
20060150216 | Herz et al. | Jul 2006 | A1 |
20060190966 | McKissick et al. | Aug 2006 | A1 |
20060271959 | Jacoby et al. | Nov 2006 | A1 |
20070101006 | Boyer et al. | May 2007 | A1 |
20070136745 | Garbow et al. | Jun 2007 | A1 |
20070157242 | Cordray et al. | Jul 2007 | A1 |
20070168544 | Sciammarella | Jul 2007 | A1 |
20070186242 | Price et al. | Aug 2007 | A1 |
20070199025 | Angiolillo et al. | Aug 2007 | A1 |
20070214162 | Rice | Sep 2007 | A1 |
20070250866 | Yamada | Oct 2007 | A1 |
20080134043 | Georgis et al. | Jun 2008 | A1 |
20080147711 | Spiegelman | Jun 2008 | A1 |
20080275914 | Boyer et al. | Nov 2008 | A1 |
20080301732 | Archer et al. | Dec 2008 | A1 |
20090133070 | Hamano et al. | May 2009 | A1 |
20110214148 | Gossweiler, III et al. | Sep 2011 | A1 |
20140068671 | Boyer et al. | Mar 2014 | A1 |
20150201240 | Hamano et al. | Jul 2015 | A1 |
Number | Date | Country |
---|---|---|
0 723 369 | Jul 1996 | EP |
0 723369 | Jul 1996 | EP |
0 845 645 | Jun 1998 | EP |
0 848 554 | Jun 1998 | EP |
0848554 | Jun 1998 | EP |
0 854 645 | Jul 1998 | EP |
1338976 | Aug 2003 | EP |
1841219 | Oct 2007 | EP |
2003250146 | Sep 2003 | JP |
2005505070 | Feb 2005 | JP |
2006510270 | Mar 2006 | JP |
2007158925 | Jun 2007 | JP |
2007274605 | Oct 2007 | JP |
WO 9627989 | Sep 1996 | WO |
WO-9627989 | Sep 1996 | WO |
WO 9638962 | Dec 1996 | WO |
WO-9638962 | Dec 1996 | WO |
WO-9713368 | Apr 1997 | WO |
WO 9713368 | Apr 1997 | WO |
WO-9742763 | Nov 1997 | WO |
WO 9742763 | Nov 1997 | WO |
WO-9826584 | Jun 1998 | WO |
WO 9826584 | Jun 1998 | WO |
WO 9843183 | Oct 1998 | WO |
WO-9843183 | Oct 1998 | WO |
WO 9914953 | Mar 1999 | WO |
WO-9914953 | Mar 1999 | WO |
WO 9915968 | Apr 1999 | WO |
WO-9915968 | Apr 1999 | WO |
WO-0146843 | Jun 2001 | WO |
WO-03030528 | Apr 2003 | WO |
WO-2004054264 | Jun 2004 | WO |
WO-2004052010 | Jun 2004 | WO |
WO-2006074305 | Jul 2006 | WO |
WO-2009070193 | Jun 2009 | WO |
Entry |
---|
U.S. Appl. No. 09/332,244, filed Jun. 11, 1999, Ellis et al. |
U.S. Appl. No. 11/324,202, filed Dec. 29, 2005, Yates. |
U.S. Appl. No. 11/412,549, filed Apr. 27, 2006, Ellis et al. |
U.S. Appl. No. 11/541,299, filed Sep. 29, 2006, Shannon et al. |
Non-Final Office Action dated Jul. 17, 2013 in U.S. Appl. No. 11/986,463, filed Nov. 21, 2007. |
Final Office Action for U.S. Appl. No. 11/986,463 dated Mar. 23, 2011. |
Non-Final Office Action for U.S. Appl. No. 11/986,463 dated Apr. 13, 2012. |
“UVSG Teams WithMicrosoft on Internet Information Server,” press release of United Video Satellite Group (Feb. 22, 1996). |
“UVSG Offers System-Specific Web Site Development for OPS,” press release of United Video Satellite Group (Apr. 12, 1996). |
“Set-Top Box Control Software: A Key Component in Digital Video,” in Philips Journal of Research, Rath et al. (1996). |
The clickTV television program guide website of TVData of Queensbury, New York bearing a copyright date of 1997. This website is located at www.clicktv.com (as printed from the Internet on Aug. 13, 1997). |
The television program guide website of Gist Communications, Inc. of New York, New York bearing a copyright date of 1997. This website is located at www.gist.com (as printed from the Internet on Aug. 14, 1997). |
The television program guide website of TV Guide Entertainment Network bearing a copyright date of 1997. This website is located at www.tvguide.com (as printed from the Internet on Aug. 14-22, 1997). |
The InfoBeat program guide website of InfoBeat,Inc. bearing a copyright date of 1997. This website is located at www.infobeat.com (as printed from the Internet on Dec. 8, 1997). |
The MyYahoo website. This website is located at edityahoo.com (as printed from the Internet Oct. 26-27, 1999). |
The InfoBeat program guide website of InfoBeat, Inc. bearing a copyright date of 1998. This website is located at www.infobeat.com (as printed from the Internet on Sep. 1, 1998). |
The television program guide website of Gist Communications, Inc. of New York, New York bearing a copyright date of 1998. This website is located at www.gist.com (as printed from the Internet on Sep. 1, 1998). |
The MyCalendar website. This website is located at www.mycalendar.com bearing copyright dates of 1997-1999 (as printed from the Internet Oct. 26-Oct. 27, 1999). |
Number | Date | Country | |
---|---|---|---|
20140068671 A1 | Mar 2014 | US |
Number | Date | Country | |
---|---|---|---|
60107802 | Nov 1998 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 12173690 | Jul 2008 | US |
Child | 13962800 | US | |
Parent | 11604992 | Nov 2006 | US |
Child | 12173690 | US | |
Parent | 09437304 | Nov 1999 | US |
Child | 11604992 | US |