24 lines
790 B
Plaintext
24 lines
790 B
Plaintext
@startuml
|
|
actor Guardian
|
|
actor User
|
|
participant "GuardianPairingScreen" as GUI
|
|
participant "PairingController" as Controller
|
|
participant "PairingService" as Service
|
|
database "PostgreSQL" as DB
|
|
participant "FcmService" as FCM
|
|
|
|
Guardian -> GUI : input uniqueUserId
|
|
GUI -> Controller : POST /shared/pairing/invite
|
|
Controller -> Service : inviteUser(guardianId, uniqueUserId)
|
|
Service -> DB : validate and create PENDING relation
|
|
Service -> FCM : notify user
|
|
Service --> Controller : PairingStatusResponse
|
|
Controller --> GUI : invite status
|
|
|
|
User -> Controller : POST /shared/pairing/respond
|
|
Controller -> Service : respondToPairing(userId, pairingId, accept)
|
|
Service -> DB : update ACTIVE/REJECTED
|
|
Service -> DB : seed default AI/voice/shortcut configs
|
|
Service -> FCM : notify guardian
|
|
@enduml
|