WebSocket system, to connect users and allow them to tchating and handle/share private data. The instanciation can be fill with other handlers
The access to data {ManageableObject} is determined by owner, token, users and visibility
- owner : can do everything
- token : can do everything except delete, change owner, change id
- users : can add users but not delete them or update data
- visibility : if it true, everyone can see id, number of users
Each Class who herite from ManageableObject can customise access to spécifique property or permissions
- ServerSide => check if the user is new or create one
- ClientSide => get complete userData
- ServerSide => emit the event to the user who can see the user who logout
- ClientSide => get the id of the user who logout
- ServerSide => same as logout
- ClientSide => same as logout
- ServerSide => check if lobby exist, if not create one. If lobby exist, check if user can connect.Emit to the user of the lobby
- ClientSide => get the user id and the lobby id
- ServerSide => check if user is present and delete it from the lobby. Emit to the user of the lobby
- ClientSide => get the user id and the lobby id
- ServerSide => create a message in the lobby. Emit event to the user of the lobby
- ClientSide => get messageData
- ServerSide => Emit event to the user of the lobby
- ClientSide => get user id, lobby id and message id
- ServerSide => Emit event to the user of the lobby
- ClientSide => get user id, lobby id and message id
- ServerSide => Emit event to the user of the lobby
- ClientSide => get user id, lobby id and message id
- ServerSide => check access and emit info graduate to the access
- ClientSide => get data
- ServerSide => check access and emit all info graduate to the access
- ClientSide => get all data
- ServerSide => Update data and send to the users
- ClientSide => get the updated data and the id
if ()