google-cloud-ces-v1beta 0.3.0 → 0.4.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.
@@ -0,0 +1,463 @@
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 Api
22
+ # Specifies the routing information that should be sent along with the request
23
+ # in the form of routing header.
24
+ # **NOTE:** All service configuration rules follow the "last one wins" order.
25
+ #
26
+ # The examples below will apply to an RPC which has the following request type:
27
+ #
28
+ # Message Definition:
29
+ #
30
+ # message Request {
31
+ # // The name of the Table
32
+ # // Values can be of the following formats:
33
+ # // - `projects/<project>/tables/<table>`
34
+ # // - `projects/<project>/instances/<instance>/tables/<table>`
35
+ # // - `region/<region>/zones/<zone>/tables/<table>`
36
+ # string table_name = 1;
37
+ #
38
+ # // This value specifies routing for replication.
39
+ # // It can be in the following formats:
40
+ # // - `profiles/<profile_id>`
41
+ # // - a legacy `profile_id` that can be any string
42
+ # string app_profile_id = 2;
43
+ # }
44
+ #
45
+ # Example message:
46
+ #
47
+ # {
48
+ # table_name: projects/proj_foo/instances/instance_bar/table/table_baz,
49
+ # app_profile_id: profiles/prof_qux
50
+ # }
51
+ #
52
+ # The routing header consists of one or multiple key-value pairs. The order of
53
+ # the key-value pairs is undefined, the order of the `routing_parameters` in
54
+ # the `RoutingRule` only matters for the evaluation order of the path
55
+ # templates when `field` is the same. See the examples below for more details.
56
+ #
57
+ # Every key and value in the routing header must be percent-encoded,
58
+ # and joined together in the following format: `key1=value1&key2=value2`.
59
+ # The examples below skip the percent-encoding for readability.
60
+ #
61
+ # Example 1
62
+ #
63
+ # Extracting a field from the request to put into the routing header
64
+ # unchanged, with the key equal to the field name.
65
+ #
66
+ # annotation:
67
+ #
68
+ # option (google.api.routing) = {
69
+ # // Take the `app_profile_id`.
70
+ # routing_parameters {
71
+ # field: "app_profile_id"
72
+ # }
73
+ # };
74
+ #
75
+ # result:
76
+ #
77
+ # x-goog-request-params: app_profile_id=profiles/prof_qux
78
+ #
79
+ # Example 2
80
+ #
81
+ # Extracting a field from the request to put into the routing header
82
+ # unchanged, with the key different from the field name.
83
+ #
84
+ # annotation:
85
+ #
86
+ # option (google.api.routing) = {
87
+ # // Take the `app_profile_id`, but name it `routing_id` in the header.
88
+ # routing_parameters {
89
+ # field: "app_profile_id"
90
+ # path_template: "{routing_id=**}"
91
+ # }
92
+ # };
93
+ #
94
+ # result:
95
+ #
96
+ # x-goog-request-params: routing_id=profiles/prof_qux
97
+ #
98
+ # Example 3
99
+ #
100
+ # Extracting a field from the request to put into the routing
101
+ # header, while matching a path template syntax on the field's value.
102
+ #
103
+ # NB: it is more useful to send nothing than to send garbage for the purpose
104
+ # of dynamic routing, since garbage pollutes cache. Thus the matching.
105
+ #
106
+ # Sub-example 3a
107
+ #
108
+ # The field matches the template.
109
+ #
110
+ # annotation:
111
+ #
112
+ # option (google.api.routing) = {
113
+ # // Take the `table_name`, if it's well-formed (with project-based
114
+ # // syntax).
115
+ # routing_parameters {
116
+ # field: "table_name"
117
+ # path_template: "{table_name=projects/*/instances/*/**}"
118
+ # }
119
+ # };
120
+ #
121
+ # result:
122
+ #
123
+ # x-goog-request-params:
124
+ # table_name=projects/proj_foo/instances/instance_bar/table/table_baz
125
+ #
126
+ # Sub-example 3b
127
+ #
128
+ # The field does not match the template.
129
+ #
130
+ # annotation:
131
+ #
132
+ # option (google.api.routing) = {
133
+ # // Take the `table_name`, if it's well-formed (with region-based
134
+ # // syntax).
135
+ # routing_parameters {
136
+ # field: "table_name"
137
+ # path_template: "{table_name=regions/*/zones/*/**}"
138
+ # }
139
+ # };
140
+ #
141
+ # result:
142
+ #
143
+ # <no routing header will be sent>
144
+ #
145
+ # Sub-example 3c
146
+ #
147
+ # Multiple alternative conflictingly named path templates are
148
+ # specified. The one that matches is used to construct the header.
149
+ #
150
+ # annotation:
151
+ #
152
+ # option (google.api.routing) = {
153
+ # // Take the `table_name`, if it's well-formed, whether
154
+ # // using the region- or projects-based syntax.
155
+ #
156
+ # routing_parameters {
157
+ # field: "table_name"
158
+ # path_template: "{table_name=regions/*/zones/*/**}"
159
+ # }
160
+ # routing_parameters {
161
+ # field: "table_name"
162
+ # path_template: "{table_name=projects/*/instances/*/**}"
163
+ # }
164
+ # };
165
+ #
166
+ # result:
167
+ #
168
+ # x-goog-request-params:
169
+ # table_name=projects/proj_foo/instances/instance_bar/table/table_baz
170
+ #
171
+ # Example 4
172
+ #
173
+ # Extracting a single routing header key-value pair by matching a
174
+ # template syntax on (a part of) a single request field.
175
+ #
176
+ # annotation:
177
+ #
178
+ # option (google.api.routing) = {
179
+ # // Take just the project id from the `table_name` field.
180
+ # routing_parameters {
181
+ # field: "table_name"
182
+ # path_template: "{routing_id=projects/*}/**"
183
+ # }
184
+ # };
185
+ #
186
+ # result:
187
+ #
188
+ # x-goog-request-params: routing_id=projects/proj_foo
189
+ #
190
+ # Example 5
191
+ #
192
+ # Extracting a single routing header key-value pair by matching
193
+ # several conflictingly named path templates on (parts of) a single request
194
+ # field. The last template to match "wins" the conflict.
195
+ #
196
+ # annotation:
197
+ #
198
+ # option (google.api.routing) = {
199
+ # // If the `table_name` does not have instances information,
200
+ # // take just the project id for routing.
201
+ # // Otherwise take project + instance.
202
+ #
203
+ # routing_parameters {
204
+ # field: "table_name"
205
+ # path_template: "{routing_id=projects/*}/**"
206
+ # }
207
+ # routing_parameters {
208
+ # field: "table_name"
209
+ # path_template: "{routing_id=projects/*/instances/*}/**"
210
+ # }
211
+ # };
212
+ #
213
+ # result:
214
+ #
215
+ # x-goog-request-params:
216
+ # routing_id=projects/proj_foo/instances/instance_bar
217
+ #
218
+ # Example 6
219
+ #
220
+ # Extracting multiple routing header key-value pairs by matching
221
+ # several non-conflicting path templates on (parts of) a single request field.
222
+ #
223
+ # Sub-example 6a
224
+ #
225
+ # Make the templates strict, so that if the `table_name` does not
226
+ # have an instance information, nothing is sent.
227
+ #
228
+ # annotation:
229
+ #
230
+ # option (google.api.routing) = {
231
+ # // The routing code needs two keys instead of one composite
232
+ # // but works only for the tables with the "project-instance" name
233
+ # // syntax.
234
+ #
235
+ # routing_parameters {
236
+ # field: "table_name"
237
+ # path_template: "{project_id=projects/*}/instances/*/**"
238
+ # }
239
+ # routing_parameters {
240
+ # field: "table_name"
241
+ # path_template: "projects/*/{instance_id=instances/*}/**"
242
+ # }
243
+ # };
244
+ #
245
+ # result:
246
+ #
247
+ # x-goog-request-params:
248
+ # project_id=projects/proj_foo&instance_id=instances/instance_bar
249
+ #
250
+ # Sub-example 6b
251
+ #
252
+ # Make the templates loose, so that if the `table_name` does not
253
+ # have an instance information, just the project id part is sent.
254
+ #
255
+ # annotation:
256
+ #
257
+ # option (google.api.routing) = {
258
+ # // The routing code wants two keys instead of one composite
259
+ # // but will work with just the `project_id` for tables without
260
+ # // an instance in the `table_name`.
261
+ #
262
+ # routing_parameters {
263
+ # field: "table_name"
264
+ # path_template: "{project_id=projects/*}/**"
265
+ # }
266
+ # routing_parameters {
267
+ # field: "table_name"
268
+ # path_template: "projects/*/{instance_id=instances/*}/**"
269
+ # }
270
+ # };
271
+ #
272
+ # result (is the same as 6a for our example message because it has the instance
273
+ # information):
274
+ #
275
+ # x-goog-request-params:
276
+ # project_id=projects/proj_foo&instance_id=instances/instance_bar
277
+ #
278
+ # Example 7
279
+ #
280
+ # Extracting multiple routing header key-value pairs by matching
281
+ # several path templates on multiple request fields.
282
+ #
283
+ # NB: note that here there is no way to specify sending nothing if one of the
284
+ # fields does not match its template. E.g. if the `table_name` is in the wrong
285
+ # format, the `project_id` will not be sent, but the `routing_id` will be.
286
+ # The backend routing code has to be aware of that and be prepared to not
287
+ # receive a full complement of keys if it expects multiple.
288
+ #
289
+ # annotation:
290
+ #
291
+ # option (google.api.routing) = {
292
+ # // The routing needs both `project_id` and `routing_id`
293
+ # // (from the `app_profile_id` field) for routing.
294
+ #
295
+ # routing_parameters {
296
+ # field: "table_name"
297
+ # path_template: "{project_id=projects/*}/**"
298
+ # }
299
+ # routing_parameters {
300
+ # field: "app_profile_id"
301
+ # path_template: "{routing_id=**}"
302
+ # }
303
+ # };
304
+ #
305
+ # result:
306
+ #
307
+ # x-goog-request-params:
308
+ # project_id=projects/proj_foo&routing_id=profiles/prof_qux
309
+ #
310
+ # Example 8
311
+ #
312
+ # Extracting a single routing header key-value pair by matching
313
+ # several conflictingly named path templates on several request fields. The
314
+ # last template to match "wins" the conflict.
315
+ #
316
+ # annotation:
317
+ #
318
+ # option (google.api.routing) = {
319
+ # // The `routing_id` can be a project id or a region id depending on
320
+ # // the table name format, but only if the `app_profile_id` is not set.
321
+ # // If `app_profile_id` is set it should be used instead.
322
+ #
323
+ # routing_parameters {
324
+ # field: "table_name"
325
+ # path_template: "{routing_id=projects/*}/**"
326
+ # }
327
+ # routing_parameters {
328
+ # field: "table_name"
329
+ # path_template: "{routing_id=regions/*}/**"
330
+ # }
331
+ # routing_parameters {
332
+ # field: "app_profile_id"
333
+ # path_template: "{routing_id=**}"
334
+ # }
335
+ # };
336
+ #
337
+ # result:
338
+ #
339
+ # x-goog-request-params: routing_id=profiles/prof_qux
340
+ #
341
+ # Example 9
342
+ #
343
+ # Bringing it all together.
344
+ #
345
+ # annotation:
346
+ #
347
+ # option (google.api.routing) = {
348
+ # // For routing both `table_location` and a `routing_id` are needed.
349
+ # //
350
+ # // table_location can be either an instance id or a region+zone id.
351
+ # //
352
+ # // For `routing_id`, take the value of `app_profile_id`
353
+ # // - If it's in the format `profiles/<profile_id>`, send
354
+ # // just the `<profile_id>` part.
355
+ # // - If it's any other literal, send it as is.
356
+ # // If the `app_profile_id` is empty, and the `table_name` starts with
357
+ # // the project_id, send that instead.
358
+ #
359
+ # routing_parameters {
360
+ # field: "table_name"
361
+ # path_template: "projects/*/{table_location=instances/*}/tables/*"
362
+ # }
363
+ # routing_parameters {
364
+ # field: "table_name"
365
+ # path_template: "{table_location=regions/*/zones/*}/tables/*"
366
+ # }
367
+ # routing_parameters {
368
+ # field: "table_name"
369
+ # path_template: "{routing_id=projects/*}/**"
370
+ # }
371
+ # routing_parameters {
372
+ # field: "app_profile_id"
373
+ # path_template: "{routing_id=**}"
374
+ # }
375
+ # routing_parameters {
376
+ # field: "app_profile_id"
377
+ # path_template: "profiles/{routing_id=*}"
378
+ # }
379
+ # };
380
+ #
381
+ # result:
382
+ #
383
+ # x-goog-request-params:
384
+ # table_location=instances/instance_bar&routing_id=prof_qux
385
+ # @!attribute [rw] routing_parameters
386
+ # @return [::Array<::Google::Api::RoutingParameter>]
387
+ # A collection of Routing Parameter specifications.
388
+ # **NOTE:** If multiple Routing Parameters describe the same key
389
+ # (via the `path_template` field or via the `field` field when
390
+ # `path_template` is not provided), "last one wins" rule
391
+ # determines which Parameter gets used.
392
+ # See the examples for more details.
393
+ class RoutingRule
394
+ include ::Google::Protobuf::MessageExts
395
+ extend ::Google::Protobuf::MessageExts::ClassMethods
396
+ end
397
+
398
+ # A projection from an input message to the GRPC or REST header.
399
+ # @!attribute [rw] field
400
+ # @return [::String]
401
+ # A request field to extract the header key-value pair from.
402
+ # @!attribute [rw] path_template
403
+ # @return [::String]
404
+ # A pattern matching the key-value field. Optional.
405
+ # If not specified, the whole field specified in the `field` field will be
406
+ # taken as value, and its name used as key. If specified, it MUST contain
407
+ # exactly one named segment (along with any number of unnamed segments) The
408
+ # pattern will be matched over the field specified in the `field` field, then
409
+ # if the match is successful:
410
+ # - the name of the single named segment will be used as a header name,
411
+ # - the match value of the segment will be used as a header value;
412
+ # if the match is NOT successful, nothing will be sent.
413
+ #
414
+ # Example:
415
+ #
416
+ # -- This is a field in the request message
417
+ # | that the header value will be extracted from.
418
+ # |
419
+ # | -- This is the key name in the
420
+ # | | routing header.
421
+ # V |
422
+ # field: "table_name" v
423
+ # path_template: "projects/*/{table_location=instances/*}/tables/*"
424
+ # ^ ^
425
+ # | |
426
+ # In the {} brackets is the pattern that -- |
427
+ # specifies what to extract from the |
428
+ # field as a value to be sent. |
429
+ # |
430
+ # The string in the field must match the whole pattern --
431
+ # before brackets, inside brackets, after brackets.
432
+ #
433
+ # When looking at this specific example, we can see that:
434
+ # - A key-value pair with the key `table_location`
435
+ # and the value matching `instances/*` should be added
436
+ # to the x-goog-request-params routing header.
437
+ # - The value is extracted from the request message's `table_name` field
438
+ # if it matches the full pattern specified:
439
+ # `projects/*/instances/*/tables/*`.
440
+ #
441
+ # **NB:** If the `path_template` field is not provided, the key name is
442
+ # equal to the field name, and the whole field should be sent as a value.
443
+ # This makes the pattern for the field and the value functionally equivalent
444
+ # to `**`, and the configuration
445
+ #
446
+ # {
447
+ # field: "table_name"
448
+ # }
449
+ #
450
+ # is a functionally equivalent shorthand to:
451
+ #
452
+ # {
453
+ # field: "table_name"
454
+ # path_template: "{table_name=**}"
455
+ # }
456
+ #
457
+ # See Example 1 for more details.
458
+ class RoutingParameter
459
+ include ::Google::Protobuf::MessageExts
460
+ extend ::Google::Protobuf::MessageExts::ClassMethods
461
+ end
462
+ end
463
+ end
@@ -1374,9 +1374,24 @@ module Google
1374
1374
  # @!attribute [rw] evaluation_run
