-
Notifications
You must be signed in to change notification settings - Fork 152
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Kick matrix users in bridged rooms if they cannot join the mapped channel for any reason #448
Comments
Notably this is going to affect channels which have flood protection enabled as bouncing the bridge will trigger it. Given this issue is highly coupled to Freenode, it looks like ircd-seven has a unique numeric for this which isn't documented on https://www.alien.net.au/irc/irc2numerics.html :
For cases like this, we should actually try again later rather than giving up. |
Forking off that issue as it really needs to be addressed first. |
Does this means the the matrix bridge with freenode is mostly useless if you need to use channels that require registration? ... like openstack or ansible ones? |
So far it has been useless most of the time for me. I am kicked out with this error constantly. |
Apparently we didn't kick some users when they got a |
Just wanna mention, this error ( |
We currently already do this based on a list of IRC error codes like
err_needreggednick
. This can miss certain error codes and notably misses connection issues like reaching i:line limits.It will be better to make the code failsafe (err on the side of kicking) than failunsafe. This can probably be implemented using a timer along with checking for a join response of some kind. If the timer expires, we give up trying to join and kick the user. This means we will now err on the side of kicking erroneously (due to say join throttling or transient network problems) which will make the UX matrix side slightly worse.
This has been formally requested by Freenode and not negotiable.
The text was updated successfully, but these errors were encountered: