Answer the question
In order to leave comments, you need to log in
What is the best way to organize room sharing in a chat on node.js?
It is necessary to attach a simple chat to the project, a node was chosen for this.
Once upon a time it was kolupol, but I forgot everything. In general, there are a number of authorization issues.
When a user enters the chat page, I send a special token and an identifier (interlocutor_id) of the interlocutor to the node.js server:
socket.on('connect', function () {
socket.emit('add user', 'hash', 'interlocutor_id');
});
/**
* Добавляем пользователя в комнату
* @var hash - на основе которого необходимо проверить текущего пользователя
* @var interlocutor_id - идентификатор собеседника
*/
socket.on('add user', function (hash, interlocutor_id) {
//TODO: Узнаем user_id по hash и проверяем может ли пользователь общаться в чате
//TODO: Проверяем общий список, ожидает ли кто-то общения с user_id
//TODO: Если кто-то ожадает общения с user_id записываем user_id в общий список и добавляем в нужную комнату
//TODO: Если никто не ожидает общения с user_id, создаем для него комнату и вносим в общий список
// socket.join(room);
console.log (hash);
});
rooms = [
{
name: 'fds5e6f7y89sgufdgifdg5430fd',
users : [
{
soket: '1'
},
{
soket: 'interlocutor_id'
}
]
},
{
name: 'fdsjio87f6f7d68s7f6sdfdsf7d',
users : [
{
soket: '1'
},
{
soket: 'interlocutor_id'
}
]
}
];
Answer the question
In order to leave comments, you need to log in
Try Socket.io:
socket.io/docs/rooms-and-namespaces/#
psitsmike.com/2011/10/node-js-and-socket-io-multir...
Ready chat:
tutorialzine.com/2014/03 /nodejs-private-webchat Tutorial
on building a chat with node.js, express, socket.io, mongo, bootstrap:
www.sitepoint.com/build-node-js-powered-chatroom-w...
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question