Class: Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3Flow
- Inherits:
-
Object
- Object
- Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3Flow
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/dialogflow_v3/classes.rb,
lib/google/apis/dialogflow_v3/representations.rb,
lib/google/apis/dialogflow_v3/representations.rb
Overview
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.
Instance Attribute Summary collapse
-
#advanced_settings ⇒ Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3AdvancedSettings
Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
-
#description ⇒ String
The description of the flow.
-
#display_name ⇒ String
Required.
-
#event_handlers ⇒ Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3EventHandler>
A flow's event handlers serve two purposes: * They are responsible for handling events (e.g. no match, webhook errors) in the flow.
-
#input_parameter_definitions ⇒ Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ParameterDefinition>
Optional.
-
#knowledge_connector_settings ⇒ Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3KnowledgeConnectorSettings
The Knowledge Connector settings for this page or flow.
-
#locked ⇒ Boolean
(also: #locked?)
Indicates whether the flow is locked for changes.
-
#multi_language_settings ⇒ Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3FlowMultiLanguageSettings
Settings for multi-lingual agents.
-
#name ⇒ String
The unique identifier of the flow.
-
#nlu_settings ⇒ Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3NluSettings
Settings related to NLU.
-
#output_parameter_definitions ⇒ Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ParameterDefinition>
Optional.
-
#transition_route_groups ⇒ Array<String>
A flow's transition route group serve two purposes: * They are responsible for matching the user's first utterances in the flow.
-
#transition_routes ⇒ Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3TransitionRoute>
A flow's transition routes serve two purposes: * They are responsible for matching the user's first utterances in the flow.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleCloudDialogflowCxV3Flow
constructor
A new instance of GoogleCloudDialogflowCxV3Flow.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GoogleCloudDialogflowCxV3Flow
Returns a new instance of GoogleCloudDialogflowCxV3Flow.
3403 3404 3405 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 3403 def initialize(**args) update!(**args) end |
Instance Attribute Details
#advanced_settings ⇒ Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3AdvancedSettings
Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
Settings exposed at lower level overrides the settings exposed at higher level.
Overriding occurs at the sub-setting level. For example, the
playback_interruption_settings at fulfillment level only overrides the
playback_interruption_settings at the agent level, leaving other settings at
the agent level unchanged. DTMF settings does not override each other. DTMF
settings set at different levels define DTMF detections running in parallel.
Hierarchy: Agent->Flow->Page->Fulfillment/Parameter.
Corresponds to the JSON property advancedSettings
3316 3317 3318 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 3316 def advanced_settings @advanced_settings end |
#description ⇒ String
The description of the flow. The maximum length is 500 characters. If exceeded,
the request is rejected.
Corresponds to the JSON property description
3322 3323 3324 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 3322 def description @description end |
#display_name ⇒ String
Required. The human-readable name of the flow.
Corresponds to the JSON property displayName
3327 3328 3329 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 3327 def display_name @display_name end |
#event_handlers ⇒ Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3EventHandler>
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.
Corresponds to the JSON property eventHandlers
3338 3339 3340 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 3338 def event_handlers @event_handlers end |
#input_parameter_definitions ⇒ Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ParameterDefinition>
Optional. Defined structured input parameters for this flow.
Corresponds to the JSON property inputParameterDefinitions
3343 3344 3345 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 3343 def input_parameter_definitions @input_parameter_definitions end |
#knowledge_connector_settings ⇒ Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3KnowledgeConnectorSettings
The Knowledge Connector settings for this page or flow. This includes
information such as the attached Knowledge Bases, and the way to execute
fulfillment.
Corresponds to the JSON property knowledgeConnectorSettings
3350 3351 3352 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 3350 def knowledge_connector_settings @knowledge_connector_settings end |
#locked ⇒ Boolean Also known as: locked?
Indicates whether the flow is locked for changes. If the flow is locked,
modifications to the flow will be rejected.
Corresponds to the JSON property locked
3356 3357 3358 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 3356 def locked @locked end |
#multi_language_settings ⇒ Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3FlowMultiLanguageSettings
Settings for multi-lingual agents.
Corresponds to the JSON property multiLanguageSettings
3362 3363 3364 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 3362 def multi_language_settings @multi_language_settings end |
#name ⇒ String
The unique identifier of the flow. Format: projects//locations//agents//flows/
.
Corresponds to the JSON property name
3368 3369 3370 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 3368 def name @name end |
#nlu_settings ⇒ Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3NluSettings
Settings related to NLU.
Corresponds to the JSON property nluSettings
3373 3374 3375 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 3373 def nlu_settings @nlu_settings end |
#output_parameter_definitions ⇒ Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ParameterDefinition>
Optional. Defined structured output parameters for this flow.
Corresponds to the JSON property outputParameterDefinitions
3378 3379 3380 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 3378 def output_parameter_definitions @output_parameter_definitions end |
#transition_route_groups ⇒ Array<String>
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//
locations//agents//flows//transitionRouteGroups/ or projects//locations//
agents//transitionRouteGroups/ for agent-level groups.
Corresponds to the JSON property transitionRouteGroups
3388 3389 3390 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 3388 def transition_route_groups @transition_route_groups end |
#transition_routes ⇒ Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3TransitionRoute>
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 evaluated
in the following order: * TransitionRoutes with intent specified. *
TransitionRoutes with only condition specified. TransitionRoutes with intent
specified are inherited by pages in the flow.
Corresponds to the JSON property transitionRoutes
3401 3402 3403 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 3401 def transition_routes @transition_routes end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 3408 def update!(**args) @advanced_settings = args[:advanced_settings] if args.key?(:advanced_settings) @description = args[:description] if args.key?(:description) @display_name = args[:display_name] if args.key?(:display_name) @event_handlers = args[:event_handlers] if args.key?(:event_handlers) @input_parameter_definitions = args[:input_parameter_definitions] if args.key?(:input_parameter_definitions) @knowledge_connector_settings = args[:knowledge_connector_settings] if args.key?(:knowledge_connector_settings) @locked = args[:locked] if args.key?(:locked) @multi_language_settings = args[:multi_language_settings] if args.key?(:multi_language_settings) @name = args[:name] if args.key?(:name) @nlu_settings = args[:nlu_settings] if args.key?(:nlu_settings) @output_parameter_definitions = args[:output_parameter_definitions] if args.key?(:output_parameter_definitions) @transition_route_groups = args[:transition_route_groups] if args.key?(:transition_route_groups) @transition_routes = args[:transition_routes] if args.key?(:transition_routes) end |