aws-sdk-iotdataplane 1.40.0 → 1.41.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0be8cab76e1f7c1ecad3774551aba28d397cb72236d257921d4a7c229832c19d
4
- data.tar.gz: e60c22a9f2ffcfcbb46ce2feb6692d64518ffb8f48a858ea5caa0a0155a76584
3
+ metadata.gz: 8d095bdd873c26177dc089f816f0b5517ada0daa223ebbe0025da406749c2616
4
+ data.tar.gz: af36a813f82e02857c329975f364f5f413bbe1442a150aaa61c80a9e60680706
5
5
  SHA512:
6
- metadata.gz: 545cd7af191956e19b51b22bf8c095a466ba11cd0bb9a05f209cb4fe892063b4731b0c861d60bf83dc1aee94ac4328ea45f09f4bdfeb9f76863a81a91a1ccf3a
7
- data.tar.gz: a17629ea41d2992961c6ebba433096ec3a8be5ebe0a25ac4602c704898b08564cab1d7a6509953ff14615569f6f715ce147f8b287119164f955ea9ae4e6ac48e
6
+ metadata.gz: 817e5a65a853f48878639a50ec4a84cc8018173d40a8263c4b0f590542291d1c8d89d46d8609eb2445787359457beb38ff78777287db91e76a57a06150a3ffb7
7
+ data.tar.gz: 93dd2836ad9804cc883f8c351032d837410282d70a068c5db703040e6eab5136b11b8c8b91d1f57a62b2b19d2c9340bac96903d3d0e8cc9da1709610a6ab908b
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.41.0 (2022-11-28)
5
+ ------------------
6
+
7
+ * Feature - This release adds support for MQTT5 properties to AWS IoT HTTP Publish API.
8
+
4
9
  1.40.0 (2022-10-25)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.40.0
1
+ 1.41.0
@@ -620,7 +620,7 @@ module Aws::IoTDataPlane
620
620
  # The name of the MQTT topic.
621
621
  #
622
622
  # @option params [Integer] :qos
623
- # The Quality of Service (QoS) level.
623
+ # The Quality of Service (QoS) level. The default QoS level is 0.
624
624
  #
625
625
  # @option params [Boolean] :retain
626
626
  # A Boolean value that determines whether to set the RETAIN flag when
@@ -641,6 +641,52 @@ module Aws::IoTDataPlane
641
641
  # the retained message identified by **topic** from Amazon Web Services
642
642
  # IoT Core.
643
643
  #
644
+ # @option params [String] :user_properties
645
+ # A JSON string that contains an array of JSON objects. If you don’t use
646
+ # Amazon Web Services SDK or CLI, you must encode the JSON string to
647
+ # base64 format before adding it to the HTTP header. `userProperties` is
648
+ # an HTTP header value in the API.
649
+ #
650
+ # The following example `userProperties` parameter is a JSON string
651
+ # which represents two User Properties. Note that it needs to be
652
+ # base64-encoded:
653
+ #
654
+ # `[\{"deviceName": "alpha"\}, \{"deviceCnt": "45"\}]`
655
+ #
656
+ # **SDK automatically handles json encoding and base64 encoding for you
657
+ # when the required value (Hash, Array, etc.) is provided according to
658
+ # the description.**
659
+ #
660
+ # @option params [String] :payload_format_indicator
661
+ # An `Enum` string value that indicates whether the payload is formatted
662
+ # as UTF-8. `payloadFormatIndicator` is an HTTP header value in the API.
663
+ #
664
+ # @option params [String] :content_type
665
+ # A UTF-8 encoded string that describes the content of the publishing
666
+ # message.
667
+ #
668
+ # @option params [String] :response_topic
669
+ # A UTF-8 encoded string that's used as the topic name for a response
670
+ # message. The response topic is used to describe the topic which the
671
+ # receiver should publish to as part of the request-response flow. The
672
+ # topic must not contain wildcard characters.
673
+ #
674
+ # @option params [String] :correlation_data
675
+ # The base64-encoded binary data used by the sender of the request
676
+ # message to identify which request the response message is for when
677
+ # it's received. `correlationData` is an HTTP header value in the API.
678
+ #
679
+ # @option params [Integer] :message_expiry
680
+ # A user-defined integer value that represents the message expiry
681
+ # interval in seconds. If absent, the message doesn't expire. For more
682
+ # information about the limits of `messageExpiry`, see [Amazon Web
683
+ # Services IoT Core message broker and protocol limits and quotas ][1]
684
+ # from the Amazon Web Services Reference Guide.
685
+ #
686
+ #
687
+ #
688
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/iot-core.html#message-broker-limits
689
+ #
644
690
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
645
691
  #
646
692
  # @example Request syntax with placeholder values
@@ -650,6 +696,12 @@ module Aws::IoTDataPlane
650
696
  # qos: 1,
651
697
  # retain: false,
652
698
  # payload: "data",
