google-cloud-ces-v1beta 1.0.1 → 1.2.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.
Files changed (88) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/cloud/ces/v1beta/agent_card_pb.rb +3 -1
  3. data/lib/google/cloud/ces/v1beta/agent_pb.rb +3 -1
  4. data/lib/google/cloud/ces/v1beta/agent_service/client.rb +105 -1
  5. data/lib/google/cloud/ces/v1beta/agent_service/paths.rb +54 -11
  6. data/lib/google/cloud/ces/v1beta/agent_service/rest/client.rb +98 -1
  7. data/lib/google/cloud/ces/v1beta/agent_service/rest/service_stub.rb +62 -0
  8. data/lib/google/cloud/ces/v1beta/agent_service_pb.rb +3 -1
  9. data/lib/google/cloud/ces/v1beta/agent_service_services_pb.rb +2 -0
  10. data/lib/google/cloud/ces/v1beta/agent_tool_pb.rb +1 -1
  11. data/lib/google/cloud/ces/v1beta/agent_transfers_pb.rb +1 -1
  12. data/lib/google/cloud/ces/v1beta/app_pb.rb +6 -1
  13. data/lib/google/cloud/ces/v1beta/app_version_pb.rb +1 -1
  14. data/lib/google/cloud/ces/v1beta/assistant_service/client.rb +1023 -0
  15. data/lib/google/cloud/ces/v1beta/assistant_service/credentials.rb +48 -0
  16. data/lib/google/cloud/ces/v1beta/assistant_service/paths.rb +73 -0
  17. data/lib/google/cloud/ces/v1beta/assistant_service/rest/client.rb +946 -0
  18. data/lib/google/cloud/ces/v1beta/assistant_service/rest/service_stub.rb +450 -0
  19. data/lib/google/cloud/ces/v1beta/assistant_service/rest.rb +55 -0
  20. data/lib/google/cloud/ces/v1beta/assistant_service.rb +57 -0
  21. data/lib/google/cloud/ces/v1beta/assistant_service_pb.rb +49 -0
  22. data/lib/google/cloud/ces/v1beta/assistant_service_services_pb.rb +57 -0
  23. data/lib/google/cloud/ces/v1beta/auth_pb.rb +1 -1
  24. data/lib/google/cloud/ces/v1beta/bigquery_export_pb.rb +1 -1
  25. data/lib/google/cloud/ces/v1beta/changelog_pb.rb +1 -1
  26. data/lib/google/cloud/ces/v1beta/client_function_pb.rb +1 -1
  27. data/lib/google/cloud/ces/v1beta/common_pb.rb +4 -1
  28. data/lib/google/cloud/ces/v1beta/connector_tool_pb.rb +1 -1
  29. data/lib/google/cloud/ces/v1beta/connector_toolset_pb.rb +1 -1
  30. data/lib/google/cloud/ces/v1beta/conversation_pb.rb +1 -1
  31. data/lib/google/cloud/ces/v1beta/data_store_pb.rb +1 -1
  32. data/lib/google/cloud/ces/v1beta/data_store_tool_pb.rb +2 -1
  33. data/lib/google/cloud/ces/v1beta/deployment_pb.rb +3 -1
  34. data/lib/google/cloud/ces/v1beta/evaluation_metrics_config_pb.rb +1 -1
  35. data/lib/google/cloud/ces/v1beta/evaluation_pb.rb +2 -1
  36. data/lib/google/cloud/ces/v1beta/evaluation_service/client.rb +2 -2
  37. data/lib/google/cloud/ces/v1beta/evaluation_service/rest/client.rb +2 -2
  38. data/lib/google/cloud/ces/v1beta/evaluation_service_pb.rb +1 -1
  39. data/lib/google/cloud/ces/v1beta/example_pb.rb +1 -1
  40. data/lib/google/cloud/ces/v1beta/fakes_pb.rb +1 -1
  41. data/lib/google/cloud/ces/v1beta/file_context_pb.rb +1 -1
  42. data/lib/google/cloud/ces/v1beta/file_search_tool_pb.rb +1 -1
  43. data/lib/google/cloud/ces/v1beta/google_search_tool_pb.rb +1 -1
  44. data/lib/google/cloud/ces/v1beta/guardrail_pb.rb +4 -1
  45. data/lib/google/cloud/ces/v1beta/mcp_tool_pb.rb +1 -1
  46. data/lib/google/cloud/ces/v1beta/mcp_toolset_pb.rb +1 -1
  47. data/lib/google/cloud/ces/v1beta/mocks_pb.rb +1 -1
  48. data/lib/google/cloud/ces/v1beta/omnichannel_pb.rb +1 -1
  49. data/lib/google/cloud/ces/v1beta/omnichannel_service_pb.rb +1 -1
  50. data/lib/google/cloud/ces/v1beta/open_api_tool_pb.rb +1 -1
  51. data/lib/google/cloud/ces/v1beta/open_api_toolset_pb.rb +1 -1
  52. data/lib/google/cloud/ces/v1beta/python_function_pb.rb +1 -1
  53. data/lib/google/cloud/ces/v1beta/rest.rb +1 -0
  54. data/lib/google/cloud/ces/v1beta/schema_pb.rb +1 -1
  55. data/lib/google/cloud/ces/v1beta/security_settings_pb.rb +1 -1
  56. data/lib/google/cloud/ces/v1beta/session_service/client.rb +333 -0
  57. data/lib/google/cloud/ces/v1beta/session_service/paths.rb +40 -0
  58. data/lib/google/cloud/ces/v1beta/session_service/rest/client.rb +314 -0
  59. data/lib/google/cloud/ces/v1beta/session_service/rest/service_stub.rb +180 -0
  60. data/lib/google/cloud/ces/v1beta/session_service_pb.rb +33 -1
  61. data/lib/google/cloud/ces/v1beta/session_service_services_pb.rb +14 -0
  62. data/lib/google/cloud/ces/v1beta/system_tool_pb.rb +1 -1
  63. data/lib/google/cloud/ces/v1beta/tool_pb.rb +1 -1
  64. data/lib/google/cloud/ces/v1beta/tool_service_pb.rb +1 -1
  65. data/lib/google/cloud/ces/v1beta/toolset_pb.rb +1 -1
  66. data/lib/google/cloud/ces/v1beta/toolset_tool_pb.rb +1 -1
  67. data/lib/google/cloud/ces/v1beta/version.rb +1 -1
  68. data/lib/google/cloud/ces/v1beta/widget_service_pb.rb +1 -1
  69. data/lib/google/cloud/ces/v1beta/widget_tool_pb.rb +1 -1
  70. data/lib/google/cloud/ces/v1beta.rb +1 -0
  71. data/proto_docs/google/api/field_info.rb +88 -0
  72. data/proto_docs/google/cloud/ces/v1beta/agent.rb +18 -2
  73. data/proto_docs/google/cloud/ces/v1beta/agent_card.rb +91 -0
  74. data/proto_docs/google/cloud/ces/v1beta/agent_service.rb +40 -0
  75. data/proto_docs/google/cloud/ces/v1beta/app.rb +113 -4
  76. data/proto_docs/google/cloud/ces/v1beta/app_version.rb +3 -0
  77. data/proto_docs/google/cloud/ces/v1beta/assistant_service.rb +452 -0
  78. data/proto_docs/google/cloud/ces/v1beta/common.rb +44 -0
  79. data/proto_docs/google/cloud/ces/v1beta/conversation.rb +4 -0
  80. data/proto_docs/google/cloud/ces/v1beta/data_store_tool.rb +16 -0
  81. data/proto_docs/google/cloud/ces/v1beta/deployment.rb +43 -2
  82. data/proto_docs/google/cloud/ces/v1beta/evaluation.rb +21 -5
  83. data/proto_docs/google/cloud/ces/v1beta/example.rb +23 -0
  84. data/proto_docs/google/cloud/ces/v1beta/guardrail.rb +88 -6
  85. data/proto_docs/google/cloud/ces/v1beta/session_service.rb +749 -11
  86. data/proto_docs/google/cloud/ces/v1beta/tool.rb +4 -0
  87. data/proto_docs/google/protobuf/timestamp.rb +7 -6
  88. metadata +14 -3
