fix: fix get composite schedule rejection condition
[e-mobility-charging-stations-simulator.git] / src / charging-station / ocpp / 2.0 / OCPP20Constants.ts
CommitLineData
a6ef1ece
JB
1import {
2 type ConnectorStatusTransition,
66a7748d
JB
3 OCPP20ConnectorStatusEnumType
4} from '../../../types/index.js'
5import { OCPPConstants } from '../OCPPConstants.js'
48b75072 6
48b75072 7export class OCPP20Constants extends OCPPConstants {
0a376442
JB
8 static readonly ChargingStationStatusTransitions: Readonly<ConnectorStatusTransition[]> =
9 Object.freeze([
10 { to: OCPP20ConnectorStatusEnumType.Available },
11 // { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Available },
12 {
13 from: OCPP20ConnectorStatusEnumType.Available,
66a7748d 14 to: OCPP20ConnectorStatusEnumType.Unavailable
0a376442
JB
15 },
16 { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Faulted },
17 { to: OCPP20ConnectorStatusEnumType.Unavailable },
18 {
19 from: OCPP20ConnectorStatusEnumType.Unavailable,
66a7748d 20 to: OCPP20ConnectorStatusEnumType.Available
0a376442
JB
21 },
22 // {
23 // from: OCPP20ConnectorStatusEnumType.Unavailable,
24 // to: OCPP20ConnectorStatusEnumType.Unavailable,
25 // },
26 {
27 from: OCPP20ConnectorStatusEnumType.Unavailable,
66a7748d 28 to: OCPP20ConnectorStatusEnumType.Faulted
0a376442
JB
29 },
30 { to: OCPP20ConnectorStatusEnumType.Faulted },
31 { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Available },
32 {
33 from: OCPP20ConnectorStatusEnumType.Faulted,
66a7748d
JB
34 to: OCPP20ConnectorStatusEnumType.Unavailable
35 }
0a376442 36 // { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Faulted },
66a7748d 37 ])
48b75072 38
0a376442
JB
39 static readonly ConnectorStatusTransitions: Readonly<ConnectorStatusTransition[]> = Object.freeze(
40 [
41 { to: OCPP20ConnectorStatusEnumType.Available },
42 // { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Available },
43 { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Occupied },
44 { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Reserved },
45 {
46 from: OCPP20ConnectorStatusEnumType.Available,
66a7748d 47 to: OCPP20ConnectorStatusEnumType.Unavailable
0a376442
JB
48 },
49 { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Faulted },
50 // { to: OCPP20ConnectorStatusEnumType.Occupied },
51 { from: OCPP20ConnectorStatusEnumType.Occupied, to: OCPP20ConnectorStatusEnumType.Available },
52 // { from: OCPP20ConnectorStatusEnumType.Occupied, to: OCPP20ConnectorStatusEnumType.Occupied },
53 // { from: OCPP20ConnectorStatusEnumType.Occupied, to: OCPP20ConnectorStatusEnumType.Reserved },
54 {
55 from: OCPP20ConnectorStatusEnumType.Occupied,
66a7748d 56 to: OCPP20ConnectorStatusEnumType.Unavailable
0a376442
JB
57 },
58 { from: OCPP20ConnectorStatusEnumType.Occupied, to: OCPP20ConnectorStatusEnumType.Faulted },
59 // { to: OCPP20ConnectorStatusEnumType.Reserved },
60 { from: OCPP20ConnectorStatusEnumType.Reserved, to: OCPP20ConnectorStatusEnumType.Available },
61 { from: OCPP20ConnectorStatusEnumType.Reserved, to: OCPP20ConnectorStatusEnumType.Occupied },
62 // { from: OCPP20ConnectorStatusEnumType.Reserved, to: OCPP20ConnectorStatusEnumType.Reserved },
63 {
64 from: OCPP20ConnectorStatusEnumType.Reserved,
66a7748d 65 to: OCPP20ConnectorStatusEnumType.Unavailable
0a376442
JB
66 },
67 { from: OCPP20ConnectorStatusEnumType.Reserved, to: OCPP20ConnectorStatusEnumType.Faulted },
68 { to: OCPP20ConnectorStatusEnumType.Unavailable },
69 {
70 from: OCPP20ConnectorStatusEnumType.Unavailable,
66a7748d 71 to: OCPP20ConnectorStatusEnumType.Available
0a376442
JB
72 },
73 {
74 from: OCPP20ConnectorStatusEnumType.Unavailable,
66a7748d 75 to: OCPP20ConnectorStatusEnumType.Occupied
0a376442
JB
76 },
77 // { from: OCPP20ConnectorStatusEnumType.Unavailable, to: OCPP20ConnectorStatusEnumType.Reserved },
78 // { from: OCPP20ConnectorStatusEnumType.Unavailable, to: OCPP20ConnectorStatusEnumType.Unavailable },
79 {
80 from: OCPP20ConnectorStatusEnumType.Unavailable,
66a7748d 81 to: OCPP20ConnectorStatusEnumType.Faulted
0a376442
JB
82 },
83 { to: OCPP20ConnectorStatusEnumType.Faulted },
84 { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Available },
85 { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Occupied },
86 { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Reserved },
87 {
88 from: OCPP20ConnectorStatusEnumType.Faulted,
66a7748d
JB
89 to: OCPP20ConnectorStatusEnumType.Unavailable
90 }
a4385edc 91 // { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Faulted }
66a7748d
JB
92 ]
93 )
48b75072 94}