All Projects → zoom → Websdk

zoom / Websdk

Licence: other
Zoom Web SDK

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Websdk

React Render In Browser
React library to render browser specific content
Stars: ✭ 157 (-12.29%)
Mutual labels:  npm-package
New Github Issue Url
Generate a URL for opening a new GitHub issue with prefilled title, body, and other fields
Stars: ✭ 170 (-5.03%)
Mutual labels:  npm-package
Express Prom Bundle
express middleware with standard prometheus metrics in one bundle
Stars: ✭ 172 (-3.91%)
Mutual labels:  npm-package
Alfred Dark Mode
Alfred 3 workflow to toggle the system dark mode
Stars: ✭ 165 (-7.82%)
Mutual labels:  npm-package
Cash Cli
💰💰 Convert currency rates directly from your terminal!
Stars: ✭ 168 (-6.15%)
Mutual labels:  npm-package
Yocto Queue
Tiny queue data structure
Stars: ✭ 171 (-4.47%)
Mutual labels:  npm-package
Watermark
Add watermark on images use HTML5 and Javascript.
Stars: ✭ 154 (-13.97%)
Mutual labels:  npm-package
React Sticky El
Stars: ✭ 179 (+0%)
Mutual labels:  npm-package
Fast Cli
Test your download and upload speed using fast.com
Stars: ✭ 2,178 (+1116.76%)
Mutual labels:  npm-package
Gulp Traceur
Traceur is a JavaScript.next to JavaScript-of-today compiler
Stars: ✭ 172 (-3.91%)
Mutual labels:  npm-package
Into Stream
Convert a string/promise/array/iterable/asynciterable/buffer/typedarray/arraybuffer/object into a stream
Stars: ✭ 167 (-6.7%)
Mutual labels:  npm-package
Reactopt
A CLI React performance optimization tool that identifies potential unnecessary re-rendering
Stars: ✭ 1,975 (+1003.35%)
Mutual labels:  npm-package
Slugify
Slugify a string
Stars: ✭ 2,110 (+1078.77%)
Mutual labels:  npm-package
Magic Iterable
Call a method on all items in an iterable by calling it on the iterable itself
Stars: ✭ 159 (-11.17%)
Mutual labels:  npm-package
Egg Oauth2 Server
🌟 OAuth2 server plugin for egg.js based on node-oauth2-server
Stars: ✭ 174 (-2.79%)
Mutual labels:  npm-package
Gh Got
Convenience wrapper for Got to interact with the GitHub API
Stars: ✭ 156 (-12.85%)
Mutual labels:  npm-package
Http Loader
A loader for ngx-translate that loads translations with http calls
Stars: ✭ 170 (-5.03%)
Mutual labels:  npm-package
Node Regedit
Read, Write, List and do all sorts of funky stuff to the windows registry using node.js and windows script host
Stars: ✭ 178 (-0.56%)
Mutual labels:  npm-package
Feathericon
simply generic vector icon collection - including sketch file, svg files, and font files.
Stars: ✭ 178 (-0.56%)
Mutual labels:  npm-package
File Icon Vectors
A collection of file type icons in SVG format
Stars: ✭ 171 (-4.47%)
Mutual labels:  npm-package

Zoom Web SDK

Please note that as of January 10th, all older versions of the Web SDK (versions 1.8.3 and below) will no longer have computer audio functionality within meetings. Please upgrade to version 1.8.5 or above to avoid service disruption.

Starting from version 1.9.1, an open source software (OSS) attribution file (oss_attribution.txt) will be provided in each release. Some licenses for OSS contained in our products give you the right to access the source code under said license. You may obtain a copy of source code for the relevant OSS via the following link: https://zoom.us/opensource/source. Please obtain independent legal advice or counsel to determine your responsibility to make source code available under any specific OSS project.”

The Zoom Web SDK NPM package is for implementing the Zoom Web SDK with a frontend framework like React or Angular that uses webpack / babel.

  • node_modules/@zoomus/websdk/dist/lib/

Upgrading from 1.8.3 to 1.8.5

Since we replaced jQuery with Axios, you will need to change the following line.

default en-US.json

$.i18n -> ZoomMtg.i18n

case 1: load en-US, jp-JP, zh-CN, but use jp-JP by default

ZoomMtg.i18n.load('en-US');
ZoomMtg.i18n.load('jp-JP');
ZoomMtg.i18n.load('zh-CN');
ZoomMtg.i18n.reload('jp-JP');

case 2: only load jp-JP
ZoomMtg.i18n.load('jp-JP');
ZoomMtg.i18n.reload('jp-JP');

case 3: load youself json file

ZoomMtg.i18n.load('you jason url', 'you-lang-name');
ZoomMtg.i18n.reload('you-lang-name');

other: if you joined meeting and want change language, you need add another api
ZoomMtg.reRender({lang: 'zoom support language or you-lang-name' });

Installation

In your frontend project, install the Web SDK:

$ npm install @zoomus/websdk --save

Usage

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

import { ZoomMtg } from '@zoomus/websdk';

ZoomMtg.preLoadWasm();
ZoomMtg.prepareJssdk();

NOTE: The following directory (already in node_modules) must be accessible in your url path:

  • node_modules/@zoomus/websdk/dist/lib/

Or, you can set a custom path to the Web SDK's lib directory using:

ZoomMtg.setZoomJSLib('http://localhost:9999/custom/path/to/lib/', '/av')

NOTE: The following files (already in node_modules) must be globally accessible (equivalent of link and script tag in index.html):

  • node_modules/@zoomus/websdk/dist/css/bootstrap.css
  • node_modules/@zoomus/websdk/dist/css/react-select.css
  • node_modules/jquery/dist/jquery.min.js

Set the config variables (reference below):

// setup your signautre endpoint here: https://github.com/zoom/websdk-sample-signature-node.js
var signatureEndpoint = 'http://localhost:4000'
var apiKey = 'JWT_API_KEY'
var meetingNumber = 123456789
var role = 0
var leaveUrl = 'http://localhost:9999'
var userName = 'WebSDK'
var userEmail = ''
var passWord = ''

Config variables reference:

Variable Description
signatureEndpoint Required, the endpoint url that returns a signature. Get a signature endpoint here.
apiKey Required, your Zoom JWT App API Key.
meetingNumber The Zoom Meeting / webinar number.
role Required, 0 to join the meeting / webinar, 1 to start the meeting.
leaveUrl Required, the url the user is taken to once the meeting is over.
userName Required, A name for the user joining / starting the meeting / webinar.
userEmail Optional, the user joining / starting the meeting / webinar.
passWord Optional, meeting password. Leave as empty string if the meeting does not require a password.

Generate the meeting signature to authenticate, instructions here.

var signature = 'eHUzSlBhQV9SSlcyLTlsNV9IQWFMQS4xMjM0NTY3ODkuMTU4MzE2OTUzODc3My4wLkJMNEtiM3FINGx5ZzA1MUZtbGJOcGtPRnlFQS9lQUR2bGllVzJNNGZJeWs9'

Then init, and join the meeting.

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

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

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

Sample App

Checkout the Zoom Web SDK Sample App, and the Simple Signature Setup Sample App.

Need Support?

The first place to look for help is on our Developer Forum, where Zoom Marketplace Developers can ask questions for public answers.

If you can’t find the answer in the Developer Forum or your request requires sensitive information to be relayed, please email us at [email protected].

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].