google-apis-dialogflow_v3 0.105.0 → 0.106.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,49 @@ module Google
22
22
  module Apis
23
23
  module DialogflowV3
24
24
 
25
+ # Action performed by end user or Dialogflow agent in the conversation.
26
+ class GoogleCloudDialogflowCxV3Action
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # AgentUtterance represents one message sent by the agent.
30
+ # Corresponds to the JSON property `agentUtterance`
31
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3AgentUtterance]
32
+ attr_accessor :agent_utterance
33
+
34
+ # Stores metadata of the invocation of a CX flow.
35
+ # Corresponds to the JSON property `flowInvocation`
36
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3FlowInvocation]
37
+ attr_accessor :flow_invocation
38
+
39
+ # Stores metadata of the invocation of a child playbook.
40
+ # Corresponds to the JSON property `playbookInvocation`
41
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookInvocation]
42
+ attr_accessor :playbook_invocation
43
+
44
+ # Stores metadata of the invocation of an action supported by a tool.
45
+ # Corresponds to the JSON property `toolUse`
46
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolUse]
47
+ attr_accessor :tool_use
48
+
49
+ # UserUtterance represents one message sent by the customer.
50
+ # Corresponds to the JSON property `userUtterance`
51
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3UserUtterance]
52
+ attr_accessor :user_utterance
53
+
54
+ def initialize(**args)
55
+ update!(**args)
56
+ end
57
+
58
+ # Update properties of this object
59
+ def update!(**args)
60
+ @agent_utterance = args[:agent_utterance] if args.key?(:agent_utterance)
61
+ @flow_invocation = args[:flow_invocation] if args.key?(:flow_invocation)
62
+ @playbook_invocation = args[:playbook_invocation] if args.key?(:playbook_invocation)
63
+ @tool_use = args[:tool_use] if args.key?(:tool_use)
64
+ @user_utterance = args[:user_utterance] if args.key?(:user_utterance)
65
+ end
66
+ end
67
+
25
68
  # Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
26
69
  # Settings exposed at lower level overrides the settings exposed at higher level.
27
70
  # Overriding occurs at the sub-setting level. For example, the
@@ -325,13 +368,23 @@ module Google
325
368
  # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3SpeechToTextSettings]
326
369
  attr_accessor :speech_to_text_settings
327
370
 
328
- # Immutable. Name of the start flow in this agent. A start flow will be
329
- # automatically created when the agent is created, and can only be deleted by
330
- # deleting the agent. Format: `projects//locations//agents//flows/`.
371
+ # Name of the start flow in this agent. A start flow will be automatically
372
+ # created when the agent is created, and can only be deleted by deleting the
373
+ # agent. Format: `projects//locations//agents//flows/`. Currently only the
374
+ # default start flow with id "00000000-0000-0000-0000-000000000000" is allowed.
331
375
  # Corresponds to the JSON property `startFlow`
332
376
  # @return [String]
333
377
  attr_accessor :start_flow
334
378
 
379
+ # Name of the start playbook in this agent. A start playbook will be
380
+ # automatically created when the agent is created, and can only be deleted by
381
+ # deleting the agent. Format: `projects//locations//agents//playbooks/`.
382
+ # Currently only the default playbook with id "00000000-0000-0000-0000-
383
+ # 000000000000" is allowed.
384
+ # Corresponds to the JSON property `startPlaybook`
385
+ # @return [String]
386
+ attr_accessor :start_playbook
387
+
335
388
  # The list of all languages supported by the agent (except for the `
336
389
  # default_language_code`).
337
390
  # Corresponds to the JSON property `supportedLanguageCodes`
@@ -375,6 +428,7 @@ module Google
375
428
  @security_settings = args[:security_settings] if args.key?(:security_settings)
376
429
  @speech_to_text_settings = args[:speech_to_text_settings] if args.key?(:speech_to_text_settings)
377
430
  @start_flow = args[:start_flow] if args.key?(:start_flow)
431
+ @start_playbook = args[:start_playbook] if args.key?(:start_playbook)
378
432
  @supported_language_codes = args[:supported_language_codes] if args.key?(:supported_language_codes)
379
433
  @text_to_speech_settings = args[:text_to_speech_settings] if args.key?(:text_to_speech_settings)
380
434
  @time_zone = args[:time_zone] if args.key?(:time_zone)
@@ -545,6 +599,25 @@ module Google
545
599
  end
546
600
  end
547
601
 
602
+ # AgentUtterance represents one message sent by the agent.
603
+ class GoogleCloudDialogflowCxV3AgentUtterance
604
+ include Google::Apis::Core::Hashable
605
+
606
+ # Required. Message content in text.
607
+ # Corresponds to the JSON property `text`
608
+ # @return [String]
609
+ attr_accessor :text
610
+
611
+ def initialize(**args)
612
+ update!(**args)
613
+ end
614
+
615
+ # Update properties of this object
616
+ def update!(**args)
617
+ @text = args[:text] if args.key?(:text)
618
+ end
619
+ end
620
+
548
621
  # The response message for Agents.GetAgentValidationResult.
549
622
  class GoogleCloudDialogflowCxV3AgentValidationResult
550
623
  include Google::Apis::Core::Hashable
@@ -2301,6 +2374,94 @@ module Google
2301
2374
  end
2302
2375
  end
2303
2376
 
2377
+ # Example represents a sample execution of the playbook in the conversation. An
2378
+ # example consists of a list of ordered actions performed by end user or
2379
+ # Dialogflow agent according the playbook instructions to fulfill the task.
2380
+ class GoogleCloudDialogflowCxV3Example
2381
+ include Google::Apis::Core::Hashable
2382
+
2383
+ # Required. The ordered list of actions performed by the end user and the
2384
+ # Dialogflow agent.
2385
+ # Corresponds to the JSON property `actions`
2386
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3Action>]
2387
+ attr_accessor :actions
2388
+
2389
+ # Required. Example's output state.
2390
+ # Corresponds to the JSON property `conversationState`
2391
+ # @return [String]
2392
+ attr_accessor :conversation_state
2393
+
2394
+ # Output only. The timestamp of initial example creation.
2395
+ # Corresponds to the JSON property `createTime`
2396
+ # @return [String]
2397
+ attr_accessor :create_time
2398
+
2399
+ # Optional. The high level concise description of the example. The max number of
2400
+ # characters is 200.
2401
+ # Corresponds to the JSON property `description`
2402
+ # @return [String]
2403
+ attr_accessor :description
2404
+
2405
+ # Required. The display name of the example.
2406
+ # Corresponds to the JSON property `displayName`
2407
+ # @return [String]
2408
+ attr_accessor :display_name
2409
+
2410
+ # Optional. The language code of the example. If not specified, the agent's
2411
+ # default language is used. Note: languages must be enabled in the agent before
2412
+ # they can be used. Note: example's language code is not currently used in
2413
+ # dialogflow agents.
2414
+ # Corresponds to the JSON property `languageCode`
2415
+ # @return [String]
2416
+ attr_accessor :language_code
2417
+
2418
+ # The unique identifier of the playbook example. Format: `projects//locations//
2419
+ # agents//playbooks//examples/`.
2420
+ # Corresponds to the JSON property `name`
2421
+ # @return [String]
2422
+ attr_accessor :name
2423
+
2424
+ # Input of the playbook.
2425
+ # Corresponds to the JSON property `playbookInput`
2426
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookInput]
2427
+ attr_accessor :playbook_input
2428
+
2429
+ # Output of the playbook.
2430
+ # Corresponds to the JSON property `playbookOutput`
2431
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookOutput]
2432
+ attr_accessor :playbook_output
2433
+
2434
+ # Output only. Estimated number of tokes current example takes when sent to the
2435
+ # LLM.
2436
+ # Corresponds to the JSON property `tokenCount`
2437
+ # @return [Fixnum]
2438
+ attr_accessor :token_count
2439
+
2440
+ # Output only. Last time the example was updated.
2441
+ # Corresponds to the JSON property `updateTime`
2442
+ # @return [String]
2443
+ attr_accessor :update_time
2444
+
2445
+ def initialize(**args)
2446
+ update!(**args)
2447
+ end
2448
+
2449
+ # Update properties of this object
2450
+ def update!(**args)
2451
+ @actions = args[:actions] if args.key?(:actions)
2452
+ @conversation_state = args[:conversation_state] if args.key?(:conversation_state)
2453
+ @create_time = args[:create_time] if args.key?(:create_time)
2454
+ @description = args[:description] if args.key?(:description)
2455
+ @display_name = args[:display_name] if args.key?(:display_name)
2456
+ @language_code = args[:language_code] if args.key?(:language_code)
2457
+ @name = args[:name] if args.key?(:name)
2458
+ @playbook_input = args[:playbook_input] if args.key?(:playbook_input)
2459
+ @playbook_output = args[:playbook_output] if args.key?(:playbook_output)
2460
+ @token_count = args[:token_count] if args.key?(:token_count)
2461
+ @update_time = args[:update_time] if args.key?(:update_time)
2462
+ end
2463
+ end
2464
+
2304
2465
  # Represents an experiment in an environment.
2305
2466
  class GoogleCloudDialogflowCxV3Experiment
