public final class Flow extends GeneratedMessageV3 implements FlowOrBuilder
Flows represents the conversation flows when you build your chatbot agent.
A flow consists of many pages connected by the transition routes.
Conversations always start with the built-in Start Flow (with an all-0 ID).
Transition routes can direct the conversation session from the current flow
(parent flow) to another flow (sub flow). When the sub flow is finished,
Dialogflow will bring the session back to the parent flow, where the sub flow
is started.
Usually, when a transition route is followed by a matched intent, the intent
will be "consumed". This means the intent won't activate more transition
routes. However, when the followed transition route moves the conversation
session into a different flow, the matched intent can be carried over and to
be consumed in the target flow.
Protobuf type google.cloud.dialogflow.cx.v3beta1.Flow
Inherited Members
com.google.protobuf.GeneratedMessageV3.<ListT>makeMutableCopy(ListT)
Static Fields
DESCRIPTION_FIELD_NUMBER
public static final int DESCRIPTION_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
DISPLAY_NAME_FIELD_NUMBER
public static final int DISPLAY_NAME_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
EVENT_HANDLERS_FIELD_NUMBER
public static final int EVENT_HANDLERS_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
NAME_FIELD_NUMBER
public static final int NAME_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
NLU_SETTINGS_FIELD_NUMBER
public static final int NLU_SETTINGS_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
TRANSITION_ROUTES_FIELD_NUMBER
public static final int TRANSITION_ROUTES_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
TRANSITION_ROUTE_GROUPS_FIELD_NUMBER
public static final int TRANSITION_ROUTE_GROUPS_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
Static Methods
getDefaultInstance()
public static Flow getDefaultInstance()
Returns |
Type |
Description |
Flow |
|
getDescriptor()
public static final Descriptors.Descriptor getDescriptor()
newBuilder()
public static Flow.Builder newBuilder()
newBuilder(Flow prototype)
public static Flow.Builder newBuilder(Flow prototype)
Parameter |
Name |
Description |
prototype |
Flow
|
public static Flow parseDelimitedFrom(InputStream input)
Returns |
Type |
Description |
Flow |
|
public static Flow parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Returns |
Type |
Description |
Flow |
|
parseFrom(byte[] data)
public static Flow parseFrom(byte[] data)
Parameter |
Name |
Description |
data |
byte[]
|
Returns |
Type |
Description |
Flow |
|
parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
public static Flow parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Returns |
Type |
Description |
Flow |
|
parseFrom(ByteString data)
public static Flow parseFrom(ByteString data)
Returns |
Type |
Description |
Flow |
|
parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
public static Flow parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Returns |
Type |
Description |
Flow |
|
public static Flow parseFrom(CodedInputStream input)
Returns |
Type |
Description |
Flow |
|
public static Flow parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Returns |
Type |
Description |
Flow |
|
public static Flow parseFrom(InputStream input)
Returns |
Type |
Description |
Flow |
|
public static Flow parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Returns |
Type |
Description |
Flow |
|
parseFrom(ByteBuffer data)
public static Flow parseFrom(ByteBuffer data)
Returns |
Type |
Description |
Flow |
|
parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
public static Flow parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Returns |
Type |
Description |
Flow |
|
parser()
public static Parser<Flow> parser()
Methods
equals(Object obj)
public boolean equals(Object obj)
Parameter |
Name |
Description |
obj |
Object
|
Overrides
getDefaultInstanceForType()
public Flow getDefaultInstanceForType()
Returns |
Type |
Description |
Flow |
|
getDescription()
public String getDescription()
The description of the flow. The maximum length is 500 characters. If
exceeded, the request is rejected.
string description = 3;
Returns |
Type |
Description |
String |
The description.
|
getDescriptionBytes()
public ByteString getDescriptionBytes()
The description of the flow. The maximum length is 500 characters. If
exceeded, the request is rejected.
string description = 3;
Returns |
Type |
Description |
ByteString |
The bytes for description.
|
getDisplayName()
public String getDisplayName()
Required. The human-readable name of the flow.
string display_name = 2 [(.google.api.field_behavior) = REQUIRED];
Returns |
Type |
Description |
String |
The displayName.
|
getDisplayNameBytes()
public ByteString getDisplayNameBytes()
Required. The human-readable name of the flow.
string display_name = 2 [(.google.api.field_behavior) = REQUIRED];
Returns |
Type |
Description |
ByteString |
The bytes for displayName.
|
getEventHandlers(int index)
public EventHandler getEventHandlers(int index)
A flow's event handlers serve two purposes:
- They are responsible for handling events (e.g. no match,
webhook errors) in the flow.
- They are inherited by every page's event
handlers, which can be used to handle common events
regardless of the current page. Event handlers defined in the page
have higher priority than those defined in the flow.
Unlike
transition_routes,
these handlers are evaluated on a first-match basis. The first one that
matches the event get executed, with the rest being ignored.
repeated .google.cloud.dialogflow.cx.v3beta1.EventHandler event_handlers = 10;
Parameter |
Name |
Description |
index |
int
|
getEventHandlersCount()
public int getEventHandlersCount()
A flow's event handlers serve two purposes:
- They are responsible for handling events (e.g. no match,
webhook errors) in the flow.
- They are inherited by every page's event
handlers, which can be used to handle common events
regardless of the current page. Event handlers defined in the page
have higher priority than those defined in the flow.
Unlike
transition_routes,
these handlers are evaluated on a first-match basis. The first one that
matches the event get executed, with the rest being ignored.
repeated .google.cloud.dialogflow.cx.v3beta1.EventHandler event_handlers = 10;
Returns |
Type |
Description |
int |
|
getEventHandlersList()
public List<EventHandler> getEventHandlersList()
A flow's event handlers serve two purposes:
- They are responsible for handling events (e.g. no match,
webhook errors) in the flow.
- They are inherited by every page's event
handlers, which can be used to handle common events
regardless of the current page. Event handlers defined in the page
have higher priority than those defined in the flow.
Unlike
transition_routes,
these handlers are evaluated on a first-match basis. The first one that
matches the event get executed, with the rest being ignored.
repeated .google.cloud.dialogflow.cx.v3beta1.EventHandler event_handlers = 10;
getEventHandlersOrBuilder(int index)
public EventHandlerOrBuilder getEventHandlersOrBuilder(int index)
A flow's event handlers serve two purposes:
- They are responsible for handling events (e.g. no match,
webhook errors) in the flow.
- They are inherited by every page's event
handlers, which can be used to handle common events
regardless of the current page. Event handlers defined in the page
have higher priority than those defined in the flow.
Unlike
transition_routes,
these handlers are evaluated on a first-match basis. The first one that
matches the event get executed, with the rest being ignored.
repeated .google.cloud.dialogflow.cx.v3beta1.EventHandler event_handlers = 10;
Parameter |
Name |
Description |
index |
int
|
getEventHandlersOrBuilderList()
public List<? extends EventHandlerOrBuilder> getEventHandlersOrBuilderList()
A flow's event handlers serve two purposes:
- They are responsible for handling events (e.g. no match,
webhook errors) in the flow.
- They are inherited by every page's event
handlers, which can be used to handle common events
regardless of the current page. Event handlers defined in the page
have higher priority than those defined in the flow.
Unlike
transition_routes,
these handlers are evaluated on a first-match basis. The first one that
matches the event get executed, with the rest being ignored.
repeated .google.cloud.dialogflow.cx.v3beta1.EventHandler event_handlers = 10;
Returns |
Type |
Description |
List<? extends com.google.cloud.dialogflow.cx.v3beta1.EventHandlerOrBuilder> |
|
getName()
The unique identifier of the flow.
Format: projects/<Project ID>/locations/<Location ID>/agents/<Agent
ID>/flows/<Flow ID>
.
string name = 1;
Returns |
Type |
Description |
String |
The name.
|
getNameBytes()
public ByteString getNameBytes()
The unique identifier of the flow.
Format: projects/<Project ID>/locations/<Location ID>/agents/<Agent
ID>/flows/<Flow ID>
.
string name = 1;
Returns |
Type |
Description |
ByteString |
The bytes for name.
|
getNluSettings()
public NluSettings getNluSettings()
NLU related settings of the flow.
.google.cloud.dialogflow.cx.v3beta1.NluSettings nlu_settings = 11;
getNluSettingsOrBuilder()
public NluSettingsOrBuilder getNluSettingsOrBuilder()
NLU related settings of the flow.
.google.cloud.dialogflow.cx.v3beta1.NluSettings nlu_settings = 11;
getParserForType()
public Parser<Flow> getParserForType()
Overrides
getSerializedSize()
public int getSerializedSize()
Returns |
Type |
Description |
int |
|
Overrides
getTransitionRouteGroups(int index)
public String getTransitionRouteGroups(int index)
A flow's transition route group serve two purposes:
- They are responsible for matching the user's first utterances in the
flow.
- They are inherited by every page's transition
route groups. Transition route groups
defined in the page have higher priority than those defined in the flow.
Format:
projects/<Project ID>/locations/<Location ID>/agents/<Agent
ID>/flows/<Flow ID>/transitionRouteGroups/<TransitionRouteGroup ID>
.
repeated string transition_route_groups = 15 [(.google.api.resource_reference) = { ... }
Parameter |
Name |
Description |
index |
int
The index of the element to return.
|
Returns |
Type |
Description |
String |
The transitionRouteGroups at the given index.
|
getTransitionRouteGroupsBytes(int index)
public ByteString getTransitionRouteGroupsBytes(int index)
A flow's transition route group serve two purposes:
- They are responsible for matching the user's first utterances in the
flow.
- They are inherited by every page's transition
route groups. Transition route groups
defined in the page have higher priority than those defined in the flow.
Format:
projects/<Project ID>/locations/<Location ID>/agents/<Agent
ID>/flows/<Flow ID>/transitionRouteGroups/<TransitionRouteGroup ID>
.
repeated string transition_route_groups = 15 [(.google.api.resource_reference) = { ... }
Parameter |
Name |
Description |
index |
int
The index of the value to return.
|
Returns |
Type |
Description |
ByteString |
The bytes of the transitionRouteGroups at the given index.
|
getTransitionRouteGroupsCount()
public int getTransitionRouteGroupsCount()
A flow's transition route group serve two purposes:
- They are responsible for matching the user's first utterances in the
flow.
- They are inherited by every page's transition
route groups. Transition route groups
defined in the page have higher priority than those defined in the flow.
Format:
projects/<Project ID>/locations/<Location ID>/agents/<Agent
ID>/flows/<Flow ID>/transitionRouteGroups/<TransitionRouteGroup ID>
.
repeated string transition_route_groups = 15 [(.google.api.resource_reference) = { ... }
Returns |
Type |
Description |
int |
The count of transitionRouteGroups.
|
getTransitionRouteGroupsList()
public ProtocolStringList getTransitionRouteGroupsList()
A flow's transition route group serve two purposes:
- They are responsible for matching the user's first utterances in the
flow.
- They are inherited by every page's transition
route groups. Transition route groups
defined in the page have higher priority than those defined in the flow.
Format:
projects/<Project ID>/locations/<Location ID>/agents/<Agent
ID>/flows/<Flow ID>/transitionRouteGroups/<TransitionRouteGroup ID>
.
repeated string transition_route_groups = 15 [(.google.api.resource_reference) = { ... }
getTransitionRoutes(int index)
public TransitionRoute getTransitionRoutes(int index)
A flow's transition routes serve two purposes:
- They are responsible for matching the user's first utterances in the
flow.
- They are inherited by every page's transition
routes and can support use cases such as the user
saying "help" or "can I talk to a human?", which can be handled in a common
way regardless of the current page. Transition routes defined in the page
have higher priority than those defined in the flow.
TransitionRoutes are evalauted in the following order:
- TransitionRoutes with intent specified.
- TransitionRoutes with only condition specified.
TransitionRoutes with intent specified are inherited by pages in the flow.
repeated .google.cloud.dialogflow.cx.v3beta1.TransitionRoute transition_routes = 4;
Parameter |
Name |
Description |
index |
int
|
getTransitionRoutesCount()
public int getTransitionRoutesCount()
A flow's transition routes serve two purposes:
- They are responsible for matching the user's first utterances in the
flow.
- They are inherited by every page's transition
routes and can support use cases such as the user
saying "help" or "can I talk to a human?", which can be handled in a common
way regardless of the current page. Transition routes defined in the page
have higher priority than those defined in the flow.
TransitionRoutes are evalauted in the following order:
- TransitionRoutes with intent specified.
- TransitionRoutes with only condition specified.
TransitionRoutes with intent specified are inherited by pages in the flow.
repeated .google.cloud.dialogflow.cx.v3beta1.TransitionRoute transition_routes = 4;
Returns |
Type |
Description |
int |
|
getTransitionRoutesList()
public List<TransitionRoute> getTransitionRoutesList()
A flow's transition routes serve two purposes:
- They are responsible for matching the user's first utterances in the
flow.
- They are inherited by every page's transition
routes and can support use cases such as the user
saying "help" or "can I talk to a human?", which can be handled in a common
way regardless of the current page. Transition routes defined in the page
have higher priority than those defined in the flow.
TransitionRoutes are evalauted in the following order:
- TransitionRoutes with intent specified.
- TransitionRoutes with only condition specified.
TransitionRoutes with intent specified are inherited by pages in the flow.
repeated .google.cloud.dialogflow.cx.v3beta1.TransitionRoute transition_routes = 4;
getTransitionRoutesOrBuilder(int index)
public TransitionRouteOrBuilder getTransitionRoutesOrBuilder(int index)
A flow's transition routes serve two purposes:
- They are responsible for matching the user's first utterances in the
flow.
- They are inherited by every page's transition
routes and can support use cases such as the user
saying "help" or "can I talk to a human?", which can be handled in a common
way regardless of the current page. Transition routes defined in the page
have higher priority than those defined in the flow.
TransitionRoutes are evalauted in the following order:
- TransitionRoutes with intent specified.
- TransitionRoutes with only condition specified.
TransitionRoutes with intent specified are inherited by pages in the flow.
repeated .google.cloud.dialogflow.cx.v3beta1.TransitionRoute transition_routes = 4;
Parameter |
Name |
Description |
index |
int
|
getTransitionRoutesOrBuilderList()
public List<? extends TransitionRouteOrBuilder> getTransitionRoutesOrBuilderList()
A flow's transition routes serve two purposes:
- They are responsible for matching the user's first utterances in the
flow.
- They are inherited by every page's transition
routes and can support use cases such as the user
saying "help" or "can I talk to a human?", which can be handled in a common
way regardless of the current page. Transition routes defined in the page
have higher priority than those defined in the flow.
TransitionRoutes are evalauted in the following order:
- TransitionRoutes with intent specified.
- TransitionRoutes with only condition specified.
TransitionRoutes with intent specified are inherited by pages in the flow.
repeated .google.cloud.dialogflow.cx.v3beta1.TransitionRoute transition_routes = 4;
Returns |
Type |
Description |
List<? extends com.google.cloud.dialogflow.cx.v3beta1.TransitionRouteOrBuilder> |
|
getUnknownFields()
public final UnknownFieldSet getUnknownFields()
Overrides
hasNluSettings()
public boolean hasNluSettings()
NLU related settings of the flow.
.google.cloud.dialogflow.cx.v3beta1.NluSettings nlu_settings = 11;
Returns |
Type |
Description |
boolean |
Whether the nluSettings field is set.
|
hashCode()
Returns |
Type |
Description |
int |
|
Overrides
internalGetFieldAccessorTable()
protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Overrides
isInitialized()
public final boolean isInitialized()
Overrides
newBuilderForType()
public Flow.Builder newBuilderForType()
newBuilderForType(GeneratedMessageV3.BuilderParent parent)
protected Flow.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Overrides
newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Returns |
Type |
Description |
Object |
|
Overrides
toBuilder()
public Flow.Builder toBuilder()
writeTo(CodedOutputStream output)
public void writeTo(CodedOutputStream output)
Overrides