google-cloud-ces-v1 0.a → 0.1.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 (137) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +154 -8
  5. data/lib/google/cloud/ces/v1/agent_pb.rb +30 -0
  6. data/lib/google/cloud/ces/v1/agent_service/client.rb +5315 -0
  7. data/lib/google/cloud/ces/v1/agent_service/credentials.rb +48 -0
  8. data/lib/google/cloud/ces/v1/agent_service/operations.rb +841 -0
  9. data/lib/google/cloud/ces/v1/agent_service/paths.rb +424 -0
  10. data/lib/google/cloud/ces/v1/agent_service/rest/client.rb +4944 -0
  11. data/lib/google/cloud/ces/v1/agent_service/rest/operations.rb +925 -0
  12. data/lib/google/cloud/ces/v1/agent_service/rest/service_stub.rb +3028 -0
  13. data/lib/google/cloud/ces/v1/agent_service/rest.rb +55 -0
  14. data/lib/google/cloud/ces/v1/agent_service.rb +57 -0
  15. data/lib/google/cloud/ces/v1/agent_service_pb.rb +105 -0
  16. data/lib/google/cloud/ces/v1/agent_service_services_pb.rb +142 -0
  17. data/lib/google/cloud/ces/v1/agent_tool_pb.rb +24 -0
  18. data/lib/google/cloud/ces/v1/agent_transfers_pb.rb +29 -0
  19. data/lib/google/cloud/ces/v1/app_pb.rb +58 -0
  20. data/lib/google/cloud/ces/v1/app_version_pb.rb +32 -0
  21. data/lib/google/cloud/ces/v1/auth_pb.rb +34 -0
  22. data/lib/google/cloud/ces/v1/bigquery_export_pb.rb +23 -0
  23. data/lib/google/cloud/ces/v1/bindings_override.rb +75 -0
  24. data/lib/google/cloud/ces/v1/changelog_pb.rb +26 -0
  25. data/lib/google/cloud/ces/v1/client_function_pb.rb +24 -0
  26. data/lib/google/cloud/ces/v1/common_pb.rb +46 -0
  27. data/lib/google/cloud/ces/v1/connector_tool_pb.rb +27 -0
  28. data/lib/google/cloud/ces/v1/connector_toolset_pb.rb +25 -0
  29. data/lib/google/cloud/ces/v1/conversation_pb.rb +31 -0
  30. data/lib/google/cloud/ces/v1/data_store_pb.rb +27 -0
  31. data/lib/google/cloud/ces/v1/data_store_tool_pb.rb +40 -0
  32. data/lib/google/cloud/ces/v1/deployment_pb.rb +26 -0
  33. data/lib/google/cloud/ces/v1/example_pb.rb +34 -0
  34. data/lib/google/cloud/ces/v1/fakes_pb.rb +24 -0
  35. data/lib/google/cloud/ces/v1/file_search_tool_pb.rb +24 -0
  36. data/lib/google/cloud/ces/v1/google_search_tool_pb.rb +24 -0
  37. data/lib/google/cloud/ces/v1/guardrail_pb.rb +37 -0
  38. data/lib/google/cloud/ces/v1/mcp_tool_pb.rb +26 -0
  39. data/lib/google/cloud/ces/v1/mcp_toolset_pb.rb +25 -0
  40. data/lib/google/cloud/ces/v1/omnichannel_pb.rb +31 -0
  41. data/lib/google/cloud/ces/v1/omnichannel_service_pb.rb +27 -0
  42. data/lib/google/cloud/ces/v1/open_api_tool_pb.rb +25 -0
  43. data/lib/google/cloud/ces/v1/open_api_toolset_pb.rb +25 -0
  44. data/lib/google/cloud/ces/v1/python_function_pb.rb +23 -0
  45. data/lib/google/cloud/ces/v1/rest.rb +41 -0
  46. data/lib/google/cloud/ces/v1/schema_pb.rb +25 -0
  47. data/lib/google/cloud/ces/v1/search_suggestions_pb.rb +22 -0
  48. data/lib/google/cloud/ces/v1/security_settings_pb.rb +27 -0
  49. data/lib/google/cloud/ces/v1/session_service/client.rb +759 -0
  50. data/lib/google/cloud/ces/v1/session_service/credentials.rb +48 -0
  51. data/lib/google/cloud/ces/v1/session_service/paths.rb +117 -0
  52. data/lib/google/cloud/ces/v1/session_service/rest/client.rb +560 -0
  53. data/lib/google/cloud/ces/v1/session_service/rest/service_stub.rb +199 -0
  54. data/lib/google/cloud/ces/v1/session_service/rest.rb +53 -0
  55. data/lib/google/cloud/ces/v1/session_service.rb +55 -0
  56. data/lib/google/cloud/ces/v1/session_service_pb.rb +50 -0
  57. data/lib/google/cloud/ces/v1/session_service_services_pb.rb +119 -0
  58. data/lib/google/cloud/ces/v1/system_tool_pb.rb +23 -0
  59. data/lib/google/cloud/ces/v1/tool_pb.rb +38 -0
  60. data/lib/google/cloud/ces/v1/tool_service/client.rb +723 -0
  61. data/lib/google/cloud/ces/v1/tool_service/credentials.rb +48 -0
  62. data/lib/google/cloud/ces/v1/tool_service/paths.rb +94 -0
  63. data/lib/google/cloud/ces/v1/tool_service/rest/client.rb +667 -0
  64. data/lib/google/cloud/ces/v1/tool_service/rest/service_stub.rb +267 -0
  65. data/lib/google/cloud/ces/v1/tool_service/rest.rb +53 -0
  66. data/lib/google/cloud/ces/v1/tool_service.rb +55 -0
  67. data/lib/google/cloud/ces/v1/tool_service_pb.rb +35 -0
  68. data/lib/google/cloud/ces/v1/tool_service_services_pb.rb +50 -0
  69. data/lib/google/cloud/ces/v1/toolset_pb.rb +30 -0
  70. data/lib/google/cloud/ces/v1/toolset_tool_pb.rb +24 -0
  71. data/lib/google/cloud/ces/v1/version.rb +7 -2
  72. data/lib/google/cloud/ces/v1/widget_service/client.rb +501 -0
  73. data/lib/google/cloud/ces/v1/widget_service/credentials.rb +48 -0
  74. data/lib/google/cloud/ces/v1/widget_service/paths.rb +75 -0
  75. data/lib/google/cloud/ces/v1/widget_service/rest/client.rb +459 -0
  76. data/lib/google/cloud/ces/v1/widget_service/rest/service_stub.rb +143 -0
  77. data/lib/google/cloud/ces/v1/widget_service/rest.rb +53 -0
  78. data/lib/google/cloud/ces/v1/widget_service.rb +55 -0
  79. data/lib/google/cloud/ces/v1/widget_service_pb.rb +28 -0
  80. data/lib/google/cloud/ces/v1/widget_service_services_pb.rb +46 -0
  81. data/lib/google/cloud/ces/v1/widget_tool_pb.rb +29 -0
  82. data/lib/google/cloud/ces/v1.rb +48 -0
  83. data/lib/google-cloud-ces-v1.rb +21 -0
  84. data/proto_docs/README.md +4 -0
  85. data/proto_docs/google/api/client.rb +593 -0
  86. data/proto_docs/google/api/field_behavior.rb +85 -0
  87. data/proto_docs/google/api/launch_stage.rb +71 -0
  88. data/proto_docs/google/api/resource.rb +227 -0
  89. data/proto_docs/google/cloud/ces/v1/agent.rb +224 -0
  90. data/proto_docs/google/cloud/ces/v1/agent_service.rb +1250 -0
  91. data/proto_docs/google/cloud/ces/v1/agent_tool.rb +42 -0
  92. data/proto_docs/google/cloud/ces/v1/agent_transfers.rb +111 -0
  93. data/proto_docs/google/cloud/ces/v1/app.rb +685 -0
  94. data/proto_docs/google/cloud/ces/v1/app_version.rb +83 -0
  95. data/proto_docs/google/cloud/ces/v1/auth.rb +214 -0
  96. data/proto_docs/google/cloud/ces/v1/bigquery_export.rb +45 -0
  97. data/proto_docs/google/cloud/ces/v1/changelog.rb +73 -0
  98. data/proto_docs/google/cloud/ces/v1/client_function.rb +48 -0
  99. data/proto_docs/google/cloud/ces/v1/common.rb +375 -0
  100. data/proto_docs/google/cloud/ces/v1/connector_tool.rb +122 -0
  101. data/proto_docs/google/cloud/ces/v1/connector_toolset.rb +52 -0
  102. data/proto_docs/google/cloud/ces/v1/conversation.rb +152 -0
  103. data/proto_docs/google/cloud/ces/v1/data_store.rb +102 -0
  104. data/proto_docs/google/cloud/ces/v1/data_store_tool.rb +328 -0
  105. data/proto_docs/google/cloud/ces/v1/deployment.rb +62 -0
  106. data/proto_docs/google/cloud/ces/v1/example.rb +244 -0
  107. data/proto_docs/google/cloud/ces/v1/fakes.rb +55 -0
  108. data/proto_docs/google/cloud/ces/v1/file_search_tool.rb +60 -0
  109. data/proto_docs/google/cloud/ces/v1/google_search_tool.rb +76 -0
  110. data/proto_docs/google/cloud/ces/v1/guardrail.rb +324 -0
  111. data/proto_docs/google/cloud/ces/v1/mcp_tool.rb +85 -0
  112. data/proto_docs/google/cloud/ces/v1/mcp_toolset.rb +71 -0
  113. data/proto_docs/google/cloud/ces/v1/omnichannel.rb +163 -0
  114. data/proto_docs/google/cloud/ces/v1/omnichannel_service.rb +45 -0
  115. data/proto_docs/google/cloud/ces/v1/open_api_tool.rb +66 -0
  116. data/proto_docs/google/cloud/ces/v1/open_api_toolset.rb +57 -0
  117. data/proto_docs/google/cloud/ces/v1/python_function.rb +44 -0
  118. data/proto_docs/google/cloud/ces/v1/schema.rb +162 -0
  119. data/proto_docs/google/cloud/ces/v1/search_suggestions.rb +55 -0
  120. data/proto_docs/google/cloud/ces/v1/security_settings.rb +80 -0
  121. data/proto_docs/google/cloud/ces/v1/session_service.rb +464 -0
  122. data/proto_docs/google/cloud/ces/v1/system_tool.rb +38 -0
  123. data/proto_docs/google/cloud/ces/v1/tool.rb +126 -0
  124. data/proto_docs/google/cloud/ces/v1/tool_service.rb +168 -0
  125. data/proto_docs/google/cloud/ces/v1/toolset.rb +80 -0
  126. data/proto_docs/google/cloud/ces/v1/toolset_tool.rb +40 -0
  127. data/proto_docs/google/cloud/ces/v1/widget_service.rb +62 -0
  128. data/proto_docs/google/cloud/ces/v1/widget_tool.rb +146 -0
  129. data/proto_docs/google/longrunning/operations.rb +191 -0
  130. data/proto_docs/google/protobuf/any.rb +145 -0
  131. data/proto_docs/google/protobuf/duration.rb +98 -0
  132. data/proto_docs/google/protobuf/empty.rb +34 -0
  133. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  134. data/proto_docs/google/protobuf/struct.rb +108 -0
  135. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  136. data/proto_docs/google/rpc/status.rb +48 -0
  137. metadata +183 -9