699
+ # user_properties: "UserProperties",
700
+ # payload_format_indicator: "UNSPECIFIED_BYTES", # accepts UNSPECIFIED_BYTES, UTF8_DATA
701
+ # content_type: "ContentType",
702
+ # response_topic: "ResponseTopic",
703
+ # correlation_data: "CorrelationData",
704
+ # message_expiry: 1,
653
705
  # })
654
706
  #
655
707
  # @overload publish(params = {})
@@ -716,7 +768,7 @@ module Aws::IoTDataPlane
716
768
  params: params,
717
769
  config: config)
718
770
  context[:gem_name] = 'aws-sdk-iotdataplane'
719
- context[:gem_version] = '1.40.0'
771
+ context[:gem_version] = '1.41.0'
720
772
  Seahorse::Client::Request.new(handlers, context)
721
773
  end
722
774
 
@@ -14,6 +14,8 @@ module Aws::IoTDataPlane
14
14
  include Seahorse::Model
15
15
 
16
16
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
17
+ ContentType = Shapes::StringShape.new(name: 'ContentType')
18
+ CorrelationData = Shapes::StringShape.new(name: 'CorrelationData')
17
19
  DeleteThingShadowRequest = Shapes::StructureShape.new(name: 'DeleteThingShadowRequest')
18
20
  DeleteThingShadowResponse = Shapes::StructureShape.new(name: 'DeleteThingShadowResponse')
19
21
  GetRetainedMessageRequest = Shapes::StructureShape.new(name: 'GetRetainedMessageRequest')
@@ -28,16 +30,19 @@ module Aws::IoTDataPlane
28
30
  ListRetainedMessagesRequest = Shapes::StructureShape.new(name: 'ListRetainedMessagesRequest')
29
31
  ListRetainedMessagesResponse = Shapes::StructureShape.new(name: 'ListRetainedMessagesResponse')
30
32
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
33
+ MessageExpiry = Shapes::IntegerShape.new(name: 'MessageExpiry')
31
34
  MethodNotAllowedException = Shapes::StructureShape.new(name: 'MethodNotAllowedException')
32
35
  NamedShadowList = Shapes::ListShape.new(name: 'NamedShadowList')
33
36
  NextToken = Shapes::StringShape.new(name: 'NextToken')
34
37
  PageSize = Shapes::IntegerShape.new(name: 'PageSize')
35
38
  Payload = Shapes::BlobShape.new(name: 'Payload')
39
+ PayloadFormatIndicator = Shapes::StringShape.new(name: 'PayloadFormatIndicator')
36
40
  PayloadSize = Shapes::IntegerShape.new(name: 'PayloadSize')
37
41
  PublishRequest = Shapes::StructureShape.new(name: 'PublishRequest')
38
42
  Qos = Shapes::IntegerShape.new(name: 'Qos')
39
43
  RequestEntityTooLargeException = Shapes::StructureShape.new(name: 'RequestEntityTooLargeException')
40
44
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
45
+ ResponseTopic = Shapes::StringShape.new(name: 'ResponseTopic')
41
46
  Retain = Shapes::BooleanShape.new(name: 'Retain')
42
47
  RetainedMessageList = Shapes::ListShape.new(name: 'RetainedMessageList')
43
48
  RetainedMessageSummary = Shapes::StructureShape.new(name: 'RetainedMessageSummary')
@@ -51,6 +56,7 @@ module Aws::IoTDataPlane
51
56
  UnsupportedDocumentEncodingException = Shapes::StructureShape.new(name: 'UnsupportedDocumentEncodingException')
52
57
  UpdateThingShadowRequest = Shapes::StructureShape.new(name: 'UpdateThingShadowRequest')
53
58
  UpdateThingShadowResponse = Shapes::StructureShape.new(name: 'UpdateThingShadowResponse')
59
+ UserProperties = Shapes::StringShape.new(name: 'UserProperties')
54
60
  errorMessage = Shapes::StringShape.new(name: 'errorMessage')
55
61
 
56
62
  ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
@@ -116,6 +122,12 @@ module Aws::IoTDataPlane
116
122
  PublishRequest.add_member(:qos, Shapes::ShapeRef.new(shape: Qos, location: "querystring", location_name: "qos"))
117
123
  PublishRequest.add_member(:retain, Shapes::ShapeRef.new(shape: Retain, location: "querystring", location_name: "retain"))
118
124
  PublishRequest.add_member(:payload, Shapes::ShapeRef.new(shape: Payload, location_name: "payload"))
125
+ PublishRequest.add_member(:user_properties, Shapes::ShapeRef.new(shape: UserProperties, location: "header", location_name: "x-amz-mqtt5-user-properties", metadata: {"jsonvalue"=>true}))
126
+ PublishRequest.add_member(:payload_format_indicator, Shapes::ShapeRef.new(shape: PayloadFormatIndicator, location: "header", location_name: "x-amz-mqtt5-payload-format-indicator"))
127
+ PublishRequest.add_member(:content_type, Shapes::ShapeRef.new(shape: ContentType, location: "querystring", location_name: "contentType"))
128
+ PublishRequest.add_member(:response_topic, Shapes::ShapeRef.new(shape: ResponseTopic, location: "querystring", location_name: "responseTopic"))
129
+ PublishRequest.add_member(:correlation_data, Shapes::ShapeRef.new(shape: CorrelationData, location: "header", location_name: "x-amz-mqtt5-correlation-data"))
130
+ PublishRequest.add_member(:message_expiry, Shapes::ShapeRef.new(shape: MessageExpiry, location: "querystring", location_name: "messageExpiry"))
119
131
  PublishRequest.struct_class = Types::PublishRequest
