google-apis-dialogflow_v2 0.67.0 → 0.69.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -22,6 +22,108 @@ module Google
22
22
  module Apis
23
23
  module DialogflowV2
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::DialogflowV2::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::DialogflowV2::GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings]
45
+ attr_accessor :dtmf_settings
46
+
47
+ # Define behaviors on logging.
48
+ # Corresponds to the JSON property `loggingSettings`
49
+ # @return [Google::Apis::DialogflowV2::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::DialogflowV2::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::DialogflowV2::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::DialogflowV2::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::DialogflowV2::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::DialogflowV2::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::DialogflowV2::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::DialogflowV2::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::DialogflowV2::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::DialogflowV2::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::DialogflowV2::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::DialogflowV2::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)
@@ -3114,6 +3410,108 @@ module Google
3114
3410
  end
3115
3411
  end
3116
3412
 
3413
+ # Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
3414
+ # Settings exposed at lower level overrides the settings exposed at higher level.
3415
+ # Overriding occurs at the sub-setting level. For example, the
3416
+ # playback_interruption_settings at fulfillment level only overrides the
3417
+ # playback_interruption_settings at the agent level, leaving other settings at
3418
+ # the agent level unchanged. DTMF settings does not override each other. DTMF
3419
+ # settings set at different levels define DTMF detections running in parallel.
3420
+ # Hierarchy: Agent->Flow->Page->Fulfillment/Parameter.
3421
+ class GoogleCloudDialogflowCxV3beta1AdvancedSettings
3422
+ include Google::Apis::Core::Hashable
3423
+
3424
+ # Google Cloud Storage location for a Dialogflow operation that writes or
3425
+ # exports objects (e.g. exported agent or transcripts) outside of Dialogflow.
3426
+ # Corresponds to the JSON property `audioExportGcsDestination`
3427
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1GcsDestination]
3428
+ attr_accessor :audio_export_gcs_destination
3429
+
3430
+ # Define behaviors for DTMF (dual tone multi frequency).
3431
+ # Corresponds to the JSON property `dtmfSettings`
3432
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings]
3433
+ attr_accessor :dtmf_settings
3434
+
3435
+ # Define behaviors on logging.
3436
+ # Corresponds to the JSON property `loggingSettings`
3437
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings]
3438
+ attr_accessor :logging_settings
3439
+
3440
+ def initialize(**args)
3441
+ update!(**args)
3442
+ end
3443
+
3444
+ # Update properties of this object
3445
+ def update!(**args)
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)
3448
+ @logging_settings = args[:logging_settings] if args.key?(:logging_settings)
3449
+ end
3450
+ end
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
+
3488
+ # Define behaviors on logging.
3489
+ class GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings
3490
+ include Google::Apis::Core::Hashable
3491
+
3492
+ # If true, DF Interaction logging is currently enabled.
3493
+ # Corresponds to the JSON property `enableInteractionLogging`
3494
+ # @return [Boolean]
3495
+ attr_accessor :enable_interaction_logging
3496
+ alias_method :enable_interaction_logging?, :enable_interaction_logging
3497
+
3498
+ # If true, StackDriver logging is currently enabled.
3499
+ # Corresponds to the JSON property `enableStackdriverLogging`
3500
+ # @return [Boolean]
3501
+ attr_accessor :enable_stackdriver_logging
3502
+ alias_method :enable_stackdriver_logging?, :enable_stackdriver_logging
3503
+
3504
+ def initialize(**args)
3505
+ update!(**args)
3506
+ end
3507
+
3508
+ # Update properties of this object
3509
+ def update!(**args)
3510
+ @enable_interaction_logging = args[:enable_interaction_logging] if args.key?(:enable_interaction_logging)
3511
+ @enable_stackdriver_logging = args[:enable_stackdriver_logging] if args.key?(:enable_stackdriver_logging)
3512
+ end
3513
+ end
3514
+
3117
3515
  # Represents the natural speech audio to be processed.
3118
3516
  class GoogleCloudDialogflowCxV3beta1AudioInput
3119
3517
  include Google::Apis::Core::Hashable
@@ -3429,6 +3827,34 @@ module Google
3429
3827
  end
3430
3828
  end
3431
3829
 
3830
+ # A data store connection. It represents a data store in Discovery Engine and
3831
+ # the type of the contents it contains.
3832
+ class GoogleCloudDialogflowCxV3beta1DataStoreConnection
3833
+ include Google::Apis::Core::Hashable
3834
+
3835
+ # The full name of the referenced data store. Formats: `projects/`project`/
3836
+ # locations/`location`/collections/`collection`/dataStores/`data_store`` `
3837
+ # projects/`project`/locations/`location`/dataStores/`data_store``
3838
+ # Corresponds to the JSON property `dataStore`
3839
+ # @return [String]
3840
+ attr_accessor :data_store
3841
+
3842
+ # The type of the connected data store.
3843
+ # Corresponds to the JSON property `dataStoreType`
3844
+ # @return [String]
3845
+ attr_accessor :data_store_type
3846
+
3847
+ def initialize(**args)
3848
+ update!(**args)
3849
+ end
3850
+
3851
+ # Update properties of this object
3852
+ def update!(**args)
3853
+ @data_store = args[:data_store] if args.key?(:data_store)
3854
+ @data_store_type = args[:data_store_type] if args.key?(:data_store_type)
3855
+ end
3856
+ end
3857
+
3432
3858
  # Metadata for DeleteDocument operation.
3433
3859
  class GoogleCloudDialogflowCxV3beta1DeleteDocumentOperationMetadata
3434
3860
  include Google::Apis::Core::Hashable
