prosody + nbxmpp-3.0.1 + gajim-1.4.0 => ver attribute missing
So, the problem looks like this. Today I updated gajim to the newer version and failed to connect to 1 of the 2 private prosody XMPP servers. The error was (servername) ver attribute missing
.
I did fast grep in nbxmpp, found and changed here:
def _parse_push(self, stanza, ver_support):
query = stanza.getTag('query', namespace=Namespace.ROSTER)
version = None
if ver_support:
version = query.getAttr('ver')
#if version is None:
# raise MalformedStanzaError('ver attribute missing', stanza)
After that my connection went back to life. I tried to figure out the story about this "ver" thing in prosody, and only relevant thing i found was:
module:add_feature("jabber:iq:roster");
local rosterver_stream_feature = st.stanza("ver", {xmlns="urn:xmpp:features:rosterver"});
module:hook("stream-features", function(event)
local origin, features = event.origin, event.features;
if origin.username then
features:add_child(rosterver_stream_feature);
end
end);
Not sure it's relevant however if so, then prosody thinks this is optional. Don't know is it correct or not, but anyway, better if gajim will be able to connect regardless of correctness..