diff --git a/src/api/topics.js b/src/api/topics.js index 98b87c95b6..cca32a6818 100644 --- a/src/api/topics.js +++ b/src/api/topics.js @@ -75,8 +75,8 @@ topicsAPI.reply = async function (caller, data) { user.updateOnlineUsers(caller.uid); if (caller.uid) { socketHelpers.emitToUids('event:new_post', result, [caller.uid]); - } else if (caller.uid === 0 && caller.sessionID) { - websockets.in('sess_' + caller.sessionID).emit('event:new_post', result); + } else if (caller.uid === 0) { + websockets.in('online_guests').emit('event:new_post', result); } socketHelpers.notifyNew(caller.uid, 'newPost', result); diff --git a/src/socket.io/index.js b/src/socket.io/index.js index 952595f57a..6e6be257ae 100644 --- a/src/socket.io/index.js +++ b/src/socket.io/index.js @@ -198,15 +198,13 @@ async function authorize(socket, callback) { } await cookieParserAsync(request); - const sid = request.signedCookies[nconf.get('sessionKey')]; - const sessionData = await getSessionAsync(sid); + const sessionData = await getSessionAsync(request.signedCookies[nconf.get('sessionKey')]); if (sessionData && sessionData.passport && sessionData.passport.user) { request.session = sessionData; socket.uid = parseInt(sessionData.passport.user, 10); } else { socket.uid = 0; } - socket.sessionID = sid; request.uid = socket.uid; callback(); }