2016-05-13 23 views
0

雖然創建我發現了一個異常組: 「SmackException $ NoResponseException:沒有答覆內收到響應」

這是組創建方法的回覆時間設置爲50秒。 我可以做登錄,一對一聊天。 但試圖創建一個組獲得muc.create(nick)上的以下例外;

public void createGroup() { 

    String roomId = "Group_test003" + "@iscoveri.com"; 
    String nick = "Grouptest"; 

    try { 

manager = MultiUserChatManager.getInstanceFor(xmppCON); 

     MultiUserChat muc = manager.getMultiUserChat(roomId); 

     muc.create(nick); 

     Form form = muc.getConfigurationForm(); 

     Form submitForm = form.createAnswerForm(); 

     List<FormField> fields = form.getFields(); 
     for (int i = 0; i < fields.size(); i++) { 
      FormField field = (FormField) fields.get(i); 
      if (!FormField.Type.hidden.equals(field.getType()) && field.getVariable() != null) { 

       submitForm.setDefaultAnswer(field.getVariable()); 
      } 
     } 

     List owners = new ArrayList(); 
     owners.add("8017037677" + "@iscoveri.com"); 
     submitForm.setAnswer("muc#roomconfig_roomowners", owners); 

     muc.sendConfigurationForm(submitForm); 

    } catch (XMPPException e) { 
     e.printStackTrace(); 
    } catch (SmackException.NoResponseException e) { 
     e.printStackTrace(); 
    } catch (SmackException.NotConnectedException e) { 
     e.printStackTrace(); 
    } catch (SmackException e) { 
     e.printStackTrace(); 
    } 

} 

回答

0

MultiUserChat直到用戶加入它才創建。

所以sendConfiguration後,你需要加入睦:

muc.join("[email protected]"); 

編輯:順便說一下,一定要具備有效的服務子域名註冊到服務器。

+0

如果'muc.create(nick);'超時,那甚至不可能。 –

+0

@Haroldo_OK設置較高的超時時間,默認爲3秒,可以嘗試15 – MrPk

相關問題