ocpp201

package
v0.0.0-...-55c65bb Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 6, 2024 License: Apache-2.0 Imports: 0 Imported by: 0

Documentation

Overview

Package ocpp201 contains types that represent each of the different OCPP 2.0.1 protocol messages. The files have been generated using gojsonschema with all references to the CustomDataType removed (as this type is shared) and with all explicit Unmarshaller functions removed as validation is handled separately.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type APNAuthenticationEnumType

type APNAuthenticationEnumType string
const APNAuthenticationEnumTypeAUTO APNAuthenticationEnumType = "AUTO"
const APNAuthenticationEnumTypeCHAP APNAuthenticationEnumType = "CHAP"
const APNAuthenticationEnumTypeNONE APNAuthenticationEnumType = "NONE"
const APNAuthenticationEnumTypePAP APNAuthenticationEnumType = "PAP"

type APNType

type APNType struct {
	// APN. APN. URI
	// urn:x-oca:ocpp:uid:1:568814
	// The Access Point Name as an URL.
	//
	Apn string `json:"apn" yaml:"apn" mapstructure:"apn"`

	// ApnAuthentication corresponds to the JSON schema field "apnAuthentication".
	ApnAuthentication APNAuthenticationEnumType `json:"apnAuthentication" yaml:"apnAuthentication" mapstructure:"apnAuthentication"`

	// APN. APN. Password
	// urn:x-oca:ocpp:uid:1:568819
	// APN Password.
	//
	ApnPassword *string `json:"apnPassword,omitempty" yaml:"apnPassword,omitempty" mapstructure:"apnPassword,omitempty"`

	// APN. APN. User_ Name
	// urn:x-oca:ocpp:uid:1:568818
	// APN username.
	//
	ApnUserName *string `json:"apnUserName,omitempty" yaml:"apnUserName,omitempty" mapstructure:"apnUserName,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// APN. Preferred_ Network. Mobile_ Network_ ID
	// urn:x-oca:ocpp:uid:1:568822
	// Preferred network, written as MCC and MNC concatenated. See note.
	//
	PreferredNetwork *string `json:"preferredNetwork,omitempty" yaml:"preferredNetwork,omitempty" mapstructure:"preferredNetwork,omitempty"`

	// APN. SIMPIN. PIN_ Code
	// urn:x-oca:ocpp:uid:1:568821
	// SIM card pin code.
	//
	SimPin *int `json:"simPin,omitempty" yaml:"simPin,omitempty" mapstructure:"simPin,omitempty"`

	// APN. Use_ Only_ Preferred_ Network. Indicator
	// urn:x-oca:ocpp:uid:1:568824
	// Default: false. Use only the preferred Network, do
	// not dial in when not available. See Note.
	//
	UseOnlyPreferredNetwork bool `` /* 130-byte string literal not displayed */
}

APN urn:x-oca:ocpp:uid:2:233134 Collection of configuration data needed to make a data-connection over a cellular network.

NOTE: When asking a GSM modem to dial in, it is possible to specify which mobile operator should be used. This can be done with the mobile country code (MCC) in combination with a mobile network code (MNC). Example: If your preferred network is Vodafone Netherlands, the MCC=204 and the MNC=04 which means the key PreferredNetwork = 20404 Some modems allows to specify a preferred network, which means, if this network is not available, a different network is used. If you specify UseOnlyPreferredNetwork and this network is not available, the modem will not dial in.

type AdditionalInfoType

type AdditionalInfoType struct {
	// This field specifies the additional IdToken.
	//
	AdditionalIdToken string `json:"additionalIdToken" yaml:"additionalIdToken" mapstructure:"additionalIdToken"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// This defines the type of the additionalIdToken. This is a custom type, so the
	// implementation needs to be agreed upon by all involved parties.
	//
	Type string `json:"type" yaml:"type" mapstructure:"type"`
}

Contains a case insensitive identifier to use for the authorization and the type of authorization to support multiple forms of identifiers.

type AttributeEnumType

type AttributeEnumType string
const AttributeEnumTypeActual AttributeEnumType = "Actual"
const AttributeEnumTypeMaxSet AttributeEnumType = "MaxSet"
const AttributeEnumTypeMinSet AttributeEnumType = "MinSet"
const AttributeEnumTypeTarget AttributeEnumType = "Target"

type AuthorizationData

type AuthorizationData struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// IdToken corresponds to the JSON schema field "idToken".
	IdToken IdTokenType `json:"idToken" yaml:"idToken" mapstructure:"idToken"`

	// IdTokenInfo corresponds to the JSON schema field "idTokenInfo".
	IdTokenInfo *IdTokenInfoType `json:"idTokenInfo,omitempty" yaml:"idTokenInfo,omitempty" mapstructure:"idTokenInfo,omitempty"`
}

Contains the identifier to use for authorization.

type AuthorizationStatusEnumType

type AuthorizationStatusEnumType string
const AuthorizationStatusEnumTypeAccepted AuthorizationStatusEnumType = "Accepted"
const AuthorizationStatusEnumTypeBlocked AuthorizationStatusEnumType = "Blocked"
const AuthorizationStatusEnumTypeConcurrentTx AuthorizationStatusEnumType = "ConcurrentTx"
const AuthorizationStatusEnumTypeExpired AuthorizationStatusEnumType = "Expired"
const AuthorizationStatusEnumTypeInvalid AuthorizationStatusEnumType = "Invalid"
const AuthorizationStatusEnumTypeNoCredit AuthorizationStatusEnumType = "NoCredit"
const AuthorizationStatusEnumTypeNotAllowedTypeEVSE AuthorizationStatusEnumType = "NotAllowedTypeEVSE"
const AuthorizationStatusEnumTypeNotAtThisLocation AuthorizationStatusEnumType = "NotAtThisLocation"
const AuthorizationStatusEnumTypeNotAtThisTime AuthorizationStatusEnumType = "NotAtThisTime"
const AuthorizationStatusEnumTypeUnknown AuthorizationStatusEnumType = "Unknown"

type AuthorizeCertificateStatusEnumType

type AuthorizeCertificateStatusEnumType string
const AuthorizeCertificateStatusEnumTypeAccepted AuthorizeCertificateStatusEnumType = "Accepted"
const AuthorizeCertificateStatusEnumTypeCertChainError AuthorizeCertificateStatusEnumType = "CertChainError"
const AuthorizeCertificateStatusEnumTypeCertificateExpired AuthorizeCertificateStatusEnumType = "CertificateExpired"
const AuthorizeCertificateStatusEnumTypeCertificateRevoked AuthorizeCertificateStatusEnumType = "CertificateRevoked"
const AuthorizeCertificateStatusEnumTypeContractCancelled AuthorizeCertificateStatusEnumType = "ContractCancelled"
const AuthorizeCertificateStatusEnumTypeNoCertificateAvailable AuthorizeCertificateStatusEnumType = "NoCertificateAvailable"
const AuthorizeCertificateStatusEnumTypeSignatureError AuthorizeCertificateStatusEnumType = "SignatureError"

type AuthorizeRequestJson

type AuthorizeRequestJson struct {
	// The X.509 certificated presented by EV and encoded in PEM format.
	//
	Certificate *string `json:"certificate,omitempty" yaml:"certificate,omitempty" mapstructure:"certificate,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// IdToken corresponds to the JSON schema field "idToken".
	IdToken IdTokenType `json:"idToken" yaml:"idToken" mapstructure:"idToken"`

	// Iso15118CertificateHashData corresponds to the JSON schema field
	// "iso15118CertificateHashData".
	Iso15118CertificateHashData *[]OCSPRequestDataType `` /* 142-byte string literal not displayed */
}

func (*AuthorizeRequestJson) IsRequest

func (*AuthorizeRequestJson) IsRequest()

type AuthorizeResponseJson

type AuthorizeResponseJson struct {
	// CertificateStatus corresponds to the JSON schema field "certificateStatus".
	CertificateStatus *AuthorizeCertificateStatusEnumType `json:"certificateStatus,omitempty" yaml:"certificateStatus,omitempty" mapstructure:"certificateStatus,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// IdTokenInfo corresponds to the JSON schema field "idTokenInfo".
	IdTokenInfo IdTokenInfoType `json:"idTokenInfo" yaml:"idTokenInfo" mapstructure:"idTokenInfo"`
}

func (*AuthorizeResponseJson) IsResponse

func (*AuthorizeResponseJson) IsResponse()

type BootNotificationRequestJson

type BootNotificationRequestJson struct {
	// ChargingStation corresponds to the JSON schema field "chargingStation".
	ChargingStation ChargingStationType `json:"chargingStation" yaml:"chargingStation" mapstructure:"chargingStation"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Reason corresponds to the JSON schema field "reason".
	Reason BootReasonEnumType `json:"reason" yaml:"reason" mapstructure:"reason"`
}

func (*BootNotificationRequestJson) IsRequest

func (*BootNotificationRequestJson) IsRequest()

type BootNotificationResponseJson

type BootNotificationResponseJson struct {
	// This contains the CSMS’s current time.
	//
	CurrentTime string `json:"currentTime" yaml:"currentTime" mapstructure:"currentTime"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// When <<cmn_registrationstatusenumtype,Status>> is Accepted, this
	// contains the heartbeat interval in seconds. If the CSMS returns something other
	// than Accepted, the value of the interval field indicates the minimum wait time
	// before sending a next BootNotification request.
	//
	Interval int `json:"interval" yaml:"interval" mapstructure:"interval"`

	// Status corresponds to the JSON schema field "status".
	Status RegistrationStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*BootNotificationResponseJson) IsResponse

func (*BootNotificationResponseJson) IsResponse()

type BootReasonEnumType

type BootReasonEnumType string
const BootReasonEnumTypeApplicationReset BootReasonEnumType = "ApplicationReset"
const BootReasonEnumTypeFirmwareUpdate BootReasonEnumType = "FirmwareUpdate"
const BootReasonEnumTypeLocalReset BootReasonEnumType = "LocalReset"
const BootReasonEnumTypePowerUp BootReasonEnumType = "PowerUp"
const BootReasonEnumTypeRemoteReset BootReasonEnumType = "RemoteReset"
const BootReasonEnumTypeScheduledReset BootReasonEnumType = "ScheduledReset"
const BootReasonEnumTypeTriggered BootReasonEnumType = "Triggered"
const BootReasonEnumTypeUnknown BootReasonEnumType = "Unknown"
const BootReasonEnumTypeWatchdog BootReasonEnumType = "Watchdog"

type CertificateActionEnumType

type CertificateActionEnumType string
const CertificateActionEnumTypeInstall CertificateActionEnumType = "Install"
const CertificateActionEnumTypeUpdate CertificateActionEnumType = "Update"

type CertificateHashDataChainType

type CertificateHashDataChainType struct {
	// CertificateHashData corresponds to the JSON schema field "certificateHashData".
	CertificateHashData CertificateHashDataType `json:"certificateHashData" yaml:"certificateHashData" mapstructure:"certificateHashData"`

	// CertificateType corresponds to the JSON schema field "certificateType".
	CertificateType GetCertificateIdUseEnumType `json:"certificateType" yaml:"certificateType" mapstructure:"certificateType"`

	// ChildCertificateHashData corresponds to the JSON schema field
	// "childCertificateHashData".
	ChildCertificateHashData []CertificateHashDataType `` /* 133-byte string literal not displayed */

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

type CertificateHashDataType

type CertificateHashDataType struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// HashAlgorithm corresponds to the JSON schema field "hashAlgorithm".
	HashAlgorithm HashAlgorithmEnumType `json:"hashAlgorithm" yaml:"hashAlgorithm" mapstructure:"hashAlgorithm"`

	// Hashed value of the issuers public key
	//
	IssuerKeyHash string `json:"issuerKeyHash" yaml:"issuerKeyHash" mapstructure:"issuerKeyHash"`

	// Hashed value of the Issuer DN (Distinguished Name).
	//
	//
	IssuerNameHash string `json:"issuerNameHash" yaml:"issuerNameHash" mapstructure:"issuerNameHash"`

	// The serial number of the certificate.
	//
	SerialNumber string `json:"serialNumber" yaml:"serialNumber" mapstructure:"serialNumber"`
}

type CertificateSignedRequestJson

