Fix exit conditions at startup
[e-mobility-charging-stations-simulator.git] / README.md
index 9b18fed95d7df25bed80c712f6f87f09b9adff22..f59641624e92b696cfbb72730f4ea5531efd34b3 100644 (file)
--- a/README.md
+++ b/README.md
@@ -49,8 +49,9 @@ Tweak them to your needs by following the section [configuration files syntax](R
 
 To start the program, run: `npm start`.
 
-To start the program with a UI controller, run: `npm run start:server`.
-Then, start/stop the simulator by going to `https://<hostname:port>` in a browser. Localhost port will default to 8080. For Cloud Foundry, the port is assigned based on the `process.env.PORT` environment variable.
+## Start Web UI
+
+See Web UI [README.md](src/ui/web/README.md) for more information.
 
 ## Configuration files syntax
 
@@ -383,70 +384,146 @@ All kind of OCPP parameters are supported in a charging station configuration or
 
 ## UI protocol
 
-Protocol to control the simulator via a Websocket protocol
-
-### Version 0.0.1
+Protocol to control the simulator via a Websocket
 
-Set the HTTP header Sec-Websocket-Protocol to `ui0.0.1`
+### Protocol
 
-#### Protocol
+PDU stands for Protocol Data Unit
 
-Request:
+Request:  
 [`uuid`, `ProcedureName`, `PDU`]
 
-`uuid`: String uniquely representing this request
-`ProcedureName`: The procedure to run on the simulator
-`PDU (for Protocol Data Unit)`: The parameters (if any) for said procedure
+`uuid`: String uniquely representing this request  
+`ProcedureName`: The procedure to run on the simulator  
+`PDU`: The parameters for said procedure
 
-Response:
+Response:  
 [`uuid`, `PDU`]
 
-`uuid`: String uniquely linking the response to the request
+`uuid`: String uniquely linking the response to the request  
 `PDU`: Response data to requested procedure
 
+### Version 0.0.1
+
+Set the HTTP header _Sec-Websocket-Protocol_ to `ui0.0.1`
+
 #### Procedures
 
-##### List Charging stations
+##### Start Simulator
+
+Request:  
+`ProcedureName`: 'startSimulator'  
+`PDU`: {}
+
+Response:  
+`PDU`: {  
+`status`  
+}
+
+##### Stop Simulator
 
-Request:
-`ProcedureName`: 'listChargingStation'
+Request:  
+`ProcedureName`: 'stopSimulator'  
 `PDU`: {}
 
-Response:
-`PDU`: {
-`status`,
-An array of ChargingStationData as described in `ChargingStationWorker.ts` file
+Response:  
+`PDU`: {  
+`status`  
+}
+
+##### List Charging Stations
+
+Request:  
+`ProcedureName`: 'listChargingStations'  
+`PDU`: {}
+
+Response:  
+`PDU`: {  
+`status`,  
+`index`: ChargingStationData,  
+...  
+`index`: ChargingStationData  
 }
 
 ##### Start Transaction
 
-Request:
-`ProcedureName`: 'startTransaction'
-`PDU`: {
-`hashId`: the unique identifier of a chargingStation
-`connectorId`: the id of the connector (start at 1)
-`idTag`: An allowed badge authetification ID
+Request:  
+`ProcedureName`: 'startTransaction'  
+`PDU`: {  
+`hashId`: the unique identifier of a charging station  
+`connectorId`: the id of the connector  
+`idTag`: the RFID tag  
 }
 
-Response:
-`PDU`: {
-`status`,
-**null**
+Response:  
+`PDU`: {  
+`status`  
 }
 
 ##### Stop Transaction
 
-Request:
-`ProcedureName`: 'stopTransaction'
-`PDU`: {
-`hashId`: the unique identifier of a chargingStation
-`transactionId`: the id of the transaction
+Request:  
+`ProcedureName`: 'stopTransaction'  
+`PDU`: {  
+`hashId`: the unique identifier of a charging station  
+`transactionId`: the id of the transaction  
+}
+
+Response:  
+`PDU`: {  
+`status`  
+}
+
+##### Start Charging Station
+
+Request:  
+`ProcedureName`: 'startChargingStation'  
+`PDU`: {  
+`hashId`: the unique identifier of a charging station  
+}
+
+Response:  
+`PDU`: {  
+`status`  
+}
+
+##### Stop Charging Station
+
+Request:  
+`ProcedureName`: 'stopChargingStation'  
+`PDU`: {  
+`hashId`: the unique identifier of a charging station  
+}
+
+Response:  
+`PDU`: {  
+`status`  
+}
+
+##### Open Connection
+
+Request:  
+`ProcedureName`: 'openConnection'  
+`PDU`: {  
+`hashId`: the unique identifier of a charging station  
+}
+
+Response:  
+`PDU`: {  
+`status`  
+}
+
+##### Close Connection
+
+Request:  
+`ProcedureName`: 'closeConnection'  
+`PDU`: {  
+`hashId`: the unique identifier of a charging station  
 }
 
-Response:
-`PDU`: {
-`status`,
-**null**
+Response:  
+`PDU`: {  
+`status`  
 }
 
 ## Support, Feedback, Contributing