@startuml

skinparam monochrome true

participant frontend
participant backend
participant PEA

activate PEA


frontend -> backend: Load Module
activate backend
frontend <-- backend: loaded Module
deactivate backend

frontend -> backend: Connect Module
activate backend
backend -> PEA: connect()
backend <-- PEA
frontend <-- backend
backend -> PEA: subscribe to all important variables
...

loop
backend <- PEA: updates
frontend <- backend: Notification via websocket
end
frontend -> backend: Get specific information
frontend <-- backend: Direct response without communication to PEA

...

frontend -> backend: Disconnect module
backend -> PEA: disconnect()
backend <-- PEA
frontend <-- backend
deactivate backend


deactivate PEA

@enduml