120
132
  PublishRequest[:payload] = :payload
121
133
  PublishRequest[:payload_member] = PublishRequest.member(:payload)
@@ -266,6 +278,7 @@ module Aws::IoTDataPlane
266
278
  o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
267
279
  o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
268
280
  o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
281
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
269
282
  end)
270
283
 
271
284
  api.add_operation(:update_thing_shadow, Seahorse::Model::Operation.new.tap do |o|
@@ -283,6 +283,12 @@ module Aws::IoTDataPlane
283
283
  # qos: 1,
284
284
  # retain: false,
285
285
  # payload: "data",
286
+ # user_properties: "UserProperties",
287
+ # payload_format_indicator: "UNSPECIFIED_BYTES", # accepts UNSPECIFIED_BYTES, UTF8_DATA
288
+ # content_type: "ContentType",
289
+ # response_topic: "ResponseTopic",
290
+ # correlation_data: "CorrelationData",
291
+ # message_expiry: 1,
286
292
  # }
287
293
  #
288
294
  # @!attribute [rw] topic
@@ -290,7 +296,7 @@ module Aws::IoTDataPlane
290
296
  # @return [String]
291
297
  #
292
298
  # @!attribute [rw] qos
293
- # The Quality of Service (QoS) level.
299
+ # The Quality of Service (QoS) level. The default QoS level is 0.
294
300
  # @return [Integer]
295
301
  #
296
302
  # @!attribute [rw] retain
@@ -314,11 +320,67 @@ module Aws::IoTDataPlane
314
320
  # Services IoT Core.
315
321
  # @return [String]
316
322
  #
323
+ # @!attribute [rw] user_properties
324
+ # A JSON string that contains an array of JSON objects. If you don’t
325
+ # use Amazon Web Services SDK or CLI, you must encode the JSON string
326
+ # to base64 format before adding it to the HTTP header.
327
+ # `userProperties` is an HTTP header value in the API.
328
+ #
329
+ # The following example `userProperties` parameter is a JSON string
330
+ # which represents two User Properties. Note that it needs to be
331
+ # base64-encoded:
332
+ #
333
+ # `[\{"deviceName": "alpha"\}, \{"deviceCnt": "45"\}]`
334
+ # @return [String]
335
+ #
336
+ # @!attribute [rw] payload_format_indicator
337
+ # An `Enum` string value that indicates whether the payload is
338
+ # formatted as UTF-8. `payloadFormatIndicator` is an HTTP header value
339
+ # in the API.
340
+ # @return [String]
341
+ #
342
+ # @!attribute [rw] content_type
343
+ # A UTF-8 encoded string that describes the content of the publishing
344
+ # message.
345
+ # @return [String]
346
+ #
347
+ # @!attribute [rw] response_topic
348
+ # A UTF-8 encoded string that's used as the topic name for a response
349
+ # message. The response topic is used to describe the topic which the
350
+ # receiver should publish to as part of the request-response flow. The
351
+ # topic must not contain wildcard characters.
352
+ # @return [String]
353
+ #
354
+ # @!attribute [rw] correlation_data
355
+ # The base64-encoded binary data used by the sender of the request
356
+ # message to identify which request the response message is for when
357
+ # it's received. `correlationData` is an HTTP header value in the
358
+ # API.
359
+ # @return [String]
360
+ #
361
+ # @!attribute [rw] message_expiry
362
+ # A user-defined integer value that represents the message expiry
363
+ # interval in seconds. If absent, the message doesn't expire. For
364
+ # more information about the limits of `messageExpiry`, see [Amazon
365
+ # Web Services IoT Core message broker and protocol limits and quotas
366
+ # ][1] from the Amazon Web Services Reference Guide.
367
+ #
368
+ #
369
+ #
370
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/iot-core.html#message-broker-limits
371
+ # @return [Integer]
372
+ #
317
373
  class PublishRequest < Struct.new(
318
374
  :topic,
319
375
  :qos,
320
376
  :retain,
321
- :payload)
377
+ :payload,
378
+ :user_properties,
379
+ :payload_format_indicator,
380
+ :content_type,
381
+ :response_topic,
382
+ :correlation_data,
383
+ :message_expiry)
322
384
  SENSITIVE = []
323
385
  include Aws::Structure
324
386
  end
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-iotdataplane/customizations'
52
52
  # @!group service
53
53
  module Aws::IoTDataPlane
54
54
 
55
- GEM_VERSION = '1.40.0'
55
+ GEM_VERSION = '1.41.0'
56
56
 
57
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-iotdataplane
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.40.0
4
+ version: 1.41.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-25 00:00:00.000000000 Z
11
+ date: 2022-11-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core