aws-sdk-iotdataplane 1.40.0 → 1.41.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 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