type CertificateSignedRequestJson struct {
	// The signed PEM encoded X.509 certificate. This can also contain the necessary
	// sub CA certificates. In that case, the order of the bundle should follow the
	// certificate chain, starting from the leaf certificate.
	//
	// The Configuration Variable
	// <<configkey-max-certificate-chain-size,MaxCertificateChainSize>>
	// can be used to limit the maximum size of this field.
	//
	CertificateChain string `json:"certificateChain" yaml:"certificateChain" mapstructure:"certificateChain"`

	// CertificateType corresponds to the JSON schema field "certificateType".
	CertificateType *CertificateSigningUseEnumType `json:"certificateType,omitempty" yaml:"certificateType,omitempty" mapstructure:"certificateType,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

func (*CertificateSignedRequestJson) IsRequest

func (*CertificateSignedRequestJson) IsRequest()

type CertificateSignedResponseJson

type CertificateSignedResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status CertificateSignedStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*CertificateSignedResponseJson) IsResponse

func (*CertificateSignedResponseJson) IsResponse()

type CertificateSignedStatusEnumType

type CertificateSignedStatusEnumType string
const CertificateSignedStatusEnumTypeAccepted CertificateSignedStatusEnumType = "Accepted"
const CertificateSignedStatusEnumTypeRejected CertificateSignedStatusEnumType = "Rejected"

type CertificateSigningUseEnumType

type CertificateSigningUseEnumType string
const CertificateSigningUseEnumTypeChargingStationCertificate CertificateSigningUseEnumType = "ChargingStationCertificate"
const CertificateSigningUseEnumTypeV2GCertificate CertificateSigningUseEnumType = "V2GCertificate"

type ChangeAvailabilityRequestJson

type ChangeAvailabilityRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Evse corresponds to the JSON schema field "evse".
	Evse *EVSEType `json:"evse,omitempty" yaml:"evse,omitempty" mapstructure:"evse,omitempty"`

	// OperationalStatus corresponds to the JSON schema field "operationalStatus".
	OperationalStatus OperationalStatusEnumType `json:"operationalStatus" yaml:"operationalStatus" mapstructure:"operationalStatus"`
}

func (*ChangeAvailabilityRequestJson) IsRequest

func (*ChangeAvailabilityRequestJson) IsRequest()

type ChangeAvailabilityResponseJson

type ChangeAvailabilityResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status ChangeAvailabilityStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*ChangeAvailabilityResponseJson) IsResponse

func (*ChangeAvailabilityResponseJson) IsResponse()

type ChangeAvailabilityStatusEnumType

type ChangeAvailabilityStatusEnumType string
const ChangeAvailabilityStatusEnumTypeAccepted ChangeAvailabilityStatusEnumType = "Accepted"
const ChangeAvailabilityStatusEnumTypeRejected ChangeAvailabilityStatusEnumType = "Rejected"
const ChangeAvailabilityStatusEnumTypeScheduled ChangeAvailabilityStatusEnumType = "Scheduled"

type ChargingProfileKindEnumType

type ChargingProfileKindEnumType string
const ChargingProfileKindEnumTypeAbsolute ChargingProfileKindEnumType = "Absolute"
const ChargingProfileKindEnumTypeRecurring ChargingProfileKindEnumType = "Recurring"
const ChargingProfileKindEnumTypeRelative ChargingProfileKindEnumType = "Relative"

type ChargingProfilePurposeEnumType

type ChargingProfilePurposeEnumType string
const ChargingProfilePurposeEnumTypeChargingStationExternalConstraints ChargingProfilePurposeEnumType = "ChargingStationExternalConstraints"
const ChargingProfilePurposeEnumTypeChargingStationMaxProfile ChargingProfilePurposeEnumType = "ChargingStationMaxProfile"
const ChargingProfilePurposeEnumTypeTxDefaultProfile ChargingProfilePurposeEnumType = "TxDefaultProfile"
const ChargingProfilePurposeEnumTypeTxProfile ChargingProfilePurposeEnumType = "TxProfile"

type ChargingProfileType

type ChargingProfileType struct {
	// ChargingProfileKind corresponds to the JSON schema field "chargingProfileKind".
	ChargingProfileKind ChargingProfileKindEnumType `json:"chargingProfileKind" yaml:"chargingProfileKind" mapstructure:"chargingProfileKind"`

	// ChargingProfilePurpose corresponds to the JSON schema field
	// "chargingProfilePurpose".
	ChargingProfilePurpose ChargingProfilePurposeEnumType `json:"chargingProfilePurpose" yaml:"chargingProfilePurpose" mapstructure:"chargingProfilePurpose"`

	// ChargingSchedule corresponds to the JSON schema field "chargingSchedule".
	ChargingSchedule []ChargingScheduleType `json:"chargingSchedule" yaml:"chargingSchedule" mapstructure:"chargingSchedule"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Identified_ Object. MRID. Numeric_ Identifier
	// urn:x-enexis:ecdm:uid:1:569198
	// Id of ChargingProfile.
	//
	Id int `json:"id" yaml:"id" mapstructure:"id"`

	// RecurrencyKind corresponds to the JSON schema field "recurrencyKind".
	RecurrencyKind *RecurrencyKindEnumType `json:"recurrencyKind,omitempty" yaml:"recurrencyKind,omitempty" mapstructure:"recurrencyKind,omitempty"`

	// Charging_ Profile. Stack_ Level. Counter
	// urn:x-oca:ocpp:uid:1:569230
	// Value determining level in hierarchy stack of profiles. Higher values have
	// precedence over lower values. Lowest level is 0.
	//
	StackLevel int `json:"stackLevel" yaml:"stackLevel" mapstructure:"stackLevel"`

	// SHALL only be included if ChargingProfilePurpose is set to TxProfile. The
	// transactionId is used to match the profile to a specific transaction.
	//
	TransactionId *string `json:"transactionId,omitempty" yaml:"transactionId,omitempty" mapstructure:"transactionId,omitempty"`

	// Charging_ Profile. Valid_ From. Date_ Time
	// urn:x-oca:ocpp:uid:1:569234
	// Point in time at which the profile starts to be valid. If absent, the profile
	// is valid as soon as it is received by the Charging Station.
	//
	ValidFrom *string `json:"validFrom,omitempty" yaml:"validFrom,omitempty" mapstructure:"validFrom,omitempty"`

	// Charging_ Profile. Valid_ To. Date_ Time
	// urn:x-oca:ocpp:uid:1:569235
	// Point in time at which the profile stops to be valid. If absent, the profile is
	// valid until it is replaced by another profile.
	//
	ValidTo *string `json:"validTo,omitempty" yaml:"validTo,omitempty" mapstructure:"validTo,omitempty"`
}

Charging_ Profile urn:x-oca:ocpp:uid:2:233255 A ChargingProfile consists of ChargingSchedule, describing the amount of power or current that can be delivered per time interval.

type ChargingRateUnitEnumType

type ChargingRateUnitEnumType string
const ChargingRateUnitEnumTypeA ChargingRateUnitEnumType = "A"
const ChargingRateUnitEnumTypeW ChargingRateUnitEnumType = "W"

type ChargingSchedulePeriodType

type ChargingSchedulePeriodType struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Charging_ Schedule_ Period. Limit. Measure
	// urn:x-oca:ocpp:uid:1:569241
	// Charging rate limit during the schedule period, in the applicable
	// chargingRateUnit, for example in Amperes (A) or Watts (W). Accepts at most one
	// digit fraction (e.g. 8.1).
	//
	Limit float64 `json:"limit" yaml:"limit" mapstructure:"limit"`

	// Charging_ Schedule_ Period. Number_ Phases. Counter
	// urn:x-oca:ocpp:uid:1:569242
	// The number of phases that can be used for charging. If a number of phases is
	// needed, numberPhases=3 will be assumed unless another number is given.
	//
	NumberPhases *int `json:"numberPhases,omitempty" yaml:"numberPhases,omitempty" mapstructure:"numberPhases,omitempty"`

	// Values: 1..3, Used if numberPhases=1 and if the EVSE is capable of switching
	// the phase connected to the EV, i.e. ACPhaseSwitchingSupported is defined and
	// true. It’s not allowed unless both conditions above are true. If both
	// conditions are true, and phaseToUse is omitted, the Charging Station / EVSE
	// will make the selection on its own.
	//
	//
	PhaseToUse *int `json:"phaseToUse,omitempty" yaml:"phaseToUse,omitempty" mapstructure:"phaseToUse,omitempty"`

	// Charging_ Schedule_ Period. Start_ Period. Elapsed_ Time
	// urn:x-oca:ocpp:uid:1:569240
	// Start of the period, in seconds from the start of schedule. The value of
	// StartPeriod also defines the stop time of the previous period.
	//
	StartPeriod int `json:"startPeriod" yaml:"startPeriod" mapstructure:"startPeriod"`
}

Charging_ Schedule_ Period urn:x-oca:ocpp:uid:2:233257 Charging schedule period structure defines a time period in a charging schedule.

type ChargingScheduleType

type ChargingScheduleType struct {
	// ChargingRateUnit corresponds to the JSON schema field "chargingRateUnit".
	ChargingRateUnit ChargingRateUnitEnumType `json:"chargingRateUnit" yaml:"chargingRateUnit" mapstructure:"chargingRateUnit"`

	// ChargingSchedulePeriod corresponds to the JSON schema field
	// "chargingSchedulePeriod".
	ChargingSchedulePeriod []ChargingSchedulePeriodType `json:"chargingSchedulePeriod" yaml:"chargingSchedulePeriod" mapstructure:"chargingSchedulePeriod"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Charging_ Schedule. Duration. Elapsed_ Time
	// urn:x-oca:ocpp:uid:1:569236
	// Duration of the charging schedule in seconds. If the duration is left empty,
	// the last period will continue indefinitely or until end of the transaction if
	// chargingProfilePurpose = TxProfile.
	//
	Duration *int `json:"duration,omitempty" yaml:"duration,omitempty" mapstructure:"duration,omitempty"`

	// Identifies the ChargingSchedule.
	//
	Id int `json:"id" yaml:"id" mapstructure:"id"`

	// Charging_ Schedule. Min_ Charging_ Rate. Numeric
	// urn:x-oca:ocpp:uid:1:569239
	// Minimum charging rate supported by the EV. The unit of measure is defined by
	// the chargingRateUnit. This parameter is intended to be used by a local smart
	// charging algorithm to optimize the power allocation for in the case a charging
	// process is inefficient at lower charging rates. Accepts at most one digit
	// fraction (e.g. 8.1)
	//
	MinChargingRate *float64 `json:"minChargingRate,omitempty" yaml:"minChargingRate,omitempty" mapstructure:"minChargingRate,omitempty"`

	// SalesTariff corresponds to the JSON schema field "salesTariff".
	SalesTariff *SalesTariffType `json:"salesTariff,omitempty" yaml:"salesTariff,omitempty" mapstructure:"salesTariff,omitempty"`

	// Charging_ Schedule. Start_ Schedule. Date_ Time
	// urn:x-oca:ocpp:uid:1:569237
	// Starting point of an absolute schedule. If absent the schedule will be relative
	// to start of charging.
	//
	StartSchedule *string `json:"startSchedule,omitempty" yaml:"startSchedule,omitempty" mapstructure:"startSchedule,omitempty"`
}

Charging_ Schedule urn:x-oca:ocpp:uid:2:233256 Charging schedule structure defines a list of charging periods, as used in: GetCompositeSchedule.conf and ChargingProfile.

type ChargingStateEnumType

type ChargingStateEnumType string
const ChargingStateEnumTypeCharging ChargingStateEnumType = "Charging"
const ChargingStateEnumTypeEVConnected ChargingStateEnumType = "EVConnected"
const ChargingStateEnumTypeIdle ChargingStateEnumType = "Idle"
const ChargingStateEnumTypeSuspendedEV ChargingStateEnumType = "SuspendedEV"
const ChargingStateEnumTypeSuspendedEVSE ChargingStateEnumType = "SuspendedEVSE"

type ChargingStationType

type ChargingStationType struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// This contains the firmware version of the Charging Station.
	//
	//
	FirmwareVersion *string `json:"firmwareVersion,omitempty" yaml:"firmwareVersion,omitempty" mapstructure:"firmwareVersion,omitempty"`

	// Device. Model. CI20_ Text
	// urn:x-oca:ocpp:uid:1:569325
	// Defines the model of the device.
	//
	Model string `json:"model" yaml:"model" mapstructure:"model"`

	// Modem corresponds to the JSON schema field "modem".
	Modem *ModemType `json:"modem,omitempty" yaml:"modem,omitempty" mapstructure:"modem,omitempty"`

	// Device. Serial_ Number. Serial_ Number
	// urn:x-oca:ocpp:uid:1:569324
	// Vendor-specific device identifier.
	//
	SerialNumber *string `json:"serialNumber,omitempty" yaml:"serialNumber,omitempty" mapstructure:"serialNumber,omitempty"`

	// Identifies the vendor (not necessarily in a unique manner).
	//
	VendorName string `json:"vendorName" yaml:"vendorName" mapstructure:"vendorName"`
}

Charge_ Point urn:x-oca:ocpp:uid:2:233122 The physical system where an Electrical Vehicle (EV) can be charged.

type ClearCacheRequestJson

type ClearCacheRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

func (*ClearCacheRequestJson) IsRequest

func (*ClearCacheRequestJson) IsRequest()

type ClearCacheResponseJson

type ClearCacheResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status ClearCacheStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*ClearCacheResponseJson) IsResponse

func (*ClearCacheResponseJson) IsResponse()

type ClearCacheStatusEnumType

type ClearCacheStatusEnumType string
const ClearCacheStatusEnumTypeAccepted ClearCacheStatusEnumType = "Accepted"
const ClearCacheStatusEnumTypeRejected ClearCacheStatusEnumType = "Rejected"

type ComponentCriterionEnumType

type ComponentCriterionEnumType string
const ComponentCriterionEnumTypeActive ComponentCriterionEnumType = "Active"
const ComponentCriterionEnumTypeAvailable ComponentCriterionEnumType = "Available"
const ComponentCriterionEnumTypeEnabled ComponentCriterionEnumType = "Enabled"
const ComponentCriterionEnumTypeProblem ComponentCriterionEnumType = "Problem"

type ComponentType

type ComponentType struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Evse corresponds to the JSON schema field "evse".
	Evse *EVSEType `json:"evse,omitempty" yaml:"evse,omitempty" mapstructure:"evse,omitempty"`

	// Name of instance in case the component exists as multiple instances. Case
	// Insensitive. strongly advised to use Camel Case.
	//
	Instance *string `json:"instance,omitempty" yaml:"instance,omitempty" mapstructure:"instance,omitempty"`

	// Name of the component. Name should be taken from the list of standardized
	// component names whenever possible. Case Insensitive. strongly advised to use
	// Camel Case.
	//
	Name string `json:"name" yaml:"name" mapstructure:"name"`
}

A physical or logical component

type ComponentVariableType

type ComponentVariableType struct {
	// Component corresponds to the JSON schema field "component".
	Component ComponentType `json:"component" yaml:"component" mapstructure:"component"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Variable corresponds to the JSON schema field "variable".
	Variable *VariableType `json:"variable,omitempty" yaml:"variable,omitempty" mapstructure:"variable,omitempty"`
}

Class to report components, variables and variable attributes and characteristics.

type ConnectorStatusEnumType

type ConnectorStatusEnumType string
const ConnectorStatusEnumTypeAvailable ConnectorStatusEnumType = "Available"
const ConnectorStatusEnumTypeFaulted ConnectorStatusEnumType = "Faulted"
const ConnectorStatusEnumTypeOccupied ConnectorStatusEnumType = "Occupied"
const ConnectorStatusEnumTypeReserved ConnectorStatusEnumType = "Reserved"
const ConnectorStatusEnumTypeUnavailable ConnectorStatusEnumType = "Unavailable"

