IAV-255/feat: Implement Agent Language Configuration Management
Overview
This MR introduces language configuration management for customer care agents, allowing dynamic control over supported languages and automatic language detection.
Changes
New Features
-
GET
/{agentUid}/language-config- Retrieve agent language configuration -
PUT
/{agentUid}/language-config- Update agent language settings
Core Functionality
-
Auto Language Detection Mode
- Toggle automatic language detection on/off
- When enabled, no language configuration required
-
Manual Language Configuration
- Configure multiple supported languages
- Set one language as default
- Automatic ISO code normalization to lowercase
Validation Rules
- Minimum one language required when auto-detection disabled
- Default language ISO code must exist in languages list
- No duplicate ISO codes allowed (case-insensitive)
- No duplicate language names allowed (case-insensitive)
- Default language ISO code required when auto-detection disabled
Technical Details
- DTOs implemented with Swagger documentation
- Comprehensive validation using Jakarta Validation
- Transaction management for data consistency
- Detailed logging for audit trail
- Proper error handling with FunctionalException
Closes IAV-255