2014-01-16 3 views
0

Quickblox 복수 사용자가 ANDROID로 온라인 상태인지 여부를 판별 할 수있는 방법이 있습니까? QBChatService가 연결을 랩핑합니다.이 작업을 수행하는 방법을 잘 모르겠습니다. 또한 로스터 사용을 고려해 봤지만 명단을 어디에서 얻을 수 있는지 모르겠습니다. 비디오 채팅을 사용하고 있습니다. Quickblox 모듈QuickBlox : 화상 채팅 모듈의 온라인 사용자 얻기

추가하는 방법 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()); 
     } 
    }); 

하는 것은주의해야합니다. VideoChat을 시작하면 QBChatService의 인스턴스가 인스턴스화됩니다.

presenceChanged() 메소드에서 사용 가능 또는 사용 불가능한 것을 확인할 수 있습니다. 사용/"nonavailable"존재 "가능"수신 할 수 있습니다 :

QBChatService.getInstance().addNotMessageListener(packetListener); 

을 그리고 당신이 사용하는 친구를 추가 할 수 있습니다

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

하는 사용자에게 요청을 보내고 명단에 자신의 데이터를 추가 할 것이다.

사용 :

QbChatService.getInstance().sendCustomPresence(Presence presence) 

당신은 원시 존재를 보낼 수 있습니다. 예를 들어, 친구 추가 요청을 확인하려면 - NotMessageListener를 사용할 수 있습니다.

+0

너의 도움에 대한 고맙습니다.이 질문을 통해 단일 사용자의 가용성을 얻을 수는 있지만 여러 사용자의 온라인 상태를 가져올 수 없습니다. 추적하려면 로스터에 여러 항목을 추가하십시오. –

관련 문제