@@ -130,6 +130,10 @@ module Google
130
130
  # @!attribute [r] validation_errors
131
131
  # @return [::Array<::String>]
132
132
  # Output only. Misconfigurations or warnings in the app.
133
+ # @!attribute [rw] dashboard_settings
134
+ # @return [::Google::Cloud::Ces::V1beta::DashboardSettings]
135
+ # Optional. App-specific dashboard settings for linking and configuring
136
+ # Contact Center Insights dashboards.
133
137
  class App
134
138
  include ::Google::Protobuf::MessageExts
135
139
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -179,6 +183,20 @@ module Google
179
183
  end
180
184
  end
181
185
 
186
+ # Settings for dashboards associated with the app, that show up in the
187
+ # Monitoring view.
188
+ # @!attribute [rw] default_dashboard
189
+ # @return [::String]
190
+ # Optional. The resource name of the default Contact Center Insights
191
+ # dashboard associated with the app. This is the dashboard that will be
192
+ # displayed when users navigate to the Monitoring view for the app.
193
+ #
194
+ # Format: `projects/{project}/locations/{location}/dashboards/{dashboard}`
195
+ class DashboardSettings
196
+ include ::Google::Protobuf::MessageExts
197
+ extend ::Google::Protobuf::MessageExts::ClassMethods
198
+ end
199
+
182
200
  # TimeZone settings of the app.
183
201
  # @!attribute [rw] time_zone
184
202
  # @return [::String]
@@ -200,8 +218,8 @@ module Google
200
218
  # `default_language_code`.
