我正在尝试在我的signleR应用程序中获取连接的用户ID,但我找不到它。有没有办法得到它,因为我想当两个用户聊天时,他们两个将接收彼此的消息,而不是他们连接的整个组,或连接到signleR集线器的所有客户端。我的主要目标是在两个连接的客户端之间发送私人消息。
我的代码非常复杂,但我发现的是如何向所有客户端或特定组广播我的消息,但我无法发送私信。我这样做是为了发送用户输入消息:
public void UserTyping(string msg, int ToClient) { // display User is Typing Msg
Clients.Others.OtherUserIsTyping(msg, ToClient);
}
ClientSide:
var keyPressCount = 0;
$("#<%=MsgToSend.ClientID %>").keypress(function () {
// Throttle the server call with some logic
// Don't want to call the server on every keypress
var ToClientID = $("#ToClientID").val();
if (keyPressCount++ % 10 == 0) {
chat.server.userTyping("Is typing...", ToClientID); // call the server side function
}
});
chat.client.OtherUserIsTyping = function (msg, ToClient) { // declare the function on the chat hub so the server can invoke it
$("#UserTyping").html(msg);
}