@@ -0,0 +1,464 @@
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 V1
24
+ # InputAudioConfig configures how the CES agent should interpret the incoming
25
+ # audio data.
26
+ # @!attribute [rw] audio_encoding
27
+ # @return [::Google::Cloud::Ces::V1::AudioEncoding]
28
+ # Required. The encoding of the input audio data.
29
+ # @!attribute [rw] sample_rate_hertz
30
+ # @return [::Integer]
31
+ # Required. The sample rate (in Hertz) of the input audio data.
32
+ # @!attribute [rw] noise_suppression_level
33
+ # @return [::String]
34
+ # Optional. Whether to enable noise suppression on the input audio.
35
+ # Available values are "low", "moderate", "high", "very_high".
36
+ class InputAudioConfig
37
+ include ::Google::Protobuf::MessageExts
38
+ extend ::Google::Protobuf::MessageExts::ClassMethods
39
+ end
40
+
41
+ # OutputAudioConfig configures how the CES agent should synthesize outgoing
42
+ # audio responses.
43
+ # @!attribute [rw] audio_encoding
44
+ # @return [::Google::Cloud::Ces::V1::AudioEncoding]
45
+ # Required. The encoding of the output audio data.
46
+ # @!attribute [rw] sample_rate_hertz
47
+ # @return [::Integer]
48
+ # Required. The sample rate (in Hertz) of the output audio data.
49
+ class OutputAudioConfig
50
+ include ::Google::Protobuf::MessageExts
51
+ extend ::Google::Protobuf::MessageExts::ClassMethods
52
+ end
53
+
54
+ # The configuration for the session.
55
+ # @!attribute [rw] session
56
+ # @return [::String]
57
+ # Required. The unique identifier of the session.
58
+ # Format:
59
+ # `projects/{project}/locations/{location}/apps/{app}/sessions/{session}`
60
+ # @!attribute [rw] input_audio_config
61
+ # @return [::Google::Cloud::Ces::V1::InputAudioConfig]
62
+ # Optional. Configuration for processing the input audio.
63
+ # @!attribute [rw] output_audio_config
64
+ # @return [::Google::Cloud::Ces::V1::OutputAudioConfig]
65
+ # Optional. Configuration for generating the output audio.
66
+ # @!attribute [rw] historical_contexts
67
+ # @return [::Array<::Google::Cloud::Ces::V1::Message>]
68
+ # Optional. The historical context of the session, including user inputs,
69
+ # agent responses, and other messages. Typically, CES agent would manage
70
+ # session automatically so client doesn't need to explicitly populate this
71
+ # field. However, client can optionally override the historical contexts to
72
+ # force the session start from certain state.
73
+ # @!attribute [rw] entry_agent
74
+ # @return [::String]
75
+ # Optional. The entry agent to handle the session. If not specified, the
76
+ # session will be handled by the [root
77
+ # agent][google.cloud.ces.v1.App.root_agent] of the app. Format:
78
+ # `projects/{project}/locations/{location}/apps/{app}/agents/{agent}`
79
+ # @!attribute [rw] deployment
80
+ # @return [::String]
81
+ # Optional. The deployment of the app to use for the session.
82
+ # Format:
83
+ # `projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}`
84
+ # @!attribute [rw] time_zone
85
+ # @return [::String]
86
+ # Optional. The time zone of the user. If provided, the agent will use the
87
+ # time zone for date and time related variables. Otherwise, the agent will
88
+ # use the time zone specified in the App.time_zone_settings.
89
+ #
90
+ # The format is the IANA Time Zone Database time zone, e.g.
91
+ # "America/Los_Angeles".
92
+ # @!attribute [rw] use_tool_fakes
93
+ # @return [::Boolean]
94
+ # Optional. Whether to use tool fakes for the session.
95
+ # If this field is set, the agent will attempt use tool fakes instead of
96
+ # calling the real tools.
97
+ # @!attribute [rw] remote_dialogflow_query_parameters
98
+ # @return [::Google::Cloud::Ces::V1::SessionConfig::RemoteDialogflowQueryParameters]
99
+ # Optional.
100
+ # [QueryParameters](https://cloud.google.com/dialogflow/cx/docs/reference/rpc/google.cloud.dialogflow.cx.v3#queryparameters)
101
+ # to send to the remote
102
+ # [Dialogflow](https://cloud.google.com/dialogflow/cx/docs/concept/console-conversational-agents)
103
+ # agent when the session control is transferred to the remote agent.
104
+ # @!attribute [rw] enable_text_streaming
105
+ # @return [::Boolean]
106
+ # Optional. Whether to enable streaming text outputs from the model.
107
+ # By default, text outputs from the model are collected before sending to the
108
+ # client.
109
+ # NOTE: This is only supported for text (non-voice) sessions via
110
+ # {::Google::Cloud::Ces::V1::SessionService::Client#stream_run_session StreamRunSession} or
111
+ # {::Google::Cloud::Ces::V1::SessionService::Client#bidi_run_session BidiRunSession}.
112
+ class SessionConfig
113
+ include ::Google::Protobuf::MessageExts
114
+ extend ::Google::Protobuf::MessageExts::ClassMethods
115
+
116
+ # [QueryParameters](https://cloud.google.com/dialogflow/cx/docs/reference/rpc/google.cloud.dialogflow.cx.v3#queryparameters)
117
+ # to send to the remote
118
+ # [Dialogflow](https://cloud.google.com/dialogflow/cx/docs/concept/console-conversational-agents)
119
+ # agent when the session control is transferred to the remote agent.
120
+ # @!attribute [rw] webhook_headers
121
+ # @return [::Google::Protobuf::Map{::String => ::String}]
122
+ # Optional. The HTTP headers to be sent as webhook_headers in
123
+ # [QueryParameters](https://cloud.google.com/dialogflow/cx/docs/reference/rpc/google.cloud.dialogflow.cx.v3#queryparameters).
124
+ # @!attribute [rw] payload
125
+ # @return [::Google::Protobuf::Struct]
126
+ # Optional. The payload to be sent in
127
+ # [QueryParameters](https://cloud.google.com/dialogflow/cx/docs/reference/rpc/google.cloud.dialogflow.cx.v3#queryparameters).
128
+ # @!attribute [rw] end_user_metadata
129
+ # @return [::Google::Protobuf::Struct]
130
+ # Optional. The end user metadata to be sent in
131
+ # [QueryParameters](https://cloud.google.com/dialogflow/cx/docs/reference/rpc/google.cloud.dialogflow.cx.v3#queryparameters).
132
+ class RemoteDialogflowQueryParameters
133
+ include ::Google::Protobuf::MessageExts
134
+ extend ::Google::Protobuf::MessageExts::ClassMethods
135
+
136
+ # @!attribute [rw] key
137
+ # @return [::String]
138
+ # @!attribute [rw] value
139
+ # @return [::String]
140
+ class WebhookHeadersEntry
141
+ include ::Google::Protobuf::MessageExts
142
+ extend ::Google::Protobuf::MessageExts::ClassMethods
143
+ end
144
+ end
145
+ end
146
+
147
+ # Request for the client to execute the tools and return the execution results
148
+ # before continuing the session.
149
+ # @!attribute [rw] tool_calls
150
+ # @return [::Array<::Google::Cloud::Ces::V1::ToolCall>]
151
+ # Optional. The list of tool calls to execute.
152
+ class ToolCalls
153
+ include ::Google::Protobuf::MessageExts
154
+ extend ::Google::Protobuf::MessageExts::ClassMethods
155
+ end
156
+
157
+ # Execution results for the requested tool calls from the client.
158
+ # @!attribute [rw] tool_responses
159
+ # @return [::Array<::Google::Cloud::Ces::V1::ToolResponse>]
160
+ # Optional. The list of tool execution results.
161
+ class ToolResponses
162
+ include ::Google::Protobuf::MessageExts
163
+ extend ::Google::Protobuf::MessageExts::ClassMethods
164
+ end
165
+
166
+ # Citations associated with the agent response.
167
+ # @!attribute [rw] cited_chunks
168
+ # @return [::Array<::Google::Cloud::Ces::V1::Citations::CitedChunk>]
169
+ # List of cited pieces of information.
170
+ class Citations
171
+ include ::Google::Protobuf::MessageExts
172
+ extend ::Google::Protobuf::MessageExts::ClassMethods
173
+
174
+ # Piece of cited information.
175
+ # @!attribute [rw] uri
176
+ # @return [::String]
177
+ # URI used for citation.
178
+ # @!attribute [rw] title
179
+ # @return [::String]
180
+ # Title of the cited document.
181
+ # @!attribute [rw] text
182
+ # @return [::String]
183
+ # Text used for citation.
184
+ class CitedChunk
185
+ include ::Google::Protobuf::MessageExts
186
+ extend ::Google::Protobuf::MessageExts::ClassMethods
187
+ end
188
+ end
189
+
190
+ # Event input.
191
+ # @!attribute [rw] event
192
+ # @return [::String]
193
+ # Required. The name of the event.
194
+ class Event
195
+ include ::Google::Protobuf::MessageExts
196
+ extend ::Google::Protobuf::MessageExts::ClassMethods
197
+ end
198
+
199
+ # Input for the session.
200
+ # @!attribute [rw] text
201
+ # @return [::String]
202
+ # Optional. Text data from the end user.
203
+ #
204
+ # Note: The following fields are mutually exclusive: `text`, `dtmf`, `audio`, `tool_responses`, `image`, `blob`, `variables`, `event`. If a field in that set is populated, all other fields in the set will automatically be cleared.
205
+ # @!attribute [rw] dtmf
206
+ # @return [::String]
207
+ # Optional. DTMF digits from the end user.
208
+ #
209
+ # Note: The following fields are mutually exclusive: `dtmf`, `text`, `audio`, `tool_responses`, `image`, `blob`, `variables`, `event`. If a field in that set is populated, all other fields in the set will automatically be cleared.
210
+ # @!attribute [rw] audio
211
+ # @return [::String]
212
+ # Optional. Audio data from the end user.
213
+ #
214
+ # Note: The following fields are mutually exclusive: `audio`, `text`, `dtmf`, `tool_responses`, `image`, `blob`, `variables`, `event`. If a field in that set is populated, all other fields in the set will automatically be cleared.
215
+ # @!attribute [rw] tool_responses
216
+ # @return [::Google::Cloud::Ces::V1::ToolResponses]
217
+ # Optional. Execution results for the tool calls from the client.
218
+ #
219
+ # Note: The following fields are mutually exclusive: `tool_responses`, `text`, `dtmf`, `audio`, `image`, `blob`, `variables`, `event`. If a field in that set is populated, all other fields in the set will automatically be cleared.
220
+ # @!attribute [rw] image
221
+ # @return [::Google::Cloud::Ces::V1::Image]
222
+ # Optional. Image data from the end user.
223
+ #
224
+ # Note: The following fields are mutually exclusive: `image`, `text`, `dtmf`, `audio`, `tool_responses`, `blob`, `variables`, `event`. If a field in that set is populated, all other fields in the set will automatically be cleared.
225
+ # @!attribute [rw] blob
226
+ # @return [::Google::Cloud::Ces::V1::Blob]
227
+ # Optional. Blob data from the end user.
228
+ #
229
+ # Note: The following fields are mutually exclusive: `blob`, `text`, `dtmf`, `audio`, `tool_responses`, `image`, `variables`, `event`. If a field in that set is populated, all other fields in the set will automatically be cleared.
230
+ # @!attribute [rw] variables
231
+ # @return [::Google::Protobuf::Struct]
232
+ # Optional. Contextual variables for the session, keyed by name. Only
233
+ # variables declared in the app will be used by the CES agent.
234
+ #
235
+ # Unrecognized variables will still be sent to the [Dialogflow
236
+ # agent][Agent.RemoteDialogflowAgent] as additional session parameters.
237
+ #
238
+ # Note: The following fields are mutually exclusive: `variables`, `text`, `dtmf`, `audio`, `tool_responses`, `image`, `blob`, `event`. If a field in that set is populated, all other fields in the set will automatically be cleared.
239
+ # @!attribute [rw] event
240
+ # @return [::Google::Cloud::Ces::V1::Event]
241
+ # Optional. Event input.
242
+ #
243
+ # Note: The following fields are mutually exclusive: `event`, `text`, `dtmf`, `audio`, `tool_responses`, `image`, `blob`, `variables`. If a field in that set is populated, all other fields in the set will automatically be cleared.
244
+ # @!attribute [rw] will_continue
245
+ # @return [::Boolean]
246
+ # Optional. A flag to indicate if the current message is a fragment of a
247
+ # larger input in the bidi streaming session.
248
+ #
249
+ # When set to `true`, the agent defers processing until it receives a
250
+ # subsequent message where `will_continue` is `false`, or until the system
251
+ # detects an endpoint in the audio input.
252
+ #
253
+ # NOTE: This field does not apply to audio and DTMF inputs, as they are
254
+ # always processed automatically based on the endpointing signal.
255
+ class SessionInput
256
+ include ::Google::Protobuf::MessageExts
257
+ extend ::Google::Protobuf::MessageExts::ClassMethods
258
+ end
259
+
260
+ # Output for the session.
261
+ # @!attribute [rw] text
262
+ # @return [::String]
263
+ # Output text from the CES agent.
264
+ #
265
+ # Note: The following fields are mutually exclusive: `text`, `audio`, `tool_calls`, `citations`, `google_search_suggestions`, `end_session`, `payload`. If a field in that set is populated, all other fields in the set will automatically be cleared.
266
+ # @!attribute [rw] audio
267
+ # @return [::String]
268
+ # Output audio from the CES agent.
269
+ #
270
+ # Note: The following fields are mutually exclusive: `audio`, `text`, `tool_calls`, `citations`, `google_search_suggestions`, `end_session`, `payload`. If a field in that set is populated, all other fields in the set will automatically be cleared.
271
+ # @!attribute [rw] tool_calls
272
+ # @return [::Google::Cloud::Ces::V1::ToolCalls]
273
+ # Request for the client to execute the tools.
274
+ #
275
+ # Note: The following fields are mutually exclusive: `tool_calls`, `text`, `audio`, `citations`, `google_search_suggestions`, `end_session`, `payload`. If a field in that set is populated, all other fields in the set will automatically be cleared.
276
+ # @!attribute [rw] citations
277
+ # @return [::Google::Cloud::Ces::V1::Citations]
278
+ # Citations that provide the source information for the agent's generated
279
+ # text.
280
+ #
281
+ # Note: The following fields are mutually exclusive: `citations`, `text`, `audio`, `tool_calls`, `google_search_suggestions`, `end_session`, `payload`. If a field in that set is populated, all other fields in the set will automatically be cleared.
282
+ # @!attribute [rw] google_search_suggestions
283
+ # @return [::Google::Cloud::Ces::V1::GoogleSearchSuggestions]
284
+ # The suggestions returned from Google Search as a result of invoking the
285
+ # {::Google::Cloud::Ces::V1::GoogleSearchTool GoogleSearchTool}.
286
+ #
287
+ # Note: The following fields are mutually exclusive: `google_search_suggestions`, `text`, `audio`, `tool_calls`, `citations`, `end_session`, `payload`. If a field in that set is populated, all other fields in the set will automatically be cleared.
288
+ # @!attribute [rw] end_session
289
+ # @return [::Google::Cloud::Ces::V1::EndSession]
290
+ # Indicates the session has ended.
291
+ #
292
+ # Note: The following fields are mutually exclusive: `end_session`, `text`, `audio`, `tool_calls`, `citations`, `google_search_suggestions`, `payload`. If a field in that set is populated, all other fields in the set will automatically be cleared.
293
+ # @!attribute [rw] payload
294
+ # @return [::Google::Protobuf::Struct]
295
+ # Custom payload with structured output from the CES agent.
296
+ #
297
+ # Note: The following fields are mutually exclusive: `payload`, `text`, `audio`, `tool_calls`, `citations`, `google_search_suggestions`, `end_session`. If a field in that set is populated, all other fields in the set will automatically be cleared.
298
+ # @!attribute [rw] turn_index
299
+ # @return [::Integer]
300
+ # Indicates the sequential order of conversation turn to which this output
301
+ # belongs to, starting from 1.
302
+ # @!attribute [rw] turn_completed
303
+ # @return [::Boolean]
304
+ # If true, the CES agent has detected the end of the current conversation
305
+ # turn and will provide no further output for this turn.
306
+ # @!attribute [rw] diagnostic_info
307
+ # @return [::Google::Cloud::Ces::V1::SessionOutput::DiagnosticInfo]
308
+ # Optional. Diagnostic information contains execution details during the
309
+ # processing of the input. Only populated in the last SessionOutput (with
310
+ # `turn_completed=true`) for each turn.
311
+ class SessionOutput
312
+ include ::Google::Protobuf::MessageExts
313
+ extend ::Google::Protobuf::MessageExts::ClassMethods
314
+
315
+ # Contains execution details during the processing.
316
+ # @!attribute [rw] messages
317
+ # @return [::Array<::Google::Cloud::Ces::V1::Message>]
318
+ # List of the messages that happened during the processing.
319
+ # @!attribute [rw] root_span
320
+ # @return [::Google::Cloud::Ces::V1::Span]
321
+ # A trace of the entire request processing, represented as a root span.
322
+ # This span can contain nested child spans for specific operations.
323
+ class DiagnosticInfo
324
+ include ::Google::Protobuf::MessageExts
325
+ extend ::Google::Protobuf::MessageExts::ClassMethods
326
+ end
327
+ end
328
+
329
+ # Speech recognition result for the audio input.
330
+ # @!attribute [rw] transcript
331
+ # @return [::String]
332
+ # Optional. Concatenated user speech segments captured during the current
333
+ # turn.
334
+ class RecognitionResult
335
+ include ::Google::Protobuf::MessageExts
336
+ extend ::Google::Protobuf::MessageExts::ClassMethods
337
+ end
338
+
339
+ # Indicates the agent's audio response has been interrupted. The client should
340
+ # immediately stop any current audio playback (e.g., due to user barge-in or
341
+ # a new agent response being generated).
342
+ # @!attribute [rw] barge_in
343
+ # @return [::Boolean]
344
+ # Whether the interruption is caused by a user barge-in event.
345
+ class InterruptionSignal
346
+ include ::Google::Protobuf::MessageExts
347
+ extend ::Google::Protobuf::MessageExts::ClassMethods
348
+ end
349
+
350
+ # Indicates the session has terminated, due to either successful completion
351
+ # (e.g. user says "Good bye!" ) or an agent escalation.
352
+ #
353
+ # The agent will not process any further inputs after session is terminated and
354
+ # the client should half-close and disconnect after receiving all remaining
355
+ # responses from the agent.
356
+ # @!attribute [rw] metadata
357
+ # @return [::Google::Protobuf::Struct]
358
+ # Optional. Provides additional information about the end session signal,
359
+ # such as the reason for ending the session.
360
+ class EndSession
361
+ include ::Google::Protobuf::MessageExts
362
+ extend ::Google::Protobuf::MessageExts::ClassMethods
363
+ end
364
+
365
+ # Indicates that the server will disconnect soon and the client should
366
+ # half-close and restart the connection.
367
+ class GoAway
368
+ include ::Google::Protobuf::MessageExts
369
+ extend ::Google::Protobuf::MessageExts::ClassMethods
370
+ end
371
+
372
+ # Request message for
373
+ # {::Google::Cloud::Ces::V1::SessionService::Client#run_session SessionService.RunSession}.
374
+ # @!attribute [rw] config
375
+ # @return [::Google::Cloud::Ces::V1::SessionConfig]
376
+ # Required. The configuration for the session.
377
+ # @!attribute [rw] inputs
378
+ # @return [::Array<::Google::Cloud::Ces::V1::SessionInput>]
379
+ # Required. Inputs for the session.
380
+ class RunSessionRequest
381
+ include ::Google::Protobuf::MessageExts
382
+ extend ::Google::Protobuf::MessageExts::ClassMethods
383
+ end
384
+
385
+ # Response message for
386
+ # {::Google::Cloud::Ces::V1::SessionService::Client#run_session SessionService.RunSession}.
387
+ # @!attribute [rw] outputs
388
+ # @return [::Array<::Google::Cloud::Ces::V1::SessionOutput>]
389
+ # Outputs for the session.
390
+ class RunSessionResponse
391
+ include ::Google::Protobuf::MessageExts
392
+ extend ::Google::Protobuf::MessageExts::ClassMethods
393
+ end
394
+
395
+ # The top-level message sent by the client for the
396
+ # {::Google::Cloud::Ces::V1::SessionService::Client#bidi_run_session SessionService.BidiRunSession}
397
+ # method.
398
+ # @!attribute [rw] config
399
+ # @return [::Google::Cloud::Ces::V1::SessionConfig]
400
+ # Optional. The initial config message for the session.
401
+ #
402
+ # Note: The following fields are mutually exclusive: `config`, `realtime_input`. If a field in that set is populated, all other fields in the set will automatically be cleared.
403
+ # @!attribute [rw] realtime_input
404
+ # @return [::Google::Cloud::Ces::V1::SessionInput]
405
+ # Optional. Realtime input for the session.
406
+ #
407
+ # Note: The following fields are mutually exclusive: `realtime_input`, `config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
408
+ class BidiSessionClientMessage
409
+ include ::Google::Protobuf::MessageExts
410
+ extend ::Google::Protobuf::MessageExts::ClassMethods
411
+ end
412
+
413
+ # The top-level message returned from
414
+ # {::Google::Cloud::Ces::V1::SessionService::Client#bidi_run_session SessionService.BidiRunSession}
415
+ # method.
416
+ # @!attribute [rw] session_output
417
+ # @return [::Google::Cloud::Ces::V1::SessionOutput]
418
+ # Optional. Processing result from the CES agent.
419
+ #
420
+ # Note: The following fields are mutually exclusive: `session_output`, `recognition_result`, `interruption_signal`, `end_session`, `go_away`. If a field in that set is populated, all other fields in the set will automatically be cleared.
421
+ # @!attribute [rw] recognition_result
422
+ # @return [::Google::Cloud::Ces::V1::RecognitionResult]
423
+ # Optional. Realtime speech recognition result for the audio input.
424
+ #
425
+ # Note: The following fields are mutually exclusive: `recognition_result`, `session_output`, `interruption_signal`, `end_session`, `go_away`. If a field in that set is populated, all other fields in the set will automatically be cleared.
426
+ # @!attribute [rw] interruption_signal
427
+ # @return [::Google::Cloud::Ces::V1::InterruptionSignal]
428
+ # Optional. Indicates the agent's audio response has been interrupted.
429
+ #
430
+ # Note: The following fields are mutually exclusive: `interruption_signal`, `session_output`, `recognition_result`, `end_session`, `go_away`. If a field in that set is populated, all other fields in the set will automatically be cleared.
431
+ # @!attribute [rw] end_session
432
+ # @return [::Google::Cloud::Ces::V1::EndSession]
433
+ # Optional. Indicates that the session has ended.
434
+ #
435
+ # Note: The following fields are mutually exclusive: `end_session`, `session_output`, `recognition_result`, `interruption_signal`, `go_away`. If a field in that set is populated, all other fields in the set will automatically be cleared.
436
+ # @!attribute [rw] go_away
437
+ # @return [::Google::Cloud::Ces::V1::GoAway]
438
+ # Optional. Indicates that the server will disconnect soon and the client
439
+ # should half-close and restart the connection.
440
+ #
441
+ # Note: The following fields are mutually exclusive: `go_away`, `session_output`, `recognition_result`, `interruption_signal`, `end_session`. If a field in that set is populated, all other fields in the set will automatically be cleared.
442
+ class BidiSessionServerMessage
443
+ include ::Google::Protobuf::MessageExts
444
+ extend ::Google::Protobuf::MessageExts::ClassMethods
445
+ end
446
+
447
+ # AudioEncoding specifies the encoding format for audio data.
448
+ module AudioEncoding
449
+ # Unspecified audio encoding.
450
+ AUDIO_ENCODING_UNSPECIFIED = 0
451
+
452
+ # 16-bit linear PCM audio encoding.
453
+ LINEAR16 = 1
454
+
455
+ # 8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law.
456
+ MULAW = 2
457
+
458
+ # 8-bit samples that compand 14-bit audio samples using G.711 PCMU/A-law.
459
+ ALAW = 3
460
+ end
461
+ end
462
+ end
463
+ end
464
+ end
@@ -0,0 +1,38 @@
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 V1
24
+ # Pre-defined system tool.
25
+ # @!attribute [rw] name
26
+ # @return [::String]
27
+ # Required. The name of the system tool.
28
+ # @!attribute [r] description
29
+ # @return [::String]
30
+ # Output only. The description of the system tool.
31
+ class SystemTool
32
+ include ::Google::Protobuf::MessageExts
33
+ extend ::Google::Protobuf::MessageExts::ClassMethods
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,126 @@
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 V1
24
+ # A tool represents an action that the CES agent can take to achieve certain
25
+ # goals.
26
+ # @!attribute [rw] client_function
27
+ # @return [::Google::Cloud::Ces::V1::ClientFunction]
28
+ # Optional. The client function.
29
+ #
30
+ # Note: The following fields are mutually exclusive: `client_function`, `open_api_tool`, `google_search_tool`, `connector_tool`, `data_store_tool`, `python_function`, `mcp_tool`, `file_search_tool`, `system_tool`, `agent_tool`, `widget_tool`. If a field in that set is populated, all other fields in the set will automatically be cleared.
31
+ # @!attribute [rw] open_api_tool
32
+ # @return [::Google::Cloud::Ces::V1::OpenApiTool]
33
+ # Optional. The open API tool.
34
+ #
35
+ # Note: The following fields are mutually exclusive: `open_api_tool`, `client_function`, `google_search_tool`, `connector_tool`, `data_store_tool`, `python_function`, `mcp_tool`, `file_search_tool`, `system_tool`, `agent_tool`, `widget_tool`. If a field in that set is populated, all other fields in the set will automatically be cleared.
36
+ # @!attribute [rw] google_search_tool
37
+ # @return [::Google::Cloud::Ces::V1::GoogleSearchTool]
38
+ # Optional. The google search tool.
39
+ #
40
+ # Note: The following fields are mutually exclusive: `google_search_tool`, `client_function`, `open_api_tool`, `connector_tool`, `data_store_tool`, `python_function`, `mcp_tool`, `file_search_tool`, `system_tool`, `agent_tool`, `widget_tool`. If a field in that set is populated, all other fields in the set will automatically be cleared.
41
+ # @!attribute [rw] connector_tool
42
+ # @return [::Google::Cloud::Ces::V1::ConnectorTool]
43
+ # Optional. The Integration Connector tool.
44
+ #
45
+ # Note: The following fields are mutually exclusive: `connector_tool`, `client_function`, `open_api_tool`, `google_search_tool`, `data_store_tool`, `python_function`, `mcp_tool`, `file_search_tool`, `system_tool`, `agent_tool`, `widget_tool`. If a field in that set is populated, all other fields in the set will automatically be cleared.
46
+ # @!attribute [rw] data_store_tool
47
+ # @return [::Google::Cloud::Ces::V1::DataStoreTool]
48
+ # Optional. The data store tool.
49
+ #
50
+ # Note: The following fields are mutually exclusive: `data_store_tool`, `client_function`, `open_api_tool`, `google_search_tool`, `connector_tool`, `python_function`, `mcp_tool`, `file_search_tool`, `system_tool`, `agent_tool`, `widget_tool`. If a field in that set is populated, all other fields in the set will automatically be cleared.
51
+ # @!attribute [rw] python_function
52
+ # @return [::Google::Cloud::Ces::V1::PythonFunction]
53
+ # Optional. The python function tool.
54
+ #
55
+ # Note: The following fields are mutually exclusive: `python_function`, `client_function`, `open_api_tool`, `google_search_tool`, `connector_tool`, `data_store_tool`, `mcp_tool`, `file_search_tool`, `system_tool`, `agent_tool`, `widget_tool`. If a field in that set is populated, all other fields in the set will automatically be cleared.
56
+ # @!attribute [rw] mcp_tool
57
+ # @return [::Google::Cloud::Ces::V1::McpTool]
58
+ # Optional. The MCP tool. An MCP tool cannot be created or updated directly
59
+ # and is managed by the MCP toolset.
60
+ #
61
+ # Note: The following fields are mutually exclusive: `mcp_tool`, `client_function`, `open_api_tool`, `google_search_tool`, `connector_tool`, `data_store_tool`, `python_function`, `file_search_tool`, `system_tool`, `agent_tool`, `widget_tool`. If a field in that set is populated, all other fields in the set will automatically be cleared.
62
+ # @!attribute [rw] file_search_tool
63
+ # @return [::Google::Cloud::Ces::V1::FileSearchTool]
64
+ # Optional. The file search tool.
65
+ #
66
+ # Note: The following fields are mutually exclusive: `file_search_tool`, `client_function`, `open_api_tool`, `google_search_tool`, `connector_tool`, `data_store_tool`, `python_function`, `mcp_tool`, `system_tool`, `agent_tool`, `widget_tool`. If a field in that set is populated, all other fields in the set will automatically be cleared.
67
+ # @!attribute [rw] system_tool
68
+ # @return [::Google::Cloud::Ces::V1::SystemTool]
69
+ # Optional. The system tool.
70
+ #
71
+ # Note: The following fields are mutually exclusive: `system_tool`, `client_function`, `open_api_tool`, `google_search_tool`, `connector_tool`, `data_store_tool`, `python_function`, `mcp_tool`, `file_search_tool`, `agent_tool`, `widget_tool`. If a field in that set is populated, all other fields in the set will automatically be cleared.
72
+ # @!attribute [rw] agent_tool
73
+ # @return [::Google::Cloud::Ces::V1::AgentTool]
74
+ # Optional. The agent tool.
75
+ #
76
+ # Note: The following fields are mutually exclusive: `agent_tool`, `client_function`, `open_api_tool`, `google_search_tool`, `connector_tool`, `data_store_tool`, `python_function`, `mcp_tool`, `file_search_tool`, `system_tool`, `widget_tool`. If a field in that set is populated, all other fields in the set will automatically be cleared.
77
+ # @!attribute [rw] widget_tool
78
+ # @return [::Google::Cloud::Ces::V1::WidgetTool]
79
+ # Optional. The widget tool.
80
+ #
81
+ # Note: The following fields are mutually exclusive: `widget_tool`, `client_function`, `open_api_tool`, `google_search_tool`, `connector_tool`, `data_store_tool`, `python_function`, `mcp_tool`, `file_search_tool`, `system_tool`, `agent_tool`. If a field in that set is populated, all other fields in the set will automatically be cleared.
82
+ # @!attribute [rw] name
83
+ # @return [::String]
84
+ # Identifier. The resource name of the tool. Format:
85
+ #
86
+ # * `projects/{project}/locations/{location}/apps/{app}/tools/{tool}`
87
+ # for standalone tools.
88
+ # * `projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}/tools/{tool}`
89
+ # for tools retrieved from a toolset.
90
+ #
91
+ # These tools are dynamic and output-only; they cannot be referenced directly
92
+ # where a tool is expected.
93
+ # @!attribute [r] display_name
94
+ # @return [::String]
95
+ # Output only. The display name of the tool, derived based on the tool's
96
+ # type. For example, display name of a [ClientFunction][Tool.ClientFunction]
97
+ # is derived from its `name` property.
98
+ # @!attribute [rw] execution_type
99
+ # @return [::Google::Cloud::Ces::V1::ExecutionType]
100
+ # Optional. The execution type of the tool.
101
+ # @!attribute [r] create_time
102
+ # @return [::Google::Protobuf::Timestamp]
103
+ # Output only. Timestamp when the tool was created.
104
+ # @!attribute [r] update_time
105
+ # @return [::Google::Protobuf::Timestamp]
106
+ # Output only. Timestamp when the tool was last updated.
107
+ # @!attribute [rw] etag
108
+ # @return [::String]
109
+ # Etag used to ensure the object hasn't changed during a read-modify-write
110
+ # operation. If the etag is empty, the update will overwrite any concurrent
111
+ # changes.
112
+ # @!attribute [r] generated_summary
113
+ # @return [::String]
114
+ # Output only. If the tool is generated by the LLM assistant, this field
115
+ # contains a descriptive summary of the generation.
116
+ # @!attribute [rw] tool_fake_config
117
+ # @return [::Google::Cloud::Ces::V1::ToolFakeConfig]
118
+ # Optional. Configuration for tool behavior in fake mode.
119
+ class Tool
120
+ include ::Google::Protobuf::MessageExts
121
+ extend ::Google::Protobuf::MessageExts::ClassMethods
122
+ end
123
+ end
124
+ end
125
+ end
126
+ end