AWSSQS.sqs_busy_countMethod
sqs_busy_count(::AWSQueue)

Approximate number of messages not visible in a queue.

AWSSQS.sqs_change_message_visibilityMethod
sqs_change_message_visibility(::AWSQueue, message, visibility_timeout)

Change the amount of time before a message can be re-read from a queue. Default message visibility timeout is 30 seconds, minimum is 0 seconds, maximum is 12 hours.

AWSSQS.sqs_countMethod
sqs_count(::AWSQueue)

Approximate number of messages in a queue.

AWSSQS.sqs_create_queueMethod
sqs_create_queue([::AWSConfig], name; options...)

Create new queue with name. Returns ::AWSQueue.

options: VisibilityTimeout, MessageRetentionPeriod, DelaySeconds etc...

See SQS API Reference for detail.

q = sqs_create_queue("my-queue")
sqs_send_message(q, "my message")
AWSSQS.sqs_flushMethod
sqs_flush(::AWSQueue)

Delete all messages from a queue.

AWSSQS.sqs_get_queueMethod
sqs_get_queue([::AWSConfig], name)

Look up a queue by name. Returns ::AWSQueue.

q = sqs_get_queue("my-queue")
sqs_send_message(q, "my message")
AWSSQS.sqs_list_queuesFunction
sqs_list_queues([::AWSConfig], prefix="")

Returns a list of ::AWSQueue.

for q in sqs_list_queues()
    println("$(sqs_name(q)) has ~$(sqs_count(q)) messages.")
end
AWSSQS.sqs_messagesMethod
sqs_messages(::AWSQueue)

Returns an iterator that retrieves messages from a queue.

for m in sqs_messages(q)
    println(m[:message])
    sqs_delete_message(m)
end
AWSSQS.sqs_receive_messageMethod
sqs_receive_message(::AWSQueue)

Returns a Dict containing :message, :id and :handle or nothing if the queue is empty.

m = sqs_receive_message(q)
println(m[:message])
sqs_delete_message(m)
AWSSQS.sqs_send_messageMethod
sqs_send_message(::AWSQueue, message)

Send a message to a queue.

sqs_send_message(queue, "Hello!", Dict(:MessageGroupId=>"Some_UUID"))