type ConsumptionCostType

type ConsumptionCostType struct {
	// Cost corresponds to the JSON schema field "cost".
	Cost []CostType `json:"cost" yaml:"cost" mapstructure:"cost"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Consumption_ Cost. Start_ Value. Numeric
	// urn:x-oca:ocpp:uid:1:569246
	// The lowest level of consumption that defines the starting point of this
	// consumption block. The block interval extends to the start of the next
	// interval.
	//
	StartValue float64 `json:"startValue" yaml:"startValue" mapstructure:"startValue"`
}

Consumption_ Cost urn:x-oca:ocpp:uid:2:233259

type CostKindEnumType

type CostKindEnumType string
const CostKindEnumTypeCarbonDioxideEmission CostKindEnumType = "CarbonDioxideEmission"
const CostKindEnumTypeRelativePricePercentage CostKindEnumType = "RelativePricePercentage"
const CostKindEnumTypeRenewableGenerationPercentage CostKindEnumType = "RenewableGenerationPercentage"

type CostType

type CostType struct {
	// Cost. Amount. Amount
	// urn:x-oca:ocpp:uid:1:569244
	// The estimated or actual cost per kWh
	//
	Amount int `json:"amount" yaml:"amount" mapstructure:"amount"`

	// Cost. Amount_ Multiplier. Integer
	// urn:x-oca:ocpp:uid:1:569245
	// Values: -3..3, The amountMultiplier defines the exponent to base 10 (dec). The
	// final value is determined by: amount * 10 ^ amountMultiplier
	//
	AmountMultiplier *int `json:"amountMultiplier,omitempty" yaml:"amountMultiplier,omitempty" mapstructure:"amountMultiplier,omitempty"`

	// CostKind corresponds to the JSON schema field "costKind".
	CostKind CostKindEnumType `json:"costKind" yaml:"costKind" mapstructure:"costKind"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

Cost urn:x-oca:ocpp:uid:2:233258

type CustomDataType

type CustomDataType struct {
	// VendorId corresponds to the JSON schema field "vendorId".
	VendorId string `json:"vendorId" yaml:"vendorId" mapstructure:"vendorId"`
}

This class does not get 'AdditionalProperties = false' in the schema generation, so it can be extended with arbitrary JSON properties to allow adding custom data.

type DataEnumType

type DataEnumType string
const DataEnumTypeBoolean DataEnumType = "boolean"
const DataEnumTypeDateTime DataEnumType = "dateTime"
const DataEnumTypeDecimal DataEnumType = "decimal"
const DataEnumTypeInteger DataEnumType = "integer"
const DataEnumTypeMemberList DataEnumType = "MemberList"
const DataEnumTypeOptionList DataEnumType = "OptionList"
const DataEnumTypeSequenceList DataEnumType = "SequenceList"
const DataEnumTypeString DataEnumType = "string"

type DeleteCertificateRequestJson

type DeleteCertificateRequestJson struct {
	// CertificateHashData corresponds to the JSON schema field "certificateHashData".
	CertificateHashData CertificateHashDataType `json:"certificateHashData" yaml:"certificateHashData" mapstructure:"certificateHashData"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

func (*DeleteCertificateRequestJson) IsRequest

func (*DeleteCertificateRequestJson) IsRequest()

type DeleteCertificateResponseJson

type DeleteCertificateResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status DeleteCertificateStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*DeleteCertificateResponseJson) IsResponse

func (*DeleteCertificateResponseJson) IsResponse()

type DeleteCertificateStatusEnumType

type DeleteCertificateStatusEnumType string
const DeleteCertificateStatusEnumTypeAccepted DeleteCertificateStatusEnumType = "Accepted"
const DeleteCertificateStatusEnumTypeFailed DeleteCertificateStatusEnumType = "Failed"
const DeleteCertificateStatusEnumTypeNotFound DeleteCertificateStatusEnumType = "NotFound"

type EVSEType

type EVSEType struct {
	// An id to designate a specific connector (on an EVSE) by connector index number.
	//
	ConnectorId *int `json:"connectorId,omitempty" yaml:"connectorId,omitempty" mapstructure:"connectorId,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Identified_ Object. MRID. Numeric_ Identifier
	// urn:x-enexis:ecdm:uid:1:569198
	// EVSE Identifier. This contains a number (> 0) designating an EVSE of the
	// Charging Station.
	//
	Id int `json:"id" yaml:"id" mapstructure:"id"`
}

EVSE urn:x-oca:ocpp:uid:2:233123 Electric Vehicle Supply Equipment

type FirmwareStatusEnumType

type FirmwareStatusEnumType string
const FirmwareStatusEnumTypeDownloadFailed FirmwareStatusEnumType = "DownloadFailed"
const FirmwareStatusEnumTypeDownloadPaused FirmwareStatusEnumType = "DownloadPaused"
const FirmwareStatusEnumTypeDownloadScheduled FirmwareStatusEnumType = "DownloadScheduled"
const FirmwareStatusEnumTypeDownloaded FirmwareStatusEnumType = "Downloaded"
const FirmwareStatusEnumTypeDownloading FirmwareStatusEnumType = "Downloading"
const FirmwareStatusEnumTypeIdle FirmwareStatusEnumType = "Idle"
const FirmwareStatusEnumTypeInstallRebooting FirmwareStatusEnumType = "InstallRebooting"
const FirmwareStatusEnumTypeInstallScheduled FirmwareStatusEnumType = "InstallScheduled"
const FirmwareStatusEnumTypeInstallVerificationFailed FirmwareStatusEnumType = "InstallVerificationFailed"
const FirmwareStatusEnumTypeInstallationFailed FirmwareStatusEnumType = "InstallationFailed"
const FirmwareStatusEnumTypeInstalled FirmwareStatusEnumType = "Installed"
const FirmwareStatusEnumTypeInstalling FirmwareStatusEnumType = "Installing"
const FirmwareStatusEnumTypeInvalidSignature FirmwareStatusEnumType = "InvalidSignature"
const FirmwareStatusEnumTypeSignatureVerified FirmwareStatusEnumType = "SignatureVerified"

type FirmwareStatusNotificationRequestJson

type FirmwareStatusNotificationRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// The request id that was provided in the
	// UpdateFirmwareRequest that started this firmware update.
	// This field is mandatory, unless the message was triggered by a
	// TriggerMessageRequest AND there is no firmware update ongoing.
	//
	RequestId *int `json:"requestId,omitempty" yaml:"requestId,omitempty" mapstructure:"requestId,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status FirmwareStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`
}

func (*FirmwareStatusNotificationRequestJson) IsRequest

type FirmwareStatusNotificationResponseJson

type FirmwareStatusNotificationResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

func (*FirmwareStatusNotificationResponseJson) IsResponse

type GenericDeviceModelStatusEnumType

type GenericDeviceModelStatusEnumType string
const GenericDeviceModelStatusEnumTypeAccepted GenericDeviceModelStatusEnumType = "Accepted"
const GenericDeviceModelStatusEnumTypeEmptyResultSet GenericDeviceModelStatusEnumType = "EmptyResultSet"
const GenericDeviceModelStatusEnumTypeNotSupported GenericDeviceModelStatusEnumType = "NotSupported"
const GenericDeviceModelStatusEnumTypeRejected GenericDeviceModelStatusEnumType = "Rejected"

type GenericStatusEnumType

type GenericStatusEnumType string
const GenericStatusEnumTypeAccepted GenericStatusEnumType = "Accepted"
const GenericStatusEnumTypeRejected GenericStatusEnumType = "Rejected"

type Get15118EVCertificateRequestJson

type Get15118EVCertificateRequestJson struct {
	// Action corresponds to the JSON schema field "action".
	Action CertificateActionEnumType `json:"action" yaml:"action" mapstructure:"action"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	ExiRequest string `json:"exiRequest" yaml:"exiRequest" mapstructure:"exiRequest"`

	Iso15118SchemaVersion string `json:"iso15118SchemaVersion" yaml:"iso15118SchemaVersion" mapstructure:"iso15118SchemaVersion"`
}

func (*Get15118EVCertificateRequestJson) IsRequest

func (*Get15118EVCertificateRequestJson) IsRequest()

type Get15118EVCertificateResponseJson

type Get15118EVCertificateResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Raw CertificateInstallationRes response for the EV, Base64 encoded.
	//
	ExiResponse string `json:"exiResponse" yaml:"exiResponse" mapstructure:"exiResponse"`

	// Status corresponds to the JSON schema field "status".
	Status Iso15118EVCertificateStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*Get15118EVCertificateResponseJson) IsResponse

func (*Get15118EVCertificateResponseJson) IsResponse()

type GetBaseReportRequestJson

type GetBaseReportRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// ReportBase corresponds to the JSON schema field "reportBase".
	ReportBase ReportBaseEnumType `json:"reportBase" yaml:"reportBase" mapstructure:"reportBase"`

	// The Id of the request.
	//
	RequestId int `json:"requestId" yaml:"requestId" mapstructure:"requestId"`
}

func (*GetBaseReportRequestJson) IsRequest

func (*GetBaseReportRequestJson) IsRequest()

type GetBaseReportResponseJson

type GetBaseReportResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status GenericDeviceModelStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*GetBaseReportResponseJson) IsResponse

func (*GetBaseReportResponseJson) IsResponse()

type GetCertificateIdUseEnumType

type GetCertificateIdUseEnumType string
const GetCertificateIdUseEnumTypeCSMSRootCertificate GetCertificateIdUseEnumType = "CSMSRootCertificate"
const GetCertificateIdUseEnumTypeMORootCertificate GetCertificateIdUseEnumType = "MORootCertificate"
const GetCertificateIdUseEnumTypeManufacturerRootCertificate GetCertificateIdUseEnumType = "ManufacturerRootCertificate"
const GetCertificateIdUseEnumTypeV2GCertificateChain GetCertificateIdUseEnumType = "V2GCertificateChain"
const GetCertificateIdUseEnumTypeV2GRootCertificate GetCertificateIdUseEnumType = "V2GRootCertificate"

type GetCertificateStatusEnumType

type GetCertificateStatusEnumType string
const GetCertificateStatusEnumTypeAccepted GetCertificateStatusEnumType = "Accepted"
const GetCertificateStatusEnumTypeFailed GetCertificateStatusEnumType = "Failed"

type GetCertificateStatusRequestJson

type GetCertificateStatusRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// OcspRequestData corresponds to the JSON schema field "ocspRequestData".
	OcspRequestData OCSPRequestDataType `json:"ocspRequestData" yaml:"ocspRequestData" mapstructure:"ocspRequestData"`
}

func (*GetCertificateStatusRequestJson) IsRequest

func (*GetCertificateStatusRequestJson) IsRequest()

type GetCertificateStatusResponseJson

type GetCertificateStatusResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// OCSPResponse class as defined in <<ref-ocpp_security_24, IETF RFC
	// 6960>>. DER encoded (as defined in <<ref-ocpp_security_24, IETF RFC
	// 6960>>), and then base64 encoded. MAY only be omitted when status is not
	// Accepted.
	//
	OcspResult *string `json:"ocspResult,omitempty" yaml:"ocspResult,omitempty" mapstructure:"ocspResult,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status GetCertificateStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*GetCertificateStatusResponseJson) IsResponse

func (*GetCertificateStatusResponseJson) IsResponse()

type GetInstalledCertificateIdsRequestJson

type GetInstalledCertificateIdsRequestJson struct {
	// Indicates the type of certificates requested. When omitted, all certificate
	// types are requested.
	//
	CertificateType []GetCertificateIdUseEnumType `json:"certificateType,omitempty" yaml:"certificateType,omitempty" mapstructure:"certificateType,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

func (*GetInstalledCertificateIdsRequestJson) IsRequest

type GetInstalledCertificateIdsResponseJson

type GetInstalledCertificateIdsResponseJson struct {
	// CertificateHashDataChain corresponds to the JSON schema field
	// "certificateHashDataChain".
	CertificateHashDataChain []CertificateHashDataChainType `` /* 133-byte string literal not displayed */

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status GetInstalledCertificateStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*GetInstalledCertificateIdsResponseJson) IsResponse

type GetInstalledCertificateStatusEnumType

type GetInstalledCertificateStatusEnumType string
const GetInstalledCertificateStatusEnumTypeAccepted GetInstalledCertificateStatusEnumType = "Accepted"
const GetInstalledCertificateStatusEnumTypeNotFound GetInstalledCertificateStatusEnumType = "NotFound"

type GetLocalListVersionRequestJson

type GetLocalListVersionRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

func (*GetLocalListVersionRequestJson) IsRequest

func (*GetLocalListVersionRequestJson) IsRequest()

type GetLocalListVersionResponseJson

type GetLocalListVersionResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// This contains the current version number of the local authorization list in the
	// Charging Station.
	//
	VersionNumber int `json:"versionNumber" yaml:"versionNumber" mapstructure:"versionNumber"`
}

func (*GetLocalListVersionResponseJson) IsResponse

func (*GetLocalListVersionResponseJson) IsResponse()

type GetReportRequestJson

type GetReportRequestJson struct {
	// This field contains criteria for components for which a report is requested
	//
	ComponentCriteria []ComponentCriterionEnumType `json:"componentCriteria,omitempty" yaml:"componentCriteria,omitempty" mapstructure:"componentCriteria,omitempty"`

	// ComponentVariable corresponds to the JSON schema field "componentVariable".
	ComponentVariable []ComponentVariableType `json:"componentVariable,omitempty" yaml:"componentVariable,omitempty" mapstructure:"componentVariable,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// The Id of the request.
	//
	RequestId int `json:"requestId" yaml:"requestId" mapstructure:"requestId"`
}

func (*GetReportRequestJson) IsRequest

func (*GetReportRequestJson) IsRequest()

type GetReportResponseJson

type GetReportResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status GenericDeviceModelStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*GetReportResponseJson) IsResponse

