我如何从.client. addmessage获得组标识符

本文关键字:标识符 addmessage client | 更新日期: 2023-09-27 18:17:39

我需要在函数回调上获得组标识符和消息。这可能吗?

代码如下:

$(function () {
    // Proxy created on the fly          
    var chat = $.connection.discussion;
    var discussionId = Math.floor(Math.random() * 2);
    alert(discussionId);
    var discussionId2 = Math.floor(Math.random() * 2);
    alert(discussionId2);
    $.connection.hub.start(function () {
        chat.server.join(discussionId);
        chat.server.join(discussionId2);
    });
    // Declare a function on the chat hub so the server can invoke it          
    chat.client.addMessage = function (message) {
        $('#messages').append('<li>' + message + '</li>');
    };
    // Start the connection
    $.connection.hub.start().done(function () {
        $("#broadcast").click(function () {
            // Call the chat method on the server
            var discussionIdX = Math.floor(Math.random() * 2);
            alert(discussionIdX);
            chat.server.send(discussionIdX, $('#msg').val());
        });
    });
});

这只是一个例子。基本上,我将用户添加到2个随机组然后我需要我需要组标识符将消息附加到正确的div

编辑:

    public class Discussion : Hub{
public void Send(string discussionId, string message)
{
    Clients.Group(discussionId).addMessage(message);
}
public void Join(string discussionId)
{
    Groups.Add(Context.ConnectionId, discussionId);
}}

我如何从.client. addmessage获得组标识符

从服务器传递组作为参数。

客户端:

chat.client.addMessage = function (message, group) { ... }

在服务器端:

Clients.Group(discussionId).addMessage(message, discussionId);