1375
1375
  # @return [::String]
1376
1376
  # Required. The evaluation run used to inform quality report analysis.
1377
+ # @!attribute [rw] algorithm
1378
+ # @return [::Google::Cloud::Ces::V1beta::GenerateAppResourceRequest::QualityReportGenerationConfig::LossAttributionAlgorithm]
1379
+ # Optional. The loss attribution algorithm to use.
1377
1380
  class QualityReportGenerationConfig
1378
1381
  include ::Google::Protobuf::MessageExts
1379
1382
  extend ::Google::Protobuf::MessageExts::ClassMethods
1383
+
1384
+ # The algorithm to use for loss attribution.
1385
+ module LossAttributionAlgorithm
1386
+ # Unspecified.
1387
+ LOSS_ATTRIBUTION_ALGORITHM_UNSPECIFIED = 0
1388
+
1389
+ # App-centric loss attribution. Treats the app as a single unit.
1390
+ APP_CENTRIC = 1
1391
+
1392
+ # Agent-centric loss attribution. Attributes loss to individual agents.
1393
+ AGENT_CENTRIC = 2
1394
+ end
1380
1395
  end
1381
1396
 
1382
1397
  # The configuration to be used for hill climbing fixes.
@@ -335,12 +335,12 @@ module Google
335
335
  # @!attribute [rw] disable_barge_in
