2017-01-25 2 views
-1

J'essaie d'envoyer un message d'alerte aux autres utilisateurs qui se trouvent actuellement sur la même URL que le programme de mise à jour.Signal d'envoi du concentrateur SignalR au client spécifique

Disons que je suis sur la page .../Customers/Detail/597 et de le mettre à jour.

Dès que les rechargements de page, je veux envoyer un signal aux utilisateurs qui sont actuellement sur la même page (.../Customers/Detail/597)

Actuellement, même si les autres utilisateurs sont sur une autre page comme .../Customers/Detail/687 ils obtiennent toujours la message d'alerte.

Répondre

1

Cela peut être fait en utilisant quelque chose comme

Dans votre asp.net côté mvc (d'où vous envoyez le message)

IHubContext hubContext = GlobalHost.ConnectionManager.GetHubContext<Hub>(); 
hubContext.Clients.All.NotifyUser(id, message); 

et dans votre javascript (où vous acceptent)

//you must have that Id (from URL) in your javascript too so you can check if user is currently on that spage 
var id = ...; 
hub.client.NotifyUser = function(serverId, message) { 

    if(id == serverId) 
    { 
     //do something with the message 
    } 
}