added room disconnect handling