socket.io'nun yeniden bağlantı kurma ve her şey için yerleşik bir özelliği olduğunu biliyorum, ancak bunun çalıştığını düşünmüyorum - başkalarından da gördüğüm gibi, onlar için de çalışmıyor.node.js + soket.IO - soket tekrar takılmıyor mu?
Bir kullanıcı bilgisayarını uyku moduna geçirirse, bağlantıyı keser ve açtıklarında tekrar bağlanmadıkları için, sayfanın yenilenmesine kadar herhangi bir bildirim veya hiçbir şey yapmazlar. Belki de doğru şekilde yapmadığım bir şey var mı?
var io = require('socket.io').listen(8080);
var users = {};
////////////////USER CONNECTED/////
console.log("Sever is now running");
io.sockets.on('connection', function (socket) {
//Tell the client that they are connected
socket.emit('connected');
//Once the users session is recieved
socket.on('session', function (session) {
//Add users to users variable
users[socket.id] = {userID:session, socketID:socket};
//When user disconnects
socket.on('disconnect', function() {
//socket.socket.connect();
var count= 0;
for(var key in users){
if(users[key].userID==session)++count;
if(count== 2) break;
}
if(count== 1){
socket.broadcast.emit('disconnect', { data : session});
}
//Remove users session id from users variable
delete users[socket.id];
});
socket.on('error', function (err) {
//socket.socket.connect();
});
socket.emit("connection")
Ayrıca socket.socket.connect();
çalışmıyor, bir hatayla geri dönüyor ve soket sunucusunu "bağlantı yok" hatasıyla kapatıyor.