US 11,886,482 B2
Methods and systems for providing a secure automated assistant
Matthew Sharifi, Kilchberg (CH); and Victor Carbune, Zurich (CH)
Assigned to GOOGLE LLC, Mountain View, CA (US)
Filed by Google LLC, Mountain View, CA (US)
Filed on Mar. 12, 2021, as Appl. No. 17/200,238.
Prior Publication US 2022/0292128 A1, Sep. 15, 2022
Int. Cl. G06F 40/00 (2020.01); G06F 16/432 (2019.01); G06F 40/30 (2020.01); G06F 3/16 (2006.01); G10L 15/22 (2006.01)
CPC G06F 16/433 (2019.01) [G06F 3/167 (2013.01); G06F 40/30 (2020.01); G10L 15/22 (2013.01); G10L 2015/223 (2013.01)] 18 Claims
OG exemplary drawing
 
1. A method implemented by one or more processors, the method comprising:
receiving, via a client device of a user, user input directed to an automated assistant, the user input including an assistant command;
processing, locally at the client device of the user, the user input to determine a given category associated with the assistant command, the given category being one of a plurality of disparate categories;
determining, based on the assistant command, whether server data is needed to perform a certain fulfillment of the assistant command; and
in response to determining that server data is needed to perform the certain fulfillment of the assistant command:
determining whether the given category associated with the assistant command corresponds to one or more particular categories; and
in response to determining that the given category associated with the assistant command corresponds to one or more of the particular categories:
generating, based on the given category associated with the assistant command, a prompt that requests the user consent to transmitting a request to a server, wherein the request to be transmitted to the server requests the server data that is needed to perform the certain fulfillment of the assistant command;
causing the prompt to be provided for presentation to the user via the client device;
receiving, via the client device of the user, additional user input directed to the automated assistant, the additional user input being responsive to the prompt;
determining, based on the additional user input, whether to transmit the request to the server to fulfill the assistant command; and
in response to determining the additional user input does not consent to transmitting the request to the server to fulfill the assistant command:
refraining from causing the request to be transmitted to the server to fulfill the assistant command; and
causing the client device to generate client data in an attempt to perform the certain fulfillment of the assistant command.