add disconnection reason + abstract event on NIO server