Start a meeting for a non-logged in or API user
The code on this page works with either the default UI or the custom UI.
After getting the Zoom Access Key (ZAK) token, pass it to start meetings with either a meeting number or a vanity ID.
Start with a meeting number
To start a meeting with meeting number, first get a ZoomSDKMeetingService instance from ZoomSDK.
guard let meetingService = ZoomSDK.shared().getMeetingService() else { return }
ZoomSDKMeetingService *meetingService = [[ZoomSDK sharedSDK] getMeetingService];
if (!meetingService) {
return;
}
Then, prepare ZoomSDKStartMeetingUseZakElements.
let params = ZoomSDKStartMeetingUseZakElements()
ZoomSDKStartMeetingUseZakElements *params = [[ZoomSDKStartMeetingUseZakElements alloc] init];
Store the Zoom Access Key (zak), display name, and meeting number in the ZoomSDKStartMeetingUseZakElements instance, and start the meeting by calling startMeetingWithZAK method.
params.userType = SDKUserType_APIUser // SDKUserType class
params.zak = "ZAK" // ZAK of the local user
params.displayName = "DISPLAY_NAME"
params.meetingNumber = 123456789
let result = meetingService.startMeeting(withZAK: params)
params.userType = SDKUserType_APIUser;
params.zak = @"ZAK"; // ZAK of the local user
params.displayName = @"DISPLAY_NAME";
params.meetingNumber = 123456789;
ZoomSDKError result = [meetingService startMeetingWithZAK:params];
Start with a vanity ID
A vanity ID is a special and personalized ID that uniquely belongs to a user.
To start a meeting with a vanity ID, the process is almost the same as starting a meeting with a meeting number. Just store the vanityID inside the ZoomSDKStartMeetingUseZakElements instance instead of the meetingNumber.
params.userType = SDKUserType_APIUser // SDKUserType class
params.zak = "ZAK" // ZAK of the local user
params.displayName = "DISPLAY_NAME"
params.vanityID = "123456789"
let result = meetingService.startMeeting(withZAK: params)
params.userType = SDKUserType_APIUser;
params.zak = @"ZAK"; // ZAK of the local user
params.displayName = @"DISPLAY_NAME";
params.vanityID = @"123456789";
ZoomSDKError result = [meetingService startMeetingWithZAK:params];
Start meeting status
To know whether the start meeting action succeeded, didn't succeed, or resulted in an error, listen to the onMeetingStatusChange callback under ZoomSDKMeetingServiceDelegate.
guard let meetingService = ZoomSDK.shared().getMeetingService() else { return }
meetingService.delegate = self
extension ViewController: ZoomSDKMeetingServiceDelegate {
func onMeetingStatusChange(_ state: ZoomSDKMeetingStatus, meetingError error: ZoomSDKMeetingError, end reason: EndMeetingReason) {
}
}
// In your .h file
@interface TestWindow : NSWindowController <ZoomSDKMeetingServiceDelegate> {
}
// In your .m file
ZoomSDKMeetingService *meetingService = [[ZoomSDK sharedSDK] getMeetingService];
if (!meetingService) {
return;
}
meetingService.delegate = self;
- (void)onMeetingStatusChange:(ZoomSDKMeetingStatus)state meetingError:(ZoomSDKMeetingError)error EndReason:(EndMeetingReason)reason {
}