How golamrabbanyshikder/gms-gateway-service works
GMS Gateway is the client-facing edge for the Global Medical System: it centralizes JWT validation and routes traffic to backend, file, and biometric services. The repository also contains MVC workflows for authentication, patient records, and appointments, including voice-assisted booking. Sampled controller code confirms calls to backend and biometric clients and the booking-to-audit/confirmation actions; README documents proxy routing. Some controller and routing implementation details were not sampled, so uncertain wiring is omitted.
Main entry points: BookingViewController.java Appointment booking · GatewayServiceApplication.java Gateway app · BackendServiceClient.java Backend client · PatientBookingController.java Patient booking
Components 23
Gateway and security
- Gateway app
src/main/java/com/gms/gateway/GatewayServiceApplication.java - JWT security
src/main/java/com/gms/gateway/config/SecurityConfig.java - JWT provider
src/main/java/com/gms/gateway/config/JwtTokenProvider.java - Login flows
src/main/java/com/gms/gateway/controller/AuthController.java - Authentication
src/main/java/com/gms/gateway/service/AuthService.java - User accounts
src/main/java/com/gms/gateway/repository/UserRepository.java
Care workflows
- Appointment booking
src/main/java/com/gms/gateway/controller/BookingViewController.java - Patient booking
src/main/java/com/gms/gateway/controller/PatientBookingController.java - Patient records
src/main/java/com/gms/gateway/controller/PatientViewController.java - Booking confirmation
src/main/java/com/gms/gateway/service/AppointmentConfirmationService.java
Voice intake
- Voice extraction
src/main/java/com/gms/gateway/service/VoiceIntakeService.java - Transcript translation
src/main/java/com/gms/gateway/service/BanglaToEnglishTranslator.java - Audio transcription
src/main/java/com/gms/gateway/service/WhisperTranscriptionService.java - Speech synthesis
src/main/java/com/gms/gateway/service/TtsService.java
Service integrations
- Backend client
src/main/java/com/gms/gateway/client/BackendServiceClient.java - Backend service
- Biometric client
src/main/java/com/gms/gateway/client/BiometricServiceClient.java - Biometric service
- File service
- Audit client
src/main/java/com/gms/gateway/client/AuditClient.java
Other components
- Web client
- OpenAI Whisper
- Google TTS
Connections 25
- Web client → Gateway app: sends requests
- Gateway app → JWT security: validates edge auth
- JWT security → JWT provider: checks tokens
- JWT security → User accounts: loads user details
- Web client → Login flows: submits login
- Login flows → Authentication: authenticates
- Authentication → User accounts: looks up account
- Appointment booking → Backend client: books and queries
- Patient booking → Backend client: books and queries
- Patient records → Backend client: manages records
- Patient records → Biometric client: enrolls face
- Backend client → Backend service: routes API calls
- Biometric client → Biometric service: sends biometric requests
- Gateway app → File service: proxies file routes
- Gateway app → Biometric service: proxies biometric routes
- Gateway app → Backend service: proxies other routes
- Appointment booking → Audit client: logs booking
- Appointment booking → Booking confirmation: notifies confirmation
- Appointment booking → Voice extraction: extracts transcript
- Patient booking → Voice extraction: extracts transcript
- Patient booking → Audio transcription: transcribes audio
- Appointment booking → Audio transcription: transcribes audio
- Voice extraction → Transcript translation: translates and extracts
- Audio transcription → OpenAI Whisper: requests transcription
- Speech synthesis → Google TTS: fetches audio chunks