Remote device infrastructure
AssigneeBrowserStack Limited
InventorsDhimil Gosalia, Yohan Pereira
Life of this patent
Estimating the term…
Abstract
Disclosed are systems and methods for enabling a developer to use a local browser, running on a local machine of the developer in a first location to access real devices (e.g., smart phones) at a second location, such as a data center. The developer can select and control the remote devices, in the second location. The described embodiments can capture developer's inputs from the first location and input them to the remote device in the second location. A video stream of the remote device is transmitted to the browser in the first location and displayed in a replica canvas on the developer's browser. The developer can interact with the canvas on his/her browser, as if the remote device were present in the first location.
Claims20
A method comprising:
- issuing, from a browser at a first location, a request to connect to a remote device at a second location;
- selecting the remote device, from a plurality of remote devices at the second location, the plurality of the remote devices coupled to a host;
- selecting a communication initiation server;
- transmitting an identifier of the communication initiation server to the host, at the second location;
- transmitting the identifier of the communication initiation server to the selected remote device;
- connecting, via the communication initiation server, the browser and the selected remote device;
- exchanging, via the communication initiation server, parameters of a communication network between the browser and the selected remote device;
- establishing the communication network between the browser and the selected remote device, based on the exchanged parameters of the communication network;
- generating a replica display of the selected remote device on the browser;
- broadcasting a video stream of a display of the selected remote device;
- transmitting the broadcast video stream, from the selected remote device to the browser, via the communication network;
- and
- displaying the broadcast video stream in the replica display in the browser.
A non-transitory computer storage that stores executable program instructions that, when executed by one or more computing devices, configure the one or more computing devices to perform operations comprising:
- issuing, from a browser at a first location, a request to connect to a remote device at a second location;
- selecting the remote device, from a plurality of remote devices at the second location, the plurality of the remote devices coupled to a host;
- selecting a communication initiation server;
- transmitting an identifier of the communication initiation server to the host, at the second location;
- transmitting the identifier of the communication initiation server to the selected remote device;
- connecting, via the communication initiation server, the browser and the selected remote device;
- exchanging, via the communication initiation server, parameters of a communication network between the browser and the selected remote device;
- establishing the communication network between the browser and the selected remote device, based on the exchanged parameters of the communication network;
- generating a replica display of the selected remote device on the browser;
- broadcasting a video stream of a display of the selected remote device;
- transmitting the broadcast video stream, from the selected remote device to the browser, via the communication network;
- and
- displaying the broadcast video stream in the replica display in the browser.
A system comprising one or more processors, wherein the one or more processors are configured to perform operations comprising:
- issuing, from a browser at a first location, a request to connect to a remote device at a second location;
- selecting the remote device, from a plurality of remote devices at the second location, the plurality of the remote devices coupled to a host;
- selecting a communication initiation server;
- transmitting an identifier of the communication initiation server to the host, at the second location;
- transmitting the identifier of the communication initiation server to the selected remote device;
- connecting, via the communication initiation server, the browser and the selected remote device;
- exchanging, via the communication initiation server, parameters of a communication network between the browser and the selected remote device;
- establishing the communication network between the browser and the selected remote device, based on the exchanged parameters of the communication network;
- generating a replica display of the selected remote device on the browser;
- broadcasting a video stream of a display of the selected remote device;
- transmitting the broadcast video stream, from the selected remote device to the browser, via the communication network;
- and
- displaying the broadcast video stream in the replica display in the browser.
Dependencies are inferred from the claim text.