Firebase -统计在线用户
Firebase - Count online users
我尝试使用presence
使其在元素中显示连接的总用户。我真不知道如何使它工作。
我还尝试了以下操作:
var dataUlist = new Firebase('https://<url>.firebaseio.com/.info/connected');
dataUlist.on('value', function(snap) {
console.log(snap);
});
我想看看能不能找到有用的东西,但我不知道这些数据是怎么工作的。
有没有办法帮我做我想做的事?获取连接用户的总数,然后在控制台或元素中回显它?
.info/connected
将只返回当前客户端是否连接的信息。为了维持一个状态计数,您需要通过存储每个用户的状态信息并使用setOnDisconnect()
来创建一个计数器。例如:
var listRef = new Firebase("https://<url>.firebaseio.com/presence/");
var userRef = listRef.push();
// Add ourselves to presence list when online.
var presenceRef = new Firebase("https://<url>.firebaseio.com/.info/connected");
presenceRef.on("value", function(snap) {
if (snap.val()) {
// Remove ourselves when we disconnect.
userRef.onDisconnect().remove();
userRef.set(true);
}
});
// Number of online users is the number of objects in the presence list.
listRef.on("value", function(snap) {
console.log("# of online users = " + snap.numChildren());
});
这是Anant为Android格式化的代码
public void getDbCount() {
Firebase listRef = new Firebase("https://<your-firebase-database>.firebaseio.com/presence/");
final Firebase userRef = listRef.push();
// Add ourselves to presence list when online.
Firebase presenceRef = new Firebase("https://<your-firebase-database>.firebaseio.com/.info/connected");
ValueEventListener myPresence = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot snapshot) {
// Remove ourselves when we disconnect.
userRef.onDisconnect().removeValue();
userRef.setValue(true);
}
@Override
public void onCancelled(FirebaseError firebaseError) {
Log.e("DBCount", "The read failed: " + firebaseError.getMessage());
}
};
presenceRef.addValueEventListener(myPresence);
// Number of online users is the number of objects in the presence list.
ValueEventListener myList = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot snapshot) {
// Remove ourselves when we disconnect.
Log.i("DBCount", "# of online users = " + String.valueOf(snapshot.getChildrenCount()));
}
@Override
public void onCancelled(FirebaseError firebaseError) {
Log.e("DBCount", "The read failed: " + firebaseError.getMessage());
}
};
listRef.addValueEventListener(myList);
}
相关文章:
- 如果在线检查期间发生电源故障,我们如何更新用户再次登录门户时的剩余时间
- 从Javascript运行PHP文件来检查在线用户:表示未登录的用户是
- 如何在我的网站上获得用户在线状态(实时)
- 在xmpp多聊天中,管理员角色只授予创建房间的在线用户成员资格
- 检查用户是否在线
- 如果服务器崩溃,如何跟踪用户的“在线”状态
- 在线投票应用程序.如何避免同一用户的重复投票
- 在MeteorJS中直接向在线用户发送消息
- SignalR用于跟踪在线用户和聊天
- 高级用户/员工在线活动跟踪
- 无法使用本地主机上的node.js向不在线的用户发送消息
- XEP-0133:管理员请求获取所有在线用户列表
- node . js,套接字.Io:检查用户是否在线或离线
- 套接字.IO是跟踪用户是否在线的最好方法
- Twitch流状态显示在线.当用户离线时
- Html5缓存,每次用户在线时更新
- Firebase -统计在线用户
- 关于制作'如果用户在线'系统
- 使用QuickBlox JS SDK列出房间在线用户的数量
- 如何使用Chatter应用程序MVC显示用户在线