aws-sdk-iotevents 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: 8b8921bf4ec347f11eb66a8bba7623ee7abb6a33
4
+ data.tar.gz: 66161ec67c50fcd98dda051776924e5c6cd4b09d
5
+ SHA512:
6
+ metadata.gz: 8b8065bbfb9fe391622062b672830301e2acf5d4a73784cda29087891784510936b832e1cdb1830bccdae08dde42bace78ba0e04d27603c1aa4d9615714b18d2
7
+ data.tar.gz: 2ff8fe16d537013ecfa33fc700776a77c760edf1f386e29504d06ba7cb3e52d4157c9ec995ce8afbc47a9dada613ad032fd582de08e0b21ecc5c48374f5a2dfb
@@ -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-iotevents/types'
12
+ require_relative 'aws-sdk-iotevents/client_api'
13
+ require_relative 'aws-sdk-iotevents/client'
14
+ require_relative 'aws-sdk-iotevents/errors'
15
+ require_relative 'aws-sdk-iotevents/resource'
16
+ require_relative 'aws-sdk-iotevents/customizations'
17
+
18
+ # This module provides support for AWS IoT Events. This module is available in the
19
+ # `aws-sdk-iotevents` 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 AWS IoT Events all
32
+ # extend {Errors::ServiceError}.
33
+ #
34
+ # begin
35
+ # # do stuff
36
+ # rescue Aws::IoTEvents::Errors::ServiceError
37
+ # # rescues all service API errors
38
+ # end
39
+ #
40
+ # See {Errors} for more information.
41
+ #
42
+ # @service
43
+ module Aws::IoTEvents
44
+
45
+ GEM_VERSION = '1.0.0'
46
+
47
+ end
@@ -0,0 +1,1191 @@
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/endpoint_discovery.rb'
19
+ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
20
+ require 'aws-sdk-core/plugins/response_paging.rb'
21
+ require 'aws-sdk-core/plugins/stub_responses.rb'
22
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
23
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
24
+ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
25
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
26
+ require 'aws-sdk-core/plugins/transfer_encoding.rb'
27
+ require 'aws-sdk-core/plugins/signature_v4.rb'
28
+ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
29
+
30
+ Aws::Plugins::GlobalConfiguration.add_identifier(:iotevents)
31
+
32
+ module Aws::IoTEvents
33
+ class Client < Seahorse::Client::Base
34
+
35
+ include Aws::ClientStubs
36
+
37
+ @identifier = :iotevents
38
+
39
+ set_api(ClientApi::API)
40
+
41
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
42
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
43
+ add_plugin(Aws::Plugins::Logging)
44
+ add_plugin(Aws::Plugins::ParamConverter)
45
+ add_plugin(Aws::Plugins::ParamValidator)
46
+ add_plugin(Aws::Plugins::UserAgent)
47
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
48
+ add_plugin(Aws::Plugins::RetryErrors)
49
+ add_plugin(Aws::Plugins::GlobalConfiguration)
50
+ add_plugin(Aws::Plugins::RegionalEndpoint)
51
+ add_plugin(Aws::Plugins::EndpointDiscovery)
52
+ add_plugin(Aws::Plugins::EndpointPattern)
53
+ add_plugin(Aws::Plugins::ResponsePaging)
54
+ add_plugin(Aws::Plugins::StubResponses)
55
+ add_plugin(Aws::Plugins::IdempotencyToken)
56
+ add_plugin(Aws::Plugins::JsonvalueConverter)
57
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
58
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
59
+ add_plugin(Aws::Plugins::TransferEncoding)
60
+ add_plugin(Aws::Plugins::SignatureV4)
61
+ add_plugin(Aws::Plugins::Protocols::RestJson)
62
+
63
+ # @overload initialize(options)
64
+ # @param [Hash] options
65
+ # @option options [required, Aws::CredentialProvider] :credentials
66
+ # Your AWS credentials. This can be an instance of any one of the
67
+ # following classes:
68
+ #
69
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
70
+ # credentials.
71
+ #
72
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
73
+ # from an EC2 IMDS on an EC2 instance.
74
+ #
75
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
76
+ # shared file, such as `~/.aws/config`.
77
+ #
78
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
79
+ #
80
+ # When `:credentials` are not configured directly, the following
81
+ # locations will be searched for credentials:
82
+ #
83
+ # * `Aws.config[:credentials]`
84
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
85
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
86
+ # * `~/.aws/credentials`
87
+ # * `~/.aws/config`
88
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
89
+ # very aggressive. Construct and pass an instance of
90
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
91
+ # timeouts.
92
+ #
93
+ # @option options [required, String] :region
94
+ # The AWS region to connect to. The configured `:region` is
95
+ # used to determine the service `:endpoint`. When not passed,
96
+ # a default `:region` is search for in the following locations:
97
+ #
98
+ # * `Aws.config[:region]`
99
+ # * `ENV['AWS_REGION']`
100
+ # * `ENV['AMAZON_REGION']`
101
+ # * `ENV['AWS_DEFAULT_REGION']`
102
+ # * `~/.aws/credentials`
103
+ # * `~/.aws/config`
104
+ #
105
+ # @option options [String] :access_key_id
106
+ #
107
+ # @option options [Boolean] :active_endpoint_cache (false)
108
+ # When set to `true`, a thread polling for endpoints will be running in
109
+ # the background every 60 secs (default). Defaults to `false`.
110
+ #
111
+ # @option options [Boolean] :client_side_monitoring (false)
112
+ # When `true`, client-side metrics will be collected for all API requests from
113
+ # this client.
114
+ #
115
+ # @option options [String] :client_side_monitoring_client_id ("")
116
+ # Allows you to provide an identifier for this client which will be attached to
117
+ # all generated client side metrics. Defaults to an empty string.
118
+ #
119
+ # @option options [Integer] :client_side_monitoring_port (31000)
120
+ # Required for publishing client metrics. The port that the client side monitoring
121
+ # agent is running on, where client metrics will be published via UDP.
122
+ #
123
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
124
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
125
+ # will use the Client Side Monitoring Agent Publisher.
126
+ #
127
+ # @option options [Boolean] :convert_params (true)
128
+ # When `true`, an attempt is made to coerce request parameters into
129
+ # the required types.
130
+ #
131
+ # @option options [Boolean] :disable_host_prefix_injection (false)
132
+ # Set to true to disable SDK automatically adding host prefix
133
+ # to default service endpoint when available.
134
+ #
135
+ # @option options [String] :endpoint
136
+ # The client endpoint is normally constructed from the `:region`
137
+ # option. You should only configure an `:endpoint` when connecting
138
+ # to test endpoints. This should be avalid HTTP(S) URI.
139
+ #
140
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
141
+ # Used for the maximum size limit of the LRU cache storing endpoints data
142
+ # for endpoint discovery enabled operations. Defaults to 1000.
143
+ #
144
+ # @option options [Integer] :endpoint_cache_max_threads (10)
145
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
146
+ #
147
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
148
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
149
+ # Use this option to config the time interval in seconds for making
150
+ # requests fetching endpoints information. Defaults to 60 sec.
151
+ #
152
+ # @option options [Boolean] :endpoint_discovery (false)
153
+ # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
154
+ #
155
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
156
+ # The log formatter.
157
+ #
158
+ # @option options [Symbol] :log_level (:info)
159
+ # The log level to send messages to the `:logger` at.
160
+ #
161
+ # @option options [Logger] :logger
162
+ # The Logger instance to send log messages to. If this option
163
+ # is not set, logging will be disabled.
164
+ #
165
+ # @option options [String] :profile ("default")
166
+ # Used when loading credentials from the shared credentials file
167
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
168
+ #
169
+ # @option options [Float] :retry_base_delay (0.3)
170
+ # The base delay in seconds used by the default backoff function.
171
+ #
172
+ # @option options [Symbol] :retry_jitter (:none)
173
+ # A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number.
174
+ #
175
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
176
+ #
177
+ # @option options [Integer] :retry_limit (3)
178
+ # The maximum number of times to retry failed requests. Only
179
+ # ~ 500 level server errors and certain ~ 400 level client errors
180
+ # are retried. Generally, these are throttling errors, data
181
+ # checksum errors, networking errors, timeout errors and auth
182
+ # errors from expired credentials.
183
+ #
184
+ # @option options [Integer] :retry_max_delay (0)
185
+ # The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function.
186
+ #
187
+ # @option options [String] :secret_access_key
188
+ #
189
+ # @option options [String] :session_token
190
+ #
191
+ # @option options [Boolean] :stub_responses (false)
192
+ # Causes the client to return stubbed responses. By default
193
+ # fake responses are generated and returned. You can specify
194
+ # the response data to return or errors to raise by calling
195
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
196
+ #
197
+ # ** Please note ** When response stubbing is enabled, no HTTP
198
+ # requests are made, and retries are disabled.
199
+ #
200
+ # @option options [Boolean] :validate_params (true)
201
+ # When `true`, request parameters are validated before
202
+ # sending the request.
203
+ #
204
+ # @option options [URI::HTTP,String] :http_proxy A proxy to send
205
+ # requests through. Formatted like 'http://proxy.com:123'.
206
+ #
207
+ # @option options [Float] :http_open_timeout (15) The number of
208
+ # seconds to wait when opening a HTTP session before rasing a
209
+ # `Timeout::Error`.
210
+ #
211
+ # @option options [Integer] :http_read_timeout (60) The default
212
+ # number of seconds to wait for response data. This value can
213
+ # safely be set
214
+ # per-request on the session yeidled by {#session_for}.
215
+ #
216
+ # @option options [Float] :http_idle_timeout (5) The number of
217
+ # seconds a connection is allowed to sit idble before it is
218
+ # considered stale. Stale connections are closed and removed
219
+ # from the pool before making a request.
220
+ #
221
+ # @option options [Float] :http_continue_timeout (1) The number of
222
+ # seconds to wait for a 100-continue response before sending the
223
+ # request body. This option has no effect unless the request has
224
+ # "Expect" header set to "100-continue". Defaults to `nil` which
225
+ # disables this behaviour. This value can safely be set per
226
+ # request on the session yeidled by {#session_for}.
227
+ #
228
+ # @option options [Boolean] :http_wire_trace (false) When `true`,
229
+ # HTTP debug output will be sent to the `:logger`.
230
+ #
231
+ # @option options [Boolean] :ssl_verify_peer (true) When `true`,
232
+ # SSL peer certificates are verified when establishing a
233
+ # connection.
234
+ #
235
+ # @option options [String] :ssl_ca_bundle Full path to the SSL
236
+ # certificate authority bundle file that should be used when
237
+ # verifying peer certificates. If you do not pass
238
+ # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
239
+ # will be used if available.
240
+ #
241
+ # @option options [String] :ssl_ca_directory Full path of the
242
+ # directory that contains the unbundled SSL certificate
243
+ # authority files for verifying peer certificates. If you do
244
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
245
+ # system default will be used if available.
246
+ #
247
+ def initialize(*args)
248
+ super
249
+ end
250
+
251
+ # @!group API Operations
252
+
253
+ # Creates a detector model.
254
+ #
255
+ # @option params [required, String] :detector_model_name
256
+ # The name of the detector model.
257
+ #
258
+ # @option params [required, Types::DetectorModelDefinition] :detector_model_definition
259
+ # Information that defines how the detectors operate.
260
+ #
261
+ # @option params [String] :detector_model_description
262
+ # A brief description of the detector model.
263
+ #
264
+ # @option params [String] :key
265
+ # The input attribute key used to identify a device or system in order
266
+ # to create a detector (an instance of the detector model) and then to
267
+ # route each input received to the appropriate detector (instance). This
268
+ # parameter uses a JSON-path expression to specify the attribute-value
269
+ # pair in the message payload of each input that is used to identify the
270
+ # device associated with the input.
271
+ #
272
+ # @option params [required, String] :role_arn
273
+ # The ARN of the role that grants permission to AWS IoT Events to
274
+ # perform its operations.
275
+ #
276
+ # @option params [Array<Types::Tag>] :tags
277
+ # Metadata which can be used to manage the detector model.
278
+ #
279
+ # @return [Types::CreateDetectorModelResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
280
+ #
281
+ # * {Types::CreateDetectorModelResponse#detector_model_configuration #detector_model_configuration} => Types::DetectorModelConfiguration
282
+ #
283
+ # @example Request syntax with placeholder values
284
+ #
285
+ # resp = client.create_detector_model({
286
+ # detector_model_name: "DetectorModelName", # required
287
+ # detector_model_definition: { # required
288
+ # states: [ # required
289
+ # {
290
+ # state_name: "StateName", # required
291
+ # on_input: {
292
+ # events: [
293
+ # {
294
+ # event_name: "EventName", # required
295
+ # condition: "Condition",
296
+ # actions: [
297
+ # {
298
+ # set_variable: {
299
+ # variable_name: "VariableName", # required
300
+ # value: "VariableValue", # required
301
+ # },
302
+ # sns: {
303
+ # target_arn: "AmazonResourceName", # required
304
+ # },
305
+ # iot_topic_publish: {
306
+ # mqtt_topic: "MQTTTopic", # required
307
+ # },
308
+ # set_timer: {
309
+ # timer_name: "TimerName", # required
310
+ # seconds: 1, # required
311
+ # },
312
+ # clear_timer: {
313
+ # timer_name: "TimerName", # required
314
+ # },
315
+ # reset_timer: {
316
+ # timer_name: "TimerName", # required
317
+ # },
318
+ # },
319
+ # ],
320
+ # },
321
+ # ],
322
+ # transition_events: [
323
+ # {
324
+ # event_name: "EventName", # required
325
+ # condition: "Condition", # required
326
+ # actions: [
327
+ # {
328
+ # set_variable: {
329
+ # variable_name: "VariableName", # required
330
+ # value: "VariableValue", # required
331
+ # },
332
+ # sns: {
333
+ # target_arn: "AmazonResourceName", # required
334
+ # },
335
+ # iot_topic_publish: {
336
+ # mqtt_topic: "MQTTTopic", # required
337
+ # },
338
+ # set_timer: {
339
+ # timer_name: "TimerName", # required
340
+ # seconds: 1, # required
341
+ # },
342
+ # clear_timer: {
343
+ # timer_name: "TimerName", # required
344
+ # },
345
+ # reset_timer: {
346
+ # timer_name: "TimerName", # required
347
+ # },
348
+ # },
349
+ # ],
350
+ # next_state: "StateName", # required
351
+ # },
352
+ # ],
353
+ # },
354
+ # on_enter: {
355
+ # events: [
356
+ # {
357
+ # event_name: "EventName", # required
358
+ # condition: "Condition",
359
+ # actions: [
360
+ # {
361
+ # set_variable: {
362
+ # variable_name: "VariableName", # required
363
+ # value: "VariableValue", # required
364
+ # },
365
+ # sns: {
366
+ # target_arn: "AmazonResourceName", # required
367
+ # },
368
+ # iot_topic_publish: {
369
+ # mqtt_topic: "MQTTTopic", # required
370
+ # },
371
+ # set_timer: {
372
+ # timer_name: "TimerName", # required
373
+ # seconds: 1, # required
374
+ # },
375
+ # clear_timer: {
376
+ # timer_name: "TimerName", # required
377
+ # },
378
+ # reset_timer: {
379
+ # timer_name: "TimerName", # required
380
+ # },
381
+ # },
382
+ # ],
383
+ # },
384
+ # ],
385
+ # },
386
+ # on_exit: {
387
+ # events: [
388
+ # {
389
+ # event_name: "EventName", # required
390
+ # condition: "Condition",
391
+ # actions: [
392
+ # {
393
+ # set_variable: {
394
+ # variable_name: "VariableName", # required
395
+ # value: "VariableValue", # required
396
+ # },
397
+ # sns: {
398
+ # target_arn: "AmazonResourceName", # required
399
+ # },
400
+ # iot_topic_publish: {
401
+ # mqtt_topic: "MQTTTopic", # required
402
+ # },
403
+ # set_timer: {
404
+ # timer_name: "TimerName", # required
405
+ # seconds: 1, # required
406
+ # },
407
+ # clear_timer: {
408
+ # timer_name: "TimerName", # required
409
+ # },
410
+ # reset_timer: {
411
+ # timer_name: "TimerName", # required
412
+ # },
413
+ # },
414
+ # ],
415
+ # },
416
+ # ],
417
+ # },
418
+ # },
419
+ # ],
420
+ # initial_state_name: "StateName", # required
421
+ # },
422
+ # detector_model_description: "DetectorModelDescription",
423
+ # key: "AttributeJsonPath",
424
+ # role_arn: "AmazonResourceName", # required
425
+ # tags: [
426
+ # {
427
+ # key: "TagKey", # required
428
+ # value: "TagValue", # required
429
+ # },
430
+ # ],
431
+ # })
432
+ #
433
+ # @example Response structure
434
+ #
435
+ # resp.detector_model_configuration.detector_model_name #=> String
436
+ # resp.detector_model_configuration.detector_model_version #=> String
437
+ # resp.detector_model_configuration.detector_model_description #=> String
438
+ # resp.detector_model_configuration.detector_model_arn #=> String
439
+ # resp.detector_model_configuration.role_arn #=> String
440
+ # resp.detector_model_configuration.creation_time #=> Time
441
+ # resp.detector_model_configuration.last_update_time #=> Time
442
+ # resp.detector_model_configuration.status #=> String, one of "ACTIVE", "ACTIVATING", "INACTIVE", "DEPRECATED", "DRAFT", "PAUSED", "FAILED"
443
+ # resp.detector_model_configuration.key #=> String
444
+ #
445
+ # @overload create_detector_model(params = {})
446
+ # @param [Hash] params ({})
447
+ def create_detector_model(params = {}, options = {})
448
+ req = build_request(:create_detector_model, params)
449
+ req.send_request(options)
450
+ end
451
+
452
+ # Creates an input.
453
+ #
454
+ # @option params [required, String] :input_name
455
+ # The name you want to give to the input.
456
+ #
457
+ # @option params [String] :input_description
458
+ # A brief description of the input.
459
+ #
460
+ # @option params [required, Types::InputDefinition] :input_definition
461
+ # The definition of the input.
462
+ #
463
+ # @option params [Array<Types::Tag>] :tags
464
+ # Metadata which can be used to manage the input.
465
+ #
466
+ # @return [Types::CreateInputResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
467
+ #
468
+ # * {Types::CreateInputResponse#input_configuration #input_configuration} => Types::InputConfiguration
469
+ #
470
+ # @example Request syntax with placeholder values
471
+ #
472
+ # resp = client.create_input({
473
+ # input_name: "InputName", # required
474
+ # input_description: "InputDescription",
475
+ # input_definition: { # required
476
+ # attributes: [ # required
477
+ # {
478
+ # json_path: "AttributeJsonPath", # required
479
+ # },
480
+ # ],
481
+ # },
482
+ # tags: [
483
+ # {
484
+ # key: "TagKey", # required
485
+ # value: "TagValue", # required
486
+ # },
487
+ # ],
488
+ # })
489
+ #
490
+ # @example Response structure
491
+ #
492
+ # resp.input_configuration.input_name #=> String
493
+ # resp.input_configuration.input_description #=> String
494
+ # resp.input_configuration.input_arn #=> String
495
+ # resp.input_configuration.creation_time #=> Time
496
+ # resp.input_configuration.last_update_time #=> Time
497
+ # resp.input_configuration.status #=> String, one of "CREATING", "UPDATING", "ACTIVE", "DELETING"
498
+ #
499
+ # @overload create_input(params = {})
500
+ # @param [Hash] params ({})
501
+ def create_input(params = {}, options = {})
502
+ req = build_request(:create_input, params)
503
+ req.send_request(options)
504
+ end
505
+
506
+ # Deletes a detector model. Any active instances of the detector model
507
+ # are also deleted.
508
+ #
509
+ # @option params [required, String] :detector_model_name
510
+ # The name of the detector model to be deleted.
511
+ #
512
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
513
+ #
514
+ # @example Request syntax with placeholder values
515
+ #
516
+ # resp = client.delete_detector_model({
517
+ # detector_model_name: "DetectorModelName", # required
518
+ # })
519
+ #
520
+ # @overload delete_detector_model(params = {})
521
+ # @param [Hash] params ({})
522
+ def delete_detector_model(params = {}, options = {})
523
+ req = build_request(:delete_detector_model, params)
524
+ req.send_request(options)
525
+ end
526
+
527
+ # Deletes an input.
528
+ #
529
+ # @option params [required, String] :input_name
530
+ # The name of the input to be deleted.
531
+ #
532
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
533
+ #
534
+ # @example Request syntax with placeholder values
535
+ #
536
+ # resp = client.delete_input({
537
+ # input_name: "InputName", # required
538
+ # })
539
+ #
540
+ # @overload delete_input(params = {})
541
+ # @param [Hash] params ({})
542
+ def delete_input(params = {}, options = {})
543
+ req = build_request(:delete_input, params)
544
+ req.send_request(options)
545
+ end
546
+
547
+ # Describes a detector model. If the `version` parameter is not
548
+ # specified, information about the latest version is returned.
549
+ #
550
+ # @option params [required, String] :detector_model_name
551
+ # The name of the detector model.
552
+ #
553
+ # @option params [String] :detector_model_version
554
+ # The version of the detector model.
555
+ #
556
+ # @return [Types::DescribeDetectorModelResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
557
+ #
558
+ # * {Types::DescribeDetectorModelResponse#detector_model #detector_model} => Types::DetectorModel
559
+ #
560
+ # @example Request syntax with placeholder values
561
+ #
562
+ # resp = client.describe_detector_model({
563
+ # detector_model_name: "DetectorModelName", # required
564
+ # detector_model_version: "DetectorModelVersion",
565
+ # })
566
+ #
567
+ # @example Response structure
568
+ #
569
+ # resp.detector_model.detector_model_definition.states #=> Array
570
+ # resp.detector_model.detector_model_definition.states[0].state_name #=> String
571
+ # resp.detector_model.detector_model_definition.states[0].on_input.events #=> Array
572
+ # resp.detector_model.detector_model_definition.states[0].on_input.events[0].event_name #=> String
573
+ # resp.detector_model.detector_model_definition.states[0].on_input.events[0].condition #=> String
574
+ # resp.detector_model.detector_model_definition.states[0].on_input.events[0].actions #=> Array
575
+ # resp.detector_model.detector_model_definition.states[0].on_input.events[0].actions[0].set_variable.variable_name #=> String
576
+ # resp.detector_model.detector_model_definition.states[0].on_input.events[0].actions[0].set_variable.value #=> String
577
+ # resp.detector_model.detector_model_definition.states[0].on_input.events[0].actions[0].sns.target_arn #=> String
578
+ # resp.detector_model.detector_model_definition.states[0].on_input.events[0].actions[0].iot_topic_publish.mqtt_topic #=> String
579
+ # resp.detector_model.detector_model_definition.states[0].on_input.events[0].actions[0].set_timer.timer_name #=> String
580
+ # resp.detector_model.detector_model_definition.states[0].on_input.events[0].actions[0].set_timer.seconds #=> Integer
581
+ # resp.detector_model.detector_model_definition.states[0].on_input.events[0].actions[0].clear_timer.timer_name #=> String
582
+ # resp.detector_model.detector_model_definition.states[0].on_input.events[0].actions[0].reset_timer.timer_name #=> String
583
+ # resp.detector_model.detector_model_definition.states[0].on_input.transition_events #=> Array
584
+ # resp.detector_model.detector_model_definition.states[0].on_input.transition_events[0].event_name #=> String
585
+ # resp.detector_model.detector_model_definition.states[0].on_input.transition_events[0].condition #=> String
586
+ # resp.detector_model.detector_model_definition.states[0].on_input.transition_events[0].actions #=> Array
587
+ # resp.detector_model.detector_model_definition.states[0].on_input.transition_events[0].actions[0].set_variable.variable_name #=> String
588
+ # resp.detector_model.detector_model_definition.states[0].on_input.transition_events[0].actions[0].set_variable.value #=> String
589
+ # resp.detector_model.detector_model_definition.states[0].on_input.transition_events[0].actions[0].sns.target_arn #=> String
590
+ # resp.detector_model.detector_model_definition.states[0].on_input.transition_events[0].actions[0].iot_topic_publish.mqtt_topic #=> String
591
+ # resp.detector_model.detector_model_definition.states[0].on_input.transition_events[0].actions[0].set_timer.timer_name #=> String
592
+ # resp.detector_model.detector_model_definition.states[0].on_input.transition_events[0].actions[0].set_timer.seconds #=> Integer
593
+ # resp.detector_model.detector_model_definition.states[0].on_input.transition_events[0].actions[0].clear_timer.timer_name #=> String
594
+ # resp.detector_model.detector_model_definition.states[0].on_input.transition_events[0].actions[0].reset_timer.timer_name #=> String
595
+ # resp.detector_model.detector_model_definition.states[0].on_input.transition_events[0].next_state #=> String
596
+ # resp.detector_model.detector_model_definition.states[0].on_enter.events #=> Array
597
+ # resp.detector_model.detector_model_definition.states[0].on_enter.events[0].event_name #=> String
598
+ # resp.detector_model.detector_model_definition.states[0].on_enter.events[0].condition #=> String
599
+ # resp.detector_model.detector_model_definition.states[0].on_enter.events[0].actions #=> Array
600
+ # resp.detector_model.detector_model_definition.states[0].on_enter.events[0].actions[0].set_variable.variable_name #=> String
601
+ # resp.detector_model.detector_model_definition.states[0].on_enter.events[0].actions[0].set_variable.value #=> String
602
+ # resp.detector_model.detector_model_definition.states[0].on_enter.events[0].actions[0].sns.target_arn #=> String
603
+ # resp.detector_model.detector_model_definition.states[0].on_enter.events[0].actions[0].iot_topic_publish.mqtt_topic #=> String
604
+ # resp.detector_model.detector_model_definition.states[0].on_enter.events[0].actions[0].set_timer.timer_name #=> String
605
+ # resp.detector_model.detector_model_definition.states[0].on_enter.events[0].actions[0].set_timer.seconds #=> Integer
606
+ # resp.detector_model.detector_model_definition.states[0].on_enter.events[0].actions[0].clear_timer.timer_name #=> String
607
+ # resp.detector_model.detector_model_definition.states[0].on_enter.events[0].actions[0].reset_timer.timer_name #=> String
608
+ # resp.detector_model.detector_model_definition.states[0].on_exit.events #=> Array
609
+ # resp.detector_model.detector_model_definition.states[0].on_exit.events[0].event_name #=> String
610
+ # resp.detector_model.detector_model_definition.states[0].on_exit.events[0].condition #=> String
611
+ # resp.detector_model.detector_model_definition.states[0].on_exit.events[0].actions #=> Array
612
+ # resp.detector_model.detector_model_definition.states[0].on_exit.events[0].actions[0].set_variable.variable_name #=> String
613
+ # resp.detector_model.detector_model_definition.states[0].on_exit.events[0].actions[0].set_variable.value #=> String
614
+ # resp.detector_model.detector_model_definition.states[0].on_exit.events[0].actions[0].sns.target_arn #=> String
615
+ # resp.detector_model.detector_model_definition.states[0].on_exit.events[0].actions[0].iot_topic_publish.mqtt_topic #=> String
616
+ # resp.detector_model.detector_model_definition.states[0].on_exit.events[0].actions[0].set_timer.timer_name #=> String
617
+ # resp.detector_model.detector_model_definition.states[0].on_exit.events[0].actions[0].set_timer.seconds #=> Integer
618
+ # resp.detector_model.detector_model_definition.states[0].on_exit.events[0].actions[0].clear_timer.timer_name #=> String
619
+ # resp.detector_model.detector_model_definition.states[0].on_exit.events[0].actions[0].reset_timer.timer_name #=> String
620
+ # resp.detector_model.detector_model_definition.initial_state_name #=> String
621
+ # resp.detector_model.detector_model_configuration.detector_model_name #=> String
622
+ # resp.detector_model.detector_model_configuration.detector_model_version #=> String
623
+ # resp.detector_model.detector_model_configuration.detector_model_description #=> String
624
+ # resp.detector_model.detector_model_configuration.detector_model_arn #=> String
625
+ # resp.detector_model.detector_model_configuration.role_arn #=> String
626
+ # resp.detector_model.detector_model_configuration.creation_time #=> Time
627
+ # resp.detector_model.detector_model_configuration.last_update_time #=> Time
628
+ # resp.detector_model.detector_model_configuration.status #=> String, one of "ACTIVE", "ACTIVATING", "INACTIVE", "DEPRECATED", "DRAFT", "PAUSED", "FAILED"
629
+ # resp.detector_model.detector_model_configuration.key #=> String
630
+ #
631
+ # @overload describe_detector_model(params = {})
632
+ # @param [Hash] params ({})
633
+ def describe_detector_model(params = {}, options = {})
634
+ req = build_request(:describe_detector_model, params)
635
+ req.send_request(options)
636
+ end
637
+
638
+ # Describes an input.
639
+ #
640
+ # @option params [required, String] :input_name
641
+ # The name of the input.
642
+ #
643
+ # @return [Types::DescribeInputResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
644
+ #
645
+ # * {Types::DescribeInputResponse#input #input} => Types::Input
646
+ #
647
+ # @example Request syntax with placeholder values
648
+ #
649
+ # resp = client.describe_input({
650
+ # input_name: "InputName", # required
651
+ # })
652
+ #
653
+ # @example Response structure
654
+ #
655
+ # resp.input.input_configuration.input_name #=> String
656
+ # resp.input.input_configuration.input_description #=> String
657
+ # resp.input.input_configuration.input_arn #=> String
658
+ # resp.input.input_configuration.creation_time #=> Time
659
+ # resp.input.input_configuration.last_update_time #=> Time
660
+ # resp.input.input_configuration.status #=> String, one of "CREATING", "UPDATING", "ACTIVE", "DELETING"
661
+ # resp.input.input_definition.attributes #=> Array
662
+ # resp.input.input_definition.attributes[0].json_path #=> String
663
+ #
664
+ # @overload describe_input(params = {})
665
+ # @param [Hash] params ({})
666
+ def describe_input(params = {}, options = {})
667
+ req = build_request(:describe_input, params)
668
+ req.send_request(options)
669
+ end
670
+
671
+ # Retrieves the current settings of the AWS IoT Events logging options.
672
+ #
673
+ # @return [Types::DescribeLoggingOptionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
674
+ #
675
+ # * {Types::DescribeLoggingOptionsResponse#logging_options #logging_options} => Types::LoggingOptions
676
+ #
677
+ # @example Response structure
678
+ #
679
+ # resp.logging_options.role_arn #=> String
680
+ # resp.logging_options.level #=> String, one of "ERROR", "INFO", "DEBUG"
681
+ # resp.logging_options.enabled #=> Boolean
682
+ # resp.logging_options.detector_debug_options #=> Array
683
+ # resp.logging_options.detector_debug_options[0].detector_model_name #=> String
684
+ # resp.logging_options.detector_debug_options[0].key_value #=> String
685
+ #
686
+ # @overload describe_logging_options(params = {})
687
+ # @param [Hash] params ({})
688
+ def describe_logging_options(params = {}, options = {})
689
+ req = build_request(:describe_logging_options, params)
690
+ req.send_request(options)
691
+ end
692
+
693
+ # Lists all the versions of a detector model. Only the metadata
694
+ # associated with each detector model version is returned.
695
+ #
696
+ # @option params [required, String] :detector_model_name
697
+ # The name of the detector model whose versions are returned.
698
+ #
699
+ # @option params [String] :next_token
700
+ # The token for the next set of results.
701
+ #
702
+ # @option params [Integer] :max_results
703
+ # The maximum number of results to return at one time.
704
+ #
705
+ # @return [Types::ListDetectorModelVersionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
706
+ #
707
+ # * {Types::ListDetectorModelVersionsResponse#detector_model_version_summaries #detector_model_version_summaries} => Array&lt;Types::DetectorModelVersionSummary&gt;
708
+ # * {Types::ListDetectorModelVersionsResponse#next_token #next_token} => String
709
+ #
710
+ # @example Request syntax with placeholder values
711
+ #
712
+ # resp = client.list_detector_model_versions({
713
+ # detector_model_name: "DetectorModelName", # required
714
+ # next_token: "NextToken",
715
+ # max_results: 1,
716
+ # })
717
+ #
718
+ # @example Response structure
719
+ #
720
+ # resp.detector_model_version_summaries #=> Array
721
+ # resp.detector_model_version_summaries[0].detector_model_name #=> String
722
+ # resp.detector_model_version_summaries[0].detector_model_version #=> String
723
+ # resp.detector_model_version_summaries[0].detector_model_arn #=> String
724
+ # resp.detector_model_version_summaries[0].role_arn #=> String
725
+ # resp.detector_model_version_summaries[0].creation_time #=> Time
726
+ # resp.detector_model_version_summaries[0].last_update_time #=> Time
727
+ # resp.detector_model_version_summaries[0].status #=> String, one of "ACTIVE", "ACTIVATING", "INACTIVE", "DEPRECATED", "DRAFT", "PAUSED", "FAILED"
728
+ # resp.next_token #=> String
729
+ #
730
+ # @overload list_detector_model_versions(params = {})
731
+ # @param [Hash] params ({})
732
+ def list_detector_model_versions(params = {}, options = {})
733
+ req = build_request(:list_detector_model_versions, params)
734
+ req.send_request(options)
735
+ end
736
+
737
+ # Lists the detector models you have created. Only the metadata
738
+ # associated with each detector model is returned.
739
+ #
740
+ # @option params [String] :next_token
741
+ # The token for the next set of results.
742
+ #
743
+ # @option params [Integer] :max_results
744
+ # The maximum number of results to return at one time.
745
+ #
746
+ # @return [Types::ListDetectorModelsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
747
+ #
748
+ # * {Types::ListDetectorModelsResponse#detector_model_summaries #detector_model_summaries} => Array&lt;Types::DetectorModelSummary&gt;
749
+ # * {Types::ListDetectorModelsResponse#next_token #next_token} => String
750
+ #
751
+ # @example Request syntax with placeholder values
752
+ #
753
+ # resp = client.list_detector_models({
754
+ # next_token: "NextToken",
755
+ # max_results: 1,
756
+ # })
757
+ #
758
+ # @example Response structure
759
+ #
760
+ # resp.detector_model_summaries #=> Array
761
+ # resp.detector_model_summaries[0].detector_model_name #=> String
762
+ # resp.detector_model_summaries[0].detector_model_description #=> String
763
+ # resp.detector_model_summaries[0].creation_time #=> Time
764
+ # resp.next_token #=> String
765
+ #
766
+ # @overload list_detector_models(params = {})
767
+ # @param [Hash] params ({})
768
+ def list_detector_models(params = {}, options = {})
769
+ req = build_request(:list_detector_models, params)
770
+ req.send_request(options)
771
+ end
772
+
773
+ # Lists the inputs you have created.
774
+ #
775
+ # @option params [String] :next_token
776
+ # The token for the next set of results.
777
+ #
778
+ # @option params [Integer] :max_results
779
+ # The maximum number of results to return at one time.
780
+ #
781
+ # @return [Types::ListInputsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
782
+ #
783
+ # * {Types::ListInputsResponse#input_summaries #input_summaries} => Array&lt;Types::InputSummary&gt;
784
+ # * {Types::ListInputsResponse#next_token #next_token} => String
785
+ #
786
+ # @example Request syntax with placeholder values
787
+ #
788
+ # resp = client.list_inputs({
789
+ # next_token: "NextToken",
790
+ # max_results: 1,
791
+ # })
792
+ #
793
+ # @example Response structure
794
+ #
795
+ # resp.input_summaries #=> Array
796
+ # resp.input_summaries[0].input_name #=> String
797
+ # resp.input_summaries[0].input_description #=> String
798
+ # resp.input_summaries[0].input_arn #=> String
799
+ # resp.input_summaries[0].creation_time #=> Time
800
+ # resp.input_summaries[0].last_update_time #=> Time
801
+ # resp.input_summaries[0].status #=> String, one of "CREATING", "UPDATING", "ACTIVE", "DELETING"
802
+ # resp.next_token #=> String
803
+ #
804
+ # @overload list_inputs(params = {})
805
+ # @param [Hash] params ({})
806
+ def list_inputs(params = {}, options = {})
807
+ req = build_request(:list_inputs, params)
808
+ req.send_request(options)
809
+ end
810
+
811
+ # Lists the tags (metadata) you have assigned to the resource.
812
+ #
813
+ # @option params [required, String] :resource_arn
814
+ # The ARN of the resource.
815
+ #
816
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
817
+ #
818
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Array&lt;Types::Tag&gt;
819
+ #
820
+ # @example Request syntax with placeholder values
821
+ #
822
+ # resp = client.list_tags_for_resource({
823
+ # resource_arn: "AmazonResourceName", # required
824
+ # })
825
+ #
826
+ # @example Response structure
827
+ #
828
+ # resp.tags #=> Array
829
+ # resp.tags[0].key #=> String
830
+ # resp.tags[0].value #=> String
831
+ #
832
+ # @overload list_tags_for_resource(params = {})
833
+ # @param [Hash] params ({})
834
+ def list_tags_for_resource(params = {}, options = {})
835
+ req = build_request(:list_tags_for_resource, params)
836
+ req.send_request(options)
837
+ end
838
+
839
+ # Sets or updates the AWS IoT Events logging options.
840
+ #
841
+ # Note that if you update the value of any `loggingOptions` field, it
842
+ # takes up to one minute for the change to take effect. Also, if you
843
+ # change the policy attached to the role you specified in the roleArn
844
+ # field (for example, to correct an invalid policy) it takes up to five
845
+ # minutes for that change to take effect.
846
+ #
847
+ # @option params [required, Types::LoggingOptions] :logging_options
848
+ # The new values of the AWS IoT Events logging options.
849
+ #
850
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
851
+ #
852
+ # @example Request syntax with placeholder values
853
+ #
854
+ # resp = client.put_logging_options({
855
+ # logging_options: { # required
856
+ # role_arn: "AmazonResourceName", # required
857
+ # level: "ERROR", # required, accepts ERROR, INFO, DEBUG
858
+ # enabled: false, # required
859
+ # detector_debug_options: [
860
+ # {
861
+ # detector_model_name: "DetectorModelName", # required
862
+ # key_value: "KeyValue",
863
+ # },
864
+ # ],
865
+ # },
866
+ # })
867
+ #
868
+ # @overload put_logging_options(params = {})
869
+ # @param [Hash] params ({})
870
+ def put_logging_options(params = {}, options = {})
871
+ req = build_request(:put_logging_options, params)
872
+ req.send_request(options)
873
+ end
874
+
875
+ # Add to or modifies the tags of the given resource. Tags are metadata
876
+ # which can be used to manage a resource.
877
+ #
878
+ # @option params [required, String] :resource_arn
879
+ # The ARN of the resource.
880
+ #
881
+ # @option params [required, Array<Types::Tag>] :tags
882
+ # The new or modified tags for the resource.
883
+ #
884
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
885
+ #
886
+ # @example Request syntax with placeholder values
887
+ #
888
+ # resp = client.tag_resource({
889
+ # resource_arn: "AmazonResourceName", # required
890
+ # tags: [ # required
891
+ # {
892
+ # key: "TagKey", # required
893
+ # value: "TagValue", # required
894
+ # },
895
+ # ],
896
+ # })
897
+ #
898
+ # @overload tag_resource(params = {})
899
+ # @param [Hash] params ({})
900
+ def tag_resource(params = {}, options = {})
901
+ req = build_request(:tag_resource, params)
902
+ req.send_request(options)
903
+ end
904
+
905
+ # Removes the given tags (metadata) from the resource.
906
+ #
907
+ # @option params [required, String] :resource_arn
908
+ # The ARN of the resource.
909
+ #
910
+ # @option params [required, Array<String>] :tag_keys
911
+ # A list of the keys of the tags to be removed from the resource.
912
+ #
913
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
914
+ #
915
+ # @example Request syntax with placeholder values
916
+ #
917
+ # resp = client.untag_resource({
918
+ # resource_arn: "AmazonResourceName", # required
919
+ # tag_keys: ["TagKey"], # required
920
+ # })
921
+ #
922
+ # @overload untag_resource(params = {})
923
+ # @param [Hash] params ({})
924
+ def untag_resource(params = {}, options = {})
925
+ req = build_request(:untag_resource, params)
926
+ req.send_request(options)
927
+ end
928
+
929
+ # Updates a detector model. Detectors (instances) spawned by the
930
+ # previous version will be deleted and re-created as new inputs arrive.
931
+ #
932
+ # @option params [required, String] :detector_model_name
933
+ # The name of the detector model to be updated.
934
+ #
935
+ # @option params [required, Types::DetectorModelDefinition] :detector_model_definition
936
+ # Information that defines how a detector operates.
937
+ #
938
+ # @option params [String] :detector_model_description
939
+ # A brief description of the detector model.
940
+ #
941
+ # @option params [required, String] :role_arn
942
+ # The ARN of the role that grants permission to AWS IoT Events to
943
+ # perform its operations.
944
+ #
945
+ # @return [Types::UpdateDetectorModelResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
946
+ #
947
+ # * {Types::UpdateDetectorModelResponse#detector_model_configuration #detector_model_configuration} => Types::DetectorModelConfiguration
948
+ #
949
+ # @example Request syntax with placeholder values
950
+ #
951
+ # resp = client.update_detector_model({
952
+ # detector_model_name: "DetectorModelName", # required
953
+ # detector_model_definition: { # required
954
+ # states: [ # required
955
+ # {
956
+ # state_name: "StateName", # required
957
+ # on_input: {
958
+ # events: [
959
+ # {
960
+ # event_name: "EventName", # required
961
+ # condition: "Condition",
962
+ # actions: [
963
+ # {
964
+ # set_variable: {
965
+ # variable_name: "VariableName", # required
966
+ # value: "VariableValue", # required
967
+ # },
968
+ # sns: {
969
+ # target_arn: "AmazonResourceName", # required
970
+ # },
971
+ # iot_topic_publish: {
972
+ # mqtt_topic: "MQTTTopic", # required
973
+ # },
974
+ # set_timer: {
975
+ # timer_name: "TimerName", # required
976
+ # seconds: 1, # required
977
+ # },
978
+ # clear_timer: {
979
+ # timer_name: "TimerName", # required
980
+ # },
981
+ # reset_timer: {
982
+ # timer_name: "TimerName", # required
983
+ # },
984
+ # },
985
+ # ],
986
+ # },
987
+ # ],
988
+ # transition_events: [
989
+ # {
990
+ # event_name: "EventName", # required
991
+ # condition: "Condition", # required
992
+ # actions: [
993
+ # {
994
+ # set_variable: {
995
+ # variable_name: "VariableName", # required
996
+ # value: "VariableValue", # required
997
+ # },
998
+ # sns: {
999
+ # target_arn: "AmazonResourceName", # required
1000
+ # },
1001
+ # iot_topic_publish: {
1002
+ # mqtt_topic: "MQTTTopic", # required
1003
+ # },
1004
+ # set_timer: {
1005
+ # timer_name: "TimerName", # required
1006
+ # seconds: 1, # required
1007
+ # },
1008
+ # clear_timer: {
1009
+ # timer_name: "TimerName", # required
1010
+ # },
1011
+ # reset_timer: {
1012
+ # timer_name: "TimerName", # required
1013
+ # },
1014
+ # },
1015
+ # ],
1016
+ # next_state: "StateName", # required
1017
+ # },
1018
+ # ],
1019
+ # },
1020
+ # on_enter: {
1021
+ # events: [
1022
+ # {
1023
+ # event_name: "EventName", # required
1024
+ # condition: "Condition",
1025
+ # actions: [
1026
+ # {
1027
+ # set_variable: {
1028
+ # variable_name: "VariableName", # required
1029
+ # value: "VariableValue", # required
1030
+ # },
1031
+ # sns: {
1032
+ # target_arn: "AmazonResourceName", # required
1033
+ # },
1034
+ # iot_topic_publish: {
1035
+ # mqtt_topic: "MQTTTopic", # required
1036
+ # },
1037
+ # set_timer: {
1038
+ # timer_name: "TimerName", # required
1039
+ # seconds: 1, # required
1040
+ # },
1041
+ # clear_timer: {
1042
+ # timer_name: "TimerName", # required
1043
+ # },
1044
+ # reset_timer: {
1045
+ # timer_name: "TimerName", # required
1046
+ # },
1047
+ # },
1048
+ # ],
1049
+ # },
1050
+ # ],
1051
+ # },
1052
+ # on_exit: {
1053
+ # events: [
1054
+ # {
1055
+ # event_name: "EventName", # required
1056
+ # condition: "Condition",
1057
+ # actions: [
1058
+ # {
1059
+ # set_variable: {
1060
+ # variable_name: "VariableName", # required
1061
+ # value: "VariableValue", # required
1062
+ # },
1063
+ # sns: {
1064
+ # target_arn: "AmazonResourceName", # required
1065
+ # },
1066
+ # iot_topic_publish: {
1067
+ # mqtt_topic: "MQTTTopic", # required
1068
+ # },
1069
+ # set_timer: {
1070
+ # timer_name: "TimerName", # required
1071
+ # seconds: 1, # required
1072
+ # },
1073
+ # clear_timer: {
1074
+ # timer_name: "TimerName", # required
1075
+ # },
1076
+ # reset_timer: {
1077
+ # timer_name: "TimerName", # required
1078
+ # },
1079
+ # },
1080
+ # ],
1081
+ # },
1082
+ # ],
1083
+ # },
1084
+ # },
1085
+ # ],
1086
+ # initial_state_name: "StateName", # required
1087
+ # },
1088
+ # detector_model_description: "DetectorModelDescription",
1089
+ # role_arn: "AmazonResourceName", # required
1090
+ # })
1091
+ #
1092
+ # @example Response structure
1093
+ #
1094
+ # resp.detector_model_configuration.detector_model_name #=> String
1095
+ # resp.detector_model_configuration.detector_model_version #=> String
1096
+ # resp.detector_model_configuration.detector_model_description #=> String
1097
+ # resp.detector_model_configuration.detector_model_arn #=> String
1098
+ # resp.detector_model_configuration.role_arn #=> String
1099
+ # resp.detector_model_configuration.creation_time #=> Time
1100
+ # resp.detector_model_configuration.last_update_time #=> Time
1101
+ # resp.detector_model_configuration.status #=> String, one of "ACTIVE", "ACTIVATING", "INACTIVE", "DEPRECATED", "DRAFT", "PAUSED", "FAILED"
1102
+ # resp.detector_model_configuration.key #=> String
1103
+ #
1104
+ # @overload update_detector_model(params = {})
1105
+ # @param [Hash] params ({})
1106
+ def update_detector_model(params = {}, options = {})
1107
+ req = build_request(:update_detector_model, params)
1108
+ req.send_request(options)
1109
+ end
1110
+
1111
+ # Updates an input.
1112
+ #
1113
+ # @option params [required, String] :input_name
1114
+ # The name of the input you want to update.
1115
+ #
1116
+ # @option params [String] :input_description
1117
+ # A brief description of the input.
1118
+ #
1119
+ # @option params [required, Types::InputDefinition] :input_definition
1120
+ # The definition of the input.
1121
+ #
1122
+ # @return [Types::UpdateInputResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1123
+ #
1124
+ # * {Types::UpdateInputResponse#input_configuration #input_configuration} => Types::InputConfiguration
1125
+ #
1126
+ # @example Request syntax with placeholder values
1127
+ #
1128
+ # resp = client.update_input({
1129
+ # input_name: "InputName", # required
1130
+ # input_description: "InputDescription",
1131
+ # input_definition: { # required
1132
+ # attributes: [ # required
1133
+ # {
1134
+ # json_path: "AttributeJsonPath", # required
1135
+ # },
1136
+ # ],
1137
+ # },
1138
+ # })
1139
+ #
1140
+ # @example Response structure
1141
+ #
1142
+ # resp.input_configuration.input_name #=> String
1143
+ # resp.input_configuration.input_description #=> String
1144
+ # resp.input_configuration.input_arn #=> String
1145
+ # resp.input_configuration.creation_time #=> Time
1146
+ # resp.input_configuration.last_update_time #=> Time
1147
+ # resp.input_configuration.status #=> String, one of "CREATING", "UPDATING", "ACTIVE", "DELETING"
1148
+ #
1149
+ # @overload update_input(params = {})
1150
+ # @param [Hash] params ({})
1151
+ def update_input(params = {}, options = {})
1152
+ req = build_request(:update_input, params)
1153
+ req.send_request(options)
1154
+ end
1155
+
1156
+ # @!endgroup
1157
+
1158
+ # @param params ({})
1159
+ # @api private
1160
+ def build_request(operation_name, params = {})
1161
+ handlers = @handlers.for(operation_name)
1162
+ context = Seahorse::Client::RequestContext.new(
1163
+ operation_name: operation_name,
1164
+ operation: config.api.operation(operation_name),
1165
+ client: self,
1166
+ params: params,
1167
+ config: config)
1168
+ context[:gem_name] = 'aws-sdk-iotevents'
1169
+ context[:gem_version] = '1.0.0'
1170
+ Seahorse::Client::Request.new(handlers, context)
1171
+ end
1172
+
1173
+ # @api private
1174
+ # @deprecated
1175
+ def waiter_names
1176
+ []
1177
+ end
1178
+
1179
+ class << self
1180
+
1181
+ # @api private
1182
+ attr_reader :identifier
1183
+
1184
+ # @api private
1185
+ def errors_module
1186
+ Errors
1187
+ end
1188
+
1189
+ end
1190
+ end
1191
+ end