336
336
  # @deprecated This field is deprecated and may be removed in the next major version update.
337
337
  # @return [::Boolean]
338
- # Optional. Disables user barge-in while the agent is speaking. If true, user
339
- # input during agent response playback will be ignored.
340
- #
341
- # Deprecated: `disable_barge_in` is deprecated in favor of
338
+ # Optional. Deprecated: `disable_barge_in` is deprecated in favor of
342
339
  # {::Google::Cloud::Ces::V1beta::ChannelProfile#disable_barge_in_control `disable_barge_in_control`}
343
340
  # in ChannelProfile.
341
+ #
342
+ # Disables user barge-in while the agent is speaking. If true, user input
343
+ # during agent response playback will be ignored.
344
344
  # @!attribute [rw] barge_in_awareness
345
345
  # @return [::Boolean]
346
346
  # Optional. If enabled, the agent will adapt its next response based on the
@@ -361,12 +361,30 @@ module Google
361
361
  # For the list of available voices, please refer to [Supported voices and
362
362
  # languages](https://cloud.google.com/text-to-speech/docs/voices) from Cloud
363
363
  # Text-to-Speech.
364
+ # @!attribute [rw] voice_sample_gcs_uri
365
+ # @return [::String]
366
+ # Optional. The Cloud Storage URI to the audio sample for voice cloning. The
367
+ # audio sample should be a mono-channel, 24kHz WAV file.
368
+ #
369
+ # Note: Please make sure the CES service agent
370
+ # `service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com` has
371
+ # `storage.objects.get` permission to the Cloud Storage object.
364
372
  # @!attribute [rw] speaking_rate
