@citrineos/base
Version:
The base module for OCPP v2.0.1 including all interfaces. This module is not intended to be used directly, but rather as a dependency for other modules.
251 lines (250 loc) • 11.8 kB
JSON
{
"$id": "TransactionEventResponse",
"comment": "OCPP 2.1 Edition 1 (c) OCA, Creative Commons Attribution-NoDerivatives 4.0 International Public License",
"definitions": {
"AuthorizationStatusEnumType": {
"description": "Current status of the ID Token.\r\n",
"javaType": "AuthorizationStatusEnum",
"type": "string",
"additionalProperties": false,
"enum": [
"Accepted",
"Blocked",
"ConcurrentTx",
"Expired",
"Invalid",
"NoCredit",
"NotAllowedTypeEVSE",
"NotAtThisLocation",
"NotAtThisTime",
"Unknown"
],
"tsEnumNames": [
"Accepted",
"Blocked",
"ConcurrentTx",
"Expired",
"Invalid",
"NoCredit",
"NotAllowedTypeEVSE",
"NotAtThisLocation",
"NotAtThisTime",
"Unknown"
]
},
"MessageFormatEnumType": {
"description": "Format of the message.\r\n",
"javaType": "MessageFormatEnum",
"type": "string",
"additionalProperties": false,
"enum": ["ASCII", "HTML", "URI", "UTF8", "QRCODE"],
"tsEnumNames": ["ASCII", "HTML", "URI", "UTF8", "QRCODE"]
},
"AdditionalInfoType": {
"description": "Contains a case insensitive identifier to use for the authorization and the type of authorization to support multiple forms of identifiers.\r\n",
"javaType": "AdditionalInfo",
"type": "object",
"additionalProperties": false,
"properties": {
"additionalIdToken": {
"description": "*(2.1)* This field specifies the additional IdToken.\r\n",
"type": "string",
"maxLength": 255
},
"type": {
"description": "_additionalInfo_ can be used to send extra information to CSMS in addition to the regular authorization with _IdToken_. _AdditionalInfo_ contains one or more custom _types_, which need to be agreed upon by all parties involved. When the _type_ is not supported, the CSMS/Charging Station MAY ignore the _additionalInfo_.\r\n\r\n",
"type": "string",
"maxLength": 50
},
"customData": {
"$ref": "#/definitions/CustomDataType"
}
},
"required": ["additionalIdToken", "type"]
},
"IdTokenInfoType": {
"description": "Contains status information about an identifier.\r\nIt 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.\r\n",
"javaType": "IdTokenInfo",
"type": "object",
"additionalProperties": false,
"properties": {
"status": {
"$ref": "#/definitions/AuthorizationStatusEnumType"
},
"cacheExpiryDateTime": {
"description": "Date and Time after which the token must be considered invalid.\r\n",
"type": "string",
"format": "date-time"
},
"chargingPriority": {
"description": "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. \r\n",
"type": "integer",
"minimum": -9,
"maximum": 9
},
"groupIdToken": {
"$ref": "#/definitions/IdTokenType"
},
"language1": {
"description": "Preferred user interface language of identifier user. Contains a language code as defined in <<ref-RFC5646,[RFC5646]>>.\r\n\r\n",
"type": "string",
"maxLength": 8
},
"language2": {
"description": "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]>>.\r\n",
"type": "string",
"maxLength": 8
},
"evseId": {
"description": "Only used when the IdToken is only valid for one or more specific EVSEs, not for the entire Charging Station.\r\n\r\n",
"type": "array",
"additionalItems": false,
"items": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647
},
"minItems": 1
},
"personalMessage": {
"$ref": "#/definitions/MessageContentType"
},
"customData": {
"$ref": "#/definitions/CustomDataType"
}
},
"required": ["status"]
},
"IdTokenType": {
"description": "Contains a case insensitive identifier to use for the authorization and the type of authorization to support multiple forms of identifiers.\r\n",
"javaType": "IdToken",
"type": "object",
"additionalProperties": false,
"properties": {
"additionalInfo": {
"type": "array",
"additionalItems": false,
"items": {
"$ref": "#/definitions/AdditionalInfoType"
},
"minItems": 1
},
"idToken": {
"description": "*(2.1)* IdToken is case insensitive. Might hold the hidden id of an RFID tag, but can for example also contain a UUID.\r\n",
"type": "string",
"maxLength": 255
},
"type": {
"description": "*(2.1)* Enumeration of possible idToken types. Values defined in Appendix as IdTokenEnumStringType.\r\n",
"type": "string",
"maxLength": 20
},
"customData": {
"$ref": "#/definitions/CustomDataType"
}
},
"required": ["idToken", "type"]
},
"MessageContentType": {
"description": "Contains message details, for a message to be displayed on a Charging Station.\r\n\r\n",
"javaType": "MessageContent",
"type": "object",
"additionalProperties": false,
"properties": {
"format": {
"$ref": "#/definitions/MessageFormatEnumType"
},
"language": {
"description": "Message language identifier. Contains a language code as defined in <<ref-RFC5646,[RFC5646]>>.\r\n",
"type": "string",
"maxLength": 8
},
"content": {
"description": "*(2.1)* Required. Message contents. +\r\nMaximum length supported by Charging Station is given in OCPPCommCtrlr.FieldLength[\"MessageContentType.content\"].\r\n Maximum length defaults to 1024.\r\n\r\n",
"type": "string",
"maxLength": 1024
},
"customData": {
"$ref": "#/definitions/CustomDataType"
}
},
"required": ["format", "content"]
},
"TransactionLimitType": {
"description": "Cost, energy, time or SoC limit for a transaction.\r\n",
"javaType": "TransactionLimit",
"type": "object",
"additionalProperties": false,
"properties": {
"maxCost": {
"description": "Maximum allowed cost of transaction in currency of tariff.\r\n",
"type": "number"
},
"maxEnergy": {
"description": "Maximum allowed energy in Wh to charge in transaction.\r\n",
"type": "number"
},
"maxTime": {
"description": "Maximum duration of transaction in seconds from start to end.\r\n",
"type": "integer"
},
"maxSoC": {
"description": "Maximum State of Charge of EV in percentage.\r\n",
"type": "integer",
"minimum": 0,
"maximum": 100
},
"customData": {
"$ref": "#/definitions/CustomDataType"
}
}
},
"CustomDataType": {
"description": "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.",
"javaType": "CustomData",
"type": "object",
"properties": {
"vendorId": {
"type": "string",
"maxLength": 255
}
},
"required": ["vendorId"]
}
},
"type": "object",
"additionalProperties": false,
"properties": {
"totalCost": {
"description": "When _eventType_ of TransactionEventRequest is Updated, then this value contains the running cost. When _eventType_ of TransactionEventRequest is Ended, then this contains the final total cost of this transaction, including taxes, in the currency configured with the Configuration Variable: Currency. Absence of this value does not imply that the transaction was free. To indicate a free transaction, the CSMS SHALL send a value of 0.00.\r\n",
"type": "number"
},
"chargingPriority": {
"description": "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>> has a higher priority than the one in <<cmn_idtokeninfotype,IdTokenInfoType>>. \r\n",
"type": "integer",
"minimum": -9,
"maximum": 9
},
"idTokenInfo": {
"$ref": "#/definitions/IdTokenInfoType"
},
"transactionLimit": {
"$ref": "#/definitions/TransactionLimitType"
},
"updatedPersonalMessage": {
"$ref": "#/definitions/MessageContentType"
},
"updatedPersonalMessageExtra": {
"type": "array",
"additionalItems": false,
"items": {
"$ref": "#/definitions/MessageContentType"
},
"minItems": 1,
"maxItems": 4
},
"customData": {
"$ref": "#/definitions/CustomDataType"
}
}
}