Class: Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1Flow

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/dialogflow_v3beta1/classes.rb,
lib/google/apis/dialogflow_v3beta1/representations.rb,
lib/google/apis/dialogflow_v3beta1/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

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudDialogflowCxV3beta1Flow

Returns a new instance of GoogleCloudDialogflowCxV3beta1Flow.



5174
5175
5176
# File 'lib/google/apis/dialogflow_v3beta1/classes.rb', line 5174

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#descriptionString

The description of the flow. The maximum length is 500 characters. If exceeded, the request is rejected. Corresponds to the JSON property description

Returns:

  • (String)


5123
5124
5125
# File 'lib/google/apis/dialogflow_v3beta1/classes.rb', line 5123

def description
  @description
end

#display_nameString

Required. The human-readable name of the flow. Corresponds to the JSON property displayName

Returns:

  • (String)


5128
5129
5130
# File 'lib/google/apis/dialogflow_v3beta1/classes.rb', line 5128

def display_name
  @display_name
end

#event_handlersArray<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1EventHandler>

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



5139
5140
5141
# File 'lib/google/apis/dialogflow_v3beta1/classes.rb', line 5139

def event_handlers
  @event_handlers
end

#nameString

The unique identifier of the flow. Format: projects//locations//agents//flows/ . Corresponds to the JSON property name

Returns:

  • (String)


5145
5146
5147
# File 'lib/google/apis/dialogflow_v3beta1/classes.rb', line 5145

def name
  @name
end

#nlu_settingsGoogle::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1NluSettings

Settings related to NLU. Corresponds to the JSON property nluSettings



5150
5151
5152
# File 'lib/google/apis/dialogflow_v3beta1/classes.rb', line 5150

def nlu_settings
  @nlu_settings
end

#transition_route_groupsArray<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

Returns:

  • (Array<String>)


5159
5160
5161
# File 'lib/google/apis/dialogflow_v3beta1/classes.rb', line 5159

def transition_route_groups
  @transition_route_groups
end

#transition_routesArray<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1TransitionRoute>

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



5172
5173
5174
# File 'lib/google/apis/dialogflow_v3beta1/classes.rb', line 5172

def transition_routes
  @transition_routes
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5179
5180
5181
5182
5183
5184
5185
5186
5187
# File 'lib/google/apis/dialogflow_v3beta1/classes.rb', line 5179

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