gajim is not seen as muc compliant when there is a nickname conflict
If I connect twice in a room with the same nickname, most muc implementation will send a error for nickname conflict. So gajim ask me to choose another nickname.
Once I have choosed this, the presence packet sent is lacking a x element with http://jabber.org/protocol/muc namespace.
\<presence to="jabberfr@chat.jabberfr.org/Misc" id="40">
\<x xmlns="vcard-temp:x:update">
\<photo>5ab17f67d5a57e280835448cd854b84eb4a231bd\</photo>
\</x>
\<c xmlns="http://jabber.org/protocol/caps" node="http://gajim.org/caps" ext="ftrans xhtml" ver="0.11.0.1" />
\</presence>
One side effect of the missing element is that muconf is sending useless message, as if we were a gc 1.0 client ( like plain message saying "foo has left" ).
After looking at the code, it seems that first presence packet is sent by join_gc, in src/common/connection.py, but the secund, with the new nick, is sent by "change_gc_nick", in src/common/connection.py, and change_gc_nick do not add the x element.
Here is a patch, I am not sure however that this is logical. I think using change_gc_nick for new presence is some kind of abuse of the function.