Skip to content
Documentation Menu

Extended Trigger Message

Source: OCPP 1.6 Security Whitepaper Edition 2 (2020-03-31) — Sections 5.5 / 5.6 (Messages), referenced from Use Cases A02, L01, N01

Overview

ExtendedTriggerMessage is the OCPP 2.0.1 TriggerMessage ported back into OCPP 1.6 security extension. It was renamed from TriggerMessage because the original name conflicts with the OCPP 1.6 message of the same name.

The Central System uses ExtendedTriggerMessage.req to ask the Charge Point to send a Charge Point-initiated message on demand. Compared to the legacy TriggerMessage, ExtendedTriggerMessage adds support for the new security messages introduced by this whitepaper:

  • LogStatusNotification — current upload status of a security/diagnostics log.
  • FirmwareStatusNotification — current state of the secure firmware update (i.e. SignedFirmwareStatusNotification.req).
  • SignChargePointCertificate — triggers the CP to send a SignCertificate.req(certificateType: ChargePointCertificate) (used in A02).

For all other values (BootNotification, Heartbeat, MeterValues, StatusNotification) the behaviour matches the OCPP 1.6 TriggerMessage.

The CP SHALL first send the ExtendedTriggerMessage.conf, then send the requested message if the status is Accepted. If the requested message is unknown or not implemented, the CP SHALL return NotImplemented.

Sequence Diagram

Central System  ──── ExtendedTriggerMessage.req ────▶  Charge Point
                     (requestedMessage, connectorId?)
Central System  ◀─── ExtendedTriggerMessage.conf ────  Charge Point
                     (status)
                ◀─── <triggered message>.req

Initiator

Central System → Charge Point

Fields

Field NameField TypeCard.Description
requestedMessageMessageTriggerEnumType1..1Required. Type of the message to be triggered.
connectorIdinteger (> 0)0..1Optional. Only filled in when request applies to a specific connector.

MessageTriggerEnumType values

  • BootNotification — triggers BootNotification.req.
  • LogStatusNotification — triggers LogStatusNotification.req.
  • FirmwareStatusNotification — triggers SignedFirmwareStatusNotification.req (the secure firmware update flow introduced by this whitepaper).
  • Heartbeat — triggers Heartbeat.req.
  • MeterValues — triggers MeterValues.req.
  • SignChargePointCertificate — triggers SignCertificate.req with certificateType: ChargePointCertificate.
  • StatusNotification — triggers StatusNotification.req.

TriggerMessageStatusEnumType values

  • Accepted — Requested message will be sent.
  • Rejected — Requested message will not be sent.
  • NotImplemented — Requested message cannot be sent because it is either not implemented or unknown.

Examples

{
  "requestedMessage": "SignChargePointCertificate"
}

Schema

Source: schemas/ExtendedTriggerMessage.json, schemas/ExtendedTriggerMessageResponse.json (OCPP 1.6 Security Whitepaper, JSON Schema draft-06)

Request schema (JSON Schema)
Response schema (JSON Schema)