aws-sdk-alexaforbusiness 1.0.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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 0633ecc4e867940ff2b7011d90636e6b7cd2eb75
4
+ data.tar.gz: ea310431164ac4b50e04d195257ff7dff6f27a93
5
+ SHA512:
6
+ metadata.gz: 7994b592d63f697e3b944e8a9fac69e74f3c400da52c4966d45c57a7a82c558492d66e025707a680e51371bf98d7e86450758064668ca989ebe93302cedef0ff
7
+ data.tar.gz: 8842254fa7d1e7c203fa2dc6b5b4a13183b7ef56b1ced398b3740a7341f0d8d8d35c643f986186fd5ccbffb3c02ef4c38321949527e260dddf91efb9a9b3be42
@@ -0,0 +1,47 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'aws-sdk-core'
9
+ require 'aws-sigv4'
10
+
11
+ require_relative 'aws-sdk-alexaforbusiness/types'
12
+ require_relative 'aws-sdk-alexaforbusiness/client_api'
13
+ require_relative 'aws-sdk-alexaforbusiness/client'
14
+ require_relative 'aws-sdk-alexaforbusiness/errors'
15
+ require_relative 'aws-sdk-alexaforbusiness/resource'
16
+ require_relative 'aws-sdk-alexaforbusiness/customizations'
17
+
18
+ # This module provides support for Alexa For Business. This module is available in the
19
+ # `aws-sdk-alexaforbusiness` gem.
20
+ #
21
+ # # Client
22
+ #
23
+ # The {Client} class provides one method for each API operation. Operation
24
+ # methods each accept a hash of request parameters and return a response
25
+ # structure.
26
+ #
27
+ # See {Client} for more information.
28
+ #
29
+ # # Errors
30
+ #
31
+ # Errors returned from Alexa For Business all
32
+ # extend {Errors::ServiceError}.
33
+ #
34
+ # begin
35
+ # # do stuff
36
+ # rescue Aws::AlexaForBusiness::Errors::ServiceError
37
+ # # rescues all service API errors
38
+ # end
39
+ #
40
+ # See {Errors} for more information.
41
+ #
42
+ # @service
43
+ module Aws::AlexaForBusiness
44
+
45
+ GEM_VERSION = '1.0.0'
46
+
47
+ end
@@ -0,0 +1,1634 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'seahorse/client/plugins/content_length.rb'
9
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
10
+ require 'aws-sdk-core/plugins/logging.rb'
11
+ require 'aws-sdk-core/plugins/param_converter.rb'
12
+ require 'aws-sdk-core/plugins/param_validator.rb'
13
+ require 'aws-sdk-core/plugins/user_agent.rb'
14
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
15
+ require 'aws-sdk-core/plugins/retry_errors.rb'
16
+ require 'aws-sdk-core/plugins/global_configuration.rb'
17
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
+ require 'aws-sdk-core/plugins/response_paging.rb'
19
+ require 'aws-sdk-core/plugins/stub_responses.rb'
20
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
21
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
22
+ require 'aws-sdk-core/plugins/signature_v4.rb'
23
+ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
24
+
25
+ Aws::Plugins::GlobalConfiguration.add_identifier(:alexaforbusiness)
26
+
27
+ module Aws::AlexaForBusiness
28
+ class Client < Seahorse::Client::Base
29
+
30
+ include Aws::ClientStubs
31
+
32
+ @identifier = :alexaforbusiness
33
+
34
+ set_api(ClientApi::API)
35
+
36
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
37
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
38
+ add_plugin(Aws::Plugins::Logging)
39
+ add_plugin(Aws::Plugins::ParamConverter)
40
+ add_plugin(Aws::Plugins::ParamValidator)
41
+ add_plugin(Aws::Plugins::UserAgent)
42
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
+ add_plugin(Aws::Plugins::RetryErrors)
44
+ add_plugin(Aws::Plugins::GlobalConfiguration)
45
+ add_plugin(Aws::Plugins::RegionalEndpoint)
46
+ add_plugin(Aws::Plugins::ResponsePaging)
47
+ add_plugin(Aws::Plugins::StubResponses)
48
+ add_plugin(Aws::Plugins::IdempotencyToken)
49
+ add_plugin(Aws::Plugins::JsonvalueConverter)
50
+ add_plugin(Aws::Plugins::SignatureV4)
51
+ add_plugin(Aws::Plugins::Protocols::JsonRpc)
52
+
53
+ # @option options [required, Aws::CredentialProvider] :credentials
54
+ # Your AWS credentials. This can be an instance of any one of the
55
+ # following classes:
56
+ #
57
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
58
+ # credentials.
59
+ #
60
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
61
+ # from an EC2 IMDS on an EC2 instance.
62
+ #
63
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
64
+ # shared file, such as `~/.aws/config`.
65
+ #
66
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
67
+ #
68
+ # When `:credentials` are not configured directly, the following
69
+ # locations will be searched for credentials:
70
+ #
71
+ # * `Aws.config[:credentials]`
72
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
73
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
74
+ # * `~/.aws/credentials`
75
+ # * `~/.aws/config`
76
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
77
+ # very aggressive. Construct and pass an instance of
78
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
79
+ # timeouts.
80
+ #
81
+ # @option options [required, String] :region
82
+ # The AWS region to connect to. The configured `:region` is
83
+ # used to determine the service `:endpoint`. When not passed,
84
+ # a default `:region` is search for in the following locations:
85
+ #
86
+ # * `Aws.config[:region]`
87
+ # * `ENV['AWS_REGION']`
88
+ # * `ENV['AMAZON_REGION']`
89
+ # * `ENV['AWS_DEFAULT_REGION']`
90
+ # * `~/.aws/credentials`
91
+ # * `~/.aws/config`
92
+ #
93
+ # @option options [String] :access_key_id
94
+ #
95
+ # @option options [Boolean] :convert_params (true)
96
+ # When `true`, an attempt is made to coerce request parameters into
97
+ # the required types.
98
+ #
99
+ # @option options [String] :endpoint
100
+ # The client endpoint is normally constructed from the `:region`
101
+ # option. You should only configure an `:endpoint` when connecting
102
+ # to test endpoints. This should be avalid HTTP(S) URI.
103
+ #
104
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
105
+ # The log formatter.
106
+ #
107
+ # @option options [Symbol] :log_level (:info)
108
+ # The log level to send messages to the `:logger` at.
109
+ #
110
+ # @option options [Logger] :logger
111
+ # The Logger instance to send log messages to. If this option
112
+ # is not set, logging will be disabled.
113
+ #
114
+ # @option options [String] :profile ("default")
115
+ # Used when loading credentials from the shared credentials file
116
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
117
+ #
118
+ # @option options [Integer] :retry_limit (3)
119
+ # The maximum number of times to retry failed requests. Only
120
+ # ~ 500 level server errors and certain ~ 400 level client errors
121
+ # are retried. Generally, these are throttling errors, data
122
+ # checksum errors, networking errors, timeout errors and auth
123
+ # errors from expired credentials.
124
+ #
125
+ # @option options [String] :secret_access_key
126
+ #
127
+ # @option options [String] :session_token
128
+ #
129
+ # @option options [Boolean] :simple_json (false)
130
+ # Disables request parameter conversion, validation, and formatting.
131
+ # Also disable response data type conversions. This option is useful
132
+ # when you want to ensure the highest level of performance by
133
+ # avoiding overhead of walking request parameters and response data
134
+ # structures.
135
+ #
136
+ # When `:simple_json` is enabled, the request parameters hash must
137
+ # be formatted exactly as the DynamoDB API expects.
138
+ #
139
+ # @option options [Boolean] :stub_responses (false)
140
+ # Causes the client to return stubbed responses. By default
141
+ # fake responses are generated and returned. You can specify
142
+ # the response data to return or errors to raise by calling
143
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
144
+ #
145
+ # ** Please note ** When response stubbing is enabled, no HTTP
146
+ # requests are made, and retries are disabled.
147
+ #
148
+ # @option options [Boolean] :validate_params (true)
149
+ # When `true`, request parameters are validated before
150
+ # sending the request.
151
+ #
152
+ def initialize(*args)
153
+ super
154
+ end
155
+
156
+ # @!group API Operations
157
+
158
+ # Associates a device to a given room. This applies all the settings
159
+ # from the room profile to the device, and all the skills in any skill
160
+ # groups added to that room. This operation requires the device to be
161
+ # online, or a manual sync is required.
162
+ #
163
+ # @option params [String] :device_arn
164
+ # The ARN of the device to associate to a room. Required.
165
+ #
166
+ # @option params [String] :room_arn
167
+ # The ARN of the room with which to associate the device. Required.
168
+ #
169
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
170
+ #
171
+ # @example Request syntax with placeholder values
172
+ #
173
+ # resp = client.associate_device_with_room({
174
+ # device_arn: "Arn",
175
+ # room_arn: "Arn",
176
+ # })
177
+ #
178
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/AssociateDeviceWithRoom AWS API Documentation
179
+ #
180
+ # @overload associate_device_with_room(params = {})
181
+ # @param [Hash] params ({})
182
+ def associate_device_with_room(params = {}, options = {})
183
+ req = build_request(:associate_device_with_room, params)
184
+ req.send_request(options)
185
+ end
186
+
187
+ # Associates a skill group to a given room. This enables all skills in
188
+ # the associated skill group on all devices in the room.
189
+ #
190
+ # @option params [String] :skill_group_arn
191
+ # The ARN of the skill group to associate with a room. Required.
192
+ #
193
+ # @option params [String] :room_arn
194
+ # The ARN of the room with which to associate the skill group. Required.
195
+ #
196
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
197
+ #
198
+ # @example Request syntax with placeholder values
199
+ #
200
+ # resp = client.associate_skill_group_with_room({
201
+ # skill_group_arn: "Arn",
202
+ # room_arn: "Arn",
203
+ # })
204
+ #
205
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/AssociateSkillGroupWithRoom AWS API Documentation
206
+ #
207
+ # @overload associate_skill_group_with_room(params = {})
208
+ # @param [Hash] params ({})
209
+ def associate_skill_group_with_room(params = {}, options = {})
210
+ req = build_request(:associate_skill_group_with_room, params)
211
+ req.send_request(options)
212
+ end
213
+
214
+ # Creates a new room profile with the specified details.
215
+ #
216
+ # @option params [required, String] :profile_name
217
+ # The name of a room profile.
218
+ #
219
+ # @option params [required, String] :timezone
220
+ # The time zone used by a room profile.
221
+ #
222
+ # @option params [required, String] :address
223
+ # The valid address for the room.
224
+ #
225
+ # @option params [required, String] :distance_unit
226
+ # The distance unit to be used by devices in the profile.
227
+ #
228
+ # @option params [required, String] :temperature_unit
229
+ # The temperature unit to be used by devices in the profile.
230
+ #
231
+ # @option params [required, String] :wake_word
232
+ # A wake word for Alexa, Echo, Amazon, or a computer.
233
+ #
234
+ # @option params [String] :client_request_token
235
+ # The user-specified token that is used during the creation of a
236
+ # profile.
237
+ #
238
+ # **A suitable default value is auto-generated.** You should normally
239
+ # not need to pass this option.**
240
+ #
241
+ # @option params [Boolean] :setup_mode_disabled
242
+ # Whether room profile setup is enabled.
243
+ #
244
+ # @option params [Integer] :max_volume_limit
245
+ # The maximum volume limit for a room profile.
246
+ #
247
+ # @option params [Boolean] :pstn_enabled
248
+ # Whether PSTN calling is enabled.
249
+ #
250
+ # @return [Types::CreateProfileResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
251
+ #
252
+ # * {Types::CreateProfileResponse#profile_arn #profile_arn} => String
253
+ #
254
+ # @example Request syntax with placeholder values
255
+ #
256
+ # resp = client.create_profile({
257
+ # profile_name: "ProfileName", # required
258
+ # timezone: "Timezone", # required
259
+ # address: "Address", # required
260
+ # distance_unit: "METRIC", # required, accepts METRIC, IMPERIAL
261
+ # temperature_unit: "FAHRENHEIT", # required, accepts FAHRENHEIT, CELSIUS
262
+ # wake_word: "ALEXA", # required, accepts ALEXA, AMAZON, ECHO, COMPUTER
263
+ # client_request_token: "ClientRequestToken",
264
+ # setup_mode_disabled: false,
265
+ # max_volume_limit: 1,
266
+ # pstn_enabled: false,
267
+ # })
268
+ #
269
+ # @example Response structure
270
+ #
271
+ # resp.profile_arn #=> String
272
+ #
273
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateProfile AWS API Documentation
274
+ #
275
+ # @overload create_profile(params = {})
276
+ # @param [Hash] params ({})
277
+ def create_profile(params = {}, options = {})
278
+ req = build_request(:create_profile, params)
279
+ req.send_request(options)
280
+ end
281
+
282
+ # Creates a room with the specified details.
283
+ #
284
+ # @option params [required, String] :room_name
285
+ # The name for the room.
286
+ #
287
+ # @option params [String] :description
288
+ # The description for the room.
289
+ #
290
+ # @option params [String] :profile_arn
291
+ # The profile ARN for the room.
292
+ #
293
+ # @option params [String] :provider_calendar_id
294
+ # The calendar ARN for the room.
295
+ #
296
+ # @option params [String] :client_request_token
297
+ # A unique, user-specified identifier for this request that ensures
298
+ # idempotency.
299
+ #
300
+ # **A suitable default value is auto-generated.** You should normally
301
+ # not need to pass this option.**
302
+ #
303
+ # @option params [Array<Types::Tag>] :tags
304
+ # The tags for the room.
305
+ #
306
+ # @return [Types::CreateRoomResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
307
+ #
308
+ # * {Types::CreateRoomResponse#room_arn #room_arn} => String
309
+ #
310
+ # @example Request syntax with placeholder values
311
+ #
312
+ # resp = client.create_room({
313
+ # room_name: "RoomName", # required
314
+ # description: "RoomDescription",
315
+ # profile_arn: "Arn",
316
+ # provider_calendar_id: "ProviderCalendarId",
317
+ # client_request_token: "ClientRequestToken",
318
+ # tags: [
319
+ # {
320
+ # key: "TagKey",
321
+ # value: "TagValue",
322
+ # },
323
+ # ],
324
+ # })
325
+ #
326
+ # @example Response structure
327
+ #
328
+ # resp.room_arn #=> String
329
+ #
330
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateRoom AWS API Documentation
331
+ #
332
+ # @overload create_room(params = {})
333
+ # @param [Hash] params ({})
334
+ def create_room(params = {}, options = {})
335
+ req = build_request(:create_room, params)
336
+ req.send_request(options)
337
+ end
338
+
339
+ # Creates a skill group with a specified name and description.
340
+ #
341
+ # @option params [required, String] :skill_group_name
342
+ # The name for the skill group.
343
+ #
344
+ # @option params [String] :description
345
+ # The description for the skill group.
346
+ #
347
+ # @option params [String] :client_request_token
348
+ # A unique, user-specified identifier for this request that ensures
349
+ # idempotency.
350
+ #
351
+ # **A suitable default value is auto-generated.** You should normally
352
+ # not need to pass this option.**
353
+ #
354
+ # @return [Types::CreateSkillGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
355
+ #
356
+ # * {Types::CreateSkillGroupResponse#skill_group_arn #skill_group_arn} => String
357
+ #
358
+ # @example Request syntax with placeholder values
359
+ #
360
+ # resp = client.create_skill_group({
361
+ # skill_group_name: "SkillGroupName", # required
362
+ # description: "SkillGroupDescription",
363
+ # client_request_token: "ClientRequestToken",
364
+ # })
365
+ #
366
+ # @example Response structure
367
+ #
368
+ # resp.skill_group_arn #=> String
369
+ #
370
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateSkillGroup AWS API Documentation
371
+ #
372
+ # @overload create_skill_group(params = {})
373
+ # @param [Hash] params ({})
374
+ def create_skill_group(params = {}, options = {})
375
+ req = build_request(:create_skill_group, params)
376
+ req.send_request(options)
377
+ end
378
+
379
+ # Creates a user.
380
+ #
381
+ # @option params [required, String] :user_id
382
+ # The ARN for the user.
383
+ #
384
+ # @option params [String] :first_name
385
+ # The first name for the user.
386
+ #
387
+ # @option params [String] :last_name
388
+ # The last name for the user.
389
+ #
390
+ # @option params [String] :email
391
+ # The email address for the user.
392
+ #
393
+ # @option params [String] :client_request_token
394
+ # A unique, user-specified identifier for this request that ensures
395
+ # idempotency.
396
+ #
397
+ # **A suitable default value is auto-generated.** You should normally
398
+ # not need to pass this option.**
399
+ #
400
+ # @option params [Array<Types::Tag>] :tags
401
+ # The tags for the user.
402
+ #
403
+ # @return [Types::CreateUserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
404
+ #
405
+ # * {Types::CreateUserResponse#user_arn #user_arn} => String
406
+ #
407
+ # @example Request syntax with placeholder values
408
+ #
409
+ # resp = client.create_user({
410
+ # user_id: "user_UserId", # required
411
+ # first_name: "user_FirstName",
412
+ # last_name: "user_LastName",
413
+ # email: "Email",
414
+ # client_request_token: "ClientRequestToken",
415
+ # tags: [
416
+ # {
417
+ # key: "TagKey",
418
+ # value: "TagValue",
419
+ # },
420
+ # ],
421
+ # })
422
+ #
423
+ # @example Response structure
424
+ #
425
+ # resp.user_arn #=> String
426
+ #
427
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateUser AWS API Documentation
428
+ #
429
+ # @overload create_user(params = {})
430
+ # @param [Hash] params ({})
431
+ def create_user(params = {}, options = {})
432
+ req = build_request(:create_user, params)
433
+ req.send_request(options)
434
+ end
435
+
436
+ # Deletes a room profile by the profile ARN.
437
+ #
438
+ # @option params [String] :profile_arn
439
+ # The ARN of the room profile to delete. Required.
440
+ #
441
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
442
+ #
443
+ # @example Request syntax with placeholder values
444
+ #
445
+ # resp = client.delete_profile({
446
+ # profile_arn: "Arn",
447
+ # })
448
+ #
449
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteProfile AWS API Documentation
450
+ #
451
+ # @overload delete_profile(params = {})
452
+ # @param [Hash] params ({})
453
+ def delete_profile(params = {}, options = {})
454
+ req = build_request(:delete_profile, params)
455
+ req.send_request(options)
456
+ end
457
+
458
+ # Deletes a room by the room ARN.
459
+ #
460
+ # @option params [String] :room_arn
461
+ # The ARN of the room to delete. Required.
462
+ #
463
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
464
+ #
465
+ # @example Request syntax with placeholder values
466
+ #
467
+ # resp = client.delete_room({
468
+ # room_arn: "Arn",
469
+ # })
470
+ #
471
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteRoom AWS API Documentation
472
+ #
473
+ # @overload delete_room(params = {})
474
+ # @param [Hash] params ({})
475
+ def delete_room(params = {}, options = {})
476
+ req = build_request(:delete_room, params)
477
+ req.send_request(options)
478
+ end
479
+
480
+ # Deletes room skill parameter details by room, skill, and parameter key
481
+ # ID.
482
+ #
483
+ # @option params [String] :room_arn
484
+ # The ARN of the room from which to remove the room skill parameter
485
+ # details.
486
+ #
487
+ # @option params [required, String] :skill_id
488
+ # The ID of the skill from which to remove the room skill parameter
489
+ # details.
490
+ #
491
+ # @option params [required, String] :parameter_key
492
+ # The room skill parameter key for which to remove details.
493
+ #
494
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
495
+ #
496
+ # @example Request syntax with placeholder values
497
+ #
498
+ # resp = client.delete_room_skill_parameter({
499
+ # room_arn: "Arn",
500
+ # skill_id: "SkillId", # required
501
+ # parameter_key: "RoomSkillParameterKey", # required
502
+ # })
503
+ #
504
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteRoomSkillParameter AWS API Documentation
505
+ #
506
+ # @overload delete_room_skill_parameter(params = {})
507
+ # @param [Hash] params ({})
508
+ def delete_room_skill_parameter(params = {}, options = {})
509
+ req = build_request(:delete_room_skill_parameter, params)
510
+ req.send_request(options)
511
+ end
512
+
513
+ # Deletes a skill group by skill group ARN.
514
+ #
515
+ # @option params [String] :skill_group_arn
516
+ # The ARN of the skill group to delete. Required.
517
+ #
518
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
519
+ #
520
+ # @example Request syntax with placeholder values
521
+ #
522
+ # resp = client.delete_skill_group({
523
+ # skill_group_arn: "Arn",
524
+ # })
525
+ #
526
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteSkillGroup AWS API Documentation
527
+ #
528
+ # @overload delete_skill_group(params = {})
529
+ # @param [Hash] params ({})
530
+ def delete_skill_group(params = {}, options = {})
531
+ req = build_request(:delete_skill_group, params)
532
+ req.send_request(options)
533
+ end
534
+
535
+ # Deletes a specified user by user ARN and enrollment ARN.
536
+ #
537
+ # @option params [String] :user_arn
538
+ # The ARN of the user to delete in the organization. Required.
539
+ #
540
+ # @option params [required, String] :enrollment_id
541
+ # The ARN of the user's enrollment in the organization. Required.
542
+ #
543
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
544
+ #
545
+ # @example Request syntax with placeholder values
546
+ #
547
+ # resp = client.delete_user({
548
+ # user_arn: "Arn",
549
+ # enrollment_id: "EnrollmentId", # required
550
+ # })
551
+ #
552
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteUser AWS API Documentation
553
+ #
554
+ # @overload delete_user(params = {})
555
+ # @param [Hash] params ({})
556
+ def delete_user(params = {}, options = {})
557
+ req = build_request(:delete_user, params)
558
+ req.send_request(options)
559
+ end
560
+
561
+ # Disassociates a device from its current room. The device continues to
562
+ # be connected to the Wi-Fi network and is still registered to the
563
+ # account. The device settings and skills are removed from the room.
564
+ #
565
+ # @option params [String] :device_arn
566
+ # The ARN of the device to disassociate from a room. Required.
567
+ #
568
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
569
+ #
570
+ # @example Request syntax with placeholder values
571
+ #
572
+ # resp = client.disassociate_device_from_room({
573
+ # device_arn: "Arn",
574
+ # })
575
+ #
576
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DisassociateDeviceFromRoom AWS API Documentation
577
+ #
578
+ # @overload disassociate_device_from_room(params = {})
579
+ # @param [Hash] params ({})
580
+ def disassociate_device_from_room(params = {}, options = {})
581
+ req = build_request(:disassociate_device_from_room, params)
582
+ req.send_request(options)
583
+ end
584
+
585
+ # Disassociates a skill group from a specified room. This disables all
586
+ # skills in the skill group on all devices in the room.
587
+ #
588
+ # @option params [String] :skill_group_arn
589
+ # The ARN of the skill group to disassociate from a room. Required.
590
+ #
591
+ # @option params [String] :room_arn
592
+ # The ARN of the room from which the skill group is to be disassociated.
593
+ # Required.
594
+ #
595
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
596
+ #
597
+ # @example Request syntax with placeholder values
598
+ #
599
+ # resp = client.disassociate_skill_group_from_room({
600
+ # skill_group_arn: "Arn",
601
+ # room_arn: "Arn",
602
+ # })
603
+ #
604
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DisassociateSkillGroupFromRoom AWS API Documentation
605
+ #
606
+ # @overload disassociate_skill_group_from_room(params = {})
607
+ # @param [Hash] params ({})
608
+ def disassociate_skill_group_from_room(params = {}, options = {})
609
+ req = build_request(:disassociate_skill_group_from_room, params)
610
+ req.send_request(options)
611
+ end
612
+
613
+ # Gets the details of a device by device ARN.
614
+ #
615
+ # @option params [String] :device_arn
616
+ # The ARN of the device for which to request details. Required.
617
+ #
618
+ # @return [Types::GetDeviceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
619
+ #
620
+ # * {Types::GetDeviceResponse#device #device} => Types::Device
621
+ #
622
+ # @example Request syntax with placeholder values
623
+ #
624
+ # resp = client.get_device({
625
+ # device_arn: "Arn",
626
+ # })
627
+ #
628
+ # @example Response structure
629
+ #
630
+ # resp.device.device_arn #=> String
631
+ # resp.device.device_serial_number #=> String
632
+ # resp.device.device_type #=> String
633
+ # resp.device.device_name #=> String
634
+ # resp.device.software_version #=> String
635
+ # resp.device.mac_address #=> String
636
+ # resp.device.room_arn #=> String
637
+ # resp.device.device_status #=> String, one of "READY", "PENDING", "WAS_OFFLINE"
638
+ #
639
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetDevice AWS API Documentation
640
+ #
641
+ # @overload get_device(params = {})
642
+ # @param [Hash] params ({})
643
+ def get_device(params = {}, options = {})
644
+ req = build_request(:get_device, params)
645
+ req.send_request(options)
646
+ end
647
+
648
+ # Gets the details of a room profile by profile ARN.
649
+ #
650
+ # @option params [String] :profile_arn
651
+ # The ARN of the room profile for which to request details. Required.
652
+ #
653
+ # @return [Types::GetProfileResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
654
+ #
655
+ # * {Types::GetProfileResponse#profile #profile} => Types::Profile
656
+ #
657
+ # @example Request syntax with placeholder values
658
+ #
659
+ # resp = client.get_profile({
660
+ # profile_arn: "Arn",
661
+ # })
662
+ #
663
+ # @example Response structure
664
+ #
665
+ # resp.profile.profile_arn #=> String
666
+ # resp.profile.profile_name #=> String
667
+ # resp.profile.address #=> String
668
+ # resp.profile.timezone #=> String
669
+ # resp.profile.distance_unit #=> String, one of "METRIC", "IMPERIAL"
670
+ # resp.profile.temperature_unit #=> String, one of "FAHRENHEIT", "CELSIUS"
671
+ # resp.profile.wake_word #=> String, one of "ALEXA", "AMAZON", "ECHO", "COMPUTER"
672
+ # resp.profile.setup_mode_disabled #=> Boolean
673
+ # resp.profile.max_volume_limit #=> Integer
674
+ # resp.profile.pstn_enabled #=> Boolean
675
+ #
676
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetProfile AWS API Documentation
677
+ #
678
+ # @overload get_profile(params = {})
679
+ # @param [Hash] params ({})
680
+ def get_profile(params = {}, options = {})
681
+ req = build_request(:get_profile, params)
682
+ req.send_request(options)
683
+ end
684
+
685
+ # Gets room details by room ARN.
686
+ #
687
+ # @option params [String] :room_arn
688
+ # The ARN of the room for which to request details. Required.
689
+ #
690
+ # @return [Types::GetRoomResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
691
+ #
692
+ # * {Types::GetRoomResponse#room #room} => Types::Room
693
+ #
694
+ # @example Request syntax with placeholder values
695
+ #
696
+ # resp = client.get_room({
697
+ # room_arn: "Arn",
698
+ # })
699
+ #
700
+ # @example Response structure
701
+ #
702
+ # resp.room.room_arn #=> String
703
+ # resp.room.room_name #=> String
704
+ # resp.room.description #=> String
705
+ # resp.room.provider_calendar_id #=> String
706
+ # resp.room.profile_arn #=> String
707
+ #
708
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetRoom AWS API Documentation
709
+ #
710
+ # @overload get_room(params = {})
711
+ # @param [Hash] params ({})
712
+ def get_room(params = {}, options = {})
713
+ req = build_request(:get_room, params)
714
+ req.send_request(options)
715
+ end
716
+
717
+ # Gets room skill parameter details by room, skill, and parameter key
718
+ # ARN.
719
+ #
720
+ # @option params [String] :room_arn
721
+ # The ARN of the room from which to get the room skill parameter
722
+ # details.
723
+ #
724
+ # @option params [required, String] :skill_id
725
+ # The ARN of the skill from which to get the room skill parameter
726
+ # details. Required.
727
+ #
728
+ # @option params [required, String] :parameter_key
729
+ # The room skill parameter key for which to get details. Required.
730
+ #
731
+ # @return [Types::GetRoomSkillParameterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
732
+ #
733
+ # * {Types::GetRoomSkillParameterResponse#room_skill_parameter #room_skill_parameter} => Types::RoomSkillParameter
734
+ #
735
+ # @example Request syntax with placeholder values
736
+ #
737
+ # resp = client.get_room_skill_parameter({
738
+ # room_arn: "Arn",
739
+ # skill_id: "SkillId", # required
740
+ # parameter_key: "RoomSkillParameterKey", # required
741
+ # })
742
+ #
743
+ # @example Response structure
744
+ #
745
+ # resp.room_skill_parameter.parameter_key #=> String
746
+ # resp.room_skill_parameter.parameter_value #=> String
747
+ #
748
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetRoomSkillParameter AWS API Documentation
749
+ #
750
+ # @overload get_room_skill_parameter(params = {})
751
+ # @param [Hash] params ({})
752
+ def get_room_skill_parameter(params = {}, options = {})
753
+ req = build_request(:get_room_skill_parameter, params)
754
+ req.send_request(options)
755
+ end
756
+
757
+ # Gets skill group details by skill group ARN.
758
+ #
759
+ # @option params [String] :skill_group_arn
760
+ # The ARN of the skill group for which to get details. Required.
761
+ #
762
+ # @return [Types::GetSkillGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
763
+ #
764
+ # * {Types::GetSkillGroupResponse#skill_group #skill_group} => Types::SkillGroup
765
+ #
766
+ # @example Request syntax with placeholder values
767
+ #
768
+ # resp = client.get_skill_group({
769
+ # skill_group_arn: "Arn",
770
+ # })
771
+ #
772
+ # @example Response structure
773
+ #
774
+ # resp.skill_group.skill_group_arn #=> String
775
+ # resp.skill_group.skill_group_name #=> String
776
+ # resp.skill_group.description #=> String
777
+ #
778
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetSkillGroup AWS API Documentation
779
+ #
780
+ # @overload get_skill_group(params = {})
781
+ # @param [Hash] params ({})
782
+ def get_skill_group(params = {}, options = {})
783
+ req = build_request(:get_skill_group, params)
784
+ req.send_request(options)
785
+ end
786
+
787
+ # Lists all enabled skills in a specific skill group.
788
+ #
789
+ # @option params [String] :skill_group_arn
790
+ # The ARN of the skill group for which to list enabled skills. Required.
791
+ #
792
+ # @option params [String] :next_token
793
+ # An optional token returned from a prior request. Use this token for
794
+ # pagination of results from this action. If this parameter is
795
+ # specified, the response includes only results beyond the token, up to
796
+ # the value specified by `MaxResults`. Required.
797
+ #
798
+ # @option params [Integer] :max_results
799
+ # The maximum number of results to include in the response. If more
800
+ # results exist than the specified `MaxResults` value, a token is
801
+ # included in the response so that the remaining results can be
802
+ # retrieved. Required.
803
+ #
804
+ # @return [Types::ListSkillsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
805
+ #
806
+ # * {Types::ListSkillsResponse#skill_summaries #skill_summaries} => Array&lt;Types::SkillSummary&gt;
807
+ # * {Types::ListSkillsResponse#next_token #next_token} => String
808
+ #
809
+ # @example Request syntax with placeholder values
810
+ #
811
+ # resp = client.list_skills({
812
+ # skill_group_arn: "Arn",
813
+ # next_token: "NextToken",
814
+ # max_results: 1,
815
+ # })
816
+ #
817
+ # @example Response structure
818
+ #
819
+ # resp.skill_summaries #=> Array
820
+ # resp.skill_summaries[0].skill_id #=> String
821
+ # resp.skill_summaries[0].skill_name #=> String
822
+ # resp.skill_summaries[0].supports_linking #=> Boolean
823
+ # resp.next_token #=> String
824
+ #
825
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListSkills AWS API Documentation
826
+ #
827
+ # @overload list_skills(params = {})
828
+ # @param [Hash] params ({})
829
+ def list_skills(params = {}, options = {})
830
+ req = build_request(:list_skills, params)
831
+ req.send_request(options)
832
+ end
833
+
834
+ # Lists all tags for a specific resource.
835
+ #
836
+ # @option params [required, String] :arn
837
+ # The ARN of the specific resource for which to list tags. Required.
838
+ #
839
+ # @option params [String] :next_token
840
+ # An optional token returned from a prior request. Use this token for
841
+ # pagination of results from this action. If this parameter is
842
+ # specified, the response includes only results beyond the token, up to
843
+ # the value specified by `MaxResults`.
844
+ #
845
+ # @option params [Integer] :max_results
846
+ # The maximum number of results to include in the response. If more
847
+ # results exist than the specified `MaxResults` value, a token is
848
+ # included in the response so that the remaining results can be
849
+ # retrieved.
850
+ #
851
+ # @return [Types::ListTagsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
852
+ #
853
+ # * {Types::ListTagsResponse#tags #tags} => Array&lt;Types::Tag&gt;
854
+ # * {Types::ListTagsResponse#next_token #next_token} => String
855
+ #
856
+ # @example Request syntax with placeholder values
857
+ #
858
+ # resp = client.list_tags({
859
+ # arn: "Arn", # required
860
+ # next_token: "NextToken",
861
+ # max_results: 1,
862
+ # })
863
+ #
864
+ # @example Response structure
865
+ #
866
+ # resp.tags #=> Array
867
+ # resp.tags[0].key #=> String
868
+ # resp.tags[0].value #=> String
869
+ # resp.next_token #=> String
870
+ #
871
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListTags AWS API Documentation
872
+ #
873
+ # @overload list_tags(params = {})
874
+ # @param [Hash] params ({})
875
+ def list_tags(params = {}, options = {})
876
+ req = build_request(:list_tags, params)
877
+ req.send_request(options)
878
+ end
879
+
880
+ # Updates room skill parameter details by room, skill, and parameter key
881
+ # ID. Not all skills have a room skill parameter.
882
+ #
883
+ # @option params [String] :room_arn
884
+ # The ARN of the room associated with the room skill parameter.
885
+ # Required.
886
+ #
887
+ # @option params [required, String] :skill_id
888
+ # The ARN of the skill associated with the room skill parameter.
889
+ # Required.
890
+ #
891
+ # @option params [required, Types::RoomSkillParameter] :room_skill_parameter
892
+ # The updated room skill parameter. Required.
893
+ #
894
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
895
+ #
896
+ # @example Request syntax with placeholder values
897
+ #
898
+ # resp = client.put_room_skill_parameter({
899
+ # room_arn: "Arn",
900
+ # skill_id: "SkillId", # required
901
+ # room_skill_parameter: { # required
902
+ # parameter_key: "RoomSkillParameterKey", # required
903
+ # parameter_value: "RoomSkillParameterValue", # required
904
+ # },
905
+ # })
906
+ #
907
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/PutRoomSkillParameter AWS API Documentation
908
+ #
909
+ # @overload put_room_skill_parameter(params = {})
910
+ # @param [Hash] params ({})
911
+ def put_room_skill_parameter(params = {}, options = {})
912
+ req = build_request(:put_room_skill_parameter, params)
913
+ req.send_request(options)
914
+ end
915
+
916
+ # Determines the details for the room from which a skill request was
917
+ # invoked. This operation is used by skill developers.
918
+ #
919
+ # @option params [required, String] :user_id
920
+ # The ARN of the user. Required.
921
+ #
922
+ # @option params [required, String] :skill_id
923
+ # The ARN of the skill that was requested. Required.
924
+ #
925
+ # @return [Types::ResolveRoomResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
926
+ #
927
+ # * {Types::ResolveRoomResponse#room_arn #room_arn} => String
928
+ # * {Types::ResolveRoomResponse#room_name #room_name} => String
929
+ # * {Types::ResolveRoomResponse#room_skill_parameters #room_skill_parameters} => Array&lt;Types::RoomSkillParameter&gt;
930
+ #
931
+ # @example Request syntax with placeholder values
932
+ #
933
+ # resp = client.resolve_room({
934
+ # user_id: "UserId", # required
935
+ # skill_id: "SkillId", # required
936
+ # })
937
+ #
938
+ # @example Response structure
939
+ #
940
+ # resp.room_arn #=> String
941
+ # resp.room_name #=> String
942
+ # resp.room_skill_parameters #=> Array
943
+ # resp.room_skill_parameters[0].parameter_key #=> String
944
+ # resp.room_skill_parameters[0].parameter_value #=> String
945
+ #
946
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ResolveRoom AWS API Documentation
947
+ #
948
+ # @overload resolve_room(params = {})
949
+ # @param [Hash] params ({})
950
+ def resolve_room(params = {}, options = {})
951
+ req = build_request(:resolve_room, params)
952
+ req.send_request(options)
953
+ end
954
+
955
+ # Revokes an invitation and invalidates the enrollment URL.
956
+ #
957
+ # @option params [String] :user_arn
958
+ # The ARN of the user for whom to revoke an enrollment invitation.
959
+ # Required.
960
+ #
961
+ # @option params [String] :enrollment_id
962
+ # The ARN of the enrollment invitation to revoke. Required.
963
+ #
964
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
965
+ #
966
+ # @example Request syntax with placeholder values
967
+ #
968
+ # resp = client.revoke_invitation({
969
+ # user_arn: "Arn",
970
+ # enrollment_id: "EnrollmentId",
971
+ # })
972
+ #
973
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/RevokeInvitation AWS API Documentation
974
+ #
975
+ # @overload revoke_invitation(params = {})
976
+ # @param [Hash] params ({})
977
+ def revoke_invitation(params = {}, options = {})
978
+ req = build_request(:revoke_invitation, params)
979
+ req.send_request(options)
980
+ end
981
+
982
+ # Searches devices and lists the ones that meet a set of filter
983
+ # criteria.
984
+ #
985
+ # @option params [String] :next_token
986
+ # An optional token returned from a prior request. Use this token for
987
+ # pagination of results from this action. If this parameter is
988
+ # specified, the response includes only results beyond the token, up to
989
+ # the value specified by `MaxResults`.
990
+ #
991
+ # @option params [Integer] :max_results
992
+ # The maximum number of results to include in the response. If more
993
+ # results exist than the specified `MaxResults` value, a token is
994
+ # included in the response so that the remaining results can be
995
+ # retrieved.
996
+ #
997
+ # @option params [Array<Types::Filter>] :filters
998
+ # The filters to use to list a specified set of devices. Supported
999
+ # filter keys are DeviceName, DeviceStatus, RoomName, DeviceType,
1000
+ # DeviceSerialNumber, and UnassociatedOnly.
1001
+ #
1002
+ # @option params [Array<Types::Sort>] :sort_criteria
1003
+ # The sort order to use in listing the specified set of devices.
1004
+ # Supported sort keys are DeviceName, DeviceStatus, RoomName,
1005
+ # DeviceType, and DeviceSerialNumber.
1006
+ #
1007
+ # @return [Types::SearchDevicesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1008
+ #
1009
+ # * {Types::SearchDevicesResponse#devices #devices} => Array&lt;Types::DeviceData&gt;
1010
+ # * {Types::SearchDevicesResponse#next_token #next_token} => String
1011
+ # * {Types::SearchDevicesResponse#total_count #total_count} => Integer
1012
+ #
1013
+ # @example Request syntax with placeholder values
1014
+ #
1015
+ # resp = client.search_devices({
1016
+ # next_token: "NextToken",
1017
+ # max_results: 1,
1018
+ # filters: [
1019
+ # {
1020
+ # key: "FilterKey", # required
1021
+ # values: ["FilterValue"], # required
1022
+ # },
1023
+ # ],
1024
+ # sort_criteria: [
1025
+ # {
1026
+ # key: "SortKey", # required
1027
+ # value: "ASC", # required, accepts ASC, DESC
1028
+ # },
1029
+ # ],
1030
+ # })
1031
+ #
1032
+ # @example Response structure
1033
+ #
1034
+ # resp.devices #=> Array
1035
+ # resp.devices[0].device_arn #=> String
1036
+ # resp.devices[0].device_serial_number #=> String
1037
+ # resp.devices[0].device_type #=> String
1038
+ # resp.devices[0].device_name #=> String
1039
+ # resp.devices[0].software_version #=> String
1040
+ # resp.devices[0].mac_address #=> String
1041
+ # resp.devices[0].device_status #=> String, one of "READY", "PENDING", "WAS_OFFLINE"
1042
+ # resp.devices[0].room_arn #=> String
1043
+ # resp.devices[0].room_name #=> String
1044
+ # resp.next_token #=> String
1045
+ # resp.total_count #=> Integer
1046
+ #
1047
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchDevices AWS API Documentation
1048
+ #
1049
+ # @overload search_devices(params = {})
1050
+ # @param [Hash] params ({})
1051
+ def search_devices(params = {}, options = {})
1052
+ req = build_request(:search_devices, params)
1053
+ req.send_request(options)
1054
+ end
1055
+
1056
+ # Searches room profiles and lists the ones that meet a set of filter
1057
+ # criteria.
1058
+ #
1059
+ # @option params [String] :next_token
1060
+ # An optional token returned from a prior request. Use this token for
1061
+ # pagination of results from this action. If this parameter is
1062
+ # specified, the response includes only results beyond the token, up to
1063
+ # the value specified by `MaxResults`.
1064
+ #
1065
+ # @option params [Integer] :max_results
1066
+ # The maximum number of results to include in the response. If more
1067
+ # results exist than the specified `MaxResults` value, a token is
1068
+ # included in the response so that the remaining results can be
1069
+ # retrieved.
1070
+ #
1071
+ # @option params [Array<Types::Filter>] :filters
1072
+ # The filters to use to list a specified set of room profiles. Supported
1073
+ # filter keys are ProfileName and Address. Required.
1074
+ #
1075
+ # @option params [Array<Types::Sort>] :sort_criteria
1076
+ # The sort order to use in listing the specified set of room profiles.
1077
+ # Supported sort keys are ProfileName and Address.
1078
+ #
1079
+ # @return [Types::SearchProfilesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1080
+ #
1081
+ # * {Types::SearchProfilesResponse#profiles #profiles} => Array&lt;Types::ProfileData&gt;
1082
+ # * {Types::SearchProfilesResponse#next_token #next_token} => String
1083
+ # * {Types::SearchProfilesResponse#total_count #total_count} => Integer
1084
+ #
1085
+ # @example Request syntax with placeholder values
1086
+ #
1087
+ # resp = client.search_profiles({
1088
+ # next_token: "NextToken",
1089
+ # max_results: 1,
1090
+ # filters: [
1091
+ # {
1092
+ # key: "FilterKey", # required
1093
+ # values: ["FilterValue"], # required
1094
+ # },
1095
+ # ],
1096
+ # sort_criteria: [
1097
+ # {
1098
+ # key: "SortKey", # required
1099
+ # value: "ASC", # required, accepts ASC, DESC
1100
+ # },
1101
+ # ],
1102
+ # })
1103
+ #
1104
+ # @example Response structure
1105
+ #
1106
+ # resp.profiles #=> Array
1107
+ # resp.profiles[0].profile_arn #=> String
1108
+ # resp.profiles[0].profile_name #=> String
1109
+ # resp.profiles[0].address #=> String
1110
+ # resp.profiles[0].timezone #=> String
1111
+ # resp.profiles[0].distance_unit #=> String, one of "METRIC", "IMPERIAL"
1112
+ # resp.profiles[0].temperature_unit #=> String, one of "FAHRENHEIT", "CELSIUS"
1113
+ # resp.profiles[0].wake_word #=> String, one of "ALEXA", "AMAZON", "ECHO", "COMPUTER"
1114
+ # resp.next_token #=> String
1115
+ # resp.total_count #=> Integer
1116
+ #
1117
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchProfiles AWS API Documentation
1118
+ #
1119
+ # @overload search_profiles(params = {})
1120
+ # @param [Hash] params ({})
1121
+ def search_profiles(params = {}, options = {})
1122
+ req = build_request(:search_profiles, params)
1123
+ req.send_request(options)
1124
+ end
1125
+
1126
+ # Searches rooms and lists the ones that meet a set of filter and sort
1127
+ # criteria.
1128
+ #
1129
+ # @option params [String] :next_token
1130
+ # An optional token returned from a prior request. Use this token for
1131
+ # pagination of results from this action. If this parameter is
1132
+ # specified, the response includes only results beyond the token, up to
1133
+ # the value specified by `MaxResults`.
1134
+ #
1135
+ # @option params [Integer] :max_results
1136
+ # The maximum number of results to include in the response. If more
1137
+ # results exist than the specified `MaxResults` value, a token is
1138
+ # included in the response so that the remaining results can be
1139
+ # retrieved.
1140
+ #
1141
+ # @option params [Array<Types::Filter>] :filters
1142
+ # The filters to use to list a specified set of rooms. The supported
1143
+ # filter keys are RoomName and ProfileName.
1144
+ #
1145
+ # @option params [Array<Types::Sort>] :sort_criteria
1146
+ # The sort order to use in listing the specified set of rooms. The
1147
+ # supported sort keys are RoomName and ProfileName.
1148
+ #
1149
+ # @return [Types::SearchRoomsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1150
+ #
1151
+ # * {Types::SearchRoomsResponse#rooms #rooms} => Array&lt;Types::RoomData&gt;
1152
+ # * {Types::SearchRoomsResponse#next_token #next_token} => String
1153
+ # * {Types::SearchRoomsResponse#total_count #total_count} => Integer
1154
+ #
1155
+ # @example Request syntax with placeholder values
1156
+ #
1157
+ # resp = client.search_rooms({
1158
+ # next_token: "NextToken",
1159
+ # max_results: 1,
1160
+ # filters: [
1161
+ # {
1162
+ # key: "FilterKey", # required
1163
+ # values: ["FilterValue"], # required
1164
+ # },
1165
+ # ],
1166
+ # sort_criteria: [
1167
+ # {
1168
+ # key: "SortKey", # required
1169
+ # value: "ASC", # required, accepts ASC, DESC
1170
+ # },
1171
+ # ],
1172
+ # })
1173
+ #
1174
+ # @example Response structure
1175
+ #
1176
+ # resp.rooms #=> Array
1177
+ # resp.rooms[0].room_arn #=> String
1178
+ # resp.rooms[0].room_name #=> String
1179
+ # resp.rooms[0].description #=> String
1180
+ # resp.rooms[0].provider_calendar_id #=> String
1181
+ # resp.rooms[0].profile_arn #=> String
1182
+ # resp.rooms[0].profile_name #=> String
1183
+ # resp.next_token #=> String
1184
+ # resp.total_count #=> Integer
1185
+ #
1186
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchRooms AWS API Documentation
1187
+ #
1188
+ # @overload search_rooms(params = {})
1189
+ # @param [Hash] params ({})
1190
+ def search_rooms(params = {}, options = {})
1191
+ req = build_request(:search_rooms, params)
1192
+ req.send_request(options)
1193
+ end
1194
+
1195
+ # Searches skill groups and lists the ones that meet a set of filter and
1196
+ # sort criteria.
1197
+ #
1198
+ # @option params [String] :next_token
1199
+ # An optional token returned from a prior request. Use this token for
1200
+ # pagination of results from this action. If this parameter is
1201
+ # specified, the response includes only results beyond the token, up to
1202
+ # the value specified by `MaxResults`. Required.
1203
+ #
1204
+ # @option params [Integer] :max_results
1205
+ # The maximum number of results to include in the response. If more
1206
+ # results exist than the specified `MaxResults` value, a token is
1207
+ # included in the response so that the remaining results can be
1208
+ # retrieved.
1209
+ #
1210
+ # @option params [Array<Types::Filter>] :filters
1211
+ # The filters to use to list a specified set of skill groups. The
1212
+ # supported filter key is SkillGroupName.
1213
+ #
1214
+ # @option params [Array<Types::Sort>] :sort_criteria
1215
+ # The sort order to use in listing the specified set of skill groups.
1216
+ # The supported sort key is SkillGroupName.
1217
+ #
1218
+ # @return [Types::SearchSkillGroupsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1219
+ #
1220
+ # * {Types::SearchSkillGroupsResponse#skill_groups #skill_groups} => Array&lt;Types::SkillGroupData&gt;
1221
+ # * {Types::SearchSkillGroupsResponse#next_token #next_token} => String
1222
+ # * {Types::SearchSkillGroupsResponse#total_count #total_count} => Integer
1223
+ #
1224
+ # @example Request syntax with placeholder values
1225
+ #
1226
+ # resp = client.search_skill_groups({
1227
+ # next_token: "NextToken",
1228
+ # max_results: 1,
1229
+ # filters: [
1230
+ # {
1231
+ # key: "FilterKey", # required
1232
+ # values: ["FilterValue"], # required
1233
+ # },
1234
+ # ],
1235
+ # sort_criteria: [
1236
+ # {
1237
+ # key: "SortKey", # required
1238
+ # value: "ASC", # required, accepts ASC, DESC
1239
+ # },
1240
+ # ],
1241
+ # })
1242
+ #
1243
+ # @example Response structure
1244
+ #
1245
+ # resp.skill_groups #=> Array
1246
+ # resp.skill_groups[0].skill_group_arn #=> String
1247
+ # resp.skill_groups[0].skill_group_name #=> String
1248
+ # resp.skill_groups[0].description #=> String
1249
+ # resp.next_token #=> String
1250
+ # resp.total_count #=> Integer
1251
+ #
1252
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchSkillGroups AWS API Documentation
1253
+ #
1254
+ # @overload search_skill_groups(params = {})
1255
+ # @param [Hash] params ({})
1256
+ def search_skill_groups(params = {}, options = {})
1257
+ req = build_request(:search_skill_groups, params)
1258
+ req.send_request(options)
1259
+ end
1260
+
1261
+ # Searches users and lists the ones that meet a set of filter and sort
1262
+ # criteria.
1263
+ #
1264
+ # @option params [String] :next_token
1265
+ # An optional token returned from a prior request. Use this token for
1266
+ # pagination of results from this action. If this parameter is
1267
+ # specified, the response includes only results beyond the token, up to
1268
+ # the value specified by `MaxResults`. Required.
1269
+ #
1270
+ # @option params [Integer] :max_results
1271
+ # The maximum number of results to include in the response. If more
1272
+ # results exist than the specified `MaxResults` value, a token is
1273
+ # included in the response so that the remaining results can be
1274
+ # retrieved. Required.
1275
+ #
1276
+ # @option params [Array<Types::Filter>] :filters
1277
+ # The filters to use for listing a specific set of users. Required.
1278
+ # Supported filter keys are UserId, FirstName, LastName, Email, and
1279
+ # EnrollmentStatus.
1280
+ #
1281
+ # @option params [Array<Types::Sort>] :sort_criteria
1282
+ # The sort order to use in listing the filtered set of users. Required.
1283
+ # Supported sort keys are UserId, FirstName, LastName, Email, and
1284
+ # EnrollmentStatus.
1285
+ #
1286
+ # @return [Types::SearchUsersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1287
+ #
1288
+ # * {Types::SearchUsersResponse#users #users} => Array&lt;Types::UserData&gt;
1289
+ # * {Types::SearchUsersResponse#next_token #next_token} => String
1290
+ # * {Types::SearchUsersResponse#total_count #total_count} => Integer
1291
+ #
1292
+ # @example Request syntax with placeholder values
1293
+ #
1294
+ # resp = client.search_users({
1295
+ # next_token: "NextToken",
1296
+ # max_results: 1,
1297
+ # filters: [
1298
+ # {
1299
+ # key: "FilterKey", # required
1300
+ # values: ["FilterValue"], # required
1301
+ # },
1302
+ # ],
1303
+ # sort_criteria: [
1304
+ # {
1305
+ # key: "SortKey", # required
1306
+ # value: "ASC", # required, accepts ASC, DESC
1307
+ # },
1308
+ # ],
1309
+ # })
1310
+ #
1311
+ # @example Response structure
1312
+ #
1313
+ # resp.users #=> Array
1314
+ # resp.users[0].user_arn #=> String
1315
+ # resp.users[0].first_name #=> String
1316
+ # resp.users[0].last_name #=> String
1317
+ # resp.users[0].email #=> String
1318
+ # resp.users[0].enrollment_status #=> String, one of "INITIALIZED", "PENDING", "REGISTERED", "DEREGISTERING"
1319
+ # resp.users[0].enrollment_id #=> String
1320
+ # resp.next_token #=> String
1321
+ # resp.total_count #=> Integer
1322
+ #
1323
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchUsers AWS API Documentation
1324
+ #
1325
+ # @overload search_users(params = {})
1326
+ # @param [Hash] params ({})
1327
+ def search_users(params = {}, options = {})
1328
+ req = build_request(:search_users, params)
1329
+ req.send_request(options)
1330
+ end
1331
+
1332
+ # Sends an enrollment invitation email with a URL to a user. The URL is
1333
+ # valid for 72 hours or until you call this operation again, whichever
1334
+ # comes first.
1335
+ #
1336
+ # @option params [String] :user_arn
1337
+ # The ARN of the user to whom to send an invitation. Required.
1338
+ #
1339
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1340
+ #
1341
+ # @example Request syntax with placeholder values
1342
+ #
1343
+ # resp = client.send_invitation({
1344
+ # user_arn: "Arn",
1345
+ # })
1346
+ #
1347
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SendInvitation AWS API Documentation
1348
+ #
1349
+ # @overload send_invitation(params = {})
1350
+ # @param [Hash] params ({})
1351
+ def send_invitation(params = {}, options = {})
1352
+ req = build_request(:send_invitation, params)
1353
+ req.send_request(options)
1354
+ end
1355
+
1356
+ # Resets a device and its account to the known default settings by
1357
+ # clearing all information and settings set by previous users.
1358
+ #
1359
+ # @option params [String] :room_arn
1360
+ # The ARN of the room with which the device to sync is associated.
1361
+ # Required.
1362
+ #
1363
+ # @option params [String] :device_arn
1364
+ # The ARN of the device to sync. Required.
1365
+ #
1366
+ # @option params [required, Array<String>] :features
1367
+ # Request structure to start the device sync. Required.
1368
+ #
1369
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1370
+ #
1371
+ # @example Request syntax with placeholder values
1372
+ #
1373
+ # resp = client.start_device_sync({
1374
+ # room_arn: "Arn",
1375
+ # device_arn: "Arn",
1376
+ # features: ["BLUETOOTH"], # required, accepts BLUETOOTH, VOLUME, NOTIFICATIONS, LISTS, SKILLS, ALL
1377
+ # })
1378
+ #
1379
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/StartDeviceSync AWS API Documentation
1380
+ #
1381
+ # @overload start_device_sync(params = {})
1382
+ # @param [Hash] params ({})
1383
+ def start_device_sync(params = {}, options = {})
1384
+ req = build_request(:start_device_sync, params)
1385
+ req.send_request(options)
1386
+ end
1387
+
1388
+ # Adds metadata tags to a specified resource.
1389
+ #
1390
+ # @option params [required, String] :arn
1391
+ # The ARN of the resource to which to add metadata tags. Required.
1392
+ #
1393
+ # @option params [required, Array<Types::Tag>] :tags
1394
+ # The tags to be added to the specified resource. Do not provide system
1395
+ # tags. Required.
1396
+ #
1397
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1398
+ #
1399
+ # @example Request syntax with placeholder values
1400
+ #
1401
+ # resp = client.tag_resource({
1402
+ # arn: "Arn", # required
1403
+ # tags: [ # required
1404
+ # {
1405
+ # key: "TagKey",
1406
+ # value: "TagValue",
1407
+ # },
1408
+ # ],
1409
+ # })
1410
+ #
1411
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/TagResource AWS API Documentation
1412
+ #
1413
+ # @overload tag_resource(params = {})
1414
+ # @param [Hash] params ({})
1415
+ def tag_resource(params = {}, options = {})
1416
+ req = build_request(:tag_resource, params)
1417
+ req.send_request(options)
1418
+ end
1419
+
1420
+ # Removes metadata tags from a specified resource.
1421
+ #
1422
+ # @option params [required, String] :arn
1423
+ # The ARN of the resource from which to remove metadata tags. Required.
1424
+ #
1425
+ # @option params [required, Array<String>] :tag_keys
1426
+ # The tags to be removed from the specified resource. Do not provide
1427
+ # system tags. Required.
1428
+ #
1429
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1430
+ #
1431
+ # @example Request syntax with placeholder values
1432
+ #
1433
+ # resp = client.untag_resource({
1434
+ # arn: "Arn", # required
1435
+ # tag_keys: ["TagKey"], # required
1436
+ # })
1437
+ #
1438
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UntagResource AWS API Documentation
1439
+ #
1440
+ # @overload untag_resource(params = {})
1441
+ # @param [Hash] params ({})
1442
+ def untag_resource(params = {}, options = {})
1443
+ req = build_request(:untag_resource, params)
1444
+ req.send_request(options)
1445
+ end
1446
+
1447
+ # Updates the device name by device ARN.
1448
+ #
1449
+ # @option params [String] :device_arn
1450
+ # The ARN of the device to update. Required.
1451
+ #
1452
+ # @option params [String] :device_name
1453
+ # The updated device name. Required.
1454
+ #
1455
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1456
+ #
1457
+ # @example Request syntax with placeholder values
1458
+ #
1459
+ # resp = client.update_device({
1460
+ # device_arn: "Arn",
1461
+ # device_name: "DeviceName",
1462
+ # })
1463
+ #
1464
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateDevice AWS API Documentation
1465
+ #
1466
+ # @overload update_device(params = {})
1467
+ # @param [Hash] params ({})
1468
+ def update_device(params = {}, options = {})
1469
+ req = build_request(:update_device, params)
1470
+ req.send_request(options)
1471
+ end
1472
+
1473
+ # Updates an existing room profile by room profile ARN.
1474
+ #
1475
+ # @option params [String] :profile_arn
1476
+ # The ARN of the room profile to update. Required.
1477
+ #
1478
+ # @option params [String] :profile_name
1479
+ # The updated name for the room profile.
1480
+ #
1481
+ # @option params [String] :timezone
1482
+ # The updated timezone for the room profile.
1483
+ #
1484
+ # @option params [String] :address
1485
+ # The updated address for the room profile.
1486
+ #
1487
+ # @option params [String] :distance_unit
1488
+ # The updated distance unit for the room profile.
1489
+ #
1490
+ # @option params [String] :temperature_unit
1491
+ # The updated temperature unit for the room profile.
1492
+ #
1493
+ # @option params [String] :wake_word
1494
+ # The updated wake word for the room profile.
1495
+ #
1496
+ # @option params [Boolean] :setup_mode_disabled
1497
+ # Whether the setup mode of the profile is enabled.
1498
+ #
1499
+ # @option params [Integer] :max_volume_limit
1500
+ # The updated maximum volume limit for the room profile.
1501
+ #
1502
+ # @option params [Boolean] :pstn_enabled
1503
+ # Whether the PSTN setting of the room profile is enabled.
1504
+ #
1505
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1506
+ #
1507
+ # @example Request syntax with placeholder values
1508
+ #
1509
+ # resp = client.update_profile({
1510
+ # profile_arn: "Arn",
1511
+ # profile_name: "ProfileName",
1512
+ # timezone: "Timezone",
1513
+ # address: "Address",
1514
+ # distance_unit: "METRIC", # accepts METRIC, IMPERIAL
1515
+ # temperature_unit: "FAHRENHEIT", # accepts FAHRENHEIT, CELSIUS
1516
+ # wake_word: "ALEXA", # accepts ALEXA, AMAZON, ECHO, COMPUTER
1517
+ # setup_mode_disabled: false,
1518
+ # max_volume_limit: 1,
1519
+ # pstn_enabled: false,
1520
+ # })
1521
+ #
1522
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateProfile AWS API Documentation
1523
+ #
1524
+ # @overload update_profile(params = {})
1525
+ # @param [Hash] params ({})
1526
+ def update_profile(params = {}, options = {})
1527
+ req = build_request(:update_profile, params)
1528
+ req.send_request(options)
1529
+ end
1530
+
1531
+ # Updates room details by room ARN.
1532
+ #
1533
+ # @option params [String] :room_arn
1534
+ # The ARN of the room to update.
1535
+ #
1536
+ # @option params [String] :room_name
1537
+ # The updated name for the room.
1538
+ #
1539
+ # @option params [String] :description
1540
+ # The updated description for the room.
1541
+ #
1542
+ # @option params [String] :provider_calendar_id
1543
+ # The updated provider calendar ARN for the room.
1544
+ #
1545
+ # @option params [String] :profile_arn
1546
+ # The updated profile ARN for the room.
1547
+ #
1548
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1549
+ #
1550
+ # @example Request syntax with placeholder values
1551
+ #
1552
+ # resp = client.update_room({
1553
+ # room_arn: "Arn",
1554
+ # room_name: "RoomName",
1555
+ # description: "RoomDescription",
1556
+ # provider_calendar_id: "ProviderCalendarId",
1557
+ # profile_arn: "Arn",
1558
+ # })
1559
+ #
1560
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateRoom AWS API Documentation
1561
+ #
1562
+ # @overload update_room(params = {})
1563
+ # @param [Hash] params ({})
1564
+ def update_room(params = {}, options = {})
1565
+ req = build_request(:update_room, params)
1566
+ req.send_request(options)
1567
+ end
1568
+
1569
+ # Updates skill group details by skill group ARN.
1570
+ #
1571
+ # @option params [String] :skill_group_arn
1572
+ # The ARN of the skill group to update.
1573
+ #
1574
+ # @option params [String] :skill_group_name
1575
+ # The updated name for the skill group.
1576
+ #
1577
+ # @option params [String] :description
1578
+ # The updated description for the skill group.
1579
+ #
1580
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1581
+ #
1582
+ # @example Request syntax with placeholder values
1583
+ #
1584
+ # resp = client.update_skill_group({
1585
+ # skill_group_arn: "Arn",
1586
+ # skill_group_name: "SkillGroupName",
1587
+ # description: "SkillGroupDescription",
1588
+ # })
1589
+ #
1590
+ # @see http://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateSkillGroup AWS API Documentation
1591
+ #
1592
+ # @overload update_skill_group(params = {})
1593
+ # @param [Hash] params ({})
1594
+ def update_skill_group(params = {}, options = {})
1595
+ req = build_request(:update_skill_group, params)
1596
+ req.send_request(options)
1597
+ end
1598
+
1599
+ # @!endgroup
1600
+
1601
+ # @param params ({})
1602
+ # @api private
1603
+ def build_request(operation_name, params = {})
1604
+ handlers = @handlers.for(operation_name)
1605
+ context = Seahorse::Client::RequestContext.new(
1606
+ operation_name: operation_name,
1607
+ operation: config.api.operation(operation_name),
1608
+ client: self,
1609
+ params: params,
1610
+ config: config)
1611
+ context[:gem_name] = 'aws-sdk-alexaforbusiness'
1612
+ context[:gem_version] = '1.0.0'
1613
+ Seahorse::Client::Request.new(handlers, context)
1614
+ end
1615
+
1616
+ # @api private
1617
+ # @deprecated
1618
+ def waiter_names
1619
+ []
1620
+ end
1621
+
1622
+ class << self
1623
+
1624
+ # @api private
1625
+ attr_reader :identifier
1626
+
1627
+ # @api private
1628
+ def errors_module
1629
+ Errors
1630
+ end
1631
+
1632
+ end
1633
+ end
1634
+ end