Sor*_*ora 3 javascript c# signalr
我正在使用SignalR库来创建聊天室,但现在我想跟踪用户操作,例如,如果客户端1正在与客户端2通话,我想显示(...)告诉客户端2客户端1正在编写消息是他们无论如何要做到这一点?
您可以经常处理KeyPress事件(比如每10个字符左右),您可以调用服务器端消息来通知"UserTyping"操作.
客户端
<textbox id="message"></textbox>
<span id="userTyping"></span>
var keyPressCount = 0;
$("#message").on("keypress", function () {
// Throttle the server call with some logic
// Don't want to call the server on every keypress
if (keyPressCount++ % 10 == 0) {
chatHub.server.userTyping("myChatGroup");
}
});
chatHub.client.OtherUserIsTyping = function (userName) {
$("#userTyping").html(userName + " is typing...");
};
Run Code Online (Sandbox Code Playgroud)
服务器端
public void UserTyping(groupName)
{
var userName = "Get current user's name";
Clients.OthersInGroup(groupName).OtherUserIsTyping(userName);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
358 次 |
| 最近记录: |