@@ -3871,6 +4297,18 @@ module Google
3871
4297
  class GoogleCloudDialogflowCxV3beta1FormParameter
3872
4298
  include Google::Apis::Core::Hashable
3873
4299
 
4300
+ # Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
4301
+ # Settings exposed at lower level overrides the settings exposed at higher level.
4302
+ # Overriding occurs at the sub-setting level. For example, the
4303
+ # playback_interruption_settings at fulfillment level only overrides the
4304
+ # playback_interruption_settings at the agent level, leaving other settings at
4305
+ # the agent level unchanged. DTMF settings does not override each other. DTMF
4306
+ # settings set at different levels define DTMF detections running in parallel.
4307
+ # Hierarchy: Agent->Flow->Page->Fulfillment/Parameter.
4308
+ # Corresponds to the JSON property `advancedSettings`
4309
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1AdvancedSettings]
4310
+ attr_accessor :advanced_settings
4311
+
3874
4312
  # The default value of an optional parameter. If the parameter is required, the
3875
4313
  # default value will be ignored.
3876
4314
  # Corresponds to the JSON property `defaultValue`
@@ -3924,6 +4362,7 @@ module Google
3924
4362
 
3925
4363
  # Update properties of this object
3926
4364
  def update!(**args)
4365
+ @advanced_settings = args[:advanced_settings] if args.key?(:advanced_settings)
3927
4366
  @default_value = args[:default_value] if args.key?(:default_value)
3928
4367
  @display_name = args[:display_name] if args.key?(:display_name)
3929
4368
  @entity_type = args[:entity_type] if args.key?(:entity_type)
@@ -3994,11 +4433,32 @@ module Google
3994
4433
  class GoogleCloudDialogflowCxV3beta1Fulfillment
3995
4434
  include Google::Apis::Core::Hashable
3996
4435
 
4436
+ # Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
4437
+ # Settings exposed at lower level overrides the settings exposed at higher level.
4438
+ # Overriding occurs at the sub-setting level. For example, the
4439
+ # playback_interruption_settings at fulfillment level only overrides the
4440
+ # playback_interruption_settings at the agent level, leaving other settings at
4441
+ # the agent level unchanged. DTMF settings does not override each other. DTMF
4442
+ # settings set at different levels define DTMF detections running in parallel.
4443
+ # Hierarchy: Agent->Flow->Page->Fulfillment/Parameter.
4444
+ # Corresponds to the JSON property `advancedSettings`
4445
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1AdvancedSettings]
4446
+ attr_accessor :advanced_settings
4447
+
3997
4448
  # Conditional cases for this fulfillment.
3998
4449
  # Corresponds to the JSON property `conditionalCases`
3999
4450
  # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases>]
4000
4451
  attr_accessor :conditional_cases
4001
4452
 
4453
+ # If the flag is true, the agent will utilize LLM to generate a text response.
4454
+ # If LLM generation fails, the defined responses in the fulfillment will be
4455
+ # respected. This flag is only useful for fulfillments associated with no-match
4456
+ # event handlers.
4457
+ # Corresponds to the JSON property `enableGenerativeFallback`
4458
+ # @return [Boolean]
4459
+ attr_accessor :enable_generative_fallback
4460
+ alias_method :enable_generative_fallback?, :enable_generative_fallback
4461
+
4002
4462
  # The list of rich message responses to present to the user.
4003
4463
  # Corresponds to the JSON property `messages`
4004
4464
  # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessage>]
@@ -4041,7 +4501,9 @@ module Google
4041
4501
 
4042
4502
  # Update properties of this object
4043
4503
  def update!(**args)
4504
+ @advanced_settings = args[:advanced_settings] if args.key?(:advanced_settings)
4044
4505
  @conditional_cases = args[:conditional_cases] if args.key?(:conditional_cases)
4506
+ @enable_generative_fallback = args[:enable_generative_fallback] if args.key?(:enable_generative_fallback)
4045
4507
  @messages = args[:messages] if args.key?(:messages)
4046
4508
  @return_partial_responses = args[:return_partial_responses] if args.key?(:return_partial_responses)
4047
4509
  @set_parameter_actions = args[:set_parameter_actions] if args.key?(:set_parameter_actions)
@@ -4161,6 +4623,28 @@ module Google
4161
4623
  end
4162
4624
  end
4163
4625
 
4626
+ # Google Cloud Storage location for a Dialogflow operation that writes or
4627
+ # exports objects (e.g. exported agent or transcripts) outside of Dialogflow.
4628
+ class GoogleCloudDialogflowCxV3beta1GcsDestination
4629
+ include Google::Apis::Core::Hashable
4630
+
4631
+ # Required. The Google Cloud Storage URI for the exported objects. A URI is of
4632
+ # the form: `gs://bucket/object-name-or-prefix` Whether a full object name, or
4633
+ # just a prefix, its usage depends on the Dialogflow operation.
4634
+ # Corresponds to the JSON property `uri`
4635
+ # @return [String]
4636
+ attr_accessor :uri
4637
+
4638
+ def initialize(**args)
4639
+ update!(**args)
4640
+ end
4641
+
4642
+ # Update properties of this object
4643
+ def update!(**args)
4644
+ @uri = args[:uri] if args.key?(:uri)
4645
+ end
4646
+ end
4647
+
4164
4648
  # Metadata in google::longrunning::Operation for Knowledge operations.
4165
4649
  class GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata
4166
4650
  include Google::Apis::Core::Hashable
@@ -4570,8 +5054,62 @@ module Google
4570
5054
 
4571
5055
  # Update properties of this object
4572
5056
  def update!(**args)
