aws-sdk-connect 1.78.0 → 1.80.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -44,6 +44,7 @@ module Aws::Connect
44
44
  # * {ResourceConflictException}
45
45
  # * {ResourceInUseException}
46
46
  # * {ResourceNotFoundException}
47
+ # * {ResourceNotReadyException}
47
48
  # * {ServiceQuotaExceededException}
48
49
  # * {ThrottlingException}
49
50
  # * {UserNotFoundException}
@@ -324,6 +325,21 @@ module Aws::Connect
324
325
  end
325
326
  end
326
327
 
328
+ class ResourceNotReadyException < ServiceError
329
+
330
+ # @param [Seahorse::Client::RequestContext] context
331
+ # @param [String] message
332
+ # @param [Aws::Connect::Types::ResourceNotReadyException] data
333
+ def initialize(context, message, data = Aws::EmptyStructure.new)
334
+ super(context, message, data)
335
+ end
336
+
337
+ # @return [String]
338
+ def message
339
+ @message || @data[:message]
340
+ end
341
+ end
342
+
327
343
  class ServiceQuotaExceededException < ServiceError
328
344
 
329
345
  # @param [Seahorse::Client::RequestContext] context
@@ -0,0 +1,390 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+
11
+ module Aws::Connect
12
+ module Plugins
13
+ class Endpoints < Seahorse::Client::Plugin
14
+ option(
15
+ :endpoint_provider,
16
+ doc_type: 'Aws::Connect::EndpointProvider',
17
+ docstring: 'The endpoint provider used to resolve endpoints. Any '\
18
+ 'object that responds to `#resolve_endpoint(parameters)` '\
19
+ 'where `parameters` is a Struct similar to '\
20
+ '`Aws::Connect::EndpointParameters`'
21
+ ) do |cfg|
22
+ Aws::Connect::EndpointProvider.new
23
+ end
24
+
25
+ # @api private
26
+ class Handler < Seahorse::Client::Handler
27
+ def call(context)
28
+ # If endpoint was discovered, do not resolve or apply the endpoint.
29
+ unless context[:discovered_endpoint]
30
+ params = parameters_for_operation(context)
31
+ endpoint = context.config.endpoint_provider.resolve_endpoint(params)
32
+
33
+ context.http_request.endpoint = endpoint.url
34
+ apply_endpoint_headers(context, endpoint.headers)
35
+ end
36
+
37
+ context[:endpoint_params] = params
38
+ context[:auth_scheme] =
39
+ Aws::Endpoints.resolve_auth_scheme(context, endpoint)
40
+
41
+ @handler.call(context)
42
+ end
43
+
44
+ private
45
+
46
+ def apply_endpoint_headers(context, headers)
47
+ headers.each do |key, values|
48
+ value = values
49
+ .compact
50
+ .map { |s| Seahorse::Util.escape_header_list_string(s.to_s) }
51
+ .join(',')
52
+
53
+ context.http_request.headers[key] = value
54
+ end
55
+ end
56
+
57
+ def parameters_for_operation(context)
58
+ case context.operation_name
59
+ when :associate_approved_origin
60
+ Aws::Connect::Endpoints::AssociateApprovedOrigin.build(context)
61
+ when :associate_bot
62
+ Aws::Connect::Endpoints::AssociateBot.build(context)
63
+ when :associate_default_vocabulary
64
+ Aws::Connect::Endpoints::AssociateDefaultVocabulary.build(context)
65
+ when :associate_instance_storage_config
66
+ Aws::Connect::Endpoints::AssociateInstanceStorageConfig.build(context)
67
+ when :associate_lambda_function
68
+ Aws::Connect::Endpoints::AssociateLambdaFunction.build(context)
69
+ when :associate_lex_bot
70
+ Aws::Connect::Endpoints::AssociateLexBot.build(context)
71
+ when :associate_phone_number_contact_flow
72
+ Aws::Connect::Endpoints::AssociatePhoneNumberContactFlow.build(context)
73
+ when :associate_queue_quick_connects
74
+ Aws::Connect::Endpoints::AssociateQueueQuickConnects.build(context)
75
+ when :associate_routing_profile_queues
76
+ Aws::Connect::Endpoints::AssociateRoutingProfileQueues.build(context)
77
+ when :associate_security_key
78
+ Aws::Connect::Endpoints::AssociateSecurityKey.build(context)
79
+ when :claim_phone_number
80
+ Aws::Connect::Endpoints::ClaimPhoneNumber.build(context)
81
+ when :create_agent_status
82
+ Aws::Connect::Endpoints::CreateAgentStatus.build(context)
83
+ when :create_contact_flow
84
+ Aws::Connect::Endpoints::CreateContactFlow.build(context)
85
+ when :create_contact_flow_module
86
+ Aws::Connect::Endpoints::CreateContactFlowModule.build(context)
87
+ when :create_hours_of_operation
88
+ Aws::Connect::Endpoints::CreateHoursOfOperation.build(context)
89
+ when :create_instance
90
+ Aws::Connect::Endpoints::CreateInstance.build(context)
91
+ when :create_integration_association
92
+ Aws::Connect::Endpoints::CreateIntegrationAssociation.build(context)
93
+ when :create_queue
94
+ Aws::Connect::Endpoints::CreateQueue.build(context)
95
+ when :create_quick_connect
96
+ Aws::Connect::Endpoints::CreateQuickConnect.build(context)
97
+ when :create_routing_profile
98
+ Aws::Connect::Endpoints::CreateRoutingProfile.build(context)
99
+ when :create_security_profile
100
+ Aws::Connect::Endpoints::CreateSecurityProfile.build(context)
101
+ when :create_task_template
102
+ Aws::Connect::Endpoints::CreateTaskTemplate.build(context)
103
+ when :create_traffic_distribution_group
104
+ Aws::Connect::Endpoints::CreateTrafficDistributionGroup.build(context)
105
+ when :create_use_case
106
+ Aws::Connect::Endpoints::CreateUseCase.build(context)
107
+ when :create_user
108
+ Aws::Connect::Endpoints::CreateUser.build(context)
109
+ when :create_user_hierarchy_group
110
+ Aws::Connect::Endpoints::CreateUserHierarchyGroup.build(context)
111
+ when :create_vocabulary
112
+ Aws::Connect::Endpoints::CreateVocabulary.build(context)
113
+ when :delete_contact_flow
114
+ Aws::Connect::Endpoints::DeleteContactFlow.build(context)
115
+ when :delete_contact_flow_module
116
+ Aws::Connect::Endpoints::DeleteContactFlowModule.build(context)
117
+ when :delete_hours_of_operation
118
+ Aws::Connect::Endpoints::DeleteHoursOfOperation.build(context)
119
+ when :delete_instance
120
+ Aws::Connect::Endpoints::DeleteInstance.build(context)
121
+ when :delete_integration_association
122
+ Aws::Connect::Endpoints::DeleteIntegrationAssociation.build(context)
123
+ when :delete_quick_connect
124
+ Aws::Connect::Endpoints::DeleteQuickConnect.build(context)
125
+ when :delete_security_profile
126
+ Aws::Connect::Endpoints::DeleteSecurityProfile.build(context)
127
+ when :delete_task_template
128
+ Aws::Connect::Endpoints::DeleteTaskTemplate.build(context)
129
+ when :delete_traffic_distribution_group
130
+ Aws::Connect::Endpoints::DeleteTrafficDistributionGroup.build(context)
131
+ when :delete_use_case
132
+ Aws::Connect::Endpoints::DeleteUseCase.build(context)
133
+ when :delete_user
134
+ Aws::Connect::Endpoints::DeleteUser.build(context)
135
+ when :delete_user_hierarchy_group
136
+ Aws::Connect::Endpoints::DeleteUserHierarchyGroup.build(context)
137
+ when :delete_vocabulary
138
+ Aws::Connect::Endpoints::DeleteVocabulary.build(context)
139
+ when :describe_agent_status
140
+ Aws::Connect::Endpoints::DescribeAgentStatus.build(context)
141
+ when :describe_contact
142
+ Aws::Connect::Endpoints::DescribeContact.build(context)
143
+ when :describe_contact_flow
144
+ Aws::Connect::Endpoints::DescribeContactFlow.build(context)
145
+ when :describe_contact_flow_module
146
+ Aws::Connect::Endpoints::DescribeContactFlowModule.build(context)
147
+ when :describe_hours_of_operation
148
+ Aws::Connect::Endpoints::DescribeHoursOfOperation.build(context)
149
+ when :describe_instance
150
+ Aws::Connect::Endpoints::DescribeInstance.build(context)
151
+ when :describe_instance_attribute
152
+ Aws::Connect::Endpoints::DescribeInstanceAttribute.build(context)
153
+ when :describe_instance_storage_config
154
+ Aws::Connect::Endpoints::DescribeInstanceStorageConfig.build(context)
155
+ when :describe_phone_number
156
+ Aws::Connect::Endpoints::DescribePhoneNumber.build(context)
157
+ when :describe_queue
158
+ Aws::Connect::Endpoints::DescribeQueue.build(context)
159
+ when :describe_quick_connect
160
+ Aws::Connect::Endpoints::DescribeQuickConnect.build(context)
161
+ when :describe_routing_profile
162
+ Aws::Connect::Endpoints::DescribeRoutingProfile.build(context)
163
+ when :describe_security_profile
164
+ Aws::Connect::Endpoints::DescribeSecurityProfile.build(context)
165
+ when :describe_traffic_distribution_group
166
+ Aws::Connect::Endpoints::DescribeTrafficDistributionGroup.build(context)
167
+ when :describe_user
168
+ Aws::Connect::Endpoints::DescribeUser.build(context)
169
+ when :describe_user_hierarchy_group
170
+ Aws::Connect::Endpoints::DescribeUserHierarchyGroup.build(context)
171
+ when :describe_user_hierarchy_structure
172
+ Aws::Connect::Endpoints::DescribeUserHierarchyStructure.build(context)
173
+ when :describe_vocabulary
174
+ Aws::Connect::Endpoints::DescribeVocabulary.build(context)
175
+ when :disassociate_approved_origin
176
+ Aws::Connect::Endpoints::DisassociateApprovedOrigin.build(context)
177
+ when :disassociate_bot
178
+ Aws::Connect::Endpoints::DisassociateBot.build(context)
179
+ when :disassociate_instance_storage_config
180
+ Aws::Connect::Endpoints::DisassociateInstanceStorageConfig.build(context)
181
+ when :disassociate_lambda_function
182
+ Aws::Connect::Endpoints::DisassociateLambdaFunction.build(context)
183
+ when :disassociate_lex_bot
184
+ Aws::Connect::Endpoints::DisassociateLexBot.build(context)
185
+ when :disassociate_phone_number_contact_flow
186
+ Aws::Connect::Endpoints::DisassociatePhoneNumberContactFlow.build(context)
187
+ when :disassociate_queue_quick_connects
188
+ Aws::Connect::Endpoints::DisassociateQueueQuickConnects.build(context)
189
+ when :disassociate_routing_profile_queues
190
+ Aws::Connect::Endpoints::DisassociateRoutingProfileQueues.build(context)
191
+ when :disassociate_security_key
192
+ Aws::Connect::Endpoints::DisassociateSecurityKey.build(context)
193
+ when :get_contact_attributes
194
+ Aws::Connect::Endpoints::GetContactAttributes.build(context)
195
+ when :get_current_metric_data
196
+ Aws::Connect::Endpoints::GetCurrentMetricData.build(context)
197
+ when :get_current_user_data
198
+ Aws::Connect::Endpoints::GetCurrentUserData.build(context)
199
+ when :get_federation_token
200
+ Aws::Connect::Endpoints::GetFederationToken.build(context)
201
+ when :get_metric_data
202
+ Aws::Connect::Endpoints::GetMetricData.build(context)
203
+ when :get_task_template
204
+ Aws::Connect::Endpoints::GetTaskTemplate.build(context)
205
+ when :get_traffic_distribution
206
+ Aws::Connect::Endpoints::GetTrafficDistribution.build(context)
207
+ when :list_agent_statuses
208
+ Aws::Connect::Endpoints::ListAgentStatuses.build(context)
209
+ when :list_approved_origins
210
+ Aws::Connect::Endpoints::ListApprovedOrigins.build(context)
211
+ when :list_bots
212
+ Aws::Connect::Endpoints::ListBots.build(context)
213
+ when :list_contact_flow_modules
214
+ Aws::Connect::Endpoints::ListContactFlowModules.build(context)
215
+ when :list_contact_flows
216
+ Aws::Connect::Endpoints::ListContactFlows.build(context)
217
+ when :list_contact_references
218
+ Aws::Connect::Endpoints::ListContactReferences.build(context)
219
+ when :list_default_vocabularies
220
+ Aws::Connect::Endpoints::ListDefaultVocabularies.build(context)
221
+ when :list_hours_of_operations
222
+ Aws::Connect::Endpoints::ListHoursOfOperations.build(context)
223
+ when :list_instance_attributes
224
+ Aws::Connect::Endpoints::ListInstanceAttributes.build(context)
225
+ when :list_instance_storage_configs
226
+ Aws::Connect::Endpoints::ListInstanceStorageConfigs.build(context)
227
+ when :list_instances
228
+ Aws::Connect::Endpoints::ListInstances.build(context)
229
+ when :list_integration_associations
230
+ Aws::Connect::Endpoints::ListIntegrationAssociations.build(context)
231
+ when :list_lambda_functions
232
+ Aws::Connect::Endpoints::ListLambdaFunctions.build(context)
233
+ when :list_lex_bots
234
+ Aws::Connect::Endpoints::ListLexBots.build(context)
235
+ when :list_phone_numbers
236
+ Aws::Connect::Endpoints::ListPhoneNumbers.build(context)
237
+ when :list_phone_numbers_v2
238
+ Aws::Connect::Endpoints::ListPhoneNumbersV2.build(context)
239
+ when :list_prompts
240
+ Aws::Connect::Endpoints::ListPrompts.build(context)
241
+ when :list_queue_quick_connects
242
+ Aws::Connect::Endpoints::ListQueueQuickConnects.build(context)
243
+ when :list_queues
244
+ Aws::Connect::Endpoints::ListQueues.build(context)
245
+ when :list_quick_connects
246
+ Aws::Connect::Endpoints::ListQuickConnects.build(context)
247
+ when :list_routing_profile_queues
248
+ Aws::Connect::Endpoints::ListRoutingProfileQueues.build(context)
249
+ when :list_routing_profiles
250
+ Aws::Connect::Endpoints::ListRoutingProfiles.build(context)
251
+ when :list_security_keys
252
+ Aws::Connect::Endpoints::ListSecurityKeys.build(context)
253
+ when :list_security_profile_permissions
254
+ Aws::Connect::Endpoints::ListSecurityProfilePermissions.build(context)
255
+ when :list_security_profiles
256
+ Aws::Connect::Endpoints::ListSecurityProfiles.build(context)
257
+ when :list_tags_for_resource
258
+ Aws::Connect::Endpoints::ListTagsForResource.build(context)
259
+ when :list_task_templates
260
+ Aws::Connect::Endpoints::ListTaskTemplates.build(context)
261
+ when :list_traffic_distribution_groups
262
+ Aws::Connect::Endpoints::ListTrafficDistributionGroups.build(context)
263
+ when :list_use_cases
264
+ Aws::Connect::Endpoints::ListUseCases.build(context)
265
+ when :list_user_hierarchy_groups
266
+ Aws::Connect::Endpoints::ListUserHierarchyGroups.build(context)
267
+ when :list_users
268
+ Aws::Connect::Endpoints::ListUsers.build(context)
269
+ when :put_user_status
270
+ Aws::Connect::Endpoints::PutUserStatus.build(context)
271
+ when :release_phone_number
272
+ Aws::Connect::Endpoints::ReleasePhoneNumber.build(context)
273
+ when :replicate_instance
274
+ Aws::Connect::Endpoints::ReplicateInstance.build(context)
275
+ when :resume_contact_recording
276
+ Aws::Connect::Endpoints::ResumeContactRecording.build(context)
277
+ when :search_available_phone_numbers
278
+ Aws::Connect::Endpoints::SearchAvailablePhoneNumbers.build(context)
279
+ when :search_queues
280
+ Aws::Connect::Endpoints::SearchQueues.build(context)
281
+ when :search_routing_profiles
282
+ Aws::Connect::Endpoints::SearchRoutingProfiles.build(context)
283
+ when :search_security_profiles
284
+ Aws::Connect::Endpoints::SearchSecurityProfiles.build(context)
285
+ when :search_users
286
+ Aws::Connect::Endpoints::SearchUsers.build(context)
287
+ when :search_vocabularies
288
+ Aws::Connect::Endpoints::SearchVocabularies.build(context)
289
+ when :start_chat_contact
290
+ Aws::Connect::Endpoints::StartChatContact.build(context)
291
+ when :start_contact_recording
292
+ Aws::Connect::Endpoints::StartContactRecording.build(context)
293
+ when :start_contact_streaming
294
+ Aws::Connect::Endpoints::StartContactStreaming.build(context)
295
+ when :start_outbound_voice_contact
296
+ Aws::Connect::Endpoints::StartOutboundVoiceContact.build(context)
297
+ when :start_task_contact
298
+ Aws::Connect::Endpoints::StartTaskContact.build(context)
299
+ when :stop_contact
300
+ Aws::Connect::Endpoints::StopContact.build(context)
301
+ when :stop_contact_recording
302
+ Aws::Connect::Endpoints::StopContactRecording.build(context)
303
+ when :stop_contact_streaming
304
+ Aws::Connect::Endpoints::StopContactStreaming.build(context)
305
+ when :suspend_contact_recording
306
+ Aws::Connect::Endpoints::SuspendContactRecording.build(context)
307
+ when :tag_resource
308
+ Aws::Connect::Endpoints::TagResource.build(context)
309
+ when :transfer_contact
310
+ Aws::Connect::Endpoints::TransferContact.build(context)
311
+ when :untag_resource
312
+ Aws::Connect::Endpoints::UntagResource.build(context)
313
+ when :update_agent_status
314
+ Aws::Connect::Endpoints::UpdateAgentStatus.build(context)
315
+ when :update_contact
316
+ Aws::Connect::Endpoints::UpdateContact.build(context)
317
+ when :update_contact_attributes
318
+ Aws::Connect::Endpoints::UpdateContactAttributes.build(context)
319
+ when :update_contact_flow_content
320
+ Aws::Connect::Endpoints::UpdateContactFlowContent.build(context)
321
+ when :update_contact_flow_metadata
322
+ Aws::Connect::Endpoints::UpdateContactFlowMetadata.build(context)
323
+ when :update_contact_flow_module_content
324
+ Aws::Connect::Endpoints::UpdateContactFlowModuleContent.build(context)
325
+ when :update_contact_flow_module_metadata
326
+ Aws::Connect::Endpoints::UpdateContactFlowModuleMetadata.build(context)
327
+ when :update_contact_flow_name
328
+ Aws::Connect::Endpoints::UpdateContactFlowName.build(context)
329
+ when :update_contact_schedule
330
+ Aws::Connect::Endpoints::UpdateContactSchedule.build(context)
331
+ when :update_hours_of_operation
332
+ Aws::Connect::Endpoints::UpdateHoursOfOperation.build(context)
333
+ when :update_instance_attribute
334
+ Aws::Connect::Endpoints::UpdateInstanceAttribute.build(context)
335
+ when :update_instance_storage_config
336
+ Aws::Connect::Endpoints::UpdateInstanceStorageConfig.build(context)
337
+ when :update_phone_number
338
+ Aws::Connect::Endpoints::UpdatePhoneNumber.build(context)
339
+ when :update_queue_hours_of_operation
340
+ Aws::Connect::Endpoints::UpdateQueueHoursOfOperation.build(context)
341
+ when :update_queue_max_contacts
342
+ Aws::Connect::Endpoints::UpdateQueueMaxContacts.build(context)
343
+ when :update_queue_name
344
+ Aws::Connect::Endpoints::UpdateQueueName.build(context)
345
+ when :update_queue_outbound_caller_config
346
+ Aws::Connect::Endpoints::UpdateQueueOutboundCallerConfig.build(context)
347
+ when :update_queue_status
348
+ Aws::Connect::Endpoints::UpdateQueueStatus.build(context)
349
+ when :update_quick_connect_config
350
+ Aws::Connect::Endpoints::UpdateQuickConnectConfig.build(context)
351
+ when :update_quick_connect_name
352
+ Aws::Connect::Endpoints::UpdateQuickConnectName.build(context)
353
+ when :update_routing_profile_concurrency
354
+ Aws::Connect::Endpoints::UpdateRoutingProfileConcurrency.build(context)
355
+ when :update_routing_profile_default_outbound_queue
356
+ Aws::Connect::Endpoints::UpdateRoutingProfileDefaultOutboundQueue.build(context)
357
+ when :update_routing_profile_name
358
+ Aws::Connect::Endpoints::UpdateRoutingProfileName.build(context)
359
+ when :update_routing_profile_queues
360
+ Aws::Connect::Endpoints::UpdateRoutingProfileQueues.build(context)
361
+ when :update_security_profile
362
+ Aws::Connect::Endpoints::UpdateSecurityProfile.build(context)
363
+ when :update_task_template
364
+ Aws::Connect::Endpoints::UpdateTaskTemplate.build(context)
365
+ when :update_traffic_distribution
366
+ Aws::Connect::Endpoints::UpdateTrafficDistribution.build(context)
367
+ when :update_user_hierarchy
368
+ Aws::Connect::Endpoints::UpdateUserHierarchy.build(context)
369
+ when :update_user_hierarchy_group_name
370
+ Aws::Connect::Endpoints::UpdateUserHierarchyGroupName.build(context)
371
+ when :update_user_hierarchy_structure
372
+ Aws::Connect::Endpoints::UpdateUserHierarchyStructure.build(context)
373
+ when :update_user_identity_info
374
+ Aws::Connect::Endpoints::UpdateUserIdentityInfo.build(context)
375
+ when :update_user_phone_config
376
+ Aws::Connect::Endpoints::UpdateUserPhoneConfig.build(context)
377
+ when :update_user_routing_profile
378
+ Aws::Connect::Endpoints::UpdateUserRoutingProfile.build(context)
379
+ when :update_user_security_profiles
380
+ Aws::Connect::Endpoints::UpdateUserSecurityProfiles.build(context)
381
+ end
382
+ end
383
+ end
384
+
385
+ def add_handlers(handlers, _config)
386
+ handlers.add(Handler, step: :build, priority: 75)
387
+ end
388
+ end
389
+ end
390
+ end