Используйте Synicr, чтобы иметь в Facebook, как система уведомлений

StackOverflow https://stackoverflow.com/questions/9468513

Вопрос

Я хочу реализовать в Facebook, как система уведомлений в ASP.NET MVC 3: уведомления отправляются конкретному пользователю, чтобы уведомить его для действия на одном из его элементов.

Сигнал подходит для таких требований? Как я могу отправить уведомление конкретному пользователю (все открытые сеансы этого пользователя) с использованием Signalr?

Редактировать

Хорошо, вот что я сделал

на стороне клиента

$(function () {
// Proxy created on the fly
var chat = $.connection.chat;
var username = '@Html.ViewContext.HttpContext.User.Identity.Name';
// Declare a function on the chat hub so the server can invoke it
chat.addMessage = function (message) {
     $('#messages').append('<li>' + message + '</li>');
};
// Start the connection
$.connection.hub.start(function (){
    chat.join(username);
});

});
.

на стороне сервера

public class Chat : Hub
{
    public void Join(string username)
    {
        AddToGroup(username);
    }
}
.

И каждый раз, когда мне нужно уведомить пользователя в контроллере, я делаю следующее:

IConnectionManager connectionManager = AspNetHost.DependencyResolver.Resolve<IConnectionManager>();
dynamic clients = connectionManager.GetClients<Chat>();
clients[username].addMessage("test");
.

Это было полезно?

Решение

Это подходит для этого или вы используете опрос, это два варианта.

Вот совершенно новое видео с сегодняшнего дня на этом:

http://channel9.msdn.com/shows/web+camps+tv/damian-edwardwards-and-david-fowler-demonstrate-signalr?utm_source=dlvr.it&utm_medium=twitter .

Другие советы

Да, Signalr - хороший выбор для этого.Посмотрите на документацию относительно HUBS ( Сервер и Клиент JS ).

Вам необходимо реализовать логику сервера для ассоциирования сеанса вашего клиента с сеансом Syvicer.Вы можете использовать группы, чтобы уведомить все открытые сеансы каждого пользователя.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top