4573
- @parameter_id = args[:parameter_id] if args.key?(:parameter_id)
4574
- @text = args[:text] if args.key?(:text)
5057
+ @parameter_id = args[:parameter_id] if args.key?(:parameter_id)
5058
+ @text = args[:text] if args.key?(:text)
5059
+ end
5060
+ end
5061
+
5062
+ # The Knowledge Connector settings for this page or flow. This includes
5063
+ # information such as the attached Knowledge Bases, and the way to execute
5064
+ # fulfillment.
5065
+ class GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings
5066
+ include Google::Apis::Core::Hashable
5067
+
5068
+ # Optional. List of related data store connections.
5069
+ # Corresponds to the JSON property `dataStoreConnections`
5070
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1DataStoreConnection>]
5071
+ attr_accessor :data_store_connections
5072
+
5073
+ # Whether Knowledge Connector is enabled or not.
5074
+ # Corresponds to the JSON property `enabled`
5075
+ # @return [Boolean]
5076
+ attr_accessor :enabled
5077
+ alias_method :enabled?, :enabled
5078
+
5079
+ # The target flow to transition to. Format: `projects//locations//agents//flows/`
5080
+ # .
5081
+ # Corresponds to the JSON property `targetFlow`
5082
+ # @return [String]
5083
+ attr_accessor :target_flow
5084
+
5085
+ # The target page to transition to. Format: `projects//locations//agents//flows//
5086
+ # pages/`.
5087
+ # Corresponds to the JSON property `targetPage`
5088
+ # @return [String]
5089
+ attr_accessor :target_page
5090
+
5091
+ # A fulfillment can do one or more of the following actions at the same time: *
5092
+ # Generate rich message responses. * Set parameter values. * Call the webhook.
5093
+ # Fulfillments can be called at various stages in the Page or Form lifecycle.
5094
+ # For example, when a DetectIntentRequest drives a session to enter a new page,
5095
+ # the page's entry fulfillment can add a static response to the QueryResult in
5096
+ # the returning DetectIntentResponse, call the webhook (for example, to load
5097
+ # user data from a database), or both.
5098
+ # Corresponds to the JSON property `triggerFulfillment`
5099
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1Fulfillment]
5100
+ attr_accessor :trigger_fulfillment
5101
+
5102
+ def initialize(**args)
5103
+ update!(**args)
5104
+ end
5105
+
5106
+ # Update properties of this object
5107
+ def update!(**args)
5108
+ @data_store_connections = args[:data_store_connections] if args.key?(:data_store_connections)
5109
+ @enabled = args[:enabled] if args.key?(:enabled)
5110
+ @target_flow = args[:target_flow] if args.key?(:target_flow)
5111
+ @target_page = args[:target_page] if args.key?(:target_page)
5112
+ @trigger_fulfillment = args[:trigger_fulfillment] if args.key?(:trigger_fulfillment)
4575
5113
  end
4576
5114
  end
4577
5115
 
@@ -4590,6 +5128,18 @@ module Google
4590
5128
  class GoogleCloudDialogflowCxV3beta1Page
4591
5129
  include Google::Apis::Core::Hashable
4592
5130
 
5131
+ # Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
5132
+ # Settings exposed at lower level overrides the settings exposed at higher level.
5133
+ # Overriding occurs at the sub-setting level. For example, the
5134
+ # playback_interruption_settings at fulfillment level only overrides the
5135
+ # playback_interruption_settings at the agent level, leaving other settings at
5136
+ # the agent level unchanged. DTMF settings does not override each other. DTMF
5137
+ # settings set at different levels define DTMF detections running in parallel.
5138
+ # Hierarchy: Agent->Flow->Page->Fulfillment/Parameter.
5139
+ # Corresponds to the JSON property `advancedSettings`
5140
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1AdvancedSettings]
5141
+ attr_accessor :advanced_settings
5142
+
4593
5143
  # Required. The human-readable name of the page, unique within the flow.
4594
5144
  # Corresponds to the JSON property `displayName`
4595
5145
  # @return [String]
@@ -4621,6 +5171,13 @@ module Google
4621
5171
  # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1Form]
4622
5172
  attr_accessor :form
4623
5173
 
5174
+ # The Knowledge Connector settings for this page or flow. This includes
5175
+ # information such as the attached Knowledge Bases, and the way to execute
5176
+ # fulfillment.
5177
+ # Corresponds to the JSON property `knowledgeConnectorSettings`
5178
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings]
5179
+ attr_accessor :knowledge_connector_settings
5180
+
4624
5181
  # The unique identifier of the page. Required for the Pages.UpdatePage method.
4625
5182
  # Pages.CreatePage populates the name automatically. Format: `projects//
4626
5183
  # locations//agents//flows//pages/`.
@@ -4628,14 +5185,17 @@ module Google
4628
5185
  # @return [String]
4629
5186
  attr_accessor :name
4630
5187
 
4631
- # Ordered list of `TransitionRouteGroups` associated with the page. Transition
4632
- # route groups must be unique within a page. * If multiple transition routes
4633
- # within a page scope refer to the same intent, then the precedence order is:
4634
- # page's transition route -> page's transition route group -> flow's transition
4635
- # routes. * If multiple transition route groups within a page contain the same
4636
- # intent, then the first group in the ordered list takes precedence. Format:`
4637
- # projects//locations//agents//flows//transitionRouteGroups/` or `projects//
4638
- # locations//agents//transitionRouteGroups/` for agent-level groups.
5188
+ # Ordered list of `TransitionRouteGroups` added to the page. Transition route
5189
+ # groups must be unique within a page. If the page links both flow-level
5190
+ # transition route groups and agent-level transition route groups, the flow-
5191
+ # level ones will have higher priority and will be put before the agent-level
5192
+ # ones. * If multiple transition routes within a page scope refer to the same
5193
+ # intent, then the precedence order is: page's transition route -> page's
5194
+ # transition route group -> flow's transition routes. * If multiple transition
5195
+ # route groups within a page contain the same intent, then the first group in
5196
+ # the ordered list takes precedence. Format:`projects//locations//agents//flows//
5197
+ # transitionRouteGroups/` or `projects//locations//agents//transitionRouteGroups/
5198
+ # ` for agent-level groups.
4639
5199
  # Corresponds to the JSON property `transitionRouteGroups`
