Skip to content

Implementation Details

Current Repo Behaviour

  • VDV463CMSSocketHandler.run() accepts a WebSocket connection, receives JSON messages, validates them as MessageStructure, and returns either confirmation or error envelopes.
  • message_handler() currently has successful runtime paths for:
  • BootNotification requests, returning BootNotificationResponse(status=Accepted).
  • ProvideChargingRequests requests, returning ProvideChargingRequestsResponse().
  • Invalid or malformed messages are mapped to ErrorResponse payloads and returned with messageType = Error.
  • docs_router generates the AsyncAPI document exposed at /vdv463/docs/asyncapi.

Documented But Not Fully Implemented Here

  • TLS, HTTP Basic Authentication, and subprotocol enforcement during the WebSocket handshake.
  • Persistent session handling, request correlation, or orchestration with external depot systems.
  • An externally callable CMS workflow for originating ProvideChargingInformation updates.
  • The full acknowledgement loop for ProvideChargingInformation confirmations described in the protocol docs.

Documentation Workflow

  • make asyncapi regenerates ./schema/asyncapi.yaml and the static viewer in docs/VDV463/asyncapi/.
  • The viewer generation step uses a pinned AsyncAPI toolchain in CI: Node 24+, @asyncapi/cli@6.0.0, and @asyncapi/html-template@3.5.5.
  • VDV_463_7_AsyncAPI_Specification.md embeds the generated viewer.
  • VDV_463_8_Schema.md links the raw JSON schema snapshots.
  • make docs builds the MkDocs site for local review.

Supporting Material