-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnotify-event.ts
171 lines (169 loc) · 4.42 KB
/
notify-event.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
/* eslint-disable */
/**
* This file was automatically generated by json-schema-to-typescript.
* DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
* and run json-schema-to-typescript to regenerate this file.
*/
/**
* Type of monitor that triggered this event, e.g. exceeding a threshold value.
*
*
*/
export type EventTriggerEnumType = "Alerting" | "Delta" | "Periodic";
/**
* Specifies the event notification type of the message.
*
*
*/
export type EventNotificationEnumType =
| "HardWiredNotification"
| "HardWiredMonitor"
| "PreconfiguredMonitor"
| "CustomMonitor";
export interface NotifyEventRequestV201 {
customData?: CustomDataType;
/**
* Timestamp of the moment this message was generated at the Charging Station.
*
*/
generatedAt: string;
/**
* “to be continued” indicator. Indicates whether another part of the report follows in an upcoming notifyEventRequest message. Default value when omitted is false.
*
*/
tbc?: boolean;
/**
* Sequence number of this message. First message starts at 0.
*
*/
seqNo: number;
/**
* @minItems 1
*/
eventData: [EventDataType, ...EventDataType[]];
}
/**
* 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.
*/
export interface CustomDataType {
vendorId: string;
[k: string]: unknown;
}
/**
* Class to report an event notification for a component-variable.
*
*/
export interface EventDataType {
customData?: CustomDataType;
/**
* Identifies the event. This field can be referred to as a cause by other events.
*
*
*/
eventId: number;
/**
* Timestamp of the moment the report was generated.
*
*/
timestamp: string;
trigger: EventTriggerEnumType;
/**
* Refers to the Id of an event that is considered to be the cause for this event.
*
*
*/
cause?: number;
/**
* Actual value (_attributeType_ Actual) of the variable.
*
* 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.
*
*
*/
actualValue: string;
/**
* Technical (error) code as reported by component.
*
*/
techCode?: string;
/**
* Technical detail information as reported by component.
*
*/
techInfo?: string;
/**
* _Cleared_ is set to true to report the clearing of a monitored situation, i.e. a 'return to normal'.
*
*
*/
cleared?: boolean;
/**
* If an event notification is linked to a specific transaction, this field can be used to specify its transactionId.
*
*/
transactionId?: string;
component: ComponentType;
/**
* Identifies the VariableMonitoring which triggered the event.
*
*/
variableMonitoringId?: number;
eventNotificationType: EventNotificationEnumType;
variable: VariableType;
}
/**
* A physical or logical component
*
*/
export interface ComponentType {
customData?: CustomDataType;
evse?: EVSEType;
/**
* 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;
/**
* Name of instance in case the component exists as multiple instances. Case Insensitive. strongly advised to use Camel Case.
*
*/
instance?: string;
}
/**
* EVSE
* urn:x-oca:ocpp:uid:2:233123
* Electric Vehicle Supply Equipment
*
*/
export interface EVSEType {
customData?: CustomDataType;
/**
* 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: number;
/**
* An id to designate a specific connector (on an EVSE) by connector index number.
*
*/
connectorId?: number;
}
/**
* Reference key to a component-variable.
*
*/
export interface VariableType {
customData?: CustomDataType;
/**
* 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;
/**
* Name of instance in case the variable exists as multiple instances. Case Insensitive. strongly advised to use Camel Case.
*
*/
instance?: string;
}