A Chrome extension that monitors Google Calendar for upcoming meetings with Google Meet links and provides an "incoming call" experience to join meetings automatically.
This extension transforms how you join Google Meet meetings by:
- Monitoring your Google Calendar for upcoming meetings
- Displaying a phone-like incoming call screen when a meeting is about to start
- Allowing you to answer (join), decline, or snooze the meeting notification
- Running in the background so you never miss an important call
- Calendar Integration: Authenticates with Google Calendar API and polls for upcoming events every 30 seconds
- Meet Link Detection: Automatically identifies events with Google Meet links
- "Incoming Call" Experience:
- Full-screen overlay with phone call interface
- Authentic ringtone
- Meeting information display (title, time, participants)
- Action buttons (Answer/Decline/Snooze)
- Background Monitoring:
- Only triggers for meetings you've accepted
- Anti-spam protection (max 1 notification per meeting)
- Auto-dismisses after 2 minutes if not interacted with
- Visit the Chrome Web Store
- Search for "Google Calendar Callback"
- Click "Add to Chrome"
- Clone this repository
- Create a Google Cloud Project and enable the Google Calendar API
- Configure the OAuth consent screen and create OAuth credentials
- Add your OAuth client ID to the
manifest.jsonfile - Open Chrome and navigate to
chrome://extensions - Enable "Developer mode"
- Click "Load unpacked" and select the extension directory
On first run, the extension will:
- Ask you to sign in with your Google account
- Request permission to access your Google Calendar
- Begin monitoring for upcoming meetings
The extension popup allows you to configure:
- Call notification timing (how many minutes before the meeting)
- Auto-join option (automatically open the meeting when answering)
- Ringtone selection
manifest.json # Extension configuration
background.js # Service worker for background tasks
popup/
├── popup.html # Extension popup UI
├── popup.js # Popup logic
└── popup.css # Popup styling
call-overlay/
├── overlay.html # Full-screen call interface
├── overlay.js # Call handling logic
└── overlay.css # Call UI styling
assets/
├── ring-default.mp3 # Default phone ring sound
├── ring-classic.mp3 # Classic phone ring sound
├── ring-digital.mp3 # Digital ring sound
└── icons/ # Extension icons- Chrome Extensions API (Manifest V3)
- Google Calendar API
- Chrome Identity API for OAuth authentication
- Web Audio API for ringtone handling
This extension:
- Only requests the minimum calendar access needed (
calendar.readonly) - Does not send your data to any third-party servers
- Stores meeting information locally in your browser storage
- Only processes meetings with Google Meet links
See the LICENSE file for details.