201
219
  # @!attribute [rw] enable_multilingual_support
202
220
  # @return [::Boolean]
203
- # Optional. Enables multilingual support. If true, agents in the app will use
204
- # pre-built instructions to improve handling of multilingual input.
221
+ # Optional. Enables multilingual support. If `true`, agents in the app will
222
+ # use pre-built instructions to improve handling of multilingual input.
205
223
  # @!attribute [rw] fallback_action
206
224
  # @deprecated This field is deprecated and may be removed in the next major version update.
207
225
  # @return [::String]
@@ -223,6 +241,79 @@ module Google
223
241
  extend ::Google::Protobuf::MessageExts::ClassMethods
224
242
  end
225
243
 
244
+ # Configuration for a custom voice sample used for voice cloning.
245
+ # @!attribute [rw] name
246
+ # @return [::String]
247
+ # Optional. The user-defined name for the custom voice sample.
248
+ # @!attribute [rw] voice_sample_gcs_uri
249
+ # @return [::String]
250
+ # Optional. The Cloud Storage URI to the audio sample for voice cloning. The
251
+ # audio sample should be a mono-channel, 24kHz WAV file.
252
+ # @!attribute [rw] consent_audio_gcs_uri
253
+ # @return [::String]
254
+ # Optional. Consent audio for voice cloning.
255
+ # @!attribute [rw] voice_instruction
256
+ # @return [::String]
257
+ # Optional. Natural language instructions for voice style, tone, pacing, or
258
+ # pronunciation.
259
+ # @!attribute [r] preview_audio_content
260
+ # @return [::String]
261
+ # Output only. Synthesized preview audio for custom voice, formatted as
262
+ # canonical WAV (LINEAR16, 24kHz, 16-bit, mono).
263
+ # @!attribute [rw] preview_text
264
+ # @return [::String]
265
+ # Optional. Text for synthesizing preview audio for custom voice.
266
+ # @!attribute [r] warnings
267
+ # @return [::Array<::Google::Cloud::Ces::V1beta::CustomVoiceSample::Warning>]
268
+ # Output only. Warning messages encountered during voice clone processing
269
+ # (e.g. low audio level).
270
+ # @!attribute [rw] voice_instruction_mode
271
+ # @return [::Google::Cloud::Ces::V1beta::CustomVoiceSample::VoiceInstructionMode]
272
+ # Optional. Instruction mode for the voice sample. If unspecified, defaults
273
+ # to NO_INSTRUCTION.
274
+ class CustomVoiceSample
275
+ include ::Google::Protobuf::MessageExts
276
+ extend ::Google::Protobuf::MessageExts::ClassMethods
277
+
278
+ # A warning message encountered during voice sample processing.
279
+ # @!attribute [r] message
280
+ # @return [::String]
281
+ # Output only. A human-readable description of the warning.
282
+ # @!attribute [r] type
283
+ # @return [::Google::Cloud::Ces::V1beta::CustomVoiceSample::Warning::WarningType]
284
+ # Output only. The type of the warning.
285
+ class Warning
286
+ include ::Google::Protobuf::MessageExts
287
+ extend ::Google::Protobuf::MessageExts::ClassMethods
288
+
289
+ # Type of warning encountered during voice sample processing.
290
+ module WarningType
291
+ # Unspecified warning type.
292
+ WARNING_TYPE_UNSPECIFIED = 0
293
+
294
+ # The audio level of the voice sample is too low (e.g. low RMS
295
+ # amplitude).
296
+ LOW_AUDIO_LEVEL = 1
297
+ end
298
+ end
299
+
300
+ # Instruction mode for the voice sample.
301
+ module VoiceInstructionMode
302
+ # Unspecified instruction mode. Defaults to NO_INSTRUCTION.
303
+ VOICE_INSTRUCTION_MODE_UNSPECIFIED = 0
304
+
305
+ # No voice instruction will be used.
306
+ NO_INSTRUCTION = 1
307
+
308
+ # Voice instruction will be automatically generated by AI from the audio
309
+ # sample.
310
+ GENERATE_INSTRUCTION = 2
311
+
312
+ # Custom voice instruction provided by the user.
313
+ CUSTOM_INSTRUCTION = 3
314
+ end
315
+ end
316
+
226
317
  # Configuration for how the input and output audio should be processed and
227
318
  # delivered.
228
319
  # @!attribute [rw] synthesize_speech_configs
@@ -249,6 +340,9 @@ module Google
249
340
  # @return [::Google::Cloud::Ces::V1beta::AmbientSoundConfig]
250
341
  # Optional. Configuration for the ambient sound to be played with the
251
342
  # synthesized agent response, to enhance the naturalness of the conversation.
343
+ # @!attribute [rw] custom_voice_samples
344
+ # @return [::Array<::Google::Cloud::Ces::V1beta::CustomVoiceSample>]
345
+ # Optional. Configures custom voice samples for voice cloning.
252
346
  class AudioProcessingConfig