4640
5200
  # @return [Array<String>]
4641
5201
  attr_accessor :transition_route_groups
@@ -4660,10 +5220,12 @@ module Google
4660
5220
 
4661
5221
  # Update properties of this object
4662
5222
  def update!(**args)
5223
+ @advanced_settings = args[:advanced_settings] if args.key?(:advanced_settings)
4663
5224
  @display_name = args[:display_name] if args.key?(:display_name)
4664
5225
  @entry_fulfillment = args[:entry_fulfillment] if args.key?(:entry_fulfillment)
4665
5226
  @event_handlers = args[:event_handlers] if args.key?(:event_handlers)
4666
5227
  @form = args[:form] if args.key?(:form)
5228
+ @knowledge_connector_settings = args[:knowledge_connector_settings] if args.key?(:knowledge_connector_settings)
4667
5229
  @name = args[:name] if args.key?(:name)
4668
5230
  @transition_route_groups = args[:transition_route_groups] if args.key?(:transition_route_groups)
4669
5231
  @transition_routes = args[:transition_routes] if args.key?(:transition_routes)
@@ -4894,6 +5456,13 @@ module Google
4894
5456
  # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction]
4895
5457
  attr_accessor :end_interaction
4896
5458
 
5459
+ # Represents info card response. If the response contains generative knowledge
5460
+ # prediction, Dialogflow will return a payload with Infobot Messenger compatible
5461
+ # info card. Otherwise, the info card response is skipped.
5462
+ # Corresponds to the JSON property `knowledgeInfoCard`
5463
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard]
5464
+ attr_accessor :knowledge_info_card
5465
+
4897
5466
  # Indicates that the conversation should be handed off to a live agent.
4898
5467
  # Dialogflow only uses this to determine which conversations were handed off to
4899
5468
  # a human agent for measurement purposes. What else to do with this signal is up
@@ -4949,6 +5518,7 @@ module Google
4949
5518
  @channel = args[:channel] if args.key?(:channel)
4950
5519
  @conversation_success = args[:conversation_success] if args.key?(:conversation_success)
4951
5520
  @end_interaction = args[:end_interaction] if args.key?(:end_interaction)
5521
+ @knowledge_info_card = args[:knowledge_info_card] if args.key?(:knowledge_info_card)
4952
5522
  @live_agent_handoff = args[:live_agent_handoff] if args.key?(:live_agent_handoff)
4953
5523
  @mixed_audio = args[:mixed_audio] if args.key?(:mixed_audio)
4954
5524
  @output_audio_text = args[:output_audio_text] if args.key?(:output_audio_text)
@@ -5000,6 +5570,21 @@ module Google
5000
5570
  end
5001
5571
  end
5002
5572
 
5573
+ # Represents info card response. If the response contains generative knowledge
5574
+ # prediction, Dialogflow will return a payload with Infobot Messenger compatible
5575
+ # info card. Otherwise, the info card response is skipped.
5576
+ class GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard
5577
+ include Google::Apis::Core::Hashable
5578
+
5579
+ def initialize(**args)
5580
+ update!(**args)
5581
+ end
5582
+
5583
+ # Update properties of this object
5584
+ def update!(**args)
5585
+ end
5586
+ end
5587
+
5003
5588
  # Indicates that the conversation should be handed off to a live agent.
5004
5589
  # Dialogflow only uses this to determine which conversations were handed off to
5005
5590
  # a human agent for measurement purposes. What else to do with this signal is up
@@ -5583,6 +6168,12 @@ module Google
5583
6168
  # @return [String]
5584
6169
  attr_accessor :condition
5585
6170
 
6171
+ # Optional. The description of the transition route. The maximum length is 500
6172
+ # characters.
6173
+ # Corresponds to the JSON property `description`
6174
+ # @return [String]
6175
+ attr_accessor :description
6176
+
5586
6177
  # The unique identifier of an Intent. Format: `projects//locations//agents//
5587
6178
  # intents/`. Indicates that the transition can only happen when the given intent
5588
6179
  # is matched. At least one of `intent` or `condition` must be specified. When
@@ -5627,6 +6218,7 @@ module Google
5627
6218
  # Update properties of this object
5628
6219
  def update!(**args)
5629
6220
  @condition = args[:condition] if args.key?(:condition)
6221
+ @description = args[:description] if args.key?(:description)
5630
6222
  @intent = args[:intent] if args.key?(:intent)
5631
6223
  @name = args[:name] if args.key?(:name)
5632
6224
  @target_flow = args[:target_flow] if args.key?(:target_flow)
@@ -6337,6 +6929,11 @@ module Google
6337
6929
  # @return [String]
6338
6930
  attr_accessor :document_efficiency
6339
6931
 
6932
+ # Feedback for knowledge search.
6933
+ # Corresponds to the JSON property `knowledgeSearchFeedback`
6934
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV2AgentAssistantFeedbackKnowledgeSearchFeedback]
6935
+ attr_accessor :knowledge_search_feedback
6936
+
6340
6937
  # Feedback for conversation summarization.
6341
6938
  # Corresponds to the JSON property `summarizationFeedback`
