Multimedia redirection in a virtualized environment using a proxy server

US9571599B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9571599-B2
Application numberUS-201514840967-A
CountryUS
Kind codeB2
Filing dateAug 31, 2015
Priority dateMay 20, 2013
Publication dateFeb 14, 2017
Grant dateFeb 14, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Methods and systems for multimedia redirection in a virtualized environment using a proxy server are described herein. The proxy server may store scripting code that may be injected into web content retrieved from a content resource server. The injected scripting code may cause an instantiated application in the virtualized environment to intercept/override at least some method calls in the web content. The proxy server may send the redirected multimedia content and other information to a client agent application executing on a user's computing device for rendering.

First claim

Opening claim text (preview).

What is claimed is: 1. A proxy server communicatively coupled with a content server and an instantiated application in a virtualized environment on a virtualization server, the proxy server comprising: a computer processor; a computer memory storing computer-executable instructions that, when executed by the computer processor, cause the proxy server to: send a request for web content to the content server; override at least one element in the web content received from the content server; and inject scripting code stored in the computer memory of the proxy server into the received web content, wherein the stored scripting code is configured to cause the instantiated application to send information associated with the at least one overridden element to the proxy server, wherein the information comprises at least a location of multimedia content; and a media player receiving at least the location of the received web content and transmitting at least multimedia content using a remote presentation protocol to a client agent application at a user computing device, wherein the virtualization server hosts at least the instantiated application in the virtualized environment, wherein the instantiated application comprises an operational sandbox within which the instantiated application confines execution of the stored scripting code injected into the received web content. 2. The proxy server of claim 1 , wherein the proxy server is located at a standalone appliance device in communication with the virtualization server and user computing device. 3. The proxy server of claim 1 , wherein the media player is instantiated at a same physical server computer as the proxy server. 4. The proxy server of claim 1 , wherein the proxy server is configured to process HTTP traffic, but not configured to process traffic formatted in the remote presentation protocol, and wherein the proxy server is directly inaccessible to the user computing device. 5. The proxy server of claim 1 , wherein the proxy server is configured to process HTTP traffic and traffic formatted in the remote presentation protocol, and wherein the proxy server is in direct communication with the user computing device. 6. The proxy server of claim 1 , wherein the information associated with the executed one of the at least one overridden element comprises an input parameter to a tag in the web content including a uniform resource locator corresponding to multimedia content. 7. The proxy server of claim 1 , wherein the web content is formatted using at least one of: at least one of a video tag, an audio tag, and a canvas tag, and scripting code configured to dynamically create at least one of a video tag, an audio tag, and a canvas tag. 8. The proxy server of claim 1 , wherein the remote presentation protocol comprises ICA protocol. 9. The proxy server of claim 1 , wherein the media player is remotely located from the user computing device and is instantiated at the virtualization server. 10. The proxy server of claim 1 , wherein the media player is instantiated at a standalone appliance device in communication with the virtualization server and the user computing device. 11. The proxy server of claim 1 , wherein the instantiated application is configured to use the proxy server as an HTTP proxy. 12. The proxy server of claim 1 , wherein the computer memory of the proxy server further stores computer-executable instructions that, when executed by the computer processor, cause the proxy server to: receive from the user computing device a request to instantiate the application in the virtualized environment; and transmit to the virtualization server the request to instantiate the application in the virtualized environment. 13. A method involving a computing system comprising at least a proxy server, a media player, and a virtualization server, wherein an application in a virtualized environment hosted by the virtualization server is communicatively connected to a user computing device through a remote presentation protocol, the method comprising: receiving, by the proxy server, web content requested by the application in the virtualized environment in response to a request from the user computing device; modifying the web content to intercept at least one method call that is executable on the web content by the application in the virtualized environment; intercepting the at least one method call; transmitting information associated with the intercepted at least one method call; and causing to render at the user computing device, using the connection established using the remote presentation protocol, multimedia content identified by the web content and the information associated with the intercepted at least one method call, wherein the information associated with the intercepted at least one method call comprises input parameters to tags in the web content including an uniform resource locator corresponding to multimedia content, wherein the web content is formatted as tags including at least one of: at least one of a video tag, an audio tag, and a canvas tag, and scripting code configured to dynamically create at least one of a video tag, an audio tag, and a canvas tag, and wherein the application comprises an operational sandbox within which the application confines execution of scripting code injected into the web content. 14. The method of claim 13 , comprising: transmitting at least the multimedia content, by the media player, to a client agent application at the user computing device using the connection created by the remote presentation protocol. 15. The method of claim 13 , wherein the proxy server is configured to process HTTP traffic, but not configured to process traffic formatted in the remote presentation protocol. 16. The method of claim 13 , wherein the proxy server is configured to process HTTP traffic and traffic formatted in the remote presentation protocol. 17. One or more non-transitory computer-readable media storing computer-executable instructions that, when executed by one or more processors, cause a computing system comprising a proxy server, a media player, a virtualization server, a resource server, and a user computing device, to perform steps comprising: receiving from the user computing device a request to instantiate an application in a virtualized environment at the virtualization server; receiving from the user computing device a location of web content stored on the resource server; transmitting, by the proxy server, a request to the resource server for the web content stored on the resource server; receiving, by the proxy server, the web content from the resource server; modifying, by the proxy server, the web content using scripting code stored in a computer memory, wherein the scripting code is injected into the web content to override at least one method in the received web content; transmitting, by the proxy server, the modified web content to the instantiated application in the virtualized environment on the virtualization server for execution by the instantiated application, wherein the instantiated application comprises an operational sandbox within which the application confines execution of the scripting code; in response to the instantiated application on the virtualization server executing any one of the at least one overridden method, receiving, by the proxy server, from the instantiated application, information associated with the executed one of the at least one overridden method; receiving, by the media player remotely located from the user computing device, redirected multimedia content and th

Assignees

Inventors

Classifications

  • by executing in a restricted environment, e.g. sandbox or secure virtual machine · CPC title

  • Network streaming of media packets · CPC title

  • Electricity · mapped topic

  • Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines · CPC title

  • based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9571599B2 cover?
Methods and systems for multimedia redirection in a virtualized environment using a proxy server are described herein. The proxy server may store scripting code that may be injected into web content retrieved from a content resource server. The injected scripting code may cause an instantiated application in the virtualized environment to intercept/override at least some method calls in the web…
Who is the assignee on this patent?
Citrix Systems Inc
What technology area does this patent fall under?
Primary CPC classification H04L67/2823. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Feb 14 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).