Skip to main content

Zoom

Deploy bots to Zoom meetings.

Overview

MeetBot uses Puppeteer to join Zoom meetings via the web client. The bot:

  1. Opens a Chromium browser
  2. Joins via the Zoom web client
  3. Captures screen and audio
  4. Records the meeting

Zoom links follow this pattern:

https://zoom.us/j/MEETING_ID?pwd=PASSWORD

Or with custom subdomains:

https://company.zoom.us/j/MEETING_ID?pwd=PASSWORD

Examples:

  • https://zoom.us/j/1234567890?pwd=abc123
  • https://us02web.zoom.us/j/9876543210

Creating a Zoom Bot

curl -X POST http://localhost:8000/api/v1/bots \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"meetingInfo": {
"platform": "zoom",
"meetingId": "1234567890",
"meetingPassword": "abc123"
},
"botDisplayName": "RecordBot",
"meetingTitle": "Sales Call"
}'

Using Full URL

You can also provide the full URL:

{
"meetingInfo": {
"platform": "zoom",
"meetingUrl": "https://zoom.us/j/1234567890?pwd=abc123"
}
}

The URL is automatically parsed to extract meeting ID and password.

Bot Behavior

Joining

  1. Bot navigates to Zoom web client
  2. Enters meeting ID and password
  3. Enters display name
  4. Clicks "Join" with audio/video disabled

Waiting Room

If the meeting has a waiting room:

  • Bot waits to be admitted
  • Times out after waitingRoomTimeout seconds

Recording

  • Captures shared screens and video
  • Records all audio streams
  • Saves to WebM format

Leaving

Bot leaves when:

  • Host ends the meeting
  • Everyone leaves (after timeout)
  • Manually killed via API

Zoom-Specific Settings

Web Client Requirements

Zoom meetings must allow web client access:

  1. Go to Zoom Settings > In Meeting (Basic)
  2. Enable "Join from browser link"

Waiting Room

If using waiting room:

  • Ensure host admits the bot
  • Or disable waiting room for the meeting

Limitations

  • Web Client Only: Uses Zoom web client (not desktop app)
  • Quality: Web client may have lower quality than native
  • Features: Some Zoom features unavailable via web client
  • Chat: Cannot access meeting chat

Troubleshooting

"Meeting Not Found"

  • Verify meeting ID is correct
  • Check if meeting requires registration
  • Ensure meeting hasn't ended

"Invalid Password"

  • Double-check the password
  • Password may be encoded in the URL - use the full URL

Bot Can't Join

  • Ensure web client is enabled in Zoom settings
  • Check if meeting requires authentication

Best Practices

  1. Enable web client: Ensure Zoom settings allow browser join
  2. Disable waiting room: Or have host ready to admit bot
  3. Use meeting passwords: For security, but provide to bot
  4. Test with different Zoom accounts: Verify compatibility