6342
6939
  # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV2AgentAssistantFeedbackSummarizationFeedback]
@@ -6351,10 +6948,40 @@ module Google
6351
6948
  @answer_relevance = args[:answer_relevance] if args.key?(:answer_relevance)
6352
6949
  @document_correctness = args[:document_correctness] if args.key?(:document_correctness)
6353
6950
  @document_efficiency = args[:document_efficiency] if args.key?(:document_efficiency)
6951
+ @knowledge_search_feedback = args[:knowledge_search_feedback] if args.key?(:knowledge_search_feedback)
6354
6952
  @summarization_feedback = args[:summarization_feedback] if args.key?(:summarization_feedback)
6355
6953
  end
6356
6954
  end
6357
6955
 
6956
+ # Feedback for knowledge search.
6957
+ class GoogleCloudDialogflowV2AgentAssistantFeedbackKnowledgeSearchFeedback
6958
+ include Google::Apis::Core::Hashable
6959
+
6960
+ # Whether the answer was copied by the human agent or not. If the value is set
6961
+ # to be true, AnswerFeedback.clicked will be updated to be true.
6962
+ # Corresponds to the JSON property `answerCopied`
6963
+ # @return [Boolean]
6964
+ attr_accessor :answer_copied
6965
+ alias_method :answer_copied?, :answer_copied
6966
+
6967
+ # The URIs clicked by the human agent. The value is appended for each
6968
+ # UpdateAnswerRecordRequest. If the value is not empty, AnswerFeedback.clicked
6969
+ # will be updated to be true.
6970
+ # Corresponds to the JSON property `clickedUris`
6971
+ # @return [Array<String>]
6972
+ attr_accessor :clicked_uris
6973
+
6974
+ def initialize(**args)
6975
+ update!(**args)
6976
+ end
6977
+
6978
+ # Update properties of this object
6979
+ def update!(**args)
6980
+ @answer_copied = args[:answer_copied] if args.key?(:answer_copied)
6981
+ @clicked_uris = args[:clicked_uris] if args.key?(:clicked_uris)
6982
+ end
6983
+ end
6984
+
6358
6985
  # Feedback for conversation summarization.
6359
6986
  class GoogleCloudDialogflowV2AgentAssistantFeedbackSummarizationFeedback
6360
6987
  include Google::Apis::Core::Hashable
@@ -6395,6 +7022,11 @@ module Google
6395
7022
  # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV2ArticleAnswer]
6396
7023
  attr_accessor :article_suggestion_answer
6397
7024
 
7025
+ # Represents a Dialogflow assist answer.
7026
+ # Corresponds to the JSON property `dialogflowAssistAnswer`
7027
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV2DialogflowAssistAnswer]
7028
+ attr_accessor :dialogflow_assist_answer
7029
+
6398
7030
  # Represents answer from "frequently asked questions".
6399
7031
  # Corresponds to the JSON property `faqAnswer`
6400
7032
  # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV2FaqAnswer]
@@ -6407,6 +7039,7 @@ module Google
6407
7039
  # Update properties of this object
6408
7040
  def update!(**args)
6409
7041
  @article_suggestion_answer = args[:article_suggestion_answer] if args.key?(:article_suggestion_answer)
7042
+ @dialogflow_assist_answer = args[:dialogflow_assist_answer] if args.key?(:dialogflow_assist_answer)
6410
7043
  @faq_answer = args[:faq_answer] if args.key?(:faq_answer)
6411
7044
  end
6412
7045
  end
@@ -6455,6 +7088,11 @@ module Google
6455
7088
  # @return [String]
6456
7089
  attr_accessor :request_id
6457
7090
 
7091
+ # Represents the selection of a suggestion.
7092
+ # Corresponds to the JSON property `suggestionInput`
7093
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV2SuggestionInput]
7094
+ attr_accessor :suggestion_input
7095
+
6458
7096
  # Auxiliary proto messages. Represents the natural language text to be processed.
6459
7097
  # Corresponds to the JSON property `textInput`
6460
7098
  # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV2TextInput]
@@ -6472,6 +7110,7 @@ module Google
6472
7110
  @query_params = args[:query_params] if args.key?(:query_params)
6473
7111
  @reply_audio_config = args[:reply_audio_config] if args.key?(:reply_audio_config)
6474
7112
  @request_id = args[:request_id] if args.key?(:request_id)
7113
+ @suggestion_input = args[:suggestion_input] if args.key?(:suggestion_input)
6475
7114
  @text_input = args[:text_input] if args.key?(:text_input)
6476
7115
  end
6477
7116
  end
@@ -8010,6 +8649,38 @@ module Google
8010
8649
  end
8011
8650
  end
8012
8651
 
8652
+ # Represents a Dialogflow assist answer.
8653
+ class GoogleCloudDialogflowV2DialogflowAssistAnswer
8654
+ include Google::Apis::Core::Hashable
8655
+
8656
+ # The name of answer record, in the format of "projects//locations//
8657
+ # answerRecords/"
8658
+ # Corresponds to the JSON property `answerRecord`
8659
+ # @return [String]
8660
+ attr_accessor :answer_record
8661
+
8662
+ # Represents an intent suggestion.
8663
+ # Corresponds to the JSON property `intentSuggestion`
8664
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV2IntentSuggestion]
8665
+ attr_accessor :intent_suggestion
8666
+
8667
+ # Represents the result of conversational query or event processing.
8668
+ # Corresponds to the JSON property `queryResult`
8669
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV2QueryResult]
8670
+ attr_accessor :query_result
8671
+
8672
+ def initialize(**args)
8673
+ update!(**args)
8674
+ end
8675
+
8676
+ # Update properties of this object
8677
+ def update!(**args)
8678
+ @answer_record = args[:answer_record] if args.key?(:answer_record)
8679
+ @intent_suggestion = args[:intent_suggestion] if args.key?(:intent_suggestion)
8680
+ @query_result = args[:query_result] if args.key?(:query_result)
8681
+ end
8682
+ end
8683
+
8013
8684
  # A knowledge document to be used by a KnowledgeBase. For more information, see
