package queue import ( "context" "github.com/aws/aws-sdk-go-v2/service/sqs" ) type ReceiveParams struct { QueueURL string Attributes []string } func (c *QueueConfig) ReceiveFromQueue(ctx context.Context, params *ReceiveParams) (*sqs.ReceiveMessageOutput, error) { return c.QueueClient.ReceiveMessage(ctx, &sqs.ReceiveMessageInput{ QueueUrl: ¶ms.QueueURL, MaxNumberOfMessages: 1, WaitTimeSeconds: 30, VisibilityTimeout: 5, MessageAttributeNames: params.Attributes, }) }