Hi,
Openfire 3.10.3
smack 4.1.6
I create a group chat room and I can enter the room and invite other to join the room without any problems.
The problems seems to be leaving the room and join it later and I receive NoResponseException.
However, there is an item-not-found error. However, the room geniezip@xmpp1.call-genie.com does exist on openfire and that is the room I am trying to join.
03-16 14:32:18.415 10689-10791/com.sunsystem.CallGenie D/SMACK: SENT (0): <iq to='geniezip@xmpp1.call-genie.com' id='922vp-24' type='get'><query xmlns='http://jabber.org/protocol/disco#info'></query></iq>
03-16 14:32:18.419 10689-10792/com.sunsystem.CallGenie D/SMACK: RECV (0): <iq type="error" id="922vp-24" from="geniezip@xmpp1.call-genie.com" to="97.steve@xmpp1.call-genie.com/mobile"><query xmlns="http://jabber.org/protocol/disco#info"/><error code="404" type="cancel"><item-not-found xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/></error></iq>
03-16 14:32:21.290 10689-10791/com.sunsystem.CallGenie D/SMACK: SENT (0): <presence to='geniezip@xmpp1.call-genie.com/steve' id='922vp-26'><x xmlns='http://jabber.org/protocol/muc'></x><c xmlns='http://jabber.org/protocol/caps' hash='sha-1' node='http://www.igniterealtime.org/projects/smack' ver='os2Kusj3WEOivn5n4iFr/ZEO8ls='/></presence>
This is the exception:
03-16 14:32:26.290 10689-10689/com.sunsystem.CallGenie I/SInstant: NoResponseException: No response received within reply timeout. Timeout was 5000ms (~5s). Used filter: AndFilter: (FromMatchesFilter (full): geniezip@xmpp1.call-genie.com/steve, StanzaTypeFilter: org.jivesoftware.smack.packet.Presence).
The code I am using is this
public boolean joinRoom() {
/* Get the MultiUserChatManager */
log.log(Level.INFO, "Join room: " + SInstant.this.getRoomJid() + " nickName: " + SInstant.this.getNickName());
boolean hasJoined = false;
final MultiUserChatManager multiUserChatManager = MultiUserChatManager.getInstanceFor(mClientConnection);
final MultiUserChat multiUserChat = multiUserChatManager.getMultiUserChat(SInstant.this.getRoomJid()); if(!multiUserChat.isJoined()) {
try {
multiUserChat.join(SInstant.this.getNickName());
log.log(Level.INFO, " " + SInstant.this.getNickName() + " has successfully joined " + SInstant.this.getRoomJid());
hasJoined = true;
}
catch(NoResponseException ex) {
log.log(Level.INFO, "NoResponseException: " + ex.getMessage());
}
catch(XMPPErrorException ex) {
log.log(Level.INFO, "XMPPErrorException: " + ex.getMessage());
}
catch(NotConnectedException ex) {
log.log(Level.INFO, "NotConnectedException: " + ex.getMessage());
}
}
else {
log.log(Level.WARNING, " " + SInstant.this.getNickName() + " has already joined this " + SInstant.this.getRoomJid());
}
return hasJoined;
}
Many thanks for any suggestions