8014
8685
  # the [knowledge base guide](https://cloud.google.com/dialogflow/docs/how/
8015
8686
  # knowledge-bases). Note: The `projects.agent.knowledgeBases.documents` resource
@@ -8984,6 +9655,12 @@ module Google
8984
9655
  class GoogleCloudDialogflowV2GenerateStatelessSummaryResponseSummary
8985
9656
  include Google::Apis::Core::Hashable
8986
9657
 
9658
+ # The baseline model version used to generate this summary. It is empty if a
9659
+ # baseline model was not used to generate this summary.
9660
+ # Corresponds to the JSON property `baselineModelVersion`
9661
+ # @return [String]
9662
+ attr_accessor :baseline_model_version
9663
+
8987
9664
  # The summary content that is concatenated into one string.
8988
9665
  # Corresponds to the JSON property `text`
8989
9666
  # @return [String]
@@ -9002,6 +9679,7 @@ module Google
9002
9679
 
9003
9680
  # Update properties of this object
9004
9681
  def update!(**args)
9682
+ @baseline_model_version = args[:baseline_model_version] if args.key?(:baseline_model_version)
9005
9683
  @text = args[:text] if args.key?(:text)
9006
9684
  @text_sections = args[:text_sections] if args.key?(:text_sections)
9007
9685
  end
@@ -9183,8 +9861,17 @@ module Google
9183
9861
  # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV2HumanAgentAssistantConfigConversationProcessConfig]
9184
9862
  attr_accessor :conversation_process_config
9185
9863
 
9864
+ # Optional. Disable the logging of search queries sent by human agents. It can
9865
+ # prevent those queries from being stored at answer records. Supported features:
9866
+ # KNOWLEDGE_SEARCH.
9867
+ # Corresponds to the JSON property `disableAgentQueryLogging`
9868
+ # @return [Boolean]
9869
+ attr_accessor :disable_agent_query_logging
9870
+ alias_method :disable_agent_query_logging?, :disable_agent_query_logging
9871
+
9186
9872
  # Automatically iterates all participants and tries to compile suggestions.
9187
- # Supported features: ARTICLE_SUGGESTION, FAQ, DIALOGFLOW_ASSIST.
9873
+ # Supported features: ARTICLE_SUGGESTION, FAQ, DIALOGFLOW_ASSIST,
9874
+ # KNOWLEDGE_ASSIST.
9188
9875
  # Corresponds to the JSON property `enableEventBasedSuggestion`
9189
9876
  # @return [Boolean]
9190
9877
  attr_accessor :enable_event_based_suggestion
@@ -9215,6 +9902,7 @@ module Google
9215
9902
  def update!(**args)
9216
9903
  @conversation_model_config = args[:conversation_model_config] if args.key?(:conversation_model_config)
9217
9904
  @conversation_process_config = args[:conversation_process_config] if args.key?(:conversation_process_config)
9905
+ @disable_agent_query_logging = args[:disable_agent_query_logging] if args.key?(:disable_agent_query_logging)
9218
9906
  @enable_event_based_suggestion = args[:enable_event_based_suggestion] if args.key?(:enable_event_based_suggestion)
9219
9907
  @query_config = args[:query_config] if args.key?(:query_config)
9220
9908
  @suggestion_feature = args[:suggestion_feature] if args.key?(:suggestion_feature)
@@ -9330,6 +10018,32 @@ module Google
9330
10018
  # @return [String]
9331
10019
  attr_accessor :agent
9332
10020
 
10021
+ # The configuration used for human agent side Dialogflow assist suggestion.
10022
+ # Corresponds to the JSON property `humanAgentSideConfig`
10023
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV2HumanAgentAssistantConfigSuggestionQueryConfigDialogflowQuerySourceHumanAgentSideConfig]
10024
+ attr_accessor :human_agent_side_config
10025
+
10026
+ def initialize(**args)
10027
+ update!(**args)
10028
+ end
10029
+
10030
+ # Update properties of this object
10031
+ def update!(**args)
10032
+ @agent = args[:agent] if args.key?(:agent)
10033
+ @human_agent_side_config = args[:human_agent_side_config] if args.key?(:human_agent_side_config)
10034
+ end
10035
+ end
10036
+
10037
+ # The configuration used for human agent side Dialogflow assist suggestion.
10038
+ class GoogleCloudDialogflowV2HumanAgentAssistantConfigSuggestionQueryConfigDialogflowQuerySourceHumanAgentSideConfig
10039
+ include Google::Apis::Core::Hashable
10040
+
10041
+ # Optional. The name of a dialogflow virtual agent used for intent detection and
10042
+ # suggestion triggered by human agent. Format: `projects//locations//agent`.
10043
+ # Corresponds to the JSON property `agent`
10044
+ # @return [String]
10045
+ attr_accessor :agent
10046
+
9333
10047
  def initialize(**args)
9334
10048
  update!(**args)
9335
10049
  end
@@ -11061,6 +11775,39 @@ module Google
11061
11775
  end
11062
11776
  end
11063
11777
 
