• Stars
    star
    290
  • Rank 142,981 (Top 3 %)
  • Language
    HTML
  • License
    Other
  • Created almost 6 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Embed the Zoom meeting and webinar experience

Zoom Meeting SDK for Web

Use of this SDK is subject to our Terms of Use

The Zoom Meeting SDK embeds the Zoom Meeting and Webinar experience in a website through a highly optimized WebAssembly module.

Installation

In your frontend project, install the Meeting SDK:

$ npm install @zoomus/websdk --save

There are two views to choose from, Component View, and Client View.

Usage - Component View

Zoom Meeting SDK Component View

The Component View provides the option to display the Meeting SDK in components on your page. This allows for a more flexible design.

In the component file where you want to use the Meeting SDK, import ZoomMtgEmbedded and create the client.

import ZoomMtgEmbedded from "@zoomus/websdk/embedded"

const client = ZoomMtgEmbedded.createClient()

In the HTML file, set an id attribute on the HTML element where you want to render the Meeting SDK. It will be hidden until you start or join a meeting or webinar.

<div id="meetingSDKElement">
   <!-- Zoom Meeting SDK Rendered Here -->
</div>

Back in the component file, init the Meeting SDK with the HTML element above:

let meetingSDKElement = document.getElementById('meetingSDKElement')

client.init({ zoomAppRoot: meetingSDKElement, language: 'en-US' })

Now we will start or join the meeting or webinar. Here are the required properties for the client.join() function. You can get the Meeting or Webinar number and passcode from the Zoom APIs.

Key Value Description
sdkKey Required, your SDK Key.
signature Required, your SDK JWT.
meetingNumber Required, the Zoom Meeting or Webinar Number.
password Required, leave as empty string if the Meeting or Webinar only requires the waiting room.
userName Required, the name of the user starting or joining the Meeting or Webinar.
userEmail Required for Webinar, optional for Meeting, required for Meeting and Webinar if registration is required. The email of the user starting or joining the Meeting or Webinar.
tk Required if your Meeting or Webinar requires registration. The registrant's token.
zak Required if you are starting a Meeting or Webinar. The host's Zoom Access Key (ZAK).

Then, start or join the meeting or webinar.

client.join({
   sdkKey: sdkKey,
   signature: signature,
   meetingNumber: meetingNumber,
   password: password,
   userName: userName
})

For the full list of features and event listeners, as well as additional guides, see our Meeting SDK docs.

Usage - Client View

Zoom Meeting SDK Client View

The Client View provides the option to display the Meeting SDK as a full page. This allows for a familiar Zoom Meeting experience because the Client View is the same as the Zoom Web Client, except it lives inside your own web page.

In the component file where you want to use the Meeting SDK, import ZoomMtg and call the preLoadWasm(), prepareWebSDK(), and setZoomJSLib() functions.

import { ZoomMtg } from '@zoomus/websdk'

ZoomMtg.preLoadWasm()
ZoomMtg.prepareWebSDK()

// loads language files, also passes any error messages to the ui
ZoomMtg.i18n.load('en-US')
ZoomMtg.i18n.reload('en-US')

ZoomMtg.setZoomJSLib('https://source.zoom.us/{VERSION_NUMBER}/lib', '/av')

When imported, the Meeting SDK adds new elements to the DOM to handle client overlays and accessibility elements. To manage or manipulate this DOM element within your app see this guide.

Add the following styles to the HTML page you want the Meeting SDK to live on, or index.html if you are using a single page app framework.

<head>
  <!-- For Client View -->
  <link type="text/css" rel="stylesheet" href="https://source.zoom.us/{VERSION_NUMBER}/css/bootstrap.css" />
  <link type="text/css" rel="stylesheet" href="https://source.zoom.us/{VERSION_NUMBER}/css/react-select.css" />
</head>

Replace {VERSION_NUMBER} in the code above with the latest version number.

Back in the component file we will init and start or join the meeting or webinar. Here are the required properties for the ZoomMtg.init() function.

Key Value Description
leaveUrl Required, the URL the participant is taken to once they leave or when the meeting ends.

Here are the required properties for the ZoomMtg.join() function. You can get the Meeting or Webinar number and passcode from the Zoom APIs.

Key Value Description
sdkKey Required, your SDK Key.
signature Required, your SDK JWT.
meetingNumber Required, the Zoom Meeting or Webinar Number.
passWord Required, leave as empty string if the Meeting or Webinar only requires the waiting room.
userName Required, the name of the user starting or joining the Meeting or Webinar.
userEmail Required for Webinar, optional for Meeting, required for Meeting and Webinar if registration is required. The email of the user starting or joining the Meeting or Webinar.
tk Required if your Meeting or Webinar requires registration. The registrant's token.
zak Required if you are starting a Meeting or Webinar. The host's Zoom Access Key (ZAK).

