IP Library Granted Patent US 9,854,321
Granted Patent B2
US 9,854,321 · App. 15/213,328 · Granted Dec 26, 2017

Client-server electronic program guide

Inventors: Michael D. Ellis (Boulder, CO); Thomas R. Lemmons (Evergreen, CO); William L. Thomas (Golden, CO)
Assignee: Rovi Guides, Inc.
H04N21/4828G06F17/30817G06F17/30823G06F17/30828H04H60/31H04H60/72H04H60/82H04N5/44543H04N7/165H04N7/17318H04N21/25866H04N21/25891H04N21/2665H04N21/2668H04N21/26283H04N21/278H04N21/4147H04N21/44222H04N21/4532H04N21/466H04N21/4622H04N21/4668H04N21/47H04N21/4755H04N21/4782H04N21/47214H04N21/482H04N21/4821H04N21/4825H04N21/4826H04N21/6125H04N21/812H04N21/84H04N21/858H04N21/8586
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,854,321
App. No.
15/213,328
Granted
Dec 26, 2017
Kind
B2
Abstract

A client-server interactive television program guide system is provided. An interactive television program guide client is implemented on user television equipment. The interactive television program guide provides users with an opportunity to define expressions that are processed by the program guide server. The program guide server may provide program guide data, schedules reminders, schedules program recordings, and parentally locks programs based on the expressions. Users' viewing histories may be tracked. The program guide server may analyze the viewing histories and generates viewing recommendations, targets advertising, and collects program ratings information based on the viewing histories.

Claims (56)

1. A video guidance system for identifying unviewed video files associated with episodes of a series of episodes, comprising:

a server, comprising:

a database configured to store:

a plurality of video files, wherein each video file of the plurality of video files is associated with a respective episode of a series of episodes and is associated with a respective program listing data structure, and

a plurality of viewing history data structures, wherein each viewing history data structure of the plurality of viewing history data structures is associated with a respective user of a plurality of users and comprises video file identifiers of video files previously viewed by the respective user, and

a control circuitry configured to:

receive, from a user equipment, a first request associated with a first user of the plurality of users, wherein the first request is for a first video file associated with a first video file identifier and associated with an episode of the series of episodes;

search the database for the first video file;

transmit, to the user equipment, the first video file;

search the database for a first viewing history data structure of the plurality of viewing history data structures, wherein the first viewing history data structure is associated with the first user;

update the first viewing history data structure to include the first video file identifier;

receive a second request associated with the first user, wherein the second request is for a list of video files, wherein each video file of the list of video files is associated with a respective episode of the series of episodes;

search the database to identify a first set of program listing data structures associated with video files that are associated with the series of episodes;

search the database, based on the first viewing history data structure, to identify a first subset of the first set, wherein the first subset includes program listing data structures associated with video files that have been previously viewed by the first user;

compare the first set to the first subset;

identify, based on the comparison, a second subset of the first set, wherein the second subset includes program listing data structures associated with video files that have not been previously viewed by the first user;

update the program listing data structures of the second subset to indicate that each respective video file associated with the program listing data structures of the second subset have not been previously viewed by the first user; and

transmit, to the user equipment, a response to the second request wherein the response comprises the list of video files, wherein each video file of the list of video files is associated with a respective program listing data structure of the second subset.

2. The video guidance system of claim 1 , wherein each video file identifier comprises program title information associated with the respective video file.

3. The video guidance system of claim 1 , wherein the database is further configured to store a plurality of Internet links related to one or more of the plurality of video files, and wherein the control circuitry of the server is further configured to:

search the database for Internet links related to the subset of the third set of program listing data structures; and

transmit, to the user equipment, the Internet links related to the subset of the third set of program listing data structures.

4. The video guidance system of claim 1 , wherein the database is further configured to store a plurality of software related to one or more of the plurality of video files, and wherein the control circuitry of the server is further configured to:

search the database for software related to the subset of the third set of program listing data structures; and

transmit, to the user equipment, the software related to the subset of the third set of program listing data structures.

5. The video guidance system of claim 1 , wherein the control circuitry is further configured to:

