powered by Jive Software

Muc#roomconfig_persistentroom


#1

Hi
I create a chat room with following code:
submitForm.setAnswer(“muc#roomconfig_persistentroom”, true);

but on server side,the value of muc#roomconfig_persistentroom was get as “true”, not “1”, so this chat room can’t be persisted to db.
field = completedForm.getField(“muc#roomconfig_persistentroom”);
if (field != null) {
final String value = field.getFirstValue();
booleanValue = ((value != null ? value : “1”));
boolean isPersistent = (“1”.equals(booleanValue));
// Delete the room from the DB if it’s no longer persistent
if (room.isPersistent() && !isPersistent) {
MUCPersistenceManager.deleteFromDB(room);
}
room.setPersistent(isPersistent);
}

how can i resolve this issue?


#2

any suggestion?

I use openfire 4.2.3, smack 4.3.1

the parameter “muc#roomconfig_persistentroom” of IQ passed as true, but openfire use “1” to judge whether this muc should be persisted.


#3

Looks like a bug. If you can submit a PR, that will make things easier,

Greg


#4

Actually, it’s already been fixed - https://issues.igniterealtime.org/browse/OF-1513 - so the current nightly release should be OK for you,

Greg


#5

ok, seems it will be fixed in 4.3.0, when will this version release?