func (*GetReportResponseJson) IsResponse()

type GetTransactionStatusRequestJson

type GetTransactionStatusRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// The Id of the transaction for which the status is requested.
	//
	TransactionId *string `json:"transactionId,omitempty" yaml:"transactionId,omitempty" mapstructure:"transactionId,omitempty"`
}

func (*GetTransactionStatusRequestJson) IsRequest

func (*GetTransactionStatusRequestJson) IsRequest()

type GetTransactionStatusResponseJson

type GetTransactionStatusResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Whether there are still message to be delivered.
	//
	MessagesInQueue bool `json:"messagesInQueue" yaml:"messagesInQueue" mapstructure:"messagesInQueue"`

	// Whether the transaction is still ongoing.
	//
	OngoingIndicator *bool `json:"ongoingIndicator,omitempty" yaml:"ongoingIndicator,omitempty" mapstructure:"ongoingIndicator,omitempty"`
}

func (*GetTransactionStatusResponseJson) IsResponse

func (*GetTransactionStatusResponseJson) IsResponse()

type GetVariableDataType

type GetVariableDataType struct {
	// AttributeType corresponds to the JSON schema field "attributeType".
	AttributeType *AttributeEnumType `json:"attributeType,omitempty" yaml:"attributeType,omitempty" mapstructure:"attributeType,omitempty"`

	// Component corresponds to the JSON schema field "component".
	Component ComponentType `json:"component" yaml:"component" mapstructure:"component"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Variable corresponds to the JSON schema field "variable".
	Variable VariableType `json:"variable" yaml:"variable" mapstructure:"variable"`
}

Class to hold parameters for GetVariables request.

type GetVariableResultType

type GetVariableResultType struct {
	// AttributeStatus corresponds to the JSON schema field "attributeStatus".
	AttributeStatus GetVariableStatusEnumType `json:"attributeStatus" yaml:"attributeStatus" mapstructure:"attributeStatus"`

	// AttributeStatusInfo corresponds to the JSON schema field "attributeStatusInfo".
	AttributeStatusInfo *StatusInfoType `json:"attributeStatusInfo,omitempty" yaml:"attributeStatusInfo,omitempty" mapstructure:"attributeStatusInfo,omitempty"`

	// AttributeType corresponds to the JSON schema field "attributeType".
	AttributeType *AttributeEnumType `json:"attributeType,omitempty" yaml:"attributeType,omitempty" mapstructure:"attributeType,omitempty"`

	// Value of requested attribute type of component-variable. This field can only be
	// empty when the given status is NOT accepted.
	//
	// The Configuration Variable
	// <<configkey-reporting-value-size,ReportingValueSize>> can be used
	// to limit GetVariableResult.attributeValue, VariableAttribute.value and
	// EventData.actualValue. The max size of these values will always remain equal.
	//
	//
	AttributeValue *string `json:"attributeValue,omitempty" yaml:"attributeValue,omitempty" mapstructure:"attributeValue,omitempty"`

	// Component corresponds to the JSON schema field "component".
	Component ComponentType `json:"component" yaml:"component" mapstructure:"component"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Variable corresponds to the JSON schema field "variable".
	Variable VariableType `json:"variable" yaml:"variable" mapstructure:"variable"`
}

Class to hold results of GetVariables request.

type GetVariableStatusEnumType

type GetVariableStatusEnumType string
const GetVariableStatusEnumTypeAccepted GetVariableStatusEnumType = "Accepted"
const GetVariableStatusEnumTypeNotSupportedAttributeType GetVariableStatusEnumType = "NotSupportedAttributeType"
const GetVariableStatusEnumTypeRejected GetVariableStatusEnumType = "Rejected"
const GetVariableStatusEnumTypeUnknownComponent GetVariableStatusEnumType = "UnknownComponent"
const GetVariableStatusEnumTypeUnknownVariable GetVariableStatusEnumType = "UnknownVariable"

type GetVariablesRequestJson

type GetVariablesRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// GetVariableData corresponds to the JSON schema field "getVariableData".
	GetVariableData []GetVariableDataType `json:"getVariableData" yaml:"getVariableData" mapstructure:"getVariableData"`
}

func (*GetVariablesRequestJson) IsRequest

func (*GetVariablesRequestJson) IsRequest()

type GetVariablesResponseJson

type GetVariablesResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// GetVariableResult corresponds to the JSON schema field "getVariableResult".
	GetVariableResult []GetVariableResultType `json:"getVariableResult" yaml:"getVariableResult" mapstructure:"getVariableResult"`
}

func (*GetVariablesResponseJson) IsResponse

func (*GetVariablesResponseJson) IsResponse()

type HashAlgorithmEnumType

type HashAlgorithmEnumType string
const HashAlgorithmEnumTypeSHA256 HashAlgorithmEnumType = "SHA256"
const HashAlgorithmEnumTypeSHA384 HashAlgorithmEnumType = "SHA384"
const HashAlgorithmEnumTypeSHA512 HashAlgorithmEnumType = "SHA512"

type HeartbeatRequestJson

type HeartbeatRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

func (*HeartbeatRequestJson) IsRequest

func (*HeartbeatRequestJson) IsRequest()

type HeartbeatResponseJson

type HeartbeatResponseJson struct {
	// Contains the current time of the CSMS.
	//
	CurrentTime string `json:"currentTime" yaml:"currentTime" mapstructure:"currentTime"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

func (*HeartbeatResponseJson) IsResponse

func (*HeartbeatResponseJson) IsResponse()

type IdTokenEnumType

type IdTokenEnumType string
const IdTokenEnumTypeCentral IdTokenEnumType = "Central"
const IdTokenEnumTypeEMAID IdTokenEnumType = "eMAID"
const IdTokenEnumTypeISO14443 IdTokenEnumType = "ISO14443"
const IdTokenEnumTypeISO15693 IdTokenEnumType = "ISO15693"
const IdTokenEnumTypeKeyCode IdTokenEnumType = "KeyCode"
const IdTokenEnumTypeLocal IdTokenEnumType = "Local"
const IdTokenEnumTypeMacAddress IdTokenEnumType = "MacAddress"
const IdTokenEnumTypeNoAuthorization IdTokenEnumType = "NoAuthorization"

type IdTokenInfoType

type IdTokenInfoType struct {
	// ID_ Token. Expiry. Date_ Time
	// urn:x-oca:ocpp:uid:1:569373
	// Date and Time after which the token must be considered invalid.
	//
	CacheExpiryDateTime *string `json:"cacheExpiryDateTime,omitempty" yaml:"cacheExpiryDateTime,omitempty" mapstructure:"cacheExpiryDateTime,omitempty"`

	// Priority from a business point of view. Default priority is 0, The range is
	// from -9 to 9. Higher values indicate a higher priority. The chargingPriority in
	// <<transactioneventresponse,TransactionEventResponse>> overrules
	// this one.
	//
	ChargingPriority *int `json:"chargingPriority,omitempty" yaml:"chargingPriority,omitempty" mapstructure:"chargingPriority,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Only used when the IdToken is only valid for one or more specific EVSEs, not
	// for the entire Charging Station.
	//
	//
	EvseId []int `json:"evseId,omitempty" yaml:"evseId,omitempty" mapstructure:"evseId,omitempty"`

	// GroupIdToken corresponds to the JSON schema field "groupIdToken".
	GroupIdToken *IdTokenType `json:"groupIdToken,omitempty" yaml:"groupIdToken,omitempty" mapstructure:"groupIdToken,omitempty"`

	// ID_ Token. Language1. Language_ Code
	// urn:x-oca:ocpp:uid:1:569374
	// Preferred user interface language of identifier user. Contains a language code
	// as defined in <<ref-RFC5646,[RFC5646]>>.
	//
	//
	Language1 *string `json:"language1,omitempty" yaml:"language1,omitempty" mapstructure:"language1,omitempty"`

	// ID_ Token. Language2. Language_ Code
	// urn:x-oca:ocpp:uid:1:569375
	// Second preferred user interface language of identifier user. Don’t use when
	// language1 is omitted, has to be different from language1. Contains a language
	// code as defined in <<ref-RFC5646,[RFC5646]>>.
	//
	Language2 *string `json:"language2,omitempty" yaml:"language2,omitempty" mapstructure:"language2,omitempty"`

	// PersonalMessage corresponds to the JSON schema field "personalMessage".
	PersonalMessage *MessageContentType `json:"personalMessage,omitempty" yaml:"personalMessage,omitempty" mapstructure:"personalMessage,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status AuthorizationStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`
}

ID_ Token urn:x-oca:ocpp:uid:2:233247 Contains status information about an identifier. It is advised to not stop charging for a token that expires during charging, as ExpiryDate is only used for caching purposes. If ExpiryDate is not given, the status has no end date.

type IdTokenType

type IdTokenType struct {
	// AdditionalInfo corresponds to the JSON schema field "additionalInfo".
	AdditionalInfo *[]AdditionalInfoType `json:"additionalInfo,omitempty" yaml:"additionalInfo,omitempty" mapstructure:"additionalInfo,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// IdToken is case insensitive. Might hold the hidden id of an RFID tag, but can
	// for example also contain a UUID.
	//
	IdToken string `json:"idToken" yaml:"idToken" mapstructure:"idToken"`

	// Type corresponds to the JSON schema field "type".
	Type IdTokenEnumType `json:"type" yaml:"type" mapstructure:"type"`
}

Contains a case insensitive identifier to use for the authorization and the type of authorization to support multiple forms of identifiers.

type InstallCertificateRequestJson

type InstallCertificateRequestJson struct {
	// A PEM encoded X.509 certificate.
	//
	Certificate string `json:"certificate" yaml:"certificate" mapstructure:"certificate"`

	// CertificateType corresponds to the JSON schema field "certificateType".
	CertificateType InstallCertificateUseEnumType `json:"certificateType" yaml:"certificateType" mapstructure:"certificateType"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

func (*InstallCertificateRequestJson) IsRequest

func (*InstallCertificateRequestJson) IsRequest()

type InstallCertificateResponseJson

type InstallCertificateResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status InstallCertificateStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*InstallCertificateResponseJson) IsResponse

func (*InstallCertificateResponseJson) IsResponse()

type InstallCertificateStatusEnumType

type InstallCertificateStatusEnumType string
const InstallCertificateStatusEnumTypeAccepted InstallCertificateStatusEnumType = "Accepted"
const InstallCertificateStatusEnumTypeFailed InstallCertificateStatusEnumType = "Failed"
const InstallCertificateStatusEnumTypeRejected InstallCertificateStatusEnumType = "Rejected"

type InstallCertificateUseEnumType

type InstallCertificateUseEnumType string
const InstallCertificateUseEnumTypeCSMSRootCertificate InstallCertificateUseEnumType = "CSMSRootCertificate"
const InstallCertificateUseEnumTypeMORootCertificate InstallCertificateUseEnumType = "MORootCertificate"
const InstallCertificateUseEnumTypeManufacturerRootCertificate InstallCertificateUseEnumType = "ManufacturerRootCertificate"
const InstallCertificateUseEnumTypeV2GRootCertificate InstallCertificateUseEnumType = "V2GRootCertificate"

type Iso15118EVCertificateStatusEnumType

type Iso15118EVCertificateStatusEnumType string
const Iso15118EVCertificateStatusEnumTypeAccepted Iso15118EVCertificateStatusEnumType = "Accepted"
const Iso15118EVCertificateStatusEnumTypeFailed Iso15118EVCertificateStatusEnumType = "Failed"

type LocationEnumType

type LocationEnumType string
const LocationEnumTypeBody LocationEnumType = "Body"
const LocationEnumTypeCable LocationEnumType = "Cable"
const LocationEnumTypeEV LocationEnumType = "EV"
const LocationEnumTypeInlet LocationEnumType = "Inlet"
const LocationEnumTypeOutlet LocationEnumType = "Outlet"

type LogStatusNotificationRequestJson

type LogStatusNotificationRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// The request id that was provided in GetLogRequest that started this log upload.
	// This field is mandatory,
	// unless the message was triggered by a TriggerMessageRequest AND there is no log
	// upload ongoing.
	//
	RequestId *int `json:"requestId,omitempty" yaml:"requestId,omitempty" mapstructure:"requestId,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status UploadLogStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`
}

func (*LogStatusNotificationRequestJson) IsRequest

func (*LogStatusNotificationRequestJson) IsRequest()

type LogStatusNotificationResponseJson

type LogStatusNotificationResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

func (*LogStatusNotificationResponseJson) IsResponse

func (*LogStatusNotificationResponseJson) IsResponse()

type MeasurandEnumType

type MeasurandEnumType string
const MeasurandEnumTypeCurrentExport MeasurandEnumType = "Current.Export"
const MeasurandEnumTypeCurrentImport MeasurandEnumType = "Current.Import"
const MeasurandEnumTypeCurrentOffered MeasurandEnumType = "Current.Offered"
const MeasurandEnumTypeEnergyActiveExportInterval MeasurandEnumType = "Energy.Active.Export.Interval"
const MeasurandEnumTypeEnergyActiveExportRegister MeasurandEnumType = "Energy.Active.Export.Register"
const MeasurandEnumTypeEnergyActiveImportInterval MeasurandEnumType = "Energy.Active.Import.Interval"
const MeasurandEnumTypeEnergyActiveImportRegister MeasurandEnumType = "Energy.Active.Import.Register"
const MeasurandEnumTypeEnergyActiveNet MeasurandEnumType = "Energy.Active.Net"
const MeasurandEnumTypeEnergyApparentExport MeasurandEnumType = "Energy.Apparent.Export"
const MeasurandEnumTypeEnergyApparentImport MeasurandEnumType = "Energy.Apparent.Import"
const MeasurandEnumTypeEnergyApparentNet MeasurandEnumType = "Energy.Apparent.Net"
const MeasurandEnumTypeEnergyReactiveExportInterval MeasurandEnumType = "Energy.Reactive.Export.Interval"
const MeasurandEnumTypeEnergyReactiveExportRegister MeasurandEnumType = "Energy.Reactive.Export.Register"
const MeasurandEnumTypeEnergyReactiveImportInterval MeasurandEnumType = "Energy.Reactive.Import.Interval"
const MeasurandEnumTypeEnergyReactiveImportRegister MeasurandEnumType = "Energy.Reactive.Import.Register"
const MeasurandEnumTypeEnergyReactiveNet MeasurandEnumType = "Energy.Reactive.Net"
const MeasurandEnumTypeFrequency MeasurandEnumType = "Frequency"
const MeasurandEnumTypePowerActiveExport MeasurandEnumType = "Power.Active.Export"
const MeasurandEnumTypePowerActiveImport MeasurandEnumType = "Power.Active.Import"
const MeasurandEnumTypePowerFactor MeasurandEnumType = "Power.Factor"
const MeasurandEnumTypePowerOffered MeasurandEnumType = "Power.Offered"
const MeasurandEnumTypePowerReactiveExport MeasurandEnumType = "Power.Reactive.Export"
const MeasurandEnumTypePowerReactiveImport MeasurandEnumType = "Power.Reactive.Import"
const MeasurandEnumTypeSoC MeasurandEnumType = "SoC"
const MeasurandEnumTypeVoltage MeasurandEnumType = "Voltage"

