@zetra/citrineos-ocpprouter 1.8.3-fork.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/module/router.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ import type { OCPPVersionType } from '@citrineos/base';
2
+ import { MessageOrigin, MessageState } from '@citrineos/base';
3
+ import type { IOCPPMessageRepository, ISubscriptionRepository } from '@citrineos/data';
4
+ import { Subscription } from '@citrineos/data';
5
+ import type { ILogObj } from 'tslog';
6
+ import { Logger } from 'tslog';
7
+ export declare class WebhookDispatcher {
8
+ protected static readonly SUBSCRIPTION_REFRESH_INTERVAL_MS: number;
9
+ protected _logger: Logger<ILogObj>;
10
+ protected _ocppMessageRepository: IOCPPMessageRepository;
11
+ protected _subscriptionRepository: ISubscriptionRepository;
12
+ protected _identifiers: Set<string>;
13
+ protected _onConnectionCallbacks: Map<string, OnConnectionCallback[]>;
14
+ protected _onCloseCallbacks: Map<string, OnCloseCallback[]>;
15
+ protected _onMessageCallbacks: Map<string, OnMessageCallback[]>;
16
+ protected _sentMessageCallbacks: Map<string, OnSentMessageCallback[]>;
17
+ constructor(ocppMessageRepository: IOCPPMessageRepository, subscriptionRepository: ISubscriptionRepository, logger?: Logger<ILogObj>);
18
+ register(tenantId: number, stationId: string): Promise<void>;
19
+ deregister(tenantId: number, stationId: string): Promise<void>;
20
+ dispatchMessageReceivedUnparsed(tenantId: number, stationId: string, message: string, timestamp: string, protocol: OCPPVersionType, action: string, state: MessageState): Promise<void>;
21
+ dispatchMessageReceived(tenantId: number, stationId: string, timestamp: string, protocol: OCPPVersionType, action: string, state: MessageState, rpcMessage: any): Promise<void>;
22
+ dispatchMessageSent(identifier: string, action: string, state: MessageState, timestamp: string, protocol: OCPPVersionType, rpcMessage: any): Promise<void>;
23
+ protected _refreshSubscriptions(): Promise<void>;
24
+ /**
25
+ * Loads all subscriptions for a given connection into memory
26
+ *
27
+ * @param {number} tenantId
28
+ * @param {string} stationId
29
+ * @return {Promise<void>} a promise that resolves once all subscriptions are loaded
30
+ */
31
+ protected _loadSubscriptionsForConnection(tenantId: number, stationId: string): Promise<void>;
32
+ protected _onConnectionCallback(subscription: Subscription): (info?: Map<string, string>) => Promise<boolean>;
33
+ protected _onCloseCallback(subscription: Subscription): (info?: Map<string, string>) => Promise<boolean>;
34
+ protected _onMessageReceivedCallback(subscription: Subscription): (message: string, info?: Map<string, string>) => Promise<boolean>;
35
+ protected _onMessageSentCallback(subscription: Subscription): (message: string, info?: Map<string, string>) => Promise<boolean>;
36
+ /**
37
+ * Sends a message to a given URL that has been subscribed to a station connection event
38
+ *
39
+ * @param {Object} requestBody - request body containing stationId, event, origin, message, error, and info
40
+ * @param {string} url - the URL to fetch data from
41
+ * @return {Promise<boolean>} a Promise that resolves to a boolean indicating success
42
+ */
43
+ protected _subscriptionCallback(requestBody: {
44
+ stationId: string;
45
+ event: string;
46
+ origin?: MessageOrigin;
47
+ message?: string;
48
+ info?: {
49
+ [k: string]: string;
50
+ };
51
+ }, url: string): Promise<boolean>;
52
+ }
53
+ export type OnConnectionCallback = (info?: Map<string, string>) => Promise<boolean>;
54
+ export type OnCloseCallback = (info?: Map<string, string>) => Promise<boolean>;
55
+ export type OnMessageCallback = (message: string, info?: Map<string, string>) => Promise<boolean>;
56
+ export type OnSentMessageCallback = (message: string, info?: Map<string, string>) => Promise<boolean>;
@@ -0,0 +1,280 @@
1
+ import { createIdentifier, getStationIdFromIdentifier, getTenantIdFromIdentifier, MessageOrigin, MessageState, } from '@citrineos/base';
2
+ import { Subscription } from '@citrineos/data';
3
+ import { Logger } from 'tslog';
4
+ import { v4 as uuidv4 } from 'uuid';
5
+ export class WebhookDispatcher {
6
+ static SUBSCRIPTION_REFRESH_INTERVAL_MS = 3 * 60 * 1000;
7
+ _logger;
8
+ _ocppMessageRepository;
9
+ _subscriptionRepository;
10
+ _identifiers = new Set();
11
+ // Structure of the maps: key = identifier, value = array of callbacks
12
+ _onConnectionCallbacks = new Map();
13
+ _onCloseCallbacks = new Map();
14
+ _onMessageCallbacks = new Map();
15
+ _sentMessageCallbacks = new Map();
16
+ constructor(ocppMessageRepository, subscriptionRepository, logger) {
17
+ this._ocppMessageRepository = ocppMessageRepository;
18
+ this._subscriptionRepository = subscriptionRepository;
19
+ this._logger = logger
20
+ ? logger.getSubLogger({ name: this.constructor.name })
21
+ : new Logger({ name: this.constructor.name });
22
+ setInterval(async () => {
23
+ await this._refreshSubscriptions();
24
+ }, WebhookDispatcher.SUBSCRIPTION_REFRESH_INTERVAL_MS);
25
+ }
26
+ async register(tenantId, stationId) {
27
+ const identifier = createIdentifier(tenantId, stationId);
28
+ try {
29
+ await this._loadSubscriptionsForConnection(tenantId, stationId);
30
+ await Promise.all(this._onConnectionCallbacks.get(identifier)?.map((callback) => callback()) ?? []);
31
+ this._identifiers.add(identifier);
32
+ }
33
+ catch (error) {
34
+ this._logger.error(`Failed to register ${identifier}`, error);
35
+ }
36
+ }
37
+ async deregister(tenantId, stationId) {
38
+ const identifier = createIdentifier(tenantId, stationId);
39
+ try {
40
+ await Promise.all(this._onCloseCallbacks.get(identifier)?.map((callback) => callback()) ?? []);
41
+ this._identifiers.delete(identifier);
42
+ this._onConnectionCallbacks.delete(identifier);
43
+ this._onCloseCallbacks.delete(identifier);
44
+ this._onMessageCallbacks.delete(identifier);
45
+ this._sentMessageCallbacks.delete(identifier);
46
+ }
47
+ catch (error) {
48
+ this._logger.error(`Failed to deregister ${identifier}`, error);
49
+ }
50
+ }
51
+ async dispatchMessageReceivedUnparsed(tenantId, stationId, message, timestamp, protocol, action, state) {
52
+ const identifier = createIdentifier(tenantId, stationId);
53
+ try {
54
+ // UUID generated so that unparsed messages don't end up referencing each other
55
+ const messageId = uuidv4();
56
+ const origin = MessageOrigin.ChargingStation;
57
+ const info = new Map([
58
+ ['correlationId', messageId],
59
+ ['origin', origin],
60
+ ['timestamp', timestamp],
61
+ ['protocol', protocol],
62
+ ['action', action],
63
+ ]);
64
+ const messagePromise = this._ocppMessageRepository.createOCPPMessage(tenantId, {
65
+ tenantId: tenantId,
66
+ stationId: stationId,
67
+ correlationId: messageId,
68
+ origin: origin,
69
+ state: state,
70
+ protocol: protocol,
71
+ action: action,
72
+ message: message,
73
+ timestamp: timestamp,
74
+ });
75
+ const promises = this._onMessageCallbacks.get(identifier)?.map((callback) => callback(message, info)) ?? [];
76
+ promises.push(messagePromise);
77
+ await Promise.all(promises);
78
+ }
79
+ catch (error) {
80
+ this._logger.error(`Failed to dispatch message received for ${identifier}`, error);
81
+ }
82
+ }
83
+ async dispatchMessageReceived(tenantId, stationId, timestamp, protocol, action, state, rpcMessage) {
84
+ const identifier = createIdentifier(tenantId, stationId);
85
+ const messageId = rpcMessage[1];
86
+ const origin = MessageOrigin.ChargingStation;
87
+ const messageRecord = await this._ocppMessageRepository.createOCPPMessage(tenantId, {
88
+ tenantId: tenantId,
89
+ stationId: stationId,
90
+ correlationId: messageId,
91
+ origin: origin,
92
+ state: state,
93
+ action: action,
94
+ protocol: protocol,
95
+ message: rpcMessage,
96
+ timestamp: timestamp,
97
+ });
98
+ if (action === undefined) {
99
+ this._logger.debug(`Using action from stored message for correlationId ${messageId} and tenantId ${tenantId}: ${messageRecord.action}`);
100
+ action = messageRecord.action;
101
+ }
102
+ try {
103
+ const info = new Map([
104
+ ['correlationId', messageId],
105
+ ['origin', origin],
106
+ ['timestamp', timestamp],
107
+ ['protocol', protocol],
108
+ ['action', action ? action : 'undefined'],
109
+ ]);
110
+ const rawMessage = JSON.stringify(rpcMessage);
111
+ const promises = this._onMessageCallbacks.get(identifier)?.map((callback) => callback(rawMessage, info).catch((reason) => {
112
+ this._logger.error(`Failed to execute onMessage callback for ${identifier} with messageId ${messageId}: ${reason}`);
113
+ return false;
114
+ })) ?? [];
115
+ await Promise.all(promises);
116
+ }
117
+ catch (err) {
118
+ this._logger.error(`Failed to dispatch message received for ${identifier} : ${err}`);
119
+ }
120
+ }
121
+ async dispatchMessageSent(identifier, action, state, timestamp, protocol, rpcMessage) {
122
+ const tenantId = getTenantIdFromIdentifier(identifier);
123
+ const stationId = getStationIdFromIdentifier(identifier);
124
+ const messageId = rpcMessage[1];
125
+ const origin = MessageOrigin.ChargingStationManagementSystem;
126
+ const messageRecordPromise = this._ocppMessageRepository.createOCPPMessage(tenantId, {
127
+ tenantId: tenantId,
128
+ stationId: stationId,
129
+ correlationId: messageId,
130
+ origin: origin,
131
+ state: state,
132
+ action: action,
133
+ protocol: protocol,
134
+ message: rpcMessage,
135
+ timestamp: timestamp,
136
+ });
137
+ try {
138
+ const info = new Map([
139
+ ['correlationId', messageId],
140
+ ['origin', origin],
141
+ ['timestamp', timestamp],
142
+ ['protocol', protocol],
143
+ ['action', action ? action : 'undefined'],
144
+ ]);
145
+ const rawMessage = JSON.stringify(rpcMessage);
146
+ const promises = this._sentMessageCallbacks.get(identifier)?.map((callback) => callback(rawMessage, info).catch((reason) => {
147
+ this._logger.error(`Failed to execute sentMessage callback for ${identifier} with messageId ${messageId}: ${reason}`);
148
+ return false;
149
+ })) ?? [];
150
+ await Promise.all([...promises, messageRecordPromise]);
151
+ }
152
+ catch (err) {
153
+ this._logger.error(`Failed to dispatch message sent for ${identifier} : ${err}`);
154
+ }
155
+ }
156
+ async _refreshSubscriptions() {
157
+ if (this._identifiers.size === 0) {
158
+ return;
159
+ }
160
+ this._logger.debug(`Refreshing subscriptions for ${this._identifiers.size} identifiers`);
161
+ this._identifiers.forEach((identifier) => this._loadSubscriptionsForConnection(getTenantIdFromIdentifier(identifier), getStationIdFromIdentifier(identifier)));
162
+ }
163
+ /**
164
+ * Loads all subscriptions for a given connection into memory
165
+ *
166
+ * @param {number} tenantId
167
+ * @param {string} stationId
168
+ * @return {Promise<void>} a promise that resolves once all subscriptions are loaded
169
+ */
170
+ async _loadSubscriptionsForConnection(tenantId, stationId) {
171
+ const onConnectionCallbacks = [];
172
+ const onCloseCallbacks = [];
173
+ const onMessageCallbacks = [];
174
+ const sentMessageCallbacks = [];
175
+ const subscriptions = await this._subscriptionRepository.readAllByStationId(tenantId, stationId);
176
+ for (const subscription of subscriptions) {
177
+ if (subscription.onConnect) {
178
+ onConnectionCallbacks.push(this._onConnectionCallback(subscription));
179
+ this._logger.debug(`Added onConnect callback to ${subscription.url} for station ${subscription.stationId}`);
180
+ }
181
+ if (subscription.onClose) {
182
+ onCloseCallbacks.push(this._onCloseCallback(subscription));
183
+ this._logger.debug(`Added onClose callback to ${subscription.url} for station ${subscription.stationId}`);
184
+ }
185
+ if (subscription.onMessage) {
186
+ onMessageCallbacks.push(this._onMessageReceivedCallback(subscription));
187
+ this._logger.debug(`Added onMessage callback to ${subscription.url} for station ${subscription.stationId}`);
188
+ }
189
+ if (subscription.sentMessage) {
190
+ sentMessageCallbacks.push(this._onMessageSentCallback(subscription));
191
+ this._logger.debug(`Added sentMessage callback to ${subscription.url} for station ${subscription.stationId}`);
192
+ }
193
+ }
194
+ const connectionIdentifier = createIdentifier(tenantId, stationId);
195
+ this._onConnectionCallbacks.set(connectionIdentifier, onConnectionCallbacks);
196
+ this._onCloseCallbacks.set(connectionIdentifier, onCloseCallbacks);
197
+ this._onMessageCallbacks.set(connectionIdentifier, onMessageCallbacks);
198
+ this._sentMessageCallbacks.set(connectionIdentifier, sentMessageCallbacks);
199
+ }
200
+ _onConnectionCallback(subscription) {
201
+ return (info) => this._subscriptionCallback({
202
+ stationId: subscription.stationId,
203
+ event: 'connected',
204
+ info: info ? Object.fromEntries(info) : info,
205
+ }, subscription.url);
206
+ }
207
+ _onCloseCallback(subscription) {
208
+ return (info) => this._subscriptionCallback({
209
+ stationId: subscription.stationId,
210
+ event: 'closed',
211
+ info: info ? Object.fromEntries(info) : info,
212
+ }, subscription.url);
213
+ }
214
+ _onMessageReceivedCallback(subscription) {
215
+ return async (message, info) => {
216
+ if (!subscription.messageRegexFilter ||
217
+ new RegExp(subscription.messageRegexFilter).test(message)) {
218
+ return this._subscriptionCallback({
219
+ stationId: subscription.stationId,
220
+ event: 'message',
221
+ origin: MessageOrigin.ChargingStation,
222
+ message: message,
223
+ info: info ? Object.fromEntries(info) : info,
224
+ }, subscription.url);
225
+ }
226
+ else {
227
+ // Ignore
228
+ return true;
229
+ }
230
+ };
231
+ }
232
+ _onMessageSentCallback(subscription) {
233
+ return async (message, info) => {
234
+ if (!subscription.messageRegexFilter ||
235
+ new RegExp(subscription.messageRegexFilter).test(message)) {
236
+ return this._subscriptionCallback({
237
+ stationId: subscription.stationId,
238
+ event: 'message',
239
+ origin: MessageOrigin.ChargingStationManagementSystem,
240
+ message: message,
241
+ info: info ? Object.fromEntries(info) : info,
242
+ }, subscription.url);
243
+ }
244
+ else {
245
+ // Ignore
246
+ return true;
247
+ }
248
+ };
249
+ }
250
+ /**
251
+ * Sends a message to a given URL that has been subscribed to a station connection event
252
+ *
253
+ * @param {Object} requestBody - request body containing stationId, event, origin, message, error, and info
254
+ * @param {string} url - the URL to fetch data from
255
+ * @return {Promise<boolean>} a Promise that resolves to a boolean indicating success
256
+ */
257
+ async _subscriptionCallback(requestBody, url) {
258
+ try {
259
+ const response = await fetch(url, {
260
+ method: 'POST',
261
+ headers: {
262
+ 'Content-Type': 'application/json',
263
+ },
264
+ body: JSON.stringify(requestBody),
265
+ });
266
+ if (!response.ok) {
267
+ const errorText = await response.text();
268
+ this._logger.error(`Route to subscription ${url} on charging station ${requestBody.stationId} failed.
269
+ Event: ${requestBody.event}, ${response.status} ${response.statusText} - ${errorText}`);
270
+ }
271
+ return response.ok;
272
+ }
273
+ catch (error) {
274
+ this._logger.error(`Route to subscription ${url} on charging station ${requestBody.stationId} failed.
275
+ Event: ${requestBody.event}, ${error}`);
276
+ return false;
277
+ }
278
+ }
279
+ }
280
+ //# sourceMappingURL=webhook.dispatcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhook.dispatcher.js","sourceRoot":"","sources":["../../src/module/webhook.dispatcher.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,27 @@
1
+ {
2
+ "name": "@zetra/citrineos-ocpprouter",
3
+ "version": "1.8.3-fork.1",
4
+ "type": "module",
5
+ "description": "The ocpprouter module for OCPP v2.0.1. This module is not intended to be used directly, but rather as a dependency for other modules.",
6
+ "main": "dist/index.js",
7
+ "types": "dist/index.d.ts",
8
+ "files": [
9
+ "dist"
10
+ ],
11
+ "scripts": {
12
+ "prepublish": "npx eslint",
13
+ "test": "vitest run"
14
+ },
15
+ "keywords": [
16
+ "ocpp",
17
+ "ocpp_v201"
18
+ ],
19
+ "license": "Apache-2.0",
20
+ "devDependencies": {},
21
+ "dependencies": {
22
+ "@zetra/citrineos-base": "1.8.3-fork.1",
23
+ "@zetra/citrineos-data": "1.8.3-fork.1",
24
+ "@zetra/citrineos-util": "1.8.3-fork.1",
25
+ "node-forge": "1.3.2"
26
+ }
27
+ }