google-apis-dialogflow_v3beta1 0.66.0 → 0.68.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -22,6 +22,108 @@ module Google
22
22
  module Apis
23
23
  module DialogflowV3beta1
24
24
 
25
+ # Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
26
+ # Settings exposed at lower level overrides the settings exposed at higher level.
27
+ # Overriding occurs at the sub-setting level. For example, the
28
+ # playback_interruption_settings at fulfillment level only overrides the
29
+ # playback_interruption_settings at the agent level, leaving other settings at
30
+ # the agent level unchanged. DTMF settings does not override each other. DTMF
31
+ # settings set at different levels define DTMF detections running in parallel.
32
+ # Hierarchy: Agent->Flow->Page->Fulfillment/Parameter.
33
+ class GoogleCloudDialogflowCxV3AdvancedSettings
34
+ include Google::Apis::Core::Hashable
35
+
36
+ # Google Cloud Storage location for a Dialogflow operation that writes or
37
+ # exports objects (e.g. exported agent or transcripts) outside of Dialogflow.
38
+ # Corresponds to the JSON property `audioExportGcsDestination`
39
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3GcsDestination]
40
+ attr_accessor :audio_export_gcs_destination
41
+
42
+ # Define behaviors for DTMF (dual tone multi frequency).
43
+ # Corresponds to the JSON property `dtmfSettings`
44
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings]
45
+ attr_accessor :dtmf_settings
46
+
47
+ # Define behaviors on logging.
48
+ # Corresponds to the JSON property `loggingSettings`
49
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings]
50
+ attr_accessor :logging_settings
51
+
52
+ def initialize(**args)
53
+ update!(**args)
54
+ end
55
+
56
+ # Update properties of this object
57
+ def update!(**args)
58
+ @audio_export_gcs_destination = args[:audio_export_gcs_destination] if args.key?(:audio_export_gcs_destination)
59
+ @dtmf_settings = args[:dtmf_settings] if args.key?(:dtmf_settings)
60
+ @logging_settings = args[:logging_settings] if args.key?(:logging_settings)
61
+ end
62
+ end
63
+
64
+ # Define behaviors for DTMF (dual tone multi frequency).
65
+ class GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings
66
+ include Google::Apis::Core::Hashable
67
+
68
+ # If true, incoming audio is processed for DTMF (dual tone multi frequency)
69
+ # events. For example, if the caller presses a button on their telephone keypad
70
+ # and DTMF processing is enabled, Dialogflow will detect the event (e.g. a "3"
71
+ # was pressed) in the incoming audio and pass the event to the bot to drive
72
+ # business logic (e.g. when 3 is pressed, return the account balance).
73
+ # Corresponds to the JSON property `enabled`
74
+ # @return [Boolean]
75
+ attr_accessor :enabled
76
+ alias_method :enabled?, :enabled
77
+
78
+ # The digit that terminates a DTMF digit sequence.
79
+ # Corresponds to the JSON property `finishDigit`
80
+ # @return [String]
81
+ attr_accessor :finish_digit
82
+
83
+ # Max length of DTMF digits.
84
+ # Corresponds to the JSON property `maxDigits`
85
+ # @return [Fixnum]
86
+ attr_accessor :max_digits
87
+
88
+ def initialize(**args)
89
+ update!(**args)
90
+ end
91
+
92
+ # Update properties of this object
93
+ def update!(**args)
94
+ @enabled = args[:enabled] if args.key?(:enabled)
95
+ @finish_digit = args[:finish_digit] if args.key?(:finish_digit)
96
+ @max_digits = args[:max_digits] if args.key?(:max_digits)
97
+ end
98
+ end
99
+
100
+ # Define behaviors on logging.
101
+ class GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings
102
+ include Google::Apis::Core::Hashable
103
+
104
+ # If true, DF Interaction logging is currently enabled.
105
+ # Corresponds to the JSON property `enableInteractionLogging`
106
+ # @return [Boolean]
107
+ attr_accessor :enable_interaction_logging
108
+ alias_method :enable_interaction_logging?, :enable_interaction_logging
109
+
110
+ # If true, StackDriver logging is currently enabled.
111
+ # Corresponds to the JSON property `enableStackdriverLogging`
112
+ # @return [Boolean]
113
+ attr_accessor :enable_stackdriver_logging
114
+ alias_method :enable_stackdriver_logging?, :enable_stackdriver_logging
115
+
116
+ def initialize(**args)
117
+ update!(**args)
118
+ end
119
+
120
+ # Update properties of this object
121
+ def update!(**args)
122
+ @enable_interaction_logging = args[:enable_interaction_logging] if args.key?(:enable_interaction_logging)
123
+ @enable_stackdriver_logging = args[:enable_stackdriver_logging] if args.key?(:enable_stackdriver_logging)
124
+ end
125
+ end
126
+
25
127
  # Represents the natural speech audio to be processed.
26
128
  class GoogleCloudDialogflowCxV3AudioInput
27
129
  include Google::Apis::Core::Hashable
@@ -337,6 +439,34 @@ module Google
337
439
  end
338
440
  end
339
441
 
442
+ # A data store connection. It represents a data store in Discovery Engine and
443
+ # the type of the contents it contains.
444
+ class GoogleCloudDialogflowCxV3DataStoreConnection
445
+ include Google::Apis::Core::Hashable
446
+
447
+ # The full name of the referenced data store. Formats: `projects/`project`/
448
+ # locations/`location`/collections/`collection`/dataStores/`data_store`` `
449
+ # projects/`project`/locations/`location`/dataStores/`data_store``
450
+ # Corresponds to the JSON property `dataStore`
451
+ # @return [String]
452
+ attr_accessor :data_store
453
+
454
+ # The type of the connected data store.
455
+ # Corresponds to the JSON property `dataStoreType`
456
+ # @return [String]
457
+ attr_accessor :data_store_type
458
+
459
+ def initialize(**args)
460
+ update!(**args)
461
+ end
462
+
463
+ # Update properties of this object
464
+ def update!(**args)
465
+ @data_store = args[:data_store] if args.key?(:data_store)
466
+ @data_store_type = args[:data_store_type] if args.key?(:data_store_type)
467
+ end
468
+ end
469
+
340
470
  # Metadata for DeleteDocument operation.
341
471
  class GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata
342
472
  include Google::Apis::Core::Hashable
@@ -779,6 +909,18 @@ module Google
779
909
  class GoogleCloudDialogflowCxV3FormParameter
780
910
  include Google::Apis::Core::Hashable
781
911
 
912
+ # Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
913
+ # Settings exposed at lower level overrides the settings exposed at higher level.
914
+ # Overriding occurs at the sub-setting level. For example, the
915
+ # playback_interruption_settings at fulfillment level only overrides the
916
+ # playback_interruption_settings at the agent level, leaving other settings at
917
+ # the agent level unchanged. DTMF settings does not override each other. DTMF
918
+ # settings set at different levels define DTMF detections running in parallel.
919
+ # Hierarchy: Agent->Flow->Page->Fulfillment/Parameter.
920
+ # Corresponds to the JSON property `advancedSettings`
921
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3AdvancedSettings]
922
+ attr_accessor :advanced_settings
923
+
782
924
  # The default value of an optional parameter. If the parameter is required, the
783
925
  # default value will be ignored.
784
926
  # Corresponds to the JSON property `defaultValue`
@@ -832,6 +974,7 @@ module Google
832
974
 
