Client-server electronic program guide
First Claim
1. A video guidance system for identifying unviewed video files, comprising:
- a server, comprising;
a database configured to store;
a plurality of video files,a plurality of program listing data structures, wherein each program listing data structure of the plurality of program listing data structures is associated with a respective video file of the plurality of video files, and wherein each program listing data structure comprises a respective video file identifier associated with the respective video file,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, anda plurality of user profile data structures, wherein each user profile data structure is associated with a respective user of the plurality of users and comprises a preference level for at least one attribute; and
a control circuitry configured to;
receive, from a user equipment, a request associated with a first user of the plurality of users, wherein the request is for a first video file, and wherein the request comprises a first video file identifier of the first video file;
search the database for the first video file associated with the first video file identifier received in the request;
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 request for program listings, wherein the request for program listings is associated with the first user;
search the database, using the first viewing history data structure, to identify a first set of program listing data structures for video files that are consistent with the first viewing history data structure, wherein the first set includes program listing data structures associated with video files that have been previously viewed by the first user and includes program listing data structures associated with video files that have not been previously viewed by the first user;
search the database for a first user profile data structure of the plurality of user profile data structures, wherein the first user profile data structure is associated with the first user;
search the database, using the first user profile data structure, to identify a second set of program listing data structures for video files that are consistent with the first user profile data structure, wherein the second set includes program listing data structures associated with video files that have been previously viewed by the first user and includes program listing data structures associated with video files that have not been previously viewed by the first user;
compare video file identifiers in the first and second sets of program listing data structures to video file identifiers in the first viewing history data structure;
based on the comparison, identify which video files in the first and second sets of program listing data structures have been previously viewed by the first user and which video files have not been previously viewed by the first user;
create an indication for each video file in the first and second sets of program listing data structures that have been identified to have been previously viewed by the first user, wherein the indication indicates that each respective video file has been previously viewed by the first user; and
transmit, to the user equipment, a response to the request for program listings comprising the first and second sets of program listing data structures and the respective indications.
4 Assignments
0 Petitions
Accused Products
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.
-
Citations
30 Claims
-
1. A video guidance system for identifying unviewed video files, comprising:
-
a server, comprising; a database configured to store; a plurality of video files, a plurality of program listing data structures, wherein each program listing data structure of the plurality of program listing data structures is associated with a respective video file of the plurality of video files, and wherein each program listing data structure comprises a respective video file identifier associated with the respective video file, 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 plurality of user profile data structures, wherein each user profile data structure is associated with a respective user of the plurality of users and comprises a preference level for at least one attribute; and a control circuitry configured to; receive, from a user equipment, a request associated with a first user of the plurality of users, wherein the request is for a first video file, and wherein the request comprises a first video file identifier of the first video file; search the database for the first video file associated with the first video file identifier received in the request; 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 request for program listings, wherein the request for program listings is associated with the first user; search the database, using the first viewing history data structure, to identify a first set of program listing data structures for video files that are consistent with the first viewing history data structure, wherein the first set includes program listing data structures associated with video files that have been previously viewed by the first user and includes program listing data structures associated with video files that have not been previously viewed by the first user; search the database for a first user profile data structure of the plurality of user profile data structures, wherein the first user profile data structure is associated with the first user; search the database, using the first user profile data structure, to identify a second set of program listing data structures for video files that are consistent with the first user profile data structure, wherein the second set includes program listing data structures associated with video files that have been previously viewed by the first user and includes program listing data structures associated with video files that have not been previously viewed by the first user; compare video file identifiers in the first and second sets of program listing data structures to video file identifiers in the first viewing history data structure; based on the comparison, identify which video files in the first and second sets of program listing data structures have been previously viewed by the first user and which video files have not been previously viewed by the first user; create an indication for each video file in the first and second sets of program listing data structures that have been identified to have been previously viewed by the first user, wherein the indication indicates that each respective video file has been previously viewed by the first user; and transmit, to the user equipment, a response to the request for program listings comprising the first and second sets of program listing data structures and the respective indications. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A video guidance system for identifying unviewed video files, comprising:
-
a server, comprising; a database configured to store; a plurality of video files, a plurality of program listing data structures, wherein each program listing data structure of the plurality of program listing data structures is associated with a respective video file of the plurality of video files, and wherein each program listing data structure comprises a respective video file identifier associated with the respective video file, 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 plurality of user profile data structures, wherein each user profile data structure of the plurality of user profile data structures is associated with a respective user of the plurality of users and comprises a preference level for at least one attribute; and a first control circuitry configured to; receive, from the user equipment, a request associated with a first user of the plurality of users, wherein the request is for a first video file, and wherein the request comprises a first video file identifier of the first video file; search the database for the first video file associated with the first video file identifier received in the request; 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 request for program listings, wherein the request for program listings is associated with the first user; search the database, using the first viewing history data structure, to identify a first set of program listing data structures for video files that are consistent with the first viewing history data structure, wherein the first set includes program listing data structures associated with video files that have been previously viewed by the first user and includes program listing data structures associated with video files that have not been previously viewed by the first user; search the database for a first user profile data structure of the plurality of user profile data structures, wherein the first user profile data structure is associated with the first user; search the database, using the first user profile data structure, to identify a second set of program listing data structures for video files that are consistent with the first user profile data structure, wherein the second set includes program listing data structures associated with video files that have been previously viewed by the first user and includes program listing data structures associated with video files that have not been previously viewed by the first user; compare video file identifiers in the first and second sets of program listing data structures to video file identifiers in the first viewing history data structure; based on the comparison, identify which video files in the first and second sets of program listing data structures have been previously viewed by the first user and which video files have not been previously viewed by the first user; create an indication for each video file in the first and second sets of program listing data structures that have been identified to have been previously viewed by the first user, wherein the indication indicates that each respective video file has been previously viewed by the first user; transmit, to the user equipment, a response to the request for program listings, comprising the first and second sets of program listing data structures and the respective indications; and the user equipment comprising; a user interface configured to receive input from a user; and second control circuitry configured to; transmit, to the server, the request associated with the first user for the first video file; receive, from the server, the first video file; transmit, to the server, the request for program listings; receive, from the server, the response comprising the first and second sets of program listing data structures and the respective indications; generate for display program listings for video files corresponding to the first and second sets of program listing data structures received in the response; and generate for simultaneous display with the program listings for video files corresponding to the first and second sets of program listing data structures received in the response, based on the respective indications, visual indicators that visually distinguishing program listings for video files that have been previously viewed by the first user from program listings for video files that have not been previously viewed by the first user. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method for using a video guidance system to identify unviewed video files, comprising:
-
storing in a database; a plurality of video files, wherein each video file is associated with a respective video file identifier, a plurality of program listing data structures, wherein each program listing data structure of the plurality of program listing data structures is associated with a respective video file of the plurality of video files, and wherein each program listing data structure comprises a respective video file identifier associated with the respective video file, 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 plurality of user profile data structures, wherein each user profile data structure of the plurality of user profile data structures is associated with a respective user of the plurality of users and comprises a preference level for at least one attribute; and receiving, at a server from a user equipment, a request associated with a first user of the plurality of users, wherein the request is for a first video file, and wherein the request comprises a first video file identifier of the first video file; searching the database for a first video file associated with the first video file identifier received in the request; transmitting, from the server 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 identifier; receiving, at the server, a request for program listings, wherein the request for program listings is associated with the first user; searching the database, using the first viewing history data structure, to identify a first set of program listing data structures for video files that are consistent with the first viewing history data structure, wherein the first set includes program listing data structures associated with video files that have been previously viewed by the first user and includes program listing data structures associated with video files that have not been previously viewed by the first user; searching the database for a first user profile data structure of the plurality of user profile data structures, wherein the first user profile data structure is associated with the first user; searching the database, using the first user profile data structure, to identify a second set of program listing data structures for video files that are consistent with the first user profile data structure, wherein the second set includes program listing data structures associated with video files that have been previously viewed by the first user and includes program listing data structures associated with video files that have not been previously viewed by the first user; comparing video file identifiers in the first and second sets of program listing data structures to video file identifiers in the first viewing history data structure; based on the comparison, identifying which video files in the first and second sets of program listings have been previously viewed by the first user and which video files have not been previously viewed by the first user; creating an indication for each video file in the first and second sets of program listing data structures that have been identified to have been previously viewed by the first user, wherein the indication indicates that each respective video file has been previously viewed by the first user; and transmitting, from the server to the user equipment, a response to the request for program listings, comprising the first and second sets of program listing data structures and the respective indications. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A video guidance system for identifying unviewed video files, comprising:
means for storing in a database; a plurality of video files, wherein each video file is associated with a respective video files identifier, a plurality of program listing data structures, wherein each program listing data structure of the plurality of program listing data structures is associated with a respective video file of the plurality of video files, and wherein each program listing data structure comprises a respective video file identifier associated with the respective video file, a plurality of viewing history data structures, wherein each viewing history data structure 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 plurality of user profile data structures, wherein each user profile data structure is associated with a respective user of the plurality of users and comprises a preference level for at least one attribute; and means for receiving, at a server from a user equipment, a request associated with a first user of the plurality of users, wherein the request is for a first video file, and wherein the request comprises a first video file identifier of the first video file; means for searching the database for a first video file associated with the first video file identifier received in the request; means for transmitting, from the server to the user equipment, the first video file; means for 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; means for updating the first viewing history data structure to include the first video file identifier; means for receiving, at the server, a request for program listings, wherein the request for program listings is associated with the first user; means for searching the database, using the first viewing history data structure, to identify a first set of program listing data structures for video files that are consistent with the first viewing history data structure, wherein the first set includes program listing data structures associated with video files that have been previously viewed by the first user and includes program listing data structures associated with video files that have not been previously viewed by the first user; means for searching the database for a first user profile data structure of the plurality of user profile data structures, wherein the first user profile data structure is associated with the first user; means for searching the database, using the first user profile data structure, to identify a second set of program listing data structures for video files that are consistent with the first user profile data structure, wherein the second set includes program listing data structures associated with video files that have been previously viewed by the first user and includes program listing data structures associated with video files that have not been previously viewed by the first user; and means for comparing video file identifiers in the first and second sets of program listing data structures to video file identifiers in the first viewing history data structure; means for identifying, based on the comparison, which video files in the first and second sets of program listings have been previously viewed by the first user and which video files have not been previously viewed by the first user; means for creating an indication for each video file in the first and second sets of program listing data structures that have been identified to have been previously viewed by the first user, wherein the indication indicates that each respective video file has been previously viewed by the first user; and means for transmitting, from the server to the user equipment, a response to the request for program listing, comprising the first and second sets of program listing data structures and the respective indications. - View Dependent Claims (26, 27, 28, 29, 30)
Specification