【发布时间】:2017-08-17 07:52:58
【问题描述】:
我需要为我的项目分发消息(电子邮件/电报/短信等)。 它需要与每个用户列表(新帐户、付费帐户、已付费等)和发送提供商(电子邮件、电报 ..)分开
是否有任何开源或付费解决方案? (更喜欢 laravel 或者只是 php,但这并不重要)
你如何在你的项目中解决它?
【问题讨论】:
我需要为我的项目分发消息(电子邮件/电报/短信等)。 它需要与每个用户列表(新帐户、付费帐户、已付费等)和发送提供商(电子邮件、电报 ..)分开
是否有任何开源或付费解决方案? (更喜欢 laravel 或者只是 php,但这并不重要)
你如何在你的项目中解决它?
【问题讨论】:
回答您的问题:
我显然会按照你所说的那样使用 Laravel 通知,将 Laravel、php 和开源合二为一。驱动有很多,包括你提到的,可以here查看。
关于如何将它集成到需要使用特征 Notifiable 的用户组中:
<?php
namespace App;
use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;
class User extends Authenticatable
{
use Notifiable;
}
然后你只需要创建你有兴趣通知的用户集合并使用 Facade 向他们发送通知:
Notification::send($users, new InvoicePaid($invoice));
作为一个额外的建议,我建议您设置队列并将这些通知排队,因为您的用户组可能很大:
<?php
namespace App\Notifications;
use Illuminate\Bus\Queueable;
use Illuminate\Notifications\Notification;
use Illuminate\Contracts\Queue\ShouldQueue;
class InvoicePaid extends Notification implements ShouldQueue
{
use Queueable;
// ...
}
希望对你有所帮助。
【讨论】:
$users。要使其自动化,请使用事件。