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
-
#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.
-
#name ⇒ String
The unique identifier of the flow.
-
#nlu_settings ⇒ Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3NluSettings
Settings related to NLU.
-
#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.
1560 1561 1562 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 1560 def initialize(**args) update!(**args) end |
Instance Attribute Details
#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
1509 1510 1511 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 1509 def description @description end |
#display_name ⇒ String
Required. The human-readable name of the flow.
Corresponds to the JSON property displayName
1514 1515 1516 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 1514 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
1525 1526 1527 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 1525 def event_handlers @event_handlers end |
#name ⇒ String
The unique identifier of the flow. Format: projects//locations//agents//flows/
.
Corresponds to the JSON property name
1531 1532 1533 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 1531 def name @name end |
#nlu_settings ⇒ Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3NluSettings
Settings related to NLU.
Corresponds to the JSON property nluSettings
1536 1537 1538 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 1536 def nlu_settings @nlu_settings 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/.
Corresponds to the JSON property transitionRouteGroups
1545 1546 1547 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 1545 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 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.
Corresponds to the JSON property transitionRoutes
1558 1559 1560 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 1558 def transition_routes @transition_routes end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1565 1566 1567 1568 1569 1570 1571 1572 1573 |
# File 'lib/google/apis/dialogflow_v3/classes.rb', line 1565 def update!(**args) @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) @name = args[:name] if args.key?(:name) @nlu_settings = args[:nlu_settings] if args.key?(:nlu_settings) @transition_route_groups = args[:transition_route_groups] if args.key?(:transition_route_groups) @transition_routes = args[:transition_routes] if args.key?(:transition_routes) end |