IP Library Granted Patent US 11,386,915
Granted Patent B2
US 11,386,915 · App. 16/990,763 · Granted Jul 12, 2022

Remote invocation of mobile device actions

Inventors: Omer Bar-or (Mountain View, CA); Scott B. Huffman (Portola Valley, CA); Ida Mayer (Sunnyvale, CA); Arthur E. Blume (Melrose, MA); Pravir Kumar Gupta (Los Altos, CA)
Assignee: GOOGLE LLC
G10L25/48G06F9/452G06F9/54G06F9/4806G06F2209/482G06F2209/549
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 11,386,915
App. No.
16/990,763
Granted
Jul 12, 2022
Kind
B2
Abstract

Systems, methods and apparatus for invoking actions at a second user device from a first user device. A method includes determining that a first user device has an associated second user device; accessing specification data that specifies a set of user device actions that the second user device is configured to perform; receiving command inputs for the first user device; for each command input, determining whether the command input resolves to one of the user device actions; for each command input not determined to resolve any of the user device actions, causing the command input to be processed at the first user device; and for each command input determined to resolve one of the user device actions causing the first user device to display in a user interface a dialog by which a user may either accept or deny invoking the user device action at the second user device.

Claims (46)

1. A computer-implemented method performed by a data processing apparatus, comprising:

accessing, in response to an input at a first user device, specification data for a second user device that specifies a set of user device actions that the second user device is configured to perform, wherein each user device action is an action performed by a respective application installed on the second user device;

receiving command inputs for the first user device;

for each command input, determining whether the command input resolves one of the user device actions of the set of user device actions for the second user device, the one of the user device actions being an action that can be performed by a respective application installed on the second user device; and

for each command input determined to resolve one of the user device actions at the second user device:

generating data that causes the first user device to display a dialog in a user interface of the first user device by which a user of the first user device may either accept or deny invoking the user device action of the respective application at the second user device in response to the command input;

in response to an acceptance:

generating a command communication that includes data that, when processed by an application programming interface on the second user device, causes the second user device to invoke the user device action and process the command input as the input for the user device action;

sending the command communication to the second user device; and

in response to a denial, through the dialog and by the user at the first user device, to invoke the user device action at the second user device, causing the first user device to invoke the user device action of the respective application installed on the first user device and process the command input as an input for the user device action.

2. The computer-implemented method of claim 1 , wherein causing the second user device to invoke the user device action and process the command input as an input for the user device action comprises:

generating a command communication that includes data that, when processed by an application programming interface on the second user device, causes the second user device to invoke the user device action and process the command input as the input for the user device action; and

sending the command communication to the second user device.

3. The computer implemented method of claim 1 , further comprising, for each command input not determined to resolve to any of the user device actions, causing the command input to be processed at the first user device.

4. The computer-implemented method of claim 1 , wherein the second user device is a smart phone.

5. A system, comprising:

a data processing apparatus and a computer storage apparatus in data communication with the data processing apparatus and storing instructions executable by the data processing apparatus and that upon such execution cause the data processing apparatus to perform operations comprising:

accessing, in response to an input at a first user device, specification data for a second user device that specifies a set of user device actions that the second user device is configured to perform, wherein each user device action is an action performed by a respective application installed on the second user device;

receiving command inputs for the first user device;

for each command input, determining whether the command input resolves one of the user device actions of the set of user device actions for the second user device, the one of the user device actions being an action that can be performed by a respective application installed on the second user device; and

for each command input determined to resolve one of the user device actions at the second user device:

generating data that causes the first user device to display a dialog in a user interface of the first user device by which a user of the first user device may either accept or deny invoking the user device action of the respective application at the second user device in response to the command input;

in response to an acceptance:

generating a command communication that includes data that, when processed by an application programming interface on the second user device, causes the second user device to invoke the user device action and process the command input as the input for the user device action;

sending the command communication to the second user device; and

in response to a denial, through the dialog and by the user at the first user device, to invoke the user device action at the second user device, causing the first user device to invoke the user device action of the respective application installed on the first user device and process the command input as an input for the user device action.

6. The system of claim 5 , wherein causing the second user device to invoke the user device action and process the command input as an input for the user device action comprises:

generating a command communication that includes data that, when processed by an application programming interface on the second user device, causes the second user device to invoke the user device action and process the command input as the input for the user device action; and

sending the command communication to the second user device.

7. The system of claim 5 , further comprising, for each command input not determined to resolve to any of the user device actions, causing the command input to be processed at the first user device.

8. The system of claim 5 , wherein the second user device is a smart phone.

9. A non-transitory computer readable storage medium in data communication with a first user device and storing instructions executable by a data processing apparatus and upon such execution cause the data processing apparatus to perform operations comprising:

accessing, in response to an input at a first user device, specification data for a second user device that specifies a set of user device actions that the second user device is configured to perform, wherein each user device action is an action performed by a respective application installed on the second user device;

receiving command inputs for the first user device;

for each command input, determining whether the command input resolves one of the user device actions of the set of user device actions for the second user device, the one of the user device actions being an action that can be performed by a respective application installed on the second user device; and

for each command input determined to resolve one of the user device actions at the second user device:

generating data that causes the first user device to display a dialog in a user interface of the first user device by which a user of the first user device may either accept or deny invoking the user device action of the respective application at the second user device in response to the command input;

in response to an acceptance:

generating a command communication that includes data that, when processed by an application programming interface on the second user device, causes the second user device to invoke the user device action and process the command input as the input for the user device action;

sending the command communication to the second user device; and

in response to a denial, through the dialog and by the user at the first user device, to invoke the user device action at the second user device, causing the first user device to invoke the user device action of the respective application installed on the first user device and process the command input as an input for the user device action.

10. The non-transitory computer readable storage medium of claim 9 , wherein causing the second user device to invoke the user device action and process the command input as an input for the user device action comprises:

generating a command communication that includes data that, when processed by an application programming interface on the second user device, causes the second user device to invoke the user device action and process the command input as the input for the user device action; and

sending the command communication to the second user device.

11. The non-transitory computer readable storage medium of claim 9 , further comprising, for each command input not determined to resolve to any of the user device actions, causing the command input to be processed at the first user device.

12. The non-transitory computer readable storage medium of claim 9 , wherein the second user device is a smart phone.

Assignments (2)
ENTITY CONVERSION Recorded Nov 12, 2020
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 054398/0968 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 11, 2020
From: BAR-OR, OMER; HUFFMAN, SCOTT B.; MAYER, IDA; BLUME, ARTHUR E.; GUPTA, PRAVIR KUMAR
To: GOOGLE INC.
Reel/Frame 054339/0816 →
Continuity (3)
Continuation 16177570 · Nov 1, 2018
Continuation 14311995 · Jun 23, 2014
Related Publication 20200372927A1 · Nov 26, 2020
Cited By (1)
US 12,243,554