type MessageContentType

type MessageContentType struct {
	// Message_ Content. Content. Message
	// urn:x-enexis:ecdm:uid:1:570852
	// Message contents.
	//
	//
	Content string `json:"content" yaml:"content" mapstructure:"content"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Format corresponds to the JSON schema field "format".
	Format MessageFormatEnumType `json:"format" yaml:"format" mapstructure:"format"`

	// Message_ Content. Language. Language_ Code
	// urn:x-enexis:ecdm:uid:1:570849
	// Message language identifier. Contains a language code as defined in
	// <<ref-RFC5646,[RFC5646]>>.
	//
	Language *string `json:"language,omitempty" yaml:"language,omitempty" mapstructure:"language,omitempty"`
}

Message_ Content urn:x-enexis:ecdm:uid:2:234490 Contains message details, for a message to be displayed on a Charging Station.

type MessageFormatEnumType

type MessageFormatEnumType string
const MessageFormatEnumTypeASCII MessageFormatEnumType = "ASCII"
const MessageFormatEnumTypeHTML MessageFormatEnumType = "HTML"
const MessageFormatEnumTypeURI MessageFormatEnumType = "URI"
const MessageFormatEnumTypeUTF8 MessageFormatEnumType = "UTF8"

type MessageTriggerEnumType

type MessageTriggerEnumType string
const MessageTriggerEnumTypeBootNotification MessageTriggerEnumType = "BootNotification"
const MessageTriggerEnumTypeFirmwareStatusNotification MessageTriggerEnumType = "FirmwareStatusNotification"
const MessageTriggerEnumTypeHeartbeat MessageTriggerEnumType = "Heartbeat"
const MessageTriggerEnumTypeLogStatusNotification MessageTriggerEnumType = "LogStatusNotification"
const MessageTriggerEnumTypeMeterValues MessageTriggerEnumType = "MeterValues"
const MessageTriggerEnumTypePublishFirmwareStatusNotification MessageTriggerEnumType = "PublishFirmwareStatusNotification"
const MessageTriggerEnumTypeSignChargingStationCertificate MessageTriggerEnumType = "SignChargingStationCertificate"
const MessageTriggerEnumTypeSignCombinedCertificate MessageTriggerEnumType = "SignCombinedCertificate"
const MessageTriggerEnumTypeSignV2GCertificate MessageTriggerEnumType = "SignV2GCertificate"
const MessageTriggerEnumTypeStatusNotification MessageTriggerEnumType = "StatusNotification"
const MessageTriggerEnumTypeTransactionEvent MessageTriggerEnumType = "TransactionEvent"

type MeterValueType

type MeterValueType struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// SampledValue corresponds to the JSON schema field "sampledValue".
	SampledValue []SampledValueType `json:"sampledValue" yaml:"sampledValue" mapstructure:"sampledValue"`

	// Meter_ Value. Timestamp. Date_ Time
	// urn:x-oca:ocpp:uid:1:569259
	// Timestamp for measured value(s).
	//
	Timestamp string `json:"timestamp" yaml:"timestamp" mapstructure:"timestamp"`
}

Meter_ Value urn:x-oca:ocpp:uid:2:233265 Collection of one or more sampled values in MeterValuesRequest and TransactionEvent. All sampled values in a MeterValue are sampled at the same point in time.

type MeterValuesRequestJson

type MeterValuesRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Request_ Body. EVSEID. Numeric_ Identifier
	// urn:x-enexis:ecdm:uid:1:571101
	// This contains a number (>0) designating an EVSE of the Charging Station. ‘0’
	// (zero) is used to designate the main power meter.
	//
	EvseId int `json:"evseId" yaml:"evseId" mapstructure:"evseId"`

	// MeterValue corresponds to the JSON schema field "meterValue".
	MeterValue []MeterValueType `json:"meterValue" yaml:"meterValue" mapstructure:"meterValue"`
}

Request_ Body urn:x-enexis:ecdm:uid:2:234744

func (*MeterValuesRequestJson) IsRequest

func (*MeterValuesRequestJson) IsRequest()

type MeterValuesResponseJson

type MeterValuesResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

func (*MeterValuesResponseJson) IsResponse

func (*MeterValuesResponseJson) IsResponse()

type ModemType

type ModemType struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Wireless_ Communication_ Module. ICCID. CI20_ Text
	// urn:x-oca:ocpp:uid:1:569327
	// This contains the ICCID of the modem’s SIM card.
	//
	Iccid *string `json:"iccid,omitempty" yaml:"iccid,omitempty" mapstructure:"iccid,omitempty"`

	// Wireless_ Communication_ Module. IMSI. CI20_ Text
	// urn:x-oca:ocpp:uid:1:569328
	// This contains the IMSI of the modem’s SIM card.
	//
	Imsi *string `json:"imsi,omitempty" yaml:"imsi,omitempty" mapstructure:"imsi,omitempty"`
}

Wireless_ Communication_ Module urn:x-oca:ocpp:uid:2:233306 Defines parameters required for initiating and maintaining wireless communication with other devices.

type MutabilityEnumType

type MutabilityEnumType string
const MutabilityEnumTypeReadOnly MutabilityEnumType = "ReadOnly"
const MutabilityEnumTypeReadWrite MutabilityEnumType = "ReadWrite"
const MutabilityEnumTypeWriteOnly MutabilityEnumType = "WriteOnly"

type NetworkConnectionProfileType

type NetworkConnectionProfileType struct {
	// Apn corresponds to the JSON schema field "apn".
	Apn *APNType `json:"apn,omitempty" yaml:"apn,omitempty" mapstructure:"apn,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Duration in seconds before a message send by the Charging Station via this
	// network connection times-out.
	// The best setting depends on the underlying network and response times of the
	// CSMS.
	// If you are looking for a some guideline: use 30 seconds as a starting point.
	//
	MessageTimeout int `json:"messageTimeout" yaml:"messageTimeout" mapstructure:"messageTimeout"`

	// Communication_ Function. OCPP_ Central_ System_ URL. URI
	// urn:x-oca:ocpp:uid:1:569357
	// URL of the CSMS(s) that this Charging Station  communicates with.
	//
	OcppCsmsUrl string `json:"ocppCsmsUrl" yaml:"ocppCsmsUrl" mapstructure:"ocppCsmsUrl"`

	// OcppInterface corresponds to the JSON schema field "ocppInterface".
	OcppInterface OCPPInterfaceEnumType `json:"ocppInterface" yaml:"ocppInterface" mapstructure:"ocppInterface"`

	// OcppTransport corresponds to the JSON schema field "ocppTransport".
	OcppTransport OCPPTransportEnumType `json:"ocppTransport" yaml:"ocppTransport" mapstructure:"ocppTransport"`

	// OcppVersion corresponds to the JSON schema field "ocppVersion".
	OcppVersion OCPPVersionEnumType `json:"ocppVersion" yaml:"ocppVersion" mapstructure:"ocppVersion"`

	// This field specifies the security profile used when connecting to the CSMS with
	// this NetworkConnectionProfile.
	//
	SecurityProfile int `json:"securityProfile" yaml:"securityProfile" mapstructure:"securityProfile"`

	// Vpn corresponds to the JSON schema field "vpn".
	Vpn *VPNType `json:"vpn,omitempty" yaml:"vpn,omitempty" mapstructure:"vpn,omitempty"`
}

Communication_ Function urn:x-oca:ocpp:uid:2:233304 The NetworkConnectionProfile defines the functional and technical parameters of a communication link.

type NotifyReportRequestJson

type NotifyReportRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Timestamp of the moment this message was generated at the Charging Station.
	//
	GeneratedAt string `json:"generatedAt" yaml:"generatedAt" mapstructure:"generatedAt"`

	// ReportData corresponds to the JSON schema field "reportData".
	ReportData []ReportDataType `json:"reportData,omitempty" yaml:"reportData,omitempty" mapstructure:"reportData,omitempty"`

	// The id of the GetReportRequest  or GetBaseReportRequest that requested this
	// report
	//
	RequestId int `json:"requestId" yaml:"requestId" mapstructure:"requestId"`

	// Sequence number of this message. First message starts at 0.
	//
	SeqNo int `json:"seqNo" yaml:"seqNo" mapstructure:"seqNo"`

	// “to be continued” indicator. Indicates whether another part of the report
	// follows in an upcoming notifyReportRequest message. Default value when omitted
	// is false.
	//
	//
	Tbc bool `json:"tbc,omitempty" yaml:"tbc,omitempty" mapstructure:"tbc,omitempty"`
}

func (*NotifyReportRequestJson) IsRequest

func (*NotifyReportRequestJson) IsRequest()

type NotifyReportResponseJson

type NotifyReportResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

func (*NotifyReportResponseJson) IsResponse

func (*NotifyReportResponseJson) IsResponse()

type OCPPInterfaceEnumType

type OCPPInterfaceEnumType string
const OCPPInterfaceEnumTypeWired0 OCPPInterfaceEnumType = "Wired0"
const OCPPInterfaceEnumTypeWired1 OCPPInterfaceEnumType = "Wired1"
const OCPPInterfaceEnumTypeWired2 OCPPInterfaceEnumType = "Wired2"
const OCPPInterfaceEnumTypeWired3 OCPPInterfaceEnumType = "Wired3"
const OCPPInterfaceEnumTypeWireless0 OCPPInterfaceEnumType = "Wireless0"
const OCPPInterfaceEnumTypeWireless1 OCPPInterfaceEnumType = "Wireless1"
const OCPPInterfaceEnumTypeWireless2 OCPPInterfaceEnumType = "Wireless2"
const OCPPInterfaceEnumTypeWireless3 OCPPInterfaceEnumType = "Wireless3"

type OCPPTransportEnumType

type OCPPTransportEnumType string
const OCPPTransportEnumTypeJSON OCPPTransportEnumType = "JSON"
const OCPPTransportEnumTypeSOAP OCPPTransportEnumType = "SOAP"

type OCPPVersionEnumType

type OCPPVersionEnumType string
const OCPPVersionEnumTypeOCPP12 OCPPVersionEnumType = "OCPP12"
const OCPPVersionEnumTypeOCPP15 OCPPVersionEnumType = "OCPP15"
const OCPPVersionEnumTypeOCPP16 OCPPVersionEnumType = "OCPP16"
const OCPPVersionEnumTypeOCPP20 OCPPVersionEnumType = "OCPP20"

type OCSPRequestDataType

type OCSPRequestDataType struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// HashAlgorithm corresponds to the JSON schema field "hashAlgorithm".
	HashAlgorithm HashAlgorithmEnumType `json:"hashAlgorithm" yaml:"hashAlgorithm" mapstructure:"hashAlgorithm"`

	// Hashed value of the issuers public key
	//
	IssuerKeyHash string `json:"issuerKeyHash" yaml:"issuerKeyHash" mapstructure:"issuerKeyHash"`

	// Hashed value of the Issuer DN (Distinguished Name).
	//
	//
	IssuerNameHash string `json:"issuerNameHash" yaml:"issuerNameHash" mapstructure:"issuerNameHash"`

	// This contains the responder URL (Case insensitive).
	//
	//
	ResponderURL string `json:"responderURL" yaml:"responderURL" mapstructure:"responderURL"`

	// The serial number of the certificate.
	//
	SerialNumber string `json:"serialNumber" yaml:"serialNumber" mapstructure:"serialNumber"`
}

type OperationalStatusEnumType

type OperationalStatusEnumType string
const OperationalStatusEnumTypeInoperative OperationalStatusEnumType = "Inoperative"
const OperationalStatusEnumTypeOperative OperationalStatusEnumType = "Operative"

type PhaseEnumType

type PhaseEnumType string
const PhaseEnumTypeL1 PhaseEnumType = "L1"
const PhaseEnumTypeL1L2 PhaseEnumType = "L1-L2"
const PhaseEnumTypeL1N PhaseEnumType = "L1-N"
const PhaseEnumTypeL2 PhaseEnumType = "L2"
const PhaseEnumTypeL2L3 PhaseEnumType = "L2-L3"
const PhaseEnumTypeL2N PhaseEnumType = "L2-N"
const PhaseEnumTypeL3 PhaseEnumType = "L3"
const PhaseEnumTypeL3L1 PhaseEnumType = "L3-L1"
const PhaseEnumTypeL3N PhaseEnumType = "L3-N"
const PhaseEnumTypeN PhaseEnumType = "N"

type ReadingContextEnumType

