跳到主要内容
版本:3.0

广播通知

概述

开始前,请先确保已经安装了该包,且 @livewire('notifications') 应该嵌入到你的 Blade 模板中。

默认情况下,Filament 通过 Laravel session 发送闪存通知。假如你希望通知实时“广播”给用户,可以用于在队列任务完成处理后从队列任务中发送临时成功消息。

可使用 Laravel Echo 进行本地集成。确保已经安装了 Echo, 以及服务端 websocket 集成如 Pusher。

发送广播通知

有多种方法可用于发送广播通知,取决于哪一种更适合你。

你可以s使用我们的 fluent API:

use Filament\Notifications\Notification;

$recipient = auth()->user();

Notification::make()
->title('Saved successfully')
->broadcast($recipient);

或者使用 notify() 方法:

use Filament\Notifications\Notification;

$recipient = auth()->user();

$recipient->notify(
Notification::make()
->title('Saved successfully')
->toBroadcast(),
)

此外,也可以使用传统 Laravel 通知类返回通知给 toBroadcast() 方法:

use App\Models\User;
use Filament\Notifications\Notification;
use Illuminate\Notifications\Messages\BroadcastMessage;

public function toBroadcast(User $notifiable): BroadcastMessage
{
return Notification::make()
->title('Saved successfully')
->getBroadcastMessage();
}