joinMeeting method

  1. @override
Future<bool> joinMeeting(
  1. ZoomMeetingOptions options
)
override

Implementation

@override
Future<bool> joinMeeting(ZoomMeetingOptions options) async {
  var optionMap = new Map<String, String>();
  optionMap.putIfAbsent("userId", () => options.userId);
  optionMap.putIfAbsent("meetingId", () => options.meetingId);
  optionMap.putIfAbsent("meetingPassword", () => options.meetingPassword);
  optionMap.putIfAbsent("disableDialIn", () => options.disableDialIn);
  optionMap.putIfAbsent("disableDrive", () => options.disableDrive);
  optionMap.putIfAbsent("disableInvite", () => options.disableInvite);
  optionMap.putIfAbsent("disableShare", () => options.disableShare);
  optionMap.putIfAbsent("noDisconnectAudio", () => options.noDisconnectAudio);
  optionMap.putIfAbsent("noAudio", () => options.noAudio);

  if (options.meetingViewOptions != null) {
    optionMap.putIfAbsent(
        "meetingViewOptions", () => options.meetingViewOptions!.toString());
  }

  return channel
      .invokeMethod<bool>('join', optionMap)
      .then<bool>((bool? value) => value ?? false);
}