just a convenient ws structure based on sio