2013-04-18 2 views
2

Я разрабатываю приложение чата с помощью ASMACK. Я могу подключать и отправлять сообщения для частного чата. Однако при попытке создать чат-комнату я получаю сообщение об ошибке:Создание чата в Android Дает ошибку: «item-not-found (404)

 item-not-found(404) 

Это код, я использую:

  setConnection(connection); 
      if(connection != null) 
      { 
       try 
     { 
       // SmackAndroid.init(this); 
       MultiUserChat muc=new MultiUserChat(connection,"[email protected]"); 
       muc.create("greatandroid"); 
       Log.d("Chat Room Created","Successfully Created Chat Room"); 
       Form form = muc.getConfigurationForm(); 
       Form submitForm = form.createAnswerForm(); 
       for (Iterator fields = form.getFields();fields.hasNext();){ 
       FormField field = (FormField) fields.next(); 
        if(!FormField.TYPE_HIDDEN.equals(field.getType()) && field.getVariable()!= null){ 
         submitForm.setDefaultAnswer(field.getVariable()); 
         submitForm.setAnswer("muc#roomconfig_publicroom", true); 
         muc.sendConfigurationForm(submitForm); 
         Log.d("Config Form Created","Successfully Configured Chat Form"); 
        } 
       }  

       } 
       catch(Exception ex) 
       {Log.d("Error Creating Chat Room",ex.getMessage().toString());}} 

Как я решить эту проблему

ответ

0

Используйте этот код

// Get the the room's configuration form 
      Form form = muc.getConfigurationForm(); 
      // Create a new form to submit 
      // based on the original form 
      Form submitForm = form.createAnswerForm(); 
      // Add default answers to the form 
      // to submit 
      for (Iterator fields = form.getFields(); fields.hasNext();) { 
       FormField field = (FormField) fields.next(); 
       if (!FormField.TYPE_HIDDEN.equals(field.getType()) 
         && field.getVariable() != null) { 
        // Sets the default value as 
        // the answer 
        // 

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


      submitForm.setAnswer("muc#roomconfig_roomdesc", GroupName); 
      submitForm.setAnswer("muc#roomconfig_publicroom", false); // 
      submitForm.setAnswer("muc#roomconfig_persistentroom", true); 
      // 
      submitForm.setAnswer("muc#roomconfig_membersonly", false); 
      // 
      submitForm.setAnswer("muc#roomconfig_allowinvites", true); 
      // JID 
      // submitForm.setAnswer("muc#roomconfig_whois", "anyone"); 
      // 
      submitForm.setAnswer("muc#roomconfig_enablelogging", true); 
      // 
      // submitForm.setAnswer("x-muc#roomconfig_reservednick", true); 
      // 
      // submitForm.setAnswer("x-muc#roomconfig_canchangenick", 
      // false); 
      // 
      // submitForm.setAnswer("x-muc#roomconfig_registration", false); 
      // Send the completed form (with default values) to the 
      // server to configure the room 
      muc.sendConfigurationForm(submitForm); 
Смежные вопросы