Set up "POLICE" in a separate file. It's loaded once, then the records are shared whatever module needs it.
On the bouncer side, if at connection the frisk returns true, it does nothing (no relay, peanuts) and on message (if the user has been banned after joining), it doesn't process it. websockets are not closed so that the client doesn't try to reconnect.
Set up "POLICE" in a separate file. It's loaded once, then the records are shared whatever module needs it. On the bouncer side, if at connection the frisk returns true, it does nothing (no relay, peanuts) and on message (if the user has been banned after joining), it doesn't process it. websockets are not closed so that the client doesn't try to reconnect.