Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Sns Laravel Package

async-aws/sns

AsyncAws SNS client for PHP: publish messages, send SMS, manage topics and subscriptions, and integrate with AWS SNS without the full AWS SDK. Lightweight, async-friendly, PSR-18/PSR-7 compatible for modern apps and Laravel.

View on GitHub
Deep Wiki
Context7

[READ ONLY] SNS client

Frequently asked questions about Sns
How do I integrate AsyncAws SNS with Laravel’s queue system for async message publishing?
Bind the `SnsClient` to Laravel’s service container in `AppServiceProvider` and use it in queue jobs. For example, inject `SnsClient` into a job, then call `$snsClient->publish()` with your topic ARN and message. This works seamlessly with Laravel’s `queue:work` or Horizon for async processing.
Does AsyncAws SNS support FIFO topics for ordered message processing in Laravel?
Yes, AsyncAws SNS supports FIFO topics since version 1.1.0. Use the `PublishInput` with a `MessageDeduplicationId` and `MessageGroupId` to ensure ordered delivery. This is ideal for Laravel applications requiring sequential processing, like financial transactions or audit logs.
Can I use AsyncAws SNS to send SMS notifications in Laravel without the full AWS SDK?
Absolutely. AsyncAws SNS simplifies SMS publishing by abstracting AWS SDK complexity. Use the `publish()` method with a topic ARN configured for SMS, and Laravel’s `Notification` facade can route messages to SNS. This avoids bloating your project with the full AWS SDK while retaining functionality.
What Laravel versions and PHP requirements does AsyncAws SNS support?
AsyncAws SNS requires PHP 8.2+ and is compatible with Laravel 10+. It aligns with Laravel’s current LTS support, ensuring long-term stability. The package leverages AsyncAws/Core, which is actively maintained and optimized for modern PHP and Laravel ecosystems.
How do I configure AWS credentials securely in Laravel for AsyncAws SNS?
Store AWS credentials in Laravel’s `.env` file (e.g., `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`) and reference them in your `config/sns.php`. For production, use IAM roles (EC2/ECS) or Laravel’s `env()` helper to avoid hardcoding credentials. Always restrict permissions via IAM policies.
Can AsyncAws SNS replace Laravel’s built-in queue system for cross-service communication?
Yes, AsyncAws SNS is ideal for cross-service communication in Laravel microservices. Use it to publish events to SNS topics, which other services can subscribe to via SQS or HTTP endpoints. This decouples services while leveraging Laravel’s queue system for local processing of SNS-triggered jobs.
How do I test AsyncAws SNS in Laravel without hitting AWS costs?
Use `vcrphp` to record and replay HTTP interactions with SNS, or spin up a LocalStack container for integration tests. Mock the `SnsClient` in unit tests with Mockery to verify message publishing logic. This approach balances realism with cost efficiency during development.
Does AsyncAws SNS support message encryption (KMS) or VPC endpoints for secure Laravel deployments?
AsyncAws SNS supports KMS encryption for messages and VPC endpoints via the `PublishInput` and `SubscribeInput` constructors. Configure these in your Laravel app’s SNS client initialization to enforce encryption or VPC isolation, aligning with AWS security best practices.
What’s the retry policy for failed SNS operations in AsyncAws SNS, and how does it integrate with Laravel?
AsyncAws SNS uses exponential backoff and retries for failed operations by default. Integrate with Laravel’s queue retries by throwing exceptions in your queue jobs, which will trigger Laravel’s retry mechanism. For persistent failures, use dead-letter queues (DLQ) to isolate unprocessable messages.
Are there alternatives to AsyncAws SNS for Laravel, and why should I choose this package?
Alternatives include the full AWS SDK for PHP or Guzzle-based wrappers, but AsyncAws SNS is lighter, PSR-18/PSR-7 compliant, and designed for async Laravel apps. It avoids Symfony dependencies (unlike the AWS SDK) and provides type-safe input/output objects, reducing runtime errors while keeping your project lean.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
terminal42/code-quality-tools
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky