2014-01-13 1 views
0

그룹 채팅이 가능한 웹 채팅 응용 프로그램이 있습니다. 이제는 다른 사용자를 내 방에 초대 할 수 있습니다. 초대장을들을 수는 있지만 초대를 거절 할 수는 있지만 사용자가 내 초대장을 거부하면 내 onDecline 메소드가 실행되지 않습니다.Strophe MUC 초대 거부 처리기가 실행되지 않았습니다.

connection.addHandler(onDecline, Strophe.NS.MUC_USER); 

//(Strophe.NS.MUC_USER = http://jabber.org/protocol/muc#user) 

사용자 하락 때 다음과 같은 XML을 얻을 :

<body xmlns="http://jabber.org/protocol/httpbind"> 
    <message xmlns="jabber:client" from="[email protected]" to="[email protected]"> 
     <x xmlns="http://jabber.org/protocol/muc#user"> 
     <decline from="[email protected]"> 
      <reason>Busy!</reason> 
     </decline> 
     </x> 
    </message> 
</body> 

답변

1

귀하의 메시지 핸들러가 차단 될 수 있습니다 여기에 내가 핸들러를 추가 할 부분입니다. 메시지 처리기에 유형 (onMessage, null, 'message', 'chat')에 대해 "groupchat"또는 "chat"이 있는지 확인하십시오. 또는 메시지 처리기를 통해 처리 할 수도 있습니다.

+0

본 메시지는 유형이 없으므로 도움이 될 것 같지 않습니다. 이것은 채팅 메시지가 아니며 이미 채팅 및 그룹 유형 핸들러가 모두 있습니다. –

+0

죄송합니다. 매우 명확하지 않다고 생각합니다. 따라서 사용자가 초대장을 거부하면 onDecline 메서드가 트리거되어야합니다 (위에서 XML을 가져온 경우). –

+1

메시지 처리기에 유형이 포함되어 있습니까? 그렇지 않으면 쇠퇴를 가로막습니다. 로깅을 사용하여 메시지 처리기로 전달되지 않는지 확인하십시오. –