CPC H04L 51/02 (2013.01) [G06F 3/167 (2013.01)] | 19 Claims |
1. A method implemented by one or more processors, the method comprising:
receiving, from a user of a client device, user input during an ongoing dialog session between the user and a first-party automated assistant and via a first-party automated assistant platform, the first-party automated assistant and the first-party automated assistant platform being controlled by a first-party entity, the first-party automated assistant and the first-party automated assistant platform being implemented by the client device, the ongoing dialog session being associated with setting up a routine to be performed by the first-party automated assistant, and the routine, when invoked using one or more trigger terms or phrases for the routine, causes multiple assistant-based actions to be performed by the first-party automated assistant;
determining that the user input requires a user interaction with a third-party non-assistant platform, the third-party non-assistant platform being controlled by a third-party entity, and the third-party entity being distinct from the first-party entity;
in response to determining that the user input requires the user interaction with the third-party non-assistant platform:
storing, in one or more databases accessible by at least the client device, a state of the ongoing dialog session between the user and the first-party automated assistant,
subsequent to storing the state of the ongoing dialog session between the user and the first-party automated assistant, causing the ongoing dialog session between the user and the first-party automated assistant to be suspended,
transmitting, to the third-party non-assistant platform, a request to initiate the user interaction, wherein transmitting the request to the third-party non-assistant platform causes an additional client device of the user to render a prompt for completing the user interaction with the third-party non-assistant platform that is implemented by the additional client device, and
receiving, from the third-party non-assistant platform and responsive to the user completing the user interaction via the additional client device, a token associated with the user interaction;
in response to receiving the token associated with the user interaction:
causing the suspended ongoing dialog session between the user and the first-party automated assistant to be resumed, at the client device or a further additional client device, based on the stored state of the suspended ongoing dialog session and based on the token associated with the user interaction, wherein causing the suspended ongoing dialog session between the user and the first-party automated assistant to be resumed based on the stored state of the suspended ongoing dialog session and based on the token associated with the user interaction comprises:
causing the suspended ongoing dialog session between the user and the first-party automated assistant to be resumed at a given state that is progressed beyond the stored state of the suspended ongoing dialog session, that is based on the token associated with the user interaction, and that continues setting up the routine to be performed by the first-party automated assistant; and
subsequent to setting up the routine to be performed by the first-party automated assistant:
receiving, from the user of the client device, audio data that includes the one or more trigger terms or phrases; and
in response to receiving the audio data that includes the one or more trigger terms or phrases:
causing the first-party automated assistant to cause the multiple assistant-based actions to be performed.
|