2306
2467
  include Google::Apis::Core::Hashable
@@ -2937,6 +3098,38 @@ module Google
2937
3098
  end
2938
3099
  end
2939
3100
 
3101
+ # The request message for Playbooks.ExportPlaybook.
3102
+ class GoogleCloudDialogflowCxV3ExportPlaybookRequest
3103
+ include Google::Apis::Core::Hashable
3104
+
3105
+ # Optional. The data format of the exported agent. If not specified, `BLOB` is
3106
+ # assumed.
3107
+ # Corresponds to the JSON property `dataFormat`
3108
+ # @return [String]
3109
+ attr_accessor :data_format
3110
+
3111
+ # Optional. The [Google Cloud Storage](https://cloud.google.com/storage/docs/)
3112
+ # URI to export the playbook to. The format of this URI must be `gs:///`. If
3113
+ # left unspecified, the serialized playbook is returned inline. Dialogflow
3114
+ # performs a write operation for the Cloud Storage object on the caller's behalf,
3115
+ # so your request authentication must have write permissions for the object.
3116
+ # For more information, see [Dialogflow access control](https://cloud.google.com/
3117
+ # dialogflow/cx/docs/concept/access-control#storage).
3118
+ # Corresponds to the JSON property `playbookUri`
3119
+ # @return [String]
3120
+ attr_accessor :playbook_uri
3121
+
3122
+ def initialize(**args)
3123
+ update!(**args)
3124
+ end
3125
+
3126
+ # Update properties of this object
3127
+ def update!(**args)
3128
+ @data_format = args[:data_format] if args.key?(:data_format)
3129
+ @playbook_uri = args[:playbook_uri] if args.key?(:playbook_uri)
3130
+ end
3131
+ end
3132
+
2940
3133
  # Metadata returned for the TestCases.ExportTestCases long running operation.
2941
3134
  # This message currently has no fields.
2942
3135
  class GoogleCloudDialogflowCxV3ExportTestCasesMetadata
@@ -3192,6 +3385,38 @@ module Google
3192
3385
  end
3193
3386
  end
3194
3387
 
3388
+ # Stores metadata of the invocation of a CX flow.
3389
+ class GoogleCloudDialogflowCxV3FlowInvocation
3390
+ include Google::Apis::Core::Hashable
3391
+
3392
+ # Output only. The display name of the flow.
3393
+ # Corresponds to the JSON property `displayName`
3394
+ # @return [String]
3395
+ attr_accessor :display_name
3396
+
3397
+ # Required. The unique identifier of the flow. Format: `projects//locations//
3398
+ # agents//flows/`.
3399
+ # Corresponds to the JSON property `flow`
3400
+ # @return [String]
3401
+ attr_accessor :flow
3402
+
3403
+ # Required. Flow invocation's output state.
3404
+ # Corresponds to the JSON property `flowState`
3405
+ # @return [String]
3406
+ attr_accessor :flow_state
3407
+
3408
+ def initialize(**args)
3409
+ update!(**args)
3410
+ end
3411
+
3412
+ # Update properties of this object
3413
+ def update!(**args)
3414
+ @display_name = args[:display_name] if args.key?(:display_name)
3415
+ @flow = args[:flow] if args.key?(:flow)
3416
+ @flow_state = args[:flow_state] if args.key?(:flow_state)
3417
+ end
3418
+ end
3419
+
3195
3420
  # Settings for multi-lingual agents.
3196
3421
  class GoogleCloudDialogflowCxV3FlowMultiLanguageSettings
3197
3422
  include Google::Apis::Core::Hashable
@@ -3733,6 +3958,11 @@ module Google
3733
3958
  # @return [String]
3734
3959
  attr_accessor :language_code
3735
3960
 
3961
+ # Settings for LLM models.
3962
+ # Corresponds to the JSON property `llmModelSettings`
3963
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3LlmModelSettings]
3964
+ attr_accessor :llm_model_settings
3965
+
3736
3966
  # Format: `projects//locations//agents//generativeSettings`.
3737
3967
  # Corresponds to the JSON property `name`
3738
3968
  # @return [String]
@@ -3748,6 +3978,7 @@ module Google
3748
3978
  @generative_safety_settings = args[:generative_safety_settings] if args.key?(:generative_safety_settings)
3749
3979
  @knowledge_connector_settings = args[:knowledge_connector_settings] if args.key?(:knowledge_connector_settings)
3750
3980
  @language_code = args[:language_code] if args.key?(:language_code)
3981
+ @llm_model_settings = args[:llm_model_settings] if args.key?(:llm_model_settings)
3751
3982
  @name = args[:name] if args.key?(:name)
3752
3983
  end
3753
3984
  end
@@ -3883,6 +4114,11 @@ module Google
3883
4114
  # @return [String]
3884
4115
  attr_accessor :display_name
3885
4116
 
4117
+ # Settings for LLM models.
4118
+ # Corresponds to the JSON property `llmModelSettings`
4119
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3LlmModelSettings]
4120
+ attr_accessor :llm_model_settings
4121
+
3886
4122
  # Parameters to be passed to the LLM. If not set, default values will be used.
3887
4123
  # Corresponds to the JSON property `modelParameter`
3888
4124
  # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3GeneratorModelParameter]
@@ -3912,6 +4148,7 @@ module Google
3912
4148
  # Update properties of this object
3913
4149
  def update!(**args)
3914
4150
  @display_name = args[:display_name] if args.key?(:display_name)
4151
+ @llm_model_settings = args[:llm_model_settings] if args.key?(:llm_model_settings)
3915
4152
  @model_parameter = args[:model_parameter] if args.key?(:model_parameter)
3916
4153
  @name = args[:name] if args.key?(:name)
3917
4154
  @placeholders = args[:placeholders] if args.key?(:placeholders)
@@ -4272,6 +4509,40 @@ module Google
4272
4509
  end
4273
4510
  end
4274
4511
 
4512
+ # The request message for Playbooks.ImportPlaybook.
4513
+ class GoogleCloudDialogflowCxV3ImportPlaybookRequest
4514
+ include Google::Apis::Core::Hashable
4515
+
4516
+ # The playbook import strategy used for resource conflict resolution associated
4517
+ # with an ImportPlaybookRequest.
4518
+ # Corresponds to the JSON property `importStrategy`
4519
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookImportStrategy]
4520
+ attr_accessor :import_strategy
4521
+
4522
+ # Uncompressed raw byte content for playbook.
4523
+ # Corresponds to the JSON property `playbookContent`
4524
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
4525
+ # @return [String]
4526
+ attr_accessor :playbook_content
4527
+
4528
+ # [Dialogflow access control] (https://cloud.google.com/dialogflow/cx/docs/
4529
+ # concept/access-control#storage).
4530
+ # Corresponds to the JSON property `playbookUri`
4531
+ # @return [String]
4532
+ attr_accessor :playbook_uri
4533
+
4534
+ def initialize(**args)
4535
+ update!(**args)
4536
+ end
4537
+
4538
+ # Update properties of this object
4539
+ def update!(**args)
4540
+ @import_strategy = args[:import_strategy] if args.key?(:import_strategy)
4541
+ @playbook_content = args[:playbook_content] if args.key?(:playbook_content)
4542
+ @playbook_uri = args[:playbook_uri] if args.key?(:playbook_uri)
4543
+ end
4544
+ end
4545
+
4275
4546
  # Metadata returned for the TestCases.ImportTestCases long running operation.
4276
4547
  class GoogleCloudDialogflowCxV3ImportTestCasesMetadata
4277
4548
  include Google::Apis::Core::Hashable
@@ -5006,6 +5277,33 @@ module Google
5006
5277
  end
5007
5278
  end
5008
5279
 
5280
+ # The response message for Examples.ListExamples.
5281
+ class GoogleCloudDialogflowCxV3ListExamplesResponse
5282
+ include Google::Apis::Core::Hashable
5283
+
5284
+ # The list of examples. There will be a maximum number of items returned based
5285
+ # on the page_size field in the request.
5286
+ # Corresponds to the JSON property `examples`
5287
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3Example>]
5288
+ attr_accessor :examples
5289
+
5290
+ # Token to retrieve the next page of results, or empty if there are no more
5291
+ # results in the list.
5292
+ # Corresponds to the JSON property `nextPageToken`
5293
+ # @return [String]
5294
+ attr_accessor :next_page_token
5295
+
5296
+ def initialize(**args)
5297
+ update!(**args)
5298
+ end
5299
+
5300
+ # Update properties of this object
5301
+ def update!(**args)
5302
+ @examples = args[:examples] if args.key?(:examples)
5303
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5304
+ end
5305
+ end
5306
+
5009
5307
  # The response message for Experiments.ListExperiments.
5010
5308
  class GoogleCloudDialogflowCxV3ListExperimentsResponse
5011
5309
  include Google::Apis::Core::Hashable
@@ -5142,6 +5440,60 @@ module Google
5142
5440
  end
5143
5441
  end
5144
5442
 