833
975
  # Update properties of this object
834
976
  def update!(**args)
977
+ @advanced_settings = args[:advanced_settings] if args.key?(:advanced_settings)
835
978
  @default_value = args[:default_value] if args.key?(:default_value)
836
979
  @display_name = args[:display_name] if args.key?(:display_name)
837
980
  @entity_type = args[:entity_type] if args.key?(:entity_type)
@@ -902,11 +1045,32 @@ module Google
902
1045
  class GoogleCloudDialogflowCxV3Fulfillment
903
1046
  include Google::Apis::Core::Hashable
904
1047
 
1048
+ # Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
1049
+ # Settings exposed at lower level overrides the settings exposed at higher level.
1050
+ # Overriding occurs at the sub-setting level. For example, the
1051
+ # playback_interruption_settings at fulfillment level only overrides the
1052
+ # playback_interruption_settings at the agent level, leaving other settings at
1053
+ # the agent level unchanged. DTMF settings does not override each other. DTMF
1054
+ # settings set at different levels define DTMF detections running in parallel.
1055
+ # Hierarchy: Agent->Flow->Page->Fulfillment/Parameter.
1056
+ # Corresponds to the JSON property `advancedSettings`
1057
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3AdvancedSettings]
1058
+ attr_accessor :advanced_settings
1059
+
905
1060
  # Conditional cases for this fulfillment.
906
1061
  # Corresponds to the JSON property `conditionalCases`
907
1062
  # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3FulfillmentConditionalCases>]
908
1063
  attr_accessor :conditional_cases
909
1064
 
1065
+ # If the flag is true, the agent will utilize LLM to generate a text response.
1066
+ # If LLM generation fails, the defined responses in the fulfillment will be
1067
+ # respected. This flag is only useful for fulfillments associated with no-match
1068
+ # event handlers.
1069
+ # Corresponds to the JSON property `enableGenerativeFallback`
1070
+ # @return [Boolean]
1071
+ attr_accessor :enable_generative_fallback
1072
+ alias_method :enable_generative_fallback?, :enable_generative_fallback
1073
+
910
1074
  # The list of rich message responses to present to the user.
911
1075
  # Corresponds to the JSON property `messages`
912
1076
  # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3ResponseMessage>]
@@ -949,7 +1113,9 @@ module Google
949
1113
 
950
1114
  # Update properties of this object
951
1115
  def update!(**args)
1116
+ @advanced_settings = args[:advanced_settings] if args.key?(:advanced_settings)
952
1117
  @conditional_cases = args[:conditional_cases] if args.key?(:conditional_cases)
1118
+ @enable_generative_fallback = args[:enable_generative_fallback] if args.key?(:enable_generative_fallback)
953
1119
  @messages = args[:messages] if args.key?(:messages)
954
1120
  @return_partial_responses = args[:return_partial_responses] if args.key?(:return_partial_responses)
955
1121
  @set_parameter_actions = args[:set_parameter_actions] if args.key?(:set_parameter_actions)
@@ -1069,6 +1235,28 @@ module Google
1069
1235
  end
1070
1236
  end
1071
1237
 
1238
+ # Google Cloud Storage location for a Dialogflow operation that writes or
1239
+ # exports objects (e.g. exported agent or transcripts) outside of Dialogflow.
1240
+ class GoogleCloudDialogflowCxV3GcsDestination
1241
+ include Google::Apis::Core::Hashable
1242
+
1243
+ # Required. The Google Cloud Storage URI for the exported objects. A URI is of
1244
+ # the form: `gs://bucket/object-name-or-prefix` Whether a full object name, or
1245
+ # just a prefix, its usage depends on the Dialogflow operation.
1246
+ # Corresponds to the JSON property `uri`
1247
+ # @return [String]
1248
+ attr_accessor :uri
1249
+
1250
+ def initialize(**args)
1251
+ update!(**args)
1252
+ end
1253
+
1254
+ # Update properties of this object
1255
+ def update!(**args)
1256
+ @uri = args[:uri] if args.key?(:uri)
1257
+ end
1258
+ end
1259
+
1072
1260
  # Metadata in google::longrunning::Operation for Knowledge operations.
1073
1261
  class GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata
1074
1262
  include Google::Apis::Core::Hashable
@@ -1483,6 +1671,60 @@ module Google
1483
1671
  end
1484
1672
  end
1485
1673
 
1674
+ # The Knowledge Connector settings for this page or flow. This includes
1675
+ # information such as the attached Knowledge Bases, and the way to execute
1676
+ # fulfillment.
1677
+ class GoogleCloudDialogflowCxV3KnowledgeConnectorSettings
1678
+ include Google::Apis::Core::Hashable
1679
+
1680
+ # Optional. List of related data store connections.
1681
+ # Corresponds to the JSON property `dataStoreConnections`
1682
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3DataStoreConnection>]
1683
+ attr_accessor :data_store_connections
1684
+
1685
+ # Whether Knowledge Connector is enabled or not.
1686
+ # Corresponds to the JSON property `enabled`
1687
+ # @return [Boolean]
1688
+ attr_accessor :enabled
1689
+ alias_method :enabled?, :enabled
1690
+
1691
+ # The target flow to transition to. Format: `projects//locations//agents//flows/`
1692
+ # .
1693
+ # Corresponds to the JSON property `targetFlow`
1694
+ # @return [String]
1695
+ attr_accessor :target_flow
1696
+
1697
+ # The target page to transition to. Format: `projects//locations//agents//flows//
1698
+ # pages/`.
1699
+ # Corresponds to the JSON property `targetPage`
1700
+ # @return [String]
1701
+ attr_accessor :target_page
1702
+
1703
+ # A fulfillment can do one or more of the following actions at the same time: *
1704
+ # Generate rich message responses. * Set parameter values. * Call the webhook.
1705
+ # Fulfillments can be called at various stages in the Page or Form lifecycle.
1706
+ # For example, when a DetectIntentRequest drives a session to enter a new page,
1707
+ # the page's entry fulfillment can add a static response to the QueryResult in
1708
+ # the returning DetectIntentResponse, call the webhook (for example, to load
1709
+ # user data from a database), or both.
1710
+ # Corresponds to the JSON property `triggerFulfillment`
1711
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3Fulfillment]
1712
+ attr_accessor :trigger_fulfillment
1713
+
1714
+ def initialize(**args)
1715
+ update!(**args)
1716
+ end
1717
+
1718
+ # Update properties of this object
1719
+ def update!(**args)
1720
+ @data_store_connections = args[:data_store_connections] if args.key?(:data_store_connections)
1721
+ @enabled = args[:enabled] if args.key?(:enabled)
1722
+ @target_flow = args[:target_flow] if args.key?(:target_flow)
1723
+ @target_page = args[:target_page] if args.key?(:target_page)
1724
+ @trigger_fulfillment = args[:trigger_fulfillment] if args.key?(:trigger_fulfillment)
1725
+ end
1726
+ end
1727
+
1486
1728
  # A Dialogflow CX conversation (session) can be described and visualized as a
1487
1729
  # state machine. The states of a CX session are represented by pages. For each
1488
1730
  # flow, you define many pages, where your combined pages can handle a complete
@@ -1498,6 +1740,18 @@ module Google
1498
1740
  class GoogleCloudDialogflowCxV3Page
1499
1741
  include Google::Apis::Core::Hashable
1500
1742
 
