Jusqu'à présent, je ne connais pas la raison pour laquelle ondisconnect Le gestionnaire d'événements ne fonctionne pas lorsque l'utilisateur se déconnecte en raison de la coupe d'alimentation ou de la désactivation de la connexion nette. Mais j'ai trouvé une autre façon de l'identifier. .Cosé "côté client.
application.allowDebug = true;
application.onAppStart = function(){
application.users_so = SharedObject.get("SO");
}
application.onConnect = function(client,Obj){
client.name = Obj.name;
application.acceptConnection(client);
application.users_so.setProperty(client.name,Obj);
client.interval = setInterval(checkLive, 15000, client);
trace("one user is now connected.");
}
function checkLive(client){
var stats = client.getStats();
trace('Measured timeout: ' + stats['ping_rtt']);
if(stats){
if(stats['ping-rtt']>10){
trace('client '+ client.name +'is still connected.');
application.disconnect(client);
}
}
}
application.onDisconnect = function(client){
clearInterval(client.interval);
trace(" user lost connection.");
}