IP Library Granted Patent US 9,811,528
Granted Patent B2
US 9,811,528 · App. 14/571,127 · Granted Nov 7, 2017

Systems and methods for providing continuing access to a remote computer program

Inventor: Yosef Benraz (Herzliya, IL)
G06F17/30174G06F11/1658G06F17/30165G06F17/30283
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,811,528
App. No.
14/571,127
Granted
Nov 7, 2017
Kind
B2
Abstract

Systems and methods are provided for using a file-sharing service to identify, execute, and provide continuing access to remote computer programs. In certain embodiments, a list of files to be accessed remotely is provided to a first device, a selection is received from a user at the first device identifying a file from the provided list, and an application is executed on a second device to access a copy of the identified file, which is synchronized with a file-sharing service.

Claims (79)

1. A system comprising:

a first device configured to:

transmit a list of local applications that are candidates for remote execution;

a second device configured to:

receive the list of candidate applications;

associate at least one file-type identifier with at least one of the candidate applications in the received list;

store at least one device identifier associated with the first device;

store at least one application identifier associated with each one of the candidate applications;

provide a list of files to be accessed remotely;

a third device configured to:

receive a list of files from the second device or from a file-sharing service;

transmit a selection identifying at least one file from the received list;

wherein the second device is further configured to:

receive the selection identifying the at least one file;

determine a target file-type identifier associated with the identified at least one file based on the received selection;

select at least one of the stored device identifiers and at least one of the stored application identifiers based on the target file-type identifier;

transmit the identified at least one file or transmit the selected application identifier based on the selected device identifier; and

a fourth device, different from the third device, configured to:

receive the transmitted application identifier or the identified at least one file;

execute an application locally based on the received application identifier or the received identified at least one file; and

cause the executed application to access a copy of the identified at least one file, wherein the copy of the identified at least one file is synchronized with a file-sharing service.

2. An apparatus comprising a processor configured to:

receive a list of applications local to a first device that are candidates for remote execution;

associate at least one file-type identifier with at least one of the candidate applications in the received list;

store at least one device identifier associated with the first device;

store at least one application identifier associated with each one of the candidate applications;

provide to a second device a list of files to be accessed remotely;

receive a selection from a user at the second device identifying at least one file from the provided list;

determine a target file-type identifier associated with the identified at least one file based on the received user selection;

select at least one of the stored device identifiers and at least one of the stored application identifiers based on the target file-type identifier; and

cause at least one of the candidate applications that is associated with the at least one selected application identifier to:

execute locally on a selected device that is associated with the at least one selected device identifier and that is different from the second device, and

access a copy of the identified at least one file, wherein the copy of the identified at least one file is synchronized with a file-sharing service.

3. A method for executing a remote application, the method comprising:

receiving a list of applications local to a first device that are candidates for remote execution;

associating at least one file-type identifier with at least one of the candidate applications in the received list;

storing at least one device identifier associated with the first device;

storing at least one application identifier associated with each one of the candidate applications;

providing, to a second device, a list of files to be accessed remotely;

receiving a selection from a user at the second device identifying at least one file from the provided list;

determining a target file-type identifier associated with the identified at least one file based on the received user selection;

selecting at least one of the stored device identifiers and at least one of the stored application identifiers based on the target file-type identifier; and

causing at least one of the candidate applications that is associated with the at least one selected application identifier to:

execute locally on a selected device that is associated with the at least one selected device identifier and that is different from the second device, and

access a copy of the identified at least one file, wherein the copy of the identified at least one file is synchronized with a file-sharing service.

4. The method of claim 3 , further comprising:

detecting a failure of the selected device; and

in response to the detected failure, causing at least one of the candidate applications to:

execute locally on an alternative device that is different from both the second device and the selected device, and

access a copy of the identified at least one file that is synchronized with the file-sharing service.

5. The method of claim 3 , further comprising:

receiving performance information pertaining to the first device; and

wherein the at least one stored device identifier is selected based on the received performance information.

6. The method of claim 3 , further comprising:

periodically receiving performance information pertaining to the first device or an alternative device;

selecting an alternative stored device identifier based on the received performance information;

selecting an alternative stored application identifier based on the received performance information or the alternative stored device identifier; and

causing at least one of the candidate applications that is associated with the alternative application identifier to:

execute locally on an alternative device that is associated with the alternative device identifier and that is different from both the second device and the selected device, and

access a copy of the identified at least one file that is synchronized with the file-sharing service.

7. The method of claim 6 , further comprising terminating the application executing remotely on the selected device.

8. The method of claim 3 , further comprising:

receiving a selection from the user identifying a target device or a target application; and

wherein the at least one stored device identifiers and the at least one stored application identifiers are further selected based on the received user selection identifying a target device or target application.

9. The method of claim 3 , further comprising determining whether a file-sharing service client is installed on the selected device.

10. The method of claim 9 , further comprising:

in response to determining that the file-sharing service client is installed, determining whether the file-sharing service client is stopped; and

in response to determining that the file-sharing service client is stopped, starting the file-sharing service client.

11. The method of claim 9 , further comprising:

in response to determining that the file-sharing service client is installed, determining whether the file-sharing service client is stopped;

in response to determining that the file-sharing service client is stopped, copying the identified at least one file to the selected device; and

periodically synchronizing the copy of the identified at least one file using the file-sharing service or another file-sharing service.

12. The method of claim 9 , further comprising:

in response to determining that the file-sharing service client is not installed, copying the identified at least one file to the selected device; and

periodically synchronizing the copy of the identified at least one file using the file-sharing service or another file-sharing service.

13. The method of claim 3 , further comprising:

receiving, from the first device, an icon associated with one of the candidate applications;

storing the icon; and

providing the icon to the second device for display to the user in connection with the provided list of files to be accessed remotely.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 12, 2016
From: TAKO TECHNOLOGY LTD.
To: BENRAZ, YOSEF
Reel/Frame 038567/0704 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 11, 2016
From: BENRAZ, YOSEF
To: TAKO TECHNOLOGY LTD.
Reel/Frame 038543/0657 →
Continuity (2)
Provisional Application 61916471 · Dec 16, 2013
Related Publication 20150169616A1 · Jun 18, 2015