type ReadingContextEnumType string
const ReadingContextEnumTypeInterruptionBegin ReadingContextEnumType = "Interruption.Begin"
const ReadingContextEnumTypeInterruptionEnd ReadingContextEnumType = "Interruption.End"
const ReadingContextEnumTypeOther ReadingContextEnumType = "Other"
const ReadingContextEnumTypeSampleClock ReadingContextEnumType = "Sample.clock"
const ReadingContextEnumTypeSamplePeriodic ReadingContextEnumType = "Sample.Periodic"
const ReadingContextEnumTypeTransactionBegin ReadingContextEnumType = "Transaction.Begin"
const ReadingContextEnumTypeTransactionEnd ReadingContextEnumType = "Transaction.End"
const ReadingContextEnumTypeTrigger ReadingContextEnumType = "Trigger"

type ReasonEnumType

type ReasonEnumType string
const ReasonEnumTypeDeAuthorized ReasonEnumType = "DeAuthorized"
const ReasonEnumTypeEVDisconnected ReasonEnumType = "EVDisconnected"
const ReasonEnumTypeEmergencyStop ReasonEnumType = "EmergencyStop"
const ReasonEnumTypeEnergyLimitReached ReasonEnumType = "EnergyLimitReached"
const ReasonEnumTypeGroundFault ReasonEnumType = "GroundFault"
const ReasonEnumTypeImmediateReset ReasonEnumType = "ImmediateReset"
const ReasonEnumTypeLocal ReasonEnumType = "Local"
const ReasonEnumTypeLocalOutOfCredit ReasonEnumType = "LocalOutOfCredit"
const ReasonEnumTypeMasterPass ReasonEnumType = "MasterPass"
const ReasonEnumTypeOther ReasonEnumType = "Other"
const ReasonEnumTypeOvercurrentFault ReasonEnumType = "OvercurrentFault"
const ReasonEnumTypePowerLoss ReasonEnumType = "PowerLoss"
const ReasonEnumTypePowerQuality ReasonEnumType = "PowerQuality"
const ReasonEnumTypeReboot ReasonEnumType = "Reboot"
const ReasonEnumTypeRemote ReasonEnumType = "Remote"
const ReasonEnumTypeSOCLimitReached ReasonEnumType = "SOCLimitReached"
const ReasonEnumTypeStoppedByEV ReasonEnumType = "StoppedByEV"
const ReasonEnumTypeTimeLimitReached ReasonEnumType = "TimeLimitReached"
const ReasonEnumTypeTimeout ReasonEnumType = "Timeout"

type RecurrencyKindEnumType

type RecurrencyKindEnumType string
const RecurrencyKindEnumTypeDaily RecurrencyKindEnumType = "Daily"
const RecurrencyKindEnumTypeWeekly RecurrencyKindEnumType = "Weekly"

type RegistrationStatusEnumType

type RegistrationStatusEnumType string
const RegistrationStatusEnumTypeAccepted RegistrationStatusEnumType = "Accepted"
const RegistrationStatusEnumTypePending RegistrationStatusEnumType = "Pending"
const RegistrationStatusEnumTypeRejected RegistrationStatusEnumType = "Rejected"

type RelativeTimeIntervalType

type RelativeTimeIntervalType struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Relative_ Timer_ Interval. Duration. Elapsed_ Time
	// urn:x-oca:ocpp:uid:1:569280
	// Duration of the interval, in seconds.
	//
	Duration *int `json:"duration,omitempty" yaml:"duration,omitempty" mapstructure:"duration,omitempty"`

	// Relative_ Timer_ Interval. Start. Elapsed_ Time
	// urn:x-oca:ocpp:uid:1:569279
	// Start of the interval, in seconds from NOW.
	//
	Start int `json:"start" yaml:"start" mapstructure:"start"`
}

Relative_ Timer_ Interval urn:x-oca:ocpp:uid:2:233270

type ReportBaseEnumType

type ReportBaseEnumType string
const ReportBaseEnumTypeConfigurationInventory ReportBaseEnumType = "ConfigurationInventory"
const ReportBaseEnumTypeFullInventory ReportBaseEnumType = "FullInventory"
const ReportBaseEnumTypeSummaryInventory ReportBaseEnumType = "SummaryInventory"

type ReportDataType

type ReportDataType struct {
	// Component corresponds to the JSON schema field "component".
	Component ComponentType `json:"component" yaml:"component" mapstructure:"component"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Variable corresponds to the JSON schema field "variable".
	Variable VariableType `json:"variable" yaml:"variable" mapstructure:"variable"`

	// VariableAttribute corresponds to the JSON schema field "variableAttribute".
	VariableAttribute []VariableAttributeType `json:"variableAttribute" yaml:"variableAttribute" mapstructure:"variableAttribute"`

	// VariableCharacteristics corresponds to the JSON schema field
	// "variableCharacteristics".
	VariableCharacteristics *VariableCharacteristicsType `` /* 130-byte string literal not displayed */
}

Class to report components, variables and variable attributes and characteristics.

type RequestStartStopStatusEnumType

type RequestStartStopStatusEnumType string
const RequestStartStopStatusEnumTypeAccepted RequestStartStopStatusEnumType = "Accepted"
const RequestStartStopStatusEnumTypeRejected RequestStartStopStatusEnumType = "Rejected"

type RequestStartTransactionRequestJson

type RequestStartTransactionRequestJson struct {
	// ChargingProfile corresponds to the JSON schema field "chargingProfile".
	ChargingProfile *ChargingProfileType `json:"chargingProfile,omitempty" yaml:"chargingProfile,omitempty" mapstructure:"chargingProfile,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Number of the EVSE on which to start the transaction. EvseId SHALL be > 0
	//
	EvseId *int `json:"evseId,omitempty" yaml:"evseId,omitempty" mapstructure:"evseId,omitempty"`

	// GroupIdToken corresponds to the JSON schema field "groupIdToken".
	GroupIdToken *IdTokenType `json:"groupIdToken,omitempty" yaml:"groupIdToken,omitempty" mapstructure:"groupIdToken,omitempty"`

	// IdToken corresponds to the JSON schema field "idToken".
	IdToken IdTokenType `json:"idToken" yaml:"idToken" mapstructure:"idToken"`

	// Id given by the server to this start request. The Charging Station might return
	// this in the <<transactioneventrequest, TransactionEventRequest>>,
	// letting the server know which transaction was started for this request. Use to
	// start a transaction.
	//
	RemoteStartId int `json:"remoteStartId" yaml:"remoteStartId" mapstructure:"remoteStartId"`
}

func (*RequestStartTransactionRequestJson) IsRequest

type RequestStartTransactionResponseJson

type RequestStartTransactionResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status RequestStartStopStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`

	// When the transaction was already started by the Charging Station before the
	// RequestStartTransactionRequest was received, for example: cable plugged in
	// first. This contains the transactionId of the already started transaction.
	//
	TransactionId *string `json:"transactionId,omitempty" yaml:"transactionId,omitempty" mapstructure:"transactionId,omitempty"`
}

func (*RequestStartTransactionResponseJson) IsResponse

type RequestStopTransactionRequestJson

type RequestStopTransactionRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// The identifier of the transaction which the Charging Station is requested to
	// stop.
	//
	TransactionId string `json:"transactionId" yaml:"transactionId" mapstructure:"transactionId"`
}

func (*RequestStopTransactionRequestJson) IsRequest

func (*RequestStopTransactionRequestJson) IsRequest()

type RequestStopTransactionResponseJson

type RequestStopTransactionResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status RequestStartStopStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*RequestStopTransactionResponseJson) IsResponse

func (*RequestStopTransactionResponseJson) IsResponse()

type ResetEnumType

type ResetEnumType string
const ResetEnumTypeImmediate ResetEnumType = "Immediate"
const ResetEnumTypeOnIdle ResetEnumType = "OnIdle"

type ResetRequestJson

type ResetRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// This contains the ID of a specific EVSE that needs to be reset, instead of the
	// entire Charging Station.
	//
	EvseId *int `json:"evseId,omitempty" yaml:"evseId,omitempty" mapstructure:"evseId,omitempty"`

	// Type corresponds to the JSON schema field "type".
	Type ResetEnumType `json:"type" yaml:"type" mapstructure:"type"`
}

func (*ResetRequestJson) IsRequest

func (*ResetRequestJson) IsRequest()

type ResetResponseJson

type ResetResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status ResetStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*ResetResponseJson) IsResponse

func (*ResetResponseJson) IsResponse()

type ResetStatusEnumType

type ResetStatusEnumType string
const ResetStatusEnumTypeAccepted ResetStatusEnumType = "Accepted"
const ResetStatusEnumTypeRejected ResetStatusEnumType = "Rejected"
const ResetStatusEnumTypeScheduled ResetStatusEnumType = "Scheduled"

type SalesTariffEntryType

type SalesTariffEntryType struct {
	// ConsumptionCost corresponds to the JSON schema field "consumptionCost".
	ConsumptionCost []ConsumptionCostType `json:"consumptionCost,omitempty" yaml:"consumptionCost,omitempty" mapstructure:"consumptionCost,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Sales_ Tariff_ Entry. E_ Price_ Level. Unsigned_ Integer
	// urn:x-oca:ocpp:uid:1:569281
	// Defines the price level of this SalesTariffEntry (referring to
	// NumEPriceLevels). Small values for the EPriceLevel represent a cheaper
	// TariffEntry. Large values for the EPriceLevel represent a more expensive
	// TariffEntry.
	//
	EPriceLevel *int `json:"ePriceLevel,omitempty" yaml:"ePriceLevel,omitempty" mapstructure:"ePriceLevel,omitempty"`

	// RelativeTimeInterval corresponds to the JSON schema field
	// "relativeTimeInterval".
	RelativeTimeInterval RelativeTimeIntervalType `json:"relativeTimeInterval" yaml:"relativeTimeInterval" mapstructure:"relativeTimeInterval"`
}

Sales_ Tariff_ Entry urn:x-oca:ocpp:uid:2:233271

type SalesTariffType

type SalesTariffType struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Identified_ Object. MRID. Numeric_ Identifier
	// urn:x-enexis:ecdm:uid:1:569198
	// SalesTariff identifier used to identify one sales tariff. An SAID remains a
	// unique identifier for one schedule throughout a charging session.
	//
	Id int `json:"id" yaml:"id" mapstructure:"id"`

	// Sales_ Tariff. Num_ E_ Price_ Levels. Counter
	// urn:x-oca:ocpp:uid:1:569284
	// Defines the overall number of distinct price levels used across all provided
	// SalesTariff elements.
	//
	NumEPriceLevels *int `json:"numEPriceLevels,omitempty" yaml:"numEPriceLevels,omitempty" mapstructure:"numEPriceLevels,omitempty"`

	// Sales_ Tariff. Sales. Tariff_ Description
	// urn:x-oca:ocpp:uid:1:569283
	// A human readable title/short description of the sales tariff e.g. for HMI
	// display purposes.
	//
	SalesTariffDescription *string `` /* 127-byte string literal not displayed */

	// SalesTariffEntry corresponds to the JSON schema field "salesTariffEntry".
	SalesTariffEntry []SalesTariffEntryType `json:"salesTariffEntry" yaml:"salesTariffEntry" mapstructure:"salesTariffEntry"`
}

Sales_ Tariff urn:x-oca:ocpp:uid:2:233272 NOTE: This dataType is based on dataTypes from <<ref-ISOIEC15118-2,ISO 15118-2>>.

type SampledValueType

type SampledValueType struct {
	// Context corresponds to the JSON schema field "context".
	Context *ReadingContextEnumType `json:"context,omitempty" yaml:"context,omitempty" mapstructure:"context,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Location corresponds to the JSON schema field "location".
	Location *LocationEnumType `json:"location,omitempty" yaml:"location,omitempty" mapstructure:"location,omitempty"`

	// Measurand corresponds to the JSON schema field "measurand".
	Measurand *MeasurandEnumType `json:"measurand,omitempty" yaml:"measurand,omitempty" mapstructure:"measurand,omitempty"`

	// Phase corresponds to the JSON schema field "phase".
	Phase *PhaseEnumType `json:"phase,omitempty" yaml:"phase,omitempty" mapstructure:"phase,omitempty"`

	// SignedMeterValue corresponds to the JSON schema field "signedMeterValue".
	SignedMeterValue *SignedMeterValueType `json:"signedMeterValue,omitempty" yaml:"signedMeterValue,omitempty" mapstructure:"signedMeterValue,omitempty"`

	// UnitOfMeasure corresponds to the JSON schema field "unitOfMeasure".
	UnitOfMeasure *UnitOfMeasureType `json:"unitOfMeasure,omitempty" yaml:"unitOfMeasure,omitempty" mapstructure:"unitOfMeasure,omitempty"`

	// Sampled_ Value. Value. Measure
	// urn:x-oca:ocpp:uid:1:569260
	// Indicates the measured value.
	//
	//
	Value float64 `json:"value" yaml:"value" mapstructure:"value"`
}

Sampled_ Value urn:x-oca:ocpp:uid:2:233266 Single sampled value in MeterValues. Each value can be accompanied by optional fields.

To save on mobile data usage, default values of all of the optional fields are such that. The value without any additional fields will be interpreted, as a register reading of active import energy in Wh (Watt-hour) units.

type SecurityEventNotificationRequestJson

type SecurityEventNotificationRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Additional information about the occurred security event.
	//
	TechInfo *string `json:"techInfo,omitempty" yaml:"techInfo,omitempty" mapstructure:"techInfo,omitempty"`

	// Date and time at which the event occurred.
	//
	Timestamp string `json:"timestamp" yaml:"timestamp" mapstructure:"timestamp"`

	// Type of the security event. This value should be taken from the Security events
	// list.
	//
	Type string `json:"type" yaml:"type" mapstructure:"type"`
}

func (*SecurityEventNotificationRequestJson) IsRequest

type SecurityEventNotificationResponseJson

type SecurityEventNotificationResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

func (*SecurityEventNotificationResponseJson) IsResponse

type SendLocalListRequestJson

type SendLocalListRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// LocalAuthorizationList corresponds to the JSON schema field
	// "localAuthorizationList".
	LocalAuthorizationList []AuthorizationData `` /* 127-byte string literal not displayed */

	// UpdateType corresponds to the JSON schema field "updateType".
	UpdateType UpdateEnumType `json:"updateType" yaml:"updateType" mapstructure:"updateType"`

	// In case of a full update this is the version number of the full list. In case
	// of a differential update it is the version number of the list after the update
	// has been applied.
	//
	VersionNumber int `json:"versionNumber" yaml:"versionNumber" mapstructure:"versionNumber"`
}

func (*SendLocalListRequestJson) IsRequest

func (*SendLocalListRequestJson) IsRequest()

type SendLocalListResponseJson

type SendLocalListResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status SendLocalListStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*SendLocalListResponseJson) IsResponse

func (*SendLocalListResponseJson) IsResponse()

type SendLocalListStatusEnumType

type SendLocalListStatusEnumType string
const SendLocalListStatusEnumTypeAccepted SendLocalListStatusEnumType = "Accepted"
const SendLocalListStatusEnumTypeFailed SendLocalListStatusEnumType = "Failed"
const SendLocalListStatusEnumTypeVersionMismatch SendLocalListStatusEnumType = "VersionMismatch"

type SetNetworkProfileRequestJson

type SetNetworkProfileRequestJson struct {
	// Slot in which the configuration should be stored.
	//
	ConfigurationSlot int `json:"configurationSlot" yaml:"configurationSlot" mapstructure:"configurationSlot"`

	// ConnectionData corresponds to the JSON schema field "connectionData".
	ConnectionData NetworkConnectionProfileType `json:"connectionData" yaml:"connectionData" mapstructure:"connectionData"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

func (*SetNetworkProfileRequestJson) IsRequest

func (*SetNetworkProfileRequestJson) IsRequest()

type SetNetworkProfileResponseJson

type SetNetworkProfileResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status SetNetworkProfileStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*SetNetworkProfileResponseJson) IsResponse

