IP Library Granted Patent US 8,676,034
Granted Patent B2
US 8,676,034 · App. 13/088,269 · Granted Mar 18, 2014

System and method to remotely program a receiving device

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 8,676,034
App. No.
13/088,269
Granted
Mar 18, 2014
Kind
B2
Abstract

A web server presents a web page to a user. The web page dynamically presents information corresponding to a digital video recorder (DVR) associated with the user. The web server accepts input information to control the DVR. A delayed-job server accepts input from the web server and stores a job entry corresponding to the input in a message queue. The delayed-job server processes the job entry from the message queue and creates a function request representative of the web server input. An access server accepts the function request from the delayed-job server and bi-directionally communicates messages with the DVR. The access server communicates a response to the function request back to the delayed-job server. The delayed-job server communicates data from the response to the web server, wherein the web server is not blocked while waiting for the response from the delayed-job server.

Claims (61)

1. A computing server method to perform actions on receiving devices, comprising:

accepting, via a user portal, information corresponding to a user account;

identifying a receiving device based on the user account information;

accepting an input request via the user portal to perform a function on the receiving device;

correlating the input request with the user account;

executing a management process and a plurality of worker threads on a delayed-job server;

storing a job entry in a first repository, the storing performed by the management process, the job entry corresponding to the input request;

retrieving the job entry with one of the plurality of worker threads;

generating a function request corresponding to the job entry;

initiating communications to the receiving device;

retrieving from the receiving device time-related functions stored in a memory associated with the receiving device;

communicating the function request to logic associated with the receiving device;

receiving a response to the function request from the logic;

time-stamping a record associated with the response from the logic;

storing the time-stamped record associated with the response in a second repository; and

communicating the time-stamped record via the user portal.

2. The computing server method of claim 1 , comprising:

accepting the input request in response to input logic of a first web page presented to a user by the user portal; and

providing the record to output logic of a second web page presented to the user by the user portal.

3. The computing server method of claim 1 , comprising:

communicating to the user portal an indication that the function has been performed on the receiving device.

4. The computing server method of claim 1 wherein storing the job entry in the first repository includes posting a message to a message queue.

5. The computing server method of claim 1 wherein accepting the input request includes accepting an authorization to purchase a product or service.

6. The computing server method of claim 1 , comprising:

assessing a charge to the user account if the function is performed.

7. The computing server method of claim 1 , comprising:

accepting personal profile information from a user;

updating the user account to store the personal profile information; and

associating the user account with the receiving device.

8. The computing server method of claim 1 , comprising:

accepting metadata information, the metadata including a time stamp related to user interaction via the user portal.

9. The computing server method of claim 1 , comprising:

accepting at least one user input request from each of a plurality of users;

consolidating a plurality of user input requests; and

concurrently performing functions on a plurality of receiving devices, the functions associated with the user input requests from each of the plurality of users.

10. The computing server method of claim 1 wherein accepting the input request includes accepting an input request to perform a function on a digital video recorder.

11. The computing server method of claim 10 wherein accepting the input request includes accepting an input request to command the digital video recorder to record a program at a determined time.

12. The computing server method of claim 1 , comprising:

providing to the receiving device an indication that the function on the receiving device has been performed, the indication configured to cause a feedback output to a user of the receiving device.

13. The computing server method of claim 12 wherein the feedback output to the user includes configuring a display, configuring an illumination output, configuring an audio device, or configuring a vibrating device.

14. A computer-readable non-transitory storage medium having a program to perform actions on receiving devices by performing a method comprising:

accepting from a web server an input request directed to a receiving device;

identifying the receiving device based on user information in the input request;

storing a job entry in a message queue, the job entry corresponding to the input request;

generating a function request corresponding to the job entry;

communicating the function request to a receiving device system, the receiving device system configured to:

initiate communications to the receiving device;

solicit operational information from the receiving device based on the function request;

retrieve from the receiving device time-related functions stored in a memory associated with the receiving device:

program the receiving device to perform digital video recording functions based on the function request; and

direct the receiving device to provide a feedback indication on the receiving device based on the function request;

receiving a response from the receiving device system;

storing a record associated with the response;

time-stamping the record associated with the response from the receiving device system; and

providing to the web server a time-stamped record in response to a second input request directed to the receiving device.

15. The computer-readable non-transitory storage medium of claim 14 , the method comprising:

executing a management process and a plurality of worker threads, wherein the management process stores the job entry in the message queue and a worker thread generates the function request.

16. The computer-readable non-transitory storage medium of claim 14 , the method comprising:

assessing a charge to an account associated with the receiving device; and

providing, to the receiving device, an indication that the receiving device has been programmed.

17. The computer-readable non-transitory storage medium of claim 14 wherein communicating the function request to the receiving device system includes transmitting a hypertext transfer protocol (HTTP) message.

Assignments (2)
CHANGE OF NAME Recorded Mar 1, 2017
From: SLING MEDIA, INC.
To: SLING MEDIA L.L.C.
Reel/Frame 041854/0291 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2011
From: MALIN, DAVID; SOSINSKI, ROBERT
To: SLING MEDIA, INC.
Reel/Frame 027057/0793 →