1743
+ # Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
1744
+ # Settings exposed at lower level overrides the settings exposed at higher level.
1745
+ # Overriding occurs at the sub-setting level. For example, the
1746
+ # playback_interruption_settings at fulfillment level only overrides the
1747
+ # playback_interruption_settings at the agent level, leaving other settings at
1748
+ # the agent level unchanged. DTMF settings does not override each other. DTMF
1749
+ # settings set at different levels define DTMF detections running in parallel.
1750
+ # Hierarchy: Agent->Flow->Page->Fulfillment/Parameter.
1751
+ # Corresponds to the JSON property `advancedSettings`
1752
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3AdvancedSettings]
1753
+ attr_accessor :advanced_settings
1754
+
1501
1755
  # Required. The human-readable name of the page, unique within the flow.
1502
1756
  # Corresponds to the JSON property `displayName`
1503
1757
  # @return [String]
@@ -1529,6 +1783,13 @@ module Google
1529
1783
  # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3Form]
1530
1784
  attr_accessor :form
1531
1785
 
1786
+ # The Knowledge Connector settings for this page or flow. This includes
1787
+ # information such as the attached Knowledge Bases, and the way to execute
1788
+ # fulfillment.
1789
+ # Corresponds to the JSON property `knowledgeConnectorSettings`
1790
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3KnowledgeConnectorSettings]
1791
+ attr_accessor :knowledge_connector_settings
1792
+
1532
1793
  # The unique identifier of the page. Required for the Pages.UpdatePage method.
1533
1794
  # Pages.CreatePage populates the name automatically. Format: `projects//
1534
1795
  # locations//agents//flows//pages/`.
@@ -1536,14 +1797,17 @@ module Google
1536
1797
  # @return [String]
1537
1798
  attr_accessor :name
1538
1799
 
1539
- # Ordered list of `TransitionRouteGroups` associated with the page. Transition
1540
- # route groups must be unique within a page. * If multiple transition routes
1541
- # within a page scope refer to the same intent, then the precedence order is:
1542
- # page's transition route -> page's transition route group -> flow's transition
1543
- # routes. * If multiple transition route groups within a page contain the same
1544
- # intent, then the first group in the ordered list takes precedence. Format:`
1545
- # projects//locations//agents//flows//transitionRouteGroups/` or `projects//
1546
- # locations//agents//transitionRouteGroups/` for agent-level groups.
1800
+ # Ordered list of `TransitionRouteGroups` added to the page. Transition route
1801
+ # groups must be unique within a page. If the page links both flow-level
1802
+ # transition route groups and agent-level transition route groups, the flow-
1803
+ # level ones will have higher priority and will be put before the agent-level
1804
+ # ones. * If multiple transition routes within a page scope refer to the same
1805
+ # intent, then the precedence order is: page's transition route -> page's
1806
+ # transition route group -> flow's transition routes. * If multiple transition
1807
+ # route groups within a page contain the same intent, then the first group in
1808
+ # the ordered list takes precedence. Format:`projects//locations//agents//flows//
1809
+ # transitionRouteGroups/` or `projects//locations//agents//transitionRouteGroups/
1810
+ # ` for agent-level groups.
1547
1811
  # Corresponds to the JSON property `transitionRouteGroups`
1548
1812
  # @return [Array<String>]
1549
1813
  attr_accessor :transition_route_groups
@@ -1568,10 +1832,12 @@ module Google
1568
1832
 
1569
1833
  # Update properties of this object
1570
1834
  def update!(**args)
1835
+ @advanced_settings = args[:advanced_settings] if args.key?(:advanced_settings)
1571
1836
  @display_name = args[:display_name] if args.key?(:display_name)
1572
1837
  @entry_fulfillment = args[:entry_fulfillment] if args.key?(:entry_fulfillment)
1573
1838
  @event_handlers = args[:event_handlers] if args.key?(:event_handlers)
1574
1839
  @form = args[:form] if args.key?(:form)
1840
+ @knowledge_connector_settings = args[:knowledge_connector_settings] if args.key?(:knowledge_connector_settings)
1575
1841
  @name = args[:name] if args.key?(:name)
1576
1842
  @transition_route_groups = args[:transition_route_groups] if args.key?(:transition_route_groups)
1577
1843
  @transition_routes = args[:transition_routes] if args.key?(:transition_routes)
@@ -1802,6 +2068,13 @@ module Google
1802
2068
  # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3ResponseMessageEndInteraction]
1803
2069
  attr_accessor :end_interaction
1804
2070
 
2071
+ # Represents info card response. If the response contains generative knowledge
2072
+ # prediction, Dialogflow will return a payload with Infobot Messenger compatible
2073
+ # info card. Otherwise, the info card response is skipped.
2074
+ # Corresponds to the JSON property `knowledgeInfoCard`
2075
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard]
2076
+ attr_accessor :knowledge_info_card
2077
+
1805
2078
  # Indicates that the conversation should be handed off to a live agent.
1806
2079
  # Dialogflow only uses this to determine which conversations were handed off to
1807
2080
  # a human agent for measurement purposes. What else to do with this signal is up
@@ -1862,6 +2135,7 @@ module Google
1862
2135
  @channel = args[:channel] if args.key?(:channel)
1863
2136
  @conversation_success = args[:conversation_success] if args.key?(:conversation_success)
1864
2137
  @end_interaction = args[:end_interaction] if args.key?(:end_interaction)
2138
+ @knowledge_info_card = args[:knowledge_info_card] if args.key?(:knowledge_info_card)
1865
2139
  @live_agent_handoff = args[:live_agent_handoff] if args.key?(:live_agent_handoff)
1866
2140
  @mixed_audio = args[:mixed_audio] if args.key?(:mixed_audio)
1867
2141
  @output_audio_text = args[:output_audio_text] if args.key?(:output_audio_text)
@@ -1914,6 +2188,21 @@ module Google
1914
2188
  end
1915
2189
  end
1916
2190
 
2191
+ # Represents info card response. If the response contains generative knowledge
2192
+ # prediction, Dialogflow will return a payload with Infobot Messenger compatible
2193
+ # info card. Otherwise, the info card response is skipped.
2194
+ class GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard
2195
+ include Google::Apis::Core::Hashable
2196
+
2197
+ def initialize(**args)
2198
+ update!(**args)
2199
+ end
2200
+
2201
+ # Update properties of this object
2202
+ def update!(**args)
2203
+ end
2204
+ end
2205
+
1917
2206
  # Indicates that the conversation should be handed off to a live agent.
1918
2207
  # Dialogflow only uses this to determine which conversations were handed off to
1919
2208
  # a human agent for measurement purposes. What else to do with this signal is up
@@ -2497,6 +2786,12 @@ module Google
2497
2786
  # @return [String]
2498
2787
  attr_accessor :condition
2499
2788
 
2789
+ # Optional. The description of the transition route. The maximum length is 500
2790
+ # characters.
2791
+ # Corresponds to the JSON property `description`
2792
+ # @return [String]
2793
+ attr_accessor :description
2794
+
2500
2795
  # The unique identifier of an Intent. Format: `projects//locations//agents//
2501
2796
  # intents/`. Indicates that the transition can only happen when the given intent
2502
2797
  # is matched. At least one of `intent` or `condition` must be specified. When
@@ -2541,6 +2836,7 @@ module Google
2541
2836
  # Update properties of this object
2542
2837
  def update!(**args)
