IP Library Granted Patent US 11,381,530
Granted Patent B2
US 11,381,530 · App. 16/881,760 · Granted Jul 5, 2022

Instantiation of dialog process at a particular child node state

Inventor: Alex Daniel Jacobson (Mountain View, CA)
Assignee: GOOGLE LLC
H04L51/02G06F16/9027G06F16/90332H04L67/10H04L67/32
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,381,530
App. No.
16/881,760
Granted
Jul 5, 2022
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for instantiating a dialog process at a particular child node state. In one aspect, a method includes receiving a request specifying a particular child node state of a dialog process, instantiating the dialog process at the root node state, providing input responses to the dialog process that cause the dialog process to traverse from the root node state to the particular child node state, where each input response is provided in response to an input request, and providing data that causes a user device to present the dialog process at the particular child node state.

Claims (66)

1. A method implemented by one or more processors, the method comprising:

automatically generating a dialog map for a dialog process,

wherein the dialog map describes a hierarchy of the dialog process, and

wherein the dialog process defines a plurality of node states,

wherein the node states include a root node state and child nodes states, and

wherein each child node state descends from at least one of another child node state or the root node state;

subsequent to automatically generating the dialog map:

receiving, at a server computer and from a user device of a user, a request that specifies a particular child node state of the child node states of the dialog process;

in response to receiving the request that specifies the particular child node state of the dialog process:

instantiating, by the server computer, the dialog process at the root node state;

automatically traversing, based on the dialog map, from the root node state to the particular child node state, wherein automatically traversing, based on the dialog map, from the root node state to the particular child node state comprises:

prior to traversing to the particular child node state, traversing to an intermediate child node state of the child node states without requiring any user input, from the user of the user device, to reach the intermediate child node state, wherein the particular child node state descends from the intermediate child node state; and

traversing from the intermediate child node state to the particular child node state without requiring any user input, from the user of the user device, to reach the particular child node state; and

providing, by the server computer and to the user device, data that causes the user device to present the dialog process at the particular child node state for presentation to the user.

2. The method of claim 1 , wherein automatically generating the dialog map comprises using a virtual machine to interpret inputs requests for each of the node states and to provide input responses to the dialog process.

3. The method of claim 1 , wherein each node state specifies an input request that is output by the dialog process and input response processing rules for processing an input response received in response to the input request.

4. The method of claim 3 , wherein the input response processing rules determine how the node state will process the received input response and select, based on the input response, one of the child node states that descend from the node state responsive to the input response.

5. The method of claim 3 , further comprising:

generating an index based on the dialog map;

wherein automatically traversing, based on the dialog map, from the root node state to the child node state comprises using the index in automatically traversing from the root node state to the child node state.

6. The method of claim 3 , wherein the request specifying a particular child node state of the dialog process is based in part on user search history.

7. The method of claim 3 , wherein the request specifying a particular child node state of the dialog process is based in part on user browsing history.

8. The method of claim 1 , wherein traversing from the intermediate child node state to the particular child node state comprises:

providing, to the dialog process, a particular input response selected based on the particular child node state specified in the request.

9. A system, comprising:

a data processing apparatus; and

a non-transitory computer readable medium storing instructions executable by the data processing apparatus and thus upon such execution cause the data processing apparatus to perform operations comprising:

automatically generating a dialog map for a dialog process,

wherein the dialog map describes a hierarchy of the dialog process, and

wherein the dialog process defines a plurality of node states,

wherein the node states include a root node state and child nodes states, and

wherein each child node state descends from at least one of another child node state or the root node state;

subsequent to automatically generating the dialog map:

receiving, from a user device of a user, a request that specifies a particular child node state of the child node states of the dialog process;

in response to receiving the request that specifies the particular child node state of the dialog process:

instantiating, by a server computer, the dialog process at the root node state;

automatically traversing, based on the dialog map, from the root node state to the particular child node state, wherein automatically traversing, based on the dialog map, from the root node state to the particular child node state comprises:

 prior to traversing to the particular child node state, traversing to an intermediate child node state of the child node states without requiring any user input, from the user of the user device, to reach the intermediate child node state, wherein the particular child node state descends from the intermediate child node state; and

 traversing from the intermediate child node state to the particular child node state without requiring any user input, from the user of the user device, to reach the particular child node state; and

providing, to the user device, data that causes the user device to present the dialog process at the particular child node state for presentation to the user.

10. The system of claim 9 , wherein automatically generating the dialog map comprises using a virtual machine to interpret inputs requests for each of the node states and to provide input responses to the dialog process.

11. The system of claim 9 , wherein each node state specifies an input request that is output by the dialog process and input response processing rules for processing an input response received in response to the input request.

12. The system of claim 11 , wherein the input response processing rules determine how the node state will process the received input response and select, based on the input response, one of the child node states that descend from the node state responsive to the input response.

13. The system of claim 11 , the operations further comprising:

generating an index based on the dialog map;

wherein automatically traversing, based on the dialog map, from the root node state to the child node state comprises using the index in automatically traversing from the root node state to the child node state.

14. The system of claim 11 , wherein the request specifying a particular child node state of the dialog process is based in part on user search history.

15. The system of claim 11 , wherein the request specifying a particular child node state of the dialog process is based in part on user browsing history.

16. The system of claim 9 , wherein traversing from the intermediate child node state to the particular child node state comprises:

providing, to the dialog process, a particular input response selected based on the particular child node state specified in the request.

17. The system of claim 9 , wherein automatically traversing, based on the dialog map, from the root node state to the particular child node state further comprises:

automatically traversing from the root node state to the particular child node state without requiring any additional user input to reach the particular child node state.

18. A non-transitory computer readable medium storing instructions executable by a data processing apparatus and thus upon such execution cause the data processing apparatus to perform operations comprising:

automatically generating a dialog map for a dialog process,

wherein the dialog map describes a hierarchy of the dialog process, and

wherein the dialog process defines a plurality of node states,

wherein the node states include a root node state and child nodes states, and

wherein each child node state descends from at least one of another child node state or the root node state;

subsequent to automatically generating the dialog map:

receiving, at a server computer and from a user device of a user, a request that specifies a particular child node state of the child node states of the dialog process;

in response to receiving the request that specifies the particular child node state of the dialog process:

instantiating, by the server computer, the dialog process at the root node state;

automatically traversing, based on the dialog map, from the root node state to the particular child node state, wherein automatically traversing, based on the dialog map, from the root node state to the particular child node state comprises:

prior to traversing to the particular child node state, traversing to an intermediate child node state of the child node states without requiring any user input, from the user of the user device, to reach the intermediate child node state, wherein the particular child node state descends from the intermediate child node state; and

traversing from the intermediate child node state to the particular child node state without requiring any user input, from the user of the user device, to reach the particular child node state; and

providing, by the server computer and to the user device, data that causes the user device to present the dialog process at the particular child node state for presentation to the user.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 4, 2020
From: JACOBSON, ALEX DANIEL
To: GOOGLE INC.
Reel/Frame 052840/0781 →
CHANGE OF NAME Recorded Jun 4, 2020
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 052841/0100 →
Continuity (2)
Continuation 15497843 · Apr 26, 2017
Related Publication 20200287852A1 · Sep 10, 2020