@ya-modbus/transport 0.12.2 → 0.13.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 +6 -0
- package/README.md +14 -1
- package/dist/cjs/src/manager.d.ts +4 -3
- package/dist/cjs/src/manager.d.ts.map +1 -1
- package/dist/cjs/src/manager.js +10 -5
- package/dist/cjs/src/manager.js.map +1 -1
- package/dist/cjs/src/request-context.d.ts +27 -0
- package/dist/cjs/src/request-context.d.ts.map +1 -0
- package/dist/cjs/src/request-context.js +81 -0
- package/dist/cjs/src/request-context.js.map +1 -0
- package/dist/cjs/src/rtu-transport.d.ts.map +1 -1
- package/dist/cjs/src/rtu-transport.js +2 -1
- package/dist/cjs/src/rtu-transport.js.map +1 -1
- package/dist/cjs/src/tcp-transport.d.ts.map +1 -1
- package/dist/cjs/src/tcp-transport.js +2 -1
- package/dist/cjs/src/tcp-transport.js.map +1 -1
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/esm/src/manager.d.ts +4 -3
- package/dist/esm/src/manager.d.ts.map +1 -1
- package/dist/esm/src/manager.js +10 -5
- package/dist/esm/src/manager.js.map +1 -1
- package/dist/esm/src/request-context.d.ts +27 -0
- package/dist/esm/src/request-context.d.ts.map +1 -0
- package/dist/esm/src/request-context.js +77 -0
- package/dist/esm/src/request-context.js.map +1 -0
- package/dist/esm/src/rtu-transport.d.ts.map +1 -1
- package/dist/esm/src/rtu-transport.js +2 -1
- package/dist/esm/src/rtu-transport.js.map +1 -1
- package/dist/esm/src/tcp-transport.d.ts.map +1 -1
- package/dist/esm/src/tcp-transport.js +2 -1
- package/dist/esm/src/tcp-transport.js.map +1 -1
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +2 -2
|
@@ -30,7 +30,7 @@ export interface TransportStats {
|
|
|
30
30
|
* - Pools modbus-serial clients by physical connection (excluding slave ID)
|
|
31
31
|
* - RTU clients are pooled by bus configuration (port, baud rate, parity, etc.)
|
|
32
32
|
* - TCP clients are pooled by host and port
|
|
33
|
-
* - Returns SlaveTransport
|
|
33
|
+
* - Returns Transport objects (SlaveTransport wrapped with request details in errors) that set the slave ID before each operation
|
|
34
34
|
* - Multiple devices on the same connection share a single client and mutex
|
|
35
35
|
* - All operations are serialized using async-mutex to prevent race conditions
|
|
36
36
|
* - A lost connection (USB adapter unplugged, TCP connection closed) drops the client.
|
|
@@ -63,11 +63,12 @@ export declare class TransportManager {
|
|
|
63
63
|
constructor(options?: TransportManagerOptions);
|
|
64
64
|
/**
|
|
65
65
|
* Get or create a transport for the given configuration.
|
|
66
|
-
* Returns a new
|
|
66
|
+
* Returns a new Transport bound to the slave ID in the config.
|
|
67
67
|
* Multiple devices on the same physical connection share the same client and mutex.
|
|
68
68
|
*
|
|
69
69
|
* @param config - RTU or TCP transport configuration
|
|
70
|
-
* @returns
|
|
70
|
+
* @returns Transport for the specific slave device. It wraps a SlaveTransport, and the
|
|
71
|
+
* message of a failed request ends with the port, slave, function and registers.
|
|
71
72
|
* @throws When the port cannot be opened, unless the `startLost` option is set
|
|
72
73
|
*/
|
|
73
74
|
getTransport(config: TransportConfig): Promise<Transport>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAMxD,OAAO,KAAK,EAAwB,eAAe,EAAE,MAAM,cAAc,CAAA;AACzE,OAAO,EAAwB,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAMxD,OAAO,KAAK,EAAwB,eAAe,EAAE,MAAM,cAAc,CAAA;AACzE,OAAO,EAAwB,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAe7E;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,qBAAa,gBAAgB;IAOf,OAAO,CAAC,QAAQ,CAAC,OAAO;IANpC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqC;IAEjE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8C;IAEtE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2B;gBAEtB,OAAO,GAAE,uBAA4B;IAElE;;;;;;;;;OASG;IACG,YAAY,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC;IA6B/D;;;;;;;;;;;OAWG;IACG,gBAAgB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAc3D;;;;;;OAMG;YACW,cAAc;IA2B5B;;;;;;OAMG;IACH,kBAAkB,CAAC,MAAM,EAAE,eAAe,GAAG,WAAW,GAAG,SAAS;IAIpE;;;;OAIG;IACH,QAAQ,IAAI,cAAc;IAS1B;;;;OAIG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAc/B;;;;;OAKG;YACW,eAAe;IAQ7B;;;;;;;;OAQG;IACH,OAAO,CAAC,wBAAwB;IAShC;;;;;OAKG;IACH,OAAO,CAAC,SAAS;IAIjB;;;;;;OAMG;YACW,eAAe;IAe7B;;;;;;OAMG;YACW,eAAe;IAU7B;;;;;OAKG;IACH,OAAO,CAAC,WAAW;CAGpB"}
|
package/dist/esm/src/manager.js
CHANGED
|
@@ -3,6 +3,7 @@ import ModbusRTU from 'modbus-serial';
|
|
|
3
3
|
import { connectTCP, DEFAULT_TIMEOUT_MS } from './client-config.js';
|
|
4
4
|
import { ModbusConnection } from './connection.js';
|
|
5
5
|
import { normalizeModbusError } from './normalize-error.js';
|
|
6
|
+
import { formatSerialSettings, withRequestContext } from './request-context.js';
|
|
6
7
|
import { SlaveTransport } from './slave-transport.js';
|
|
7
8
|
/**
|
|
8
9
|
* TransportManager pools modbus-serial clients and provides slave-specific transports.
|
|
@@ -11,7 +12,7 @@ import { SlaveTransport } from './slave-transport.js';
|
|
|
11
12
|
* - Pools modbus-serial clients by physical connection (excluding slave ID)
|
|
12
13
|
* - RTU clients are pooled by bus configuration (port, baud rate, parity, etc.)
|
|
13
14
|
* - TCP clients are pooled by host and port
|
|
14
|
-
* - Returns SlaveTransport
|
|
15
|
+
* - Returns Transport objects (SlaveTransport wrapped with request details in errors) that set the slave ID before each operation
|
|
15
16
|
* - Multiple devices on the same connection share a single client and mutex
|
|
16
17
|
* - All operations are serialized using async-mutex to prevent race conditions
|
|
17
18
|
* - A lost connection (USB adapter unplugged, TCP connection closed) drops the client.
|
|
@@ -47,11 +48,12 @@ export class TransportManager {
|
|
|
47
48
|
}
|
|
48
49
|
/**
|
|
49
50
|
* Get or create a transport for the given configuration.
|
|
50
|
-
* Returns a new
|
|
51
|
+
* Returns a new Transport bound to the slave ID in the config.
|
|
51
52
|
* Multiple devices on the same physical connection share the same client and mutex.
|
|
52
53
|
*
|
|
53
54
|
* @param config - RTU or TCP transport configuration
|
|
54
|
-
* @returns
|
|
55
|
+
* @returns Transport for the specific slave device. It wraps a SlaveTransport, and the
|
|
56
|
+
* message of a failed request ends with the port, slave, function and registers.
|
|
55
57
|
* @throws When the port cannot be opened, unless the `startLost` option is set
|
|
56
58
|
*/
|
|
57
59
|
async getTransport(config) {
|
|
@@ -68,8 +70,11 @@ export class TransportManager {
|
|
|
68
70
|
}
|
|
69
71
|
// Return a new SlaveTransport for this specific slave
|
|
70
72
|
const transport = new SlaveTransport(config.slaveId, entry.connection, entry.mutex, config.maxRetries ?? 3, config.logger);
|
|
71
|
-
|
|
72
|
-
|
|
73
|
+
const target = this.getTarget(config);
|
|
74
|
+
const where = this.isRTUConfig(config) ? `${target} ${formatSerialSettings(config)}` : target;
|
|
75
|
+
const described = withRequestContext(transport, `${where}, slave ${config.slaveId}`);
|
|
76
|
+
entry.transports.add(described);
|
|
77
|
+
return described;
|
|
73
78
|
}
|
|
74
79
|
/**
|
|
75
80
|
* Release the transport of a device that does not use it any more, for example a device
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,SAAS,MAAM,eAAe,CAAA;AAErC,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAElD,OAAO,EAAE,oBAAoB,EAAoB,MAAM,sBAAsB,CAAA;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAqCrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,OAAO,gBAAgB;IAO3B,YAA6B,UAAmC,EAAE;QAArC,YAAO,GAAP,OAAO,CAA8B;QANjD,gBAAW,GAAG,IAAI,GAAG,EAA2B,CAAA;QACjE,wFAAwF;QACvE,YAAO,GAAG,IAAI,GAAG,EAAoC,CAAA;QACtE,mEAAmE;QAClD,YAAO,GAAG,IAAI,GAAG,EAAiB,CAAA;IAEkB,CAAC;IAEtE
|
|
1
|
+
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,SAAS,MAAM,eAAe,CAAA;AAErC,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAElD,OAAO,EAAE,oBAAoB,EAAoB,MAAM,sBAAsB,CAAA;AAC7E,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAqCrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,OAAO,gBAAgB;IAO3B,YAA6B,UAAmC,EAAE;QAArC,YAAO,GAAP,OAAO,CAA8B;QANjD,gBAAW,GAAG,IAAI,GAAG,EAA2B,CAAA;QACjE,wFAAwF;QACvE,YAAO,GAAG,IAAI,GAAG,EAAoC,CAAA;QACtE,mEAAmE;QAClD,YAAO,GAAG,IAAI,GAAG,EAAiB,CAAA;IAEkB,CAAC;IAEtE;;;;;;;;;OASG;IACH,KAAK,CAAC,YAAY,CAAC,MAAuB;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAA;QAEjD,sCAAsC;QACtC,IAAI,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACrC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACnC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;gBAClF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;YAChC,CAAC;YACD,KAAK,GAAG,MAAM,OAAO,CAAA;QACvB,CAAC;QAED,sDAAsD;QACtD,MAAM,SAAS,GAAG,IAAI,cAAc,CAClC,MAAM,CAAC,OAAO,EACd,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,KAAK,EACX,MAAM,CAAC,UAAU,IAAI,CAAC,EACtB,MAAM,CAAC,MAAM,CACd,CAAA;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAA;QAC7F,MAAM,SAAS,GAAG,kBAAkB,CAAC,SAAS,EAAE,GAAG,KAAK,WAAW,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;QACpF,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QAC/B,OAAO,SAAS,CAAA;IAClB,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,gBAAgB,CAAC,SAAoB;QACzC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC;gBAAE,SAAQ;YACjD,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC;gBAAE,OAAM;YAErC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;YAC1C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;YACxB,MAAM,MAAM,CAAA;YACZ,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YAC3B,OAAM;QACR,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,cAAc,CAAC,GAAW,EAAE,MAAuB;QAC/D,oFAAoF;QACpF,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC;YAAE,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAE1D,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;QAC5F,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;QAErC,IAAI,UAA4B,CAAA;QAChC,IAAI,CAAC;YACH,UAAU,GAAG,IAAI,gBAAgB,CAAC,MAAM,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QAC/D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS;gBAAE,MAAM,KAAK,CAAA;YACxC,UAAU,GAAG,IAAI,gBAAgB,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QAC9E,CAAC;QAED,MAAM,KAAK,GAAG;YACZ,UAAU;YACV,KAAK,EAAE,IAAI,KAAK,EAAE;YAClB,MAAM;YACN,KAAK;YACL,UAAU,EAAE,IAAI,GAAG,EAAa;SACjC,CAAA;QACD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QAChC,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;;;;;OAMG;IACH,kBAAkB,CAAC,MAAuB;QACxC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,KAAK,CAAA;IACtF,CAAC;IAED;;;;OAIG;IACH,QAAQ;QACN,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAA;QACrD,OAAO;YACL,eAAe,EAAE,OAAO,CAAC,MAAM;YAC/B,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM;YACpD,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM;SACtD,CAAA;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,QAAQ;QACZ,wFAAwF;QACxF,0BAA0B;QAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC;YAAE,MAAM,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;QAE7E,qFAAqF;QACrF,mCAAmC;QACnC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAA;QACrD,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAA;QAExB,iFAAiF;QACjF,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;IAC9F,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,eAAe,CAAC,KAAsB;QAClD,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;QAChC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAA;QACnD,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACK,wBAAwB,CAAC,MAAuB;QACtD,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7B,OAAO,OAAO,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAA;QACvG,CAAC;QAED,2EAA2E;QAC3E,OAAO,OAAO,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,IAAI,GAAG,EAAE,CAAA;IACnD,CAAC;IAED;;;;;OAKG;IACK,SAAS,CAAC,MAAuB;QACvC,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,IAAI,GAAG,EAAE,CAAA;IACxF,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,eAAe,CAAC,MAAiB;QAC7C,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAA;QAE9B,MAAM,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,EAAE;YAC3C,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CAAC,CAAA;QAEF,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,IAAI,kBAAkB,CAAC,CAAA;QAEvD,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,eAAe,CAAC,MAAiB;QAC7C,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAA;QAE9B,MAAM,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;QAEzE,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,IAAI,kBAAkB,CAAC,CAAA;QAEvD,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;;OAKG;IACK,WAAW,CAAC,MAAuB;QACzC,OAAO,MAAM,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,CAAA;IACnF,CAAC;CACF"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Context for failed requests: which port, slave, function and registers
|
|
3
|
+
*/
|
|
4
|
+
import type { Transport } from '@ya-modbus/driver-types';
|
|
5
|
+
/**
|
|
6
|
+
* Serial settings in the usual short form, from the settings that are present
|
|
7
|
+
*
|
|
8
|
+
* @example formatSerialSettings({ baudRate: 9600, dataBits: 8, parity: 'even', stopBits: 1 }) // '9600 8E1'
|
|
9
|
+
*/
|
|
10
|
+
export declare function formatSerialSettings(settings: {
|
|
11
|
+
baudRate?: number | undefined;
|
|
12
|
+
dataBits?: number | undefined;
|
|
13
|
+
parity?: string | undefined;
|
|
14
|
+
stopBits?: number | undefined;
|
|
15
|
+
}): string;
|
|
16
|
+
/**
|
|
17
|
+
* Wrap a Transport so that a failed request says where it went
|
|
18
|
+
*
|
|
19
|
+
* The error message gets the label and the request appended, for example
|
|
20
|
+
* `Timed out (/dev/ttyUSB0 9600 8E1, slave 1, FC03 read holding registers, address 16 (0x0010), count 2)`.
|
|
21
|
+
* Retries of the wrapped transport are not changed.
|
|
22
|
+
*
|
|
23
|
+
* @param transport - Transport to wrap
|
|
24
|
+
* @param label - Port or host, serial settings and slave, shown in the message
|
|
25
|
+
*/
|
|
26
|
+
export declare function withRequestContext(transport: Transport, label: string): Transport;
|
|
27
|
+
//# sourceMappingURL=request-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-context.d.ts","sourceRoot":"","sources":["../../../src/request-context.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AA2BxD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE;IAC7C,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC9B,GAAG,MAAM,CAIT;AAsBD;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,CAoBjF"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Context for failed requests: which port, slave, function and registers
|
|
3
|
+
*/
|
|
4
|
+
import { normalizeModbusError } from './normalize-error.js';
|
|
5
|
+
/** How each request of a Transport is named in error messages, and how many items it covers */
|
|
6
|
+
const REQUESTS = {
|
|
7
|
+
readCoils: { code: 1, name: 'read coils', count: (n) => n },
|
|
8
|
+
readDiscreteInputs: { code: 2, name: 'read discrete inputs', count: (n) => n },
|
|
9
|
+
readHoldingRegisters: { code: 3, name: 'read holding registers', count: (n) => n },
|
|
10
|
+
readInputRegisters: { code: 4, name: 'read input registers', count: (n) => n },
|
|
11
|
+
writeSingleCoil: { code: 5, name: 'write single coil', count: () => 1 },
|
|
12
|
+
writeSingleRegister: { code: 6, name: 'write single register', count: () => 1 },
|
|
13
|
+
writeMultipleCoils: {
|
|
14
|
+
code: 15,
|
|
15
|
+
name: 'write multiple coils',
|
|
16
|
+
count: (values) => values.length * 8,
|
|
17
|
+
},
|
|
18
|
+
writeMultipleRegisters: {
|
|
19
|
+
code: 16,
|
|
20
|
+
name: 'write multiple registers',
|
|
21
|
+
count: (values) => values.length / 2,
|
|
22
|
+
},
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Serial settings in the usual short form, from the settings that are present
|
|
26
|
+
*
|
|
27
|
+
* @example formatSerialSettings({ baudRate: 9600, dataBits: 8, parity: 'even', stopBits: 1 }) // '9600 8E1'
|
|
28
|
+
*/
|
|
29
|
+
export function formatSerialSettings(settings) {
|
|
30
|
+
const { baudRate, dataBits, parity, stopBits } = settings;
|
|
31
|
+
const frame = `${dataBits ?? ''}${parity?.charAt(0).toUpperCase() ?? ''}${stopBits ?? ''}`;
|
|
32
|
+
return [baudRate, frame].filter((part) => part !== undefined && part !== '').join(' ');
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Copy of an error with a new message
|
|
36
|
+
*
|
|
37
|
+
* Name, code, errno, modbusCode and cause stay, and the stack starts with the new message.
|
|
38
|
+
* The error is copied because a lost connection rejects all requests with the same
|
|
39
|
+
* object, and the details of one request must not pile up on it.
|
|
40
|
+
*/
|
|
41
|
+
function withMessage(error, message) {
|
|
42
|
+
const copy = Object.assign(new Error(message, error.cause === undefined ? undefined : { cause: error.cause }), error);
|
|
43
|
+
copy.message = message;
|
|
44
|
+
copy.name = error.name;
|
|
45
|
+
if (error.stack !== undefined && error.message !== '') {
|
|
46
|
+
copy.stack = error.stack.replace(error.message, () => message);
|
|
47
|
+
}
|
|
48
|
+
return copy;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Wrap a Transport so that a failed request says where it went
|
|
52
|
+
*
|
|
53
|
+
* The error message gets the label and the request appended, for example
|
|
54
|
+
* `Timed out (/dev/ttyUSB0 9600 8E1, slave 1, FC03 read holding registers, address 16 (0x0010), count 2)`.
|
|
55
|
+
* Retries of the wrapped transport are not changed.
|
|
56
|
+
*
|
|
57
|
+
* @param transport - Transport to wrap
|
|
58
|
+
* @param label - Port or host, serial settings and slave, shown in the message
|
|
59
|
+
*/
|
|
60
|
+
export function withRequestContext(transport, label) {
|
|
61
|
+
const wrapped = { close: () => transport.close() };
|
|
62
|
+
for (const [method, request] of Object.entries(REQUESTS)) {
|
|
63
|
+
wrapped[method] = async (address, value) => {
|
|
64
|
+
try {
|
|
65
|
+
return await transport[method](address, value);
|
|
66
|
+
}
|
|
67
|
+
catch (error) {
|
|
68
|
+
const normalized = normalizeModbusError(error);
|
|
69
|
+
const hex = `0x${address.toString(16).toUpperCase().padStart(4, '0')}`;
|
|
70
|
+
const code = String(request.code).padStart(2, '0');
|
|
71
|
+
throw withMessage(normalized, `${normalized.message} (${label}, FC${code} ${request.name}, address ${address} (${hex}), count ${request.count(value)})`);
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
return wrapped;
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=request-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-context.js","sourceRoot":"","sources":["../../../src/request-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rtu-transport.d.ts","sourceRoot":"","sources":["../../../src/rtu-transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"rtu-transport.d.ts","sourceRoot":"","sources":["../../../src/rtu-transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAO9F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE7C;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAA;IACZ,gBAAgB;IAChB,QAAQ,EAAE,QAAQ,CAAA;IAClB,gBAAgB;IAChB,QAAQ,EAAE,QAAQ,CAAA;IAClB,aAAa;IACb,MAAM,EAAE,MAAM,CAAA;IACd,gBAAgB;IAChB,QAAQ,EAAE,QAAQ,CAAA;IAClB,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,oEAAoE;IACpE,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B,4DAA4D;IAC5D,MAAM,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;CACjC;AAED;;;;;;;;;GASG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAqB9E"}
|
|
@@ -2,6 +2,7 @@ import ModbusRTU from 'modbus-serial';
|
|
|
2
2
|
import { configureClient } from './client-config.js';
|
|
3
3
|
import { ModbusConnection } from './connection.js';
|
|
4
4
|
import { createModbusTransport } from './create-modbus-transport.js';
|
|
5
|
+
import { formatSerialSettings, withRequestContext } from './request-context.js';
|
|
5
6
|
/**
|
|
6
7
|
* Create an RTU transport
|
|
7
8
|
*
|
|
@@ -26,6 +27,6 @@ export async function createRTUTransport(config) {
|
|
|
26
27
|
return client;
|
|
27
28
|
};
|
|
28
29
|
const connection = new ModbusConnection(await open(), config.port, open);
|
|
29
|
-
return createModbusTransport(connection, config.maxRetries, config.logger);
|
|
30
|
+
return withRequestContext(createModbusTransport(connection, config.maxRetries, config.logger), `${config.port} ${formatSerialSettings(config)}, slave ${config.slaveId}`);
|
|
30
31
|
}
|
|
31
32
|
//# sourceMappingURL=rtu-transport.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rtu-transport.js","sourceRoot":"","sources":["../../../src/rtu-transport.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,eAAe,CAAA;AAErC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;
|
|
1
|
+
{"version":3,"file":"rtu-transport.js","sourceRoot":"","sources":["../../../src/rtu-transport.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,eAAe,CAAA;AAErC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AA2B/E;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,MAAiB;IACxD,MAAM,IAAI,GAAG,KAAK,IAAwB,EAAE;QAC1C,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAA;QAE9B,yBAAyB;QACzB,MAAM,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,EAAE;YAC3C,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CAAC,CAAA;QAEF,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;QACvD,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,IAAI,gBAAgB,CAAC,MAAM,IAAI,EAAE,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IACxE,OAAO,kBAAkB,CACvB,qBAAqB,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EACnE,GAAG,MAAM,CAAC,IAAI,IAAI,oBAAoB,CAAC,MAAM,CAAC,WAAW,MAAM,CAAC,OAAO,EAAE,CAC1E,CAAA;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tcp-transport.d.ts","sourceRoot":"","sources":["../../../src/tcp-transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"tcp-transport.d.ts","sourceRoot":"","sources":["../../../src/tcp-transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAOxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE7C;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAA;IACZ,8BAA8B;IAC9B,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACzB,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,yFAAyF;IACzF,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,oEAAoE;IACpE,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B,4DAA4D;IAC5D,MAAM,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;CACjC;AAED;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAiB9E"}
|
|
@@ -2,6 +2,7 @@ import ModbusRTU from 'modbus-serial';
|
|
|
2
2
|
import { configureClient, connectTCP } from './client-config.js';
|
|
3
3
|
import { ModbusConnection } from './connection.js';
|
|
4
4
|
import { createModbusTransport } from './create-modbus-transport.js';
|
|
5
|
+
import { withRequestContext } from './request-context.js';
|
|
5
6
|
/**
|
|
6
7
|
* Create a TCP transport
|
|
7
8
|
*
|
|
@@ -21,6 +22,6 @@ export async function createTCPTransport(config) {
|
|
|
21
22
|
return client;
|
|
22
23
|
};
|
|
23
24
|
const connection = new ModbusConnection(await open(), `${config.host}:${port}`, open);
|
|
24
|
-
return createModbusTransport(connection, config.maxRetries, config.logger);
|
|
25
|
+
return withRequestContext(createModbusTransport(connection, config.maxRetries, config.logger), `${config.host}:${port}, slave ${config.slaveId}`);
|
|
25
26
|
}
|
|
26
27
|
//# sourceMappingURL=tcp-transport.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tcp-transport.js","sourceRoot":"","sources":["../../../src/tcp-transport.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,eAAe,CAAA;AAErC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;
|
|
1
|
+
{"version":3,"file":"tcp-transport.js","sourceRoot":"","sources":["../../../src/tcp-transport.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,eAAe,CAAA;AAErC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAqBzD;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,MAAiB;IACxD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,GAAG,CAAA;IAC/B,MAAM,IAAI,GAAG,KAAK,IAAwB,EAAE;QAC1C,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAA;QAE9B,wBAAwB;QACxB,MAAM,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;QAE3D,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;QACvD,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,IAAI,gBAAgB,CAAC,MAAM,IAAI,EAAE,EAAE,GAAG,MAAM,CAAC,IAAI,IAAI,IAAI,EAAE,EAAE,IAAI,CAAC,CAAA;IACrF,OAAO,kBAAkB,CACvB,qBAAqB,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EACnE,GAAG,MAAM,CAAC,IAAI,IAAI,IAAI,WAAW,MAAM,CAAC,OAAO,EAAE,CAClD,CAAA;AACH,CAAC"}
|