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
Slack Notifier

Slack Notifier Laravel Package

symfony/slack-notifier

Symfony Slack Notifier lets your app send notifications to Slack via Symfony Notifier. Configure Slack webhook or token-based transport, then deliver messages from your code and notification system with a consistent API alongside other channels.

View on GitHub
Deep Wiki
Context7

Symfony Slack Notifier Bridge

Frequently asked questions about Slack Notifier
Can I use Symfony Slack Notifier directly in Laravel without extra setup?
No, this package is designed for Symfony Notifier and requires a custom Laravel Notification Channel wrapper. You’ll need to create a channel driver to bridge Symfony’s ChatMessage to Laravel’s Notification system. The README and TPM assessment outline the steps for integration.
How do I configure Slack Notifier in Laravel’s .env file?
Use the DSN format in your `.env` file, like `SLACK_DSN=slack://xoxb-your-token@default?channel=alerts`. However, since Laravel’s Notification system expects separate configurations, you may need to parse this DSN in a custom channel driver or service provider.
What Laravel versions support Symfony Slack Notifier?
Laravel 10+ is recommended due to PHP 8.1+ compatibility (required by Symfony 6.4+). If you’re using an older Laravel version, you’ll need to upgrade or evaluate alternatives like `spatie/laravel-slack-notification`, which has broader Laravel version support.
How do I send interactive messages with buttons or BlockKit elements?
Use the `SlackOptions` class to add BlockKit elements like buttons, sections, or dividers. For example, create a `SlackActionsBlock` with buttons and attach it to your `ChatMessage`. The package leverages Slack’s Block Kit API for rich formatting.
Is there a way to handle Slack API errors gracefully (e.g., rate limits, invalid tokens)?
Yes, Symfony Notifier supports retry logic for transient errors. You can configure retry settings in the transport layer. For Laravel, ensure your custom channel driver implements fallback logging or integrates with Laravel’s exception handling.
Can I use this package for threaded replies or message updates in Slack?
Yes, the package supports threaded replies and message updates via Slack’s API. You’ll need to include the `thread_ts` parameter in your `ChatMessage` payload when sending updates or replies.
What’s the dependency overhead of using Symfony Slack Notifier in Laravel?
The package requires Symfony Notifier (~20MB), but you can install it standalone without the full Symfony framework. If your project already uses Symfony components, the overhead is minimal. Otherwise, weigh it against alternatives like `spatie/laravel-slack-notification`.
How do I test Slack notifications in Laravel?
Mock Slack API responses using Slack’s mock API or Laravel’s HTTP testing tools (e.g., Pest). For integration tests, use a test Slack workspace or a local Slack mock server. The package itself doesn’t include testing utilities, so you’ll need to implement custom test logic.
Are there alternatives to Symfony Slack Notifier for Laravel?
Yes, consider `spatie/laravel-slack-notification`, which is built specifically for Laravel and offers a simpler API. It may lack BlockKit support but integrates natively with Laravel’s Notification system without custom channel drivers.
How do I replace an existing Slack integration (e.g., Guzzle-based) with this package?
Audit your current Slack usage to identify all notification points. Replace Guzzle-based calls with Symfony Notifier’s `ChatMessage` and configure the DSN in your Laravel app. You may need to refactor message formatting to use BlockKit or adapt existing payloads to the new API.
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.
besmartand-pro/php-quality-config
sentix/ai-chatbot
terminal42/code-quality-tools
codifyo/ts-generator-bundle
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