Skip to content

Office: refactor livekit logic #9679

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

Open
wants to merge 14 commits into
base: develop
Choose a base branch
from
Open

Office: refactor livekit logic #9679

wants to merge 14 commits into from

Conversation

utkaka
Copy link
Contributor

@utkaka utkaka commented Aug 15, 2025

  • LiveKit related code was moved to a separate class to separate it from the general office logic (still in progress though).
  • There was a lot of duplicate code in Room.svelte and VideoPopup.svelte, which was moved to the new ParticipantsListView.svelte and ParticipantView.svelte components.
  • Added a participant's poor connection indicator.
image
  • Added reactions to meetings.
image
  • Added a notification that the user is left alone in the room. If they do not react to this notification, they will be automatically disconnected
image
  • Updated livekit-client to 2.15.5

@utkaka utkaka marked this pull request as ready for review August 18, 2025 02:50
@utkaka utkaka requested a review from Copilot August 18, 2025 04:00
Copy link
Contributor

@Copilot 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 refactors the LiveKit video conferencing integration by extracting connection management into a dedicated LiveKitClient class, improving code organization and adding several meeting experience enhancements. Key changes include separating LiveKit logic from general office functionality, eliminating duplicate code between components, and introducing user experience improvements for meetings.

  • Centralized LiveKit connection management through a new LiveKitClient class
  • Refactored participant views into reusable components ParticipantsListView and ParticipantView
  • Added meeting enhancements: poor connection indicators, emoji reactions, and auto-disconnect notification when alone

Reviewed Changes

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

Show a summary per file
File Description
plugins/love-resources/src/liveKitClient.ts New LiveKit client class for centralized connection management and meeting lifecycle
plugins/love-resources/src/utils.ts Refactored to use centralized LiveKit client, removed duplicate logic
plugins/love-resources/src/components/meeting/ParticipantView.svelte New reusable participant view component with connection quality indicators
plugins/love-resources/src/components/meeting/ParticipantsListView.svelte New component for managing participant lists across different views
plugins/love-resources/src/components/meeting/ScreenSharingView.svelte New dedicated screen sharing component
plugins/love-resources/src/components/meeting/Reaction.svelte New reaction animation component for emoji reactions
plugins/love/src/plugin.ts Added new sound asset for meeting end notifications
plugins/love-resources/package.json Updated livekit-client dependency to 2.15.5

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

utkaka added 2 commits August 18, 2025 11:31
Signed-off-by: Anton Alexeyev <[email protected]>
Signed-off-by: Anton Alexeyev <[email protected]>
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.

1 participant