Digital personal assistant remote invocation
US-2016070580-A1 · Mar 10, 2016 · US
US9769227B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9769227-B2 |
| Application number | US-201414495420-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 24, 2014 |
| Priority date | Sep 24, 2014 |
| Publication date | Sep 19, 2017 |
| Grant date | Sep 19, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A user may interact with a collection of devices that each exhibit particular device properties. Where each device executes and presents an isolated computing environment, inconsistencies may arise in the user interaction by the user with different devices. Alternatively, a terminal server may present a computing environment to various auxiliary devices, but such presentation may fail to utilize some device properties of some devices, and/or may present a computing environment that is not suitable for some devices. Instead, a primary device of the device collection may adapt a primary computing environment to an auxiliary computing environment for each auxiliary device, based upon its device properties. Upon receiving a request to execute an application, the primary device may execute the application within the auxiliary computing environment, and may adapt the application based upon the device properties. The primary device may stream each auxiliary computing environment to the respective auxiliary device.
Opening claim text (preview).
What is claimed is: 1. A method of configuring a primary device comprising a processor to present a primary computing environment to a user through a device collection, the method comprising: executing, on the processor, instructions that cause the primary device to, for an auxiliary device of the device collection: adapt the primary computing environment according to a set of device properties of the auxiliary device to generate an auxiliary computing environment for the auxiliary device, including a set of running applications executed on behalf of the auxiliary device; responsive to at least one request of a user, instantiate a first application and a second application within the auxiliary computing environment, wherein the first application and the second application are different applications: adapt the first application and the second application within the auxiliary computing environment according to the device properties of the auxiliary device; execute the first application and the second application on behalf of the auxiliary device; and add the first application and the second application to the set of running applications executed by the primary device on behalf of the auxiliary device; and stream a presentation of the auxiliary computing environment to the auxiliary device. 2. The method of claim 1 , wherein the auxiliary computing environment further comprises: a first auxiliary device comprising a first auxiliary computing environment; and a second auxiliary device comprising a second auxiliary computing environment, wherein the first auxiliary device is different than the second auxiliary device. 3. The method of claim 2 , wherein executing the instructions further causes the primary device to, responsive to receiving a request to substitute the second auxiliary computing environment for the first auxiliary computing environment of the first auxiliary device, presenting the second auxiliary computing environment on the first auxiliary device instead of the first computing environment. 4. The method of claim 2 , wherein adapting the selected application within the first auxiliary computing environment of the first auxiliary device further comprises: according to the device properties of the first auxiliary device and the second auxiliary device, partition the selected application into a first application portion to be presented within the first auxiliary computing environment of the first auxiliary device and a second application portion to be presented within the second auxiliary computing environment of the second auxiliary device; and streaming the presentation of the first auxiliary computing environment to the first auxiliary device including only the first application portion and excluding the second application portion. 5. The method of claim 4 , wherein executing the instructions on the processor further causes the primary device to, responsive to detecting an addition of a third auxiliary device to the device collection, repartition at least one application executing within an auxiliary computing environment of at least one auxiliary device to include the third auxiliary device. 6. The method of claim 2 , wherein executing the instructions on the processor further causes the primary device to, responsive to detecting a removal of the auxiliary device from the device collection, move at least a portion of an application presented within the first auxiliary computing environment of the first auxiliary device to the second auxiliary computing environment of the second auxiliary device. 7. The method of claim 2 , wherein: receiving the request to instantiate the selected application further comprises: responsive to receiving, from the user through the second auxiliary device, a request specifying the first auxiliary device for which to execute the selected application, execute the selected application within the first auxiliary computing environment of the first auxiliary device. 8. The method of claim 2 , wherein: the first auxiliary computing environment further comprises an instance of a first application; the second auxiliary computing environment further comprises an instance of a second application; and executing the instructions on the processor further causes the primary device to enable communication between the first application executing within the first auxiliary computing environment and the second application executing within the first auxiliary computing environment. 9. The method of claim 2 , wherein: the first auxiliary device further comprises an input component; the second auxiliary computing environment further comprises an instance of a second application; and executing the instructions on the processor further causes the primary device to, responsive to receiving a request from the user to bind the input component of the first auxiliary device to the second application executing within the second auxiliary computing environment of the second auxiliary device, bind the input component of the first auxiliary device to the second application. 10. The method of claim 9 , wherein: the first auxiliary device further comprises a first auxiliary computing environment sharing a layout boundary with the second auxiliary computing environment of the second auxiliary device; and the request received from the user further comprises a transition of the user input of the input component across the layout boundary between the first auxiliary computing environment and the second auxiliary computing environment. 11. The method of claim 1 , wherein: generating the auxiliary computing environment for the respective auxiliary devices further comprises: selecting, from an application set of the primary computing environment, an application subset for the auxiliary device; streaming the presentation of the auxiliary computing environment to the auxiliary device further comprises: presenting the application subset within the auxiliary computing environment to the auxiliary device; and receiving the request to instantiate the selected application further comprises: receiving a selection of the selected application from the application subset presented within the auxiliary computing environment. 12. The method of claim 11 , wherein receiving the request to instantiate the selected application further comprises: initially presenting the device collection to the user; responsive to receiving, from the user, a selection of a selected auxiliary device from the device collection, present the application subset for the auxiliary computing environment of the selected auxiliary device to the user; and receiving, from the user, a selection of the selected application from the application subset for the selected auxiliary device. 13. The method of claim 11 , wherein executing the instructions further causes the primary device to, responsive to receiving a request to present the application set within the auxiliary computing environment of the auxiliary device instead of the application subset, presenting the application set within the auxiliary computing environment of the auxiliary device instead of the application subset. 14. The method of claim 1 , wherein receiving the request to instantiate the selected application further comprises: responsive to receiving, from the user, a request to instantiate the selected application, where the request does not indicate a selected auxiliary device of the device collection: identifying, among the device collection, at least one candidate auxiliary device for which the device properties are compatible with the selected application; and selecting, from amo
Remote windowing, e.g. X-Window System, desktop virtualisation (protocols for virtual reality H04L67/131) · CPC title
Interprogram communication · CPC title
Arrangements for executing specific programs · CPC title
Allocation of resources, e.g. of the central processing unit [CPU] · CPC title
Remote execution · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.