using Microsoft.AspNet.SignalR.Hubs;
using Microsoft.AspNet.SignalR;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Remoting.Contexts;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
namespace XdCxRhDW.WebApi.SignalR
{
///
///
///
[HubName("MyTestHub")]
public class MyHub : Hub
{
///
///
///
///
///
public void Send(string name, string message)
{
String msg = String.Format("Message send by {0}: {1}", name, message);
Console.WriteLine(msg);
Clients.Client(GlobalModel._ids[0]).addMessage(msg);
}
///
///
///
///
public void Sign(string projectNo)
{
Groups.Add(Context.ConnectionId, projectNo);
}
///
///
///
///
public void SameGroupMessage(string name)
{
Clients.Group(name).SendClient($"咱们是同一个组{name}");
}
///
///
///
///
public override Task OnConnected()
{
Console.WriteLine("Client connected: " + Context.ConnectionId);
GlobalModel._ids.Add(Context.ConnectionId);
return base.OnConnected();
}
///
///
///
///
///
public override Task OnDisconnected(Boolean stopCall)
{
Console.WriteLine("Client disconnected: " + Context.ConnectionId);
return base.OnDisconnected(true);
}
}
///
///
///
public class GlobalModel
{
///
///
///
public static List _ids = new List();
}
}