removed the withRoom function : promises allow for a cleaner code