Skip to content

Conversation

@purisaurabh
Copy link
Collaborator

No description provided.

@Ashviniv Ashviniv requested a review from Copilot November 14, 2025 11:22
Copilot finished reviewing on behalf of Ashviniv November 14, 2025 11:24
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR enhances meeting URL extraction from Google Calendar events to support scheme-less URLs (e.g., "zoom.us/j/12345") and HTML-escaped text. The key improvements enable the bot to join more meetings by detecting meeting links in various formats.

  • Adds support for extracting scheme-less meeting URLs (e.g., "zoom.us/j/12345") by prepending "https://"
  • Implements HTML unescaping for calendar event fields to handle HTML-encoded content
  • Restructures meeting URL extraction logic with better fallback handling and source tracking

Reviewed Changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.

File Description
attendee/bots/tasks/sync_calendar_task.py Enhanced extract_meeting_url_from_text to handle scheme-less URLs and HTML-escaped content; refactored _remote_event_to_calendar_event_data for better URL extraction with source tracking
Bot/app/api/meetings.py Duplicates meeting URL extraction logic from sync_calendar_task with HTML unescaping and scheme-less URL support
Bot/Dockerfile Reduces uvicorn workers from 4 to 1
Comments suppressed due to low confidence (2)

attendee/bots/tasks/sync_calendar_task.py:1

  • The test test_scheme_less_url expects scheme-less URLs to return None, but the new implementation now handles scheme-less patterns and returns a valid URL. This test will fail and needs to be updated to expect a valid URL like https://zoom.us/j/123456789 instead of None.
import copy

attendee/bots/tasks/sync_calendar_task.py:1

  • The test test_mixed_case_scheme_and_host expects mixed-case URLs to return None, but with the new re.IGNORECASE flag on URL_CANDIDATE, this should now successfully match and return a URL. This test needs to be updated to reflect the new behavior.
import copy

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants