Fixes to OCA OCPP 2.0.1 JSON schemas
[e-mobility-charging-stations-simulator.git] / src / assets / json-schemas / ocpp / 2.0 / TransactionEventResponse.json
1 {
2 "$schema": "http://json-schema.org/draft-07/schema#",
3 "$id": "urn:OCPP:Cp:2:2020:3:TransactionEventResponse",
4 "$comment": "OCPP 2.0.1 FINAL",
5 "definitions": {
6 "CustomDataType": {
7 "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.",
8 "javaType": "CustomData",
9 "type": "object",
10 "properties": {
11 "vendorId": {
12 "type": "string",
13 "maxLength": 255
14 }
15 },
16 "required": ["vendorId"]
17 },
18 "AuthorizationStatusEnumType": {
19 "description": "ID_ Token. Status. Authorization_ Status\r\nurn:x-oca:ocpp:uid:1:569372\r\nCurrent status of the ID Token.\r\n",
20 "javaType": "AuthorizationStatusEnum",
21 "type": "string",
22 "additionalProperties": false,
23 "enum": [
24 "Accepted",
25 "Blocked",
26 "ConcurrentTx",
27 "Expired",
28 "Invalid",
29 "NoCredit",
30 "NotAllowedTypeEVSE",
31 "NotAtThisLocation",
32 "NotAtThisTime",
33 "Unknown"
34 ]
35 },
36 "IdTokenEnumType": {
37 "description": "Enumeration of possible idToken types.\r\n",
38 "javaType": "IdTokenEnum",
39 "type": "string",
40 "additionalProperties": false,
41 "enum": [
42 "Central",
43 "eMAID",
44 "ISO14443",
45 "ISO15693",
46 "KeyCode",
47 "Local",
48 "MacAddress",
49 "NoAuthorization"
50 ]
51 },
52 "MessageFormatEnumType": {
53 "description": "Message_ Content. Format. Message_ Format_ Code\r\nurn:x-enexis:ecdm:uid:1:570848\r\nFormat of the message.\r\n",
54 "javaType": "MessageFormatEnum",
55 "type": "string",
56 "additionalProperties": false,
57 "enum": ["ASCII", "HTML", "URI", "UTF8"]
58 },
59 "AdditionalInfoType": {
60 "description": "Contains a case insensitive identifier to use for the authorization and the type of authorization to support multiple forms of identifiers.\r\n",
61 "javaType": "AdditionalInfo",
62 "type": "object",
63 "additionalProperties": false,
64 "properties": {
65 "customData": {
66 "$ref": "#/definitions/CustomDataType"
67 },
68 "additionalIdToken": {
69 "description": "This field specifies the additional IdToken.\r\n",
70 "type": "string",
71 "maxLength": 36
72 },
73 "type": {
74 "description": "This defines the type of the additionalIdToken. This is a custom type, so the implementation needs to be agreed upon by all involved parties.\r\n",
75 "type": "string",
76 "maxLength": 50
77 }
78 },
79 "required": ["additionalIdToken", "type"]
80 },
81 "IdTokenInfoType": {
82 "description": "ID_ Token\r\nurn:x-oca:ocpp:uid:2:233247\r\nContains 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",
83 "javaType": "IdTokenInfo",
84 "type": "object",
85 "additionalProperties": false,
86 "properties": {
87 "customData": {
88 "$ref": "#/definitions/CustomDataType"
89 },
90 "status": {
91 "$ref": "#/definitions/AuthorizationStatusEnumType"
92 },
93 "cacheExpiryDateTime": {
94 "description": "ID_ Token. Expiry. Date_ Time\r\nurn:x-oca:ocpp:uid:1:569373\r\nDate and Time after which the token must be considered invalid.\r\n",
95 "type": "string",
96 "format": "date-time"
97 },
98 "chargingPriority": {
99 "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",
100 "type": "integer"
101 },
102 "language1": {
103 "description": "ID_ Token. Language1. Language_ Code\r\nurn:x-oca:ocpp:uid:1:569374\r\nPreferred user interface language of identifier user. Contains a language code as defined in <<ref-RFC5646,[RFC5646]>>.\r\n\r\n",
104 "type": "string",
105 "maxLength": 8
106 },
107 "evseId": {
108 "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",
109 "type": "array",
110 "additionalItems": false,
111 "items": {
112 "type": "integer"
113 },
114 "minItems": 1
115 },
116 "groupIdToken": {
117 "$ref": "#/definitions/IdTokenType"
118 },
119 "language2": {
120 "description": "ID_ Token. Language2. Language_ Code\r\nurn:x-oca:ocpp:uid:1:569375\r\nSecond 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",
121 "type": "string",
122 "maxLength": 8
123 },
124 "personalMessage": {
125 "$ref": "#/definitions/MessageContentType"
126 }
127 },
128 "required": ["status"]
129 },
130 "IdTokenType": {
131 "description": "Contains a case insensitive identifier to use for the authorization and the type of authorization to support multiple forms of identifiers.\r\n",
132 "javaType": "IdToken",
133 "type": "object",
134 "additionalProperties": false,
135 "properties": {
136 "customData": {
137 "$ref": "#/definitions/CustomDataType"
138 },
139 "additionalInfo": {
140 "type": "array",
141 "additionalItems": false,
142 "items": {
143 "$ref": "#/definitions/AdditionalInfoType"
144 },
145 "minItems": 1
146 },
147 "idToken": {
148 "description": "IdToken is case insensitive. Might hold the hidden id of an RFID tag, but can for example also contain a UUID.\r\n",
149 "type": "string",
150 "maxLength": 36
151 },
152 "type": {
153 "$ref": "#/definitions/IdTokenEnumType"
154 }
155 },
156 "required": ["idToken", "type"]
157 },
158 "MessageContentType": {
159 "description": "Message_ Content\r\nurn:x-enexis:ecdm:uid:2:234490\r\nContains message details, for a message to be displayed on a Charging Station.\r\n\r\n",
160 "javaType": "MessageContent",
161 "type": "object",
162 "additionalProperties": false,
163 "properties": {
164 "customData": {
165 "$ref": "#/definitions/CustomDataType"
166 },
167 "format": {
168 "$ref": "#/definitions/MessageFormatEnumType"
169 },
170 "language": {
171 "description": "Message_ Content. Language. Language_ Code\r\nurn:x-enexis:ecdm:uid:1:570849\r\nMessage language identifier. Contains a language code as defined in <<ref-RFC5646,[RFC5646]>>.\r\n",
172 "type": "string",
173 "maxLength": 8
174 },
175 "content": {
176 "description": "Message_ Content. Content. Message\r\nurn:x-enexis:ecdm:uid:1:570852\r\nMessage contents.\r\n\r\n",
177 "type": "string",
178 "maxLength": 512
179 }
180 },
181 "required": ["format", "content"]
182 }
183 },
184 "type": "object",
185 "additionalProperties": false,
186 "properties": {
187 "customData": {
188 "$ref": "#/definitions/CustomDataType"
189 },
190 "totalCost": {
191 "description": "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.\r\n\r\n",
192 "type": "number"
193 },
194 "chargingPriority": {
195 "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>> overrules the one in <<cmn_idtokeninfotype,IdTokenInfoType>>. \r\n",
196 "type": "integer"
197 },
198 "idTokenInfo": {
199 "$ref": "#/definitions/IdTokenInfoType"
200 },
201 "updatedPersonalMessage": {
202 "$ref": "#/definitions/MessageContentType"
203 }
204 }
205 }