2543
2838
  @condition = args[:condition] if args.key?(:condition)
2839
+ @description = args[:description] if args.key?(:description)
2544
2840
  @intent = args[:intent] if args.key?(:intent)
2545
2841
  @name = args[:name] if args.key?(:name)
2546
2842
  @target_flow = args[:target_flow] if args.key?(:target_flow)
@@ -3131,6 +3427,11 @@ module Google
3131
3427
  # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1GcsDestination]
3132
3428
  attr_accessor :audio_export_gcs_destination
3133
3429
 
3430
+ # Define behaviors for DTMF (dual tone multi frequency).
3431
+ # Corresponds to the JSON property `dtmfSettings`
3432
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings]
3433
+ attr_accessor :dtmf_settings
3434
+
3134
3435
  # Define behaviors on logging.
3135
3436
  # Corresponds to the JSON property `loggingSettings`
3136
3437
  # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings]
@@ -3143,10 +3444,47 @@ module Google
3143
3444
  # Update properties of this object
3144
3445
  def update!(**args)
3145
3446
  @audio_export_gcs_destination = args[:audio_export_gcs_destination] if args.key?(:audio_export_gcs_destination)
3447
+ @dtmf_settings = args[:dtmf_settings] if args.key?(:dtmf_settings)
3146
3448
  @logging_settings = args[:logging_settings] if args.key?(:logging_settings)
3147
3449
  end
3148
3450
  end
3149
3451
 
3452
+ # Define behaviors for DTMF (dual tone multi frequency).
3453
+ class GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings
3454
+ include Google::Apis::Core::Hashable
3455
+
3456
+ # If true, incoming audio is processed for DTMF (dual tone multi frequency)
3457
+ # events. For example, if the caller presses a button on their telephone keypad
3458
+ # and DTMF processing is enabled, Dialogflow will detect the event (e.g. a "3"
3459
+ # was pressed) in the incoming audio and pass the event to the bot to drive
3460
+ # business logic (e.g. when 3 is pressed, return the account balance).
3461
+ # Corresponds to the JSON property `enabled`
3462
+ # @return [Boolean]
3463
+ attr_accessor :enabled
3464
+ alias_method :enabled?, :enabled
3465
+
3466
+ # The digit that terminates a DTMF digit sequence.
3467
+ # Corresponds to the JSON property `finishDigit`
3468
+ # @return [String]
3469
+ attr_accessor :finish_digit
3470
+
3471
+ # Max length of DTMF digits.
3472
+ # Corresponds to the JSON property `maxDigits`
3473
+ # @return [Fixnum]
3474
+ attr_accessor :max_digits
3475
+
3476
+ def initialize(**args)
3477
+ update!(**args)
3478
+ end
3479
+
3480
+ # Update properties of this object
3481
+ def update!(**args)
3482
+ @enabled = args[:enabled] if args.key?(:enabled)
3483
+ @finish_digit = args[:finish_digit] if args.key?(:finish_digit)
3484
+ @max_digits = args[:max_digits] if args.key?(:max_digits)
3485
+ end
3486
+ end
3487
+
3150
3488
  # Define behaviors on logging.
3151
3489
  class GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings
3152
3490
  include Google::Apis::Core::Hashable
@@ -3234,6 +3572,11 @@ module Google
3234
3572
  attr_accessor :enable_stackdriver_logging
3235
3573
  alias_method :enable_stackdriver_logging?, :enable_stackdriver_logging
3236
3574
 
3575
+ # Settings for Gen App Builder.
3576
+ # Corresponds to the JSON property `genAppBuilderSettings`
3577
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1AgentGenAppBuilderSettings]
3578
+ attr_accessor :gen_app_builder_settings
3579
+
3237
3580
  # Settings for connecting to Git repository for an agent.
3238
3581
  # Corresponds to the JSON property `gitIntegrationSettings`
3239
3582
  # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1AgentGitIntegrationSettings]
@@ -3301,6 +3644,7 @@ module Google
3301
3644
  @display_name = args[:display_name] if args.key?(:display_name)
3302
3645
  @enable_spell_correction = args[:enable_spell_correction] if args.key?(:enable_spell_correction)
3303
3646
  @enable_stackdriver_logging = args[:enable_stackdriver_logging] if args.key?(:enable_stackdriver_logging)
3647
+ @gen_app_builder_settings = args[:gen_app_builder_settings] if args.key?(:gen_app_builder_settings)
3304
3648
  @git_integration_settings = args[:git_integration_settings] if args.key?(:git_integration_settings)
3305
3649
  @locked = args[:locked] if args.key?(:locked)
3306
3650
  @name = args[:name] if args.key?(:name)
@@ -3313,6 +3657,27 @@ module Google
3313
3657
  end
3314
3658
  end
3315
3659
 
3660
+ # Settings for Gen App Builder.
3661
+ class GoogleCloudDialogflowCxV3beta1AgentGenAppBuilderSettings
3662
+ include Google::Apis::Core::Hashable
3663
+
3664
+ # Required. The full name of the Gen App Builder engine related to this agent if
3665
+ # there is one. Format: `projects/`Project ID`/locations/`Location ID`/
3666
+ # collections/`Collection ID`/engines/`Engine ID``
3667
+ # Corresponds to the JSON property `engine`
3668
+ # @return [String]
3669
+ attr_accessor :engine
3670
+
3671
+ def initialize(**args)
3672
+ update!(**args)
3673
+ end
3674
+
3675
+ # Update properties of this object
3676
+ def update!(**args)
3677
+ @engine = args[:engine] if args.key?(:engine)
3678
+ end
3679
+ end
3680
+
3316
3681
  # Settings for connecting to Git repository for an agent.
3317
3682
  class GoogleCloudDialogflowCxV3beta1AgentGitIntegrationSettings
3318
3683
  include Google::Apis::Core::Hashable
@@ -3921,6 +4286,34 @@ module Google
3921
4286
  end
3922
4287
  end
3923
4288
 
4289
+ # A data store connection. It represents a data store in Discovery Engine and
4290
+ # the type of the contents it contains.
4291
+ class GoogleCloudDialogflowCxV3beta1DataStoreConnection
4292
+ include Google::Apis::Core::Hashable
4293
+
4294
+ # The full name of the referenced data store. Formats: `projects/`project`/
4295
+ # locations/`location`/collections/`collection`/dataStores/`data_store`` `
4296
+ # projects/`project`/locations/`location`/dataStores/`data_store``
4297
+ # Corresponds to the JSON property `dataStore`
4298
+ # @return [String]
4299
+ attr_accessor :data_store
4300
+
4301
+ # The type of the connected data store.
4302
+ # Corresponds to the JSON property `dataStoreType`
4303
+ # @return [String]
4304
+ attr_accessor :data_store_type
4305
+
4306
+ def initialize(**args)
4307
+ update!(**args)
4308
+ end
4309
+
4310
+ # Update properties of this object
4311
+ def update!(**args)
4312
+ @data_store = args[:data_store] if args.key?(:data_store)
4313
+ @data_store_type = args[:data_store_type] if args.key?(:data_store_type)
4314
+ end
4315
+ end
4316
+
3924
4317
  # Metadata for DeleteDocument operation.
3925
4318
  class GoogleCloudDialogflowCxV3beta1DeleteDocumentOperationMetadata
3926
4319
  include Google::Apis::Core::Hashable
