An automated tool that monitors a specific WhatsApp Web chat for meeting links (Zoom or Google Meet), extracts the details, and automatically joins the meeting using the browser.
Warning
Disclaimer: Use this tool at your own risk. Automating interactions on platforms like WhatsApp, Zoom, and Google Meet may violate their Terms of Service. The developers are not responsible for any account bans, suspensions, or other negative consequences that may arise from using this software.
- Google Chrome browser
- Python 3.8+
First, download the code to your computer:
git clone https://github.com/AliHaSSan-13/WhatsApp-Meeting-Automator.git
cd WhatsApp-Meeting-AutomatorIf you don’t have Git installed: Download it as a ZIP from this link
https://github.com/AliHaSSan-13/WhatsApp-Meeting-Automator/archive/refs/heads/main.zip
Extract it
Open the extracted folder in your terminal
To allow the automator to interact with your browser, you must launch Google Chrome with the remote debugging port enabled (9222). We also use a dedicated "Automation Profile" to keep your daily browsing separate and ensure clean sessions.
Close any running instances of Chrome, then run the appropriate command for your OS in the terminal:
google-chrome --remote-debugging-port=9222 --user-data-dir="$HOME/chrome-automation-profile""C:\Program Files\Google\Chrome\Application\chrome.exe" --remote-debugging-port=9222 --user-data-dir="%LOCALAPPDATA%\Google\Chrome\AutomationProfile"/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222 --user-data-dir="$HOME/Library/Application Support/Google/Chrome/AutomationProfile"- In the Chrome instance that just opened, navigate to WhatsApp Web.
- Scan the QR code with your phone to log in (you will only need to do this once for the automation profile).
- Click on the specific chat (contact or group) where you expect to receive the links.
- Important: Wait for the chat to fully load and ensure the chat messages are visible on the screen before proceeding.
- Important: Don't touch or scroll the browser after the bot starts.
Open the config.yaml file in the project directory and set your preferences:
whatsapp:
target_chat: "<CHAT NAME>" # The exact name of the chat or group
name:
display_name: "<YOUR NAME>" # Your desired name for both Zoom & Meet
zoom:
auto_join: true # Automatically join Zoom meetings
meet:
auto_join: true # Automatically join Google Meet meetingsIn a new terminal window, navigate to the project directory and set up the environment:
-
Initialize the virtual environment:
python3 -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate
-
Install requirements:
pip install -r requirements.txt playwright install chromium
-
Run the main script:
python main.py
- Monitors: The script connects to your active Chrome session via CDP. It injects a reliable
MutationObserver+ Fallback Scanner to monitor the specific WhatsApp chat for new incoming messages in real-time. - Parses: When a message is received, powerful Regex patterns detect if it's a Zoom or Google Meet link.
- Joins:
- Zoom: Opens a new tab directly to the Zoom Web Client, handles permission dialogs, and enters your display name.
- Google Meet: Opens a new tab, handles mic/cam dismissals, and clicks "Join now" or "Ask to join".
- Resets: The script switches focus back to the WhatsApp tab, ready for the next meeting.
Connection refusederror: Ensure Chrome was started with the commands in step 1. Check Task Manager to kill any lingering Chrome processes.- Bot misses messages: Ensure the WhatsApp chat is actively selected and fully loaded.
- Duplicate joins: The bot has a built-in cache to prevent joining the exact same meeting ID multiple times in a single session.