func (*SetNetworkProfileResponseJson) IsResponse()

type SetNetworkProfileStatusEnumType

type SetNetworkProfileStatusEnumType string
const SetNetworkProfileStatusEnumTypeAccepted SetNetworkProfileStatusEnumType = "Accepted"
const SetNetworkProfileStatusEnumTypeFailed SetNetworkProfileStatusEnumType = "Failed"
const SetNetworkProfileStatusEnumTypeRejected SetNetworkProfileStatusEnumType = "Rejected"

type SetVariableDataType

type SetVariableDataType struct {
	// AttributeType corresponds to the JSON schema field "attributeType".
	AttributeType *AttributeEnumType `json:"attributeType,omitempty" yaml:"attributeType,omitempty" mapstructure:"attributeType,omitempty"`

	// Value to be assigned to attribute of variable.
	//
	// The Configuration Variable
	// <<configkey-configuration-value-size,ConfigurationValueSize>> can
	// be used to limit SetVariableData.attributeValue and
	// VariableCharacteristics.valueList. The max size of these values will always
	// remain equal.
	//
	AttributeValue string `json:"attributeValue" yaml:"attributeValue" mapstructure:"attributeValue"`

	// Component corresponds to the JSON schema field "component".
	Component ComponentType `json:"component" yaml:"component" mapstructure:"component"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Variable corresponds to the JSON schema field "variable".
	Variable VariableType `json:"variable" yaml:"variable" mapstructure:"variable"`
}

type SetVariableResultType

type SetVariableResultType struct {
	// AttributeStatus corresponds to the JSON schema field "attributeStatus".
	AttributeStatus SetVariableStatusEnumType `json:"attributeStatus" yaml:"attributeStatus" mapstructure:"attributeStatus"`

	// AttributeStatusInfo corresponds to the JSON schema field "attributeStatusInfo".
	AttributeStatusInfo *StatusInfoType `json:"attributeStatusInfo,omitempty" yaml:"attributeStatusInfo,omitempty" mapstructure:"attributeStatusInfo,omitempty"`

	// AttributeType corresponds to the JSON schema field "attributeType".
	AttributeType *AttributeEnumType `json:"attributeType,omitempty" yaml:"attributeType,omitempty" mapstructure:"attributeType,omitempty"`

	// Component corresponds to the JSON schema field "component".
	Component ComponentType `json:"component" yaml:"component" mapstructure:"component"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Variable corresponds to the JSON schema field "variable".
	Variable VariableType `json:"variable" yaml:"variable" mapstructure:"variable"`
}

type SetVariableStatusEnumType

type SetVariableStatusEnumType string
const SetVariableStatusEnumTypeAccepted SetVariableStatusEnumType = "Accepted"
const SetVariableStatusEnumTypeNotSupportedAttributeType SetVariableStatusEnumType = "NotSupportedAttributeType"
const SetVariableStatusEnumTypeRebootRequired SetVariableStatusEnumType = "RebootRequired"
const SetVariableStatusEnumTypeRejected SetVariableStatusEnumType = "Rejected"
const SetVariableStatusEnumTypeUnknownComponent SetVariableStatusEnumType = "UnknownComponent"
const SetVariableStatusEnumTypeUnknownVariable SetVariableStatusEnumType = "UnknownVariable"

type SetVariablesRequestJson

type SetVariablesRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// SetVariableData corresponds to the JSON schema field "setVariableData".
	SetVariableData []SetVariableDataType `json:"setVariableData" yaml:"setVariableData" mapstructure:"setVariableData"`
}

func (*SetVariablesRequestJson) IsRequest

func (*SetVariablesRequestJson) IsRequest()

type SetVariablesResponseJson

type SetVariablesResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// SetVariableResult corresponds to the JSON schema field "setVariableResult".
	SetVariableResult []SetVariableResultType `json:"setVariableResult" yaml:"setVariableResult" mapstructure:"setVariableResult"`
}

func (*SetVariablesResponseJson) IsResponse

func (*SetVariablesResponseJson) IsResponse()

type SignCertificateRequestJson

type SignCertificateRequestJson struct {
	// CertificateType corresponds to the JSON schema field "certificateType".
	CertificateType *CertificateSigningUseEnumType `json:"certificateType,omitempty" yaml:"certificateType,omitempty" mapstructure:"certificateType,omitempty"`

	// The Charging Station SHALL send the public key in form of a Certificate Signing
	// Request (CSR) as described in RFC 2986 [22] and then PEM encoded, using the
	// <<signcertificaterequest,SignCertificateRequest>> message.
	//
	Csr string `json:"csr" yaml:"csr" mapstructure:"csr"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

func (*SignCertificateRequestJson) IsRequest

func (*SignCertificateRequestJson) IsRequest()

type SignCertificateResponseJson

type SignCertificateResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status GenericStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*SignCertificateResponseJson) IsResponse

func (*SignCertificateResponseJson) IsResponse()

type SignedMeterValueType

type SignedMeterValueType struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Method used to encode the meter values before applying the digital signature
	// algorithm.
	//
	EncodingMethod string `json:"encodingMethod" yaml:"encodingMethod" mapstructure:"encodingMethod"`

	// Base64 encoded, sending depends on configuration variable
	// _PublicKeyWithSignedMeterValue_.
	//
	PublicKey string `json:"publicKey" yaml:"publicKey" mapstructure:"publicKey"`

	// Base64 encoded, contains the signed data which might contain more then just the
	// meter value. It can contain information like timestamps, reference to a
	// customer etc.
	//
	SignedMeterData string `json:"signedMeterData" yaml:"signedMeterData" mapstructure:"signedMeterData"`

	// Method used to create the digital signature.
	//
	SigningMethod string `json:"signingMethod" yaml:"signingMethod" mapstructure:"signingMethod"`
}

Represent a signed version of the meter value.

type StatusInfoType

type StatusInfoType struct {
	// Additional text to provide detailed information.
	//
	AdditionalInfo *string `json:"additionalInfo,omitempty" yaml:"additionalInfo,omitempty" mapstructure:"additionalInfo,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// A predefined code for the reason why the status is returned in this response.
	// The string is case-insensitive.
	//
	ReasonCode string `json:"reasonCode" yaml:"reasonCode" mapstructure:"reasonCode"`
}

Element providing more information about the status.

type StatusNotificationRequestJson

type StatusNotificationRequestJson struct {
	// The id of the connector within the EVSE for which the status is reported.
	//
	ConnectorId int `json:"connectorId" yaml:"connectorId" mapstructure:"connectorId"`

	// ConnectorStatus corresponds to the JSON schema field "connectorStatus".
	ConnectorStatus ConnectorStatusEnumType `json:"connectorStatus" yaml:"connectorStatus" mapstructure:"connectorStatus"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// The id of the EVSE to which the connector belongs for which the the status is
	// reported.
	//
	EvseId int `json:"evseId" yaml:"evseId" mapstructure:"evseId"`

	// The time for which the status is reported. If absent time of receipt of the
	// message will be assumed.
	//
	Timestamp string `json:"timestamp" yaml:"timestamp" mapstructure:"timestamp"`
}

func (*StatusNotificationRequestJson) IsRequest

func (*StatusNotificationRequestJson) IsRequest()

type StatusNotificationResponseJson

type StatusNotificationResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`
}

func (*StatusNotificationResponseJson) IsResponse

func (*StatusNotificationResponseJson) IsResponse()

type TransactionEventEnumType

type TransactionEventEnumType string
const TransactionEventEnumTypeEnded TransactionEventEnumType = "Ended"
const TransactionEventEnumTypeStarted TransactionEventEnumType = "Started"
const TransactionEventEnumTypeUpdated TransactionEventEnumType = "Updated"

type TransactionEventRequestJson

type TransactionEventRequestJson struct {
	// The maximum current of the connected cable in Ampere (A).
	//
	CableMaxCurrent *int `json:"cableMaxCurrent,omitempty" yaml:"cableMaxCurrent,omitempty" mapstructure:"cableMaxCurrent,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// EventType corresponds to the JSON schema field "eventType".
	EventType TransactionEventEnumType `json:"eventType" yaml:"eventType" mapstructure:"eventType"`

	// Evse corresponds to the JSON schema field "evse".
	Evse *EVSEType `json:"evse,omitempty" yaml:"evse,omitempty" mapstructure:"evse,omitempty"`

	// IdToken corresponds to the JSON schema field "idToken".
	IdToken *IdTokenType `json:"idToken,omitempty" yaml:"idToken,omitempty" mapstructure:"idToken,omitempty"`

	// MeterValue corresponds to the JSON schema field "meterValue".
	MeterValue []MeterValueType `json:"meterValue,omitempty" yaml:"meterValue,omitempty" mapstructure:"meterValue,omitempty"`

	// If the Charging Station is able to report the number of phases used, then it
	// SHALL provide it. When omitted the CSMS may be able to determine the number of
	// phases used via device management.
	//
	NumberOfPhasesUsed *int `json:"numberOfPhasesUsed,omitempty" yaml:"numberOfPhasesUsed,omitempty" mapstructure:"numberOfPhasesUsed,omitempty"`

	// Indication that this transaction event happened when the Charging Station was
	// offline. Default = false, meaning: the event occurred when the Charging Station
	// was online.
	//
	Offline bool `json:"offline,omitempty" yaml:"offline,omitempty" mapstructure:"offline,omitempty"`

	// This contains the Id of the reservation that terminates as a result of this
	// transaction.
	//
	ReservationId *int `json:"reservationId,omitempty" yaml:"reservationId,omitempty" mapstructure:"reservationId,omitempty"`

	// Incremental sequence number, helps with determining if all messages of a
	// transaction have been received.
	//
	SeqNo int `json:"seqNo" yaml:"seqNo" mapstructure:"seqNo"`

	// The date and time at which this transaction event occurred.
	//
	Timestamp string `json:"timestamp" yaml:"timestamp" mapstructure:"timestamp"`

	// TransactionInfo corresponds to the JSON schema field "transactionInfo".
	TransactionInfo TransactionType `json:"transactionInfo" yaml:"transactionInfo" mapstructure:"transactionInfo"`

	// TriggerReason corresponds to the JSON schema field "triggerReason".
	TriggerReason TriggerReasonEnumType `json:"triggerReason" yaml:"triggerReason" mapstructure:"triggerReason"`
}

func (*TransactionEventRequestJson) IsRequest

func (*TransactionEventRequestJson) IsRequest()

type TransactionEventResponseJson

type TransactionEventResponseJson struct {
	// Priority from a business point of view. Default priority is 0, The range is
	// from -9 to 9. Higher values indicate a higher priority. The chargingPriority in
	// <<transactioneventresponse,TransactionEventResponse>> is
	// temporarily, so it may not be set in the
	// <<cmn_idtokeninfotype,IdTokenInfoType>> afterwards. Also the
	// chargingPriority in
	// <<transactioneventresponse,TransactionEventResponse>> overrules the
	// one in <<cmn_idtokeninfotype,IdTokenInfoType>>.
	//
	ChargingPriority *int `json:"chargingPriority,omitempty" yaml:"chargingPriority,omitempty" mapstructure:"chargingPriority,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// IdTokenInfo corresponds to the JSON schema field "idTokenInfo".
	IdTokenInfo *IdTokenInfoType `json:"idTokenInfo,omitempty" yaml:"idTokenInfo,omitempty" mapstructure:"idTokenInfo,omitempty"`

	// SHALL only be sent when charging has ended. Final total cost of this
	// transaction, including taxes. In the currency configured with the Configuration
	// Variable: <<configkey-currency,`Currency`>>. When omitted, the
	// transaction was NOT free. To indicate a free transaction, the CSMS SHALL send
	// 0.00.
	//
	//
	TotalCost *float64 `json:"totalCost,omitempty" yaml:"totalCost,omitempty" mapstructure:"totalCost,omitempty"`

	// UpdatedPersonalMessage corresponds to the JSON schema field
	// "updatedPersonalMessage".
	UpdatedPersonalMessage *MessageContentType `` /* 127-byte string literal not displayed */
}

func (*TransactionEventResponseJson) IsResponse

func (*TransactionEventResponseJson) IsResponse()

type TransactionType