5443
+ # The response message for Playbooks.ListPlaybookVersions.
5444
+ class GoogleCloudDialogflowCxV3ListPlaybookVersionsResponse
5445
+ include Google::Apis::Core::Hashable
5446
+
5447
+ # Token to retrieve the next page of results, or empty if there are no more
5448
+ # results in the list.
5449
+ # Corresponds to the JSON property `nextPageToken`
5450
+ # @return [String]
5451
+ attr_accessor :next_page_token
5452
+
5453
+ # The list of playbook version. There will be a maximum number of items returned
5454
+ # based on the page_size field in the request.
5455
+ # Corresponds to the JSON property `playbookVersions`
5456
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookVersion>]
5457
+ attr_accessor :playbook_versions
5458
+
5459
+ def initialize(**args)
5460
+ update!(**args)
5461
+ end
5462
+
5463
+ # Update properties of this object
5464
+ def update!(**args)
5465
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5466
+ @playbook_versions = args[:playbook_versions] if args.key?(:playbook_versions)
5467
+ end
5468
+ end
5469
+
5470
+ # The response message for Playbooks.ListPlaybooks.
5471
+ class GoogleCloudDialogflowCxV3ListPlaybooksResponse
5472
+ include Google::Apis::Core::Hashable
5473
+
5474
+ # Token to retrieve the next page of results, or empty if there are no more
5475
+ # results in the list.
5476
+ # Corresponds to the JSON property `nextPageToken`
5477
+ # @return [String]
5478
+ attr_accessor :next_page_token
5479
+
5480
+ # The list of playbooks. There will be a maximum number of items returned based
5481
+ # on the page_size field in the request.
5482
+ # Corresponds to the JSON property `playbooks`
5483
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3Playbook>]
5484
+ attr_accessor :playbooks
5485
+
5486
+ def initialize(**args)
5487
+ update!(**args)
5488
+ end
5489
+
5490
+ # Update properties of this object
5491
+ def update!(**args)
5492
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5493
+ @playbooks = args[:playbooks] if args.key?(:playbooks)
5494
+ end
5495
+ end
5496
+
5145
5497
  # The response message for SecuritySettings.ListSecuritySettings.
5146
5498
  class GoogleCloudDialogflowCxV3ListSecuritySettingsResponse
5147
5499
  include Google::Apis::Core::Hashable
@@ -5248,6 +5600,33 @@ module Google
5248
5600
  end
5249
5601
  end
5250
5602
 
5603
+ # The response message for Tools.ListTools.
5604
+ class GoogleCloudDialogflowCxV3ListToolsResponse
5605
+ include Google::Apis::Core::Hashable
5606
+
5607
+ # Token to retrieve the next page of results, or empty if there are no more
5608
+ # results in the list.
5609
+ # Corresponds to the JSON property `nextPageToken`
5610
+ # @return [String]
5611
+ attr_accessor :next_page_token
5612
+
5613
+ # The list of Tools. There will be a maximum number of items returned based on
5614
+ # the page_size field in the request.
5615
+ # Corresponds to the JSON property `tools`
5616
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3Tool>]
5617
+ attr_accessor :tools
5618
+
5619
+ def initialize(**args)
5620
+ update!(**args)
5621
+ end
5622
+
5623
+ # Update properties of this object
5624
+ def update!(**args)
5625
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5626
+ @tools = args[:tools] if args.key?(:tools)
5627
+ end
5628
+ end
5629
+
5251
5630
  # The response message for TransitionRouteGroups.ListTransitionRouteGroups.
5252
5631
  class GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse
5253
5632
  include Google::Apis::Core::Hashable
@@ -5332,6 +5711,31 @@ module Google
5332
5711
  end
5333
5712
  end
5334
5713
 
5714
+ # Settings for LLM models.
5715
+ class GoogleCloudDialogflowCxV3LlmModelSettings
5716
+ include Google::Apis::Core::Hashable
5717
+
5718
+ # The selected LLM model.
5719
+ # Corresponds to the JSON property `model`
5720
+ # @return [String]
5721
+ attr_accessor :model
5722
+
5723
+ # The custom prompt to use.
5724
+ # Corresponds to the JSON property `promptText`
5725
+ # @return [String]
5726
+ attr_accessor :prompt_text
5727
+
5728
+ def initialize(**args)
5729
+ update!(**args)
5730
+ end
5731
+
5732
+ # Update properties of this object
5733
+ def update!(**args)
5734
+ @model = args[:model] if args.key?(:model)
5735
+ @prompt_text = args[:prompt_text] if args.key?(:prompt_text)
5736
+ end
5737
+ end
5738
+
5335
5739
  # The request message for Versions.LoadVersion.
5336
5740
  class GoogleCloudDialogflowCxV3LoadVersionRequest
5337
5741
  include Google::Apis::Core::Hashable
@@ -5874,15 +6278,329 @@ module Google
5874
6278
  end
5875
6279
  end
5876
6280
 
5877
- # Represents the query input. It can contain one of: 1. A conversational query
5878
- # in the form of text. 2. An intent query that specifies which intent to trigger.
5879
- # 3. Natural language speech audio to be processed. 4. An event to be triggered.
5880
- # 5. DTMF digits to invoke an intent and fill in parameter value. 6. The
5881
- # results of a tool executed by the client.
5882
- class GoogleCloudDialogflowCxV3QueryInput
6281
+ # Playbook is the basic building block to instruct the LLM how to execute a
6282
+ # certain task. A playbook consists of a goal to accomplish, an optional list of
6283
+ # step by step instructions (the step instruction may refers to name of the
6284
+ # custom or default plugin tools to use) to perform the task, a list of
6285
+ # contextual input data to be passed in at the beginning of the invoked, and a
6286
+ # list of output parameters to store the playbook result.
6287
+ class GoogleCloudDialogflowCxV3Playbook
5883
6288
  include Google::Apis::Core::Hashable
5884
6289
 