365
373
  # @return [::Float]
366
374
  # Optional. The speaking rate/speed in the range [0.25, 2.0]. 1.0 is the
367
375
  # normal native speed supported by the specific voice. 2.0 is twice as fast,
368
376
  # and 0.5 is half as fast. Values outside of the range [0.25, 2.0] will
369
377
  # return an error.
378
+ # @!attribute [rw] model
379
+ # @return [::String]
380
+ # Optional. The model used to synthesize audio.
381
+ # Currently supported values:
382
+ # - "gemini-3.1-flash-tts-preview"
383
+ # If empty, Chirp3-HD is used.
384
+ # @!attribute [rw] instruction
385
+ # @return [::String]
386
+ # Optional. The instruction used to synthesize speech when using a generative
387
+ # model.
370
388
  class SynthesizeSpeechConfig
371
389
  include ::Google::Protobuf::MessageExts
372
390
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -404,6 +422,11 @@ module Google
404
422
  # Optional. Configures the BigQuery export behaviors for the app. The
405
423
  # conversation data is subject to redaction as configured in
406
424
  # {::Google::Cloud::Ces::V1beta::LoggingSettings#redaction_config RedactionConfig}.
425
+ # @!attribute [rw] unredacted_bigquery_export_settings
426
+ # @return [::Google::Cloud::Ces::V1beta::BigQueryExportSettings]
427
+ # Optional. Configures the BigQuery export behaviors for the app.
428
+ # The unredacted conversation data will be exported to BigQuery tables if it
429
+ # is enabled.
407
430
  # @!attribute [rw] cloud_logging_settings