253
347
  include ::Google::Protobuf::MessageExts
254
348
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -443,6 +537,20 @@ module Google
443
537
  # @return [::Google::Cloud::Ces::V1beta::MetricAnalysisSettings]
444
538
  # Optional. Settings to describe the conversation data collection behaviors
445
539
  # for the LLM analysis pipeline for the app.
540
+ # @!attribute [rw] required_recording_consent
541
+ # @return [::Boolean]
542
+ # Optional. Whether the app has to say what may be recorded before anything
543
+ # is kept.
544
+ #
545
+ # When true, a session starts with recording off and stays off until the
546
+ # client sends
547
+ # [SessionInput.recording_control][google.cloud.ces.v1main.SessionInput.recording_control],
548
+ # which then decides every turn from that point on. This covers audio
549
+ # recording as well as conversation history, BigQuery export and Cloud
550
+ # Logging.
551
+ #
552
+ # When `false`, the default, the settings above decide on their own and the
553
+ # client does not have to send anything.
446
554
  class LoggingSettings
447
555
  include ::Google::Protobuf::MessageExts
448
556
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -780,8 +888,9 @@ module Google
780
888
  # Configuration to instruct how sensitive data should be handled.
781
889
  # @!attribute [rw] enable_redaction
782
890
  # @return [::Boolean]
783
- # Optional. If true, redaction will be applied in various logging scenarios,
784
- # including conversation history, Cloud Logging and audio recording.
891
+ # Optional. If `true`, redaction will be applied in various logging
892
+ # scenarios, including conversation history, Cloud Logging and audio
893
+ # recording.
785
894
  # @!attribute [rw] inspect_template
786
895
  # @return [::String]
787
896
  # Optional. [DLP](https://cloud.google.com/dlp/docs) inspect template name to
@@ -65,6 +65,9 @@ module Google
65
65
  # @!attribute [r] create_time
66
66
  # @return [::Google::Protobuf::Timestamp]
67
67
  # Output only. Timestamp when the app version was created.
68
+ # @!attribute [r] update_time
69
+ # @return [::Google::Protobuf::Timestamp]
70
+ # Output only. Timestamp when the app version was last updated.
68
71
  # @!attribute [r] snapshot
69
72
  # @return [::Google::Cloud::Ces::V1beta::AppSnapshot]
70
73
  # Output only. The snapshot of the app when the version is created.