5885
- # Represents the natural speech audio to be processed.
6290
+ # Output only. The timestamp of initial playbook creation.
6291
+ # Corresponds to the JSON property `createTime`
6292
+ # @return [String]
6293
+ attr_accessor :create_time
6294
+
6295
+ # Required. The human-readable name of the playbook, unique within an agent.
6296
+ # Corresponds to the JSON property `displayName`
6297
+ # @return [String]
6298
+ attr_accessor :display_name
6299
+
6300
+ # Required. High level description of the goal the playbook intend to accomplish.
6301
+ # A goal should be concise since it's visible to other playbooks that may
6302
+ # reference this playbook.
6303
+ # Corresponds to the JSON property `goal`
6304
+ # @return [String]
6305
+ attr_accessor :goal
6306
+
6307
+ # Message of the Instruction of the playbook.
6308
+ # Corresponds to the JSON property `instruction`
6309
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookInstruction]
6310
+ attr_accessor :instruction
6311
+
6312
+ # Settings for LLM models.
6313
+ # Corresponds to the JSON property `llmModelSettings`
6314
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3LlmModelSettings]
6315
+ attr_accessor :llm_model_settings
6316
+
6317
+ # The unique identifier of the playbook. Format: `projects//locations//agents//
6318
+ # playbooks/`.
6319
+ # Corresponds to the JSON property `name`
6320
+ # @return [String]
6321
+ attr_accessor :name
6322
+
6323
+ # Output only. The resource name of flows referenced by the current playbook in
6324
+ # the instructions.
6325
+ # Corresponds to the JSON property `referencedFlows`
6326
+ # @return [Array<String>]
6327
+ attr_accessor :referenced_flows
6328
+
6329
+ # Output only. The resource name of other playbooks referenced by the current
6330
+ # playbook in the instructions.
6331
+ # Corresponds to the JSON property `referencedPlaybooks`
6332
+ # @return [Array<String>]
6333
+ attr_accessor :referenced_playbooks
6334
+
6335
+ # Optional. The resource name of tools referenced by the current playbook in the
6336
+ # instructions. If not provided explicitly, they are will be implied using the
6337
+ # tool being referenced in goal and steps.
6338
+ # Corresponds to the JSON property `referencedTools`
6339
+ # @return [Array<String>]
6340
+ attr_accessor :referenced_tools
6341
+
6342
+ # Output only. Estimated number of tokes current playbook takes when sent to the
6343
+ # LLM.
6344
+ # Corresponds to the JSON property `tokenCount`
6345
+ # @return [Fixnum]
6346
+ attr_accessor :token_count
6347
+
6348
+ # Output only. Last time the playbook version was updated.
6349
+ # Corresponds to the JSON property `updateTime`
6350
+ # @return [String]
6351
+ attr_accessor :update_time
6352
+
6353
+ def initialize(**args)
6354
+ update!(**args)
6355
+ end
6356
+
6357
+ # Update properties of this object
6358
+ def update!(**args)
6359
+ @create_time = args[:create_time] if args.key?(:create_time)
6360
+ @display_name = args[:display_name] if args.key?(:display_name)
6361
+ @goal = args[:goal] if args.key?(:goal)
6362
+ @instruction = args[:instruction] if args.key?(:instruction)
6363
+ @llm_model_settings = args[:llm_model_settings] if args.key?(:llm_model_settings)
6364
+ @name = args[:name] if args.key?(:name)
6365
+ @referenced_flows = args[:referenced_flows] if args.key?(:referenced_flows)
6366
+ @referenced_playbooks = args[:referenced_playbooks] if args.key?(:referenced_playbooks)
6367
+ @referenced_tools = args[:referenced_tools] if args.key?(:referenced_tools)
6368
+ @token_count = args[:token_count] if args.key?(:token_count)
6369
+ @update_time = args[:update_time] if args.key?(:update_time)
6370
+ end
6371
+ end
6372
+
6373
+ # The playbook import strategy used for resource conflict resolution associated
6374
+ # with an ImportPlaybookRequest.
6375
+ class GoogleCloudDialogflowCxV3PlaybookImportStrategy
6376
+ include Google::Apis::Core::Hashable
6377
+
6378
+ # Optional. Specifies the import strategy used when resolving conflicts with the
6379
+ # main playbook. If not specified, 'CREATE_NEW' is assumed.
6380
+ # Corresponds to the JSON property `mainPlaybookImportStrategy`
6381
+ # @return [String]
6382
+ attr_accessor :main_playbook_import_strategy
6383
+
6384
+ # Optional. Specifies the import strategy used when resolving referenced
6385
+ # playbook/flow conflicts. If not specified, 'CREATE_NEW' is assumed.
6386
+ # Corresponds to the JSON property `nestedResourceImportStrategy`
6387
+ # @return [String]
6388
+ attr_accessor :nested_resource_import_strategy
6389
+
6390
+ # Optional. Specifies the import strategy used when resolving tool conflicts. If
6391
+ # not specified, 'CREATE_NEW' is assumed. This will be applied after the main
6392
+ # playbook and nested resource import strategies, meaning if the playbook that
6393
+ # references the tool is skipped, the tool will also be skipped.
6394
+ # Corresponds to the JSON property `toolImportStrategy`
6395
+ # @return [String]
6396
+ attr_accessor :tool_import_strategy
6397
+
6398
+ def initialize(**args)
6399
+ update!(**args)
6400
+ end
6401
+
6402
+ # Update properties of this object
6403
+ def update!(**args)
6404
+ @main_playbook_import_strategy = args[:main_playbook_import_strategy] if args.key?(:main_playbook_import_strategy)
6405
+ @nested_resource_import_strategy = args[:nested_resource_import_strategy] if args.key?(:nested_resource_import_strategy)
6406
+ @tool_import_strategy = args[:tool_import_strategy] if args.key?(:tool_import_strategy)
6407
+ end
6408
+ end
6409
+
6410
+ # Input of the playbook.
6411
+ class GoogleCloudDialogflowCxV3PlaybookInput
6412
+ include Google::Apis::Core::Hashable
6413
+
6414
+ # Optional. Summary string of the preceding conversation for the child playbook
6415
+ # invocation.
6416
+ # Corresponds to the JSON property `precedingConversationSummary`
6417
+ # @return [String]
6418
+ attr_accessor :preceding_conversation_summary
6419
+
6420
+ def initialize(**args)
6421
+ update!(**args)
6422
+ end
6423
+
6424
+ # Update properties of this object
6425
+ def update!(**args)
6426
+ @preceding_conversation_summary = args[:preceding_conversation_summary] if args.key?(:preceding_conversation_summary)
6427
+ end
6428
+ end
6429
+
6430
+ # Message of the Instruction of the playbook.
6431
+ class GoogleCloudDialogflowCxV3PlaybookInstruction
6432
+ include Google::Apis::Core::Hashable
6433
+
6434
+ # General guidelines for the playbook. These are unstructured instructions that
6435
+ # are not directly part of the goal, e.g. "Always be polite". It's valid for
6436
+ # this text to be long and used instead of steps altogether.
6437
+ # Corresponds to the JSON property `guidelines`
6438
+ # @return [String]
6439
+ attr_accessor :guidelines
6440
+
6441
+ # Ordered list of step by step execution instructions to accomplish target goal.
6442
+ # Corresponds to the JSON property `steps`
6443
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookStep>]
6444
+ attr_accessor :steps
6445
+
6446
+ def initialize(**args)
6447
+ update!(**args)
6448
+ end
6449
+
6450
+ # Update properties of this object
6451
+ def update!(**args)
6452
+ @guidelines = args[:guidelines] if args.key?(:guidelines)
6453
+ @steps = args[:steps] if args.key?(:steps)
6454
+ end
6455
+ end
6456
+
6457
+ # Stores metadata of the invocation of a child playbook.
6458
+ class GoogleCloudDialogflowCxV3PlaybookInvocation
6459
+ include Google::Apis::Core::Hashable
6460
+
6461
+ # Output only. The display name of the playbook.
6462
+ # Corresponds to the JSON property `displayName`
6463
+ # @return [String]
6464
+ attr_accessor :display_name
6465
+
6466
+ # Required. The unique identifier of the playbook. Format: `projects//locations//
6467
+ # agents//playbooks/`.
6468
+ # Corresponds to the JSON property `playbook`
6469
+ # @return [String]
6470
+ attr_accessor :playbook
6471
+
6472
+ # Input of the playbook.
6473
+ # Corresponds to the JSON property `playbookInput`
6474
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookInput]
6475
+ attr_accessor :playbook_input
6476
+
6477
+ # Output of the playbook.
6478
+ # Corresponds to the JSON property `playbookOutput`
6479
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookOutput]
6480
+ attr_accessor :playbook_output
6481
+
6482
+ # Required. Playbook invocation's output state.
6483
+ # Corresponds to the JSON property `playbookState`
6484
+ # @return [String]
6485
+ attr_accessor :playbook_state
6486
+
6487
+ def initialize(**args)
6488
+ update!(**args)
6489
+ end
6490
+
6491
+ # Update properties of this object
6492
+ def update!(**args)
6493
+ @display_name = args[:display_name] if args.key?(:display_name)
6494
+ @playbook = args[:playbook] if args.key?(:playbook)
6495
+ @playbook_input = args[:playbook_input] if args.key?(:playbook_input)
6496
+ @playbook_output = args[:playbook_output] if args.key?(:playbook_output)
6497
+ @playbook_state = args[:playbook_state] if args.key?(:playbook_state)
6498
+ end
6499
+ end
6500
+
6501
+ # Output of the playbook.
6502
+ class GoogleCloudDialogflowCxV3PlaybookOutput
6503
+ include Google::Apis::Core::Hashable
6504
+
6505
+ # Optional. Summary string of the execution result of the child playbook.
6506
+ # Corresponds to the JSON property `executionSummary`
6507
+ # @return [String]
6508
+ attr_accessor :execution_summary
6509
+
6510
+ def initialize(**args)
6511
+ update!(**args)
6512
+ end
6513
+
6514
+ # Update properties of this object
6515
+ def update!(**args)
6516
+ @execution_summary = args[:execution_summary] if args.key?(:execution_summary)
6517
+ end
6518
+ end
6519
+
6520
+ # Message of single step execution.
6521
+ class GoogleCloudDialogflowCxV3PlaybookStep
6522
+ include Google::Apis::Core::Hashable
6523
+
6524
+ # Sub-processing needed to execute the current step.
6525
+ # Corresponds to the JSON property `steps`
6526
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookStep>]
6527
+ attr_accessor :steps
6528
+
6529
+ # Step instruction in text format.
6530
+ # Corresponds to the JSON property `text`
6531
+ # @return [String]
6532
+ attr_accessor :text
6533
+
6534
+ def initialize(**args)
6535
+ update!(**args)
6536
+ end
6537
+
6538
+ # Update properties of this object
6539
+ def update!(**args)
6540
+ @steps = args[:steps] if args.key?(:steps)
6541
+ @text = args[:text] if args.key?(:text)
6542
+ end
6543
+ end
6544
+
6545
+ # Playbook version is a snapshot of the playbook at certain timestamp.
6546
+ class GoogleCloudDialogflowCxV3PlaybookVersion
6547
+ include Google::Apis::Core::Hashable
6548
+
6549
+ # Optional. The description of the playbook version.
6550
+ # Corresponds to the JSON property `description`
6551
+ # @return [String]
6552
+ attr_accessor :description
6553
+
6554
+ # Output only. Snapshot of the examples belonging to the playbook when the
6555
+ # playbook version is created.
6556
+ # Corresponds to the JSON property `examples`
6557
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3Example>]
6558
+ attr_accessor :examples
6559
+
6560
+ # The unique identifier of the playbook version. Format: `projects//locations//
6561
+ # agents//playbooks//versions/`.
6562
+ # Corresponds to the JSON property `name`
6563
+ # @return [String]
6564
+ attr_accessor :name
6565
+
6566
+ # Playbook is the basic building block to instruct the LLM how to execute a
6567
+ # certain task. A playbook consists of a goal to accomplish, an optional list of
6568
+ # step by step instructions (the step instruction may refers to name of the
6569
+ # custom or default plugin tools to use) to perform the task, a list of
6570
+ # contextual input data to be passed in at the beginning of the invoked, and a
6571
+ # list of output parameters to store the playbook result.
6572
+ # Corresponds to the JSON property `playbook`
6573
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3Playbook]
6574
+ attr_accessor :playbook
6575
+
6576
+ # Output only. Last time the playbook version was created or modified.
6577
+ # Corresponds to the JSON property `updateTime`
6578
+ # @return [String]
6579
+ attr_accessor :update_time
6580
+
6581
+ def initialize(**args)
6582
+ update!(**args)
6583
+ end
6584
+
6585
+ # Update properties of this object
6586
+ def update!(**args)
6587
+ @description = args[:description] if args.key?(:description)
6588
+ @examples = args[:examples] if args.key?(:examples)
6589
+ @name = args[:name] if args.key?(:name)
6590
+ @playbook = args[:playbook] if args.key?(:playbook)
6591
+ @update_time = args[:update_time] if args.key?(:update_time)
6592
+ end
6593
+ end
6594
+
6595
+ # Represents the query input. It can contain one of: 1. A conversational query
6596
+ # in the form of text. 2. An intent query that specifies which intent to trigger.
6597
+ # 3. Natural language speech audio to be processed. 4. An event to be triggered.
6598
+ # 5. DTMF digits to invoke an intent and fill in parameter value. 6. The
6599
+ # results of a tool executed by the client.
6600
+ class GoogleCloudDialogflowCxV3QueryInput
6601
+ include Google::Apis::Core::Hashable
6602
+
6603
+ # Represents the natural speech audio to be processed.
5886
6604
  # Corresponds to the JSON property `audio`
