diff --git a/src/views/SQSView.vue b/src/views/SQSView.vue index 3d3b996..6214512 100644 --- a/src/views/SQSView.vue +++ b/src/views/SQSView.vue @@ -85,7 +85,8 @@
Delay: {{ queue.attributes.DelaySeconds || 0 }}s • - Visibility: {{ queue.attributes.VisibilityTimeoutSeconds || 30 }}s + Visibility: {{ queue.attributes.VisibilityTimeoutSeconds || 30 }}s • + Fifo: {{ queue?.attributes?.FifoQueue ? 'Sim' : 'Não' }}
@@ -239,6 +240,7 @@ > + + @@ -305,7 +315,8 @@ const newQueue = ref({ const newMessage = ref({ body: '', - delaySeconds: 0 + delaySeconds: 0, + messageGroupId: '' }) const queueNameRules = [ @@ -444,12 +455,15 @@ const receiveMessages = async () => { const sendMessage = async () => { if (!newMessage.value.body || !currentQueue.value) return + const isFifo = isCurrentQueueFifo() + sending.value = true try { const params = { QueueUrl: currentQueue.value.url, MessageBody: newMessage.value.body, - DelaySeconds: newMessage.value.delaySeconds + DelaySeconds: isFifo ? undefined: newMessage.value.delaySeconds, + MessageGroupId: isFifo ? newMessage.value.messageGroupId : undefined } await sqs.value.send(new SendMessageCommand(params)) @@ -491,6 +505,10 @@ const parseAndFormatDate = (timestamp) => { return formatDate(parseInt(timestamp)) } +const isCurrentQueueFifo = () => { + return currentQueue.value?.attributes?.FifoQueue === 'true' +} + onMounted(() => { loadQueues() })