2014-01-16 100 views
0

有什么方法可以通过ANDROID找出Quickblox多用户是否在线? QBChatService包装的连接,我不知道如何实现这一点,我也想过使用名册,但我不知道我在哪里可以得到的名册,请你指教。我正在使用视频聊天模块quickbloxQuickBlox:在视频聊天中获取在线用户模块

如何添加QBChatService.getInstance()。addNotMessageListener(packetListener) QBChatService.getInstance()。sendCustomPresence(存在)

视频聊天模块

使用名册和其他功能QB片段

回答

2

你可以找到例子: enter link description here

你在视频聊天记录后,你可以利用名册:

QBChatRoster roster = QbChatService.getInstance().registerRoster(new QBChatRoster.QBRosterListener() { 
     @Override 
     public void entriesDeleted(Collection<String> users) { 

     } 

     @Override 
     public void entriesAdded(Collection<String> users) { 
      //List<Integer> usersId = qbChatRoster.getUsersId(); 
      for (String s : users) { 
       Log.i(TAG, "roster added="+s); 
      } 
     } 

     @Override 
     public void entriesUpdated(Collection<String> users) { 
      for (String s : users) { 
       Log.i(TAG, "roster updated="+s); 
      } 
     } 

     @Override 
     public void presenceChanged(Presence presence) { 
      Log.i(TAG, "presence changed="+presence.getFrom() + " "+presence.getType()); 
     } 
    }); 

要小心。 QBChatService的实例将在您启动VideoChat时实例化。

在presenceChanged()方法中,您可以检查一个可用的或不可用的。 你可以听使用“可用” /“nonavailable”存在:

QBChatService.getInstance().addNotMessageListener(packetListener); 

,并且可以使用添加好友:

qbChatRoster.createEntry(int userId, String name, String[] groups) 

将请求发送给用户,并添加自己的数据,名册。

使用:

QbChatService.getInstance().sendCustomPresence(Presence presence) 

您可以发送原始的存在。例如确认将您添加为朋友的请求 - 您可以在NotMessageListener中获得该请求。

+0

thanx为您的帮助还有一个问题,我能够通过这个获得单个用户的可用性,但无法获得多个用户的在线状态。如何在名单中添加多个条目以跟踪 –