OCPP 1.6J Implementation (Central System)

Run com.opitzconsulting.hackathon.Application

Use JVM parameter -Dmicronaut.server.port=8180 in order to change Micronaut HTTP server port so it does not collide with other application running.

Example requests

Websocket client https://www.postman.com/

ws://localhost:8081/ws/CentralSystemService/{chargeBoxId}

chargeBoxId kann zB CB-4711 sein

Boot notification

Request

[
    2,
    "1",
    "BootNotification",
    {
        "chargePointVendor": "ACME",
        "chargePointModel": "WALLBOX"
    }
]

Response

[
    3,
    "1",
    {
        "status": "Accepted",
        "currentTime": "2021-11-10T14:59:52.029Z",
        "interval": 14400
    }
]

Authorize

Request

[
    2,
    "2",
    "Authorize",
    {
        "idTag": "0fc673"
    }
]

Response

[
    3,
    "2",
    {
        "idTagInfo": {
            "status": "Accepted",
            "expiryDate": "2021-11-11T00:00:00.000Z"
        }
    }
]

Start Transaction

Request

[
  2,
  "3",
  "StartTransaction",
  {
    "connectorId": 1,
    "idTag": "0fc673",
    "meterStart": 10000,
    "timestamp": "2021-11-10T14:00:00.000Z"
  }
]

Response

[
    3,
    "4",
    {
        "transactionId": 1,
        "idTagInfo": {
            "status": "Accepted",
            "expiryDate": "2021-11-11T00:00:00.000Z"
        }
    }
]

Stop Transaction

Request

[
  2,
  "4",
  "StopTransaction",
  {
    "idTag": "0fc673",
    "meterStop": 15000,
    "timestamp": "2021-11-10T15:15:00.000Z",
    "transactionId": 1,
    "reason": "EVDisconnected",
    "transactionData": [
      {
        "timestamp": "2021-11-10T14:15:00.000Z",
        "sampledValue": [
          {
            "value": "11000"
          }
        ]
      },
      {
        "timestamp": "2021-11-10T14:30:00.000Z",
        "sampledValue": [
          {
            "value": "12000"
          }
        ]
      },
      {
        "timestamp": "2021-11-10T14:45:00.000Z",
        "sampledValue": [
          {
            "value": "13000"
          }
        ]
      },
      {
        "timestamp": "2021-11-10T15:00:00.000Z",
        "sampledValue": [
          {
            "value": "14000"
          }
        ]
      }
    ]
  }
]

Response

[
    3,
    "4",
    {
        "idTagInfo": {
            "status": "Accepted",
            "expiryDate": "2021-11-10T15:58:25.965Z"
        }
    }
]

Micronaut 3.1.3 Documentation


Feature lombok documentation

Feature reactor documentation

Feature http-client documentation

Feature jax-rs documentation

Feature jetty-server documentation


Swagger REST API documentation