@startuml
actor Medewerker
actor Klant
participant Zaaksysteem
participant KTB as "Klanten, Taken & Berichten "
participant "Afhandelcomponent"
participant MijnOmgeving

Medewerker -> Zaaksysteem: Maak verzoek tot aanvulling aan (extra document)
Zaaksysteem -> KTB: Schrijf taak weg in Takenregister (Zaakspecifiek voorkeurskanaal in extraData-veld)
KTB -> "Afhandelcomponent": Stuur event "Nieuwe taak" naar Afhandelcomponent
"Afhandelcomponent" -> KTB: Haalt taak op uit Takenregister 
"Afhandelcomponent" -> KTB: Haalt klant op uit het Klantenregister (tbv Voorkeurskanaal als niet gevuld in taak)
"Afhandelcomponent" -> Klant: Verstuur bericht via voorkeurskanaal
"Afhandelcomponent" -> KTB: Sla bericht op in Berichtenregister

Klant -> MijnOmgeving: Log in op MijnOmgeving
MijnOmgeving -> KTB: Haal taak op uit Takenregister
Klant -> MijnOmgeving: Voer taak uit door document te uploaden
MijnOmgeving -> KTB: Update taakstatus in Takenregister naar "gesloten"
MijnOmgeving -> Zaaksysteem: Voeg document toe aan Zaaksysteem
@enduml
