class Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1EventHandler

An event handler specifies an event that can be handled during a session. When the specified event happens, the following actions are taken in order: * If there is a `trigger_fulfillment` associated with the event, it will be called.

transition into the specified page. * If there is a `target_flow` associated with the event, the session will transition into the specified flow.

Attributes

event[RW]

Required. The name of the event to handle. Corresponds to the JSON property `event` @return [String]

name[RW]

Output only. The unique identifier of this event handler. Corresponds to the JSON property `name` @return [String]

target_flow[RW]

The target flow to transition to. Format: `projects//locations//agents//flows/` . Corresponds to the JSON property `targetFlow` @return [String]

target_page[RW]

The target page to transition to. Format: `projects//locations//agents//flows// pages/`. Corresponds to the JSON property `targetPage` @return [String]

trigger_fulfillment[RW]

A fulfillment can do one or more of the following actions at the same time: * Generate rich message responses. * Set parameter values. * Call the webhook. Fulfillments can be called at various stages in the Page or Form lifecycle. For example, when a DetectIntentRequest drives a session to enter a new page, the page's entry fulfillment can add a static response to the QueryResult in the returning DetectIntentResponse, call the webhook (for example, to load user data from a database), or both. Corresponds to the JSON property `triggerFulfillment` @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1Fulfillment]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/dialogflow_v3beta1/classes.rb, line 3527
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/dialogflow_v3beta1/classes.rb, line 3532
def update!(**args)
  @event = args[:event] if args.key?(:event)
  @name = args[:name] if args.key?(:name)
  @target_flow = args[:target_flow] if args.key?(:target_flow)
  @target_page = args[:target_page] if args.key?(:target_page)
  @trigger_fulfillment = args[:trigger_fulfillment] if args.key?(:trigger_fulfillment)
end