aws-sdk-iotevents 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
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