Then, init, and start or join the meeting or webinar.

ZoomMtg.init({
  leaveUrl: leaveUrl,
  success: (success) => {
    console.log(success)

    ZoomMtg.join({
      signature: signature,
      meetingNumber: meetingNumber,
      userName: userName,
      sdkKey: sdkKey,
      userEmail: userEmail,
      passWord: passWord,
      success: (success) => {
        console.log(success)
      },
      error: (error) => {
        console.log(error)
      }
    })

  },
  error: (error) => {
    console.log(error)
  }
})

For the full list of features and event listeners, as well as additional guides, see our Meeting SDK docs.

Sample Apps

Need help?

If you're looking for help, try Developer Support or our Developer Forum. Priority support is also available with Premier Developer Support plans.

More Repositories

1

meetingsdk-web-sample

Zoom Meeting SDK web sample
HTML
622
star
2

zoom-e2e-whitepaper

Zoom Cryptography Whitepaper
545
star
3

zoom-sdk-ios

Zoom iOS SDK
181
star
4

zoom-sdk-android

Zoom Android SDK
156
star
5

meetingsdk-react-sample

Use the Zoom Meeting SDK in React
JavaScript
150
star
6

videosdk-web-sample

Zoom Video SDK web sample
TypeScript
124
star
7

meetingsdk-auth-endpoint-sample

Generate a Meeting SDK JWT to join Zoom meetings and webinars with the Meeting SDK.
JavaScript
111
star
8

zoom-sdk-windows

Zoom Windows SDK
109
star
9

zoom-sdk-electron

Zoom Electron SDK
97
star
10

zoom-oauth-sample-app

Sample Zoom Oauth App NodeJS app to call Zoom's APIs
JavaScript
88
star
11

zoom-api-jwt

Sample NodeJS app to call Zoom's APIs using Json Web Token (JWT)
JavaScript
78
star
12

zoom-sdk-macos

Zoom macOS SDK
68
star
13

viss

TypeScript
63
star
14

zoomapps-sample-js

A Hello World Zoom App built with Vanilla JS
JavaScript
58
star
15

meetingsdk-angular-sample

Use the Zoom Meeting SDK in Angular
TypeScript
57
star
16

zoom-c-sharp-wrapper

C# wrapper for Zoom Windows SDK
44
star
17

api

Zoom API Version 2 Documentation
JavaScript
44
star
18

meetingbot-recall-sample

Zoom Meeting assistant built using Recall.ai, Anthropic's Claude API, and the Zoom Apps SDK
JavaScript
44
star
19

videosdk-web

Power custom video experiences with Zoom's core technology
43
star
20

zoomapps-advancedsample-react

This repository contains an Advanced Zoom Apps Sample. It should serve as a starting point for you to build and test your own Zoom App in development.
JavaScript
40
star
21

server-to-server-oauth-starter-api

Starting point for developing a Zoom S2S OAuth API
JavaScript
40
star
22

meetingsdk-vuejs-sample

Use the Zoom Meeting SDK in Vue.js
Vue
37
star
23

appssdk

Build Apps that run in the Zoom Client
37
star
24

meetingsdk-javascript-sample

Use the Zoom Meeting SDK in (vanilla) JavaScript
JavaScript
33
star
25

zoom-sdk-ionic

Zoom SDK Ionic/Cordova Plugin for Ionic Angular
31
star
26

meetingsdk-headless-linux-sample

A demo on creating a headless meeting bot using the Zoom Meeting SDK for Linux and Docker
C++
29
star
27

sample-app-node

Zoom REST API sample app in Node
Pug
25
star
28

webhook-sample

Receive Zoom webhooks.
JavaScript
24
star
29

data-visualization-sample-app

Sample application to visualize basic activity on your Zoom account and can be used as code example to assist new Zoom Developers
JavaScript
23
star
30

zoom-macsdk-electron

Mac SDK Electron support
21
star
31

meetingsdk-linux-raw-recording-sample

Dockerfile
21
star
32

sample-app-ionic

Zoom Ionic SDK sample app
JavaScript
21
star
33

zoom-winsdk-electron

Windows SDK - Electron version
19
star
34

meetingbot-web-sample

A bot implementation for the Web Meeting SDK built with Vanilla JS
JavaScript
19
star
35

zoomapps-texteditor-vuejs

A simple text editor Zoom App that demonstrates Collaborate Mode
TypeScript
18
star
36

unsplash-chatbot

Send Unsplash photos in Zoom Team Chat.
JavaScript
18
star
37

node.js-chatbot

