/meetingbot-web-sample

A bot implementation for the Web Meeting SDK built with Vanilla JS

Primary LanguageJavaScript

Zoom Meeting Bot JavaScript sample

Use of this sample app is subject to our Terms of Use.

This repo contains an HTML/CSS/JavaScript website that utilizes the Zoom Meeting SDK with a Node.js Express backend and the Chrome Headless browser to join Zoom meetings and request recording permission as a participant. The frontend is built with Vanilla JS to demonstrate the capabilities of headless browsers for bot development.

Requirements:

  • Nodejs

Installation

To get started, clone the repo : https://github.com/zoom/meetingsdk-web-bot-sample.git

Setup

  1. Once cloned, navigate to the meetingsdk-sample-javascript directory:
$ cd meetingsdk-web-bot-sample-javascript
  1. Then install the dependencies:
$ npm install
  1. Copy .env.example to store your Meeting SDK credentials:
$ cp .env.example .env
  1. In the frontend directory, open the client-view.js file, and enter values for the variables:

    Variable Description
    authEndpoint Required, your Meeting SDK auth endpoint that secuerly generates a Meeting SDK JWT. Get a Meeting SDK auth endpoint here.
    sdkKey Required, your Zoom Meeting SDK Key or Client ID for Meeting SDK app type's created after February 11, 2023. You can get yours here.
    meetingNumber Required, the Zoom Meeting or webinar number.
    passWord Optional, meeting password. Leave as empty string if the meeting does not require a password.
    role Required, 0 to specify participant, 1 to specify host.
    userName Required, a name for the user joining / starting the meeting / 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 / webinar.
    registrantToken Required if your meeting or webinar requires registration.
    zakToken Required to start meetings or webinars on external Zoom user's behalf, the authorized Zoom user's ZAK token.
    leaveUrl Required for Client View, the url the user is taken to once the meeting is over.

    Example:

    var authEndpoint = 'http://localhost:4000'
    var sdkKey = 'abc123'
    var meetingNumber = '123456789'
    var passWord = ''
    var role = 0
    var userName = 'Web Bot'
    var userEmail = ''
    var registrantToken = ''
    var leaveUrl = 'https://zoom.us'
  2. Launch a development local Server or open index.html in your browser (or serve over localhost).

  3. Start the server:

npm run start

Usage

  1. Enter Meeting SDK credentials values in index.html

  2. Navigate to index.html in your browser (or serve over localhost).

  3. In backend/helpers/meetingBot.js, enter local development url or site url.

await page.goto("{Enter local development url or site url}", {
    waitUntil: "load",


  });
  1. In terminal run :
 npm run start
  1. Meeting bot should enter the meeting as a participant and request recording permission.

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.