2017-10-21 11 views
1

私はlaravelを使用してソーシャルネットワークウェブサイトを持っています。特定のユーザーに対して通知が設定されると、通知システムは正常に機能します。しかし、ユーザーがモデレーターになって、そのイベントをすべてのユーザーに通知したいとします。すべてのユーザーに同じ通知を挿入することなく、そうする方法はありますか?Laravel - すべてのユーザーのために1つの通知

私の心に来た一つの解決策は、私はそれがすべてのユーザーのためのものであり、方法によって、私がいないことを示しのuser_id への通知を設定することを考えています

ですこの種の通知ではread_atプロパティを必要とするので、FKで別のテーブルを必要としないようにしてください。これはソリューションの挿入方法とユーザの通知関係に沿った検索方法です

+0

現在の通知システムの作品は助けることができる方法についていくつかのコード。特定のユーザーに届くことを目的としたものではなく、ブロードキャストとして通知する方法を決定することの問題かもしれません。 – apokryfos

答えて

0

多くのユーザーはすべてのユーザーに対して繰り返し使用できますqueues

複数のメールを一度に送信する場合は、メールサービスAPIを直接使用するone of the available packagesを使用して、1つずつメールを送信するのではなく、チャンクを送信します。

アプリを使用しているすべての現在のユーザーにイベントをブロードキャストする場合は、そのためにLaravel Broadcasting機能を使用します。あなたが望むのは、パブリックチャンネルを使用することです。

イベントは「チャンネル」を介してブロードキャストされます。これらは「パブリック」または「プライベート」として指定できます。アプリケーションへの訪問者は、認証や承認なしでパブリックチャンネルに登録することができます。

https://laravel.com/docs/5.5/broadcasting#concept-overview

+0

私は電子メール通知を望ましくありません。状況を単純化するデータベース通知です。 –

+0

@ModySharf正確にはデータベース通知の意味ですか? –

+0

私はそれが電子メールで送信されないことを意味し、ちょうどDB –

関連する問題