Methods and systems for facilitating a remote desktop session for a web browser and a remote desktop server
First Claim
1. A method for facilitating a remote desktop session between a web browser of a client device and a remote desktop server at a remote machine through a web server, utilizing a wrapper of the web server, the method comprising:
- receiving, at the wrapper, an input request from a web browser utilizing a request response protocol, wherein the request-response protocol is a pull protocol;
translating, at the wrapper, the input request into an input command compatible with a remote desktop display protocol to be utilized by a remote desktop client at the web server for facilitating communication with the remote desktop server at the remote machine, wherein the remote desktop display protocol is a push protocol;
providing the input command to the remote desktop client at the web server, to facilitate providing the input command to the remote desktop server utilizing the remote desktop display protocol;
receiving, at the wrapper, a remote desktop drawing command from the remote desktop server in response to the input command, wherein the remote desktop drawing command is based on an image of a remote desktop of the remote machine;
translating, at the wrapper, the remote desktop drawing command into a graphics drawing command compatible with the web server;
receiving a long polling HTTP request from the web browser; and
providing a web browser drawing update to the web browser in response to receiving the long polling HTTP request, wherein the web browser comprises a windows web browser and the web browser drawing update is compatible with the windows web browser.
16 Assignments
0 Petitions
Accused Products
Abstract
Examples of methods, systems, apparatus, and machine-readable storage media are provided to facilitate access and control of a remote desktop of a remote machine by a web browser of a client device through a web server without installing proprietary plug-ins or protocols on the client device. A web server may translate user input requests from a windows web browser into input calls compatible with a remote desktop display protocol. The web server may receive remote desktop drawing commands from the remote machine and translate the remote desktop drawing commands into web browser drawing updates compatible with the windows web browser. A web server may communicate with the windows web browser and a remote machine via HTTP and a remote desktop display protocol, accordingly.
-
Citations
29 Claims
-
1. A method for facilitating a remote desktop session between a web browser of a client device and a remote desktop server at a remote machine through a web server, utilizing a wrapper of the web server, the method comprising:
-
receiving, at the wrapper, an input request from a web browser utilizing a request response protocol, wherein the request-response protocol is a pull protocol; translating, at the wrapper, the input request into an input command compatible with a remote desktop display protocol to be utilized by a remote desktop client at the web server for facilitating communication with the remote desktop server at the remote machine, wherein the remote desktop display protocol is a push protocol; providing the input command to the remote desktop client at the web server, to facilitate providing the input command to the remote desktop server utilizing the remote desktop display protocol; receiving, at the wrapper, a remote desktop drawing command from the remote desktop server in response to the input command, wherein the remote desktop drawing command is based on an image of a remote desktop of the remote machine; translating, at the wrapper, the remote desktop drawing command into a graphics drawing command compatible with the web server; receiving a long polling HTTP request from the web browser; and providing a web browser drawing update to the web browser in response to receiving the long polling HTTP request, wherein the web browser comprises a windows web browser and the web browser drawing update is compatible with the windows web browser. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for facilitating accessing and controlling a remote desktop of a remote machine in real time from a web browser of a client device utilizing a web server, the method comprising:
-
receiving, at the web server, a connection request from the web browser utilizing HTTP; translating, at the web server, the connection request into a session control command compatible with a remote desktop display protocol; providing the session control command to a remote desktop client of the web server for providing the session control command to a remote desktop server of the remote machine and for establishing, controlling or terminating a remote desktop session with the remote desktop server; receiving, at the web server, a user input request from the web browser utilizing HTTP, translating, at the web server, the user input request into a remote desktop input command compatible with the remote desktop display protocol; providing the remote desktop input command to the remote desktop client for providing the remote desktop input command to the remote desktop server; receiving, at the web server, a remote desktop drawing command from the remote desktop server via the remote desktop client in response to the remote desktop input command, wherein the remote desktop drawing command is compatible with the remote desktop display protocol, and wherein the remote desktop drawing command represents a portion of an image of the remote desktop; translating, at the web server, the remote desktop drawing command into a graphics drawing command compatible with the web server; updating, at the web server, a portion of an image and coordinates based on the graphics drawing command; generating, at the web server, an image file based on the updated portion of the image; obtaining drawing coordinates based on the coordinates; receiving a long polling HTTP request from the web browser; and providing a web browser drawing update to the web browser in response to receiving the long polling HTTP request from the web browser, wherein the web browser drawing update comprises the image file and the drawing coordinates, and wherein the web browser drawing update is compatible with the web browser, wherein the remote desktop drawing command represents a portion of the remote desktop, and the image represents the remote desktop, wherein (i) the web server comprises a windows web server, (ii) the web browser is s windows web browser, (iii) the remote desktop display protocol is a push protocol, and (iv) HTTP is a pull protocol. - View Dependent Claims (7, 8, 9)
-
-
10. A non-transitory machine-readable storage medium comprising instructions stored therein, the instructions executable by one or more processors to perform one or more operations, the instructions comprising:
-
code for causing one or more processors to facilitate receiving an input request from a web browser utilizing a request-response protocol, wherein the request-response protocol is a pull protocol; code for causing one or more processors to translate the input request into an input command compatible with a remote desktop display protocol to be utilized by a remote desktop client for facilitating communication with a remote desktop server, wherein the remote desktop display protocol is a push protocol; code for causing one or more processors to facilitate providing the input command to the remote desktop client, to facilitate providing the input command to the remote desktop server utilizing the remote desktop display protocol; code for causing one or more processors to facilitate receiving a remote desktop drawing command from the remote desktop server in response to the input command, wherein the remote desktop drawing command is based on an image of a remote desktop of the remote machine; code for causing one or more processors to translate the remote desktop drawing command into a graphics drawing command; code for causing one or more processors to receive a long polling HTTP request from the web browser; and code for causing one or more processors to provide a web browser drawing update to the web browser in response to receiving the long polling HTTP request, wherein the web browser comprises a windows web browser and the web browser drawing update is compatible with the windows web browser. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A non-transitory machine-readable storage medium comprising instructions stored therein, the instructions executable by one or more processors to facilitate accessing and controlling a remote desktop of a remote machine in real time from a web browser of a client device via a hypertext transfer protocol (HTTP) handler and a remote desktop client wrapper for a web server, the machine readable storage medium comprising:
-
the HTTP handler; and the remote desktop client wrapper, wherein the HTTP handler is configured to facilitate receiving a connection request and a user input request from the web browser utilizing HTTP, and to facilitate providing the connection request and the user input request to the remote desktop client wrapper, wherein the HTTP handler is configured to receive a long polling HTTP request from the web browser, wherein the HTTP handler is configured to provide a web browser drawing update to the web browser in response to receiving the long polling HTTP request from the web browser, wherein the web browser drawing update is compatible with the web browser, wherein the remote desktop client wrapper is configured to facilitate receiving the connection request and the user input request, to translate the connection request into a session control command compatible with a remote desktop display protocol, and to translate the user input request into a remote desktop input command compatible with the remote desktop display protocol, wherein the remote desktop client wrapper is configured to facilitate providing the session control command to a remote desktop client for providing the session control command to a remote desktop server of the remote machine and for establishing, controlling or terminating a remote desktop session with the remote desktop server, wherein the remote desktop client wrapper is configured to facilitate providing the remote desktop input command to the remote desktop client for providing the remote desktop input command to the remote desktop server, wherein the remote desktop client wrapper is configured to facilitate receiving a remote desktop drawing command from the remote desktop server via the remote desktop client in response to the remote desktop input command, wherein the remote desktop drawing command is compatible with the remote desktop display protocol, wherein the remote desktop client wrapper is configured to translate the remote desktop drawing command into a graphics drawing command compatible with the web server, and to update a portion of an image representing the remote desktop and coordinates based on the graphics drawing command, and wherein the HTTP handler is configured to generate an image file based on the updated portion of the image and to obtain drawing coordinates based on the coordinates in response to the drawing request, wherein the web browser drawing update comprises the image file and the drawing coordinates, wherein the remote desktop drawing command represents a portion of the remote desktop, and the image represents the remote desktop, wherein (i) the web server comprises a windows web server, (ii) the web browser is s windows web browser, (iii) the remote desktop display protocol is a push protocol, and (iv) HTTP is a pull protocol. - View Dependent Claims (17, 18, 19)
-
-
20. An apparatus for facilitating a remote desktop session between a web browser of a client device and a remote desktop server of a remote machine through a web server, utilizing a wrapper at the web server, the apparatus comprising:
-
a processor; a memory coupled to the processor; instructions stored in the memory that, when executed, cause the processor to; receive an input request from a web browser utilizing a request-response protocol, wherein the request-response protocol is a pull protocol; translate the input request into an input command compatible with a remote desktop display protocol to be utilized by a remote desktop client at the web server for facilitating communication with the remote desktop server at the remote machine, wherein the remote desktop display protocol is a push protocol; provide the input command to a remote desktop client at the web server, to facilitate providing the input command to the remote desktop server utilizing the remote desktop display protocol; receive a remote desktop drawing command from the remote desktop server response to the input command, wherein the remote desktop drawing command is based on an image of a remote desktop of the remote machine; translate the remote desktop drawing command into a graphics drawing command compatible with the web server; receive a long polling HTTP request from the web browser; and provide a web browser drawing update to the web browser in response to receiving the long polling HTTP request, wherein the web browser comprises a windows web browser and the web browser drawing update is compatible with the windows web browser. - View Dependent Claims (21, 22, 23, 24)
-
-
25. An apparatus for facilitating accessing and controlling a remote desktop of a remote machine in real time from a web browser of a client device utilizing a web server, the apparatus comprising:
-
a processor; a memory coupled to the processor; instructions stored in the memory that, when executed, cause the processor to; receive a connection request from the web browser utilizing HTTP; translate the connection request into a session control command compatible with a remote desktop display protocol; provide the session control command to a remote desktop client of the web server for providing the session control command to a remote desktop server of the remote machine and for establishing, controlling or terminating a remote desktop session with the remote desktop server; receive a user input request from the web browser utilizing HTTP, translate the user input request into a remote desktop input command compatible with the remote desktop display protocol; provide the remote desktop input command to the remote desktop client for providing the remote desktop input command to the remote desktop server; receive a remote desktop drawing command from the remote desktop server via the remote desktop client in response to the remote desktop input command, wherein the remote desktop drawing command is compatible with the remote desktop display protocol, and wherein the remote desktop drawing command represents a portion of an image of the remote desktop; translate the remote desktop drawing command into a graphics drawing command compatible with the web server; update a portion of an image and coordinates based on the graphics drawing command; generate an image file based on the updated portion of the image; obtain drawing coordinates based on the coordinates; receiving a long polling HTTP request from the web browser, the long polling request comprising a drawing request; and provide a web browser drawing update to the web browser in response to receiving the long polling HTTP request from the web browser, wherein the web browser drawing update comprises the image file and the drawing coordinates, and wherein the web browser drawing update is compatible with the web browser, wherein the remote desktop drawing command represents a portion of the remote desktop, and the image represents the remote desktop, wherein (i) the web server comprises a windows web server, (ii) the web browser is s windows web browser, (iii) the remote desktop display protocol is a push protocol, and (iv) HTTP is a pull protocol. - View Dependent Claims (26, 27, 28, 29)
-
Specification