Plugins
Discord Notifications
Send notifications to a Discord channel using the native FilamentPHP Notification Facade class
Developer Tool
Dark theme support
Yes
Multi language support
Yes
Compatible with the latest version
Supported versions: 3.x
Documentation

Screenshot

Latest Stable Version License Downloads

Send Notification to discord channel Webhook using native FilamentPHP Notification Facade class

#Screenshots

Notification Error Log Error Log Link

#Installation

composer require tomatophp/filament-discord

after install on your .env file set

DISCORD_WEBHOOK=
DISCORD_ERROR_WEBHOOK=
DISCORD_ERROR_WEBHOOK_ACTIVE=

where DISCORD_WEBHOOK the main notification channel webhook and DISCORD_ERROR_WEBHOOK is the error logger channel webhook and DISCORD_ERROR_WEBHOOK_ACTIVE to be true or false to active and stop logger

#Using

you can send notification to discord with multi-way the first of it is using native FilamentPHP Notification::class

use \Filament\Notifications\Notification;
 
Notification::make()
->title('Hi')
->body('Welcome On The Moon!')
->sendToDiscord()

you can attach image to the message like this

use \Filament\Notifications\Notification;
 
Notification::make()
->title('Hi')
->body('Welcome On The Moon!')
->sendToDiscord(image: "https://raw.githubusercontent.com/tomatophp/filament-discord/master/arts/3x1io-tomato-discord.jpg")

#Send to Selected User

you can send a notification to selected user webhook by add a column on your user table with name webhook and then add this tait to User model

use TomatoPHP\FilamentDiscord\Traits\InteractsWithDiscord;
 
class User {
use InteractsWithDiscord;
}

and now you can send notification to the user like this

use \Filament\Notifications\Notification;
 
Notification::make()
->title('Hi')
->body('Welcome On The Moon!')
->sendToDiscord($user)

#Allow Discord Error Logger

you can use Discord channel as an error logger to log and followup your error with a very easy way, on your bootstrap/app.php add this class like this

use Illuminate\Foundation\Application;
use Illuminate\Foundation\Configuration\Exceptions;
use Illuminate\Foundation\Configuration\Middleware;
use ProtoneMedia\Splade\Http\SpladeMiddleware;
 
return Application::configure(basePath: dirname(__DIR__))
->withRouting(
web: __DIR__.'/../routes/web.php',
api: __DIR__.'/../routes/api.php',
commands: __DIR__.'/../routes/console.php',
channels: __DIR__.'/../routes/channels.php',
health: '/up',
)
->withMiddleware(function (Middleware $middleware) {
})
->withExceptions(function (Exceptions $exceptions) {
\TomatoPHP\FilamentDiscord\Helpers\DiscordErrorReporter::make($exceptions);
})->create();

#Publish Assets

you can publish config file by use this command

php artisan vendor:publish --tag="filament-discord-config"

#Other Filament Packages

Checkout our Awesome TomatoPHP

Featured Plugins