Quantcast
Channel: Ignite Realtime : Unanswered Discussions - Support
Viewing all articles
Browse latest Browse all 4979

MultiUserChatManager.create() with submit form is not joinable

$
0
0

Hello,

I am using Smack 4.1.1 as Gradle dependency. I have successfully established connection with mine local OpenFire server.

But I have an issue while creating room from Android client.

          

 final MultiUserChat multiUserChat = userChatManager.getMultiUserChat(roomId);                    try {                        multiUserChat.create(connection.getUser());                        LOG.debug("room created");                    } catch (XMPPException.XMPPErrorException | SmackException e) {                        LOG.error("create room error:{}", e);                    }                    try{                        multiUserChat.sendConfigurationForm(new Form(DataForm.Type.submit));                    } catch (SmackException.NoResponseException | XMPPException.XMPPErrorException | SmackException.NotConnectedException e) {                       LOG.error("sending room configurations error:{}", e);                    }

 

The most great thing is that I can see that room was created in OpenFire admin panel and get room information from another client.

  try {                        MultiUserChatManager userChatManager = MultiUserChatManager.getInstanceFor(connection);                        RoomInfo info = userChatManager.getRoomInfo(roomId);                        LOG.debug("room has {} occupants", info.getOccupantsCount());                        joinToExistingRoom(roomId);                    } catch (XMPPException.XMPPErrorException e) {                        LOG.error("join room error:{}", e);                        final XMPPError.Condition condition = e.getXMPPError().getCondition();                        if (condition == XMPPError.Condition.item_not_found) {                            LOG.error("room does not exist error:{}", e);                            createRoom(roomId);                    }    }

 

But while trying to join room from second client I receive XMPPError: recipient-unavailable - wait.

Snippet of mine joinRoom method:

 final MultiUserChat multiUserChat = userChatManager.getMultiUserChat(roomId);                    try {                        multiUserChat.join(connection.getUser());                        LOG.debug("joined to room:{}", roomId);                    } catch (SmackException.NoResponseException                            | XMPPException.XMPPErrorException                            | SmackException.NotConnectedException e) {                        LOG.error("error joining room {}", e);                    }

 

So I am catching  error joining room org.jivesoftware.smack.XMPPException$XMPPErrorException: XMPPError: recipient-unavailable - wait.

 

So the question is what can be wrong?

I also tried creating submitForm from createAnswerForm() method. But the result is the same.

Maybe it is a simple problem, but now I do not know how to solve this issue.

 

Help will be appreciated a lot.

 

Thanks in advance. 


Viewing all articles
Browse latest Browse all 4979

Trending Articles