5887
6605
  # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3AudioInput]
5888
6606
  attr_accessor :audio
@@ -5916,6 +6634,11 @@ module Google
5916
6634
  # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3TextInput]
5917
6635
  attr_accessor :text
5918
6636
 
6637
+ # The result of calling a tool's action that has been executed by the client.
6638
+ # Corresponds to the JSON property `toolCallResult`
6639
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolCallResult]
6640
+ attr_accessor :tool_call_result
6641
+
5919
6642
  def initialize(**args)
5920
6643
  update!(**args)
5921
6644
  end
@@ -5928,6 +6651,7 @@ module Google
5928
6651
  @intent = args[:intent] if args.key?(:intent)
5929
6652
  @language_code = args[:language_code] if args.key?(:language_code)
5930
6653
  @text = args[:text] if args.key?(:text)
6654
+ @tool_call_result = args[:tool_call_result] if args.key?(:tool_call_result)
5931
6655
  end
5932
6656
  end
5933
6657
 
@@ -5961,6 +6685,14 @@ module Google
5961
6685
  # @return [String]
5962
6686
  attr_accessor :current_page
5963
6687
 
6688
+ # Optional. The unique identifier of the playbook to start or continue the
6689
+ # session with. If `current_playbook` is specified, the previous state of the
6690
+ # session will be ignored by Dialogflow. Format: `projects//locations//agents//
6691
+ # playbooks/`.
6692
+ # Corresponds to the JSON property `currentPlaybook`
6693
+ # @return [String]
6694
+ attr_accessor :current_playbook
6695
+
5964
6696
  # Whether to disable webhook calls for this request.
5965
6697
  # Corresponds to the JSON property `disableWebhook`
5966
6698
  # @return [Boolean]
@@ -5994,6 +6726,11 @@ module Google
5994
6726
  # @return [Google::Apis::DialogflowV3::GoogleTypeLatLng]
5995
6727
  attr_accessor :geo_location
5996
6728
 
6729
+ # Settings for LLM models.
6730
+ # Corresponds to the JSON property `llmModelSettings`
6731
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3LlmModelSettings]
6732
+ attr_accessor :llm_model_settings
6733
+
5997
6734
  # Additional parameters to be put into session parameters. To remove a parameter
5998
6735
  # from the session, clients should explicitly set the parameter value to null.
5999
6736
  # You can reference the session parameters in the agent with the following
@@ -6075,10 +6812,12 @@ module Google
6075
6812
  @analyze_query_text_sentiment = args[:analyze_query_text_sentiment] if args.key?(:analyze_query_text_sentiment)
6076
6813
  @channel = args[:channel] if args.key?(:channel)
6077
6814
  @current_page = args[:current_page] if args.key?(:current_page)
6815
+ @current_playbook = args[:current_playbook] if args.key?(:current_playbook)
6078
6816
  @disable_webhook = args[:disable_webhook] if args.key?(:disable_webhook)
6079
6817
  @end_user_metadata = args[:end_user_metadata] if args.key?(:end_user_metadata)
6080
6818
  @flow_versions = args[:flow_versions] if args.key?(:flow_versions)
6081
6819
  @geo_location = args[:geo_location] if args.key?(:geo_location)
6820
+ @llm_model_settings = args[:llm_model_settings] if args.key?(:llm_model_settings)
6082
6821
  @parameters = args[:parameters] if args.key?(:parameters)
6083
6822
  @payload = args[:payload] if args.key?(:payload)
6084
6823
  @populate_data_store_connection_signals = args[:populate_data_store_connection_signals] if args.key?(:populate_data_store_connection_signals)
@@ -6403,6 +7142,11 @@ module Google
6403
7142
  # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ResponseMessageText]
6404
7143
  attr_accessor :text
6405
7144
 
7145
+ # Represents a call of a specific tool's action with the specified inputs.
7146
+ # Corresponds to the JSON property `toolCall`
7147
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolCall]
7148
+ attr_accessor :tool_call
7149
+
6406
7150
  def initialize(**args)
6407
7151
  update!(**args)
6408
7152
  end
@@ -6421,6 +7165,7 @@ module Google
6421
7165
  @response_type = args[:response_type] if args.key?(:response_type)
6422
7166
  @telephony_transfer_call = args[:telephony_transfer_call] if args.key?(:telephony_transfer_call)
6423
7167
  @text = args[:text] if args.key?(:text)
7168
+ @tool_call = args[:tool_call] if args.key?(:tool_call)
6424
7169
  end
6425
7170
  end
6426
7171
 
@@ -6738,6 +7483,43 @@ module Google
6738
7483
  end
6739
7484
  end
6740
7485
 
7486
+ # The request message for Playbooks.RestorePlaybookVersion.
7487
+ class GoogleCloudDialogflowCxV3RestorePlaybookVersionRequest
7488
+ include Google::Apis::Core::Hashable
7489
+
7490
+ def initialize(**args)
7491
+ update!(**args)
7492
+ end
7493
+
7494
+ # Update properties of this object
7495
+ def update!(**args)
7496
+ end
7497
+ end
7498
+
7499
+ # The response message for Playbooks.RestorePlaybookVersion.
7500
+ class GoogleCloudDialogflowCxV3RestorePlaybookVersionResponse
7501
+ include Google::Apis::Core::Hashable
7502
+
7503
+ # Playbook is the basic building block to instruct the LLM how to execute a
7504
+ # certain task. A playbook consists of a goal to accomplish, an optional list of
7505
+ # step by step instructions (the step instruction may refers to name of the
7506
+ # custom or default plugin tools to use) to perform the task, a list of
7507
+ # contextual input data to be passed in at the beginning of the invoked, and a
7508
+ # list of output parameters to store the playbook result.
7509
+ # Corresponds to the JSON property `playbook`
7510
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3Playbook]
7511
+ attr_accessor :playbook
7512
+
7513
+ def initialize(**args)
7514
+ update!(**args)
7515
+ end
7516
+
7517
+ # Update properties of this object
7518
+ def update!(**args)
7519
+ @playbook = args[:playbook] if args.key?(:playbook)
7520
+ end
7521
+ end
7522
+
6741
7523
  # The configuration for auto rollout.
6742
7524
  class GoogleCloudDialogflowCxV3RolloutConfig
6743
7525
  include Google::Apis::Core::Hashable
@@ -6955,6 +7737,11 @@ module Google
6955
7737
  # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3SafetySettingsPhrase>]
6956
7738
  attr_accessor :banned_phrases
6957
7739
 
7740
+ # Optional. Default phrase match strategy for banned phrases.
7741
+ # Corresponds to the JSON property `defaultBannedPhraseMatchStrategy`
7742
+ # @return [String]
7743
+ attr_accessor :default_banned_phrase_match_strategy
7744
+
6958
7745
  def initialize(**args)
6959
7746
  update!(**args)
6960
7747
  end
@@ -6962,6 +7749,7 @@ module Google
6962
7749
  # Update properties of this object
6963
7750
  def update!(**args)
6964
7751
  @banned_phrases = args[:banned_phrases] if args.key?(:banned_phrases)
7752
+ @default_banned_phrase_match_strategy = args[:default_banned_phrase_match_strategy] if args.key?(:default_banned_phrase_match_strategy)
6965
7753
  end
6966
7754
  end
6967
7755
 
@@ -7728,34 +8516,91 @@ module Google
7728
8516
  end
7729
8517
  end
7730
8518
 
7731
- # The request message for Flows.TrainFlow.
7732
- class GoogleCloudDialogflowCxV3TrainFlowRequest
8519
+ # A tool provides a list of actions which are available to the Playbook to
8520
+ # attain its goal. A Tool consists of a description of the tool's usage and a
8521
+ # specification of the tool which contains the schema and authentication
8522
+ # information.
8523
+ class GoogleCloudDialogflowCxV3Tool
7733
8524
  include Google::Apis::Core::Hashable
7734
8525
 