@@ -5118,6 +5511,18 @@ module Google
5118
5511
  class GoogleCloudDialogflowCxV3beta1Flow
5119
5512
  include Google::Apis::Core::Hashable
5120
5513
 
5514
+ # Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
5515
+ # Settings exposed at lower level overrides the settings exposed at higher level.
5516
+ # Overriding occurs at the sub-setting level. For example, the
5517
+ # playback_interruption_settings at fulfillment level only overrides the
5518
+ # playback_interruption_settings at the agent level, leaving other settings at
5519
+ # the agent level unchanged. DTMF settings does not override each other. DTMF
5520
+ # settings set at different levels define DTMF detections running in parallel.
5521
+ # Hierarchy: Agent->Flow->Page->Fulfillment/Parameter.
5522
+ # Corresponds to the JSON property `advancedSettings`
5523
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1AdvancedSettings]
5524
+ attr_accessor :advanced_settings
5525
+
5121
5526
  # The description of the flow. The maximum length is 500 characters. If exceeded,
5122
5527
  # the request is rejected.
5123
5528
  # Corresponds to the JSON property `description`
@@ -5140,6 +5545,13 @@ module Google
5140
5545
  # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1EventHandler>]
5141
5546
  attr_accessor :event_handlers
5142
5547
 
5548
+ # The Knowledge Connector settings for this page or flow. This includes
5549
+ # information such as the attached Knowledge Bases, and the way to execute
5550
+ # fulfillment.
5551
+ # Corresponds to the JSON property `knowledgeConnectorSettings`
5552
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings]
5553
+ attr_accessor :knowledge_connector_settings
5554
+
5143
5555
  # The unique identifier of the flow. Format: `projects//locations//agents//flows/
5144
5556
  # `.
5145
5557
  # Corresponds to the JSON property `name`
@@ -5180,9 +5592,11 @@ module Google
5180
5592
 
5181
5593
  # Update properties of this object
5182
5594
  def update!(**args)
5595
+ @advanced_settings = args[:advanced_settings] if args.key?(:advanced_settings)
5183
5596
  @description = args[:description] if args.key?(:description)
5184
5597
  @display_name = args[:display_name] if args.key?(:display_name)
5185
5598
  @event_handlers = args[:event_handlers] if args.key?(:event_handlers)
5599
+ @knowledge_connector_settings = args[:knowledge_connector_settings] if args.key?(:knowledge_connector_settings)
5186
5600
  @name = args[:name] if args.key?(:name)
5187
5601
  @nlu_settings = args[:nlu_settings] if args.key?(:nlu_settings)
5188
5602
  @transition_route_groups = args[:transition_route_groups] if args.key?(:transition_route_groups)
@@ -5272,6 +5686,18 @@ module Google
5272
5686
  class GoogleCloudDialogflowCxV3beta1FormParameter
5273
5687
  include Google::Apis::Core::Hashable
5274
5688
 
5689
+ # Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
5690
+ # Settings exposed at lower level overrides the settings exposed at higher level.
5691
+ # Overriding occurs at the sub-setting level. For example, the
5692
+ # playback_interruption_settings at fulfillment level only overrides the
5693
+ # playback_interruption_settings at the agent level, leaving other settings at
5694
+ # the agent level unchanged. DTMF settings does not override each other. DTMF
5695
+ # settings set at different levels define DTMF detections running in parallel.
5696
+ # Hierarchy: Agent->Flow->Page->Fulfillment/Parameter.
5697
+ # Corresponds to the JSON property `advancedSettings`
5698
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1AdvancedSettings]
5699
+ attr_accessor :advanced_settings
5700
+
5275
5701
  # The default value of an optional parameter. If the parameter is required, the
5276
5702
  # default value will be ignored.
5277
5703
  # Corresponds to the JSON property `defaultValue`
@@ -5325,6 +5751,7 @@ module Google
5325
5751
 
5326
5752
  # Update properties of this object
5327
5753
  def update!(**args)
5754
+ @advanced_settings = args[:advanced_settings] if args.key?(:advanced_settings)
5328
5755
  @default_value = args[:default_value] if args.key?(:default_value)
5329
5756
  @display_name = args[:display_name] if args.key?(:display_name)
5330
5757
  @entity_type = args[:entity_type] if args.key?(:entity_type)
@@ -5472,11 +5899,32 @@ module Google
5472
5899
  class GoogleCloudDialogflowCxV3beta1Fulfillment
5473
5900
  include Google::Apis::Core::Hashable
5474
5901
 
5902
+ # Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
5903
+ # Settings exposed at lower level overrides the settings exposed at higher level.
5904
+ # Overriding occurs at the sub-setting level. For example, the
5905
+ # playback_interruption_settings at fulfillment level only overrides the
5906
+ # playback_interruption_settings at the agent level, leaving other settings at
5907
+ # the agent level unchanged. DTMF settings does not override each other. DTMF
5908
+ # settings set at different levels define DTMF detections running in parallel.
5909
+ # Hierarchy: Agent->Flow->Page->Fulfillment/Parameter.
5910
+ # Corresponds to the JSON property `advancedSettings`
5911
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1AdvancedSettings]
5912
+ attr_accessor :advanced_settings
5913
+
5475
5914
  # Conditional cases for this fulfillment.
5476
5915
  # Corresponds to the JSON property `conditionalCases`
5477
5916
  # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases>]
5478
5917
  attr_accessor :conditional_cases
5479
5918
 
5919
+ # If the flag is true, the agent will utilize LLM to generate a text response.
5920
+ # If LLM generation fails, the defined responses in the fulfillment will be
5921
+ # respected. This flag is only useful for fulfillments associated with no-match
5922
+ # event handlers.
5923
+ # Corresponds to the JSON property `enableGenerativeFallback`
5924
+ # @return [Boolean]
5925
+ attr_accessor :enable_generative_fallback
5926
+ alias_method :enable_generative_fallback?, :enable_generative_fallback
5927
+
5480
5928
  # The list of rich message responses to present to the user.
5481
5929
  # Corresponds to the JSON property `messages`
5482
5930
  # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ResponseMessage>]
@@ -5519,7 +5967,9 @@ module Google
5519
5967
 
5520
5968
  # Update properties of this object
5521
5969
  def update!(**args)
5970
+ @advanced_settings = args[:advanced_settings] if args.key?(:advanced_settings)
5522
5971
  @conditional_cases = args[:conditional_cases] if args.key?(:conditional_cases)
5972
+ @enable_generative_fallback = args[:enable_generative_fallback] if args.key?(:enable_generative_fallback)
5523
5973
  @messages = args[:messages] if args.key?(:messages)
5524
5974
  @return_partial_responses = args[:return_partial_responses] if args.key?(:return_partial_responses)
5525
5975
  @set_parameter_actions = args[:set_parameter_actions] if args.key?(:set_parameter_actions)
@@ -5661,6 +6111,159 @@ module Google
5661
6111
  end
5662
6112
  end
5663
6113
 