@@ -0,0 +1,452 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2026 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module Ces
23
+ module V1beta
24
+ # Request message for
25
+ # {::Google::Cloud::Ces::V1beta::AssistantService::Client#list_assistant_sessions AssistantService.ListAssistantSessions}.
26
+ # @!attribute [rw] parent
27
+ # @return [::String]
28
+ # Required. The app to list assistant sessions from.
29
+ # Format:
30
+ # `projects/{project}/locations/{location}/apps/{app}`
31
+ # @!attribute [rw] page_size
32
+ # @return [::Integer]
33
+ # Optional. Requested page size. Server may return fewer items than
34
+ # requested. If unspecified, server will pick an appropriate default.
35
+ # @!attribute [rw] page_token
36
+ # @return [::String]
37
+ # Optional. The
38
+ # {::Google::Cloud::Ces::V1beta::ListAssistantSessionsResponse#next_page_token next_page_token}
39
+ # value returned from a previous list
40
+ # {::Google::Cloud::Ces::V1beta::AssistantService::Client#list_assistant_sessions AssistantService.ListAssistantSessions}
41
+ # call.
42
+ # @!attribute [rw] filter
43
+ # @return [::String]
44
+ # Optional. Filter to be applied when listing the assistant sessions.
45
+ # See https://google.aip.dev/160 for more details.
46
+ class ListAssistantSessionsRequest
47
+ include ::Google::Protobuf::MessageExts
48
+ extend ::Google::Protobuf::MessageExts::ClassMethods
49
+ end
50
+
51
+ # Response message for
52
+ # {::Google::Cloud::Ces::V1beta::AssistantService::Client#list_assistant_sessions AssistantService.ListAssistantSessions}.
53
+ # @!attribute [rw] assistant_sessions
54
+ # @return [::Array<::Google::Cloud::Ces::V1beta::AssistantSession>]
55
+ # The list of assistant sessions.
56
+ # @!attribute [rw] next_page_token
57
+ # @return [::String]
58
+ # Optional. A token that can be sent as
59
+ # {::Google::Cloud::Ces::V1beta::ListAssistantSessionsRequest#page_token ListAssistantSessionsRequest.page_token}
60
+ # to retrieve the next page. Absence of this field indicates there are no
61
+ # subsequent pages.
62
+ class ListAssistantSessionsResponse
63
+ include ::Google::Protobuf::MessageExts
64
+ extend ::Google::Protobuf::MessageExts::ClassMethods
65
+ end
66
+
67
+ # Request message for
68
+ # {::Google::Cloud::Ces::V1beta::AssistantService::Client#get_assistant_session AssistantService.GetAssistantSession}.
69
+ # @!attribute [rw] name
70
+ # @return [::String]
71
+ # Required. The name of the assistant session to retrieve.
72
+ # Format:
73
+ # `projects/{project}/locations/{location}/apps/{app}/assistantSessions/{assistant_session}`
74
+ class GetAssistantSessionRequest
75
+ include ::Google::Protobuf::MessageExts
76
+ extend ::Google::Protobuf::MessageExts::ClassMethods
77
+ end
78
+
79
+ # Request message for
80
+ # {::Google::Cloud::Ces::V1beta::AssistantService::Client#create_assistant_session AssistantService.CreateAssistantSession}.
81
+ # @!attribute [rw] parent
82
+ # @return [::String]
83
+ # Required. The app to create the assistant session in
84
+ # Format:
85
+ # `projects/{project}/locations/{location}/apps/{app}`
86
+ # @!attribute [rw] assistant_session_id
87
+ # @return [::String]
88
+ # Optional. The ID to use for the assistant session, which will become the
89
+ # final component of the assistant session's resource name. If not provided,
90
+ # a unique ID will be automatically assigned for the assistant session.
91
+ # @!attribute [rw] assistant_session_messages
92
+ # @return [::Array<::Google::Cloud::Ces::V1beta::AssistantMessage>]
93
+ # Optional. The messages to seed the assistant session with.
94
+ class CreateAssistantSessionRequest
95
+ include ::Google::Protobuf::MessageExts
96
+ extend ::Google::Protobuf::MessageExts::ClassMethods
97
+ end
98
+
99
+ # Request message for
100
+ # {::Google::Cloud::Ces::V1beta::AssistantService::Client#delete_assistant_session AssistantService.DeleteAssistantSession}.
101
+ # @!attribute [rw] name
102
+ # @return [::String]
103
+ # Required. The name of the assistant session to delete.
104
+ # Format:
105
+ # `projects/{project}/locations/{location}/apps/{app}/assistantSessions/{assistant_session}`
106
+ class DeleteAssistantSessionRequest
107
+ include ::Google::Protobuf::MessageExts
108
+ extend ::Google::Protobuf::MessageExts::ClassMethods
109
+ end
110
+
111
+ # Request message for
112
+ # {::Google::Cloud::Ces::V1beta::AssistantService::Client#run_assistant AssistantService.RunAssistant}.
113
+ # @!attribute [rw] app
114
+ # @return [::String]
115
+ # Required. The app to run assistant for.
116
+ # Format:
117
+ # `projects/{project}/locations/{location}/apps/{app}`
118
+ # @!attribute [rw] assistant_session
119
+ # @return [::String]
120
+ # Required. The assistant session to be used to run the assistant.
121
+ # Format:
122
+ # `projects/{project}/locations/{location}/apps/{app}/assistantSessions/{assistant_session}`
123
+ # @!attribute [rw] message
124
+ # @return [::Google::Cloud::Ces::V1beta::AssistantMessage]
125
+ # Required. The message to send to the assistant agent.
126
+ # @!attribute [rw] interaction_type
127
+ # @return [::Google::Cloud::Ces::V1beta::RunAssistantRequest::InteractionType]
128
+ # Optional. Different interaction types for the assistant message.
129
+ class RunAssistantRequest
130
+ include ::Google::Protobuf::MessageExts
131
+ extend ::Google::Protobuf::MessageExts::ClassMethods
132
+
133
+ # The type of interaction for the message sent to the assistant.
134
+ module InteractionType
135
+ # The default value. This value is used if the type is not specified.
136
+ INTERACTION_TYPE_UNSPECIFIED = 0
137
+
138
+ # The message is a user input. User input is provided in the chunk list.
139
+ NEW_MESSAGE = 1
140
+
141
+ # The message is for polling the state of the assistant session.
142
+ POLL = 2
143
+
144
+ # The message is to dismiss the assistant session pending review. This will
145
+ # change the state of the assistant session to idle.
146
+ DISMISS = 3
147
+ end
148
+ end
149
+
150
+ # Response message for
151
+ # {::Google::Cloud::Ces::V1beta::AssistantService::Client#run_assistant AssistantService.RunAssistant}.
152
+ # @!attribute [rw] output
153
+ # @return [::Google::Cloud::Ces::V1beta::AssistantOutput]
154
+ # Required. The output from the assistant agent.
155
+ # @!attribute [r] state
156
+ # @return [::Google::Cloud::Ces::V1beta::AssistantSessionState]
157
+ # Output only. The status of the assistant session.
158
+ class RunAssistantResponse
159
+ include ::Google::Protobuf::MessageExts
160
+ extend ::Google::Protobuf::MessageExts::ClassMethods
161
+ end
162
+
163
+ # An assistant session represents a conversation between a user and the
164
+ # assistant agent.
165
+ # @!attribute [rw] name
166
+ # @return [::String]
167
+ # Required. Identifier. The unique identifier of the session.
168
+ # Format:
169
+ # `projects/{project}/locations/{location}/apps/{app}/assistantSessions/{session}`
170
+ # @!attribute [r] requestor
171
+ # @return [::String]
172
+ # Output only. The user who initiated the session.
173
+ # @!attribute [rw] messages
174
+ # @return [::Array<::Google::Cloud::Ces::V1beta::AssistantMessage>]
175
+ # Optional. History of messages in the session.
176
+ # @!attribute [r] state
177
+ # @return [::Google::Cloud::Ces::V1beta::AssistantSessionState]
178
+ # Output only. The status of the assistant session.
179
+ # @!attribute [r] create_time
180
+ # @return [::Google::Protobuf::Timestamp]
181
+ # Output only. The time the assistant session was created.
182
+ # @!attribute [r] update_time
183
+ # @return [::Google::Protobuf::Timestamp]
184
+ # Output only. The time the assistant session was last updated.
185
+ # @!attribute [r] user_response_suggestions
186
+ # @return [::Google::Cloud::Ces::V1beta::UserResponseSuggestions]
187
+ # Output only. Suggested user responses from the assistant agent.
188
+ # @!attribute [rw] display_name
189
+ # @return [::String]
190
+ # Optional. The display name of the assistant session.
191
+ # @!attribute [r] artifacts
192
+ # @return [::Array<::Google::Cloud::Ces::V1beta::AssistantSessionArtifact>]
193
+ # Output only. Document artifacts (e.g. generated TDDs in markdown) produced
194
+ # by the assistant in this session. Pointers only; the file content lives in
195
+ # the customer's Cloud Storage bucket.
196
+ # @!attribute [r] session_checkpoint
197
+ # @return [::Google::Cloud::Ces::V1beta::SessionCheckpoint]
198
+ # Output only. Session checkpoint containing user intent and rolling history
199
+ # summary.
200
+ # @!attribute [r] active_turn
201
+ # @return [::Google::Cloud::Ces::V1beta::ActiveTurnInfo]
202
+ # Output only. Attachment info for this session's currently running turn.
203
+ # Unset when no turn is running.
204
+ class AssistantSession
205
+ include ::Google::Protobuf::MessageExts
206
+ extend ::Google::Protobuf::MessageExts::ClassMethods
207
+ end
208
+
209
+ # Live-attachment info for a session turn that is currently running,
210
+ # disconnected from its client, or parked for pickup by another server task.
211
+ # @!attribute [rw] turn_id
212
+ # @return [::String]
213
+ # Identifies the turn; echoed by resume snapshots on the streaming API.
214
+ # @!attribute [rw] status
215
+ # @return [::Google::Cloud::Ces::V1beta::ActiveTurnInfo::Status]
216
+ # Current attachment status.
217
+ # @!attribute [r] start_time
218
+ # @return [::Google::Protobuf::Timestamp]
219
+ # Output only. When the turn started.
220
+ # @!attribute [r] last_progress_time
221
+ # @return [::Google::Protobuf::Timestamp]
222
+ # Output only. When the turn last persisted progress.
223
+ # @!attribute [r] orphan_deadline_time
224
+ # @return [::Google::Protobuf::Timestamp]
225
+ # Output only. When the turn will be wound down if no client attaches.
226
+ class ActiveTurnInfo
227
+ include ::Google::Protobuf::MessageExts
228
+ extend ::Google::Protobuf::MessageExts::ClassMethods
229
+
230
+ # How the running turn currently relates to clients and server tasks.
231
+ module Status
232
+ # Unspecified.
233
+ STATUS_UNSPECIFIED = 0
234
+
235
+ # The turn is executing with at least one client attached.
236
+ RUNNING = 1
237
+
238
+ # The turn is executing with no client attached.
239
+ DISCONNECTED = 2
240
+
241
+ # The turn is parked for pickup: the next attach continues it.
242
+ RESUMING = 3
243
+
244
+ # The turn's server lease has lapsed and no task is driving it; the next
245
+ # read seals it to a committed partial. Not attachable.
246
+ ABANDONED = 4
247
+ end
248
+ end
249
+
250
+ # A document artifact generated by the assistant within a session, stored as
251
+ # a file in the customer's Cloud Storage bucket.
252
+ # @!attribute [r] id
253
+ # @return [::String]
254
+ # Output only. The unique identifier of the artifact within the session.
255
+ # @!attribute [r] display_name
256
+ # @return [::String]
257
+ # Output only. The file name shown to the user, e.g. "hotel_booking_tdd.md".
258
+ # @!attribute [r] gcs_uri
259
+ # @return [::String]
260
+ # Output only. The Cloud Storage object holding the artifact content.
261
+ # Example:
262
+ # "gs://\\{project}-agent-assist-artifacts/agent-assist-generated/1_tdd.md"
263
+ # @!attribute [r] mime_type
264
+ # @return [::String]
265
+ # Output only. The IANA media type of the artifact content, e.g.
266
+ # "text/markdown".
267
+ # @!attribute [r] create_time
268
+ # @return [::Google::Protobuf::Timestamp]
269
+ # Output only. When the artifact was persisted.
270
+ # @!attribute [r] turn_index
271
+ # @return [::Integer]
272
+ # Output only. Index of the message in [AssistantSession.messages] whose turn
273
+ # produced the artifact, for placing the artifact chip when history is
274
+ # restored.
275
+ class AssistantSessionArtifact
276
+ include ::Google::Protobuf::MessageExts
277
+ extend ::Google::Protobuf::MessageExts::ClassMethods
278
+ end
279
+
280
+ # A chunk of data in an assistant message.
281
+ # @!attribute [rw] text
282
+ # @return [::String]
283
+ # Optional. Text data.
284
+ #
285
+ # Note: The following fields are mutually exclusive: `text`, `thought`, `payload`, `typed_payload`. If a field in that set is populated, all other fields in the set will automatically be cleared.
286
+ # @!attribute [rw] thought
287
+ # @return [::String]
288
+ # Optional. Thought generated by the model.
289
+ #
290
+ # Note: The following fields are mutually exclusive: `thought`, `text`, `payload`, `typed_payload`. If a field in that set is populated, all other fields in the set will automatically be cleared.
291
+ # @!attribute [rw] payload
292
+ # @return [::Google::Protobuf::Struct]
293
+ # Optional. Payload which contains structured responses like the quality
294
+ # report, agent version name, suggested responses etc.
295
+ #
296
+ # Note: The following fields are mutually exclusive: `payload`, `text`, `thought`, `typed_payload`. If a field in that set is populated, all other fields in the set will automatically be cleared.
297
+ # @!attribute [rw] typed_payload
298
+ # @return [::Google::Cloud::Ces::V1beta::TypedPayload]
299
+ # Optional. Typed payload which contains structured responses.
300
+ #
301
+ # Note: The following fields are mutually exclusive: `typed_payload`, `text`, `thought`, `payload`. If a field in that set is populated, all other fields in the set will automatically be cleared.
302
+ # @!attribute [rw] create_time
303
+ # @return [::Google::Protobuf::Timestamp]
304
+ # Optional. Timestamp when the chunk was created or emitted.
305
+ class AssistantChunk
306
+ include ::Google::Protobuf::MessageExts
307
+ extend ::Google::Protobuf::MessageExts::ClassMethods
308
+ end
309
+
310
+ # The output from the assistant agent.
311
+ # @!attribute [rw] message
312
+ # @return [::Google::Cloud::Ces::V1beta::AssistantMessage]
313
+ # Required. The response from the assistant agent.
314
+ # @!attribute [r] user_response_suggestions
315
+ # @return [::Google::Cloud::Ces::V1beta::UserResponseSuggestions]
316
+ # Output only. Suggested user responses from the assistant agent.
317
+ class AssistantOutput
318
+ include ::Google::Protobuf::MessageExts
319
+ extend ::Google::Protobuf::MessageExts::ClassMethods
320
+ end
321
+
322
+ # A message in an assistant session.
323
+ # @!attribute [rw] role
324
+ # @return [::String]
325
+ # Required. Role within the conversation "user" or "model".
326
+ # @!attribute [rw] chunks
327
+ # @return [::Array<::Google::Cloud::Ces::V1beta::AssistantChunk>]
328
+ # Optional. Content of the message as chunks.
329
+ # @!attribute [rw] event_time
330
+ # @return [::Google::Protobuf::Timestamp]
331
+ # Required. Timestamp when the message was sent or received.
332
+ # @!attribute [rw] attached_gcs_uris
333
+ # @return [::Array<::String>]
334
+ # Optional. Cloud Storage URIs for files uploaded by the user during this
335
+ # turn. This allows attachments to be persisted and rendered in the session
336
+ # history UI. Example: "gs://cxas-transient-uploads/uuid/prd.pdf"
337
+ class AssistantMessage
338
+ include ::Google::Protobuf::MessageExts
339
+ extend ::Google::Protobuf::MessageExts::ClassMethods
340
+ end
341
+
342
+ # Payload with a type.
343
+ # @!attribute [rw] display_name
344
+ # @return [::String]
345
+ # Required. The display name of the payload.
346
+ # @!attribute [rw] type
347
+ # @return [::String]
348
+ # Required. The type of the payload.
349
+ # @!attribute [rw] value
350
+ # @return [::Google::Protobuf::Struct]
351
+ # Required. The value of the payload.
352
+ # @!attribute [rw] metadata
353
+ # @return [::Google::Protobuf::Struct]
354
+ # Optional. The metadata of the payload.
355
+ class TypedPayload
356
+ include ::Google::Protobuf::MessageExts
357
+ extend ::Google::Protobuf::MessageExts::ClassMethods
358
+ end
359
+
360
+ # Suggested user responses from the assistant agent.
361
+ # @!attribute [rw] suggestions
362
+ # @return [::Array<::String>]
363
+ # Required. The assistant suggested user responses. These are suggestions for
364
+ # the user on how to interact with the assistant.
365
+ class UserResponseSuggestions
366
+ include ::Google::Protobuf::MessageExts
367
+ extend ::Google::Protobuf::MessageExts::ClassMethods
368
+ end
369
+
370
+ # Request message for
371
+ # {::Google::Cloud::Ces::V1beta::AssistantService::Client#chat_ai_assistant AssistantService.ChatAiAssistant}.
372
+ # @!attribute [rw] app
373
+ # @return [::String]
374
+ # Required. The app to run assistant for.
375
+ # Format:
376
+ # `projects/{project}/locations/{location}/apps/{app}`
377
+ # @!attribute [rw] assistant_session
378
+ # @return [::String]
379
+ # Required. The assistant session to be used to run the assistant.
380
+ # Format:
381
+ # `projects/{project}/locations/{location}/apps/{app}/assistantSessions/{assistant_session}`
382
+ # @!attribute [rw] message
383
+ # @return [::String]
384
+ # Required. The message to send to the assistant agent.
385
+ # @!attribute [rw] attached_gcs_uris
386
+ # @return [::Array<::String>]
387
+ # Optional. Cloud Storage URIs for files uploaded by the user during this
388
+ # turn. Example: "gs://cxas-transient-uploads/uuid/prd.pdf"
389
+ # @!attribute [rw] context_token
390
+ # @return [::String]
391
+ # Optional. Opaque onboarding context token returned by
392
+ # {::Google::Cloud::Ces::V1beta::SessionService::Client#generate_onboarding_suggestions SessionService.GenerateOnboardingSuggestions}.
393
+ # When set and still fresh, the server reuses the onboarding snapshot
394
+ # computed for the zero state instead of recomputing it for the first
395
+ # conversation turn.
396
+ class ChatAiAssistantRequest
397
+ include ::Google::Protobuf::MessageExts
398
+ extend ::Google::Protobuf::MessageExts::ClassMethods
399
+ end
400
+
401
+ # Response message for
402
+ # {::Google::Cloud::Ces::V1beta::AssistantService::Client#chat_ai_assistant AssistantService.ChatAiAssistant}.
403
+ # @!attribute [rw] text_chunk
404
+ # @return [::String]
405
+ # Text Token (for streaming Gemini responses word-by-word)
406
+ #
407
+ # Note: The following fields are mutually exclusive: `text_chunk`, `status_message`, `session_checkpoint`. If a field in that set is populated, all other fields in the set will automatically be cleared.
408
+ # @!attribute [rw] status_message
409
+ # @return [::String]
410
+ # Simple status update
411
+ #
412
+ # Note: The following fields are mutually exclusive: `status_message`, `text_chunk`, `session_checkpoint`. If a field in that set is populated, all other fields in the set will automatically be cleared.
413
+ # @!attribute [rw] session_checkpoint
414
+ # @return [::Google::Cloud::Ces::V1beta::SessionCheckpoint]
415
+ # Session checkpoint/compaction recap event containing user intent and
416
+ # rolling summary.
417
+ #
418
+ # Note: The following fields are mutually exclusive: `session_checkpoint`, `text_chunk`, `status_message`. If a field in that set is populated, all other fields in the set will automatically be cleared.
419
+ # @!attribute [rw] event_id
420
+ # @return [::String]
421
+ # Unique identifier for the event.
422
+ # @!attribute [rw] event_time
423
+ # @return [::Google::Protobuf::Timestamp]
424
+ # Timestamp when the event occurred.
425
+ # @!attribute [rw] ui_event
426
+ # @return [::Google::Cloud::Ces::V1beta::UiEvent]
427
+ # Optional. UI event payload.
428
+ class ChatAiAssistantResponse
429
+ include ::Google::Protobuf::MessageExts
430
+ extend ::Google::Protobuf::MessageExts::ClassMethods
431
+ end
432
+
433
+ # The status of the assistant session.
434
+ module AssistantSessionState
435
+ # The default value. This value is used if the status is not specified.
436
+ ASSISTANT_SESSION_STATE_UNSPECIFIED = 0
437
+
438
+ # The assistant agent is processing the request as a long running task.
439
+ PROCESSING = 1
440
+
441
+ # The assistant agent is idle and does not have any pending requests or
442
+ # response.
443
+ IDLE = 2
444
+
445
+ # The assistant agent is done processing a long running task and has a
446
+ # response ready for the user.
447
+ PENDING_REVIEW = 3
448
+ end
449
+ end
450
+ end
451
+ end
452
+ end