Web-based transcoding to clients for client-server communication
In particular embodiments, a first computing device associated with a web service may receive a connection from an HTML-compatible client. The first computing device may provide the client a script. A second computing device associated with the web service may receive connection information from the HTML-compatible client and assign the client a unique socket. The second computing device may launch a transcoding remote desktop client and receive a termination of the connection by the client.
1. A method comprising:
by a first computing device associated with a web service, receiving a remote desktop protocol connection from a hypertext markup language (HTML)-compatible client;
by the first computing device, providing the HTML-compatible client a script with remote desktop protocol connection information, wherein the script specifies encoding for one or more output streams by the HTML-compatible client;
by a second computing device associated with the web service, receiving the remote desktop protocol connection information from the HTML-compatible client;
by the second computing device, assigning the remote desktop protocol connection a unique socket to create a reference that defines the remote desktop protocol connection information;
by the second computing device, loading a connection page on the HTML-compatible client, wherein the connection page describes how the remote desktop protocol connection is to take place;
receiving one or more connection arguments;
providing one or more connection services;
by the second computing device, launching a transcoding remote desktop client with a specification of the unique socket, wherein launching the transcoding remote desktop client begins a transcoding operation, and wherein the specification defines an input data handler and an output data handler;
interfacing by one or more transcoding services a web browser of the HTML-compatible client with a remote desktop extension protocol;
transcoding by the HTML-compatible client at least one of a graphical device interface and a virtual channel using an HTML-compatible protocol;
by the second computing device, receiving a termination of the remote desktop protocol connection by the HTML-compatible client; and
ending the transcoding operation.
2. The method of claim 1 , wherein receiving the remote desktop protocol connection from the HTML-compatible client comprises receiving the remote desktop protocol connection information from the HTML-compatible client comprising credentials.
3. The method of claim 2 , wherein the remote desktop protocol connection information is input by a user via a dialog menu.
4. The method of claim 1 , wherein launching the transcoding remote desktop client is performed based at least in part on load-balancing information.
5. The method of claim 1 , wherein launching the transcoding remote desktop client occurs based at least in part on the assigned socket.
6. The method of claim 1 , wherein launching the transcoding remote desktop client occurs based at least in part on the connection information.
7. The method of claim 1 , wherein the transcoding remote desktop client comprises a generic transcoding service.
8. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:
receive at a first computing device associated with a web service a remote desktop protocol connection from a hypertext markup language (HTML)-compatible client, the first computing device comprising the media;
at the first computing device, provide the HTML-compatible client a script with remote desktop protocol connection information, wherein the script specifies encoding for one or more output streams by the HTML-compatible client;
receive at a second computing device associated with the web service, the remote desktop protocol connection information from the HTML-compatible client, the second computing device comprising the media;
at the second computing device, assign the remote desktop protocol connection a unique socket to create a reference that defines the remote desktop protocol connection information;
at the second computing device, load a connection page on the HTML-compatible client, wherein the connection page describes how the remote desktop protocol connection is to take place;
receive one or more connection arguments;
provide one or more connection services;
at the second computing device, launch a transcoding remote desktop client with a specification of the unique socket, wherein launching the transcoding remote desktop client begins a transcoding operation, and wherein the specification defines an input data handler and an output data handler;
interface by one or more transcoding services a web browser of the HTML-compatible client with a remote desktop extension protocol;
transcode by the HTML-compatible client at least one of a graphical device interface and a virtual channel using an HTML-compatible protocol;
at the second computing device, receive a termination of the remote desktop protocol connection by the HTML-compatible client; and
end the transcoding operation.
9. The media of claim 8 , wherein receiving the remote desktop protocol connection from the HTML-compatible client comprises receiving the remote desktop protocol connection information from the client comprising credentials.
10. The media of claim 9 , wherein the remote desktop protocol connection information is input by a user via a dialog menu.
11. The media of claim 8 , wherein launching the transcoding remote desktop client is performed based at least in part on load-balancing information.
12. The media of claim 8 , wherein launching the transcoding remote desktop client occurs based at least in part on the assigned socket.
13. The media of claim 8 , wherein launching the transcoding remote desktop client occurs based at least in part on the connection information.
14. The media of claim 8 , wherein the transcoding remote desktop client comprises a generic transcoding service.
15. A system comprising:
a first computing device comprising one or more processors, the first computing device associated with a web service;
a second computing device comprising one or more processors, the second computing device associated with the web service; and
a memory coupled to the processors comprising instructions executable by the processors, the processors operable when executing the instructions to:
receive at the first computing device a remote desktop protocol connection from a hypertext markup language (HTML)-compatible client;
at the first computing device, provide the client a script with remote desktop protocol connection information, wherein the script specifies encoding for one or more output streams by the HTML-compatible client;
receive at the second computing device the remote desktop protocol connection information from the HTML-compatible client;
at the second computing device, assign the remote desktop protocol connection a unique socket to create a reference that defines the remote desktop protocol connection information;
at the second computing device, load a connection page on the HTML-compatible client, wherein the connection page describes how the remote desktop protocol connection is to take place;
receive one or more connection arguments;
provide one or more connection services;
at the second computing device, launch a transcoding remote desktop client with a specification of the unique socket, wherein launching the transcoding remote desktop client begins a transcoding operation, and wherein the specification defines an input and an output data handler;
interface by one or more transcoding services a web browser of the HTML-compatible client with a remote desktop extension protocol;
transcode by the HTML-compatible client at least one of a graphical device interface and a virtual channel using an HTML-compatible protocol;
at the second computing device, receive a termination of the remote desktop protocol connection by the client; and
end the transcoding operation.
16. The system of claim 15 , wherein receiving the remote desktop protocol connection from the HTML-compatible client comprises receiving the remote desktop protocol connection information from the client comprising credentials.
17. The system of claim 16 , wherein the remote desktop protocol connection information is input by a user via a dialog menu.
18. The system of claim 15 , wherein launching the transcoding remote desktop client is performed based at least in part on load-balancing information.
19. The system of claim 15 , wherein launching the transcoding remote desktop client occurs based at least in part on the assigned socket.
20. The system of claim 15 , wherein launching the transcoding remote desktop client occurs based at least in part on the connection information.