test(ocpp-server): add task to run server
[e-mobility-charging-stations-simulator.git] / tests / ocpp-server / README.md
... / ...
CommitLineData
1# OCPP2 Mock Server
2
3This project includes an Open Charge Point Protocol (OCPP) version 2.0.1 mock server implemented in Python.
4
5## Prerequisites
6
7This project requires Python 3.7+ and [poetry](https://python-poetry.org/) to install the required packages:
8
9```shell
10poetry install
11```
12
13## Running the Server
14
15To start the server, run the `server.py` script:
16
17```shell
18poetry run task server
19```
20
21The server will start listening for connections on port 9000.
22
23## Overview of the Server Scripts
24
25### Server.py
26
27The 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.
28
29The server script uses the websockets and ocpp libraries to facilitate the WebSocket and OCPP communication.
30
31## Development
32
33### Code formatting
34
35```shell
36poetry run task format
37```
38
39### Code linting
40
41```shell
42poetry run task lint
43```
44
45## Note
46
47Primarily, 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.
48
49For reference:
50https://github.com/mobilityhouse/ocpp