node-opcua-client 2.72.2 → 2.74.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/LICENSE +3 -1
- package/README.md +54 -0
- package/dist/client_base.d.ts +23 -40
- package/dist/client_base.js +1 -0
- package/dist/client_base.js.map +1 -1
- package/dist/client_session.d.ts +2 -2
- package/dist/client_session.js.map +1 -1
- package/dist/private/client_base_impl.d.ts +5 -17
- package/dist/private/client_base_impl.js +144 -131
- package/dist/private/client_base_impl.js.map +1 -1
- package/dist/private/client_session_impl.js +1 -0
- package/dist/private/client_session_impl.js.map +1 -1
- package/dist/private/client_subscription_impl.js +7 -2
- package/dist/private/client_subscription_impl.js.map +1 -1
- package/dist/private/opcua_client_impl.js +10 -7
- package/dist/private/opcua_client_impl.js.map +1 -1
- package/dist/reconnection.js +57 -11
- package/dist/reconnection.js.map +1 -1
- package/dist/tools/findservers.js +2 -2
- package/dist/tools/findservers.js.map +1 -1
- package/package.json +43 -43
- package/source/client_base.ts +23 -40
- package/source/client_session.ts +4 -2
- package/source/private/client_base_impl.ts +181 -150
- package/source/private/client_session_impl.ts +11 -5
- package/source/private/client_subscription_impl.ts +6 -2
- package/source/private/opcua_client_impl.ts +14 -10
- package/source/reconnection.ts +65 -12
- package/source/tools/findservers.ts +2 -2
package/source/client_base.ts
CHANGED
|
@@ -41,17 +41,8 @@ export type FindEndpointCallback = (err: Error | null, result?: FindEndpointResu
|
|
|
41
41
|
|
|
42
42
|
export interface TransportSettings {
|
|
43
43
|
maxChunkCount?: number;
|
|
44
|
-
/**
|
|
45
|
-
* @advanced
|
|
46
|
-
*/
|
|
47
44
|
maxMessageSize?: number;
|
|
48
|
-
/**
|
|
49
|
-
* @advanced
|
|
50
|
-
*/
|
|
51
45
|
sendBufferSize?: number;
|
|
52
|
-
/**
|
|
53
|
-
* @advanced
|
|
54
|
-
*/
|
|
55
46
|
receiveBufferSize?: number;
|
|
56
47
|
}
|
|
57
48
|
|
|
@@ -200,68 +191,59 @@ export interface OPCUAClientBase extends EventEmitter {
|
|
|
200
191
|
|
|
201
192
|
/**
|
|
202
193
|
* this Event is raised when the initial connection has succeeded
|
|
203
|
-
* @param event
|
|
204
|
-
* @param eventHandler
|
|
205
194
|
*/
|
|
206
|
-
on(
|
|
195
|
+
on(eventName: "connected", eventHandler: () => void): this;
|
|
207
196
|
|
|
208
197
|
/**
|
|
209
198
|
* this Event is raised when the initial connection has failed
|
|
210
|
-
* @param event
|
|
211
|
-
* @param eventHandler
|
|
212
199
|
*/
|
|
213
|
-
on(
|
|
200
|
+
on(eventName: "connection_failed", eventHandler: (err: Error) => void): this;
|
|
214
201
|
|
|
215
202
|
/**
|
|
216
203
|
* this Event is raised when a failing connection is about to be tried again
|
|
217
|
-
* @param event
|
|
218
|
-
* @param eventHandler
|
|
219
204
|
*/
|
|
220
|
-
on(
|
|
205
|
+
on(eventName: "backoff", eventHandler: (count: number, delay: number) => void): this;
|
|
221
206
|
|
|
222
207
|
/**
|
|
223
208
|
* this event is raised when the client has encountered a connection failure and
|
|
224
209
|
* and is going to reconnection mode.
|
|
210
|
+
*
|
|
211
|
+
* It notifies the observer that the OPCUA is now trying to reestablish the connection
|
|
212
|
+
* after having received a connection break...
|
|
213
|
+
*
|
|
225
214
|
* You can intercept start_reconnection event to pause your interaction with the remote
|
|
226
215
|
* OPCUA server.
|
|
227
|
-
* @param event
|
|
228
|
-
* @param eventHandler
|
|
229
216
|
*/
|
|
230
|
-
on(
|
|
217
|
+
on(eventName: "start_reconnection", eventHandler: () => void): this;
|
|
231
218
|
|
|
232
219
|
/**
|
|
233
220
|
* this event is raised when the client has failed one attempt to reconnect to the server
|
|
234
221
|
* This event will be raised if the socket has successfully being created to the server but
|
|
235
222
|
* if something went wrong during the reconnection process.
|
|
236
|
-
* @param event
|
|
237
|
-
* @param eventHandler
|
|
238
223
|
*/
|
|
239
|
-
on(
|
|
224
|
+
on(eventName: "reconnection_attempt_has_failed", eventHandler: (err: Error, message: string) => void): this;
|
|
240
225
|
|
|
241
226
|
/**
|
|
242
227
|
* this event is raised after the client has successfully managed to re-establish the connection with
|
|
243
228
|
* the remote OPCUA Server.
|
|
244
229
|
* You can intercept after_reconnection event to resume your interaction with the remote
|
|
245
230
|
* OPCUA server.
|
|
246
|
-
*
|
|
247
|
-
* @param event
|
|
248
|
-
* @param eventHandler
|
|
249
231
|
*/
|
|
250
|
-
on(
|
|
232
|
+
on(eventName: "after_reconnection", eventHandler: (err?: Error) => void): this;
|
|
251
233
|
|
|
252
234
|
/**
|
|
253
235
|
* the event is raised when the connection has been aborted by the remote OPCUA Server
|
|
254
236
|
* @param event
|
|
255
237
|
* @param eventHandler
|
|
256
238
|
*/
|
|
257
|
-
on(
|
|
239
|
+
on(eventName: "abort", eventHandler: () => void): this;
|
|
258
240
|
|
|
259
241
|
/**
|
|
260
242
|
* this event is raised when the connection is closed
|
|
261
243
|
* @param event
|
|
262
244
|
* @param eventHandler
|
|
263
245
|
*/
|
|
264
|
-
on(
|
|
246
|
+
on(eventName: "close", eventHandler: () => void): this;
|
|
265
247
|
|
|
266
248
|
/**
|
|
267
249
|
* this event is raised when the client is sending a message chunk to the server
|
|
@@ -269,7 +251,7 @@ export interface OPCUAClientBase extends EventEmitter {
|
|
|
269
251
|
* @param event
|
|
270
252
|
* @param eventHandler
|
|
271
253
|
*/
|
|
272
|
-
on(
|
|
254
|
+
on(eventName: "send_chunk", eventHandler: (chunk: Buffer) => void): this;
|
|
273
255
|
|
|
274
256
|
/**
|
|
275
257
|
* this event is raised when the client has received a new message chunk from the servers
|
|
@@ -277,11 +259,11 @@ export interface OPCUAClientBase extends EventEmitter {
|
|
|
277
259
|
* @param event
|
|
278
260
|
* @param eventHandler
|
|
279
261
|
*/
|
|
280
|
-
on(
|
|
262
|
+
on(eventName: "receive_chunk", eventHandler: (chunk: Buffer) => void): this;
|
|
281
263
|
|
|
282
|
-
on(
|
|
264
|
+
on(eventName: "send_request", eventHandler: (request: Request) => void): this;
|
|
283
265
|
|
|
284
|
-
on(
|
|
266
|
+
on(eventName: "receive_response", eventHandler: (response: Response) => void): this;
|
|
285
267
|
|
|
286
268
|
/**
|
|
287
269
|
* this event is raised when the current security token has reached 75% of its lifetime and is therefore
|
|
@@ -289,7 +271,7 @@ export interface OPCUAClientBase extends EventEmitter {
|
|
|
289
271
|
* @param event
|
|
290
272
|
* @param eventHandler
|
|
291
273
|
*/
|
|
292
|
-
on(
|
|
274
|
+
on(eventName: "lifetime_75", eventHandler: (token: ChannelSecurityToken) => void): this;
|
|
293
275
|
|
|
294
276
|
/**
|
|
295
277
|
* this event is raised after the (about ) security token as been renewed
|
|
@@ -297,21 +279,21 @@ export interface OPCUAClientBase extends EventEmitter {
|
|
|
297
279
|
* @param event
|
|
298
280
|
* @param eventHandler
|
|
299
281
|
*/
|
|
300
|
-
on(
|
|
282
|
+
on(eventName: "security_token_renewed", eventHandler: () => void): this;
|
|
301
283
|
|
|
302
284
|
/**
|
|
303
285
|
* this event is raised when the connection has been broken
|
|
304
286
|
* @param event
|
|
305
287
|
* @param eventHandler
|
|
306
288
|
*/
|
|
307
|
-
on(
|
|
289
|
+
on(eventName: "connection_lost", eventHandler: () => void): this;
|
|
308
290
|
|
|
309
291
|
/**
|
|
310
292
|
* this event is raised when a broken connection with the remote Server has been reestablished
|
|
311
293
|
* @param event
|
|
312
294
|
* @param eventHandler
|
|
313
295
|
*/
|
|
314
|
-
on(
|
|
296
|
+
on(eventName: "connection_reestablished", eventHandler: () => void): this;
|
|
315
297
|
|
|
316
298
|
/**
|
|
317
299
|
* This event is raised when a request sent to the remote OPCUA server has reach it's timeout value without
|
|
@@ -319,9 +301,9 @@ export interface OPCUAClientBase extends EventEmitter {
|
|
|
319
301
|
* @param event
|
|
320
302
|
* @param eventHandler
|
|
321
303
|
*/
|
|
322
|
-
on(
|
|
304
|
+
on(eventName: "timed_out_request", eventHandler: (request: Request) => void): this;
|
|
323
305
|
|
|
324
|
-
on(
|
|
306
|
+
on(eventName: string | symbol, listener: (...args: any[]) => void): this;
|
|
325
307
|
}
|
|
326
308
|
|
|
327
309
|
export interface OPCUAClientBase {
|
|
@@ -349,6 +331,7 @@ export interface OPCUAClientBase {
|
|
|
349
331
|
|
|
350
332
|
export class OPCUAClientBase {
|
|
351
333
|
public static registry = new ObjectRegistry();
|
|
334
|
+
public static retryDelay = 1000 * 5;
|
|
352
335
|
|
|
353
336
|
public static create(options: OPCUAClientBaseOptions): OPCUAClientBase {
|
|
354
337
|
/* istanbul ignore next*/
|
package/source/client_session.ts
CHANGED
|
@@ -56,12 +56,14 @@ import { WriteValue, WriteValueOptions } from "node-opcua-service-write";
|
|
|
56
56
|
import { StatusCode } from "node-opcua-status-code";
|
|
57
57
|
import { DataType, Variant } from "node-opcua-variant";
|
|
58
58
|
import { Callback } from "node-opcua-status-code";
|
|
59
|
-
import { ExtraDataTypeManager } from "node-opcua-client-dynamic-extension-object";
|
|
60
59
|
import { ExtensionObject } from "node-opcua-extension-object";
|
|
61
60
|
import { ArgumentDefinition, CallMethodRequestLike, MethodId } from "node-opcua-pseudo-session";
|
|
62
61
|
import { AggregateFunction } from "node-opcua-constants";
|
|
63
62
|
import { HistoryReadRequest, HistoryReadResponse, HistoryReadValueIdOptions } from "node-opcua-types";
|
|
63
|
+
|
|
64
|
+
import { ExtraDataTypeManager } from "node-opcua-client-dynamic-extension-object";
|
|
64
65
|
export { ExtraDataTypeManager } from "node-opcua-client-dynamic-extension-object";
|
|
66
|
+
|
|
65
67
|
export { ExtensionObject } from "node-opcua-extension-object";
|
|
66
68
|
export { ArgumentDefinition, CallMethodRequestLike, MethodId } from "node-opcua-pseudo-session";
|
|
67
69
|
|
|
@@ -577,7 +579,7 @@ export interface ClientSessionNamespaceService {
|
|
|
577
579
|
}
|
|
578
580
|
|
|
579
581
|
export interface ClientSessionExtensionObjectService {
|
|
580
|
-
constructExtensionObject(dataType: NodeId, pojo:
|
|
582
|
+
constructExtensionObject(dataType: NodeId, pojo: Record<string, unknown>): Promise<ExtensionObject>;
|
|
581
583
|
|
|
582
584
|
/**
|
|
583
585
|
* @private
|