build(deps-dev): apply updates
[e-mobility-charging-stations-simulator.git] / src / charging-station / ocpp / 2.0 / OCPP20Constants.ts
1 import {
2 type ConnectorStatusTransition,
3 OCPP20ConnectorStatusEnumType
4 } from '../../../types/index.js'
5 import { OCPPConstants } from '../OCPPConstants.js'
6
7 export class OCPP20Constants extends OCPPConstants {
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,
14 to: OCPP20ConnectorStatusEnumType.Unavailable
15 },
16 { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Faulted },
17 { to: OCPP20ConnectorStatusEnumType.Unavailable },
18 {
19 from: OCPP20ConnectorStatusEnumType.Unavailable,
20 to: OCPP20ConnectorStatusEnumType.Available
21 },
22 // {
23 // from: OCPP20ConnectorStatusEnumType.Unavailable,
24 // to: OCPP20ConnectorStatusEnumType.Unavailable
25 // },
26 {
27 from: OCPP20ConnectorStatusEnumType.Unavailable,
28 to: OCPP20ConnectorStatusEnumType.Faulted
29 },
30 { to: OCPP20ConnectorStatusEnumType.Faulted },
31 { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Available },
32 {
33 from: OCPP20ConnectorStatusEnumType.Faulted,
34 to: OCPP20ConnectorStatusEnumType.Unavailable
35 }
36 // { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Faulted }
37 ])
38
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,
47 to: OCPP20ConnectorStatusEnumType.Unavailable
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,
56 to: OCPP20ConnectorStatusEnumType.Unavailable
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,
65 to: OCPP20ConnectorStatusEnumType.Unavailable
66 },
67 { from: OCPP20ConnectorStatusEnumType.Reserved, to: OCPP20ConnectorStatusEnumType.Faulted },
68 { to: OCPP20ConnectorStatusEnumType.Unavailable },
69 {
70 from: OCPP20ConnectorStatusEnumType.Unavailable,
71 to: OCPP20ConnectorStatusEnumType.Available
72 },
73 {
74 from: OCPP20ConnectorStatusEnumType.Unavailable,
75 to: OCPP20ConnectorStatusEnumType.Occupied
76 },
77 // { from: OCPP20ConnectorStatusEnumType.Unavailable, to: OCPP20ConnectorStatusEnumType.Reserved },
78 // { from: OCPP20ConnectorStatusEnumType.Unavailable, to: OCPP20ConnectorStatusEnumType.Unavailable },
79 {
80 from: OCPP20ConnectorStatusEnumType.Unavailable,
81 to: OCPP20ConnectorStatusEnumType.Faulted
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,
89 to: OCPP20ConnectorStatusEnumType.Unavailable
90 }
91 // { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Faulted }
92 ]
93 )
94 }