Skip to content

Conversation

@rawandahmad698
Copy link
Collaborator

@rawandahmad698 rawandahmad698 commented Aug 2, 2025

PR Contents

This PR mainly adds support for meeting detection, I have only been able to test it with teams.

I also need to add a settings section for notification permissions, because we need it for meeting detection notifications.
Feel free to test the integration with Zoom or Google Meet. I suspect the titles remain as is.

There was also an issue with the app icon square. Fixed that too using Squircle app.

image

Detection Screens:
image

Tapping the notification auto selects app:

image

Obviously I am not a dev ops expert, so I have used AI to create some much needed workflows for future PRs

@rawandahmad698 rawandahmad698 requested a review from Copilot August 2, 2025 19:22

This comment was marked as outdated.

@rawandahmad698 rawandahmad698 requested a review from Copilot August 2, 2025 19:42
Copy link
Contributor

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 introduces comprehensive meeting detection functionality for Teams, Zoom, and Google Meet, along with a new settings interface. The implementation monitors window titles to automatically detect active meetings and notify users, with options to auto-select the meeting app for recording.

Key changes include:

  • Added meeting detection service with pattern-based window title matching
  • Introduced a new "Meeting Detection" settings tab with permission management
  • Implemented notification system for meeting start/end events
  • Added app auto-selection coordination when meetings are detected

Reviewed Changes

Copilot reviewed 48 out of 99 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
RecapTests/Services/MeetingDetection/MeetingDetectionServiceSpec.swift Test suite for meeting detection service functionality
Recap/Services/MeetingDetection/Core/* Core meeting detection service and protocol definitions
Recap/Services/MeetingDetection/Detectors/* Platform-specific meeting detectors for Teams, Zoom, and Google Meet
Recap/UseCases/Settings/Components/MeetingDetection/* New settings UI components for meeting detection configuration
Recap/UseCases/Home/ViewModel/RecapViewModel+MeetingDetection.swift Meeting detection integration with main app workflow
Recap/Services/Notifications/* Notification service for meeting start/end alerts
Recap/UseCases/AppSelection/Coordinator/* App selection coordination for auto-selection feature
Recap/Helpers/MeetingDetection/MeetingPatternMatcher.swift Pattern matching engine for identifying meeting windows
Comments suppressed due to low confidence (2)

RecapTests/Services/MeetingDetection/MeetingDetectionServiceSpec.swift:135

  • The test sets up a mock expectation but doesn't verify it was called. Consider adding verification with verify(mockAudioProcessController).processes.called(1) to ensure the test validates the expected interaction.
        given(mockAudioProcessController)

Recap/Services/MeetingDetection/Core/MeetingDetectionService.swift:70

  • The stopMonitoring() method sets detectedMeetingApp to nil but doesn't cancel the monitoringTask before setting it to nil. This could leave the task running even after stopping monitoring.
    }

@RecapAI RecapAI deleted a comment from github-actions bot Aug 2, 2025
@RecapAI RecapAI deleted a comment from github-actions bot Aug 2, 2025
@RecapAI RecapAI deleted a comment from github-actions bot Aug 2, 2025
@RecapAI RecapAI deleted a comment from github-actions bot Aug 2, 2025
@RecapAI RecapAI deleted a comment from github-actions bot Aug 2, 2025
@RecapAI RecapAI deleted a comment from github-actions bot Aug 2, 2025
@RecapAI RecapAI deleted a comment from github-actions bot Aug 2, 2025
@RecapAI RecapAI deleted a comment from github-actions bot Aug 2, 2025
@rawandahmad698 rawandahmad698 merged commit 680e36b into main Aug 2, 2025
2 of 6 checks passed
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