-
Notifications
You must be signed in to change notification settings - Fork 31
Add Meeting Detection for Teams, Zoom, Google Meet #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Co-authored-by: Copilot <[email protected]>
Co-authored-by: Copilot <[email protected]>
…wift Co-authored-by: Copilot <[email protected]>
…ionSettingsViewModel.swift Co-authored-by: Copilot <[email protected]>
…s.swift Co-authored-by: Copilot <[email protected]>
…d698/Recap into add-meeting-detection
There was a problem hiding this 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.
}
Recap/UseCases/Settings/ViewModels/MeetingDetection/MeetingDetectionSettingsViewModel.swift
Outdated
Show resolved
Hide resolved
Recap/UseCases/Settings/Components/MeetingDetection/MeetingDetectionView.swift
Show resolved
Hide resolved
…wift Co-authored-by: Copilot <[email protected]>
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.
Detection Screens:

Tapping the notification auto selects app:
Obviously I am not a dev ops expert, so I have used AI to create some much needed workflows for future PRs