LiveKit agent service calls now gracefully handle errors instead of throwing exceptions.
`listAgents` and `getAgent` return sensible defaults (empty array, undefined) on failure, preventing disruption to calling services. `stopAgent` now logs errors during deletion without halting the process.
An early exit condition is also added in the AI assistant service to prevent unnecessary processing if no agents are found, further improving resilience.
Increases the sleep duration in room deletion test helpers from 1 second to 5 seconds. This ensures that webhooks triggered by room deletion have enough time to process before test execution continues, addressing intermittent test failures caused by premature assertions. This is a temporary measure to improve test stability.
- Add OpenAPI components for creating and responding to AI assistant requests.
- Implement AI assistant service for managing live captions capability.
- Create routes and controllers for AI assistant operations (create and cancel).
- Introduce request validation middleware for AI assistant requests.
- Update Redis helper to manage AI assistant locks.
- Integrate AI assistant cleanup in webhook service.
- Enhance LiveKit service to manage agent dispatch for AI assistants.
- Update token service to remove unnecessary parameters related to captions.
- Add typings for AI assistant requests and responses.
Overhauls the room configuration step, now titled "Room Features", to improve clarity and organization.
Transitions from a card-based layout to a categorized, list-style presentation, grouping features under sections like 'Security', 'Communication', and 'Experience'. Updates the HTML template and SCSS styling to reflect this new structure and removes the unused `MatCardModule`.
Adjusts the wizard state service to ensure the "Room Features" step is the initial active step when editing a room.
Replaces the 'Role Permissions' step with a comprehensive 'Room Access' step, centralizing all related configurations.
This new step allows users to define:
- General room access policies (anonymous moderator/speaker, registered users).
- Detailed role-based permissions for Moderator and Speaker.
- Specific room members to be added with their roles during room creation.
Pending members are now collected within the wizard and subsequently created using the RoomMemberService after the room is successfully established, including robust error handling for member creation.
- Implemented RoomMembersListComponent for displaying room members in a Material Design table.
- Added SCSS styles for the room members list and its associated elements.
- Created AddRoomMemberComponent for adding new members to a room with role and permission configuration.
- Integrated user search functionality with autocomplete in the AddRoomMemberComponent.
- Updated RoomDetailComponent to utilize the new RoomMembersListComponent for displaying members.
- Defined routing for adding room members.
- Enhanced overall user experience with loading states and error handling.
- Updated the MeetRoom interface to replace anonymous access configuration with a unified access configuration.
- Refactored RoomService to handle access configuration for both anonymous and registered users.
- Modified tests to reflect changes in access configuration structure.
- Updated frontend components to use the new access configuration for meeting URLs and permissions.
- Ensured backward compatibility by adjusting API endpoints and request/response types.
Updates the Express dependency to version 5.2.1 and its corresponding types.
This change also adapts the request validator middleware to extract validated query parameters and store them in `res.locals` instead of modifying `req.query` to align with Express v5's intended usage and prevent potential conflicts.
Includes a fix for a server startup error, logging the error and exiting the process, and adds a type definition file for Express locals.
Updates several backend dependencies to their latest versions.
This includes updates to AWS S3 client, Azure storage blob,
Google Cloud Storage, and body-parser, potentially bringing
bug fixes, performance improvements, and new features.
Implements users list, reset password dialog and create user page.
This enhancement provides the necessary UI components and services
to manage users within the application, including listing,
creating, and resetting passwords.
The user list component supports filtering, sorting, and bulk
actions. The reset password dialog allows administrators to reset
user passwords. The create user page enables the creation of new
user accounts with specific roles.