Dynamically determining and utilizing an application programming interface of an electronic device
First Claim
Patent Images
1. A method of dynamically determining and utilizing an application programming interface within a television set-top box, the method comprising:
- determining, at execution time, specific requirements and capabilities of the television set-top box that are embodied in the application programming interface;
receiving, from the application programming interface within the television set-top box, a data structure definition based on the specific requirements and capabilities, wherein the data structure definition describes types and forms of data required for accessing one or more applications of the television set-top box using the application programming interface;
transmitting, via an external communications link of the television set-top box, the data structure definition to a web browser application executing on a remote electronic device, wherein receiving the data structure definition at the web browser application allows the web browser application to generate data structures that conform to the specific requirements and capabilities of the television set-top box, thereby facilitating access to the application programming interface by the remote electronic device without the web browser application being revised, recompiled, or reloaded;
generating, within the television set-top box, a digital video recorder (DVR) data structure for accessing a DVR application of the television set-top box based on the definition;
receiving data at the external communications link of the television set-top box, wherein receiving the data includes receiving a first JavaScript Object Notation object, wherein the data has a type and form suitable for accessing the DVR application of the television set-top box, wherein the data is received from the web browser application of the remote electronic device, and wherein the web browser application of the remote electronic device includes a DVR component that generates the data based on input provided by an end-user of the web browser application for controlling the DVR application of the television set-top box;
updating the DVR data structure with the received data; and
transferring the updated DVR data structure to the application programming interface by transferring a second JavaScript Object Notation object, wherein receiving the updated DVR data structure at the application programming interface causes the television set-top box to control the DVR application according to the input provided by the end-user to the web browser application of the remote electronic device.
5 Assignments
0 Petitions
Accused Products
Abstract
A method of dynamically determining and utilizing an application programming interface within an electronic device is presented. In the method, a definition of an object is received from the application programming interface, wherein the definition describes at least a portion of the application programming interface. The object is then generated based on the definition, wherein the object includes data for controlling the electronic device. The object is transferred to the application programming interface.
-
Citations
18 Claims
-
1. A method of dynamically determining and utilizing an application programming interface within a television set-top box, the method comprising:
-
determining, at execution time, specific requirements and capabilities of the television set-top box that are embodied in the application programming interface; receiving, from the application programming interface within the television set-top box, a data structure definition based on the specific requirements and capabilities, wherein the data structure definition describes types and forms of data required for accessing one or more applications of the television set-top box using the application programming interface; transmitting, via an external communications link of the television set-top box, the data structure definition to a web browser application executing on a remote electronic device, wherein receiving the data structure definition at the web browser application allows the web browser application to generate data structures that conform to the specific requirements and capabilities of the television set-top box, thereby facilitating access to the application programming interface by the remote electronic device without the web browser application being revised, recompiled, or reloaded; generating, within the television set-top box, a digital video recorder (DVR) data structure for accessing a DVR application of the television set-top box based on the definition; receiving data at the external communications link of the television set-top box, wherein receiving the data includes receiving a first JavaScript Object Notation object, wherein the data has a type and form suitable for accessing the DVR application of the television set-top box, wherein the data is received from the web browser application of the remote electronic device, and wherein the web browser application of the remote electronic device includes a DVR component that generates the data based on input provided by an end-user of the web browser application for controlling the DVR application of the television set-top box; updating the DVR data structure with the received data; and transferring the updated DVR data structure to the application programming interface by transferring a second JavaScript Object Notation object, wherein receiving the updated DVR data structure at the application programming interface causes the television set-top box to control the DVR application according to the input provided by the end-user to the web browser application of the remote electronic device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method of dynamically facilitating use of an application programming interface within a television set-top box, the method comprising:
-
determining, at execution time, specific requirements and capabilities of the television set-top box that are embodied in the application programming interface; receiving, from the application programming interface within the television set-top box, a data structure definition based on the specific requirements and capabilities the application programming interface, wherein the data structure definition describes types and forms of data required for accessing one or more applications of the television set-top box using the application programming interface; generating an instance of a digital video recorder (DVR) data structure based on the definition, wherein generating includes adapting the DVR data structure to conform to the specific requirements and capabilities of the television set-top box, thereby facilitating access to the application programming interface by a web browser application executing on a remote electronic device without the web browser application being revised, recompiled, or reloaded; transferring the instance of the DVR data structure to the web browser application executing on the remote electronic device, wherein transferring the instance of the DVR data structure includes transferring a first JavaScript Object Notation object, wherein receiving the instance of the DVR data structure at the web browser application causes the web browser application to update the instance of the DVR data structure with command data generated by a DVR component of the web browser application in response to receipt of input provided by an end-user of the remote electronic device; receiving the updated instance of the DVR data structure from the web browser application, wherein receiving the updated instance of the DVR data structure includes receiving a second JavaScript Object Notation object, wherein the received updated instance of the DVR data structure comprises the command data generated by the DVR component of the web browser application for the application programming interface to control the DVR application according to the input provided by the end-user; and transferring the updated instance of the DVR data structure to the application programming interface, wherein receiving the updated instance of the DVR data structure at the application programming interface causes the television set-top box to control the DVR application according to the input provided by the end-user of the remote electronic device; wherein transferring the instance of the DVR data structure to the web browser application occurs over a sockets communication connection between the television set-top box and the remote electronic device. - View Dependent Claims (12, 13)
-
-
14. A television set-top box, comprising:
-
non-transitory data storage configured to store software components comprising instructions; and a processor configured to execute the instructions of the software components; wherein the software components comprise; an application programming interface; a digital video recorder (DVR) application; and communication software configured to facilitate communication between the application programming interface and a web browser application that is deployed on a remote electronic device, wherein the web browser application includes a DVR component to enable an end-user to control the DVR application based on input provided by an end-user to the web browser application directly via the remote electronic device; wherein the application programming interface is configured to register a data structure definition, wherein the data structure definition describes types and forms of data required for accessing one or more applications of the television set-top box using the application programming interface; wherein the communication software is configured to; determine, at execution time, specific requirements and capabilities of the television set-top box that are embodied in the application programming interface, receive the data structure definition, generate a DVR data structure that conforms to the specific requirements and capabilities based on the data structure definition such that receiving the DVR data structure at the web browser application facilitates access to the application programming interface by the web browser application without the web browser application being revised, recompiled, or reloaded, transfer an instance of the DVR data structure to the web browser application by transferring a first JavaScript Object Notation object, receive an updated instance of the DVR data structure from the web browser application by receiving a second JavaScript Object Notation object that includes command data generated by a DVR component of the web browser application in response to the input provided by the end-user, and transfer the updated instance of the DVR data structure to the application programming interface; wherein the application programming interface is configured to receive the updated instance of the DVR data structure and to control the DVR application based on the command data. - View Dependent Claims (15, 16, 17, 18)
-
Specification