build(deps-dev): apply updates
[e-mobility-charging-stations-simulator.git] / tests / ocpp-server / README.md
index cd6d2e5da178482df7263d6f7b19ac56a3cfd28e..b0ddd9b7d3857c8c15878a2ff43a9b35f766a71b 100644 (file)
@@ -4,23 +4,18 @@ This project includes an Open Charge Point Protocol (OCPP) version 2.0.1 mock se
 
 ## Prerequisites
 
-This project requires Python 3.7+ and the following Python packages:
+This project requires Python 3.7+ and [poetry](https://python-poetry.org/) to install the required packages:
 
-- `websockets`
-- `ocpp`
-
-You can install these packages using pip:
-
-```
-pip install websockets ocpp
+```shell
+poetry install
 ```
 
 ## Running the Server
 
 To start the server, run the `server.py` script:
 
-```
-python server.py
+```shell
+poetry run task server
 ```
 
 The server will start listening for connections on port 9000.
@@ -29,13 +24,27 @@ The server will start listening for connections on port 9000.
 
 ### Server.py
 
-The server script waits for connections from clients. When a client connects, the server creates a new instance of the `ChargePoint` class. This class includes methods for handling various OCPP actions (`BootNotification`,`GetBaseReport`), most of which return a dummy response. The `GetBaseReport` method prints the received request and returns a simple confirmation message.
+The server script waits for connections from clients. When a client connects, the server creates a new instance of the `ChargePoint` class. This class includes methods for handling various OCPP messages, most of which return a dummy response.
+
+The server script uses the `websockets` and `ocpp` libraries to facilitate the implementation.
+
+## Development
 
-The server script uses the websockets and ocpp libraries to facilitate the WebSocket and OCPP communication.
+### Code formatting
+
+```shell
+poetry run task format
+```
+
+### Code linting
+
+```shell
+poetry run task lint
+```
 
 ## Note
 
-Primarily, this software is intended for testing applications. The server scripts don't execute full OCPP adherence and it is advised not to use them in a production environment without additional development.
+Primarily, this software is intended for testing applications. The server script don't adhere to the full OCPP specifications and it is advised not to use them in a production environment without additional development.
 
 For reference:
 https://github.com/mobilityhouse/ocpp