11778
+ # Represents an intent suggestion.
11779
+ class GoogleCloudDialogflowV2IntentSuggestion
11780
+ include Google::Apis::Core::Hashable
11781
+
11782
+ # Human readable description for better understanding an intent like its scope,
11783
+ # content, result etc. Maximum character limit: 140 characters.
11784
+ # Corresponds to the JSON property `description`
11785
+ # @return [String]
11786
+ attr_accessor :description
11787
+
11788
+ # The display name of the intent.
11789
+ # Corresponds to the JSON property `displayName`
11790
+ # @return [String]
11791
+ attr_accessor :display_name
11792
+
11793
+ # The unique identifier of this intent. Format: `projects//locations//agent/
11794
+ # intents/`.
11795
+ # Corresponds to the JSON property `intentV2`
11796
+ # @return [String]
11797
+ attr_accessor :intent_v2
11798
+
11799
+ def initialize(**args)
11800
+ update!(**args)
11801
+ end
11802
+
11803
+ # Update properties of this object
11804
+ def update!(**args)
11805
+ @description = args[:description] if args.key?(:description)
11806
+ @display_name = args[:display_name] if args.key?(:display_name)
11807
+ @intent_v2 = args[:intent_v2] if args.key?(:intent_v2)
11808
+ end
11809
+ end
11810
+
11064
11811
  # Represents an example that the agent is trained on.
11065
11812
  class GoogleCloudDialogflowV2IntentTrainingPhrase
11066
11813
  include Google::Apis::Core::Hashable
@@ -12366,6 +13113,153 @@ module Google
12366
13113
  end
12367
13114
  end
12368
13115
 
13116
+ # Represents a SearchKnowledge answer.
13117
+ class GoogleCloudDialogflowV2SearchKnowledgeAnswer
13118
+ include Google::Apis::Core::Hashable
13119
+
13120
+ # The piece of text from the knowledge base documents that answers the search
13121
+ # query
13122
+ # Corresponds to the JSON property `answer`
13123
+ # @return [String]
13124
+ attr_accessor :answer
13125
+
13126
+ # The name of the answer record. Format: `projects//locations//answer Records/`
13127
+ # Corresponds to the JSON property `answerRecord`
13128
+ # @return [String]
13129
+ attr_accessor :answer_record
13130
+
13131
+ # All sources used to generate the answer.
13132
+ # Corresponds to the JSON property `answerSources`
13133
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowV2SearchKnowledgeAnswerAnswerSource>]
13134
+ attr_accessor :answer_sources
13135
+
13136
+ # The type of the answer.
13137
+ # Corresponds to the JSON property `answerType`
13138
+ # @return [String]
13139
+ attr_accessor :answer_type
13140
+
13141
+ def initialize(**args)
13142
+ update!(**args)
13143
+ end
13144
+
13145
+ # Update properties of this object
13146
+ def update!(**args)
13147
+ @answer = args[:answer] if args.key?(:answer)
13148
+ @answer_record = args[:answer_record] if args.key?(:answer_record)
13149
+ @answer_sources = args[:answer_sources] if args.key?(:answer_sources)
13150
+ @answer_type = args[:answer_type] if args.key?(:answer_type)
13151
+ end
13152
+ end
13153
+
13154
+ # The sources of the answers.
13155
+ class GoogleCloudDialogflowV2SearchKnowledgeAnswerAnswerSource
13156
+ include Google::Apis::Core::Hashable
13157
+
13158
+ # The relevant snippet of the article.
13159
+ # Corresponds to the JSON property `snippet`
13160
+ # @return [String]
13161
+ attr_accessor :snippet
13162
+
13163
+ # The title of the article.
13164
+ # Corresponds to the JSON property `title`
13165
+ # @return [String]
13166
+ attr_accessor :title
13167
+
13168
+ # The URI of the article.
13169
+ # Corresponds to the JSON property `uri`
13170
+ # @return [String]
13171
+ attr_accessor :uri
13172
+
13173
+ def initialize(**args)
13174
+ update!(**args)
13175
+ end
13176
+
13177
+ # Update properties of this object
13178
+ def update!(**args)
13179
+ @snippet = args[:snippet] if args.key?(:snippet)
13180
+ @title = args[:title] if args.key?(:title)
13181
+ @uri = args[:uri] if args.key?(:uri)
13182
+ end
13183
+ end
13184
+
13185
+ # The request message for Conversations.SearchKnowledge.
13186
+ class GoogleCloudDialogflowV2SearchKnowledgeRequest
13187
+ include Google::Apis::Core::Hashable
13188
+
13189
+ # The conversation (between human agent and end user) where the search request
13190
+ # is triggered. Format: `projects//locations//conversations/`.
13191
+ # Corresponds to the JSON property `conversation`
13192
+ # @return [String]
13193
+ attr_accessor :conversation
13194
+
13195
+ # Required. The conversation profile used to configure the search. Format: `
13196
+ # projects//locations//conversationProfiles/`.
13197
+ # Corresponds to the JSON property `conversationProfile`
13198
+ # @return [String]
13199
+ attr_accessor :conversation_profile
13200
+
13201
+ # The name of the latest conversation message when the request is triggered.
13202
+ # Format: `projects//locations//conversations//messages/`.
13203
+ # Corresponds to the JSON property `latestMessage`
13204
+ # @return [String]
13205
+ attr_accessor :latest_message
13206
+
13207
+ # The parent resource contains the conversation profile Format: 'projects/' or `
13208
+ # projects//locations/`.
13209
+ # Corresponds to the JSON property `parent`
13210
+ # @return [String]
13211
+ attr_accessor :parent
13212
+
13213
+ # Auxiliary proto messages. Represents the natural language text to be processed.
13214
+ # Corresponds to the JSON property `query`
13215
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV2TextInput]
13216
+ attr_accessor :query
13217
+
13218
+ # The ID of the search session. The session_id can be combined with Dialogflow
13219
+ # V3 Agent ID retrieved from conversation profile or on its own to identify a
13220
+ # search session. The search history of the same session will impact the search
13221
+ # result. It's up to the API caller to choose an appropriate `Session ID`. It
13222
+ # can be a random number or some type of session identifiers (preferably hashed).
13223
+ # The length must not exceed 36 characters.
13224
+ # Corresponds to the JSON property `sessionId`
13225
+ # @return [String]
13226
+ attr_accessor :session_id
13227
+
13228
+ def initialize(**args)
13229
+ update!(**args)
13230
+ end
13231
+
13232
+ # Update properties of this object
13233
+ def update!(**args)
13234
+ @conversation = args[:conversation] if args.key?(:conversation)
13235
+ @conversation_profile = args[:conversation_profile] if args.key?(:conversation_profile)
13236
+ @latest_message = args[:latest_message] if args.key?(:latest_message)
13237
+ @parent = args[:parent] if args.key?(:parent)
13238
+ @query = args[:query] if args.key?(:query)
13239
+ @session_id = args[:session_id] if args.key?(:session_id)
13240
+ end
13241
+ end
13242
+
13243
+ # The response message for Conversations.SearchKnowledge.
13244
+ class GoogleCloudDialogflowV2SearchKnowledgeResponse
13245
+ include Google::Apis::Core::Hashable
13246
+
13247
+ # Most relevant snippets extracted from articles in the given knowledge base,
13248
+ # ordered by confidence.
13249
+ # Corresponds to the JSON property `answers`
13250
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowV2SearchKnowledgeAnswer>]
13251
+ attr_accessor :answers
13252
+
13253
+ def initialize(**args)
13254
+ update!(**args)
13255
+ end
13256
+
13257
+ # Update properties of this object
13258
+ def update!(**args)
13259
+ @answers = args[:answers] if args.key?(:answers)
13260
+ end
13261
+ end
13262
+
12369
13263
  # The sentiment, such as positive/negative feeling or association, for a unit of
