Accessing hardware devices using web server abstractions
First Claim
1. A method for accessing remote hardware devices, the method comprising:
- receiving by a web browser, configured to accept application programming interface (API) calls from a requesting application for initiating hardware device access, a Hypertext Transfer Protocol (HTTP) request via the API;
transmitting by the web browser the HTTP request to a remote hardware device server configured to provide access to a remote hardware device, the HTTP request including a request for establishing an authenticated session with the remote hardware device, the remote hardware device server being local to the remote hardware device;
upon establishment of the authenticated session, in response to a first API call from the requesting application for an action to be taken with respect to the remote hardware device, the web browser transmitting an HTTP request, including commands corresponding to the action to be taken with respect to the remote hardware device, to the remote hardware device server; and
receiving by the web browser a second API call from the requesting application for enabling the requesting application to receive at least one event notification related to the remote hardware device from the remote hardware device server.
1 Assignment
0 Petitions
Accused Products
Abstract
In the new architecture, a client that desires access to a piece of hardware sends HTTP requests to a device server. The server receives a HTTP requests, accesses a device on behalf of the client, and send the device'"'"'s response back to the client in the form of an HTTP response. This architecture has three primary advantages. First, it offers a clean interface for clients where all devices are accessed as if they are web servers. Second, it helps make devices more secure whereby clients can be prevented from accessing hardware directly, and all device access is forced through the narrow HTTP access protocol and checked for compliance with a desired security policy. Third, since HTTP allows local and remote servers to be contacted, the proposed architecture makes it easy for clients to communicate with devices that are not physically co-resident with the client but which are accessible via a network connection.
44 Citations
20 Claims
-
1. A method for accessing remote hardware devices, the method comprising:
-
receiving by a web browser, configured to accept application programming interface (API) calls from a requesting application for initiating hardware device access, a Hypertext Transfer Protocol (HTTP) request via the API; transmitting by the web browser the HTTP request to a remote hardware device server configured to provide access to a remote hardware device, the HTTP request including a request for establishing an authenticated session with the remote hardware device, the remote hardware device server being local to the remote hardware device; upon establishment of the authenticated session, in response to a first API call from the requesting application for an action to be taken with respect to the remote hardware device, the web browser transmitting an HTTP request, including commands corresponding to the action to be taken with respect to the remote hardware device, to the remote hardware device server; and receiving by the web browser a second API call from the requesting application for enabling the requesting application to receive at least one event notification related to the remote hardware device from the remote hardware device server. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A user device configured to:
-
receive by a web browser associated with the user device, application programming interface (API) calls from a requesting application for initiating hardware device access and receiving any resulting status and data, a Hypertext Transfer Protocol (HTTP) request via the API; transmit by the web browser the HTTP request to a remote hardware device server configured to provide access to a remote hardware device, the HTTP request including a request for establishing an authenticated session with the remote hardware device, the remote hardware device server being local to the remote hardware device; upon establishment of the authenticated session, in response to a first API call from the requesting application for an action to be taken with respect to the remote hardware device, the web browser configured to transmit an HTTP request, including commands corresponding to the action to be taken with respect to the remote hardware device, to the remote hardware device server; and receive at the web browser a second API call from the requesting application for enabling the requesting application to receive at least one event notification related to the remote hardware device from the remote hardware device server. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory storage medium comprising instructions configured to:
-
receive by a web browser associated with the user device, application programming interface (API) calls from a requesting application for initiating hardware device access and receiving any resulting status and data, a Hypertext Transfer Protocol (HTTP) request via the API; transmit by the web browser the HTTP request to a remote hardware device server configured to provide access to a remote hardware device, the HTTP request including a request for establishing an authenticated session with the remote hardware device, the remote hardware device server being local to the remote hardware device; upon establishment of the authenticated session, in response to a first API call from the requesting application for an action to be taken with respect to the remote hardware device, the web browser configured to transmit an HTTP request, including commands corresponding to the action to be taken with respect to the remote hardware device, to the remote hardware device server; and receive at the web browser a second API call from the requesting application for enabling the requesting application to receive at least one event notification related to the remote hardware device from the remote hardware device server. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification