2016-08-27 4 views
-1

Я пытаюсь создать группу с помощью Смак Апи
Я использую следующий код
Он падает на muc#roomconfig_roomowners теге
Если я удалить эту строку, он отлично работает, группа создает
Но ни одна группа присваивается текущему пользователю, никто не является владельцемСмак Api Group не работает

public void createGroup() { 
     MultiUserChat chatRoom = MultiUserChatManager.getInstanceFor(mConnection).getMultiUserChat("[email protected]" + MYSITE); 
     try { 
      chatRoom.create("room719"); 
      Form form = chatRoom.getConfigurationForm().createAnswerForm(); 
      form.setAnswer("muc#roomconfig_publicroom", true); 
      form.setAnswer("muc#roomconfig_roomname", "room719"); 
//   List owners = new ArrayList(); 
//   owners.add("[email protected]"+MYSITE); 
      form.setAnswer("muc#roomconfig_roomowners", Arrays.asList("[email protected]"+MYSITE)); 
      form.setAnswer("muc#roomconfig_persistentroom", true); 
      chatRoom.sendConfigurationForm(form); 
     } catch (XMPPException.XMPPErrorException e) { 
      e.printStackTrace(); 
     } catch (SmackException e) { 
      e.printStackTrace(); 
     } catch (IllegalStateException e) { 
      e.printStackTrace(); 
     } 
    } 
+0

, который когда-либо создавал группу, это лицо уже является владельцем по умолчанию. Нет необходимости делать что-либо лишнее. – Saveen

+0

смотрите здесь http://stackoverflow.com/questions/38988799/how-to-create-group-chat-and-add-user-using-smack-4-1-in-android – Saveen

+0

@saveen я попробовал с функцией get groups от пользователя, она ничего не показывает, показывает пустой массив – architjn

ответ

0

Этот код работает на меня, вы можете попробовать это?

if(!chatRoom.isJoined()){ 
     chatRoom.createOrJoin("your nickname"); 
     List<String> owners = new ArrayList<String>(); 
     owners.add("[email protected]"+MYSITE); 
     Form form = chatRoom.getConfigurationForm().createAnswerForm(); 
     form.setAnswer("muc#roomconfig_roomname", "your roomname"); 
     form.setAnswer("muc#roomconfig_roomowners", owners); 
     form.setAnswer("muc#roomconfig_persistentroom", true); 
     form.setAnswer("muc#roomconfig_publicroom", true); 
     chatRoom.sendConfigurationForm(form); 
    }