Messages implementation overview

List of OCPP 2.0.1 Messages, Data Types and Enumerations which are implemented in this library

how to implement a message

  • Add Request and Response structs to /lib/ocpp_model/v20/messages.ex
  • Add any new DataTypes to /lib/ocpp_model/v20/datatypes.ex
  • Add any new EnumTypes to /lib/ocpp_model/v20/enumtypes.ex
  • Add property generators to the correct /test/generators/* modules and the property tests to test/ocpp_model_messages_test.ex
  • Add a callback and handle clause to either the /lib/ocpp_model/v20/behaviours/charger_behaviour.ex or /lib/ocpp_model/v20/behaviours/chargesystem_behaviour.ex
  • Implement the behaviour in either the test Charger or ChargeSystem and write a test for it in either test/ocpp_charger_test.ex or test/ocpp_chargesystem_test.ex
  • run MIX_ENV=test mix all for any test, coverage or linting issues

Messages

Ch = Chargestation, CS = ChargerSystem, CO = Controller

DirectionMessageImplemented
Ch -> CSAuthorizeyes
Ch -> CSBootNotificationyes
CS -> ChCancelReservationyes
CS -> ChCertificateSignedyes
CS -> ChChangeAvailabilityyes
CS -> ChClearCacheyes
CS -> ChClearChargingProfileyes
CS -> ChClearDisplayMessageyes
Ch -> CSClearedChargingLimityes
CS -> ChClearVariableMonitoringyes
CS -> ChCostUpdatedyes
CS -> ChCustomerInformationyes
Ch <> CSDataTransferyes
CS -> ChDeleteCertificateyes
Ch -> CSFirmwareStatusNotificationyes
Ch -> CSGet15118EVCertificateyes
CS -> ChGetBaseReportyes
Ch -> CSGetCertificateStatusyes
CS -> ChGetChargingProfilesyes
CS -> ChGetCompositeScheduleyes
CS -> ChGetDisplayMessagesyes
CS -> ChGetInstalledCertificateIdsyes
CS -> ChGetLocalListVersionyes
CS -> ChGetLogyes
CS -> ChGetMonitoringReportyes
CS -> ChGetReportyes
CS -> ChGetTransactionStatusyes
CS -> ChGetVariablesyes
Ch -> CSHeartbeatyes
CS -> ChInstallCertificateyes
Ch -> CSLogStatusNotificationyes
CS -> ChMeterValuesyes
Ch -> CSNotifyChargingLimityes
Ch -> CSNotifyCustomerInformationyes
Ch -> CSNotifyDisplayMessagesyes
Ch -> CSNotifyEVChargingNeedsyes
Ch -> CSNotifyEVChargingScheduleyes
Ch -> CSNotifyEventno
Ch -> CSNotifyMonitoringReportno
Ch -> CSNotifyReportno
CS -> COPublishFirmwareno
Ch -> CSPublishFirmwareStatusNotificationno
Ch -> CSReportChargingProfilesno
CS -> ChRequestStartTransactionno
CS -> ChRequestStopTransactionno
Ch -> CSReservationStatusUpdateno
CS -> ChReserveNowno
CS -> ChResetyes
Ch -> CSSecurityEventNotificationno
CS -> ChSendLocalListyes
CS -> ChSetChargingProfileyes
CS -> ChSetDisplayMessageno
CS -> ChSetMonitoringBaseno
CS -> ChSetMonitoringLevelno
CS -> ChSetNetworkProfileno
CS -> ChSetVariableMonitoringno
CS -> ChSetVariablesno
Ch -> CSSignCertificateno
Ch -> CSStatusNotificationyes
Ch -> CSTransactionEventyes
CS -> ChTriggerMessageyes
CS -> ChUnlockConnectoryes
CS -> ChUnpublishFirmwareno
CS -> ChUpdateFirmwareno

DataTypes

DataTypeImplemented
ACChargingParametersyes
AdditionalInfoyes
APNno
AuthorizationDatayes
CertificateHashDataChainyes
CertificateHashDatayes
ChargingLimityes
ChargingNeedsyes
ChargingProfileCriterionyes
ChargingProfileyes
ChargingSchedulePeriodyes
ChargingScheduleyes
ChargingStationyes
ClearChargingProfileyes
ClearMonitoringResultyes
Componentyes
ComponentVariableyes
CompositeScheduleyes
ConsumptionCostyes
Costyes
DCChargingParametersyes
EventDatano
EVSEyes
Firmwareno
GetVariableDatayes
GetVariableResultyes
IdTokenInfoyes
IdTokenyes
LogParametersyes
MessageContentyes
MessageInfoyes
MeterValueyes
Modemyes
MonitoringDatano
NetworkConnectionProfileno
OCSPRequestDatayes
RelativeTimeIntervalyes
ReportDatano
SalesTariffEntryyes
SalesTariffyes
SampledValueyes
SetMonitoringDatano
SetMonitoringResultno
SetVariableDatano
SetVariableResultno
SignedMeterValueyes
StatusInfoyes
Transactionyes
UnitOfMeasureyes
VariableAttributeno
VariableCharacteristicsno
VariableMonitoringno
Variableyes
VPNno

Enumerations

EnumerationsImplemented
APNAuthenticationno
Attributeyes
AuthorizationStatusyes
AuthorizeCertificateStatusyes
BootReasonyes
CancelReservationStatusyes
CertificateActionyes
CertificateSignedStatusyes
CertificateSigningUseyes
ChangeAvailabilityStatusyes
ChargingLimitSourceyes
ChargingProfileKindyes
ChargingProfilePurposeyes
ChargingProfileStatusyes
ChargingRateUnityes
ChargingStateyes
ClearCacheStatusyes
ClearChargingProfileStatusyes
ClearMessageStatusyes
ClearMonitoringStatusyes
ComponentCriterionyes
Connectorno
ConnectorStatusyes
CostKindyes
CustomerInformationStatusyes
Datano
DataTransferStatusyes
DeleteCertificateStatusyes
DisplayMessageStatusno
EnergyTransferModeyes
EventNotificationno
EventTriggerno
FirmwareStatusyes
GenericDeviceModelStatusyes
GenericStatusyes
GetCertificateIdUseyes
GetCertificateStatusyes
GetChargingProfileStatusyes
GetDisplayMessagesStatusyes
GetInstalledCertificateStatusyes
GetVariableStatusyes
HashAlgorithmyes
IdTokenyes
InstallCertificateStatusyes
InstallCertificateUseyes
Iso15118EVCertificateStatusyes
Locationyes
Logyes
LogStatusyes
Measurandyes
MessageFormatyes
MessagePriorityyes
MessageStateyes
MessageTriggeryes
Monitorno
MonitoringBaseno
MonitoringCriterionyes
Mutabilityno
NotifyEVChargingNeedsStatusyes
OCPPInterfaceno
OCPPTransportno
OCPPVersionno
OperationalStatusyes
Phaseyes
PublishFirmwareStatusno
ReadingContextyes
Reasonyes
RecurrencyKindyes
RegistrationStatusyes
ReportBaseyes
RequestStartStopStatusno
ReservationUpdateStatusno
ReserveNowStatusno
Resetyes
ResetStatusyes
SendLocalListStatusyes
SetMonitoringStatusno
SetNetworkProfileStatusno
SetVariableStatusno
TransactionEventyes
TriggerMessageStatusyes
TriggerReasonyes
UnlockStatusyes
UnpublishFirmwareStatusno
Updateyes
UpdateFirmwareStatusno
UploadLogStatusyes
VPNno