2012-03-13 14 views
0

私が求めているのは、クライアントのコレクションが通常は比較的一定しているグループプッシュとは異なる場合があります。SignalRを使用すると、変化するクライアントのコレクションに一括してメッセージを送信できますか?

通知システムでは、クライアントは他のすべてのクライアントが購読していないイベントを作成できます。たとえば、クライアントは新しいログインの通知を受け取ることを望まず、新しい写真がいつ特定のユーザーからのみ公開されるかを知りたいと示します。組み合わせは無限であり、オンザフライで作成されるので、グループプッシュはできません。

各イベントで、通知を受け取る新しいクライアントのコレクションが作成されます。個々のプライベートメッセージではなく、一括プッシュでこれを達成する方法はありますか?

これを実装する方法は、オンザフライで(サーバー側で)グループを作成し、そのグループにクライアントを追加してからそのグループにメッセージを送信することですか?

ありがとうございました。

答えて

0

なぜこのようなグループが必要なのですか?イベントfooに登録しているクライアント:

$.connection.myHub.foo = function() { } 

イベントが通知されます。私たちがすぐにうまく行かないのは、イベントを動的に作成したり削除したりすることですが、そのサポートは改善されます。

ダイナミックなものをお望みなら、唯一の選択肢はグループを使用することです。

+0

ユーザーはイベントに参加できますが、一部のユーザーは他のユーザーからのイベントを表示したり、ユーザーにイベントを表示したりすることはできません。たとえば、ユーザーがあなたの「イベント」を見ることを禁止しました。だからあなたがログインすると、その禁止されたユーザーもログインしていると、彼らはあなたの「ログインした」イベントを見ることはできませんが、それ以外のイベントはすべて表示されます。したがって、すべての有効なユーザーをそのイベントの通知グループに追加してから、グループに送信することは私が考えていたものです。グループは、そのリストを繰り返し処理するのではなく、通知が送信されるまで存在し、個々のプライベートな送信を行います。推奨される方法? – ElHaix

+0

グループを使用する。他の場所のメンバーシップを追跡し、グループを使用してどのクライアントがどのメッセージを受け取るべきかを選択します。 – davidfowl

関連する問題