8526
+ # A DataStoreTool is a way to provide specifications needed to search a list of
8527
+ # data stores.
8528
+ # Corresponds to the JSON property `dataStoreSpec`
8529
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolDataStoreTool]
8530
+ attr_accessor :data_store_spec
8531
+
8532
+ # Required. High level description of the Tool and its usage.
8533
+ # Corresponds to the JSON property `description`
8534
+ # @return [String]
8535
+ attr_accessor :description
8536
+
8537
+ # Required. The human-readable name of the Tool, unique within an agent.
8538
+ # Corresponds to the JSON property `displayName`
8539
+ # @return [String]
8540
+ attr_accessor :display_name
8541
+
8542
+ # A Function tool describes the functions to be invoked on the client side.
8543
+ # Corresponds to the JSON property `functionSpec`
8544
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolFunctionTool]
8545
+ attr_accessor :function_spec
8546
+
8547
+ # The unique identifier of the Tool. Format: `projects//locations//agents//tools/
8548
+ # `.
8549
+ # Corresponds to the JSON property `name`
8550
+ # @return [String]
8551
+ attr_accessor :name
8552
+
8553
+ # An OpenAPI tool is a way to provide the Tool specifications in the Open API
8554
+ # schema format.
8555
+ # Corresponds to the JSON property `openApiSpec`
8556
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolOpenApiTool]
8557
+ attr_accessor :open_api_spec
8558
+
8559
+ # Output only. The tool type.
8560
+ # Corresponds to the JSON property `toolType`
8561
+ # @return [String]
8562
+ attr_accessor :tool_type
8563
+
7735
8564
  def initialize(**args)
7736
8565
  update!(**args)
7737
8566
  end
7738
8567
 
7739
8568
  # Update properties of this object
7740
8569
  def update!(**args)
8570
+ @data_store_spec = args[:data_store_spec] if args.key?(:data_store_spec)
8571
+ @description = args[:description] if args.key?(:description)
8572
+ @display_name = args[:display_name] if args.key?(:display_name)
8573
+ @function_spec = args[:function_spec] if args.key?(:function_spec)
8574
+ @name = args[:name] if args.key?(:name)
8575
+ @open_api_spec = args[:open_api_spec] if args.key?(:open_api_spec)
8576
+ @tool_type = args[:tool_type] if args.key?(:tool_type)
7741
8577
  end
7742
8578
  end
7743
8579
 
7744
- # Transition coverage represents the percentage of all possible page transitions
7745
- # (page-level transition routes and event handlers, excluding transition route
7746
- # groups) present within any of a parent's test cases.
7747
- class GoogleCloudDialogflowCxV3TransitionCoverage
8580
+ # Authentication information required for API calls
8581
+ class GoogleCloudDialogflowCxV3ToolAuthentication
7748
8582
  include Google::Apis::Core::Hashable
7749
8583
 
7750
- # The percent of transitions in the agent that are covered.
7751
- # Corresponds to the JSON property `coverageScore`
7752
- # @return [Float]
7753
- attr_accessor :coverage_score
8584
+ # Config for authentication with API key.
8585
+ # Corresponds to the JSON property `apiKeyConfig`
8586
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolAuthenticationApiKeyConfig]
8587
+ attr_accessor :api_key_config
7754
8588
 
7755
- # The list of Transitions present in the agent.
7756
- # Corresponds to the JSON property `transitions`
7757
- # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3TransitionCoverageTransition>]
7758
- attr_accessor :transitions
8589
+ # Config for authentication using bearer token.
8590
+ # Corresponds to the JSON property `bearerTokenConfig`
8591
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolAuthenticationBearerTokenConfig]
8592
+ attr_accessor :bearer_token_config
8593
+
8594
+ # Config for authentication with OAuth.
8595
+ # Corresponds to the JSON property `oauthConfig`
8596
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolAuthenticationOAuthConfig]
8597
+ attr_accessor :oauth_config
8598
+
8599
+ # Config for auth using [Diglogflow service agent](https://cloud.google.com/iam/
8600
+ # docs/service-agents#dialogflow-service-agent).
8601
+ # Corresponds to the JSON property `serviceAgentAuthConfig`
8602
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolAuthenticationServiceAgentAuthConfig]
8603
+ attr_accessor :service_agent_auth_config
7759
8604
 
7760
8605
  def initialize(**args)
7761
8606
  update!(**args)
@@ -7763,12 +8608,518 @@ module Google
7763
8608
 
7764
8609
  # Update properties of this object
7765
8610
  def update!(**args)
7766
- @coverage_score = args[:coverage_score] if args.key?(:coverage_score)
7767
- @transitions = args[:transitions] if args.key?(:transitions)
8611
+ @api_key_config = args[:api_key_config] if args.key?(:api_key_config)
8612
+ @bearer_token_config = args[:bearer_token_config] if args.key?(:bearer_token_config)
8613
+ @oauth_config = args[:oauth_config] if args.key?(:oauth_config)
8614
+ @service_agent_auth_config = args[:service_agent_auth_config] if args.key?(:service_agent_auth_config)
7768
8615
  end
7769
8616
  end
7770
8617
 
