Hey there! Let me walk you through setting up this Zoom bot on Linux in simple steps. This is perfect for someone who's just getting started with Linux.
- A computer running Linux
- Docker installed
- A Zoom account
- Basic knowledge of the command line
First, make sure Docker is installed on your computer. If it's not installed yet:
# For Ubuntu/Debian:
sudo apt update
sudo apt install docker.io docker-compose
# Start Docker service
sudo systemctl start docker
sudo systemctl enable docker
# Add yourself to Docker group (so you don't need sudo every time)
sudo usermod -aG docker $USER
# You'll need to log out and back in for this to take effect
Open your terminal and run:
# Clone the repository (download the code)
git clone https://github.com/zoom/meetingsdk-headless-linux-sample.git
# Go into the folder
cd meetingsdk-headless-linux-sample
You need to download the Zoom SDK for Linux:
- Go to the Zoom Marketplace
- Sign in with your Zoom account
- Click on "Develop" at the top
- Go to "Build App" and select "Meeting SDK"
- Download the Linux version of the SDK
- Extract the downloaded file
- Copy the contents to the
lib/zoomsdk
folder in the project:
# Create the directory if it doesn't exist
mkdir -p lib/zoomsdk
# Copy the files (adjust the path to where you extracted the SDK)
cp -r /path/to/extracted/sdk/* lib/zoomsdk/
You need Zoom SDK credentials to use this bot:
- In your web browser, go to Zoom Developer Portal
- Sign in with your Zoom account
- Click "Build App" and choose "Meeting SDK"
- Name your app and create it
- Copy the Client ID and Client Secret
Now set up the configuration file:
# Copy the sample config
cp sample.config.toml config.toml
# Edit the config file
nano config.toml
In the editor, add your Client ID and Client Secret, and either a join URL or meeting ID and password:
# Zoom Meeting SDK Client ID
client-id="your_client_id_here"
# Zoom Meeting SDK Client Secret
client-secret="your_client_secret_here"
# Use a join-url or a meeting-id and password
join-url="https://zoom.us/j/1234567890?pwd=abcdefg"
# OR
# meeting-id="1234567890"
# password="abcdefg"
[RawAudio]
file="meeting-audio.pcm"
Save and exit the editor (in nano: press Ctrl+O, then Enter, then Ctrl+X).
Now you can build and run the bot:
# Start the Docker container
docker compose up
This will build the code and start the bot. The first time might take a while as it downloads and installs everything needed.
- The bot will connect to the Zoom meeting you specified
- If configured, it will record audio to a file
- You can see logs in the terminal showing what's happening
If something goes wrong:
- Check that your Client ID and Secret are correct
- Make sure your meeting ID and password (or join URL) are valid
- Check the Docker logs for any error messages
To use this Zoom Meeting SDK application to join meetings outside your own workspace, you need proper approval from Zoom.
Here's the additional information about Zoom's requirements:
-
Marketplace App Approval:
- You need to create a Zoom Marketplace app
- Your app needs to go through Zoom's review process
- Apps that join meetings programmatically receive extra scrutiny
-
Permissions and Scopes:
- By default, SDK apps can only join meetings within your own Zoom account/organization
- Joining external meetings requires additional permissions that Zoom must explicitly approve
-
Usage Limitations:
- Zoom has strict policies about bots joining meetings without participant consent
- There are rate limits on how many meetings you can join
- Recording meetings may be further restricted
If you're just experimenting or want to join your own meetings, you can use this code with a developer account. However, if you want to use this bot to join meetings hosted by others:
- You'll need to submit your app for review in the Zoom Marketplace
- Clearly explain your use case to Zoom
- Wait for approval before deploying it
- Follow Zoom's terms of service regarding recordings and participation