Zoom Node.js Chatbot Library
JavaScript
17
star
38

zoom-sdk-android-getting-started

Java
17
star
39

zoom-sample-webhookapp

A Sample App that demonstrates how to use Zoom Webhooks
JavaScript
16
star
40

user-level-oauth-starter

JavaScript
16
star
41

zoomapps-customlayout-js

A simple podcaster Zoom App to demonstrate Immersive Mode through our Layers API
JavaScript
14
star
42

videosdk-auth-endpoint-sample

Generate a Video SDK JWT to join Zoom Video SDK sessions with the Video SDK.
JavaScript
14
star
43

client-sdk-iOS-getting-started

Objective-C
13
star
44

api-v1

Zoom API Version 1 Documentation
JavaScript
13
star
45

server-to-server-oauth-token

Utility script to generate a Zoom Server-to-Server Oauth Token and copy to clipboard
JavaScript
11
star
46

vote-chatbot

Vote on topics in Zoom Chat
JavaScript
10
star
47

catbot

Send cat photos in Zoom Chat
JavaScript
9
star
48

videosdk-ui-toolkit-web

The Zoom Video SDK UI toolkit is a prebuilt video chat user interface powered by the Zoom Video SDK.
JavaScript
9
star
49

node.js-chatbot-cli

Zoom Node.js Chatbot Command Line Interface
JavaScript
8
star
50

zoom-bot-api

Please visit our new unsplash-chatbot sample app.
JavaScript
8
star
51

VideoSDK-Web-Telehealth

This starter-kit uses the Zoom Video SDK to build a telehealth app on Web
TypeScript
7
star
52

zoomapps-serverless-vuejs

A Serverless Zoom App built on Firebase for Zoomtopia 2022 and beyond!
JavaScript
6
star
53

videosdk-workshop

workshop-project
JavaScript
6
star
54

alexa

Zoom for Alexa
JavaScript
5
star
55

webhook-to-postgres

JavaScript
5
star
56

zoom-video-sdk-iOS

Zoom iOS Video SDK - SDK package only, for full packages including the sample app, please visit: https://marketplace.zoom.us to download.
5
star
57

zoom-bot-demo

Please visit our new vote-chatbot NPM sample app.
JavaScript
5
star
58

videosdk-reactnative-quickstart

This is a sample application that demonstrates how to use the Zoom Video SDK in a React Native application.
TypeScript
5
star
59

zoomapps-cameramode-vuejs

A frontend only sample that shows how to use Camera Mode and Immersive Mode in a Zoom App
Vue
5
star
60

team-chat-shortcut-sample

This repository contains a Node.js application that allows you to create a Zoom Team Chat App for managing recordings. Follow the instructions below to set up and run the application.
JavaScript
5
star
61

videosdk-linux-raw-recording-sample

C++
5
star
62

meetingsdk-win-raw-recording-sample

A patch of the Zoom Meeting SDK for Windows that enables raw recording
4
star
63

videosdk-nextjs-quickstart

This is a sample application that demonstrates how to use the Zoom Video SDK in a Next.js app
TypeScript
4
star
64

videosdk-ui-toolkit-javascript-sample

Use the Zoom Video SDK UI Toolkit in (vanilla) JavaScript
JavaScript
4
star
65

videosdk-ui-toolkit-react-sample

Use the Zoom Video SDK UI Toolkit in React
JavaScript
4
star
66

videosdk-ui-toolkit-vuejs-sample

Use the Zoom Video SDK UI Toolkit in Vue.js
Vue
4
star
67

sample-registration-app

JavaScript
3
star
68

zoom-meeting-sdk-unreal-engine

Zoom Meeting SDK Unreal Engine Plugin
C
3
star
69

team-chat-app-anthropic-ai

JavaScript
3
star
70

kaltura-sample-code

Java
2
star
71

videosdk-s3-cloud-recordings

Automatically download Zoom Cloud Recordings and upload them to an AWS S3 bucket of your choosing
TypeScript
2
star
72

node.js-botservice

Dependency for Zoom Node.js Chatbot Command Line Interface
JavaScript
2
star
73

websocket-redis-example

This is a sample application that logs events received through websockets in redis database
JavaScript
2
star
74

videosdk-ui-toolkit-angular-sample

Use the Zoom Video SDK UI Toolkit in Angular
TypeScript
2
star
75

videosdk-web-helloworld

JavaScript
2
star
76

zoom-webhook-verification-headers

Custom Headers (Basic, Token and custom header) authorization & Zoom Webhook Validation with Express.js Server
JavaScript
1
star
77

elektra

Prototype implementation of the Key Transparency system ELEKTRA, presented at ACM CCS 2023
Go
1
star