handleLive method

void handleLive(
  1. NERoomLiveState status,
  2. NERoomLiveRequest live
)

Implementation

void handleLive(NERoomLiveState status, NERoomLiveRequest live) async {
  if (status == NERoomLiveState.init) {
    final result = await liveStreamController.startLive(live);
    if (!mounted) return;
    if (result.isSuccess()) {
      ToastUtils.showToast(context, Strings.liveStartSuccess);
      Navigator.pop(context);
    } else {
      ToastUtils.showToast(context, result.msg ?? Strings.liveStartFail);
    }
  } else if (status == NERoomLiveState.started) {
    final result = await liveStreamController.updateLive(live);
    if (!mounted) return;
    if (result.isSuccess()) {
      ToastUtils.showToast(context, Strings.liveUpdateSuccess);
      Navigator.pop(context);
    } else {
      ToastUtils.showToast(context, result.msg ?? Strings.liveUpdateFail);
    }
  } else {
    final result = await liveStreamController.stopLive();
    if (!mounted) return;
    if (result.isSuccess()) {
      Navigator.pop(context);
      ToastUtils.showToast(context, Strings.liveStopSuccess);
    } else {
      ToastUtils.showToast(context, result.msg ?? Strings.liveStopFail);
    }
  }
}