determine that the first video file has been viewed at the first user equipment for longer than a predefined time period; and

update the first viewing history data structure to include the first video file identifier associated with the episode of the series of episodes based on determining that the first video file has been viewed at the first user equipment for longer than the predefined time period.

6. A method for using a video guidance system to identify unviewed video files associated with episodes of a series of episodes, comprising:

storing in a database:

a plurality of video files, wherein each video file of the plurality of video files is associated with a respective episode of a series of episodes and is associated with a respective program listing data structure, and

a plurality of viewing history data structures, wherein each viewing history data structure of the plurality of viewing history data structures is associated with a respective user of a plurality of users and comprises video file identifiers of video files previously viewed by the respective user, and

receiving, from a user equipment, a first request associated with a first user of the plurality of users, wherein the first request is for a first video file associated with a first video file identifier and associated with an episode of the series of episodes;

searching the database for the first video file;

transmitting, to the user equipment, the first video file;

searching the database for a first viewing history data structure of the plurality of viewing history data structures, wherein the first viewing history data structure is associated with the first user;

updating the first viewing history data structure to include the first video file identifiers;

receiving a second request associated with the first user, wherein the second request is for a list of video files, wherein each video file of the list of video files is associated with a respective episode of the series of episodes;

searching the database to identify a first set of program listing data structures associated with video files that are associated with the series of episodes;

searching the database, based on the first viewing history data structure, to identify a first subset of the first set, wherein the first subset includes program listing data structures associated with video files that have been previously viewed by the first user;

comparing the first set to the first subset;

based on the comparison, identifying a second subset of the first set, wherein the second subset includes program listing data structures associated with video files that have not been previously viewed by the first user;

updating the program listing data structures of the second subset to indicate that each respective video file associated with the program listing data structures of the second subset have not been previously viewed by the first user; and

transmitting, to the user equipment, a response to the second request wherein the response comprises the list of video files, wherein each video file of the list of video files is associated with a respective program listing data structure of the second subset.

7. The method of claim 6 , wherein each video file identifier comprises program title information associated with the respective video file.

8. The method of claim 6 , further comprising:

storing in the database a plurality of Internet links related to one or more of the plurality of video files;

searching the database for Internet links related to the subset of the third set of program listing data structures; and

transmitting, to the user equipment, the Internet links related to the subset of the third set of program listing data structures.

9. The method of claim 6 , further comprising:

storing in the database a plurality of software related to one or more of the plurality of video files;

searching the database for software related to the subset of the third set of program listing data structures; and

transmitting, to the user equipment, the software related to the subset of the third set of program listing data structures.

10. The method of claim 6 , further comprising:

determining that the first video file has been viewed at the first user equipment for longer than a predefined time period; and

updating the first viewing history data structure to include the first video file identifier associated with the episode of the series of episodes based on determining that the first video file has been viewed at the first user equipment for longer than the predefined time period.

Assignments (4)
MERGER Recorded Nov 17, 2017
From: UV CORP.
To: TV GUIDE, INC.
Reel/Frame 044483/0774 →
MERGER Recorded Nov 17, 2017
From: TV GUIDE, INC.
To: ROVI GUIDES, INC.
Reel/Frame 044784/0990 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 17, 2017
From: ELLIS, MICHAEL D.; LEMMONS, THOMAS R.; THOMAS, WILLIAM L.
To: UNITED VIDEO PROPERTIES, INC.
Reel/Frame 044166/0298 →
MERGER Recorded Nov 17, 2017
From: UNITED VIDEO PROPERTIES, INC.
To: UV CORP.
Reel/Frame 044166/0301 →
Continuity (8)
Continuation 14985075 · Dec 30, 2015
Continuation 13303964 · Nov 23, 2011
Continuation 11894748 · Aug 20, 2007
Continuation 11355536 · Feb 15, 0206
Continuation 10298274 · May 21, 2002
Division 09374043 · Aug 13, 1999
Provisional Application 60097538 · Aug 21, 1998
Related Publication 20170078757A1 · Mar 16, 2017