Download the Zoom SDK


Login to the Zoom App Marketplace using your Zoom account, click the Develop option in the dropdown on the top-right corner and select Build App. Next, click the Create button and provide the required details if you haven’t already created an SDK app. If you previously created an SDK app on the Marketplace, click the View here option and navigate to the Download page. Click Electron to download the Electron SDK.

Prerequisites

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.
  • A device with Mac OS or Windows OS:
    • Mac OS: MacOS 10.10 or later.
    • Windows: Windows 7 or later. Currently Windows 10 UWP is not supported.

Installation

Structure of Zoom Electron SDK

The Zoom Electron SDK is structured in the following manner:

├── [sdk]
	├── [mac] <-- Node file built by Zoom for mac
	├── [win32] <-- Node file built by Zoom for win
├── binding.gyp 
├── build_nodeaddon_mac.sh <-- use to rebuild node file for mac
├── build_nodeaddon_win_ia32.bat <-- use to rebuild node file for win
├── readme.txt / readme.md
├── run_demo_mac.sh
├── run_demo_win.bat <-- use to run demo for win
├── [demo] <-- demo app is inside
└── [lib] <-- js files and source code of Zoom Electron SDK
build_nodeaddon_mac.sh / build_nodeaddon_win_ia32.bat 

Before running the demo app or rebuilding the Electron SDK, please setup the development environment configurations based on your platform.

Development environment configuration for Windows.

Note that Windows electron add-on is 32bit.
  1. Install electron and node.js * how to install node.js 12.16.1 version,download url: https://nodejs.org/download/release/v12.16.1/ * install electron 8.2.4 version,use command run npm install --arch=ia32 --save-dev electron@8.2.4 -g

  2. Run npm install node-gyp -g to install node-gyp.

  3. Run npm install bindings -g to install bindings.

  4. Make sure you installed msvc-2019 and python 2.7.

  5. npm config set msvs_version 2019``npm config set python python2.7``npm config set npm_config_arch ia32``npm config set npm_config_target_arch ia32

Development environment configuration for Mac

  1. To install node.js 12.6.1 version,visit: https://nodejs.org/download/release/v12.6.1/. Alternatively, you can also use ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" and sudo brew install node commands to install node.js.

  2. To install electron 8.2.4 version, run npm install --save-dev electron@8.2.4 -g command.

  3. Run npm install node-gyp -g to install node-gyp.

  4. Run npm install bindings -g to install bindings.

Running Zoom Electron SDK demo

We recommend you to REBUILD the Zoom node file on your own machine because the Electron version you use may not be the same as that of Zoom.

Due to the open source nature of this SDK, you will be able to configure and compile the new Zoom Electron SDK with any versions of Electron.

Please make sure that you have configured your development environment successfully. Follow the steps provided below for the configuration:

For Windows Platform

  1. Navigate to the root directory of the SDK package (same level as the README file).
  2. Run npm install to install the required dependencies to run the demo app 3. Run run_demo_win.bat to run the zoom demo.

For MAC Platform

  1. Navigate to the root directory of the SDK package (same level as this README file)

  2. Run npm install to install the required dependencies to run the demo app.

  3. Run run_demo_mac.sh to run the demo app.

Note: Due to the macOS security mechanism, the demo app will be blocked from launching the first time, please go to System Preference > Security & Privacy > General > Allow running the demo app.

Rebuilding zoom node file

If you are building your own version of the Electron SDK, you will need to follow these steps:

  1. Download the protobuf 3.13.0 source file and rename the src folder to protobuf_src.

  2. Copy the src folder into the lib/node_add_on folder.

  3. Run the build_nodeaddon script:

on Windows, please run the build_noodeaddon_win_ia32.bat

on macOS, please run the build_nodeaddon_mac.sh

If you would like to use recent versions of protobuf(higher than 3.13.0), in addition to following the above steps, you must also do the following:

  1. Download the execution file of the corresponding protobuf and add its directory into the system path.

  2. In the terminal, navigate to the root directory of the Electron SDK(same level as the build_nodeaddon file).

  3. Run protoc.exe —js_out=import_style=common.js,binary:. lib/electron_sdk_proto command in the terminal to generate an electron_sdk_pb.js file. After generating this file, you will be able to use the interfaces provided by the Electron SDK.

Creating an installer and publishing

Follow official documentation for packaging an Electron app and complete the following additional steps if creating an installer for Windows.

  1. Run cptinstall.exe -uninstall with administrator privileges. This step is to ensure that users who have installed an older package can use the share function normally.
  2. If publishing your app, copy the following Microsoft runtime libraries to bin and bin/aomhost directories:
concrt140.dll
msvcp140.dll
msvcp140_1.dll
msvcp140_2.dll
msvcp140_codecvt_ids.dll
vccorlib140.dll
vcruntime140.dll 
api-ms-win-core-console-l1-1-0.dll 
api-ms-win-core-console-l1-2-0.dll 
api-ms-win-core-datetime-l1-1-0.dll 
api-ms-win-core-debug-l1-1-0.dll 
api-ms-win-core-errorhandling-l1-1-0.dll 
api-ms-win-core-file-l1-1-0.dll 
api-ms-win-core-file-l1-2-0.dll 
api-ms-win-core-file-l2-1-0.dll 
api-ms-win-core-handle-l1-1-0.dll 
api-ms-win-core-heap-l1-1-0.dll 
api-ms-win-core-interlocked-l1-1-0.dll 
api-ms-win-core-libraryloader-l1-1-0.dll 
api-ms-win-core-localization-l1-2-0.dll 
api-ms-win-core-memory-l1-1-0.dll 
api-ms-win-core-namedpipe-l1-1-0.dll 
api-ms-win-core-processenvironment-l1-1-0.dll 
api-ms-win-core-processthreads-l1-1-0.dll 
api-ms-win-core-processthreads-l1-1-1.dll 
api-ms-win-core-profile-l1-1-0.dll 
api-ms-win-core-rtlsupport-l1-1-0.dll 
api-ms-win-core-string-l1-1-0.dll 
api-ms-win-core-synch-l1-1-0.dll 
api-ms-win-core-synch-l1-2-0.dll 
api-ms-win-core-sysinfo-l1-1-0.dll 
api-ms-win-core-timezone-l1-1-0.dll 
api-ms-win-core-util-l1-1-0.dll 
API-MS-Win-core-xstate-l2-1-0.dll 
api-ms-win-crt-conio-l1-1-0.dll 
api-ms-win-crt-convert-l1-1-0.dll 
api-ms-win-crt-environment-l1-1-0.dll 
api-ms-win-crt-filesystem-l1-1-0.dll 
api-ms-win-crt-heap-l1-1-0.dll 
api-ms-win-crt-locale-l1-1-0.dll 
api-ms-win-crt-math-l1-1-0.dll 
api-ms-win-crt-multibyte-l1-1-0.dll 
api-ms-win-crt-private-l1-1-0.dll 
api-ms-win-crt-process-l1-1-0.dll 
api-ms-win-crt-runtime-l1-1-0.dll 
api-ms-win-crt-stdio-l1-1-0.dll 
api-ms-win-crt-string-l1-1-0.dll 
api-ms-win-crt-time-l1-1-0.dll 
api-ms-win-crt-utility-l1-1-0.dll 
ucrtbase.dll