I'm running prosody-trunk build 576 with modules rev 1e9a06caa866 on CentOS and on client side Conversations 1.6.7. I'm getting kicked out of conferences after a time and I don't know why. I've posted this issue in the Conversations bug tracker https://github.com/siacs/Conversations/issues/1134 and the developer told me, this is a prosody issue and it is resolved. But I'm still affected of that issue.
The prosody debug-log file shows:
firstname.lastname@example.org/User kicked from email@example.com for sending an error message
Can anybody help me?
Could you provide some detailed Prosody or XML logs?
I've just mailed the debug-logs to your developer address.
I think this might be related to how session.send() behaves when a stanza is dropped by a filter. The event could then fall through to the part that handles unhandled stanzas which sends an error reply.
My theory on this is that the CSI modules attempt to drop things that are sent, which made session.send() return non-nil, which in turn caused another event to not be considered "handled", and it falls back to returning an error.
This has been partly addressed in 0.10/trunk and by changes to some community modules.
The one major thing left is mod_smacks (#559), which attempts to bypass this issue by returning an empty string. Fixing it would make it no longer compatible with 0.9.
You mean, just disabling mod_csi could solve that? I've looked into my prosody config, currently I've no csi depending modules (mod_filter_chatstates or mod_throttle_presence) enabled, only mod_csi. As I understand the source code, mod_csi only receives if the client is active or inactive and does nothing else. In my opinion this could not be the problem.
Perhaps it could be caused by mod_smacks as you already said. I know that trunk is in beta status yet, but what about serving different mod_smacks versions for 0.9 and 0.10/trunk as it is already made for 0.8 and later? Sooner or later 0.10 will replace 0.9.