pub enum ConfigurationKey {
Show 51 variants
AllowOfflineTxForUnknownId,
AuthorizationCacheEnabled,
AuthorizeRemoteTxRequests,
BlinkRepeat,
ClockAlignedDataInterval,
ConnectionTimeOut,
ConnectorPhaseRotation,
ConnectorPhaseRotationMaxLength,
GetConfigurationMaxKeys,
HeartbeatInterval,
LightIntensity,
LocalAuthorizeOffline,
LocalPreAuthorize,
MaxEnergyOnInvalidId,
MeterValuesAlignedData,
MeterValuesAlignedDataMaxLength,
MeterValuesSampledData,
MeterValuesSampledDataMaxLength,
MeterValueSampleInterval,
MinimumStatusDuration,
NumberOfConnectors,
ResetRetries,
StopTransactionOnEVSideDisconnect,
StopTransactionOnInvalidId,
StopTxnAlignedData,
StopTxnAlignedDataMaxLength,
StopTxnSampledData,
StopTxnSampledDataMaxLength,
SupportedFeatureProfiles,
SupportedFeatureProfilesMaxLength,
TransactionMessageAttempts,
TransactionMessageRetryInterval,
UnlockConnectorOnEVSideDisconnect,
WebSocketPingInterval,
LocalAuthListEnabled,
LocalAuthListMaxLength,
SendLocalListMaxLength,
ReserveConnectorZeroSupported,
ChargeProfileMaxStackLevel,
ChargingScheduleAllowedChargingRateUnit,
ChargingScheduleMaxPeriods,
ConnectorSwitch3to1PhaseSupported,
MaxChargingProfilesInstalled,
AdditionalRootCertificateCheck,
AuthorizationKey,
CertificateSignedMaxChainSize,
CertificateStoreMaxLength,
CpoName,
SecurityProfile,
SupportedFileTransferProtocols,
Other(String<50usize>),
}Expand description
Standardized configuration keys for GetConfiguration / ChangeConfiguration.
The schema types key as a plain string; the spec lists these in “Standard Configuration Key Names & Values”, extended by the Security Whitepaper.
An open set: values the specification doesn’t define are carried
in Self::Other rather than rejected, so a deployment’s own
values survive a deserialize/serialize round trip.
Comparison and hashing go through the wire string, not the variant,
so Other("...") holding a standardized value compares equal to
that variant.
Variants§
AllowOfflineTxForUnknownId
If this key exists, the Charge Point supports Unknown Offline Authorization. If this key reports a value of true, Unknown Offline Authorization is enabled.
AuthorizationCacheEnabled
If this key exists, the Charge Point supports an Authorization Cache. If this key reports a value of true, the Authorization Cache is enabled.
AuthorizeRemoteTxRequests
Whether a remote request to start a transaction in the form of a RemoteStartTransaction.req message should be authorized beforehand like a local action to start a transaction.
BlinkRepeat
Number of times to blink Charge Point lighting when signalling.
ClockAlignedDataInterval
Size (in seconds) of the clock-aligned data interval. This is the size (in seconds) of the set of evenly spaced aggregation intervals per day, starting at 00:00:00 (midnight).
ConnectionTimeOut
Interval (from successful authorization) until incipient transaction is automatically cancelled, due to failure of EV driver to (correctly) insert the charging cable connector(s) into the appropriate socket(s).
ConnectorPhaseRotation
The phase rotation per connector in respect to the connector’s electrical meter (or if absent, the grid connection). Possible values per connector are RST, RTS, SRT, STR, TRS and TSR.
ConnectorPhaseRotationMaxLength
Maximum number of items in a ConnectorPhaseRotation Configuration Key.
GetConfigurationMaxKeys
Maximum number of requested configuration keys in a GetConfiguration.req PDU.
HeartbeatInterval
Interval (in seconds) of inactivity (no OCPP exchanges) with Central System after which the Charge Point should send a Heartbeat.req PDU.
LightIntensity
Percentage of maximum intensity at which to illuminate Charge Point lighting.
LocalAuthorizeOffline
Whether the Charge Point, when offline, will start a transaction for locally-authorized identifiers.
LocalPreAuthorize
Whether the Charge Point, when online, will start a transaction for locally-authorized identifiers without waiting for or requesting an Authorize.conf from the Central System.
MaxEnergyOnInvalidId
Maximum energy in Wh delivered when an identifier is invalidated by the Central System after start of a transaction.
MeterValuesAlignedData
Clock-aligned measurand(s) to be included in a MeterValues.req PDU, every ClockAlignedDataInterval seconds.
MeterValuesAlignedDataMaxLength
Maximum number of items in a MeterValuesAlignedData Configuration Key.
MeterValuesSampledData
Sampled measurands to be included in a MeterValues.req PDU, every MeterValueSampleInterval seconds. Where applicable, the Measurand is combined with the optional phase
MeterValuesSampledDataMaxLength
Maximum number of items in a MeterValuesSampledData Configuration Key.
MeterValueSampleInterval
Interval (in seconds) between sampling of metering (or other) data, intended to be transmitted by MeterValues.req PDUs.
MinimumStatusDuration
The minimum duration that a Charge Point or Connector status is stable before a StatusNotification.req PDU is sent to the Central System.
NumberOfConnectors
The number of physical charging connectors of this Charge Point.
ResetRetries
Number of times to retry an unsuccessful reset of the Charge Point.
StopTransactionOnEVSideDisconnect
When set to true, the Charge Point SHALL administratively stop the transaction when the cable is unplugged from the EV.
StopTransactionOnInvalidId
Whether the Charge Point will stop an ongoing transaction when it receives a non-Accepted authorization status in a StartTransaction.conf for this transaction.
StopTxnAlignedData
Clock-aligned periodic measurand(s) to be included in the TransactionData element of StopTransaction.req MeterValues.req PDU for every ClockAlignedDataInterval of the transaction.
StopTxnAlignedDataMaxLength
Maximum number of items in a StopTxnAlignedData Configuration Key.
StopTxnSampledData
Sampled measurands to be included in the TransactionData element of StopTransaction.req PDU, every MeterValueSampleInterval seconds from the start of the transaction.
StopTxnSampledDataMaxLength
Maximum number of items in a StopTxnSampledData Configuration Key.
SupportedFeatureProfiles
A list of supported Feature Profiles. Possible values are Core, FirmwareManagement, LocalAuthListManagement, Reservation, SmartCharging and RemoteTrigger.
SupportedFeatureProfilesMaxLength
Maximum number of items in a SupportedFeatureProfiles Configuration Key.
TransactionMessageAttempts
How often the Charge Point should try to submit a transaction-related message when the Central System fails to process it.
TransactionMessageRetryInterval
How long the Charge Point should wait before resubmitting a transaction-related message that the Central System failed to process.
UnlockConnectorOnEVSideDisconnect
When set to true, the Charge Point SHALL unlock the cable on the Charge Point side when the cable is unplugged at the EV.
WebSocketPingInterval
Only relevant for websocket implementations. 0 disables client side websocket ping/pong. In this case there is either no ping/pong or the server initiates the ping and client responds with Pong.
LocalAuthListEnabled
Whether the Local Authorization List is enabled.
LocalAuthListMaxLength
Maximum number of identifications that can be stored in the Local Authorization List.
SendLocalListMaxLength
Maximum number of identifications that can be sent in a single SendLocalList.req.
ReserveConnectorZeroSupported
If this configuration key is present and set to true, Charge Point support reservations on connector 0.
ChargeProfileMaxStackLevel
Max StackLevel of a ChargingProfile. The number defined also indicates the max allowed number of installed charging schedules per Charging Profile Purposes.
ChargingScheduleAllowedChargingRateUnit
A list of supported quantities for use in a ChargingSchedule. Allowed values: Current and Power.
ChargingScheduleMaxPeriods
Maximum number of periods that may be defined per ChargingSchedule.
ConnectorSwitch3to1PhaseSupported
If defined and true, this Charge Point support switching from 3 to 1 phase during a Transaction.
MaxChargingProfilesInstalled
Maximum number of Charging profiles installed at a time.
AdditionalRootCertificateCheck
Whether a Charge Point should double-check whether a certificate is not revoked, in addition to the standard certificate chain check. When true, the Charge Point MUST verify the certificate against a Certificate Revocation List or an OCSP responder.
AuthorizationKey
The basic authentication password used for HTTP Basic Authentication. Is write-only: reading it back returns no value. Minimal length is 16 bytes and it is not allowed to be set to an empty string.
CertificateSignedMaxChainSize
This configuration key can be used to limit the size of the ‘certificateChain’ field from the CertificateSigned.req PDU. The value of this configuration key has a maximum limit of 10000 characters.
CertificateStoreMaxLength
Maximum number of Root/CA certificates that can be installed in the Charge Point.
CpoName
The Charge Point identity that is used as the value of the ‘organizationName’ field in the Certificate Signing Request when a Charge Point requests a new certificate.
SecurityProfile
This configuration key is used to set the security profile the Charge Point should use. It is not allowed to lower the security level of an existing connection.
SupportedFileTransferProtocols
The transfer protocols supported for uploading a diagnostics or security log and for downloading firmware. Allowed values are FTP, FTPS, HTTP and HTTPS.
Other(String<50usize>)
A value this version’s specification doesn’t define – typically a vendor-specific one, which OCPP explicitly permits.
Bounded at 50 bytes, the same maxLength the wire field carries,
so anything the field can hold this can hold. Prefer
Self::from_wire_or_other over constructing this directly: it
returns the standardized variant when the value is one, keeping a
single representation per wire string.
Implementations§
Source§impl ConfigurationKey
impl ConfigurationKey
Sourcepub const ALL: &'static [Self]
pub const ALL: &'static [Self]
Every value this version’s specification defines (50), in spec order.
Does not include Self::Other, which is unbounded in the
values it can hold.
Sourcepub fn from_wire(value: &str) -> Option<Self>
pub fn from_wire(value: &str) -> Option<Self>
Parses a wire value, returning None for values the
specification doesn’t define.
Use this to ask “is this one of the spec’s values?”. To accept
any value, use Self::from_wire_or_other.
Sourcepub fn from_wire_or_other(value: &str) -> Result<Self, ValueTooLong>
pub fn from_wire_or_other(value: &str) -> Result<Self, ValueTooLong>
Parses any wire value, falling back to Self::Other.
Fails only if value is longer than the specification’s
maxLength for this field, in which case it isn’t a value the
field could have carried in the first place.
Sourcepub fn is_standardized(&self) -> bool
pub fn is_standardized(&self) -> bool
Whether this is one of the values the specification defines, as opposed to a vendor’s own.
Sourcepub fn accessibility(&self) -> Option<&'static str>
pub fn accessibility(&self) -> Option<&'static str>
R (read-only), RW (read/write), or W, as stated by the spec.
Sourcepub fn value_type(&self) -> Option<&'static str>
pub fn value_type(&self) -> Option<&'static str>
The value’s type as stated by the spec (e.g. integer, boolean, CSL).
Sourcepub fn is_required(&self) -> bool
pub fn is_required(&self) -> bool
Whether the spec requires every Charging Station to support this key.
Sourcepub fn feature_profile(&self) -> Option<&'static str>
pub fn feature_profile(&self) -> Option<&'static str>
The feature profile that defines the key (e.g. Core, SmartCharging, Security).
Trait Implementations§
Source§impl Clone for ConfigurationKey
impl Clone for ConfigurationKey
Source§fn clone(&self) -> ConfigurationKey
fn clone(&self) -> ConfigurationKey
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ConfigurationKey
impl Debug for ConfigurationKey
Source§impl<'de> Deserialize<'de> for ConfigurationKey
Available on crate feature serde only.
impl<'de> Deserialize<'de> for ConfigurationKey
serde only.