6114
+ # Settings for Generative AI.
6115
+ class GoogleCloudDialogflowCxV3beta1GenerativeSettings
6116
+ include Google::Apis::Core::Hashable
6117
+
6118
+ # Settings for Generative Fallback.
6119
+ # Corresponds to the JSON property `fallbackSettings`
6120
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1GenerativeSettingsFallbackSettings]
6121
+ attr_accessor :fallback_settings
6122
+
6123
+ # Settings for Generative Safety.
6124
+ # Corresponds to the JSON property `generativeSafetySettings`
6125
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1SafetySettings]
6126
+ attr_accessor :generative_safety_settings
6127
+
6128
+ # Settings for knowledge connector. These parameters are used for LLM prompt
6129
+ # like "You are . You are a helpful and verbose at , . Your task is to help
6130
+ # humans on ".
6131
+ # Corresponds to the JSON property `knowledgeConnectorSettings`
6132
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1GenerativeSettingsKnowledgeConnectorSettings]
6133
+ attr_accessor :knowledge_connector_settings
6134
+
6135
+ # Language for this settings.
6136
+ # Corresponds to the JSON property `languageCode`
6137
+ # @return [String]
6138
+ attr_accessor :language_code
6139
+
6140
+ # Format: `projects//locations//agents//generativeSettings`.
6141
+ # Corresponds to the JSON property `name`
6142
+ # @return [String]
6143
+ attr_accessor :name
6144
+
6145
+ def initialize(**args)
6146
+ update!(**args)
6147
+ end
6148
+
6149
+ # Update properties of this object
6150
+ def update!(**args)
6151
+ @fallback_settings = args[:fallback_settings] if args.key?(:fallback_settings)
6152
+ @generative_safety_settings = args[:generative_safety_settings] if args.key?(:generative_safety_settings)
6153
+ @knowledge_connector_settings = args[:knowledge_connector_settings] if args.key?(:knowledge_connector_settings)
6154
+ @language_code = args[:language_code] if args.key?(:language_code)
6155
+ @name = args[:name] if args.key?(:name)
6156
+ end
6157
+ end
6158
+
6159
+ # Settings for Generative Fallback.
6160
+ class GoogleCloudDialogflowCxV3beta1GenerativeSettingsFallbackSettings
6161
+ include Google::Apis::Core::Hashable
6162
+
6163
+ # Stored prompts that can be selected, for example default templates like "
6164
+ # conservative" or "chatty", or user defined ones.
6165
+ # Corresponds to the JSON property `promptTemplates`
6166
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1GenerativeSettingsFallbackSettingsPromptTemplate>]
6167
+ attr_accessor :prompt_templates
6168
+
6169
+ # Display name of the selected prompt.
6170
+ # Corresponds to the JSON property `selectedPrompt`
6171
+ # @return [String]
6172
+ attr_accessor :selected_prompt
6173
+
6174
+ def initialize(**args)
6175
+ update!(**args)
6176
+ end
6177
+
6178
+ # Update properties of this object
6179
+ def update!(**args)
6180
+ @prompt_templates = args[:prompt_templates] if args.key?(:prompt_templates)
6181
+ @selected_prompt = args[:selected_prompt] if args.key?(:selected_prompt)
6182
+ end
6183
+ end
6184
+
6185
+ # Prompt template.
6186
+ class GoogleCloudDialogflowCxV3beta1GenerativeSettingsFallbackSettingsPromptTemplate
6187
+ include Google::Apis::Core::Hashable
6188
+
6189
+ # Prompt name.
6190
+ # Corresponds to the JSON property `displayName`
6191
+ # @return [String]
6192
+ attr_accessor :display_name
6193
+
6194
+ # If the flag is true, the prompt is frozen and cannot be modified by users.
6195
+ # Corresponds to the JSON property `frozen`
6196
+ # @return [Boolean]
6197
+ attr_accessor :frozen
6198
+ alias_method :frozen?, :frozen
6199
+
6200
+ # Prompt text that is sent to a LLM on no-match default, placeholders are filled
6201
+ # downstream. For example: "Here is a conversation $conversation, a response is:
6202
+ # "
6203
+ # Corresponds to the JSON property `promptText`
6204
+ # @return [String]
6205
+ attr_accessor :prompt_text
6206
+
6207
+ def initialize(**args)
6208
+ update!(**args)
6209
+ end
6210
+
6211
+ # Update properties of this object
6212
+ def update!(**args)
6213
+ @display_name = args[:display_name] if args.key?(:display_name)
6214
+ @frozen = args[:frozen] if args.key?(:frozen)
6215
+ @prompt_text = args[:prompt_text] if args.key?(:prompt_text)
6216
+ end
6217
+ end
6218
+
6219
+ # Settings for knowledge connector. These parameters are used for LLM prompt
6220
+ # like "You are . You are a helpful and verbose at , . Your task is to help
6221
+ # humans on ".
6222
+ class GoogleCloudDialogflowCxV3beta1GenerativeSettingsKnowledgeConnectorSettings
6223
+ include Google::Apis::Core::Hashable
6224
+
6225
+ # Name of the virtual agent. Used for LLM prompt. Can be left empty.
6226
+ # Corresponds to the JSON property `agent`
6227
+ # @return [String]
6228
+ attr_accessor :agent
6229
+
6230
+ # Identity of the agent, e.g. "virtual agent", "AI assistant".
6231
+ # Corresponds to the JSON property `agentIdentity`
6232
+ # @return [String]
6233
+ attr_accessor :agent_identity
6234
+
6235
+ # Agent scope, e.g. "Example company website", "internal Example company website
6236
+ # for employees", "manual of car owner".
6237
+ # Corresponds to the JSON property `agentScope`
6238
+ # @return [String]
6239
+ attr_accessor :agent_scope
6240
+
6241
+ # Name of the company, organization or other entity that the agent represents.
6242
+ # Used for knowledge connector LLM prompt and for knowledge search.
6243
+ # Corresponds to the JSON property `business`
6244
+ # @return [String]
6245
+ attr_accessor :business
6246
+
6247
+ # Company description, used for LLM prompt, e.g. "a family company selling
6248
+ # freshly roasted coffee beans".
6249
+ # Corresponds to the JSON property `businessDescription`
6250
+ # @return [String]
6251
+ attr_accessor :business_description
6252
+
6253
+ def initialize(**args)
6254
+ update!(**args)
6255
+ end
6256
+
6257
+ # Update properties of this object
6258
+ def update!(**args)
6259
+ @agent = args[:agent] if args.key?(:agent)
6260
+ @agent_identity = args[:agent_identity] if args.key?(:agent_identity)
6261
+ @agent_scope = args[:agent_scope] if args.key?(:agent_scope)
6262
+ @business = args[:business] if args.key?(:business)
6263
+ @business_description = args[:business_description] if args.key?(:business_description)
6264
+ end
6265
+ end
6266
+
5664
6267
  # Metadata in google::longrunning::Operation for Knowledge operations.
5665
6268
  class GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata
5666
6269
  include Google::Apis::Core::Hashable
@@ -6202,6 +6805,60 @@ module Google
6202
6805
  end
6203
6806
  end
6204
6807
 
