Note: This is a community project initiated by Zoom. Zoom does not actively enhance the interfaces in the Ionic plugin. If you would like to contribute, please contact us or submit a pull request. Thanks! :)
- Please note that our Ionic SDK only support Ionic Angular.
- Our brand new Zoom Developer Community Forum is now online!!! Check it out! We are here to help! :D
You can find the full Zoom Ionic SDK documentation and the community support forum here:
Zoom SDK makes it easy to integrate Zoom with your mobile applications, and boosts up your applications with the power of Zoom.
- Easy to use: Our SDK is built to be easy to use. Just import the libraries, call a few functions, and we will take care all video conferencing related stuffs for you.
- Localizable: Our SDK naturally supports 7 major languages, so you can grow your applications internationally.
Please be aware that all hard-coded variables and constants shown in the documentation and in the demo, such as Zoom Token, Zoom Access, Token, etc., are ONLY FOR DEMO AND TESTING PURPOSES. We STRONGLY DISCOURAGE the way of HARDCODING any Zoom Credentials (username, password, API Keys & secrets, SDK keys & secrets, etc.) or any Personal Identifiable Information (PII) inside your application. WE DON’T MAKE ANY COMMITMENTS ABOUT ANY LOSS CAUSED BY HARD-CODING CREDENTIALS OR SENSITIVE INFORMATION INSIDE YOUR APP WHEN DEVELOPING WITH OUR SDK.
The following instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
- For detailed instructions, please refer to our documentation website: [https://marketplace.zoom.us/docs/sdk/hybrid-frameworks/ionic];
- If you need support or assistance, please visit our Zoom Developer Community Forum;
Before you try out our SDK, you would need the following to get started:
- A Zoom Account: If you do not have one, you can sign up at https://zoom.us/signup.
- Once you have your Zoom Account, sign up for a 60-days free trial at https://marketplace.zoom.us/
- A mobile device
- Android
- Android 4.0 (API Level 14) or later.
- iOS
- iPhone or iPad
- [email protected]+
- [email protected]+
- ionic/[email protected]+
- ionic-native/[email protected]+
- ionic-native/[email protected]+
- Android
If you are developing on Android, you will need to install the latest version of cordova-android
ionic cordova platform add [email protected]+
and install the following 2 plugins before you can use the Ionic SDK:
ionic cordova plugin add cordova-plugin-androidx
ionic cordova plugin add cordova-plugin-androidx-adapter
Clone or download a copy of our SDK files from GitHub. After you unzipped the file, you should have the following folders:
.
├── README.md
├── libs
├── package.json
├── plugin.xml
├── src
└── www
In your Ionic application directory, run the following to install the plugin:
ionic cordova plugin add cordova.plugin.zoom
- Import the plugin
import { Zoom } from '@ionic-native/zoom';
constructor(private zoomService: Zoom) { }
1. Initialize Zoom SDK Initialize Zoom SDK, need to be called when app fired up.
this.zoomService.initialize(API_KEY, API_SECRET)
.then((success: any) => console.log(success))
.catch((error: any) => console.log(error));
- Login Log user in with Zoom username and password.
this.zoomService.login(userName, password)
.then((success: any) => console.log(success))
.catch((error: any) => console.log(error));
- Logout Log user out.
this.zoomService.logout()
.then((success: boolean) => console.log(success))
.catch((error: any) => console.log(error));
- isLoggedIn Check whether a user is logged in. Return true if the user is logged in. False if the user is not logged in.
this.zoomService.isLoggedIn()
.then((success: boolean) => console.log(success))
.catch((error: any) => console.log(error));
- MeetingOptions Meeting options (Only available on Android). Configure the default meeting room.
let options = {
"no_driving_mode":true,
"no_invite":true,
"no_meeting_end_message":true,
"no_titlebar":false,
"no_bottom_toolbar":false,
"no_dial_in_via_phone":true,
"no_dial_out_to_phone":true,
"no_disconnect_audio":true,
"no_share":true,
"no_audio":true,
"no_video":true,
"no_meeting_error_message":true
};
- Join Meeting Join meeting
this.zoomService.joinMeeting(meetingNumber, meetingPassword, displayName, options)
.then((success: any) => console.log(success))
.catch((error: any) => console.log(error));
- Start an existing meeting for non-login user Start an existing meeting for non-login user.
this.zoomService.startMeetingWithZAK(meetingNumber, vanityId, displayName, zoomToken, zoomAccessToken, userId, options)
.then((success: any) => console.log(success))
.catch((error: any) => console.log(error));
- Start an existing meeting for logged in user Start an existing meeting for logged in user.
this.zoomService.startMeeting(meetingNumber, vanityId, options)
.then((success: any) => console.log(success))
.catch((error: any) => console.log(error));
- Start an instant meeting for logged in user Start an instant meeting for logged in user.
this.zoomService.startInstantMeeting()
.then((success: any) => console.log(success))
.catch((error: any) => console.log(error));
- Set language Change in-meeting language.
this.zoomService.setLanguage("en-US")
.then((success: any) => console.log(success))
.catch((error: any) => console.log(error));
Supported Languages and Parameters The parameters are unified using IETF BCP 47 (https://tools.ietf.org/html/bcp47).
Language | Language Tag / Parameter |
---|---|
English | en-US |
Simplified Chinese | zh-CN |
Japanese | ja-JP |
German | de-DE |
French | fr-FR |
Traditional Chinese | zh-TW |
Spanish | es-419 |
Russian | ru-RU |
Portuguese | pt-PT |
In order to use the camera and microphone on iOS, please add the following in your config.xml file. Otherwise, your app will not be able to initialize a meeting.
<edit-config file="*-Info.plist" mode="merge" target="NSCameraUsageDescription">
<string>Need camera for video conferencing</string>
</edit-config>
<edit-config file="*-Info.plist" mode="merge" target="NSMicrophoneUsageDescription">
<string>Need microphone for video conferencing</string>
</edit-config>
By default, this plugin only support running on real devices. Since 4.4.55130.0712, we have introduced the simulator support. Here are the steps to add simulator support:
- Install the Zoom Ionic SDK plugin
ionic cordova plugin add cordova.plugin.zoom
- Navigate to
appRoot/plugins/cordova.plugin.zoom
, and back up the wholelibs
folder. - Go to https://github.com/zoom/zoom-sdk-ionic/tags and download the
ionic-zoomsdk-***.zip
file; Unzipp it. - Replace the
libs
folder inappRoot/plugins/cordova.plugin.zoom
with the one in theionic-zoomsdk-***
folder. - Run
ionic cordova platfrom rm android && ionic cordova platform add android
orionic cordova platform rm ios && ionic cordova platform add ios
to make sure the new libraries are added to the project. - If you are going to publish your app to the Google Play Store or Apple App Store, please use the original
libs
since a library that contians simulator architecture will not pass the app upload check.
Please visit [https://marketplace.zoom.us/docs/sdk/hybrid-frameworks/ionic] for details of each features and functions.
For the versions available, see the tags on this repository.
Please refer to our CHANGELOG for all changes.
For any issues regarding our SDK, please visit our new Community Support Forum at https://devforum.zoom.us/.
Please refer to LICENSE.md file for details
- ⭐ If you like our SDK, please give us a "Star". Your support is what keeps us moving forward and delivering happiness to you! Thanks a million! 😃
- If you need any support or assistance, we are here to help you: Zoom Developer Community Forum;
Copyright ©2019 Zoom Video Communications, Inc. All rights reserved.