Javascript 检查用户是否在线使用Firebase制作的聊天应用程序

Javascript 检查用户是否在线使用Firebase制作的聊天应用程序,javascript,php,firebase,firebase-realtime-database,codeigniter-3,Javascript,Php,Firebase,Firebase Realtime Database,Codeigniter 3,使用Firebase实时数据库创建聊天应用程序 users类如下所示(Firebase中的默认值为JSON) 我想将状态从联机:“1”更改为联机:“0”当用户的internet突然变得不可用或浏览器自身崩溃,或无法使用CodeIgniter的sess\u destroy()方法处理的情况时 服务器是使用CodeIgniter在PHP中构建的 我建议使用Firebase内置的onDisconnect()hook。它使您能够预定义在客户端断开连接后立即执行的操作 请参阅Firebase文档: 链接

使用Firebase实时数据库创建聊天应用程序

users类如下所示(Firebase中的默认值为JSON)

我想将状态从
联机:“1”
更改为
联机:“0”
当用户的internet突然变得不可用或浏览器自身崩溃,或无法使用CodeIgniter的
sess\u destroy()
方法处理的情况时


服务器是使用CodeIgniter在PHP中构建的

我建议使用Firebase内置的
onDisconnect()
hook。它使您能够预定义在客户端断开连接后立即执行的操作

请参阅Firebase文档:


链接文档以web客户端为目标,但也为和客户端提供了等效功能。

我将为用户实施在线-离线功能,我没有将用户信息存储在firebase实时数据库中,而是使用授权(在firebase上使用电子邮件和密码注册用户);因此是否也需要将用户信息存储在数据库树中以实现此功能???@SaimAbdullah是的,您必须使用cron ping用户以检查其状态
"users" : {
     "-K2ib62mjHh34CAUfig" : {
      "lastvisibleat" : "2016-09-30 07:10:40",
      "name" : "Peter Parker",
      "online" : "1"
    },
    "--K2ib62mjHh34CAUh18" : {
      "lastvisibleat" : "2016-09-30 07:26:17",
      "name" : "Riddhi Dixit",
      "online" : "1"
    }
}