我有一个私人聊天应用程序。我的实现方式是:
1.用户进入另一个用户的个人资料页面并写下一条消息。然后我会为这次对话创建一个房间。
接收者用户将接收此消息(仅限该用户),但我不知道如何将此接收者用户加入此房间。因此,这基本上是我的问题。我需要手动将此接收者用户添加到我的房间中。通过这种方式,当我向此房间广播消息时,消息将发出给这两个用户(一个是匿名用户,另一个是注册用户)。这将提供我的一些代码。
任何建议对我来说都很好。谢谢。
1.用户进入另一个用户的个人资料页面并写下一条消息。然后我会为这次对话创建一个房间。
socket.join(data.user);
接收者用户将接收此消息(仅限该用户),但我不知道如何将此接收者用户加入此房间。因此,这基本上是我的问题。我需要手动将此接收者用户添加到我的房间中。通过这种方式,当我向此房间广播消息时,消息将发出给这两个用户(一个是匿名用户,另一个是注册用户)。这将提供我的一些代码。
server
.on('connection', function(socket) {
server.to(socket.id).emit('yourSocketId',{ socketid : socket.id,connectedDate : Date.now });
socket.on('AnonymousMessage', function(data) {
if(data.isanon == true)
{
socket.join(data.user);
server.to(data.user).emit('AnonymousBroadcast', {
message: data.message,
user: data.user,
isanon : data.isanon,
date : data.date,
tabno : data.tabno
});
}
else
{
socket.join(****); //-- I need add manually here this registered user to anonymous user room
server.to(**anonymousroomname**).emit('AnonymousBroadcast', {
message: data.message,
user: data.user,
isanon : data.isanon,
date : data.date,
tabno : data.tabno
});
}
});
});
任何建议对我来说都很好。谢谢。
sockets[receiverSocketId].join(room);
。为什么会出错?看起来很合理啊。 - Fatih Ayyildiz