408
431
  # @return [::Google::Cloud::Ces::V1beta::CloudLoggingSettings]
409
432
  # Optional. Settings to describe the Cloud Logging behaviors for the app.
@@ -635,6 +658,9 @@ module Google
635
658
  # @return [::Google::Cloud::Ces::V1beta::EvaluationSettings::ScenarioExecutionMode]
636
659
  # Optional. The execution mode for scenario evaluations. If not provided,
637
660
  # will default to QUALITY_OPTIMIZED.
661
+ # @!attribute [rw] evaluation_run_caching_settings
662
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationRunCachingSettings]
663
+ # Optional. The caching settings to use for the evaluation run.
638
664
  class EvaluationSettings
639
665
  include ::Google::Protobuf::MessageExts
640
666
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -202,6 +202,12 @@ module Google
202
202
  # @return [::String]
203
203
  # Optional. The noise suppression level of the channel profile.
204
204
  # Available values are "low", "moderate", "high", "very_high".
205
+ # @!attribute [rw] whatsapp_config
206
+ # @return [::Google::Cloud::Ces::V1beta::ChannelProfile::WhatsAppConfig]
207
+ # Optional. Configuration specific to WhatsApp deployments.
208
+ # @!attribute [rw] instagram_config
209
+ # @return [::Google::Cloud::Ces::V1beta::ChannelProfile::InstagramConfig]
210
+ # Optional. Configuration specific to Instagram deployments.
205
211
  class ChannelProfile