12370
13264
  # analysis, such as the query text. See: https://cloud.google.com/natural-
12371
13265
  # language/docs/basics#interpreting_sentiment_analysis_values for how to
@@ -12725,6 +13619,13 @@ module Google
12725
13619
  # @return [String]
12726
13620
  attr_accessor :speech_model_variant
12727
13621
 
13622
+ # Use timeout based endpointing, interpreting endpointer sensitivy as seconds of
13623
+ # timeout value.
13624
+ # Corresponds to the JSON property `useTimeoutBasedEndpointing`
13625
+ # @return [Boolean]
13626
+ attr_accessor :use_timeout_based_endpointing
13627
+ alias_method :use_timeout_based_endpointing?, :use_timeout_based_endpointing
13628
+
12728
13629
  def initialize(**args)
12729
13630
  update!(**args)
12730
13631
  end
@@ -12733,6 +13634,7 @@ module Google
12733
13634
  def update!(**args)
12734
13635
  @model = args[:model] if args.key?(:model)
12735
13636
  @speech_model_variant = args[:speech_model_variant] if args.key?(:speech_model_variant)
13637
+ @use_timeout_based_endpointing = args[:use_timeout_based_endpointing] if args.key?(:use_timeout_based_endpointing)
12736
13638
  end
12737
13639
  end
12738
13640
 
@@ -12882,6 +13784,12 @@ module Google
12882
13784
  # @return [String]
12883
13785
  attr_accessor :answer_record
12884
13786
 
13787
+ # The baseline model version used to generate this summary. It is empty if a
13788
+ # baseline model was not used to generate this summary.
13789
+ # Corresponds to the JSON property `baselineModelVersion`
13790
+ # @return [String]
13791
+ attr_accessor :baseline_model_version
13792
+
12885
13793
  # The summary content that is concatenated into one string.
12886
13794
  # Corresponds to the JSON property `text`
12887
13795
  # @return [String]
@@ -12901,6 +13809,7 @@ module Google
12901
13809
  # Update properties of this object
12902
13810
  def update!(**args)
12903
13811
  @answer_record = args[:answer_record] if args.key?(:answer_record)
13812
+ @baseline_model_version = args[:baseline_model_version] if args.key?(:baseline_model_version)
12904
13813
  @text = args[:text] if args.key?(:text)
12905
13814
  @text_sections = args[:text_sections] if args.key?(:text_sections)
12906
13815
  end
@@ -13065,6 +13974,27 @@ module Google
13065
13974
  end
13066
13975
  end
13067
13976
 
13977
+ # Represents the selection of a suggestion.
13978
+ class GoogleCloudDialogflowV2SuggestionInput
13979
+ include Google::Apis::Core::Hashable
13980
+
13981
+ # Required. The ID of a suggestion selected by the human agent. The suggestion(s)
13982
+ # were generated in a previous call to request Dialogflow assist. The format is:
13983
+ # `projects//locations//answerRecords/` where is an alphanumeric string.
13984
+ # Corresponds to the JSON property `answerRecord`
13985
+ # @return [String]
13986
+ attr_accessor :answer_record
13987
+
13988
+ def initialize(**args)
13989
+ update!(**args)
13990
+ end
13991
+
13992
+ # Update properties of this object
13993
+ def update!(**args)
13994
+ @answer_record = args[:answer_record] if args.key?(:answer_record)
13995
+ end
13996
+ end
13997
+
13068
13998
  # One response of different type of suggestion response which is used in the
13069
13999
  # response of Participants.AnalyzeContent and Participants.AnalyzeContent, as
13070
14000
  # well as HumanAgentAssistantEvent.