@czlonkowski/n8n-nodes-librus 0.2.0 → 0.3.0
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.
- package/CHANGELOG.md +9 -0
- package/dist/nodes/Librus/Librus.node.js +2 -1
- package/dist/nodes/Librus/Librus.node.js.map +1 -1
- package/dist/nodes/Librus/LibrusClient.d.ts +14 -1
- package/dist/nodes/Librus/LibrusClient.js +129 -85
- package/dist/nodes/Librus/LibrusClient.js.map +1 -1
- package/dist/nodes/Librus/LibrusTrigger.node.js +2 -1
- package/dist/nodes/Librus/LibrusTrigger.node.js.map +1 -1
- package/dist/nodes/Librus/sessionCache.d.ts +25 -0
- package/dist/nodes/Librus/sessionCache.js +51 -0
- package/dist/nodes/Librus/sessionCache.js.map +1 -0
- package/docs/architecture.md +14 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.3.0 — 2026-09-24
|
|
4
|
+
|
|
5
|
+
- Reuse one logged-in Librus session across polls, triggers and Get Content items on the same account instead of logging in from scratch on every operation, which made three triggers perform at least 72 logins a day. Sessions live in process memory only, keyed by a hash of login and password, and are never written to workflow static data, credentials or output.
|
|
6
|
+
- Run operations on one account one at a time, so triggers never log in concurrently or replace each other's cookies mid-request.
|
|
7
|
+
- Detect a stored session that Librus has ended on first use and log in again once; on a reused session a page instead of JSON or a bare 403 also counts as expired. Any failure drops the stored session, and sessions older than 6 hours are replaced.
|
|
8
|
+
- Log the session lifecycle (new login and its reason, reuse with the session's age, expiry after N minutes) to the n8n log at info level, without credentials, cookies or content, so the real session lifetime can be measured.
|
|
9
|
+
- Name the cause and host in TRANSPORT_ERROR, e.g. ETIMEDOUT on synergia.librus.pl, instead of discarding it; only system-style error codes are copied.
|
|
10
|
+
- Give the message operations a fresh request budget for their retry after a session expiry, as the calendar operation already had.
|
|
11
|
+
|
|
3
12
|
## 0.2.0 — 2026-09-12
|
|
4
13
|
|
|
5
14
|
- Add two calendar events, Nowe wydarzenie w terminarzu and Zmiana wydarzenia w terminarzu, to the shared Librus Trigger node; removals and cancellations are reported on the change event, not a separate one.
|
|
@@ -4,6 +4,7 @@ exports.Librus = void 0;
|
|
|
4
4
|
const n8n_workflow_1 = require("n8n-workflow");
|
|
5
5
|
const LibrusClient_1 = require("./LibrusClient");
|
|
6
6
|
const transport_1 = require("./transport");
|
|
7
|
+
const sessionCache_1 = require("./sessionCache");
|
|
7
8
|
class Librus {
|
|
8
9
|
constructor() {
|
|
9
10
|
this.description = {
|
|
@@ -187,7 +188,7 @@ class Librus {
|
|
|
187
188
|
const credentials = await this.getCredentials('librusSessionApi', itemIndex);
|
|
188
189
|
if (typeof credentials.username !== 'string' || typeof credentials.password !== 'string')
|
|
189
190
|
throw new LibrusClient_1.LibrusError('INVALID_OPTIONS');
|
|
190
|
-
const client = new LibrusClient_1.LibrusClient((0, transport_1.createTransport)(this.helpers.httpRequest.bind(this.helpers)), { username: credentials.username, password: credentials.password });
|
|
191
|
+
const client = new LibrusClient_1.LibrusClient((0, transport_1.createTransport)(this.helpers.httpRequest.bind(this.helpers)), { username: credentials.username, password: credentials.password }, { sessions: sessionCache_1.sharedSessions, log: (message) => { var _a; return (_a = this.logger) === null || _a === void 0 ? void 0 : _a.info(message); } });
|
|
191
192
|
if (this.getNodeParameter('operation', itemIndex) === 'getContent') {
|
|
192
193
|
const result = await client.getMessageContent(this.getNodeParameter('messageId', itemIndex));
|
|
193
194
|
output.push({ json: { ...result }, pairedItem: { item: itemIndex } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Librus.node.js","sourceRoot":"","sources":["../../../nodes/Librus/Librus.node.ts"],"names":[],"mappings":";;;AAAA,+CAAuE;AAUvE,iDAMwB;AACxB,2CAA6E;
|
|
1
|
+
{"version":3,"file":"Librus.node.js","sourceRoot":"","sources":["../../../nodes/Librus/Librus.node.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { LibrusError, safeError } from './errors';
|
|
2
2
|
import { type CalendarDetail, type CalendarEntry } from './terminarz';
|
|
3
|
+
import type { SessionCache } from './sessionCache';
|
|
3
4
|
export { LibrusError, safeError };
|
|
4
5
|
export interface Request {
|
|
5
6
|
url: string;
|
|
@@ -18,6 +19,10 @@ export interface Login {
|
|
|
18
19
|
username: string;
|
|
19
20
|
password: string;
|
|
20
21
|
}
|
|
22
|
+
export interface ClientOptions {
|
|
23
|
+
sessions?: SessionCache;
|
|
24
|
+
log?: (message: string) => void;
|
|
25
|
+
}
|
|
21
26
|
export type ContentSource = 'preview' | 'full';
|
|
22
27
|
export type ReadStatus = 'all' | 'unread' | 'read';
|
|
23
28
|
export interface Scan {
|
|
@@ -53,11 +58,19 @@ export interface Message {
|
|
|
53
58
|
export declare class LibrusClient {
|
|
54
59
|
private readonly transport;
|
|
55
60
|
private readonly login;
|
|
61
|
+
private readonly options;
|
|
56
62
|
private jar;
|
|
57
63
|
private deadline;
|
|
58
64
|
private requests;
|
|
59
65
|
private budgetCode;
|
|
60
|
-
|
|
66
|
+
private sessionStart;
|
|
67
|
+
private cacheKey?;
|
|
68
|
+
constructor(transport: Transport, login: Login, options?: ClientOptions);
|
|
69
|
+
private note;
|
|
70
|
+
private key;
|
|
71
|
+
private restoreSession;
|
|
72
|
+
private forgetSession;
|
|
73
|
+
private withSession;
|
|
61
74
|
private request;
|
|
62
75
|
private authenticate;
|
|
63
76
|
getMessages(options: Scan): Promise<Message[]>;
|
|
@@ -60,6 +60,18 @@ function checkedRedirect(value, base) {
|
|
|
60
60
|
url.protocol = 'https:';
|
|
61
61
|
return checkedUrl(url.href);
|
|
62
62
|
}
|
|
63
|
+
function transportCause(cause) {
|
|
64
|
+
const nested = object(cause) ? cause.cause : undefined;
|
|
65
|
+
for (const candidate of [cause, nested]) {
|
|
66
|
+
const code = object(candidate) ? candidate.code : undefined;
|
|
67
|
+
if (typeof code === 'string' && /^[A-Z][A-Z0-9_]{1,40}$/.test(code))
|
|
68
|
+
return code;
|
|
69
|
+
}
|
|
70
|
+
return cause instanceof Error && /timeout/i.test(cause.message) ? 'TIMEOUT' : 'nieznana';
|
|
71
|
+
}
|
|
72
|
+
function minutes(ms) {
|
|
73
|
+
return Math.max(0, Math.round(ms / 60000));
|
|
74
|
+
}
|
|
63
75
|
function authUrl(url) {
|
|
64
76
|
return url.hostname === 'api.librus.pl' && /^\/OAuth\/Authorization(?:\/|$)/.test(url.pathname);
|
|
65
77
|
}
|
|
@@ -157,13 +169,74 @@ function parseMessage(value, includeContent) {
|
|
|
157
169
|
return result;
|
|
158
170
|
}
|
|
159
171
|
class LibrusClient {
|
|
160
|
-
constructor(transport, login) {
|
|
172
|
+
constructor(transport, login, options = {}) {
|
|
161
173
|
this.transport = transport;
|
|
162
174
|
this.login = login;
|
|
175
|
+
this.options = options;
|
|
163
176
|
this.jar = new tough_cookie_1.CookieJar();
|
|
164
177
|
this.deadline = 0;
|
|
165
178
|
this.requests = 0;
|
|
166
179
|
this.budgetCode = 'SCAN_INCOMPLETE';
|
|
180
|
+
this.sessionStart = 0;
|
|
181
|
+
}
|
|
182
|
+
note(message) {
|
|
183
|
+
var _a, _b;
|
|
184
|
+
(_b = (_a = this.options).log) === null || _b === void 0 ? void 0 : _b.call(_a, `Librus: ${message}`);
|
|
185
|
+
}
|
|
186
|
+
key(sessions) {
|
|
187
|
+
var _a;
|
|
188
|
+
(_a = this.cacheKey) !== null && _a !== void 0 ? _a : (this.cacheKey = sessions.key(this.login.username, this.login.password));
|
|
189
|
+
return this.cacheKey;
|
|
190
|
+
}
|
|
191
|
+
restoreSession() {
|
|
192
|
+
const sessions = this.options.sessions;
|
|
193
|
+
if (!sessions)
|
|
194
|
+
return false;
|
|
195
|
+
const stored = sessions.lookup(this.key(sessions));
|
|
196
|
+
if (stored.status === 'expired')
|
|
197
|
+
this.note(`zapisana sesja osiągnęła limit wieku (${minutes(stored.ageMs)} min)`);
|
|
198
|
+
if (stored.status !== 'ok')
|
|
199
|
+
return false;
|
|
200
|
+
this.jar = stored.jar;
|
|
201
|
+
this.sessionStart = stored.establishedAt;
|
|
202
|
+
this.note(`używam zapisanej sesji (wiek: ${minutes(stored.ageMs)} min)`);
|
|
203
|
+
return true;
|
|
204
|
+
}
|
|
205
|
+
forgetSession() {
|
|
206
|
+
const sessions = this.options.sessions;
|
|
207
|
+
if (sessions)
|
|
208
|
+
sessions.forget(this.key(sessions));
|
|
209
|
+
}
|
|
210
|
+
async withSession(budget, run) {
|
|
211
|
+
const operation = async () => {
|
|
212
|
+
this.budgetCode = budget;
|
|
213
|
+
this.deadline = Date.now() + 120000;
|
|
214
|
+
this.requests = 0;
|
|
215
|
+
let reused = this.restoreSession();
|
|
216
|
+
if (!reused)
|
|
217
|
+
await this.authenticate('brak zapisanej sesji');
|
|
218
|
+
for (let attempt = 0;; attempt++) {
|
|
219
|
+
try {
|
|
220
|
+
return await run();
|
|
221
|
+
}
|
|
222
|
+
catch (error) {
|
|
223
|
+
this.forgetSession();
|
|
224
|
+
const code = error instanceof errors_1.LibrusError ? error.code : undefined;
|
|
225
|
+
const stale = code === 'SESSION_EXPIRED' ||
|
|
226
|
+
(reused && (code === 'PROTOCOL_ERROR' || code === 'ACCESS_DENIED'));
|
|
227
|
+
if (!stale || attempt === 1)
|
|
228
|
+
throw error;
|
|
229
|
+
const reason = reused
|
|
230
|
+
? `zapisana sesja przestała działać po ${minutes(Date.now() - this.sessionStart)} min (${code})`
|
|
231
|
+
: 'sesja wygasła w trakcie zapytania';
|
|
232
|
+
reused = false;
|
|
233
|
+
this.requests = 0;
|
|
234
|
+
await this.authenticate(reason);
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
};
|
|
238
|
+
const sessions = this.options.sessions;
|
|
239
|
+
return sessions ? sessions.exclusive(this.key(sessions), operation) : operation();
|
|
167
240
|
}
|
|
168
241
|
async request(value, body) {
|
|
169
242
|
let url = checkedUrl(value);
|
|
@@ -196,8 +269,10 @@ class LibrusClient {
|
|
|
196
269
|
timeout: Math.max(1, Math.min(15000, remaining)),
|
|
197
270
|
});
|
|
198
271
|
}
|
|
199
|
-
catch {
|
|
200
|
-
|
|
272
|
+
catch (cause) {
|
|
273
|
+
const error = new errors_1.LibrusError('TRANSPORT_ERROR');
|
|
274
|
+
error.message += ` [Przyczyna: ${transportCause(cause)}; host: ${url.hostname}]`;
|
|
275
|
+
throw error;
|
|
201
276
|
}
|
|
202
277
|
if (typeof response.body !== 'string')
|
|
203
278
|
throw protocolError('typ treści odpowiedzi HTTP', response.body);
|
|
@@ -259,7 +334,8 @@ class LibrusClient {
|
|
|
259
334
|
}
|
|
260
335
|
throw protocolError('limit przekierowań');
|
|
261
336
|
}
|
|
262
|
-
async authenticate() {
|
|
337
|
+
async authenticate(reason) {
|
|
338
|
+
this.note(`nowe logowanie (${reason})`);
|
|
263
339
|
try {
|
|
264
340
|
this.jar = new tough_cookie_1.CookieJar();
|
|
265
341
|
const entry = await this.request('https://synergia.librus.pl/loguj/portalRodzina');
|
|
@@ -289,8 +365,11 @@ class LibrusClient {
|
|
|
289
365
|
const inbox = await this.request('https://synergia.librus.pl/wiadomosci3');
|
|
290
366
|
if (authUrl(inbox.url) || /\/loguj(?:\/|$)/.test(inbox.url.pathname))
|
|
291
367
|
throw actionRequired('otwarcie skrzynki', inbox.url);
|
|
368
|
+
const sessions = this.options.sessions;
|
|
369
|
+
this.sessionStart = sessions ? sessions.store(this.key(sessions), this.jar) : Date.now();
|
|
292
370
|
}
|
|
293
371
|
catch (error) {
|
|
372
|
+
this.forgetSession();
|
|
294
373
|
if (error instanceof errors_1.LibrusError && error.code === 'PROTOCOL_ERROR')
|
|
295
374
|
error.message += ' [Faza: logowanie]';
|
|
296
375
|
throw error;
|
|
@@ -311,33 +390,21 @@ class LibrusClient {
|
|
|
311
390
|
options.contentSource !== 'preview' &&
|
|
312
391
|
options.contentSource !== 'full'))
|
|
313
392
|
throw new errors_1.LibrusError('INVALID_OPTIONS');
|
|
314
|
-
this.budgetCode = 'SCAN_INCOMPLETE';
|
|
315
|
-
this.deadline = Date.now() + 120000;
|
|
316
|
-
this.requests = 0;
|
|
317
|
-
await this.authenticate();
|
|
318
393
|
let unreadSelection;
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
if (
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
message.contentSource = 'full';
|
|
330
|
-
}
|
|
394
|
+
return await this.withSession('SCAN_INCOMPLETE', async () => {
|
|
395
|
+
const result = unreadSelection !== null && unreadSelection !== void 0 ? unreadSelection : (await this.scan(options));
|
|
396
|
+
if (options.includeContent && options.contentSource === 'full') {
|
|
397
|
+
if (result.length > 50)
|
|
398
|
+
throw new errors_1.LibrusError('FULL_CONTENT_LIMIT');
|
|
399
|
+
if (options.readStatus === 'unread')
|
|
400
|
+
unreadSelection = result;
|
|
401
|
+
for (const message of result) {
|
|
402
|
+
message.content = await this.fullContent(message.messageId);
|
|
403
|
+
message.contentSource = 'full';
|
|
331
404
|
}
|
|
332
|
-
return result;
|
|
333
405
|
}
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
throw error;
|
|
337
|
-
await this.authenticate();
|
|
338
|
-
}
|
|
339
|
-
}
|
|
340
|
-
throw new errors_1.LibrusError('SESSION_EXPIRED');
|
|
406
|
+
return result;
|
|
407
|
+
});
|
|
341
408
|
}
|
|
342
409
|
async getMessageContent(messageId) {
|
|
343
410
|
if (!this.login.username ||
|
|
@@ -345,21 +412,11 @@ class LibrusClient {
|
|
|
345
412
|
typeof messageId !== 'string' ||
|
|
346
413
|
!/^[A-Za-z0-9_-]+$/.test(messageId))
|
|
347
414
|
throw new errors_1.LibrusError('INVALID_OPTIONS');
|
|
348
|
-
this.
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
try {
|
|
354
|
-
return { messageId, content: await this.fullContent(messageId), contentSource: 'full' };
|
|
355
|
-
}
|
|
356
|
-
catch (error) {
|
|
357
|
-
if (!(error instanceof errors_1.LibrusError) || error.code !== 'SESSION_EXPIRED' || attempt === 1)
|
|
358
|
-
throw error;
|
|
359
|
-
await this.authenticate();
|
|
360
|
-
}
|
|
361
|
-
}
|
|
362
|
-
throw new errors_1.LibrusError('SESSION_EXPIRED');
|
|
415
|
+
return await this.withSession('SCAN_INCOMPLETE', async () => ({
|
|
416
|
+
messageId,
|
|
417
|
+
content: await this.fullContent(messageId),
|
|
418
|
+
contentSource: 'full',
|
|
419
|
+
}));
|
|
363
420
|
}
|
|
364
421
|
async fullContent(messageId) {
|
|
365
422
|
if (!/^[A-Za-z0-9_-]+$/.test(messageId))
|
|
@@ -478,52 +535,39 @@ class LibrusClient {
|
|
|
478
535
|
options.months.length > 7 ||
|
|
479
536
|
options.months.some((month) => !/^\d{4}-(?:0[1-9]|1[0-2])$/.test(month)))
|
|
480
537
|
throw new errors_1.LibrusError('CALENDAR_INVALID_OPTIONS');
|
|
481
|
-
this.
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
try {
|
|
487
|
-
const entries = [];
|
|
488
|
-
for (const month of options.months) {
|
|
489
|
-
const [year, index] = month.split('-').map(Number);
|
|
490
|
-
if (year < 2000 || year > 2100)
|
|
491
|
-
throw new errors_1.LibrusError('CALENDAR_INVALID_OPTIONS');
|
|
492
|
-
entries.push(...(await this.monthPage(year, index)));
|
|
493
|
-
}
|
|
494
|
-
const known = new Map(entries.map((entry) => [entry.key, entry]));
|
|
495
|
-
const selected = select(entries);
|
|
496
|
-
if (!Array.isArray(selected))
|
|
538
|
+
return await this.withSession('CALENDAR_SCAN_INCOMPLETE', async () => {
|
|
539
|
+
const entries = [];
|
|
540
|
+
for (const month of options.months) {
|
|
541
|
+
const [year, index] = month.split('-').map(Number);
|
|
542
|
+
if (year < 2000 || year > 2100)
|
|
497
543
|
throw new errors_1.LibrusError('CALENDAR_INVALID_OPTIONS');
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
const detail = await this.eventDetail(route, id);
|
|
514
|
-
if (detail !== null)
|
|
515
|
-
details.set(key, detail);
|
|
544
|
+
entries.push(...(await this.monthPage(year, index)));
|
|
545
|
+
}
|
|
546
|
+
const known = new Map(entries.map((entry) => [entry.key, entry]));
|
|
547
|
+
const selected = select(entries);
|
|
548
|
+
if (!Array.isArray(selected))
|
|
549
|
+
throw new errors_1.LibrusError('CALENDAR_INVALID_OPTIONS');
|
|
550
|
+
const details = new Map();
|
|
551
|
+
const fetchable = [];
|
|
552
|
+
for (const key of selected) {
|
|
553
|
+
const entry = known.get(key);
|
|
554
|
+
if (!entry)
|
|
555
|
+
continue;
|
|
556
|
+
if (!entry.route || !entry.eventId) {
|
|
557
|
+
details.set(key, null);
|
|
558
|
+
continue;
|
|
516
559
|
}
|
|
517
|
-
|
|
560
|
+
fetchable.push({ key, route: entry.route, id: entry.eventId });
|
|
518
561
|
}
|
|
519
|
-
|
|
520
|
-
if (
|
|
521
|
-
|
|
522
|
-
this.
|
|
523
|
-
|
|
562
|
+
for (const { key, route, id } of fetchable.slice(0, MAX_DETAILS)) {
|
|
563
|
+
if (MAX_REQUESTS - this.requests < DETAIL_HEADROOM)
|
|
564
|
+
break;
|
|
565
|
+
const detail = await this.eventDetail(route, id);
|
|
566
|
+
if (detail !== null)
|
|
567
|
+
details.set(key, detail);
|
|
524
568
|
}
|
|
525
|
-
|
|
526
|
-
|
|
569
|
+
return { entries, details };
|
|
570
|
+
});
|
|
527
571
|
}
|
|
528
572
|
}
|
|
529
573
|
exports.LibrusClient = LibrusClient;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LibrusClient.js","sourceRoot":"","sources":["../../../nodes/Librus/LibrusClient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"LibrusClient.js","sourceRoot":"","sources":["../../../nodes/Librus/LibrusClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ const n8n_workflow_1 = require("n8n-workflow");
|
|
|
5
5
|
const LibrusClient_1 = require("./LibrusClient");
|
|
6
6
|
const Librus_node_1 = require("./Librus.node");
|
|
7
7
|
const transport_1 = require("./transport");
|
|
8
|
+
const sessionCache_1 = require("./sessionCache");
|
|
8
9
|
const pollState_1 = require("./pollState");
|
|
9
10
|
const calendarState_1 = require("./calendarState");
|
|
10
11
|
function parseTypes(value) {
|
|
@@ -180,7 +181,7 @@ class LibrusTrigger {
|
|
|
180
181
|
const client = new LibrusClient_1.LibrusClient((0, transport_1.createTransport)(this.helpers.httpRequest.bind(this.helpers)), {
|
|
181
182
|
username: credentials.username,
|
|
182
183
|
password: credentials.password,
|
|
183
|
-
});
|
|
184
|
+
}, { sessions: sessionCache_1.sharedSessions, log: (message) => { var _a; return (_a = this.logger) === null || _a === void 0 ? void 0 : _a.info(message); } });
|
|
184
185
|
const manual = this.getMode() === 'manual';
|
|
185
186
|
const account = (0, pollState_1.accountKey)(credentials.username, (_c = (_b = (_a = this.getNode().credentials) === null || _a === void 0 ? void 0 : _a.librusSessionApi) === null || _b === void 0 ? void 0 : _b.id) !== null && _c !== void 0 ? _c : '');
|
|
186
187
|
if (event === 'newCalendarEvent' || event === 'changedCalendarEvent')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LibrusTrigger.node.js","sourceRoot":"","sources":["../../../nodes/Librus/LibrusTrigger.node.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"LibrusTrigger.node.js","sourceRoot":"","sources":["../../../nodes/Librus/LibrusTrigger.node.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { CookieJar } from 'tough-cookie';
|
|
2
|
+
export declare const MAX_SESSION_AGE_MS: number;
|
|
3
|
+
export type SessionLookup = {
|
|
4
|
+
status: 'none';
|
|
5
|
+
} | {
|
|
6
|
+
status: 'expired';
|
|
7
|
+
ageMs: number;
|
|
8
|
+
} | {
|
|
9
|
+
status: 'ok';
|
|
10
|
+
jar: CookieJar;
|
|
11
|
+
establishedAt: number;
|
|
12
|
+
ageMs: number;
|
|
13
|
+
};
|
|
14
|
+
export declare class SessionCache {
|
|
15
|
+
readonly now: () => number;
|
|
16
|
+
private readonly sessions;
|
|
17
|
+
private readonly queues;
|
|
18
|
+
constructor(now?: () => number);
|
|
19
|
+
key(username: string, password: string): string;
|
|
20
|
+
lookup(key: string): SessionLookup;
|
|
21
|
+
store(key: string, jar: CookieJar): number;
|
|
22
|
+
forget(key: string): void;
|
|
23
|
+
exclusive<T>(key: string, run: () => Promise<T>): Promise<T>;
|
|
24
|
+
}
|
|
25
|
+
export declare const sharedSessions: SessionCache;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.sharedSessions = exports.SessionCache = exports.MAX_SESSION_AGE_MS = void 0;
|
|
4
|
+
const node_crypto_1 = require("node:crypto");
|
|
5
|
+
exports.MAX_SESSION_AGE_MS = 6 * 60 * 60 * 1000;
|
|
6
|
+
class SessionCache {
|
|
7
|
+
constructor(now = Date.now) {
|
|
8
|
+
this.now = now;
|
|
9
|
+
this.sessions = new Map();
|
|
10
|
+
this.queues = new Map();
|
|
11
|
+
}
|
|
12
|
+
key(username, password) {
|
|
13
|
+
return (0, node_crypto_1.createHash)('sha256').update(username).update('\0').update(password).digest('hex');
|
|
14
|
+
}
|
|
15
|
+
lookup(key) {
|
|
16
|
+
const stored = this.sessions.get(key);
|
|
17
|
+
if (!stored)
|
|
18
|
+
return { status: 'none' };
|
|
19
|
+
const ageMs = this.now() - stored.establishedAt;
|
|
20
|
+
if (ageMs >= exports.MAX_SESSION_AGE_MS) {
|
|
21
|
+
this.sessions.delete(key);
|
|
22
|
+
return { status: 'expired', ageMs };
|
|
23
|
+
}
|
|
24
|
+
return { status: 'ok', jar: stored.jar, establishedAt: stored.establishedAt, ageMs };
|
|
25
|
+
}
|
|
26
|
+
store(key, jar) {
|
|
27
|
+
const establishedAt = this.now();
|
|
28
|
+
this.sessions.set(key, { jar, establishedAt });
|
|
29
|
+
return establishedAt;
|
|
30
|
+
}
|
|
31
|
+
forget(key) {
|
|
32
|
+
this.sessions.delete(key);
|
|
33
|
+
}
|
|
34
|
+
async exclusive(key, run) {
|
|
35
|
+
var _a;
|
|
36
|
+
const previous = (_a = this.queues.get(key)) !== null && _a !== void 0 ? _a : Promise.resolve();
|
|
37
|
+
const current = previous.then(run, run);
|
|
38
|
+
const tail = current.then(() => undefined, () => undefined);
|
|
39
|
+
this.queues.set(key, tail);
|
|
40
|
+
try {
|
|
41
|
+
return await current;
|
|
42
|
+
}
|
|
43
|
+
finally {
|
|
44
|
+
if (this.queues.get(key) === tail)
|
|
45
|
+
this.queues.delete(key);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
exports.SessionCache = SessionCache;
|
|
50
|
+
exports.sharedSessions = new SessionCache();
|
|
51
|
+
//# sourceMappingURL=sessionCache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sessionCache.js","sourceRoot":"","sources":["../../../nodes/Librus/sessionCache.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AAQ5B,QAAA,kBAAkB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAYrD,MAAa,YAAY;IAIxB,YAAqB,MAAoB,IAAI,CAAC,GAAG;QAA5B,QAAG,GAAH,GAAG,CAAyB;QAHhC,aAAQ,GAAG,IAAI,GAAG,EAAqD,CAAC;QACxE,WAAM,GAAG,IAAI,GAAG,EAA4B,CAAC;IAEV,CAAC;IAErD,GAAG,CAAC,QAAgB,EAAE,QAAgB;QACrC,OAAO,IAAA,wBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1F,CAAC;IAED,MAAM,CAAC,GAAW;QACjB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,aAAa,CAAC;QAChD,IAAI,KAAK,IAAI,0BAAkB,EAAE,CAAC;YACjC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC1B,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;QACrC,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,KAAK,EAAE,CAAC;IACtF,CAAC;IAED,KAAK,CAAC,GAAW,EAAE,GAAc;QAChC,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACjC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC;QAC/C,OAAO,aAAa,CAAC;IACtB,CAAC;IAED,MAAM,CAAC,GAAW;QACjB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAMD,KAAK,CAAC,SAAS,CAAI,GAAW,EAAE,GAAqB;;QACpD,MAAM,QAAQ,GAAG,MAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,mCAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3D,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CACxB,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,SAAS,CACf,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC;YACJ,OAAO,MAAM,OAAO,CAAC;QACtB,CAAC;gBAAS,CAAC;YACV,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI;gBAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5D,CAAC;IACF,CAAC;CACD;AAjDD,oCAiDC;AAGY,QAAA,cAAc,GAAG,IAAI,YAAY,EAAE,CAAC"}
|
package/docs/architecture.md
CHANGED
|
@@ -84,7 +84,7 @@ The silent set is measured against the horizon the *current* start month would h
|
|
|
84
84
|
|
|
85
85
|
An entry cell without an `onclick` detail link (a free day, a note with no drill-down) has no stable identifier, so `calendarState.ts` gives it a synthetic key hashed from its date and cell text. Because that key changes whenever the text changes, an edited link-less entry looks like one disappearance plus one appearance. `pairSynthetic` collapses exactly one `hash/`-keyed removal and exactly one `hash/`-keyed addition on the same date within the same poll into a single `changed` item. Documented failure mode: a genuine deletion and a genuine unrelated addition landing on that same date in the same poll collapse into one reported change instead of two, because the heuristic cannot distinguish the two situations from the grid text alone.
|
|
86
86
|
|
|
87
|
-
A calendar poll's request budget is reset per attempt, not per operation. A full window costs roughly 8 requests to authenticate, one per month (up to 7) and up to 50 detail pages — about 65 against a cap of 100 — so a session expiry late in hydration would leave a shared counter unable to fund the second attempt, and the retry would die on the budget rather than on the protocol. `getCalendar` therefore resets `this.requests` alongside the re-`authenticate()` in its retry path. The 120-second deadline is not reset and still bounds the operation as a whole.
|
|
87
|
+
A calendar poll's request budget is reset per attempt, not per operation. A full window costs roughly 8 requests to authenticate, one per month (up to 7) and up to 50 detail pages — about 65 against a cap of 100 — so a session expiry late in hydration would leave a shared counter unable to fund the second attempt, and the retry would die on the budget rather than on the protocol. `getCalendar` therefore resets `this.requests` alongside the re-`authenticate()` in its retry path. The 120-second deadline is not reset and still bounds the operation as a whole. Since 0.3.0 the message path works the same way: every operation runs through `withSession`, which resets the counter before the retry login.
|
|
88
88
|
|
|
89
89
|
An exhausted budget on the calendar path raises `CALENDAR_SCAN_INCOMPLETE`, whose Polish message tells the user to reduce **Liczba miesięcy do przodu** — the only lever the calendar events have. Invalid calendar options raise `CALENDAR_INVALID_OPTIONS`, which names the same setting instead of the message-fetching settings `INVALID_OPTIONS` describes; `INVALID_OPTIONS` and every message-path raise site are unchanged. `SCAN_INCOMPLETE`, which names the inbox's **Maksymalna liczba stron**, is unchanged and stays on the message path; the client selects between them with a per-operation `budgetCode` field.
|
|
90
90
|
|
|
@@ -93,3 +93,16 @@ An exhausted budget on the calendar path raises `CALENDAR_SCAN_INCOMPLETE`, whos
|
|
|
93
93
|
The manual execution path deliberately does not apply that filter to its sample of up to five current-month entries, unlike the automatic path. The `Rodzaj` vocabulary is unverified, and the manual test is exactly how a user discovers the real values before filling the filter in: filtering the sample would hide the values it exists to reveal, and a narrow filter would return an empty sample that reads as a broken connection. The inconsistency is intentional and is stated in the node's calendar notice and in the README.
|
|
94
94
|
|
|
95
95
|
None of this — the POST target, the grid markup, the detail-page shape, the `Rodzaj` vocabulary, or whether polling disturbs the Librus UI — is live-verified. Every check performed so far is against offline HTML fixtures written from source inspection of third-party unofficial clients, not against a real Librus account.
|
|
96
|
+
|
|
97
|
+
## Session reuse (0.3.0)
|
|
98
|
+
|
|
99
|
+
Before 0.3.0 every operation performed the full browser login (about 8 requests), so three polling triggers on one account made at least 72 logins a day, plus one per Get Content item. From an n8n server that pattern coincided with Librus silently dropping TCP connections from the server's address, which surfaced as `TRANSPORT_ERROR`.
|
|
100
|
+
|
|
101
|
+
`sessionCache.ts` keeps logged-in cookie jars in process memory, keyed by a SHA-256 hash of login and password, and shared by the trigger and the action node (`sharedSessions`). Cookies are deliberately not written to workflow static data, credentials or output: they are as good as the password, static data is stored in plain text with the workflow, and it is per node, so the three triggers could not share it anyway. A restart or a queue-mode worker simply logs in once more. The credential test never uses the cache and always performs a real login.
|
|
102
|
+
|
|
103
|
+
`LibrusClient.withSession` runs each operation under a per-account lock (`SessionCache.exclusive`), so two triggers never log in concurrently or replace the jar under one another; the 120-second deadline and request budget start only after the lock is acquired. It adopts a stored session when one exists and is younger than `MAX_SESSION_AGE_MS` (6 hours, a safety cap: Librus's own lifetime is unknown). A stored session that stops working is detected on first use: `SESSION_EXPIRED`, and on a reused session also `PROTOCOL_ERROR` or `ACCESS_DENIED` (an expired session does not always answer with a login redirect), trigger one fresh login and a single retry. Any failure drops the stored session, so a broken one is never offered to the next operation.
|
|
104
|
+
|
|
105
|
+
The client reports the session lifecycle through the optional `log` callback, which the nodes connect to the n8n logger at info level: `nowe logowanie (<powód>)`, `używam zapisanej sesji (wiek: N min)`, `zapisana sesja przestała działać po N min (<kod>)` and `zapisana sesja osiągnęła limit wieku (N min)`. These notes contain no credentials, cookies or content; they exist to measure the real session lifetime in production.
|
|
106
|
+
|
|
107
|
+
`TRANSPORT_ERROR` now carries a safe cause and the host, e.g. `[Przyczyna: ETIMEDOUT; host: synergia.librus.pl]`. Only system-style error codes (`^[A-Z][A-Z0-9_]{1,40}$`) are copied; the underlying message never is.
|
|
108
|
+
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@czlonkowski/n8n-nodes-librus",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Dwa węzły n8n do pobierania wiadomości z Librus Synergia i uruchamiania automatyzacji po nowych wiadomościach oraz po dodaniu lub zmianie wydarzeń w terminarzu.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"keywords": [
|