added disconnect reason enum to disconnect method args