Skip to main content

Crate ocpp_service

Crate ocpp_service 

Source
Expand description

OCPP Charging Station Management System microservice.

  • /<prefix>/<identity> (OCPP listeners, plain and/or TLS): OCPP-J 1.6, 2.0.1 and 2.1 over WebSocket.
  • /api/v1/... (API listener): station registry, search, commands.

Modules§

api
Internal HTTP API used by the rest of the platform.
auth
Charging-station authentication: HTTP Basic (OCPP Security Profiles 1 and 2).
calls
Sending a validated CALL to a connected station and mapping the outcome.
config
Configuration from environment variables.
db
PostgreSQL access. Queries are plain SQL checked by the integration tests (no compile-time database connection required).
error
HTTP API error type.
hub
Registry of the station connections held by this node.
ocpp
OCPP-J endpoint: handshake, per-connection session and the handlers of each OCPP version. Version modules are fully separate; they only share the version-neutral persistence helpers of StationCtx.
reservation
Reservations (OCPP 1.6 §3.11, §5.1, §5.13; OCPP 2.x H01–H04).
server
Accept loop for the OCPP listeners (plain and TLS).
smart
Smart charging (OCPP 1.6 §3.13 / Smart Charging profile, OCPP 2.x block K).
state
tariff
Tariff and cost (OCPP 2.0.1 block I, OCPP 2.1 block I).
tls
TLS for the OCPP endpoint (OCPP 2.0.1/2.1 Part 2 §A00, OCPP 1.6 security whitepaper).
tz
IANA time zones from the system zoneinfo database (TZif files, RFC 8536), including the POSIX TZ footer rule used for instants after the last listed transition. Needed because OCPP 2.1 tariff conditions are expressed in station local time, following daylight saving time (I12.FR.37).

Structs§

Listeners

Functions§

build_state
Builds the shared state. Run migrations before calling.
ocpp_router
serve
Serves all listeners until shutdown resolves.