Get support for brefphp/symfony-messenger-sns

If you're new to LTH, please see our FAQ for more information on what it is we do.

Support Options

Unfortunately, there are currently no active helpers for this repository on the platform. Until they become available, we reccomend the following actions:

View Open Issues

Take a look to see if anyone else has experienced the same issue as you and if they managed to solve it.

Open an Issue

Make sure to read any relevant guidelines for opening issues on this repo before posting a new issue.

Sponsor directly

Check out the page and see if there are any options to sponsor this project or it's developers directly.

brefphp/symfony-messenger-sns

Symfony Messenger SNS pack

This small package helps you install and configure Symfony Messenger with SNS. If installed with Flex you will have most things configured for you.

Package contents

bin/message-consumer

This file will be "composer copied" to your projects bin folder (ie vendor/bin/message-consumer). This file receives SNS messages and gives them to App\Consumer\SnsConsumer.

src/Consumer.php

This class is responsible to decode the SNS message and put it back on the message bus. It dispatches events which one can subscribe to in order to modify behavior. Ie, retry failed events.

config/sns-consumer.yaml

This file will be copied by Flex to config/packages/sns-consumer.yaml. It contains example configuration for Messenger and Enqueue Bundle.

Bref template

Here is a small snippet to make sure we configure a consumer for SNS with Bref.

Resources:
    Consumer:
        Type: AWS::Serverless::Function
        Properties:
            FunctionName: 'my-app-consumer'
            Handler: vendor/bin/message-consumer
            Timeout: 20 # in seconds
            MemorySize: 2048
            # ...
            Events:
                Sns:
                    Type: SNS
                    Properties:
                        Topic: arn:aws:sns:eu-central-1:xxxxxxx:my_sns_topic

Local Development

When working in production we are using SNS but in local development we may want to use something simpler, say RabbitMQ.

# .env

# Production
AWS_SNS_DSN=enqueue://acme?topic[name]=my_sns_topic

# Development
AWS_SNS_DSN=amqp://guest:guest@127.0.0.1:5672/%2f/fake_sns 

Then you can consume messages are you normally would with bin/console messenger:consume.

Our Mission

We want to make open source more sustainable. The entire platform was born from this and everything we do is in aid of this.

Interesting Articles

Thank you for checking out LiveTechHelper |
2025 © lth-dev incorporated

p-e622a1a2