206
212
  include ::Google::Protobuf::MessageExts
207
213
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -303,6 +309,48 @@ module Google
303
309
  end
304
310
  end
305
311
 
312
+ # Configuration specific to WhatsApp deployments.
313
+ # @!attribute [rw] waba_id
314
+ # @return [::String]
315
+ # Required. The WhatsApp Business Account ID.
316
+ # @!attribute [rw] phone_number_id
317
+ # @return [::String]
318
+ # Required. The Meta phone number ID.
319
+ # @!attribute [rw] phone_number
320
+ # @return [::String]
321
+ # Optional. The phone number in E.164 format.
322
+ # @!attribute [r] display_name
323
+ # @return [::String]
324
+ # Output only. The fetched Meta business page name.
325
+ # @!attribute [r] thumbnail_url
326
+ # @return [::String]
327
+ # Output only. The fetched Meta business profile thumbnail URL.
328
+ # @!attribute [r] description
329
+ # @return [::String]
330
+ # Output only. The description of the Meta business page or profile.
331
+ class WhatsAppConfig
332
+ include ::Google::Protobuf::MessageExts
333
+ extend ::Google::Protobuf::MessageExts::ClassMethods
334
+ end
335
+
336
+ # Configuration specific to Instagram deployments.
337
+ # @!attribute [rw] instagram_account_id
338
+ # @return [::String]
339
+ # Required. The Instagram Account ID.
340
+ # @!attribute [r] display_name
341
+ # @return [::String]
342
+ # Output only. The fetched Meta business page name.
343
+ # @!attribute [r] thumbnail_url
344
+ # @return [::String]
345
+ # Output only. The fetched Meta business profile thumbnail URL.
346
+ # @!attribute [r] description
347
+ # @return [::String]
348
+ # Output only. The description of the Meta business page or profile.
349
+ class InstagramConfig
350
+ include ::Google::Protobuf::MessageExts
351
+ extend ::Google::Protobuf::MessageExts::ClassMethods
352
+ end
353
+
306
354
  # The type of the channel profile.
307
355
  module ChannelType
308
356
  # Unknown channel type.
@@ -323,11 +371,20 @@ module Google
323
371
  # Contact Center as a Service (CCaaS) channel.
324
372
  CONTACT_CENTER_AS_A_SERVICE = 6
325
373
 
374
+ # Contact Center as a Service (CCaaS Chat) channel.
375
+ CONTACT_CENTER_AS_A_SERVICE_CHAT = 11
376
+
326
377
  # Five9 channel.
327
378
  FIVE9 = 7
328
379
 
329
380
  # Third party contact center integration channel.
330
381
  CONTACT_CENTER_INTEGRATION = 8
382
+
383
+ # WhatsApp channel.
384
+ WHATSAPP = 9
385
+
386
+ # Instagram channel.
387
+ INSTAGRAM = 10
331
388
  end
332
389
  end
333
390
 
@@ -355,6 +412,31 @@ module Google
355
412
  extend ::Google::Protobuf::MessageExts::ClassMethods
356
413
  end
357
414
 
415
+ # Settings for evaluation run caching.
416
+ # @!attribute [rw] run_caching_mode
417
+ # @return [::Google::Cloud::Ces::V1beta::EvaluationRunCachingSettings::EvaluationRunCachingMode]
418
+ # Optional. The caching mode to use for the evaluation run. If not set,
419
+ # default to FORCE_RUN.
420
+ class EvaluationRunCachingSettings
421
+ include ::Google::Protobuf::MessageExts
422
+ extend ::Google::Protobuf::MessageExts::ClassMethods
423
+
424
+ # The evaluation result caching behavior. Controls whether to return the last
425
+ # completed evaluation result (if existing) or to execute a new evaluation.
426
+ module EvaluationRunCachingMode
427
+ # The run caching mode is unspecified.
428
+ EVALUATION_RUN_CACHING_MODE_UNSPECIFIED = 0
429
+
430
+ # Always execute a full live simulation regardless of whether changelogs
431
+ # exist.
432
+ FORCE_RUN = 1
433
+
434
+ # Skip execution and copy previous verified results if no dependencies have
435
+ # mutated, the evaluation channel/run method are the same.
436
+ SKIP_IF_UNCHANGED = 2
437
+ end
438
+ end
439
+
358
440
  # The execution type of the tool or toolset.
359
441
  module ExecutionType
360
442
  # The execution type is unspecified. Defaults to `SYNCHRONOUS` if