7771
- # A transition in a page.
8618
+ # Config for authentication with API key.
8619
+ class GoogleCloudDialogflowCxV3ToolAuthenticationApiKeyConfig
8620
+ include Google::Apis::Core::Hashable
8621
+
8622
+ # Optional. The API key. If the `secret_version_for_api_key` field is set, this
8623
+ # field will be ignored.
8624
+ # Corresponds to the JSON property `apiKey`
8625
+ # @return [String]
8626
+ attr_accessor :api_key
8627
+
8628
+ # Required. The parameter name or the header name of the API key. E.g., If the
8629
+ # API request is "https://example.com/act?X-Api-Key=", "X-Api-Key" would be the
8630
+ # parameter name.
8631
+ # Corresponds to the JSON property `keyName`
8632
+ # @return [String]
8633
+ attr_accessor :key_name
8634
+
8635
+ # Required. Key location in the request.
8636
+ # Corresponds to the JSON property `requestLocation`
8637
+ # @return [String]
8638
+ attr_accessor :request_location
8639
+
8640
+ # Optional. The name of the SecretManager secret version resource storing the
8641
+ # API key. If this field is set, the `api_key` field will be ignored. Format: `
8642
+ # projects/`project`/secrets/`secret`/versions/`version``
8643
+ # Corresponds to the JSON property `secretVersionForApiKey`
8644
+ # @return [String]
8645
+ attr_accessor :secret_version_for_api_key
8646
+
8647
+ def initialize(**args)
8648
+ update!(**args)
8649
+ end
8650
+
8651
+ # Update properties of this object
8652
+ def update!(**args)
8653
+ @api_key = args[:api_key] if args.key?(:api_key)
8654
+ @key_name = args[:key_name] if args.key?(:key_name)
8655
+ @request_location = args[:request_location] if args.key?(:request_location)
8656
+ @secret_version_for_api_key = args[:secret_version_for_api_key] if args.key?(:secret_version_for_api_key)
8657
+ end
8658
+ end
8659
+
8660
+ # Config for authentication using bearer token.
8661
+ class GoogleCloudDialogflowCxV3ToolAuthenticationBearerTokenConfig
8662
+ include Google::Apis::Core::Hashable
8663
+
8664
+ # Optional. The name of the SecretManager secret version resource storing the
8665
+ # Bearer token. If this field is set, the `token` field will be ignored. Format:
8666
+ # `projects/`project`/secrets/`secret`/versions/`version``
8667
+ # Corresponds to the JSON property `secretVersionForToken`
8668
+ # @return [String]
8669
+ attr_accessor :secret_version_for_token
8670
+
8671
+ # Optional. The text token appended to the text `Bearer` to the request
8672
+ # Authorization header. [Session parameters reference](https://cloud.google.com/
8673
+ # dialogflow/cx/docs/concept/parameter#session-ref) can be used to pass the
8674
+ # token dynamically, e.g. `$session.params.parameter-id`.
8675
+ # Corresponds to the JSON property `token`
8676
+ # @return [String]
8677
+ attr_accessor :token
8678
+
8679
+ def initialize(**args)
8680
+ update!(**args)
8681
+ end
8682
+
8683
+ # Update properties of this object
8684
+ def update!(**args)
8685
+ @secret_version_for_token = args[:secret_version_for_token] if args.key?(:secret_version_for_token)
8686
+ @token = args[:token] if args.key?(:token)
8687
+ end
8688
+ end
8689
+
8690
+ # Config for authentication with OAuth.
8691
+ class GoogleCloudDialogflowCxV3ToolAuthenticationOAuthConfig
8692
+ include Google::Apis::Core::Hashable
8693
+
8694
+ # Required. The client ID from the OAuth provider.
8695
+ # Corresponds to the JSON property `clientId`
8696
+ # @return [String]
8697
+ attr_accessor :client_id
8698
+
8699
+ # Optional. The client secret from the OAuth provider. If the `
8700
+ # secret_version_for_client_secret` field is set, this field will be ignored.
8701
+ # Corresponds to the JSON property `clientSecret`
8702
+ # @return [String]
8703
+ attr_accessor :client_secret
8704
+
8705
+ # Required. OAuth grant types.
8706
+ # Corresponds to the JSON property `oauthGrantType`
8707
+ # @return [String]
8708
+ attr_accessor :oauth_grant_type
8709
+
8710
+ # Optional. The OAuth scopes to grant.
8711
+ # Corresponds to the JSON property `scopes`
8712
+ # @return [Array<String>]
8713
+ attr_accessor :scopes
8714
+
8715
+ # Optional. The name of the SecretManager secret version resource storing the
8716
+ # client secret. If this field is set, the `client_secret` field will be ignored.
8717
+ # Format: `projects/`project`/secrets/`secret`/versions/`version``
8718
+ # Corresponds to the JSON property `secretVersionForClientSecret`
8719
+ # @return [String]
8720
+ attr_accessor :secret_version_for_client_secret
8721
+
8722
+ # Required. The token endpoint in the OAuth provider to exchange for an access
8723
+ # token.
8724
+ # Corresponds to the JSON property `tokenEndpoint`
8725
+ # @return [String]
8726
+ attr_accessor :token_endpoint
8727
+
8728
+ def initialize(**args)
8729
+ update!(**args)
8730
+ end
8731
+
8732
+ # Update properties of this object
8733
+ def update!(**args)
8734
+ @client_id = args[:client_id] if args.key?(:client_id)
8735
+ @client_secret = args[:client_secret] if args.key?(:client_secret)
8736
+ @oauth_grant_type = args[:oauth_grant_type] if args.key?(:oauth_grant_type)
8737
+ @scopes = args[:scopes] if args.key?(:scopes)
8738
+ @secret_version_for_client_secret = args[:secret_version_for_client_secret] if args.key?(:secret_version_for_client_secret)
8739
+ @token_endpoint = args[:token_endpoint] if args.key?(:token_endpoint)
8740
+ end
8741
+ end
8742
+
8743
+ # Config for auth using [Diglogflow service agent](https://cloud.google.com/iam/
8744
+ # docs/service-agents#dialogflow-service-agent).
8745
+ class GoogleCloudDialogflowCxV3ToolAuthenticationServiceAgentAuthConfig
8746
+ include Google::Apis::Core::Hashable
8747
+
8748
+ # Optional. Indicate the auth token type generated from the [Diglogflow service
8749
+ # agent](https://cloud.google.com/iam/docs/service-agents#dialogflow-service-
8750
+ # agent). The generated token is sent in the Authorization header.
8751
+ # Corresponds to the JSON property `serviceAgentAuth`
8752
+ # @return [String]
8753
+ attr_accessor :service_agent_auth
8754
+
8755
+ def initialize(**args)
8756
+ update!(**args)
8757
+ end
8758
+
8759
+ # Update properties of this object
8760
+ def update!(**args)
8761
+ @service_agent_auth = args[:service_agent_auth] if args.key?(:service_agent_auth)
8762
+ end
8763
+ end
8764
+
8765
+ # Represents a call of a specific tool's action with the specified inputs.
8766
+ class GoogleCloudDialogflowCxV3ToolCall
8767
+ include Google::Apis::Core::Hashable
8768
+
8769
+ # Required. The name of the tool's action associated with this call.
8770
+ # Corresponds to the JSON property `action`
8771
+ # @return [String]
8772
+ attr_accessor :action
8773
+
8774
+ # Optional. The action's input parameters.
8775
+ # Corresponds to the JSON property `inputParameters`
8776
+ # @return [Hash<String,Object>]
8777
+ attr_accessor :input_parameters
8778
+
8779
+ # Required. The tool associated with this call. Format: `projects//locations//
8780
+ # agents//tools/`.
8781
+ # Corresponds to the JSON property `tool`
8782
+ # @return [String]
8783
+ attr_accessor :tool
8784
+
8785
+ def initialize(**args)
8786
+ update!(**args)
8787
+ end
8788
+
8789
+ # Update properties of this object
8790
+ def update!(**args)
8791
+ @action = args[:action] if args.key?(:action)
8792
+ @input_parameters = args[:input_parameters] if args.key?(:input_parameters)
8793
+ @tool = args[:tool] if args.key?(:tool)
8794
+ end
8795
+ end
8796
+
8797
+ # The result of calling a tool's action that has been executed by the client.
8798
+ class GoogleCloudDialogflowCxV3ToolCallResult
8799
+ include Google::Apis::Core::Hashable
8800
+
8801
+ # Required. The name of the tool's action associated with this call.
8802
+ # Corresponds to the JSON property `action`
8803
+ # @return [String]
8804
+ attr_accessor :action
8805
+
8806
+ # An error produced by the tool call.
8807
+ # Corresponds to the JSON property `error`
8808
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolCallResultError]
8809
+ attr_accessor :error
8810
+
8811
+ # The tool call's output parameters.
8812
+ # Corresponds to the JSON property `outputParameters`
8813
+ # @return [Hash<String,Object>]
8814
+ attr_accessor :output_parameters
8815
+
8816
+ # Required. The tool associated with this call. Format: `projects//locations//
8817
+ # agents//tools/`.
8818
+ # Corresponds to the JSON property `tool`
8819
+ # @return [String]
8820
+ attr_accessor :tool
8821
+
8822
+ def initialize(**args)
8823
+ update!(**args)
8824
+ end
8825
+
8826
+ # Update properties of this object
8827
+ def update!(**args)
8828
+ @action = args[:action] if args.key?(:action)
8829
+ @error = args[:error] if args.key?(:error)
8830
+ @output_parameters = args[:output_parameters] if args.key?(:output_parameters)
8831
+ @tool = args[:tool] if args.key?(:tool)
8832
+ end
8833
+ end
8834
+
8835
+ # An error produced by the tool call.
8836
+ class GoogleCloudDialogflowCxV3ToolCallResultError
8837
+ include Google::Apis::Core::Hashable
8838
+
8839
+ # Optional. The error message of the function.
8840
+ # Corresponds to the JSON property `message`
8841
+ # @return [String]
8842
+ attr_accessor :message
8843
+
8844
+ def initialize(**args)
8845
+ update!(**args)
8846
+ end
8847
+
8848
+ # Update properties of this object
8849
+ def update!(**args)
8850
+ @message = args[:message] if args.key?(:message)
8851
+ end
8852
+ end
8853
+
8854
+ # A DataStoreTool is a way to provide specifications needed to search a list of
8855
+ # data stores.
8856
+ class GoogleCloudDialogflowCxV3ToolDataStoreTool
8857
+ include Google::Apis::Core::Hashable
8858
+
8859
+ # Required. List of data stores to search.
8860
+ # Corresponds to the JSON property `dataStoreConnections`
8861
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3DataStoreConnection>]
8862
+ attr_accessor :data_store_connections
8863
+
8864
+ # A FallbackPrompt is a way to provide specifications for the Data Store
8865
+ # fallback prompt when generating responses.
8866
+ # Corresponds to the JSON property `fallbackPrompt`
8867
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolDataStoreToolFallbackPrompt]
8868
+ attr_accessor :fallback_prompt
8869
+
8870
+ def initialize(**args)
8871
+ update!(**args)
8872
+ end
8873
+
8874
+ # Update properties of this object
8875
+ def update!(**args)
8876
+ @data_store_connections = args[:data_store_connections] if args.key?(:data_store_connections)
8877
+ @fallback_prompt = args[:fallback_prompt] if args.key?(:fallback_prompt)
8878
+ end
8879
+ end
8880
+
8881
+ # A FallbackPrompt is a way to provide specifications for the Data Store
8882
+ # fallback prompt when generating responses.
8883
+ class GoogleCloudDialogflowCxV3ToolDataStoreToolFallbackPrompt
8884
+ include Google::Apis::Core::Hashable
8885
+
8886
+ def initialize(**args)
8887
+ update!(**args)
8888
+ end
8889
+
8890
+ # Update properties of this object
8891
+ def update!(**args)
8892
+ end
8893
+ end
8894
+
8895
+ # A Function tool describes the functions to be invoked on the client side.
8896
+ class GoogleCloudDialogflowCxV3ToolFunctionTool
8897
+ include Google::Apis::Core::Hashable
8898
+
8899
+ # Optional. The JSON schema is encapsulated in a google.protobuf.Struct to
8900
+ # describe the input of the function. This input is a JSON object that contains
8901
+ # the function's parameters as properties of the object.
8902
+ # Corresponds to the JSON property `inputSchema`
8903
+ # @return [Hash<String,Object>]
8904
+ attr_accessor :input_schema
8905
+
8906
+ # Optional. The JSON schema is encapsulated in a google.protobuf.Struct to
8907
+ # describe the output of the function. This output is a JSON object that
8908
+ # contains the function's parameters as properties of the object.
8909
+ # Corresponds to the JSON property `outputSchema`
8910
+ # @return [Hash<String,Object>]
8911
+ attr_accessor :output_schema
8912
+
8913
+ def initialize(**args)
8914
+ update!(**args)
8915
+ end
8916
+
8917
+ # Update properties of this object
8918
+ def update!(**args)
8919
+ @input_schema = args[:input_schema] if args.key?(:input_schema)
8920
+ @output_schema = args[:output_schema] if args.key?(:output_schema)
8921
+ end
8922
+ end
8923
+
8924
+ # An OpenAPI tool is a way to provide the Tool specifications in the Open API
8925
+ # schema format.
8926
+ class GoogleCloudDialogflowCxV3ToolOpenApiTool
8927
+ include Google::Apis::Core::Hashable
8928
+
8929
+ # Authentication information required for API calls
8930
+ # Corresponds to the JSON property `authentication`
8931
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolAuthentication]
8932
+ attr_accessor :authentication
8933
+
8934
+ # Configuration for tools using Service Directory.
8935
+ # Corresponds to the JSON property `serviceDirectoryConfig`
8936
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolServiceDirectoryConfig]
8937
+ attr_accessor :service_directory_config
8938
+
8939
+ # Required. The OpenAPI schema specified as a text.
8940
+ # Corresponds to the JSON property `textSchema`
8941
+ # @return [String]
8942
+ attr_accessor :text_schema
8943
+
8944
+ # The TLS configuration.
8945
+ # Corresponds to the JSON property `tlsConfig`
8946
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolTlsConfig]
8947
+ attr_accessor :tls_config
8948
+
8949
+ def initialize(**args)
8950
+ update!(**args)
8951
+ end
8952
+
8953
+ # Update properties of this object
8954
+ def update!(**args)
8955
+ @authentication = args[:authentication] if args.key?(:authentication)
8956
+ @service_directory_config = args[:service_directory_config] if args.key?(:service_directory_config)
8957
+ @text_schema = args[:text_schema] if args.key?(:text_schema)
8958
+ @tls_config = args[:tls_config] if args.key?(:tls_config)
8959
+ end
8960
+ end
8961
+
8962
+ # Configuration for tools using Service Directory.
8963
+ class GoogleCloudDialogflowCxV3ToolServiceDirectoryConfig
8964
+ include Google::Apis::Core::Hashable
8965
+
8966
+ # Required. The name of [Service Directory](https://cloud.google.com/service-
8967
+ # directory) service. Format: `projects//locations//namespaces//services/`. `
8968
+ # LocationID` of the service directory must be the same as the location of the
8969
+ # agent.
8970
+ # Corresponds to the JSON property `service`
8971
+ # @return [String]
8972
+ attr_accessor :service
8973
+
8974
+ def initialize(**args)
8975
+ update!(**args)
8976
+ end
8977
+
8978
+ # Update properties of this object
8979
+ def update!(**args)
8980
+ @service = args[:service] if args.key?(:service)
8981
+ end
8982
+ end
8983
+
8984
+ # The TLS configuration.
8985
+ class GoogleCloudDialogflowCxV3ToolTlsConfig
8986
+ include Google::Apis::Core::Hashable
8987
+
8988
+ # Required. Specifies a list of allowed custom CA certificates for HTTPS
8989
+ # verification.
8990
+ # Corresponds to the JSON property `caCerts`
8991
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolTlsConfigCaCert>]
8992
+ attr_accessor :ca_certs
8993
+
8994
+ def initialize(**args)
8995
+ update!(**args)
8996
+ end
8997
+
8998
+ # Update properties of this object
8999
+ def update!(**args)
9000
+ @ca_certs = args[:ca_certs] if args.key?(:ca_certs)
9001
+ end
9002
+ end
9003
+
9004
+ # The CA certificate.
9005
+ class GoogleCloudDialogflowCxV3ToolTlsConfigCaCert
9006
+ include Google::Apis::Core::Hashable
9007
+
9008
+ # Required. The allowed custom CA certificates (in DER format) for HTTPS
9009
+ # verification. This overrides the default SSL trust store. If this is empty or
9010
+ # unspecified, Dialogflow will use Google's default trust store to verify
9011
+ # certificates. N.B. Make sure the HTTPS server certificates are signed with "
9012
+ # subject alt name". For instance a certificate can be self-signed using the
9013
+ # following command: ``` openssl x509 -req -days 200 -in example.com.csr \ -
9014
+ # signkey example.com.key \ -out example.com.crt \ -extfile <(printf "\
9015
+ # nsubjectAltName='DNS:www.example.com'") ```
9016
+ # Corresponds to the JSON property `cert`
9017
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
9018
+ # @return [String]
9019
+ attr_accessor :cert
9020
+
9021
+ # Required. The name of the allowed custom CA certificates. This can be used to
9022
+ # disambiguate the custom CA certificates.
9023
+ # Corresponds to the JSON property `displayName`
9024
+ # @return [String]
9025
+ attr_accessor :display_name
9026
+
9027
+ def initialize(**args)
9028
+ update!(**args)
9029
+ end
9030
+
9031
+ # Update properties of this object
9032
+ def update!(**args)
9033
+ @cert = args[:cert] if args.key?(:cert)
9034
+ @display_name = args[:display_name] if args.key?(:display_name)
9035
+ end
9036
+ end
9037
+
9038
+ # Stores metadata of the invocation of an action supported by a tool.
9039
+ class GoogleCloudDialogflowCxV3ToolUse
9040
+ include Google::Apis::Core::Hashable
9041
+
9042
+ # Optional. Name of the action to be called during the tool use.
9043
+ # Corresponds to the JSON property `action`
9044
+ # @return [String]
9045
+ attr_accessor :action
9046
+
9047
+ # Output only. The display name of the tool.
9048
+ # Corresponds to the JSON property `displayName`
9049
+ # @return [String]
9050
+ attr_accessor :display_name
9051
+
9052
+ # Optional. A list of input parameters for the action.
9053
+ # Corresponds to the JSON property `inputActionParameters`
9054
+ # @return [Hash<String,Object>]
9055
+ attr_accessor :input_action_parameters
9056
+
9057
+ # Optional. A list of output parameters generated by the action.
9058
+ # Corresponds to the JSON property `outputActionParameters`
9059
+ # @return [Hash<String,Object>]
9060
+ attr_accessor :output_action_parameters
9061
+
9062
+ # Required. The tool that should be used. Format: `projects//locations//agents//
9063
+ # tools/`.
9064
+ # Corresponds to the JSON property `tool`
9065
+ # @return [String]
9066
+ attr_accessor :tool
9067
+
9068
+ def initialize(**args)
9069
+ update!(**args)
9070
+ end
9071
+
9072
+ # Update properties of this object
9073
+ def update!(**args)
9074
+ @action = args[:action] if args.key?(:action)
9075
+ @display_name = args[:display_name] if args.key?(:display_name)
9076
+ @input_action_parameters = args[:input_action_parameters] if args.key?(:input_action_parameters)
9077
+ @output_action_parameters = args[:output_action_parameters] if args.key?(:output_action_parameters)
9078
+ @tool = args[:tool] if args.key?(:tool)
9079
+ end
9080
+ end
9081
+
9082
+ # The request message for Flows.TrainFlow.
9083
+ class GoogleCloudDialogflowCxV3TrainFlowRequest
9084
+ include Google::Apis::Core::Hashable
9085
+
9086
+ def initialize(**args)
9087
+ update!(**args)
9088
+ end
9089
+
9090
+ # Update properties of this object
9091
+ def update!(**args)
9092
+ end
9093
+ end
9094
+
9095
+ # Transition coverage represents the percentage of all possible page transitions
9096
+ # (page-level transition routes and event handlers, excluding transition route
9097
+ # groups) present within any of a parent's test cases.
9098
+ class GoogleCloudDialogflowCxV3TransitionCoverage
9099
+ include Google::Apis::Core::Hashable
9100
+
9101
+ # The percent of transitions in the agent that are covered.
9102
+ # Corresponds to the JSON property `coverageScore`
9103
+ # @return [Float]
9104
+ attr_accessor :coverage_score
9105
+
9106
+ # The list of Transitions present in the agent.
9107
+ # Corresponds to the JSON property `transitions`
9108
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3TransitionCoverageTransition>]
9109
+ attr_accessor :transitions
9110
+
9111
+ def initialize(**args)
9112
+ update!(**args)
9113
+ end
9114
+
9115
+ # Update properties of this object
9116
+ def update!(**args)
9117
+ @coverage_score = args[:coverage_score] if args.key?(:coverage_score)
9118
+ @transitions = args[:transitions] if args.key?(:transitions)
9119
+ end
9120
+ end
9121
+
9122
+ # A transition in a page.
7772
9123
  class GoogleCloudDialogflowCxV3TransitionCoverageTransition
7773
9124
  include Google::Apis::Core::Hashable
7774
9125
 
@@ -8164,6 +9515,25 @@ module Google
8164
9515
  end
8165
9516
  end
8166
9517
 
9518
+ # UserUtterance represents one message sent by the customer.
9519
+ class GoogleCloudDialogflowCxV3UserUtterance
9520
+ include Google::Apis::Core::Hashable
9521
+
9522
+ # Required. Message content in text.
9523
+ # Corresponds to the JSON property `text`
9524
+ # @return [String]
9525
+ attr_accessor :text
9526
+
9527
+ def initialize(**args)
9528
+ update!(**args)
9529
+ end
9530
+
9531
+ # Update properties of this object
9532
+ def update!(**args)
9533
+ @text = args[:text] if args.key?(:text)
9534
+ end
9535
+ end
9536
+
8167
9537
  # The request message for Agents.ValidateAgent.
8168
9538
  class GoogleCloudDialogflowCxV3ValidateAgentRequest
8169
9539
  include Google::Apis::Core::Hashable