startMeeting method

  1. @override
Future<List> startMeeting(
  1. ZoomMeetingOptions options
)
override

The event channel used to interact with the native platform startMeeting(login on iOS & Android) function

Implementation

@override
Future<List> startMeeting(ZoomMeetingOptions options) async {
  var optionMap = new Map<String, String?>();
  optionMap.putIfAbsent("userId", () => options.userId);
  optionMap.putIfAbsent("userPassword", () => options.userPassword);
  optionMap.putIfAbsent("disableDialIn", () => options.disableDialIn);
  optionMap.putIfAbsent("disableDrive", () => options.disableDrive);
  optionMap.putIfAbsent("disableInvite", () => options.disableInvite);
  optionMap.putIfAbsent("disableShare", () => options.disableShare);
  optionMap.putIfAbsent("disableTitlebar", () => options.disableTitlebar);
  optionMap.putIfAbsent("viewOptions", () => options.viewOptions);
  optionMap.putIfAbsent("noDisconnectAudio", () => options.noDisconnectAudio);
  optionMap.putIfAbsent("noAudio", () => options.noAudio);

  return channel
      .invokeMethod<List>('login', optionMap)
      .then<List>((List? value) => value ?? List.empty());
}