6808
+ # The Knowledge Connector settings for this page or flow. This includes
6809
+ # information such as the attached Knowledge Bases, and the way to execute
6810
+ # fulfillment.
6811
+ class GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings
6812
+ include Google::Apis::Core::Hashable
6813
+
6814
+ # Optional. List of related data store connections.
6815
+ # Corresponds to the JSON property `dataStoreConnections`
6816
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1DataStoreConnection>]
6817
+ attr_accessor :data_store_connections
6818
+
6819
+ # Whether Knowledge Connector is enabled or not.
6820
+ # Corresponds to the JSON property `enabled`
6821
+ # @return [Boolean]
6822
+ attr_accessor :enabled
6823
+ alias_method :enabled?, :enabled
6824
+
6825
+ # The target flow to transition to. Format: `projects//locations//agents//flows/`
6826
+ # .
6827
+ # Corresponds to the JSON property `targetFlow`
6828
+ # @return [String]
6829
+ attr_accessor :target_flow
6830
+
6831
+ # The target page to transition to. Format: `projects//locations//agents//flows//
6832
+ # pages/`.
6833
+ # Corresponds to the JSON property `targetPage`
6834
+ # @return [String]
6835
+ attr_accessor :target_page
6836
+
6837
+ # A fulfillment can do one or more of the following actions at the same time: *
6838
+ # Generate rich message responses. * Set parameter values. * Call the webhook.
6839
+ # Fulfillments can be called at various stages in the Page or Form lifecycle.
6840
+ # For example, when a DetectIntentRequest drives a session to enter a new page,
6841
+ # the page's entry fulfillment can add a static response to the QueryResult in
6842
+ # the returning DetectIntentResponse, call the webhook (for example, to load
6843
+ # user data from a database), or both.
6844
+ # Corresponds to the JSON property `triggerFulfillment`
6845
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1Fulfillment]
6846
+ attr_accessor :trigger_fulfillment
6847
+
6848
+ def initialize(**args)
6849
+ update!(**args)
6850
+ end
6851
+
6852
+ # Update properties of this object
6853
+ def update!(**args)
6854
+ @data_store_connections = args[:data_store_connections] if args.key?(:data_store_connections)
6855
+ @enabled = args[:enabled] if args.key?(:enabled)
6856
+ @target_flow = args[:target_flow] if args.key?(:target_flow)
6857
+ @target_page = args[:target_page] if args.key?(:target_page)
6858
+ @trigger_fulfillment = args[:trigger_fulfillment] if args.key?(:trigger_fulfillment)
6859
+ end
6860
+ end
6861
+
6205
6862
  # The response message for Agents.ListAgents.
6206
6863
  class GoogleCloudDialogflowCxV3beta1ListAgentsResponse
6207
6864
  include Google::Apis::Core::Hashable
@@ -6968,6 +7625,18 @@ module Google
6968
7625
  class GoogleCloudDialogflowCxV3beta1Page
6969
7626
  include Google::Apis::Core::Hashable
6970
7627
 
7628
+ # Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
7629
+ # Settings exposed at lower level overrides the settings exposed at higher level.
7630
+ # Overriding occurs at the sub-setting level. For example, the
7631
+ # playback_interruption_settings at fulfillment level only overrides the
7632
+ # playback_interruption_settings at the agent level, leaving other settings at
7633
+ # the agent level unchanged. DTMF settings does not override each other. DTMF
7634
+ # settings set at different levels define DTMF detections running in parallel.
7635
+ # Hierarchy: Agent->Flow->Page->Fulfillment/Parameter.
7636
+ # Corresponds to the JSON property `advancedSettings`
7637
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1AdvancedSettings]
7638
+ attr_accessor :advanced_settings
7639
+
6971
7640
  # Required. The human-readable name of the page, unique within the flow.
6972
7641
  # Corresponds to the JSON property `displayName`
6973
7642
  # @return [String]
@@ -6999,6 +7668,13 @@ module Google
6999
7668
  # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1Form]
7000
7669
  attr_accessor :form
7001
7670
 
7671
+ # The Knowledge Connector settings for this page or flow. This includes
7672
+ # information such as the attached Knowledge Bases, and the way to execute
7673
+ # fulfillment.
7674
+ # Corresponds to the JSON property `knowledgeConnectorSettings`
7675
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings]
7676
+ attr_accessor :knowledge_connector_settings
7677
+
7002
7678
  # The unique identifier of the page. Required for the Pages.UpdatePage method.
7003
7679
  # Pages.CreatePage populates the name automatically. Format: `projects//
7004
7680
  # locations//agents//flows//pages/`.
@@ -7006,14 +7682,17 @@ module Google
7006
7682
  # @return [String]
7007
7683
  attr_accessor :name
7008
7684
 
7009
- # Ordered list of `TransitionRouteGroups` associated with the page. Transition
7010
- # route groups must be unique within a page. * If multiple transition routes
7011
- # within a page scope refer to the same intent, then the precedence order is:
7012
- # page's transition route -> page's transition route group -> flow's transition
7013
- # routes. * If multiple transition route groups within a page contain the same
7014
- # intent, then the first group in the ordered list takes precedence. Format:`
7015
- # projects//locations//agents//flows//transitionRouteGroups/` or `projects//
7016
- # locations//agents//transitionRouteGroups/` for agent-level groups.
7685
+ # Ordered list of `TransitionRouteGroups` added to the page. Transition route
7686
+ # groups must be unique within a page. If the page links both flow-level
7687
+ # transition route groups and agent-level transition route groups, the flow-
7688
+ # level ones will have higher priority and will be put before the agent-level
7689
+ # ones. * If multiple transition routes within a page scope refer to the same
7690
+ # intent, then the precedence order is: page's transition route -> page's
7691
+ # transition route group -> flow's transition routes. * If multiple transition
7692
+ # route groups within a page contain the same intent, then the first group in
7693
+ # the ordered list takes precedence. Format:`projects//locations//agents//flows//
7694
+ # transitionRouteGroups/` or `projects//locations//agents//transitionRouteGroups/
7695
+ # ` for agent-level groups.
7017
7696
  # Corresponds to the JSON property `transitionRouteGroups`
7018
7697
  # @return [Array<String>]
7019
7698
  attr_accessor :transition_route_groups
@@ -7038,10 +7717,12 @@ module Google
7038
7717
 
7039
7718
  # Update properties of this object
7040
7719
  def update!(**args)
7720
+ @advanced_settings = args[:advanced_settings] if args.key?(:advanced_settings)
7041
7721
  @display_name = args[:display_name] if args.key?(:display_name)
7042
7722
  @entry_fulfillment = args[:entry_fulfillment] if args.key?(:entry_fulfillment)
7043
7723
  @event_handlers = args[:event_handlers] if args.key?(:event_handlers)
7044
7724
  @form = args[:form] if args.key?(:form)
7725
+ @knowledge_connector_settings = args[:knowledge_connector_settings] if args.key?(:knowledge_connector_settings)
7045
7726
  @name = args[:name] if args.key?(:name)
7046
7727
  @transition_route_groups = args[:transition_route_groups] if args.key?(:transition_route_groups)
7047
7728
  @transition_routes = args[:transition_routes] if args.key?(:transition_routes)
@@ -7348,6 +8029,18 @@ module Google
7348
8029
  class GoogleCloudDialogflowCxV3beta1QueryResult
7349
8030
  include Google::Apis::Core::Hashable
7350
8031
 
8032
+ # Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
8033
+ # Settings exposed at lower level overrides the settings exposed at higher level.
8034
+ # Overriding occurs at the sub-setting level. For example, the
8035
+ # playback_interruption_settings at fulfillment level only overrides the
8036
+ # playback_interruption_settings at the agent level, leaving other settings at
8037
+ # the agent level unchanged. DTMF settings does not override each other. DTMF
8038
+ # settings set at different levels define DTMF detections running in parallel.
8039
+ # Hierarchy: Agent->Flow->Page->Fulfillment/Parameter.
8040
+ # Corresponds to the JSON property `advancedSettings`
8041
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1AdvancedSettings]
8042
+ attr_accessor :advanced_settings
8043
+
7351
8044
  # A Dialogflow CX conversation (session) can be described and visualized as a
