https://github.com/zoom/meetingsdk-angular-sample
Use the Zoom Meeting SDK in Angular
https://github.com/zoom/meetingsdk-angular-sample
sample-app
Last synced: 11 months ago
JSON representation
Use the Zoom Meeting SDK in Angular
- Host: GitHub
- URL: https://github.com/zoom/meetingsdk-angular-sample
- Owner: zoom
- Created: 2020-03-13T21:08:52.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2025-03-13T21:33:37.000Z (12 months ago)
- Last Synced: 2025-03-30T21:06:45.772Z (11 months ago)
- Topics: sample-app
- Language: TypeScript
- Homepage:
- Size: 5.16 MB
- Stars: 58
- Watchers: 16
- Forks: 52
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Zoom Meeting SDK Angular sample
Use of this sample app is subject to our [Terms of Use](https://explore.zoom.us/en/legal/zoom-api-license-and-tou/).
This repo is an [Angular](https://angular.io/) app generated via the [Angular CLI](https://cli.angular.io/) that uses the [Zoom Meeting SDK](https://developers.zoom.us/docs/meeting-sdk/web/) to start and join Zoom meetings and webinars.

## Installation
To get started, clone the repo:
`$ git clone https://github.com/zoom/meetingsdk-angular-sample.git`
> To setup and run the app you will need the [Angular CLI](https://cli.angular.io).
## Setup
1. Once cloned, navigate to the `meetingsdk-angular-sample` directory:
`$ cd meetingsdk-angular-sample`
1. Then install the dependencies:
`$ npm install`
1. Open the `meetingsdk-angular-sample` directory in your code editor.
1. Open the `src/app/app.component.ts` file, and enter values for the variables:
**NEW:** To use the [Component View](https://developers.zoom.us/docs/meeting-sdk/web/component-view/), replace `app.component.ts` with `app-new.component.ts`. (The `leaveUrl` is not needed). Also, remove the Client View CSS styles on lines 27 and 28 in in `angular.json`.
| Variable | Description |
| -----------------------|-------------|
| authEndpoint | Required, your Meeting SDK auth endpoint that securely generates a Meeting SDK JWT. [Get a Meeting SDK auth endpoint here.](https://github.com/zoom/meetingsdk-sample-signature-node.js) |
| 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](https://developers.zoom.us/docs/meeting-sdk/developer-accounts/#get-meeting-sdk-credentials). |
| 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](https://support.zoom.us/hc/en-us/articles/360054446052-Managing-meeting-and-webinar-registration). The email of the user starting or joining the meeting / webinar. |
| registrantToken | Required if your [meeting](https://developers.zoom.us/docs/meeting-sdk/web/client-view/meetings/#join-meeting-with-registration-required) or [webinar](https://developers.zoom.us/docs/meeting-sdk/web/client-view/webinars/#join-webinar-with-registration-required) requires [registration](https://support.zoom.us/hc/en-us/articles/360054446052-Managing-meeting-and-webinar-registration). |
| zakToken | Required to start meetings or webinars on external Zoom user's behalf, the [authorized Zoom user's ZAK token](https://developers.zoom.us/docs/meeting-sdk/auth/#start-meetings-and-webinars-with-a-zoom-users-zak-token). The ZAK can also be used to join as an [authenticated participant](https://support.zoom.com/hc/en/article?id=zm_kb&sysparm_article=KB0063837). |
| leaveUrl | Required for Client View, the url the user is taken to once the meeting is over. |
Example:
```js
authEndpoint = 'http://localhost:4000'
sdkKey = 'abc123'
meetingNumber = '123456789'
passWord = ''
role = 0
userName = 'Angular'
userEmail = ''
registrantToken = ''
zakToken = ''
leaveUrl = 'http://localhost:4200'
```
1. Save `app.component.ts`.
1. Run the app:
`$ ng serve --open`
## Usage
1. Navigate to http://localhost:4200 and click "Join Meeting".
### Client View

### Component View

Learn more about [Gallery View requirements](https://developers.zoom.us/docs/meeting-sdk/web/gallery-view/) and [see more product screenshots](https://developers.zoom.us/docs/meeting-sdk/web/gallery-view/#how-views-look-with-and-without-sharedarraybuffer).
## Deployment
The Angular Sample App can be easily deployed to [GitHub Pages](#github-pages), or [another static web hosting service](#other-static-web-hosting), like an AWS S3 bucket.
### GitHub Pages
1. Create a repo on [GitHub](https://github.com).
1. Add the remote to your project:
`$ git remote add origin GITHUB_URL/GITHUB_USERNAME/GITHUB_REPO_NAME.git`
1. Open the `angular.json` file and replace the value for `"baseHref"` with your GitHub repo name surrounded by slashes like this: `/GITHUB_REPO_NAME/`. Example: `"baseHref": "/GITHUB_REPO_NAME/"`
1. Build your project:
`$ ng build --prod`
1. Git add, commit, and push your project:
`$ git add -A`
`$ git commit -m "deploying to github"`
`$ git push origin master`
1. On GitHub, in your repo, navigate to the "settings" page, scroll down to the "GitHub Pages" section, and choose the "master branch /docs folder" for the source.
1. Now your project will be deployed to https://GITHUB_USERNAME.github.io/GITHUB_REPO_NAME.
### Other Static Web Hosting
1. Build your project:
`$ ng build --prod`
1. Deploy the complied `/docs` directory to a static web hosting service, like an AWS S3 bucket.
### Advanced Deployment
For more advanced instructions on deployment, [see the Angular Deployment docs](https://angular.io/guide/deployment).
## Need help?
If you're looking for help, try [Developer Support](https://devsupport.zoom.us) or our [Developer Forum](https://devforum.zoom.us). Priority support is also available with [Premier Developer Support](https://explore.zoom.us/docs/en-us/developer-support-plans.html) plans.