Class Flow (0.23.0)

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.v3.Flow

Implements

FlowOrBuilder

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()
Returns
Type Description
Descriptor

newBuilder()

public static Flow.Builder newBuilder()
Returns
Type Description
Flow.Builder

newBuilder(Flow prototype)

public static Flow.Builder newBuilder(Flow prototype)
Parameter
Name Description
prototype Flow
Returns
Type Description
Flow.Builder

parseDelimitedFrom(InputStream input)

public static Flow parseDelimitedFrom(InputStream input)
Parameter
Name Description
input InputStream
Returns
Type Description
Flow
Exceptions
Type Description
IOException

parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static Flow parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input InputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
Flow
Exceptions
Type Description
IOException

parseFrom(byte[] data)

public static Flow parseFrom(byte[] data)
Parameter
Name Description
data byte[]
Returns
Type Description
Flow
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)

public static Flow parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data byte[]
extensionRegistry ExtensionRegistryLite
Returns
Type Description
Flow
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteString data)

public static Flow parseFrom(ByteString data)
Parameter
Name Description
data ByteString
Returns
Type Description
Flow
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)

public static Flow parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data ByteString
extensionRegistry ExtensionRegistryLite
Returns
Type Description
Flow
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(CodedInputStream input)

public static Flow parseFrom(CodedInputStream input)
Parameter
Name Description
input CodedInputStream
Returns
Type Description
Flow
Exceptions
Type Description
IOException

parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public static Flow parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input CodedInputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
Flow
Exceptions
Type Description
IOException

parseFrom(InputStream input)

public static Flow parseFrom(InputStream input)
Parameter
Name Description
input InputStream
Returns
Type Description
Flow
Exceptions
Type Description
IOException

parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static Flow parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input InputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
Flow
Exceptions
Type Description
IOException

parseFrom(ByteBuffer data)

public static Flow parseFrom(ByteBuffer data)
Parameter
Name Description
data ByteBuffer
Returns
Type Description
Flow
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)

public static Flow parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data ByteBuffer
extensionRegistry ExtensionRegistryLite
Returns
Type Description
Flow
Exceptions
Type Description
InvalidProtocolBufferException

parser()

public static Parser<Flow> parser()
Returns
Type Description
Parser<Flow>

Methods

equals(Object obj)

public boolean equals(Object obj)
Parameter
Name Description
obj Object
Returns
Type Description
boolean
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.v3.EventHandler event_handlers = 10;

Parameter
Name Description
index int
Returns
Type Description
EventHandler

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.v3.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.v3.EventHandler event_handlers = 10;

Returns
Type Description
List<EventHandler>

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.v3.EventHandler event_handlers = 10;

Parameter
Name Description
index int
Returns
Type Description
EventHandlerOrBuilder

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.v3.EventHandler event_handlers = 10;

Returns
Type Description
List<? extends com.google.cloud.dialogflow.cx.v3.EventHandlerOrBuilder>

getName()

public String 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.v3.NluSettings nlu_settings = 11;

Returns
Type Description
NluSettings

The nluSettings.

getNluSettingsOrBuilder()

public NluSettingsOrBuilder getNluSettingsOrBuilder()

NLU related settings of the flow.

.google.cloud.dialogflow.cx.v3.NluSettings nlu_settings = 11;

Returns
Type Description
NluSettingsOrBuilder

getParserForType()

public Parser<Flow> getParserForType()
Returns
Type Description
Parser<Flow>
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) = { ... }

Returns
Type Description
ProtocolStringList

A list containing the transitionRouteGroups.

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.v3.TransitionRoute transition_routes = 4;

Parameter
Name Description
index int
Returns
Type Description
TransitionRoute

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.v3.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.v3.TransitionRoute transition_routes = 4;

Returns
Type Description
List<TransitionRoute>

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.v3.TransitionRoute transition_routes = 4;

Parameter
Name Description
index int
Returns
Type Description
TransitionRouteOrBuilder

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.v3.TransitionRoute transition_routes = 4;

Returns
Type Description
List<? extends com.google.cloud.dialogflow.cx.v3.TransitionRouteOrBuilder>

getUnknownFields()

public final UnknownFieldSet getUnknownFields()
Returns
Type Description
UnknownFieldSet
Overrides

hasNluSettings()

public boolean hasNluSettings()

NLU related settings of the flow.

.google.cloud.dialogflow.cx.v3.NluSettings nlu_settings = 11;

Returns
Type Description
boolean

Whether the nluSettings field is set.

hashCode()

public int hashCode()
Returns
Type Description
int
Overrides

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
Type Description
FieldAccessorTable
Overrides

isInitialized()

public final boolean isInitialized()
Returns
Type Description
boolean
Overrides

newBuilderForType()

public Flow.Builder newBuilderForType()
Returns
Type Description
Flow.Builder

newBuilderForType(GeneratedMessageV3.BuilderParent parent)

protected Flow.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Parameter
Name Description
parent BuilderParent
Returns
Type Description
Flow.Builder
Overrides

newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)

protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Parameter
Name Description
unused UnusedPrivateParameter
Returns
Type Description
Object
Overrides

toBuilder()

public Flow.Builder toBuilder()
Returns
Type Description
Flow.Builder

writeTo(CodedOutputStream output)

public void writeTo(CodedOutputStream output)
Parameter
Name Description
output CodedOutputStream
Overrides Exceptions
Type Description
IOException