7352
8045
  # state machine. The states of a CX session are represented by pages. For each
7353
8046
  # flow, you define many pages, where your combined pages can handle a complete
@@ -7484,6 +8177,7 @@ module Google
7484
8177
 
7485
8178
  # Update properties of this object
7486
8179
  def update!(**args)
8180
+ @advanced_settings = args[:advanced_settings] if args.key?(:advanced_settings)
7487
8181
  @current_page = args[:current_page] if args.key?(:current_page)
7488
8182
  @diagnostic_info = args[:diagnostic_info] if args.key?(:diagnostic_info)
7489
8183
  @dtmf = args[:dtmf] if args.key?(:dtmf)
@@ -7588,6 +8282,13 @@ module Google
7588
8282
  # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction]
7589
8283
  attr_accessor :end_interaction
7590
8284
 
8285
+ # Represents info card response. If the response contains generative knowledge
8286
+ # prediction, Dialogflow will return a payload with Infobot Messenger compatible
8287
+ # info card. Otherwise, the info card response is skipped.
8288
+ # Corresponds to the JSON property `knowledgeInfoCard`
8289
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard]
8290
+ attr_accessor :knowledge_info_card
8291
+
7591
8292
  # Indicates that the conversation should be handed off to a live agent.
7592
8293
  # Dialogflow only uses this to determine which conversations were handed off to
7593
8294
  # a human agent for measurement purposes. What else to do with this signal is up
@@ -7643,6 +8344,7 @@ module Google
7643
8344
  @channel = args[:channel] if args.key?(:channel)
7644
8345
  @conversation_success = args[:conversation_success] if args.key?(:conversation_success)
7645
8346
  @end_interaction = args[:end_interaction] if args.key?(:end_interaction)
8347
+ @knowledge_info_card = args[:knowledge_info_card] if args.key?(:knowledge_info_card)
7646
8348
  @live_agent_handoff = args[:live_agent_handoff] if args.key?(:live_agent_handoff)
7647
8349
  @mixed_audio = args[:mixed_audio] if args.key?(:mixed_audio)
7648
8350
  @output_audio_text = args[:output_audio_text] if args.key?(:output_audio_text)
@@ -7694,6 +8396,21 @@ module Google
7694
8396
  end
7695
8397
  end
7696
8398
 
8399
+ # Represents info card response. If the response contains generative knowledge
8400
+ # prediction, Dialogflow will return a payload with Infobot Messenger compatible
8401
+ # info card. Otherwise, the info card response is skipped.
8402
+ class GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard
8403
+ include Google::Apis::Core::Hashable
8404
+
8405
+ def initialize(**args)
8406
+ update!(**args)
8407
+ end
8408
+
8409
+ # Update properties of this object
8410
+ def update!(**args)
8411
+ end
8412
+ end
8413
+
7697
8414
  # Indicates that the conversation should be handed off to a live agent.
7698
8415
  # Dialogflow only uses this to determine which conversations were handed off to
7699
8416
  # a human agent for measurement purposes. What else to do with this signal is up
@@ -8159,6 +8876,50 @@ module Google
8159
8876
  end
8160
8877
  end
8161
8878
 
8879
+ # Settings for Generative Safety.
8880
+ class GoogleCloudDialogflowCxV3beta1SafetySettings
8881
+ include Google::Apis::Core::Hashable
8882
+
8883
+ # Banned phrases for generated text.
8884
+ # Corresponds to the JSON property `bannedPhrases`
8885
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1SafetySettingsPhrase>]
8886
+ attr_accessor :banned_phrases
8887
+
8888
+ def initialize(**args)
8889
+ update!(**args)
8890
+ end
8891
+
8892
+ # Update properties of this object
8893
+ def update!(**args)
8894
+ @banned_phrases = args[:banned_phrases] if args.key?(:banned_phrases)
8895
+ end
8896
+ end
8897
+
8898
+ # Text input which can be used for prompt or banned phrases.
8899
+ class GoogleCloudDialogflowCxV3beta1SafetySettingsPhrase
8900
+ include Google::Apis::Core::Hashable
8901
+
8902
+ # Required. Language code of the phrase.
8903
+ # Corresponds to the JSON property `languageCode`
8904
+ # @return [String]
8905
+ attr_accessor :language_code
8906
+
8907
+ # Required. Text input which can be used for prompt or banned phrases.
8908
+ # Corresponds to the JSON property `text`
8909
+ # @return [String]
8910
+ attr_accessor :text
8911
+
8912
+ def initialize(**args)
8913
+ update!(**args)
8914
+ end
8915
+
8916
+ # Update properties of this object
8917
+ def update!(**args)
8918
+ @language_code = args[:language_code] if args.key?(:language_code)
8919
+ @text = args[:text] if args.key?(:text)
8920
+ end
8921
+ end
8922
+
8162
8923
  # Represents the settings related to security issues, such as data redaction and
8163
8924
  # data retention. It may take hours for updates on the settings to propagate to
8164
8925
  # all the related components and take effect.
@@ -8232,6 +8993,11 @@ module Google
8232
8993
  # @return [String]
8233
8994
  attr_accessor :redaction_strategy
8234
8995
 
8996
+ # Specifies the retention behavior defined by SecuritySettings.RetentionStrategy.
8997
+ # Corresponds to the JSON property `retentionStrategy`
8998
+ # @return [String]
8999
+ attr_accessor :retention_strategy
9000
+
8235
9001
  # Retains data in interaction logging for the specified number of days. This
8236
9002
  # does not apply to Cloud logging, which is owned by the user - not Dialogflow.
8237
9003
  # User must set a value lower than Dialogflow's default 365d TTL (30 days for
@@ -8257,6 +9023,7 @@ module Google
8257
9023
  @purge_data_types = args[:purge_data_types] if args.key?(:purge_data_types)
8258
9024
  @redaction_scope = args[:redaction_scope] if args.key?(:redaction_scope)
8259
9025
  @redaction_strategy = args[:redaction_strategy] if args.key?(:redaction_strategy)
9026
+ @retention_strategy = args[:retention_strategy] if args.key?(:retention_strategy)
8260
9027
  @retention_window_days = args[:retention_window_days] if args.key?(:retention_window_days)
8261
9028
  end
8262
9029
  end
@@ -8986,6 +9753,12 @@ module Google
8986
9753
  # @return [String]
8987
9754
  attr_accessor :condition
8988
9755
 
9756
+ # Optional. The description of the transition route. The maximum length is 500
9757
+ # characters.
9758
+ # Corresponds to the JSON property `description`
9759
+ # @return [String]
9760
+ attr_accessor :description
9761
+
8989
9762
  # The unique identifier of an Intent. Format: `projects//locations//agents//
8990
9763
  # intents/`. Indicates that the transition can only happen when the given intent
8991
9764
  # is matched. At least one of `intent` or `condition` must be specified. When
@@ -9030,6 +9803,7 @@ module Google
9030
9803
  # Update properties of this object
9031
9804
  def update!(**args)
9032
9805
  @condition = args[:condition] if args.key?(:condition)
9806
+ @description = args[:description] if args.key?(:description)
9033
9807
  @intent = args[:intent] if args.key?(:intent)
9034
9808
  @name = args[:name] if args.key?(:name)
9035
9809
  @target_flow = args[:target_flow] if args.key?(:target_flow)