@startuml Isolated UF Adjustment participant TD as TD participant SW as SW participant UI as UI actor USER as US 'Possible actions and interaction types ' TD -> SW: MSG: Message ' SW -> TD: MSG: Message ' SW -> UI: CMD: command ' UI -> SW: ACT: Action ' US -> UI: User actions are: ' ENT: User enters a value or string ' TCH: User touches a button (RadioButton, CheckBox, ...) ' SET: User sets/slides a slider ' SCL: User scrolls a flipable area ' 'Messages conventions: '[x \n ,] '[x \n ,# certain amount of parameters according to the content] '[x \n ,X The rest of the parameters do not matter.] == Open Ultrafiltration Adjustment Screen == US -> UI: TCH: Click Ultrafiltration Adjustment Button UI -> US: ACT: Open Ultrafiltration Adjustment Start Screen == Isolated UF - Adjustment == US -> UI: TCH: Click Edit Isolated UF Button UI -> US: ACT: Open Adjust Isolated UF Duration Screen US -> UI: SET: Change Isolated UF Duration US -> UI: TCH: Click Continue Button UI -> SW: ACT: User Requested Isolated UF Duration Adjustment SW -> TD: MSG: Isolated UF Duration Change Request [x9B: Req #1]\n\ \t(U32) duration alt accepted TD -> SW: MSG: [x9C: Rsp #3] Isolated UF Duration Change Response\n\ \t(U32) accepted=1\n\ \t(U32) rejectionReason=X\n\ \t(U32) volumeGoalMax SW -> UI: CMD: Isolated UF Duration Change Adjustment Triggered UI -> US: ACT: Open Adjust Isolated UF Volume Goal Screen US -> UI: SET: Change Isolated UF Volume Goal US -> UI: TCH: Click Continue Button UI -> SW: ACT: User Requested Isolated UF Volume Goal Adjustment SW -> TD: MSG: Isolated UF Volume Goal Change Request [x9D: Req #2]\n\ \t(U32) duration\n\ \t(U32) volumeGoal alt accepted TD -> SW: MSG: [x9E: Rsp #5] Isolated UF Volume Goal Change Response\n\ \t(U32) accepted=1\n\ \t(U32) rejectionReason=X\n\ \t(U32) volumeGoal\n\ \t(U32) duration\n\ \t(U32) rate SW -> UI: CMD: Isolated UF Volume Goal Change Adjustment Triggered UI -> US: ACT: Open Isolated UF Adjustment Confirm Screen US -> UI: TCH: Click Confirm Button UI -> SW: ACT: User Confirmed Isolated UF Adjustment SW -> TD: MSG: [x9F: Req #0] Isolated UF Adjustment Confirm Request alt accepted TD -> SW: MSG: [xA0: Rsp #2] Isolated UF Adjustment Confirm Response\n\ \t(U32) accepted=1\n\ \t(U32) rejectionReason=X SW -> UI: CMD: Isolated UF Adjustement Confirm Triggered UI -> US: ACT: Close Ultrafiltration Adjustment Screen else #Pink rejected TD -> SW: MSG: [xA0: Rsp #2] Isolated UF Adjustment Confirm Response\n\ \t(U32) accepted=0\n\ \t(U32) rejectionReason SW -> UI: CMD: Isolated UF Adjustement Confirm Triggered UI -> US: ACT: Display Rejection Reason end else #Pink rejected TD -> SW: MSG: [x9E: Rsp #5] Isolated UF Volume Goal Change Response\n\ \t(U32) accepted=0\n\ \t(U32) rejectionReason\n\ \t(U32) volumeGoal=X\n\ \t(U32) duration=X\n\ \t(U32) rate=X SW -> UI: CMD: Isolated UF Volume Goal Change Adjustment Triggered UI -> US: ACT: Display Rejection Reason end else #Pink rejected TD -> SW: MSG: [x9C: Rsp #3] Isolated UF Duration Change Response\n\ \t(U32) accepted=0\n\ \t(U32) rejectionReason\n\ \t(U32) volumeGoalMax=X SW -> UI: CMD: Isolated UF Duration Change Adjustment Triggered UI -> US: ACT: Display Rejection Reason end @enduml