2015-05-06 75 views
0

如何在SignalR中创建聊天组?我试图找到一些例子,他们没有帮助。任何帮助,将不胜感激。这是我到目前为止:在SignalR中创建聊天组

public void CreateGroup(string currentUserId, string toConnectTo) 
{ 
    string strGroupName = GetUniqueGroupName(currentUserId, toConnectTo); 
    string connectionId_To = OnlineUser.userObj.Where(item => item.userId == toConnectTo).Select(item => item.connectionId).SingleOrDefault(); 
    if (!string.IsNullOrEmpty(connectionId_To)) 
    { 
     Groups.Add(Context.ConnectionId, strGroupName); 
     Groups.Add(connectionId_To, strGroupName); 
     Clients.Caller.setChatWindow(strGroupName, toConnectTo); 
    } 
} 

回答

0

这不是那么容易创建一个用户友好的聊天组,我目前正在努力。

我使用sql数据库,用户可以注册,登录,注销,关闭浏览器或电话应用程序而无需注销。

用户可以创建自己的群组,添加群组成员,从群组中删除成员。

当用户发送消息时,调用signalr Server方法并将消息存储在sql中,然后Server将消息发送给同一组中的所有用户。如果某些用户处于脱机状态,则他们在线时再次读取来自sql的消息。

消息的输入可以是'contenteditable div',以便用户可以将图像和格式化文本添加到消息中。

这样的事情!