2012-09-05 3 views
2

XMPP를 사용하여 채팅 목록의 특정 친구를 차단하고 싶습니다. 이렇게하기위한 코드 :스맥 라이브러리 및 오픈 소방 서버를 사용하여 채팅 목록의 사용자 차단에 문제가 발생했습니다.

public void blockUser(String userName) 
{ 
    String listName = "newList"; 
    List<PrivacyItem> privacyItems = new Vector<PrivacyItem>(); 
    PrivacyItem item=new PrivacyItem(PrivacyItem.Type.jid.toString(), false, 1); 
    item.setValue(userName);  
    privacyItems.add(item); 

    privacyManager = PrivacyListManager.getInstanceFor(mXMPPConnection); 

    try 
    { 
    privacyManager.createPrivacyList(listName,privacyItems); 
    } 
    catch(Exception e) 
    { 
    Log.e("PRIVACY_ERROR: "," "+e.toString()); 
    e.printStackTrace(); 
    } 
} 

코드가 정상적으로 작동합니다. 예외는 없지만 사용자를 차단할 수는 없습니다. 누구든지 나를 도울 수 있습니까? 내가 가진

헤로인 로그 :

<main><iq type="set" id="373-3717" to="[email protected]/smack"><query xmlns="jabber:iq:privacy"><list name="newList"/></query></iq> 
09-04 19:00:38.368: D/SMACK(3895): 07:00:38 PM SENT (1149259528): <iq id="373-3717" type="result"></iq> 
09-04 19:00:38.658: D/SMACK(3895): 07:00:38 PM RCV (1149259528): <iq type="result" id="LvJcf-9" to="[email protected]/smack"><query xmlns="jabber:iq:privacy"><list name="newList"><item action="deny" order="1" type="jid" value="[email protected]"/></list></query></iq></main> 
+0

코드 및 XMPP 스탠자가 좋아 보인다. 서버가 개인 정보 보호 목록을 시행했는지 확인 했습니까? 나에게 서버 문제처럼 보입니다. – Flow

+0

오픈 파이어 서버를 사용 중입니다. 내가 원하는 결과를 얻도록 서버에서 어떤 변경을해야합니까? – kadhirvel

+0

안녕하세요 여러분, 서버 측에서 변경이 필요한 경우 동일한 문제에 직면했습니다. 변경 사항이 있으면 알려 주시기 바랍니다. –

답변

1

당신은 활성리스트로 생성 된 개인 정보 보호 목록을 설정해야합니다.

+0

대답을 자세히 설명해주세요 ... –

+0

[XEP-0016] (http://xmpp.org/extensions/xep-0016.html)을 구현하십시오. – Stan