2014-12-15 2 views
1

방에 들어가는 동안 항상 그룹 채팅 기록을 수신하고 있습니다. 더 구체적으로 말하자면 그룹에 가입 할 때마다 그 그룹에 보낸 마지막 메시지 하나 (단 하나의 메시지)를받는 것입니다. 방 합류하면서 I는 이것을 documentation suggests으로 당 ..그룹에 가입하는 동안 그룹 채팅 (MUC) 기록을 검색하지 못하게하고 싶습니다. - Android

  • 비활성화 다음 방법을 시도했다 I 초기 존재 이력 변수에 값 'MAXCHARS 용 ='0 '을'통과시켰다. 웹 관리자 페이지에서
  • 그룹 채팅 섹션으로 이동 한 후 그룹 채팅 설정 -> 그룹 채팅 서비스 속성 -> 역사 설정 -> 역사 나는 모든 가능한 방법을 시도 만 가지고 있지만

표시하지 않습니다, 방에 들어가는 동안 여전히 역사 메시지를 받고 있습니다. 가입시에 수신하는 메시지는 이며 지연 연장은입니다. 중요하다면. "그룹이 비동기"

+2

MUC 서비스는 어떤 구현이 실행 중입니까? – legoscia

+0

우리는 Openfire를 XMPP 서버로 사용하고 있습니다. 현재는 openfire와 함께 MUC 플러그인을 설치하지 않았습니다. 그게 문제가 될까요?. 그러나 그룹 채팅 -> 그룹 채팅 설정 -> 크레타 새로운 서비스에서 새 서비스를 추가 할 수 있습니다. 또한 우리는 그 서비스에서 새로운 그룹을 만들 수 있습니다. – Saamzzz

+0

이 질문은 [이 질문에] 유사하게 보입니다 (http://stackoverflow.com/questions/22496868/is-there-any-option-to-disable-group-chat-message-history-on-open-fire-server).), 나는 그것이 중복이라고 생각하지 않지만. Openfire가'maxchars' 속성을 존중하지 않는다는 것은 이상한 일입니다. – legoscia

답변

8

이 시도 ..

MultiUserChat muc = new MultiUserChat(mConnection, room_name); 
    Log.d(TAG, "JOINING => " + room_name); 

    DiscussionHistory history = new DiscussionHistory(); 
    history.setMaxStanzas(0); 

    muc.join(mNickName, null, history,SmackConfiguration.getDefaultPacketReplyTimeout()); 

그리고 받을 경우이 MSG는 다음의 단지 통지처럼 그룹을 조인.이 조건을 그룹 팟 리스너에 넣으면됩니다.

+2

완벽하게 작동합니다! 왜 OP가이 대답을 받아들이지 않는지 궁금합니다./ –

+0

하지만 방과 그룹에 다시 가입하거나 다시 참여하는 동안 내역을 반환하는 이유는 무엇입니까? 우리는 무능하게 할 수 없는가? – RobinHood

+0

예, 우리는 장치 측면뿐만 아니라 장치 측면에서 코드를 사용하지 않고 위의 두 가지 서버의 기록을 사용하지 않도록 설정할 수 있습니다. – Lokesh