type TransactionType struct {
	// ChargingState corresponds to the JSON schema field "chargingState".
	ChargingState *ChargingStateEnumType `json:"chargingState,omitempty" yaml:"chargingState,omitempty" mapstructure:"chargingState,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// The ID given to remote start request (<<requeststarttransactionrequest,
	// RequestStartTransactionRequest>>. This enables to CSMS to match the
	// started transaction to the given start request.
	//
	RemoteStartId *int `json:"remoteStartId,omitempty" yaml:"remoteStartId,omitempty" mapstructure:"remoteStartId,omitempty"`

	// StoppedReason corresponds to the JSON schema field "stoppedReason".
	StoppedReason *ReasonEnumType `json:"stoppedReason,omitempty" yaml:"stoppedReason,omitempty" mapstructure:"stoppedReason,omitempty"`

	// Transaction. Time_ Spent_ Charging. Elapsed_ Time
	// urn:x-oca:ocpp:uid:1:569415
	// Contains the total time that energy flowed from EVSE to EV during the
	// transaction (in seconds). Note that timeSpentCharging is smaller or equal to
	// the duration of the transaction.
	//
	TimeSpentCharging *int `json:"timeSpentCharging,omitempty" yaml:"timeSpentCharging,omitempty" mapstructure:"timeSpentCharging,omitempty"`

	// This contains the Id of the transaction.
	//
	TransactionId string `json:"transactionId" yaml:"transactionId" mapstructure:"transactionId"`
}

Transaction urn:x-oca:ocpp:uid:2:233318

type TriggerMessageRequestJson

type TriggerMessageRequestJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Evse corresponds to the JSON schema field "evse".
	Evse *EVSEType `json:"evse,omitempty" yaml:"evse,omitempty" mapstructure:"evse,omitempty"`

	// RequestedMessage corresponds to the JSON schema field "requestedMessage".
	RequestedMessage MessageTriggerEnumType `json:"requestedMessage" yaml:"requestedMessage" mapstructure:"requestedMessage"`
}

func (*TriggerMessageRequestJson) IsRequest

func (*TriggerMessageRequestJson) IsRequest()

type TriggerMessageResponseJson

type TriggerMessageResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status TriggerMessageStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*TriggerMessageResponseJson) IsResponse

func (*TriggerMessageResponseJson) IsResponse()

type TriggerMessageStatusEnumType

type TriggerMessageStatusEnumType string
const TriggerMessageStatusEnumTypeAccepted TriggerMessageStatusEnumType = "Accepted"
const TriggerMessageStatusEnumTypeNotImplemented TriggerMessageStatusEnumType = "NotImplemented"
const TriggerMessageStatusEnumTypeRejected TriggerMessageStatusEnumType = "Rejected"

type TriggerReasonEnumType

type TriggerReasonEnumType string
const TriggerReasonEnumTypeAbnormalCondition TriggerReasonEnumType = "AbnormalCondition"
const TriggerReasonEnumTypeAuthorized TriggerReasonEnumType = "Authorized"
const TriggerReasonEnumTypeCablePluggedIn TriggerReasonEnumType = "CablePluggedIn"
const TriggerReasonEnumTypeChargingRateChanged TriggerReasonEnumType = "ChargingRateChanged"
const TriggerReasonEnumTypeChargingStateChanged TriggerReasonEnumType = "ChargingStateChanged"
const TriggerReasonEnumTypeDeauthorized TriggerReasonEnumType = "Deauthorized"
const TriggerReasonEnumTypeEVCommunicationLost TriggerReasonEnumType = "EVCommunicationLost"
const TriggerReasonEnumTypeEVConnectTimeout TriggerReasonEnumType = "EVConnectTimeout"
const TriggerReasonEnumTypeEVDeparted TriggerReasonEnumType = "EVDeparted"
const TriggerReasonEnumTypeEVDetected TriggerReasonEnumType = "EVDetected"
const TriggerReasonEnumTypeEnergyLimitReached TriggerReasonEnumType = "EnergyLimitReached"
const TriggerReasonEnumTypeMeterValueClock TriggerReasonEnumType = "MeterValueClock"
const TriggerReasonEnumTypeMeterValuePeriodic TriggerReasonEnumType = "MeterValuePeriodic"
const TriggerReasonEnumTypeRemoteStart TriggerReasonEnumType = "RemoteStart"
const TriggerReasonEnumTypeRemoteStop TriggerReasonEnumType = "RemoteStop"
const TriggerReasonEnumTypeResetCommand TriggerReasonEnumType = "ResetCommand"
const TriggerReasonEnumTypeSignedDataReceived TriggerReasonEnumType = "SignedDataReceived"
const TriggerReasonEnumTypeStopAuthorized TriggerReasonEnumType = "StopAuthorized"
const TriggerReasonEnumTypeTimeLimitReached TriggerReasonEnumType = "TimeLimitReached"
const TriggerReasonEnumTypeTrigger TriggerReasonEnumType = "Trigger"
const TriggerReasonEnumTypeUnlockCommand TriggerReasonEnumType = "UnlockCommand"

type UnitOfMeasureType

type UnitOfMeasureType struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Multiplier, this value represents the exponent to base 10. I.e. multiplier 3
	// means 10 raised to the 3rd power. Default is 0.
	//
	Multiplier int `json:"multiplier,omitempty" yaml:"multiplier,omitempty" mapstructure:"multiplier,omitempty"`

	// Unit of the value. Default = "Wh" if the (default) measurand is an "Energy"
	// type.
	// This field SHALL use a value from the list Standardized Units of Measurements
	// in Part 2 Appendices.
	// If an applicable unit is available in that list, otherwise a "custom" unit
	// might be used.
	//
	Unit string `json:"unit,omitempty" yaml:"unit,omitempty" mapstructure:"unit,omitempty"`
}

Represents a UnitOfMeasure with a multiplier

type UnlockConnectorRequestJson

type UnlockConnectorRequestJson struct {
	// This contains the identifier of the connector that needs to be unlocked.
	//
	ConnectorId int `json:"connectorId" yaml:"connectorId" mapstructure:"connectorId"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// This contains the identifier of the EVSE for which a connector needs to be
	// unlocked.
	//
	EvseId int `json:"evseId" yaml:"evseId" mapstructure:"evseId"`
}

func (*UnlockConnectorRequestJson) IsRequest

func (*UnlockConnectorRequestJson) IsRequest()

type UnlockConnectorResponseJson

type UnlockConnectorResponseJson struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Status corresponds to the JSON schema field "status".
	Status UnlockStatusEnumType `json:"status" yaml:"status" mapstructure:"status"`

	// StatusInfo corresponds to the JSON schema field "statusInfo".
	StatusInfo *StatusInfoType `json:"statusInfo,omitempty" yaml:"statusInfo,omitempty" mapstructure:"statusInfo,omitempty"`
}

func (*UnlockConnectorResponseJson) IsResponse

func (*UnlockConnectorResponseJson) IsResponse()

type UnlockStatusEnumType

type UnlockStatusEnumType string
const UnlockStatusEnumTypeOngoingAuthorizedTransaction UnlockStatusEnumType = "OngoingAuthorizedTransaction"
const UnlockStatusEnumTypeUnknownConnector UnlockStatusEnumType = "UnknownConnector"
const UnlockStatusEnumTypeUnlockFailed UnlockStatusEnumType = "UnlockFailed"
const UnlockStatusEnumTypeUnlocked UnlockStatusEnumType = "Unlocked"

type UpdateEnumType

type UpdateEnumType string
const UpdateEnumTypeDifferential UpdateEnumType = "Differential"
const UpdateEnumTypeFull UpdateEnumType = "Full"

type UploadLogStatusEnumType

type UploadLogStatusEnumType string
const UploadLogStatusEnumTypeAcceptedCanceled UploadLogStatusEnumType = "AcceptedCanceled"
const UploadLogStatusEnumTypeBadMessage UploadLogStatusEnumType = "BadMessage"
const UploadLogStatusEnumTypeIdle UploadLogStatusEnumType = "Idle"
const UploadLogStatusEnumTypeNotSupportedOperation UploadLogStatusEnumType = "NotSupportedOperation"
const UploadLogStatusEnumTypePermissionDenied UploadLogStatusEnumType = "PermissionDenied"
const UploadLogStatusEnumTypeUploadFailure UploadLogStatusEnumType = "UploadFailure"
const UploadLogStatusEnumTypeUploaded UploadLogStatusEnumType = "Uploaded"
const UploadLogStatusEnumTypeUploading UploadLogStatusEnumType = "Uploading"

type VPNEnumType

type VPNEnumType string
const VPNEnumTypeIKEv2 VPNEnumType = "IKEv2"
const VPNEnumTypeIPSec VPNEnumType = "IPSec"
const VPNEnumTypeL2TP VPNEnumType = "L2TP"
const VPNEnumTypePPTP VPNEnumType = "PPTP"

type VPNType

type VPNType struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// VPN. Group. Group_ Name
	// urn:x-oca:ocpp:uid:1:569274
	// VPN group.
	//
	Group *string `json:"group,omitempty" yaml:"group,omitempty" mapstructure:"group,omitempty"`

	// VPN. Key. VPN_ Key
	// urn:x-oca:ocpp:uid:1:569276
	// VPN shared secret.
	//
	Key string `json:"key" yaml:"key" mapstructure:"key"`

	// VPN. Password. Password
	// urn:x-oca:ocpp:uid:1:569275
	// VPN Password.
	//
	Password string `json:"password" yaml:"password" mapstructure:"password"`

	// VPN. Server. URI
	// urn:x-oca:ocpp:uid:1:569272
	// VPN Server Address
	//
	Server string `json:"server" yaml:"server" mapstructure:"server"`

	// Type corresponds to the JSON schema field "type".
	Type VPNEnumType `json:"type" yaml:"type" mapstructure:"type"`

	// VPN. User. User_ Name
	// urn:x-oca:ocpp:uid:1:569273
	// VPN User
	//
	User string `json:"user" yaml:"user" mapstructure:"user"`
}

VPN urn:x-oca:ocpp:uid:2:233268 VPN Configuration settings

type VariableAttributeType

type VariableAttributeType struct {
	// If true, value that will never be changed by the Charging Station at runtime.
	// Default when omitted is false.
	//
	Constant bool `json:"constant,omitempty" yaml:"constant,omitempty" mapstructure:"constant,omitempty"`

	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Mutability corresponds to the JSON schema field "mutability".
	Mutability *MutabilityEnumType `json:"mutability,omitempty" yaml:"mutability,omitempty" mapstructure:"mutability,omitempty"`

	// If true, value will be persistent across system reboots or power down. Default
	// when omitted is false.
	//
	Persistent bool `json:"persistent,omitempty" yaml:"persistent,omitempty" mapstructure:"persistent,omitempty"`

	// Type corresponds to the JSON schema field "type".
	Type *AttributeEnumType `json:"type,omitempty" yaml:"type,omitempty" mapstructure:"type,omitempty"`

	// Value of the attribute. May only be omitted when mutability is set to
	// 'WriteOnly'.
	//
	// The Configuration Variable
	// <<configkey-reporting-value-size,ReportingValueSize>> can be used
	// to limit GetVariableResult.attributeValue, VariableAttribute.value and
	// EventData.actualValue. The max size of these values will always remain equal.
	//
	Value *string `json:"value,omitempty" yaml:"value,omitempty" mapstructure:"value,omitempty"`
}

Attribute data of a variable.

type VariableCharacteristicsType

type VariableCharacteristicsType struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// DataType corresponds to the JSON schema field "dataType".
	DataType DataEnumType `json:"dataType" yaml:"dataType" mapstructure:"dataType"`

	// Maximum possible value of this variable. When the datatype of this Variable is
	// String, OptionList, SequenceList or MemberList, this field defines the maximum
	// length of the (CSV) string.
	//
	MaxLimit *float64 `json:"maxLimit,omitempty" yaml:"maxLimit,omitempty" mapstructure:"maxLimit,omitempty"`

	// Minimum possible value of this variable.
	//
	MinLimit *float64 `json:"minLimit,omitempty" yaml:"minLimit,omitempty" mapstructure:"minLimit,omitempty"`

	// Flag indicating if this variable supports monitoring.
	//
	SupportsMonitoring bool `json:"supportsMonitoring" yaml:"supportsMonitoring" mapstructure:"supportsMonitoring"`

	// Unit of the variable. When the transmitted value has a unit, this field SHALL
	// be included.
	//
	Unit *string `json:"unit,omitempty" yaml:"unit,omitempty" mapstructure:"unit,omitempty"`

	// Allowed values when variable is Option/Member/SequenceList.
	//
	// * OptionList: The (Actual) Variable value must be a single value from the
	// reported (CSV) enumeration list.
	//
	// * MemberList: The (Actual) Variable value  may be an (unordered) (sub-)set of
	// the reported (CSV) valid values list.
	//
	// * SequenceList: The (Actual) Variable value  may be an ordered (priority, etc)
	// (sub-)set of the reported (CSV) valid values.
	//
	// This is a comma separated list.
	//
	// The Configuration Variable
	// <<configkey-configuration-value-size,ConfigurationValueSize>> can
	// be used to limit SetVariableData.attributeValue and
	// VariableCharacteristics.valueList. The max size of these values will always
	// remain equal.
	//
	//
	ValuesList *string `json:"valuesList,omitempty" yaml:"valuesList,omitempty" mapstructure:"valuesList,omitempty"`
}

Fixed read-only parameters of a variable.

type VariableType

type VariableType struct {
	// CustomData corresponds to the JSON schema field "customData".
	CustomData *CustomDataType `json:"customData,omitempty" yaml:"customData,omitempty" mapstructure:"customData,omitempty"`

	// Name of instance in case the variable exists as multiple instances. Case
	// Insensitive. strongly advised to use Camel Case.
	//
	Instance *string `json:"instance,omitempty" yaml:"instance,omitempty" mapstructure:"instance,omitempty"`

	// Name of the variable. Name should be taken from the list of standardized
	// variable names whenever possible. Case Insensitive. strongly advised to use
	// Camel Case.
	//
	Name string `json:"name" yaml:"name" mapstructure:"name"`
}

Reference key to a component-variable.

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL