Using Socket and node express i want to send a message to all users who has role_id 1 but whenever i broadcast message all users receive it.
JavaScript
x
15
15
1
// let suppose this is message
2
let Message = 'hello all users'
3
//socket code
4
socket.emit('message', Message);
5
6
//but i want to send message to below users.
7
// I am not a good programmer and i am new to socket.
8
9
10
11
//during user login time i return this
12
if (login == true) {
13
user.status = 'Online';
14
}
15
status has nothing with message. its just updating user status
Advertisement
Answer
JavaScript
1
12
12
1
//first of all join user to room if has role id 1
2
//during user login time i return this
3
let role_room_id = 1;
4
if (login == true) {
5
user.status = 'Online';
6
socket.join(role_room_id);
7
}
8
9
///then emit message in that room
10
socket.broadcast.to(role_room_id).emit('message', Message);
11
12