aws-sdk-sqs 1.0.0.rc1
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 +7 -0
- data/lib/aws-sdk-sqs.rb +47 -0
- data/lib/aws-sdk-sqs/client.rb +1604 -0
- data/lib/aws-sdk-sqs/client_api.rb +480 -0
- data/lib/aws-sdk-sqs/customizations.rb +2 -0
- data/lib/aws-sdk-sqs/errors.rb +23 -0
- data/lib/aws-sdk-sqs/plugins/md5s.rb +166 -0
- data/lib/aws-sdk-sqs/plugins/queue_urls.rb +43 -0
- data/lib/aws-sdk-sqs/queue_poller.rb +521 -0
- data/lib/aws-sdk-sqs/resource.rb +25 -0
- data/lib/aws-sdk-sqs/types.rb +1642 -0
- metadata +83 -0
@@ -0,0 +1,25 @@
|
|
1
|
+
# WARNING ABOUT GENERATED CODE
|
2
|
+
#
|
3
|
+
# This file is generated. See the contributing for info on making contributions:
|
4
|
+
# https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
|
5
|
+
#
|
6
|
+
# WARNING ABOUT GENERATED CODE
|
7
|
+
|
8
|
+
module Aws
|
9
|
+
module SQS
|
10
|
+
class Resource
|
11
|
+
|
12
|
+
# @param options ({})
|
13
|
+
# @option options [Client] :client
|
14
|
+
def initialize(options = {})
|
15
|
+
@client = options[:client] || Client.new(options)
|
16
|
+
end
|
17
|
+
|
18
|
+
# @return [Client]
|
19
|
+
def client
|
20
|
+
@client
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,1642 @@
|
|
1
|
+
# WARNING ABOUT GENERATED CODE
|
2
|
+
#
|
3
|
+
# This file is generated. See the contributing for info on making contributions:
|
4
|
+
# https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
|
5
|
+
#
|
6
|
+
# WARNING ABOUT GENERATED CODE
|
7
|
+
|
8
|
+
module Aws
|
9
|
+
module SQS
|
10
|
+
module Types
|
11
|
+
|
12
|
+
# @note When making an API call, pass AddPermissionRequest
|
13
|
+
# data as a hash:
|
14
|
+
#
|
15
|
+
# {
|
16
|
+
# queue_url: "String", # required
|
17
|
+
# label: "String", # required
|
18
|
+
# aws_account_ids: ["String"], # required
|
19
|
+
# actions: ["String"], # required
|
20
|
+
# }
|
21
|
+
# @!attribute [rw] queue_url
|
22
|
+
# The URL of the Amazon SQS queue to take action on.
|
23
|
+
#
|
24
|
+
# Queue URLs are case-sensitive.
|
25
|
+
# @return [String]
|
26
|
+
#
|
27
|
+
# @!attribute [rw] label
|
28
|
+
# The unique identification of the permission you're setting (e.g.,
|
29
|
+
# `AliceSendMessage`). Constraints: Maximum 80 characters;
|
30
|
+
# alphanumeric characters, hyphens (-), and underscores (\_) are
|
31
|
+
# allowed.
|
32
|
+
# @return [String]
|
33
|
+
#
|
34
|
+
# @!attribute [rw] aws_account_ids
|
35
|
+
# The AWS account number of the [principal][1] who will be given
|
36
|
+
# permission. The principal must have an AWS account, but does not
|
37
|
+
# need to be signed up for Amazon SQS. For information about locating
|
38
|
+
# the AWS account identification, see [Your AWS Identifiers][2] in the
|
39
|
+
# *Amazon SQS Developer Guide*.
|
40
|
+
#
|
41
|
+
#
|
42
|
+
#
|
43
|
+
# [1]: http://docs.aws.amazon.com/general/latest/gr/glos-chap.html#P
|
44
|
+
# [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AWSCredentials.html
|
45
|
+
# @return [Array<String>]
|
46
|
+
#
|
47
|
+
# @!attribute [rw] actions
|
48
|
+
# The action the client wants to allow for the specified principal.
|
49
|
+
# The following are valid values: `* | SendMessage | ReceiveMessage |
|
50
|
+
# DeleteMessage | ChangeMessageVisibility | GetQueueAttributes |
|
51
|
+
# GetQueueUrl`. For more information about these actions, see
|
52
|
+
# [Understanding Permissions][1] in the *Amazon SQS Developer Guide*.
|
53
|
+
#
|
54
|
+
# Specifying `SendMessage`, `DeleteMessage`, or
|
55
|
+
# `ChangeMessageVisibility` for the `ActionName.n` also grants
|
56
|
+
# permissions for the corresponding batch versions of those actions:
|
57
|
+
# `SendMessageBatch`, `DeleteMessageBatch`, and
|
58
|
+
# `ChangeMessageVisibilityBatch`.
|
59
|
+
#
|
60
|
+
#
|
61
|
+
#
|
62
|
+
# [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/acp-overview.html#PermissionTypes
|
63
|
+
# @return [Array<String>]
|
64
|
+
class AddPermissionRequest < Struct.new(
|
65
|
+
:queue_url,
|
66
|
+
:label,
|
67
|
+
:aws_account_ids,
|
68
|
+
:actions)
|
69
|
+
include Aws::Structure
|
70
|
+
end
|
71
|
+
|
72
|
+
# This is used in the responses of batch API to give a detailed
|
73
|
+
# description of the result of an action on each entry in the request.
|
74
|
+
# @!attribute [rw] id
|
75
|
+
# The id of an entry in a batch request.
|
76
|
+
# @return [String]
|
77
|
+
#
|
78
|
+
# @!attribute [rw] sender_fault
|
79
|
+
# Whether the error happened due to the sender's fault.
|
80
|
+
# @return [Boolean]
|
81
|
+
#
|
82
|
+
# @!attribute [rw] code
|
83
|
+
# An error code representing why the action failed on this entry.
|
84
|
+
# @return [String]
|
85
|
+
#
|
86
|
+
# @!attribute [rw] message
|
87
|
+
# A message explaining why the action failed on this entry.
|
88
|
+
# @return [String]
|
89
|
+
class BatchResultErrorEntry < Struct.new(
|
90
|
+
:id,
|
91
|
+
:sender_fault,
|
92
|
+
:code,
|
93
|
+
:message)
|
94
|
+
include Aws::Structure
|
95
|
+
end
|
96
|
+
|
97
|
+
# @note When making an API call, pass ChangeMessageVisibilityBatchRequest
|
98
|
+
# data as a hash:
|
99
|
+
#
|
100
|
+
# {
|
101
|
+
# queue_url: "String", # required
|
102
|
+
# entries: [ # required
|
103
|
+
# {
|
104
|
+
# id: "String", # required
|
105
|
+
# receipt_handle: "String", # required
|
106
|
+
# visibility_timeout: 1,
|
107
|
+
# },
|
108
|
+
# ],
|
109
|
+
# }
|
110
|
+
# @!attribute [rw] queue_url
|
111
|
+
# The URL of the Amazon SQS queue to take action on.
|
112
|
+
#
|
113
|
+
# Queue URLs are case-sensitive.
|
114
|
+
# @return [String]
|
115
|
+
#
|
116
|
+
# @!attribute [rw] entries
|
117
|
+
# A list of receipt handles of the messages for which the visibility
|
118
|
+
# timeout must be changed.
|
119
|
+
# @return [Array<Types::ChangeMessageVisibilityBatchRequestEntry>]
|
120
|
+
class ChangeMessageVisibilityBatchRequest < Struct.new(
|
121
|
+
:queue_url,
|
122
|
+
:entries)
|
123
|
+
include Aws::Structure
|
124
|
+
end
|
125
|
+
|
126
|
+
# Encloses a receipt handle and an entry id for each message in
|
127
|
+
# ChangeMessageVisibilityBatch.
|
128
|
+
#
|
129
|
+
# All of the following parameters are list parameters that must be
|
130
|
+
# prefixed with `ChangeMessageVisibilityBatchRequestEntry.n`, where `n`
|
131
|
+
# is an integer value starting with 1. For example, a parameter list for
|
132
|
+
# this action might look like this:
|
133
|
+
#
|
134
|
+
# `&ChangeMessageVisibilityBatchRequestEntry.1.Id=change_visibility_msg_2`
|
135
|
+
#
|
136
|
+
# `&ChangeMessageVisibilityBatchRequestEntry.1.ReceiptHandle=<replaceable>Your_Receipt_Handle</replaceable>`
|
137
|
+
#
|
138
|
+
# `&ChangeMessageVisibilityBatchRequestEntry.1.VisibilityTimeout=45`
|
139
|
+
# @note When making an API call, pass ChangeMessageVisibilityBatchRequestEntry
|
140
|
+
# data as a hash:
|
141
|
+
#
|
142
|
+
# {
|
143
|
+
# id: "String", # required
|
144
|
+
# receipt_handle: "String", # required
|
145
|
+
# visibility_timeout: 1,
|
146
|
+
# }
|
147
|
+
# @!attribute [rw] id
|
148
|
+
# An identifier for this particular receipt handle. This is used to
|
149
|
+
# communicate the result. Note that the `Id`s of a batch request need
|
150
|
+
# to be unique within the request.
|
151
|
+
# @return [String]
|
152
|
+
#
|
153
|
+
# @!attribute [rw] receipt_handle
|
154
|
+
# A receipt handle.
|
155
|
+
# @return [String]
|
156
|
+
#
|
157
|
+
# @!attribute [rw] visibility_timeout
|
158
|
+
# The new value (in seconds) for the message's visibility timeout.
|
159
|
+
# @return [Integer]
|
160
|
+
class ChangeMessageVisibilityBatchRequestEntry < Struct.new(
|
161
|
+
:id,
|
162
|
+
:receipt_handle,
|
163
|
+
:visibility_timeout)
|
164
|
+
include Aws::Structure
|
165
|
+
end
|
166
|
+
|
167
|
+
# For each message in the batch, the response contains a
|
168
|
+
# ChangeMessageVisibilityBatchResultEntry tag if the message succeeds or
|
169
|
+
# a BatchResultErrorEntry tag if the message fails.
|
170
|
+
# @!attribute [rw] successful
|
171
|
+
# A list of ChangeMessageVisibilityBatchResultEntry items.
|
172
|
+
# @return [Array<Types::ChangeMessageVisibilityBatchResultEntry>]
|
173
|
+
#
|
174
|
+
# @!attribute [rw] failed
|
175
|
+
# A list of BatchResultErrorEntry items.
|
176
|
+
# @return [Array<Types::BatchResultErrorEntry>]
|
177
|
+
class ChangeMessageVisibilityBatchResult < Struct.new(
|
178
|
+
:successful,
|
179
|
+
:failed)
|
180
|
+
include Aws::Structure
|
181
|
+
end
|
182
|
+
|
183
|
+
# Encloses the id of an entry in ChangeMessageVisibilityBatch.
|
184
|
+
# @!attribute [rw] id
|
185
|
+
# Represents a message whose visibility timeout has been changed
|
186
|
+
# successfully.
|
187
|
+
# @return [String]
|
188
|
+
class ChangeMessageVisibilityBatchResultEntry < Struct.new(
|
189
|
+
:id)
|
190
|
+
include Aws::Structure
|
191
|
+
end
|
192
|
+
|
193
|
+
# @note When making an API call, pass ChangeMessageVisibilityRequest
|
194
|
+
# data as a hash:
|
195
|
+
#
|
196
|
+
# {
|
197
|
+
# queue_url: "String", # required
|
198
|
+
# receipt_handle: "String", # required
|
199
|
+
# visibility_timeout: 1, # required
|
200
|
+
# }
|
201
|
+
# @!attribute [rw] queue_url
|
202
|
+
# The URL of the Amazon SQS queue to take action on.
|
203
|
+
#
|
204
|
+
# Queue URLs are case-sensitive.
|
205
|
+
# @return [String]
|
206
|
+
#
|
207
|
+
# @!attribute [rw] receipt_handle
|
208
|
+
# The receipt handle associated with the message whose visibility
|
209
|
+
# timeout should be changed. This parameter is returned by the
|
210
|
+
# ReceiveMessage action.
|
211
|
+
# @return [String]
|
212
|
+
#
|
213
|
+
# @!attribute [rw] visibility_timeout
|
214
|
+
# The new value (in seconds - from 0 to 43200 - maximum 12 hours) for
|
215
|
+
# the message's visibility timeout.
|
216
|
+
# @return [Integer]
|
217
|
+
class ChangeMessageVisibilityRequest < Struct.new(
|
218
|
+
:queue_url,
|
219
|
+
:receipt_handle,
|
220
|
+
:visibility_timeout)
|
221
|
+
include Aws::Structure
|
222
|
+
end
|
223
|
+
|
224
|
+
# @note When making an API call, pass CreateQueueRequest
|
225
|
+
# data as a hash:
|
226
|
+
#
|
227
|
+
# {
|
228
|
+
# queue_name: "String", # required
|
229
|
+
# attributes: {
|
230
|
+
# "All" => "String",
|
231
|
+
# },
|
232
|
+
# }
|
233
|
+
# @!attribute [rw] queue_name
|
234
|
+
# The name of the new queue. The following limits apply to this name:
|
235
|
+
#
|
236
|
+
# * A queue name can have up to 80 characters.
|
237
|
+
#
|
238
|
+
# * The following are accepted: alphanumeric chatacters, hyphens
|
239
|
+
# (`-`), and underscores (`_`).
|
240
|
+
#
|
241
|
+
# * A FIFO queue name must end with the `.fifo` suffix.
|
242
|
+
#
|
243
|
+
# Queue names are case-sensitive.
|
244
|
+
# @return [String]
|
245
|
+
#
|
246
|
+
# @!attribute [rw] attributes
|
247
|
+
# A map of attributes with their corresponding values.
|
248
|
+
#
|
249
|
+
# The following lists the names, descriptions, and values of the
|
250
|
+
# special request parameters that the `CreateQueue` action uses:
|
251
|
+
#
|
252
|
+
# * `DelaySeconds` - The number of seconds for which the delivery of
|
253
|
+
# all messages in the queue is delayed. An integer from 0 to 900 (15
|
254
|
+
# minutes). The default is 0 (zero).
|
255
|
+
#
|
256
|
+
# * `MaximumMessageSize` - The limit of how many bytes a message can
|
257
|
+
# contain before Amazon SQS rejects it. An integer from 1,024 bytes
|
258
|
+
# (1 KiB) up to 262,144 bytes (256 KiB). The default is 262,144 (256
|
259
|
+
# KiB).
|
260
|
+
#
|
261
|
+
# * `MessageRetentionPeriod` - The number of seconds for which Amazon
|
262
|
+
# SQS retains a message. An integer representing seconds, from 60 (1
|
263
|
+
# minute) to 120,9600 (14 days). The default is 345,600 (4 days).
|
264
|
+
#
|
265
|
+
# * `Policy` - The queue's policy. A valid AWS policy. For more
|
266
|
+
# information about policy structure, see [Overview of AWS IAM
|
267
|
+
# Policies][1] in the *Amazon IAM User Guide*.
|
268
|
+
#
|
269
|
+
# * `ReceiveMessageWaitTimeSeconds` - The number of seconds for which
|
270
|
+
# a ReceiveMessage action will wait for a message to arrive. An
|
271
|
+
# integer from 0 to 20 (seconds). The default is 0.
|
272
|
+
#
|
273
|
+
# * `RedrivePolicy` - The parameters for the dead letter queue
|
274
|
+
# functionality of the source queue. For more information about the
|
275
|
+
# redrive policy and dead letter queues, see [Using Amazon SQS Dead
|
276
|
+
# Letter Queues][2] in the *Amazon SQS Developer Guide*.
|
277
|
+
#
|
278
|
+
# <note markdown="1"> The dead letter queue of a FIFO queue must also be a FIFO queue.
|
279
|
+
# Similarly, the dead letter queue of a standard queue must also be
|
280
|
+
# a standard queue.
|
281
|
+
#
|
282
|
+
# </note>
|
283
|
+
#
|
284
|
+
# * `VisibilityTimeout` - The visibility timeout for the queue. An
|
285
|
+
# integer from 0 to 43200 (12 hours). The default is 30. For more
|
286
|
+
# information about the visibility timeout, see [Visibility
|
287
|
+
# Timeout][3] in the *Amazon SQS Developer Guide*.
|
288
|
+
#
|
289
|
+
# The following attributes apply only to [FIFO (first-in-first-out)
|
290
|
+
# queues][4]\:
|
291
|
+
#
|
292
|
+
# * `FifoQueue` - Designates a queue as FIFO. You can provide this
|
293
|
+
# attribute only during queue creation; you can't change it for an
|
294
|
+
# existing queue. When you set this attribute, you must provide a
|
295
|
+
# `MessageGroupId` explicitly.
|
296
|
+
#
|
297
|
+
# For more information, see [FIFO Queue Logic][5] in the *Amazon SQS
|
298
|
+
# Developer Guide*.
|
299
|
+
#
|
300
|
+
# * `ContentBasedDeduplication` - Enables content-based deduplication.
|
301
|
+
# For more information, see [Exactly-Once Processing][6] in the
|
302
|
+
# *Amazon SQS Developer Guide*.
|
303
|
+
#
|
304
|
+
# * Every message must have a unique `MessageDeduplicationId`,
|
305
|
+
#
|
306
|
+
# * You may provide a `MessageDeduplicationId` explicitly.
|
307
|
+
#
|
308
|
+
# * If you aren't able to provide a `MessageDeduplicationId` and
|
309
|
+
# you enable `ContentBasedDeduplication` for your queue, Amazon
|
310
|
+
# SQS uses a SHA-256 hash to generate the
|
311
|
+
# `MessageDeduplicationId` using the body of the message (but
|
312
|
+
# not the attributes of the message).
|
313
|
+
#
|
314
|
+
# * If you don't provide a `MessageDeduplicationId` and the queue
|
315
|
+
# doesn't have `ContentBasedDeduplication` set, the action
|
316
|
+
# fails with an error.
|
317
|
+
#
|
318
|
+
# * If the queue has `ContentBasedDeduplication` set, your
|
319
|
+
# `MessageDeduplicationId` overrides the generated one.
|
320
|
+
#
|
321
|
+
# * When `ContentBasedDeduplication` is in effect, messages with
|
322
|
+
# identical content sent within the deduplication interval are
|
323
|
+
# treated as duplicates and only one copy of the message is
|
324
|
+
# delivered.
|
325
|
+
#
|
326
|
+
# * You can also use `ContentBasedDeduplication` for messages with
|
327
|
+
# identical content to be treated as duplicates.
|
328
|
+
#
|
329
|
+
# * If you send one message with `ContentBasedDeduplication` enabled
|
330
|
+
# and then another message with a `MessageDeduplicationId` that is
|
331
|
+
# the same as the one generated for the first
|
332
|
+
# `MessageDeduplicationId`, the two messages are treated as
|
333
|
+
# duplicates and only one copy of the message is delivered.
|
334
|
+
#
|
335
|
+
# Any other valid special request parameters that are specified (such
|
336
|
+
# as `ApproximateNumberOfMessages`,
|
337
|
+
# `ApproximateNumberOfMessagesDelayed`,
|
338
|
+
# `ApproximateNumberOfMessagesNotVisible`, `CreatedTimestamp`,
|
339
|
+
# `LastModifiedTimestamp`, and `QueueArn`) will be ignored.
|
340
|
+
#
|
341
|
+
#
|
342
|
+
#
|
343
|
+
# [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
|
344
|
+
# [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html
|
345
|
+
# [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html
|
346
|
+
# [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
|
347
|
+
# [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic
|
348
|
+
# [6]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
|
349
|
+
# @return [Hash<String,String>]
|
350
|
+
class CreateQueueRequest < Struct.new(
|
351
|
+
:queue_name,
|
352
|
+
:attributes)
|
353
|
+
include Aws::Structure
|
354
|
+
end
|
355
|
+
|
356
|
+
# Returns the QueueUrl element of the created queue.
|
357
|
+
# @!attribute [rw] queue_url
|
358
|
+
# The URL for the created Amazon SQS queue.
|
359
|
+
# @return [String]
|
360
|
+
class CreateQueueResult < Struct.new(
|
361
|
+
:queue_url)
|
362
|
+
include Aws::Structure
|
363
|
+
end
|
364
|
+
|
365
|
+
# @note When making an API call, pass DeleteMessageBatchRequest
|
366
|
+
# data as a hash:
|
367
|
+
#
|
368
|
+
# {
|
369
|
+
# queue_url: "String", # required
|
370
|
+
# entries: [ # required
|
371
|
+
# {
|
372
|
+
# id: "String", # required
|
373
|
+
# receipt_handle: "String", # required
|
374
|
+
# },
|
375
|
+
# ],
|
376
|
+
# }
|
377
|
+
# @!attribute [rw] queue_url
|
378
|
+
# The URL of the Amazon SQS queue to take action on.
|
379
|
+
#
|
380
|
+
# Queue URLs are case-sensitive.
|
381
|
+
# @return [String]
|
382
|
+
#
|
383
|
+
# @!attribute [rw] entries
|
384
|
+
# A list of receipt handles for the messages to be deleted.
|
385
|
+
# @return [Array<Types::DeleteMessageBatchRequestEntry>]
|
386
|
+
class DeleteMessageBatchRequest < Struct.new(
|
387
|
+
:queue_url,
|
388
|
+
:entries)
|
389
|
+
include Aws::Structure
|
390
|
+
end
|
391
|
+
|
392
|
+
# Encloses a receipt handle and an identifier for it.
|
393
|
+
# @note When making an API call, pass DeleteMessageBatchRequestEntry
|
394
|
+
# data as a hash:
|
395
|
+
#
|
396
|
+
# {
|
397
|
+
# id: "String", # required
|
398
|
+
# receipt_handle: "String", # required
|
399
|
+
# }
|
400
|
+
# @!attribute [rw] id
|
401
|
+
# An identifier for this particular receipt handle. This is used to
|
402
|
+
# communicate the result. Note that the `Id`s of a batch request need
|
403
|
+
# to be unique within the request.
|
404
|
+
# @return [String]
|
405
|
+
#
|
406
|
+
# @!attribute [rw] receipt_handle
|
407
|
+
# A receipt handle.
|
408
|
+
# @return [String]
|
409
|
+
class DeleteMessageBatchRequestEntry < Struct.new(
|
410
|
+
:id,
|
411
|
+
:receipt_handle)
|
412
|
+
include Aws::Structure
|
413
|
+
end
|
414
|
+
|
415
|
+
# For each message in the batch, the response contains a
|
416
|
+
# DeleteMessageBatchResultEntry tag if the message is deleted or a
|
417
|
+
# BatchResultErrorEntry tag if the message can't be deleted.
|
418
|
+
# @!attribute [rw] successful
|
419
|
+
# A list of DeleteMessageBatchResultEntry items.
|
420
|
+
# @return [Array<Types::DeleteMessageBatchResultEntry>]
|
421
|
+
#
|
422
|
+
# @!attribute [rw] failed
|
423
|
+
# A list of BatchResultErrorEntry items.
|
424
|
+
# @return [Array<Types::BatchResultErrorEntry>]
|
425
|
+
class DeleteMessageBatchResult < Struct.new(
|
426
|
+
:successful,
|
427
|
+
:failed)
|
428
|
+
include Aws::Structure
|
429
|
+
end
|
430
|
+
|
431
|
+
# Encloses the id an entry in DeleteMessageBatch.
|
432
|
+
# @!attribute [rw] id
|
433
|
+
# Represents a successfully deleted message.
|
434
|
+
# @return [String]
|
435
|
+
class DeleteMessageBatchResultEntry < Struct.new(
|
436
|
+
:id)
|
437
|
+
include Aws::Structure
|
438
|
+
end
|
439
|
+
|
440
|
+
# @note When making an API call, pass DeleteMessageRequest
|
441
|
+
# data as a hash:
|
442
|
+
#
|
443
|
+
# {
|
444
|
+
# queue_url: "String", # required
|
445
|
+
# receipt_handle: "String", # required
|
446
|
+
# }
|
447
|
+
# @!attribute [rw] queue_url
|
448
|
+
# The URL of the Amazon SQS queue to take action on.
|
449
|
+
#
|
450
|
+
# Queue URLs are case-sensitive.
|
451
|
+
# @return [String]
|
452
|
+
#
|
453
|
+
# @!attribute [rw] receipt_handle
|
454
|
+
# The receipt handle associated with the message to delete.
|
455
|
+
# @return [String]
|
456
|
+
class DeleteMessageRequest < Struct.new(
|
457
|
+
:queue_url,
|
458
|
+
:receipt_handle)
|
459
|
+
include Aws::Structure
|
460
|
+
end
|
461
|
+
|
462
|
+
# @note When making an API call, pass DeleteQueueRequest
|
463
|
+
# data as a hash:
|
464
|
+
#
|
465
|
+
# {
|
466
|
+
# queue_url: "String", # required
|
467
|
+
# }
|
468
|
+
# @!attribute [rw] queue_url
|
469
|
+
# The URL of the Amazon SQS queue to take action on.
|
470
|
+
#
|
471
|
+
# Queue URLs are case-sensitive.
|
472
|
+
# @return [String]
|
473
|
+
class DeleteQueueRequest < Struct.new(
|
474
|
+
:queue_url)
|
475
|
+
include Aws::Structure
|
476
|
+
end
|
477
|
+
|
478
|
+
# @note When making an API call, pass GetQueueAttributesRequest
|
479
|
+
# data as a hash:
|
480
|
+
#
|
481
|
+
# {
|
482
|
+
# queue_url: "String", # required
|
483
|
+
# attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication
|
484
|
+
# }
|
485
|
+
# @!attribute [rw] queue_url
|
486
|
+
# The URL of the Amazon SQS queue to take action on.
|
487
|
+
#
|
488
|
+
# Queue URLs are case-sensitive.
|
489
|
+
# @return [String]
|
490
|
+
#
|
491
|
+
# @!attribute [rw] attribute_names
|
492
|
+
# A list of attributes for which to retrieve information.
|
493
|
+
#
|
494
|
+
# <note markdown="1"> Going forward, new attributes might be added. If you are writing
|
495
|
+
# code that calls this action, we recommend that you structure your
|
496
|
+
# code so that it can handle new attributes gracefully.
|
497
|
+
#
|
498
|
+
# </note>
|
499
|
+
#
|
500
|
+
# The following attributes are supported:
|
501
|
+
#
|
502
|
+
# * `All` - Returns all values.
|
503
|
+
#
|
504
|
+
# * `ApproximateNumberOfMessages` - Returns the approximate number of
|
505
|
+
# visible messages in a queue. For more information, see [Resources
|
506
|
+
# Required to Process Messages][1] in the *Amazon SQS Developer
|
507
|
+
# Guide*.
|
508
|
+
#
|
509
|
+
# * `ApproximateNumberOfMessagesDelayed` - Returns the approximate
|
510
|
+
# number of messages that are waiting to be added to the queue.
|
511
|
+
#
|
512
|
+
# * `ApproximateNumberOfMessagesNotVisible` - Returns the approximate
|
513
|
+
# number of messages that have not timed-out and are not deleted.
|
514
|
+
# For more information, see [Resources Required to Process
|
515
|
+
# Messages][1] in the *Amazon SQS Developer Guide*.
|
516
|
+
#
|
517
|
+
# * `CreatedTimestamp` - Returns the time when the queue was created
|
518
|
+
# in seconds (epoch time).
|
519
|
+
#
|
520
|
+
# * `DelaySeconds` - Returns the default delay on the queue in
|
521
|
+
# seconds.
|
522
|
+
#
|
523
|
+
# * `LastModifiedTimestamp` - Returns the time when the queue was last
|
524
|
+
# changed in seconds (epoch time).
|
525
|
+
#
|
526
|
+
# * `MaximumMessageSize` - Returns the limit of how many bytes a
|
527
|
+
# message can contain before Amazon SQS rejects it.
|
528
|
+
#
|
529
|
+
# * `MessageRetentionPeriod` - Returns the number of seconds for which
|
530
|
+
# Amazon SQS retains a message.
|
531
|
+
#
|
532
|
+
# * `Policy` - Returns the policy of the queue.
|
533
|
+
#
|
534
|
+
# * `QueueArn` - Returns the Amazon resource name (ARN) of the queue.
|
535
|
+
#
|
536
|
+
# * `ReceiveMessageWaitTimeSeconds` - Returns the number of seconds
|
537
|
+
# for which ReceiveMessage call will wait for a message to arrive.
|
538
|
+
#
|
539
|
+
# * `RedrivePolicy` - Returns the parameters for dead letter queue
|
540
|
+
# functionality of the source queue. For more information about the
|
541
|
+
# redrive policy and dead letter queues, see [Using Amazon SQS Dead
|
542
|
+
# Letter Queues][2] in the *Amazon SQS Developer Guide*.
|
543
|
+
#
|
544
|
+
# * `VisibilityTimeout` - Returns the visibility timeout for the
|
545
|
+
# queue. For more information about the visibility timeout, see
|
546
|
+
# [Visibility Timeout][3] in the *Amazon SQS Developer Guide*.
|
547
|
+
#
|
548
|
+
# The following attributes apply only to [FIFO (first-in-first-out)
|
549
|
+
# queues][4]\:
|
550
|
+
#
|
551
|
+
# * `FifoQueue` - Returns whether the queue is FIFO. For more
|
552
|
+
# information, see [FIFO Queue Logic][5] in the *Amazon SQS
|
553
|
+
# Developer Guide*.
|
554
|
+
#
|
555
|
+
# * `ContentBasedDeduplication` - Returns whether content-based
|
556
|
+
# deduplication is enabled for the queue. For more information, see
|
557
|
+
# [Exactly-Once Processing][6] in the *Amazon SQS Developer Guide*.
|
558
|
+
#
|
559
|
+
#
|
560
|
+
#
|
561
|
+
# [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/ApproximateNumber.html
|
562
|
+
# [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html
|
563
|
+
# [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html
|
564
|
+
# [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
|
565
|
+
# [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic
|
566
|
+
# [6]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
|
567
|
+
# @return [Array<String>]
|
568
|
+
class GetQueueAttributesRequest < Struct.new(
|
569
|
+
:queue_url,
|
570
|
+
:attribute_names)
|
571
|
+
include Aws::Structure
|
572
|
+
end
|
573
|
+
|
574
|
+
# A list of returned queue attributes.
|
575
|
+
# @!attribute [rw] attributes
|
576
|
+
# A map of attributes to the respective values.
|
577
|
+
# @return [Hash<String,String>]
|
578
|
+
class GetQueueAttributesResult < Struct.new(
|
579
|
+
:attributes)
|
580
|
+
include Aws::Structure
|
581
|
+
end
|
582
|
+
|
583
|
+
# @note When making an API call, pass GetQueueUrlRequest
|
584
|
+
# data as a hash:
|
585
|
+
#
|
586
|
+
# {
|
587
|
+
# queue_name: "String", # required
|
588
|
+
# queue_owner_aws_account_id: "String",
|
589
|
+
# }
|
590
|
+
# @!attribute [rw] queue_name
|
591
|
+
# The name of the queue whose URL must be fetched. Maximum 80
|
592
|
+
# characters; alphanumeric characters, hyphens (-), and underscores
|
593
|
+
# (\_) are allowed.
|
594
|
+
#
|
595
|
+
# Queue names are case-sensitive.
|
596
|
+
# @return [String]
|
597
|
+
#
|
598
|
+
# @!attribute [rw] queue_owner_aws_account_id
|
599
|
+
# The AWS account ID of the account that created the queue.
|
600
|
+
# @return [String]
|
601
|
+
class GetQueueUrlRequest < Struct.new(
|
602
|
+
:queue_name,
|
603
|
+
:queue_owner_aws_account_id)
|
604
|
+
include Aws::Structure
|
605
|
+
end
|
606
|
+
|
607
|
+
# For more information, see [Responses][1] in the *Amazon SQS Developer
|
608
|
+
# Guide*.
|
609
|
+
#
|
610
|
+
#
|
611
|
+
#
|
612
|
+
# [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/UnderstandingResponses.html
|
613
|
+
# @!attribute [rw] queue_url
|
614
|
+
# The URL for the queue.
|
615
|
+
# @return [String]
|
616
|
+
class GetQueueUrlResult < Struct.new(
|
617
|
+
:queue_url)
|
618
|
+
include Aws::Structure
|
619
|
+
end
|
620
|
+
|
621
|
+
# @note When making an API call, pass ListDeadLetterSourceQueuesRequest
|
622
|
+
# data as a hash:
|
623
|
+
#
|
624
|
+
# {
|
625
|
+
# queue_url: "String", # required
|
626
|
+
# }
|
627
|
+
# @!attribute [rw] queue_url
|
628
|
+
# The queue URL of a dead letter queue.
|
629
|
+
#
|
630
|
+
# Queue URLs are case-sensitive.
|
631
|
+
# @return [String]
|
632
|
+
class ListDeadLetterSourceQueuesRequest < Struct.new(
|
633
|
+
:queue_url)
|
634
|
+
include Aws::Structure
|
635
|
+
end
|
636
|
+
|
637
|
+
# A list of your dead letter source queues.
|
638
|
+
# @!attribute [rw] queue_urls
|
639
|
+
# A list of source queue URLs that have the RedrivePolicy queue
|
640
|
+
# attribute configured with a dead letter queue.
|
641
|
+
# @return [Array<String>]
|
642
|
+
class ListDeadLetterSourceQueuesResult < Struct.new(
|
643
|
+
:queue_urls)
|
644
|
+
include Aws::Structure
|
645
|
+
end
|
646
|
+
|
647
|
+
# @note When making an API call, pass ListQueuesRequest
|
648
|
+
# data as a hash:
|
649
|
+
#
|
650
|
+
# {
|
651
|
+
# queue_name_prefix: "String",
|
652
|
+
# }
|
653
|
+
# @!attribute [rw] queue_name_prefix
|
654
|
+
# A string to use for filtering the list results. Only those queues
|
655
|
+
# whose name begins with the specified string are returned.
|
656
|
+
#
|
657
|
+
# Queue names are case-sensitive.
|
658
|
+
# @return [String]
|
659
|
+
class ListQueuesRequest < Struct.new(
|
660
|
+
:queue_name_prefix)
|
661
|
+
include Aws::Structure
|
662
|
+
end
|
663
|
+
|
664
|
+
# A list of your queues.
|
665
|
+
# @!attribute [rw] queue_urls
|
666
|
+
# A list of queue URLs, up to 1000 entries.
|
667
|
+
# @return [Array<String>]
|
668
|
+
class ListQueuesResult < Struct.new(
|
669
|
+
:queue_urls)
|
670
|
+
include Aws::Structure
|
671
|
+
end
|
672
|
+
|
673
|
+
# An Amazon SQS message.
|
674
|
+
# @!attribute [rw] message_id
|
675
|
+
# A unique identifier for the message. Message IDs are considered
|
676
|
+
# unique across all AWS accounts for an extended period of time.
|
677
|
+
# @return [String]
|
678
|
+
#
|
679
|
+
# @!attribute [rw] receipt_handle
|
680
|
+
# An identifier associated with the act of receiving the message. A
|
681
|
+
# new receipt handle is returned every time you receive a message.
|
682
|
+
# When deleting a message, you provide the last received receipt
|
683
|
+
# handle to delete the message.
|
684
|
+
# @return [String]
|
685
|
+
#
|
686
|
+
# @!attribute [rw] md5_of_body
|
687
|
+
# An MD5 digest of the non-URL-encoded message body string.
|
688
|
+
# @return [String]
|
689
|
+
#
|
690
|
+
# @!attribute [rw] body
|
691
|
+
# The message's contents (not URL-encoded).
|
692
|
+
# @return [String]
|
693
|
+
#
|
694
|
+
# @!attribute [rw] attributes
|
695
|
+
# `SenderId`, `SentTimestamp`, `ApproximateReceiveCount`, and/or
|
696
|
+
# `ApproximateFirstReceiveTimestamp`. `SentTimestamp` and
|
697
|
+
# `ApproximateFirstReceiveTimestamp` are each returned as an integer
|
698
|
+
# representing the [epoch time][1] in milliseconds.
|
699
|
+
#
|
700
|
+
#
|
701
|
+
#
|
702
|
+
# [1]: http://en.wikipedia.org/wiki/Unix_time
|
703
|
+
# @return [Hash<String,String>]
|
704
|
+
#
|
705
|
+
# @!attribute [rw] md5_of_message_attributes
|
706
|
+
# An MD5 digest of the non-URL-encoded message attribute string. This
|
707
|
+
# can be used to verify that Amazon SQS received the message
|
708
|
+
# correctly. Amazon SQS first URL decodes the message before creating
|
709
|
+
# the MD5 digest. For information about MD5, see [RFC1321][1].
|
710
|
+
#
|
711
|
+
#
|
712
|
+
#
|
713
|
+
# [1]: https://www.ietf.org/rfc/rfc1321.txt
|
714
|
+
# @return [String]
|
715
|
+
#
|
716
|
+
# @!attribute [rw] message_attributes
|
717
|
+
# Each message attribute consists of a Name, Type, and Value. For more
|
718
|
+
# information, see [Message Attribute Items][1] in the *Amazon SQS
|
719
|
+
# Developer Guide*.
|
720
|
+
#
|
721
|
+
#
|
722
|
+
#
|
723
|
+
# [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html#SQSMessageAttributesNTV
|
724
|
+
# @return [Hash<String,Types::MessageAttributeValue>]
|
725
|
+
class Message < Struct.new(
|
726
|
+
:message_id,
|
727
|
+
:receipt_handle,
|
728
|
+
:md5_of_body,
|
729
|
+
:body,
|
730
|
+
:attributes,
|
731
|
+
:md5_of_message_attributes,
|
732
|
+
:message_attributes)
|
733
|
+
include Aws::Structure
|
734
|
+
end
|
735
|
+
|
736
|
+
# The user-specified message attribute value. For string data types, the
|
737
|
+
# value attribute has the same restrictions on the content as the
|
738
|
+
# message body. For more information, see SendMessage.
|
739
|
+
#
|
740
|
+
# Name, type, and value must not be empty or null. In addition, the
|
741
|
+
# message body should not be empty or null. All parts of the message
|
742
|
+
# attribute, including name, type, and value, are included in the
|
743
|
+
# message size restriction, which is currently 256 KB (262,144 bytes).
|
744
|
+
# @note When making an API call, pass MessageAttributeValue
|
745
|
+
# data as a hash:
|
746
|
+
#
|
747
|
+
# {
|
748
|
+
# string_value: "String",
|
749
|
+
# binary_value: "data",
|
750
|
+
# string_list_values: ["String"],
|
751
|
+
# binary_list_values: ["data"],
|
752
|
+
# data_type: "String", # required
|
753
|
+
# }
|
754
|
+
# @!attribute [rw] string_value
|
755
|
+
# Strings are Unicode with UTF8 binary encoding. For a list of code
|
756
|
+
# values, see [ASCII Printable Characters][1].
|
757
|
+
#
|
758
|
+
#
|
759
|
+
#
|
760
|
+
# [1]: http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters
|
761
|
+
# @return [String]
|
762
|
+
#
|
763
|
+
# @!attribute [rw] binary_value
|
764
|
+
# Binary type attributes can store any binary data, for example,
|
765
|
+
# compressed data, encrypted data, or images.
|
766
|
+
# @return [String]
|
767
|
+
#
|
768
|
+
# @!attribute [rw] string_list_values
|
769
|
+
# Not implemented. Reserved for future use.
|
770
|
+
# @return [Array<String>]
|
771
|
+
#
|
772
|
+
# @!attribute [rw] binary_list_values
|
773
|
+
# Not implemented. Reserved for future use.
|
774
|
+
# @return [Array<String>]
|
775
|
+
#
|
776
|
+
# @!attribute [rw] data_type
|
777
|
+
# Amazon SQS supports the following logical data types: String,
|
778
|
+
# Number, and Binary. For the Number data type, you must use
|
779
|
+
# StringValue.
|
780
|
+
#
|
781
|
+
# You can also append custom labels. For more information, see
|
782
|
+
# [Message Attribute Data Types][1] in the *Amazon SQS Developer
|
783
|
+
# Guide*.
|
784
|
+
#
|
785
|
+
#
|
786
|
+
#
|
787
|
+
# [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html#SQSMessageAttributes.DataTypes
|
788
|
+
# @return [String]
|
789
|
+
class MessageAttributeValue < Struct.new(
|
790
|
+
:string_value,
|
791
|
+
:binary_value,
|
792
|
+
:string_list_values,
|
793
|
+
:binary_list_values,
|
794
|
+
:data_type)
|
795
|
+
include Aws::Structure
|
796
|
+
end
|
797
|
+
|
798
|
+
# @note When making an API call, pass PurgeQueueRequest
|
799
|
+
# data as a hash:
|
800
|
+
#
|
801
|
+
# {
|
802
|
+
# queue_url: "String", # required
|
803
|
+
# }
|
804
|
+
# @!attribute [rw] queue_url
|
805
|
+
# The queue URL of the queue to delete the messages from when using
|
806
|
+
# the `PurgeQueue` API.
|
807
|
+
#
|
808
|
+
# Queue URLs are case-sensitive.
|
809
|
+
# @return [String]
|
810
|
+
class PurgeQueueRequest < Struct.new(
|
811
|
+
:queue_url)
|
812
|
+
include Aws::Structure
|
813
|
+
end
|
814
|
+
|
815
|
+
# @note When making an API call, pass ReceiveMessageRequest
|
816
|
+
# data as a hash:
|
817
|
+
#
|
818
|
+
# {
|
819
|
+
# queue_url: "String", # required
|
820
|
+
# attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication
|
821
|
+
# message_attribute_names: ["MessageAttributeName"],
|
822
|
+
# max_number_of_messages: 1,
|
823
|
+
# visibility_timeout: 1,
|
824
|
+
# wait_time_seconds: 1,
|
825
|
+
# receive_request_attempt_id: "String",
|
826
|
+
# }
|
827
|
+
# @!attribute [rw] queue_url
|
828
|
+
# The URL of the Amazon SQS queue to take action on.
|
829
|
+
#
|
830
|
+
# Queue URLs are case-sensitive.
|
831
|
+
# @return [String]
|
832
|
+
#
|
833
|
+
# @!attribute [rw] attribute_names
|
834
|
+
# A list of attributes that need to be returned along with each
|
835
|
+
# message. These attributes include:
|
836
|
+
#
|
837
|
+
# * `All` - Returns all values.
|
838
|
+
#
|
839
|
+
# * `ApproximateFirstReceiveTimestamp` - Returns the time the message
|
840
|
+
# was first received from the queue (epoch time in milliseconds).
|
841
|
+
#
|
842
|
+
# * `ApproximateReceiveCount` - Returns the number of times a message
|
843
|
+
# has been received from the queue but not deleted.
|
844
|
+
#
|
845
|
+
# * `SenderId`
|
846
|
+
#
|
847
|
+
# * For an IAM user, returns the IAM user ID, for example
|
848
|
+
# `ABCDEFGHI1JKLMNOPQ23R`.
|
849
|
+
#
|
850
|
+
# * For an IAM role, returns the IAM role ID, for example
|
851
|
+
# `ABCDE1F2GH3I4JK5LMNOP:i-a123b456`.
|
852
|
+
#
|
853
|
+
# * `SentTimestamp` - Returns the time the message was sent to the
|
854
|
+
# queue (epoch time in milliseconds).
|
855
|
+
#
|
856
|
+
# * `MessageDeduplicationId` - Returns the value provided by the
|
857
|
+
# sender that calls the ` SendMessage ` action.
|
858
|
+
#
|
859
|
+
# * `MessageGroupId` - Returns the value provided by the sender that
|
860
|
+
# calls the ` SendMessage ` action. Messages with the same
|
861
|
+
# `MessageGroupId` are returned in sequence.
|
862
|
+
#
|
863
|
+
# * `SequenceNumber` - Returns the value provided by Amazon SQS.
|
864
|
+
#
|
865
|
+
# Any other valid special request parameters (such as the following)
|
866
|
+
# that are specified are ignored:
|
867
|
+
#
|
868
|
+
# * `ApproximateNumberOfMessages`
|
869
|
+
#
|
870
|
+
# * `ApproximateNumberOfMessagesDelayed`
|
871
|
+
#
|
872
|
+
# * `ApproximateNumberOfMessagesNotVisible`
|
873
|
+
#
|
874
|
+
# * `CreatedTimestamp`
|
875
|
+
#
|
876
|
+
# * `ContentBasedDeduplication`
|
877
|
+
#
|
878
|
+
# * `DelaySeconds`
|
879
|
+
#
|
880
|
+
# * `LastModifiedTimestamp`
|
881
|
+
#
|
882
|
+
# * `MaximumMessageSize`
|
883
|
+
#
|
884
|
+
# * `MessageRetentionPeriod`
|
885
|
+
#
|
886
|
+
# * `Policy`
|
887
|
+
#
|
888
|
+
# * `QueueArn`,
|
889
|
+
#
|
890
|
+
# * `ReceiveMessageWaitTimeSeconds`
|
891
|
+
#
|
892
|
+
# * `RedrivePolicy`
|
893
|
+
#
|
894
|
+
# * `FifoQueue`
|
895
|
+
#
|
896
|
+
# * `VisibilityTimeout`
|
897
|
+
# @return [Array<String>]
|
898
|
+
#
|
899
|
+
# @!attribute [rw] message_attribute_names
|
900
|
+
# The name of the message attribute, where *N* is the index. The
|
901
|
+
# message attribute name can contain the following characters: A-Z,
|
902
|
+
# a-z, 0-9, underscore (\_), hyphen (-), and period (.). The name must
|
903
|
+
# not start or end with a period, and it should not have successive
|
904
|
+
# periods. The name is case sensitive and must be unique among all
|
905
|
+
# attribute names for the message. The name can be up to 256
|
906
|
+
# characters long. The name can't start with "AWS." or "Amazon."
|
907
|
+
# (or any variations in casing), because these prefixes are reserved
|
908
|
+
# for use by Amazon Web Services.
|
909
|
+
#
|
910
|
+
# When using `ReceiveMessage`, you can send a list of attribute names
|
911
|
+
# to receive, or you can return all of the attributes by specifying
|
912
|
+
# "All" or ".*" in your request. You can also use "bar.*" to
|
913
|
+
# return all message attributes starting with the "bar" prefix.
|
914
|
+
# @return [Array<String>]
|
915
|
+
#
|
916
|
+
# @!attribute [rw] max_number_of_messages
|
917
|
+
# The maximum number of messages to return. Amazon SQS never returns
|
918
|
+
# more messages than this value but might return fewer. Values can be
|
919
|
+
# from 1 to 10. Default is 1.
|
920
|
+
#
|
921
|
+
# All of the messages are not necessarily returned.
|
922
|
+
# @return [Integer]
|
923
|
+
#
|
924
|
+
# @!attribute [rw] visibility_timeout
|
925
|
+
# The duration (in seconds) that the received messages are hidden from
|
926
|
+
# subsequent retrieve requests after being retrieved by a
|
927
|
+
# `ReceiveMessage` request.
|
928
|
+
# @return [Integer]
|
929
|
+
#
|
930
|
+
# @!attribute [rw] wait_time_seconds
|
931
|
+
# The duration (in seconds) for which the call will wait for a message
|
932
|
+
# to arrive in the queue before returning. If a message is available,
|
933
|
+
# the call will return sooner than WaitTimeSeconds.
|
934
|
+
# @return [Integer]
|
935
|
+
#
|
936
|
+
# @!attribute [rw] receive_request_attempt_id
|
937
|
+
# This parameter applies only to FIFO (first-in-first-out) queues.
|
938
|
+
#
|
939
|
+
# The token used for deduplication of `ReceiveMessage` calls. If a
|
940
|
+
# networking issue occurs after a `ReceiveMessage` action, and instead
|
941
|
+
# of a response you receive a generic error, you can retry the same
|
942
|
+
# action with an identical `ReceiveRequestAttemptId` to retrieve the
|
943
|
+
# same set of messages, even if their visibility timeout has not yet
|
944
|
+
# expired.
|
945
|
+
#
|
946
|
+
# * You can use `ReceiveRequestAttemptId` only for 5 minutes after a
|
947
|
+
# `ReceiveMessage` action.
|
948
|
+
#
|
949
|
+
# * When you set `FifoQueue`, a caller of the `ReceiveMessage` action
|
950
|
+
# can provide a `ReceiveRequestAttemptId` explicitly.
|
951
|
+
#
|
952
|
+
# * If a caller of the `ReceiveMessage` action doesn't provide a
|
953
|
+
# `ReceiveRequestAttemptId`, Amazon SQS generates a
|
954
|
+
# `ReceiveRequestAttemptId`.
|
955
|
+
#
|
956
|
+
# * You can retry the `ReceiveMessage` action with the same
|
957
|
+
# `ReceiveRequestAttemptId` if none of the messages have been
|
958
|
+
# modified (deleted or had their visibility changes).
|
959
|
+
#
|
960
|
+
# * During a visibility timeout, subsequent calls with the same
|
961
|
+
# `ReceiveRequestAttemptId` return the same messages and receipt
|
962
|
+
# handles. If a retry occurs within the deduplication interval, it
|
963
|
+
# resets the visibility timeout. For more information, see
|
964
|
+
# [Visibility Timeout][1] in the *Amazon Simple Queue Service
|
965
|
+
# Developer Guide*.
|
966
|
+
#
|
967
|
+
# If a caller of the `ReceiveMessage` action is still processing
|
968
|
+
# messages when the visibility timeout expires and messages become
|
969
|
+
# visible, another worker reading from the same queue can receive
|
970
|
+
# the same messages and therefore process duplicates. Also, if a
|
971
|
+
# reader whose message processing time is longer than the visibility
|
972
|
+
# timeout tries to delete the processed messages, the action fails
|
973
|
+
# with an error.
|
974
|
+
#
|
975
|
+
# To mitigate this effect, ensure that your application observes a
|
976
|
+
# safe threshold before the visibility timeout expires and extend
|
977
|
+
# the visibility timeout as necessary.
|
978
|
+
#
|
979
|
+
# * While messages with a particular `MessageGroupId` are invisible,
|
980
|
+
# no more messages belonging to the same `MessageGroupId` are
|
981
|
+
# returned until the visibility timeout expires. You can still
|
982
|
+
# receive messages with another `MessageGroupId` as long as it is
|
983
|
+
# also visible.
|
984
|
+
#
|
985
|
+
# * If a caller of `ReceiveMessage` can't track the
|
986
|
+
# `ReceiveRequestAttemptId`, no retries will work until the original
|
987
|
+
# visibility timeout expires. As a result, delays might occur but
|
988
|
+
# the messages in the queue will remain in a strict order.
|
989
|
+
#
|
990
|
+
# The length of `ReceiveRequestAttemptId` is 128 characters.
|
991
|
+
# `ReceiveRequestAttemptId` can contain alphanumeric characters
|
992
|
+
# (`a-z`, `A-Z`, `0-9`) and punctuation (``
|
993
|
+
# !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~ ``).
|
994
|
+
#
|
995
|
+
# For best practices of using `ReceiveRequestAttemptId`, see [Using
|
996
|
+
# the ReceiveRequestAttemptId Request Parameter][2] in the *Amazon
|
997
|
+
# Simple Queue Service Developer Guide*.
|
998
|
+
#
|
999
|
+
#
|
1000
|
+
#
|
1001
|
+
# [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html
|
1002
|
+
# [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-receiverequestattemptid-request-parameter
|
1003
|
+
# @return [String]
|
1004
|
+
class ReceiveMessageRequest < Struct.new(
|
1005
|
+
:queue_url,
|
1006
|
+
:attribute_names,
|
1007
|
+
:message_attribute_names,
|
1008
|
+
:max_number_of_messages,
|
1009
|
+
:visibility_timeout,
|
1010
|
+
:wait_time_seconds,
|
1011
|
+
:receive_request_attempt_id)
|
1012
|
+
include Aws::Structure
|
1013
|
+
end
|
1014
|
+
|
1015
|
+
# A list of received messages.
|
1016
|
+
# @!attribute [rw] messages
|
1017
|
+
# A list of messages.
|
1018
|
+
# @return [Array<Types::Message>]
|
1019
|
+
class ReceiveMessageResult < Struct.new(
|
1020
|
+
:messages)
|
1021
|
+
include Aws::Structure
|
1022
|
+
end
|
1023
|
+
|
1024
|
+
# @note When making an API call, pass RemovePermissionRequest
|
1025
|
+
# data as a hash:
|
1026
|
+
#
|
1027
|
+
# {
|
1028
|
+
# queue_url: "String", # required
|
1029
|
+
# label: "String", # required
|
1030
|
+
# }
|
1031
|
+
# @!attribute [rw] queue_url
|
1032
|
+
# The URL of the Amazon SQS queue to take action on.
|
1033
|
+
#
|
1034
|
+
# Queue URLs are case-sensitive.
|
1035
|
+
# @return [String]
|
1036
|
+
#
|
1037
|
+
# @!attribute [rw] label
|
1038
|
+
# The identification of the permission to remove. This is the label
|
1039
|
+
# added with the AddPermission action.
|
1040
|
+
# @return [String]
|
1041
|
+
class RemovePermissionRequest < Struct.new(
|
1042
|
+
:queue_url,
|
1043
|
+
:label)
|
1044
|
+
include Aws::Structure
|
1045
|
+
end
|
1046
|
+
|
1047
|
+
# @note When making an API call, pass SendMessageBatchRequest
|
1048
|
+
# data as a hash:
|
1049
|
+
#
|
1050
|
+
# {
|
1051
|
+
# queue_url: "String", # required
|
1052
|
+
# entries: [ # required
|
1053
|
+
# {
|
1054
|
+
# id: "String", # required
|
1055
|
+
# message_body: "String", # required
|
1056
|
+
# delay_seconds: 1,
|
1057
|
+
# message_attributes: {
|
1058
|
+
# "String" => {
|
1059
|
+
# string_value: "String",
|
1060
|
+
# binary_value: "data",
|
1061
|
+
# string_list_values: ["String"],
|
1062
|
+
# binary_list_values: ["data"],
|
1063
|
+
# data_type: "String", # required
|
1064
|
+
# },
|
1065
|
+
# },
|
1066
|
+
# message_deduplication_id: "String",
|
1067
|
+
# message_group_id: "String",
|
1068
|
+
# },
|
1069
|
+
# ],
|
1070
|
+
# }
|
1071
|
+
# @!attribute [rw] queue_url
|
1072
|
+
# The URL of the Amazon SQS queue to take action on.
|
1073
|
+
#
|
1074
|
+
# Queue URLs are case-sensitive.
|
1075
|
+
# @return [String]
|
1076
|
+
#
|
1077
|
+
# @!attribute [rw] entries
|
1078
|
+
# A list of SendMessageBatchRequestEntry items.
|
1079
|
+
# @return [Array<Types::SendMessageBatchRequestEntry>]
|
1080
|
+
class SendMessageBatchRequest < Struct.new(
|
1081
|
+
:queue_url,
|
1082
|
+
:entries)
|
1083
|
+
include Aws::Structure
|
1084
|
+
end
|
1085
|
+
|
1086
|
+
# Contains the details of a single Amazon SQS message along with a `Id`.
|
1087
|
+
# @note When making an API call, pass SendMessageBatchRequestEntry
|
1088
|
+
# data as a hash:
|
1089
|
+
#
|
1090
|
+
# {
|
1091
|
+
# id: "String", # required
|
1092
|
+
# message_body: "String", # required
|
1093
|
+
# delay_seconds: 1,
|
1094
|
+
# message_attributes: {
|
1095
|
+
# "String" => {
|
1096
|
+
# string_value: "String",
|
1097
|
+
# binary_value: "data",
|
1098
|
+
# string_list_values: ["String"],
|
1099
|
+
# binary_list_values: ["data"],
|
1100
|
+
# data_type: "String", # required
|
1101
|
+
# },
|
1102
|
+
# },
|
1103
|
+
# message_deduplication_id: "String",
|
1104
|
+
# message_group_id: "String",
|
1105
|
+
# }
|
1106
|
+
# @!attribute [rw] id
|
1107
|
+
# An identifier for the message in this batch. This is used to
|
1108
|
+
# communicate the result. Note that the `Id`s of a batch request need
|
1109
|
+
# to be unique within the request.
|
1110
|
+
# @return [String]
|
1111
|
+
#
|
1112
|
+
# @!attribute [rw] message_body
|
1113
|
+
# Body of the message.
|
1114
|
+
# @return [String]
|
1115
|
+
#
|
1116
|
+
# @!attribute [rw] delay_seconds
|
1117
|
+
# The number of seconds (0 to 900 - 15 minutes) to delay a specific
|
1118
|
+
# message. Messages with a positive `DelaySeconds` value become
|
1119
|
+
# available for processing after the delay time is finished. If you
|
1120
|
+
# don't specify a value, the default value for the queue applies.
|
1121
|
+
#
|
1122
|
+
# <note markdown="1"> When you set `FifoQueue`, you can't set `DelaySeconds` per message.
|
1123
|
+
# You can set this parameter only on a queue level.
|
1124
|
+
#
|
1125
|
+
# </note>
|
1126
|
+
# @return [Integer]
|
1127
|
+
#
|
1128
|
+
# @!attribute [rw] message_attributes
|
1129
|
+
# Each message attribute consists of a Name, Type, and Value. For more
|
1130
|
+
# information, see [Message Attribute Items][1] in the *Amazon SQS
|
1131
|
+
# Developer Guide*.
|
1132
|
+
#
|
1133
|
+
#
|
1134
|
+
#
|
1135
|
+
# [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html#SQSMessageAttributesNTV
|
1136
|
+
# @return [Hash<String,Types::MessageAttributeValue>]
|
1137
|
+
#
|
1138
|
+
# @!attribute [rw] message_deduplication_id
|
1139
|
+
# This parameter applies only to FIFO (first-in-first-out) queues.
|
1140
|
+
#
|
1141
|
+
# The token used for deduplication of messages within a 5-minute
|
1142
|
+
# minimum deduplication interval. If a message with a particular
|
1143
|
+
# `MessageDeduplicationId` is sent successfully, subsequent messages
|
1144
|
+
# with the same `MessageDeduplicationId` are accepted successfully but
|
1145
|
+
# aren't delivered. For more information, see [ Exactly-Once
|
1146
|
+
# Processing][1] in the *Amazon SQS Developer Guide*.
|
1147
|
+
#
|
1148
|
+
# * Every message must have a unique `MessageDeduplicationId`,
|
1149
|
+
#
|
1150
|
+
# * You may provide a `MessageDeduplicationId` explicitly.
|
1151
|
+
#
|
1152
|
+
# * If you aren't able to provide a `MessageDeduplicationId` and
|
1153
|
+
# you enable `ContentBasedDeduplication` for your queue, Amazon
|
1154
|
+
# SQS uses a SHA-256 hash to generate the `MessageDeduplicationId`
|
1155
|
+
# using the body of the message (but not the attributes of the
|
1156
|
+
# message).
|
1157
|
+
#
|
1158
|
+
# * If you don't provide a `MessageDeduplicationId` and the queue
|
1159
|
+
# doesn't have `ContentBasedDeduplication` set, the action fails
|
1160
|
+
# with an error.
|
1161
|
+
#
|
1162
|
+
# * If the queue has `ContentBasedDeduplication` set, your
|
1163
|
+
# `MessageDeduplicationId` overrides the generated one.
|
1164
|
+
#
|
1165
|
+
# * When `ContentBasedDeduplication` is in effect, messages with
|
1166
|
+
# identical content sent within the deduplication interval are
|
1167
|
+
# treated as duplicates and only one copy of the message is
|
1168
|
+
# delivered.
|
1169
|
+
#
|
1170
|
+
# * You can also use `ContentBasedDeduplication` for messages with
|
1171
|
+
# identical content to be treated as duplicates.
|
1172
|
+
#
|
1173
|
+
# * If you send one message with `ContentBasedDeduplication` enabled
|
1174
|
+
# and then another message with a `MessageDeduplicationId` that is
|
1175
|
+
# the same as the one generated for the first
|
1176
|
+
# `MessageDeduplicationId`, the two messages are treated as
|
1177
|
+
# duplicates and only one copy of the message is delivered.
|
1178
|
+
#
|
1179
|
+
# <note markdown="1"> The `MessageDeduplicationId` is available to the recipient of the
|
1180
|
+
# message (this can be useful for troubleshooting delivery issues).
|
1181
|
+
#
|
1182
|
+
# If a message is sent successfully but the acknowledgement is lost
|
1183
|
+
# and the message is resent with the same `MessageDeduplicationId`
|
1184
|
+
# after the deduplication interval, Amazon SQS can't detect duplicate
|
1185
|
+
# messages.
|
1186
|
+
#
|
1187
|
+
# </note>
|
1188
|
+
#
|
1189
|
+
# The length of `MessageDeduplicationId` is 128 characters.
|
1190
|
+
# `MessageDeduplicationId` can contain alphanumeric characters (`a-z`,
|
1191
|
+
# `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~
|
1192
|
+
# ``).
|
1193
|
+
#
|
1194
|
+
# For best practices of using `MessageDeduplicationId`, see [Using the
|
1195
|
+
# MessageDeduplicationId Property][2] in the *Amazon Simple Queue
|
1196
|
+
# Service Developer Guide*.
|
1197
|
+
#
|
1198
|
+
#
|
1199
|
+
#
|
1200
|
+
# [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
|
1201
|
+
# [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-messagededuplicationid-property
|
1202
|
+
# @return [String]
|
1203
|
+
#
|
1204
|
+
# @!attribute [rw] message_group_id
|
1205
|
+
# This parameter applies only to FIFO (first-in-first-out) queues.
|
1206
|
+
#
|
1207
|
+
# The tag that specifies that a message belongs to a specific message
|
1208
|
+
# group. Messages that belong to the same message group are processed
|
1209
|
+
# in a FIFO manner (however, messages in different message groups
|
1210
|
+
# might be processed out of order). To interleave multiple ordered
|
1211
|
+
# streams within a single queue, use `MessageGroupId` values (for
|
1212
|
+
# example, session data for multiple users). In this scenario,
|
1213
|
+
# multiple readers can process the queue, but the session data of each
|
1214
|
+
# user is processed in a FIFO fashion.
|
1215
|
+
#
|
1216
|
+
# * You must associate a non-empty `MessageGroupId` with a message. If
|
1217
|
+
# you don't provide a `MessageGroupId`, the action fails.
|
1218
|
+
#
|
1219
|
+
# * `ReceiveMessage` might return messages with multiple
|
1220
|
+
# `MessageGroupId` values. For each `MessageGroupId`, the messages
|
1221
|
+
# are sorted by time sent. The caller can't specify a
|
1222
|
+
# `MessageGroupId`.
|
1223
|
+
#
|
1224
|
+
# The length of `MessageGroupId` is 128 characters. Valid values are
|
1225
|
+
# alphanumeric characters and punctuation ``
|
1226
|
+
# (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
|
1227
|
+
#
|
1228
|
+
# For best practices of using `MessageGroupId`, see [Using the
|
1229
|
+
# MessageGroupId Property][1] in the *Amazon Simple Queue Service
|
1230
|
+
# Developer Guide*.
|
1231
|
+
#
|
1232
|
+
#
|
1233
|
+
#
|
1234
|
+
# [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-messagegroupid-property
|
1235
|
+
# @return [String]
|
1236
|
+
class SendMessageBatchRequestEntry < Struct.new(
|
1237
|
+
:id,
|
1238
|
+
:message_body,
|
1239
|
+
:delay_seconds,
|
1240
|
+
:message_attributes,
|
1241
|
+
:message_deduplication_id,
|
1242
|
+
:message_group_id)
|
1243
|
+
include Aws::Structure
|
1244
|
+
end
|
1245
|
+
|
1246
|
+
# For each message in the batch, the response contains a
|
1247
|
+
# SendMessageBatchResultEntry tag if the message succeeds or a
|
1248
|
+
# BatchResultErrorEntry tag if the message fails.
|
1249
|
+
# @!attribute [rw] successful
|
1250
|
+
# A list of SendMessageBatchResultEntry items.
|
1251
|
+
# @return [Array<Types::SendMessageBatchResultEntry>]
|
1252
|
+
#
|
1253
|
+
# @!attribute [rw] failed
|
1254
|
+
# A list of BatchResultErrorEntry items with the error detail about
|
1255
|
+
# each message that could not be enqueued.
|
1256
|
+
# @return [Array<Types::BatchResultErrorEntry>]
|
1257
|
+
class SendMessageBatchResult < Struct.new(
|
1258
|
+
:successful,
|
1259
|
+
:failed)
|
1260
|
+
include Aws::Structure
|
1261
|
+
end
|
1262
|
+
|
1263
|
+
# Encloses a message ID for successfully enqueued message of a
|
1264
|
+
# SendMessageBatch.
|
1265
|
+
# @!attribute [rw] id
|
1266
|
+
# An identifier for the message in this batch.
|
1267
|
+
# @return [String]
|
1268
|
+
#
|
1269
|
+
# @!attribute [rw] message_id
|
1270
|
+
# An identifier for the message.
|
1271
|
+
# @return [String]
|
1272
|
+
#
|
1273
|
+
# @!attribute [rw] md5_of_message_body
|
1274
|
+
# An MD5 digest of the non-URL-encoded message body string. This can
|
1275
|
+
# be used to verify that Amazon SQS received the message correctly.
|
1276
|
+
# Amazon SQS first URL decodes the message before creating the MD5
|
1277
|
+
# digest. For information about MD5, see [RFC1321][1].
|
1278
|
+
#
|
1279
|
+
#
|
1280
|
+
#
|
1281
|
+
# [1]: https://www.ietf.org/rfc/rfc1321.txt
|
1282
|
+
# @return [String]
|
1283
|
+
#
|
1284
|
+
# @!attribute [rw] md5_of_message_attributes
|
1285
|
+
# An MD5 digest of the non-URL-encoded message attribute string. This
|
1286
|
+
# can be used to verify that Amazon SQS received the message batch
|
1287
|
+
# correctly. Amazon SQS first URL decodes the message before creating
|
1288
|
+
# the MD5 digest. For information about MD5, see [RFC1321][1].
|
1289
|
+
#
|
1290
|
+
#
|
1291
|
+
#
|
1292
|
+
# [1]: https://www.ietf.org/rfc/rfc1321.txt
|
1293
|
+
# @return [String]
|
1294
|
+
#
|
1295
|
+
# @!attribute [rw] sequence_number
|
1296
|
+
# *This element applies only to FIFO (first-in-first-out) queues.*
|
1297
|
+
#
|
1298
|
+
# A large, non-consecutive number that Amazon SQS assigns to each
|
1299
|
+
# message.
|
1300
|
+
#
|
1301
|
+
# The length of `SequenceNumber` is 128 bits. As `SequenceNumber`
|
1302
|
+
# continues to increase for a particular `MessageGroupId`.
|
1303
|
+
# @return [String]
|
1304
|
+
class SendMessageBatchResultEntry < Struct.new(
|
1305
|
+
:id,
|
1306
|
+
:message_id,
|
1307
|
+
:md5_of_message_body,
|
1308
|
+
:md5_of_message_attributes,
|
1309
|
+
:sequence_number)
|
1310
|
+
include Aws::Structure
|
1311
|
+
end
|
1312
|
+
|
1313
|
+
# @note When making an API call, pass SendMessageRequest
|
1314
|
+
# data as a hash:
|
1315
|
+
#
|
1316
|
+
# {
|
1317
|
+
# queue_url: "String", # required
|
1318
|
+
# message_body: "String", # required
|
1319
|
+
# delay_seconds: 1,
|
1320
|
+
# message_attributes: {
|
1321
|
+
# "String" => {
|
1322
|
+
# string_value: "String",
|
1323
|
+
# binary_value: "data",
|
1324
|
+
# string_list_values: ["String"],
|
1325
|
+
# binary_list_values: ["data"],
|
1326
|
+
# data_type: "String", # required
|
1327
|
+
# },
|
1328
|
+
# },
|
1329
|
+
# message_deduplication_id: "String",
|
1330
|
+
# message_group_id: "String",
|
1331
|
+
# }
|
1332
|
+
# @!attribute [rw] queue_url
|
1333
|
+
# The URL of the Amazon SQS queue to take action on.
|
1334
|
+
#
|
1335
|
+
# Queue URLs are case-sensitive.
|
1336
|
+
# @return [String]
|
1337
|
+
#
|
1338
|
+
# @!attribute [rw] message_body
|
1339
|
+
# The message to send. String maximum 256 KB in size. For a list of
|
1340
|
+
# allowed characters, see the preceding note.
|
1341
|
+
# @return [String]
|
1342
|
+
#
|
1343
|
+
# @!attribute [rw] delay_seconds
|
1344
|
+
# The number of seconds (0 to 900 - 15 minutes) to delay a specific
|
1345
|
+
# message. Messages with a positive `DelaySeconds` value become
|
1346
|
+
# available for processing after the delay time is finished. If you
|
1347
|
+
# don't specify a value, the default value for the queue applies.
|
1348
|
+
#
|
1349
|
+
# <note markdown="1"> When you set `FifoQueue`, you can't set `DelaySeconds` per message.
|
1350
|
+
# You can set this parameter only on a queue level.
|
1351
|
+
#
|
1352
|
+
# </note>
|
1353
|
+
# @return [Integer]
|
1354
|
+
#
|
1355
|
+
# @!attribute [rw] message_attributes
|
1356
|
+
# Each message attribute consists of a Name, Type, and Value. For more
|
1357
|
+
# information, see [Message Attribute Items][1] in the *Amazon SQS
|
1358
|
+
# Developer Guide*.
|
1359
|
+
#
|
1360
|
+
#
|
1361
|
+
#
|
1362
|
+
# [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html#SQSMessageAttributesNTV
|
1363
|
+
# @return [Hash<String,Types::MessageAttributeValue>]
|
1364
|
+
#
|
1365
|
+
# @!attribute [rw] message_deduplication_id
|
1366
|
+
# This parameter applies only to FIFO (first-in-first-out) queues.
|
1367
|
+
#
|
1368
|
+
# The token used for deduplication of sent messages. If a message with
|
1369
|
+
# a particular `MessageDeduplicationId` is sent successfully, any
|
1370
|
+
# messages sent with the same `MessageDeduplicationId` are accepted
|
1371
|
+
# successfully but aren't delivered during the 5-minute deduplication
|
1372
|
+
# interval. For more information, see [ Exactly-Once Processing][1] in
|
1373
|
+
# the *Amazon SQS Developer Guide*.
|
1374
|
+
#
|
1375
|
+
# * Every message must have a unique `MessageDeduplicationId`,
|
1376
|
+
#
|
1377
|
+
# * You may provide a `MessageDeduplicationId` explicitly.
|
1378
|
+
#
|
1379
|
+
# * If you aren't able to provide a `MessageDeduplicationId` and
|
1380
|
+
# you enable `ContentBasedDeduplication` for your queue, Amazon
|
1381
|
+
# SQS uses a SHA-256 hash to generate the `MessageDeduplicationId`
|
1382
|
+
# using the body of the message (but not the attributes of the
|
1383
|
+
# message).
|
1384
|
+
#
|
1385
|
+
# * If you don't provide a `MessageDeduplicationId` and the queue
|
1386
|
+
# doesn't have `ContentBasedDeduplication` set, the action fails
|
1387
|
+
# with an error.
|
1388
|
+
#
|
1389
|
+
# * If the queue has `ContentBasedDeduplication` set, your
|
1390
|
+
# `MessageDeduplicationId` overrides the generated one.
|
1391
|
+
#
|
1392
|
+
# * When `ContentBasedDeduplication` is in effect, messages with
|
1393
|
+
# identical content sent within the deduplication interval are
|
1394
|
+
# treated as duplicates and only one copy of the message is
|
1395
|
+
# delivered.
|
1396
|
+
#
|
1397
|
+
# * You can also use `ContentBasedDeduplication` for messages with
|
1398
|
+
# identical content to be treated as duplicates.
|
1399
|
+
#
|
1400
|
+
# * If you send one message with `ContentBasedDeduplication` enabled
|
1401
|
+
# and then another message with a `MessageDeduplicationId` that is
|
1402
|
+
# the same as the one generated for the first
|
1403
|
+
# `MessageDeduplicationId`, the two messages are treated as
|
1404
|
+
# duplicates and only one copy of the message is delivered.
|
1405
|
+
#
|
1406
|
+
# <note markdown="1"> The `MessageDeduplicationId` is available to the recipient of the
|
1407
|
+
# message (this can be useful for troubleshooting delivery issues).
|
1408
|
+
#
|
1409
|
+
# If a message is sent successfully but the acknowledgdment is lost
|
1410
|
+
# and the message is resent with the same `MessageDeduplicationId`
|
1411
|
+
# after the deduplication interval, Amazon SQS can't detect duplicate
|
1412
|
+
# messages.
|
1413
|
+
#
|
1414
|
+
# </note>
|
1415
|
+
#
|
1416
|
+
# The length of `MessageDeduplicationId` is 128 characters.
|
1417
|
+
# `MessageDeduplicationId` can contain alphanumeric characters (`a-z`,
|
1418
|
+
# `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~
|
1419
|
+
# ``).
|
1420
|
+
#
|
1421
|
+
# For best practices of using `MessageDeduplicationId`, see [Using the
|
1422
|
+
# MessageDeduplicationId Property][2] in the *Amazon Simple Queue
|
1423
|
+
# Service Developer Guide*.
|
1424
|
+
#
|
1425
|
+
#
|
1426
|
+
#
|
1427
|
+
# [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
|
1428
|
+
# [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-messagededuplicationid-property
|
1429
|
+
# @return [String]
|
1430
|
+
#
|
1431
|
+
# @!attribute [rw] message_group_id
|
1432
|
+
# This parameter applies only to FIFO (first-in-first-out) queues.
|
1433
|
+
#
|
1434
|
+
# The tag that specifies that a message belongs to a specific message
|
1435
|
+
# group. Messages that belong to the same message group are processed
|
1436
|
+
# in a FIFO manner (however, messages in different message groups
|
1437
|
+
# might be processed out of order). To interleave multiple ordered
|
1438
|
+
# streams within a single queue, use `MessageGroupId` values (for
|
1439
|
+
# example, session data for multiple users). In this scenario,
|
1440
|
+
# multiple readers can process the queue, but the session data of each
|
1441
|
+
# user is processed in a FIFO fashion.
|
1442
|
+
#
|
1443
|
+
# * You must associate a non-empty `MessageGroupId` with a message. If
|
1444
|
+
# you don't provide a `MessageGroupId`, the action fails.
|
1445
|
+
#
|
1446
|
+
# * `ReceiveMessage` might return messages with multiple
|
1447
|
+
# `MessageGroupId` values. For each `MessageGroupId`, the messages
|
1448
|
+
# are sorted by time sent. The caller can't specify a
|
1449
|
+
# `MessageGroupId`.
|
1450
|
+
#
|
1451
|
+
# The length of `MessageGroupId` is 128 characters. Valid values are
|
1452
|
+
# alphanumeric characters and punctuation ``
|
1453
|
+
# (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
|
1454
|
+
#
|
1455
|
+
# For best practices of using `MessageGroupId`, see [Using the
|
1456
|
+
# MessageGroupId Property][1] in the *Amazon Simple Queue Service
|
1457
|
+
# Developer Guide*.
|
1458
|
+
#
|
1459
|
+
#
|
1460
|
+
#
|
1461
|
+
# [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-messagegroupid-property
|
1462
|
+
# @return [String]
|
1463
|
+
class SendMessageRequest < Struct.new(
|
1464
|
+
:queue_url,
|
1465
|
+
:message_body,
|
1466
|
+
:delay_seconds,
|
1467
|
+
:message_attributes,
|
1468
|
+
:message_deduplication_id,
|
1469
|
+
:message_group_id)
|
1470
|
+
include Aws::Structure
|
1471
|
+
end
|
1472
|
+
|
1473
|
+
# The MD5OfMessageBody and MessageId elements.
|
1474
|
+
# @!attribute [rw] md5_of_message_body
|
1475
|
+
# An MD5 digest of the non-URL-encoded message body string. This can
|
1476
|
+
# be used to verify that Amazon SQS received the message correctly.
|
1477
|
+
# Amazon SQS first URL decodes the message before creating the MD5
|
1478
|
+
# digest. For information about MD5, see [RFC1321][1].
|
1479
|
+
#
|
1480
|
+
#
|
1481
|
+
#
|
1482
|
+
# [1]: https://www.ietf.org/rfc/rfc1321.txt
|
1483
|
+
# @return [String]
|
1484
|
+
#
|
1485
|
+
# @!attribute [rw] md5_of_message_attributes
|
1486
|
+
# An MD5 digest of the non-URL-encoded message attribute string. This
|
1487
|
+
# can be used to verify that Amazon SQS received the message
|
1488
|
+
# correctly. Amazon SQS first URL decodes the message before creating
|
1489
|
+
# the MD5 digest. For information about MD5, see [RFC1321][1].
|
1490
|
+
#
|
1491
|
+
#
|
1492
|
+
#
|
1493
|
+
# [1]: https://www.ietf.org/rfc/rfc1321.txt
|
1494
|
+
# @return [String]
|
1495
|
+
#
|
1496
|
+
# @!attribute [rw] message_id
|
1497
|
+
# An element containing the message ID of the message sent to the
|
1498
|
+
# queue. For more information, see [Queue and Message Identifiers][1]
|
1499
|
+
# in the *Amazon SQS Developer Guide*.
|
1500
|
+
#
|
1501
|
+
#
|
1502
|
+
#
|
1503
|
+
# [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/ImportantIdentifiers.html
|
1504
|
+
# @return [String]
|
1505
|
+
#
|
1506
|
+
# @!attribute [rw] sequence_number
|
1507
|
+
# *This element applies only to FIFO (first-in-first-out) queues.*
|
1508
|
+
#
|
1509
|
+
# A large, non-consecutive number that Amazon SQS assigns to each
|
1510
|
+
# message.
|
1511
|
+
#
|
1512
|
+
# The length of `SequenceNumber` is 128 bits. `SequenceNumber`
|
1513
|
+
# continues to increase for a particular `MessageGroupId`.
|
1514
|
+
# @return [String]
|
1515
|
+
class SendMessageResult < Struct.new(
|
1516
|
+
:md5_of_message_body,
|
1517
|
+
:md5_of_message_attributes,
|
1518
|
+
:message_id,
|
1519
|
+
:sequence_number)
|
1520
|
+
include Aws::Structure
|
1521
|
+
end
|
1522
|
+
|
1523
|
+
# @note When making an API call, pass SetQueueAttributesRequest
|
1524
|
+
# data as a hash:
|
1525
|
+
#
|
1526
|
+
# {
|
1527
|
+
# queue_url: "String", # required
|
1528
|
+
# attributes: { # required
|
1529
|
+
# "All" => "String",
|
1530
|
+
# },
|
1531
|
+
# }
|
1532
|
+
# @!attribute [rw] queue_url
|
1533
|
+
# The URL of the Amazon SQS queue to take action on.
|
1534
|
+
#
|
1535
|
+
# Queue URLs are case-sensitive.
|
1536
|
+
# @return [String]
|
1537
|
+
#
|
1538
|
+
# @!attribute [rw] attributes
|
1539
|
+
# A map of attributes to set.
|
1540
|
+
#
|
1541
|
+
# The following lists the names, descriptions, and values of the
|
1542
|
+
# special request parameters that the `SetQueueAttributes` action
|
1543
|
+
# uses:
|
1544
|
+
#
|
1545
|
+
# * `DelaySeconds` - The number of seconds for which the delivery of
|
1546
|
+
# all messages in the queue is delayed. An integer from 0 to 900 (15
|
1547
|
+
# minutes). The default is 0 (zero).
|
1548
|
+
#
|
1549
|
+
# * `MaximumMessageSize` - The limit of how many bytes a message can
|
1550
|
+
# contain before Amazon SQS rejects it. An integer from 1,024 bytes
|
1551
|
+
# (1 KiB) up to 262,144 bytes (256 KiB). The default is 262,144 (256
|
1552
|
+
# KiB).
|
1553
|
+
#
|
1554
|
+
# * `MessageRetentionPeriod` - The number of seconds for which Amazon
|
1555
|
+
# SQS retains a message. An integer representing seconds, from 60 (1
|
1556
|
+
# minute) to 120,9600 (14 days). The default is 345,600 (4 days).
|
1557
|
+
#
|
1558
|
+
# * `Policy` - The queue's policy. A valid AWS policy. For more
|
1559
|
+
# information about policy structure, see [Overview of AWS IAM
|
1560
|
+
# Policies][1] in the *Amazon IAM User Guide*.
|
1561
|
+
#
|
1562
|
+
# * `ReceiveMessageWaitTimeSeconds` - The number of seconds for which
|
1563
|
+
# a ReceiveMessage action will wait for a message to arrive. An
|
1564
|
+
# integer from 0 to 20 (seconds). The default is 0.
|
1565
|
+
#
|
1566
|
+
# * `RedrivePolicy` - The parameters for the dead letter queue
|
1567
|
+
# functionality of the source queue. For more information about the
|
1568
|
+
# redrive policy and dead letter queues, see [Using Amazon SQS Dead
|
1569
|
+
# Letter Queues][2] in the *Amazon SQS Developer Guide*.
|
1570
|
+
#
|
1571
|
+
# <note markdown="1"> The dead letter queue of a FIFO queue must also be a FIFO queue.
|
1572
|
+
# Similarly, the dead letter queue of a standard queue must also be
|
1573
|
+
# a standard queue.
|
1574
|
+
#
|
1575
|
+
# </note>
|
1576
|
+
#
|
1577
|
+
# * `VisibilityTimeout` - The visibility timeout for the queue. An
|
1578
|
+
# integer from 0 to 43200 (12 hours). The default is 30. For more
|
1579
|
+
# information about the visibility timeout, see [Visibility
|
1580
|
+
# Timeout][3] in the *Amazon SQS Developer Guide*.
|
1581
|
+
#
|
1582
|
+
# The following attribute applies only to [FIFO (first-in-first-out)
|
1583
|
+
# queues][4]\:
|
1584
|
+
#
|
1585
|
+
# * `ContentBasedDeduplication` - Enables content-based deduplication.
|
1586
|
+
# For more information, see [Exactly-Once Processing][5] in the
|
1587
|
+
# *Amazon SQS Developer Guide*.
|
1588
|
+
#
|
1589
|
+
# * Every message must have a unique `MessageDeduplicationId`,
|
1590
|
+
#
|
1591
|
+
# * You may provide a `MessageDeduplicationId` explicitly.
|
1592
|
+
#
|
1593
|
+
# * If you aren't able to provide a `MessageDeduplicationId` and
|
1594
|
+
# you enable `ContentBasedDeduplication` for your queue, Amazon
|
1595
|
+
# SQS uses a SHA-256 hash to generate the
|
1596
|
+
# `MessageDeduplicationId` using the body of the message (but
|
1597
|
+
# not the attributes of the message).
|
1598
|
+
#
|
1599
|
+
# * If you don't provide a `MessageDeduplicationId` and the queue
|
1600
|
+
# doesn't have `ContentBasedDeduplication` set, the action
|
1601
|
+
# fails with an error.
|
1602
|
+
#
|
1603
|
+
# * If the queue has `ContentBasedDeduplication` set, your
|
1604
|
+
# `MessageDeduplicationId` overrides the generated one.
|
1605
|
+
#
|
1606
|
+
# * When `ContentBasedDeduplication` is in effect, messages with
|
1607
|
+
# identical content sent within the deduplication interval are
|
1608
|
+
# treated as duplicates and only one copy of the message is
|
1609
|
+
# delivered.
|
1610
|
+
#
|
1611
|
+
# * You can also use `ContentBasedDeduplication` for messages with
|
1612
|
+
# identical content to be treated as duplicates.
|
1613
|
+
#
|
1614
|
+
# * If you send one message with `ContentBasedDeduplication` enabled
|
1615
|
+
# and then another message with a `MessageDeduplicationId` that is
|
1616
|
+
# the same as the one generated for the first
|
1617
|
+
# `MessageDeduplicationId`, the two messages are treated as
|
1618
|
+
# duplicates and only one copy of the message is delivered.
|
1619
|
+
#
|
1620
|
+
# Any other valid special request parameters that are specified (such
|
1621
|
+
# as `ApproximateNumberOfMessages`,
|
1622
|
+
# `ApproximateNumberOfMessagesDelayed`,
|
1623
|
+
# `ApproximateNumberOfMessagesNotVisible`, `CreatedTimestamp`,
|
1624
|
+
# `LastModifiedTimestamp`, and `QueueArn`) will be ignored.
|
1625
|
+
#
|
1626
|
+
#
|
1627
|
+
#
|
1628
|
+
# [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
|
1629
|
+
# [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html
|
1630
|
+
# [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html
|
1631
|
+
# [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
|
1632
|
+
# [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
|
1633
|
+
# @return [Hash<String,String>]
|
1634
|
+
class SetQueueAttributesRequest < Struct.new(
|
1635
|
+
:queue_url,
|
1636
|
+
:attributes)
|
1637
|
+
include Aws::Structure
|
1638
|
+
end
|
1639
|
+
|
1640
|
+
end
|
1641
|
+
end
|
1642
|
+
end
|