Создание чата в Android выдает ошибку:"item-not-found(404)
Я разрабатываю приложение для чата с использованием ASMACK. Я могу подключаться и отправлять сообщения для приватного чата. Однако, при попытке создать чат, я получаю сообщение об ошибке:
item-not-found(404)
Это код, который я использую:
setConnection(connection);
if(connection != null)
{
try
{
// SmackAndroid.init(this);
MultiUserChat muc=new MultiUserChat(connection,"chat1@groupchat.google.com");
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());}}
Как я могу решить это?
1 ответ
Используйте этот код
// 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);