Fixed
Details
Details
Assignee
Florian Schmaus
Florian SchmausReporter
Florian Schmaus
Florian SchmausLabels
Expected Effort
Medium
Components
Fix versions
Affects versions
Priority
Created April 16, 2014 at 8:12 AM
Updated August 17, 2014 at 1:11 PM
Resolved April 17, 2014 at 10:14 AM
Some MUC service implementations (e.g. Prosody) behave different as defined in XEP-45 when a client tries to enter a non-existent room: They don't created a locked room and return a 201 status code, but instead behave like the room already existed.
Smack assumes that if a non-existent room is created, by calling MutliUserChat.create(String), a presence with the 201 status code is returned. However this status code is not returned by certain implementations in certain situations, causing Smack to assume the room already existed and aborts the creation procedure by leaving the room.
In order to ease the situation for Smack users, MultiUserChat should be extended with a method to create or join a room, as this is the use-case of the majority of users.
See also:
https://code.google.com/p/lxmppd/issues/detail?id=328