🔄 Luồng phiên sạc (Remote Start → Meter Values → Remote Stop)
sequenceDiagram
participant Partner as Đối tác
participant ZIOT as ZIOT Server
participant CP as Trụ sạc
%% HTTP - Remote Start
Partner->>ZIOT: HTTP POST /remote-start
ZIOT->>CP: OCPP StartTransaction
CP-->>ZIOT: Accepted (transactionId)
ZIOT-->>Partner: sessionId
%% WebSocket Subscribe
Partner->>ZIOT: WebSocket Connect
Partner->>ZIOT: Subscribe (chargePointId)
%% Meter Value Realtime
loop Trong quá trình sạc
CP->>ZIOT: OCPP MeterValues
ZIOT-->>Partner: meter_value (WebSocket or Webhook)
end
%% HTTP - Remote Stop
Partner->>ZIOT: HTTP POST /remote-stop
ZIOT->>CP: OCPP StopTransaction
CP-->>ZIOT: Accepted
ZIOT-->>Partner: Session Stopped
%% HTTP - Complete Session
Partner->>ZIOT: HTTP POST /complete
ZIOT-->>Partner: Session Completed