opcua-webapi-ts 1.0.29 → 1.1.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.
- package/dist/cjs/client/UaWebClient.js +41 -41
- package/dist/cjs/client/base/UaWebClientApi.js +2 -0
- package/dist/cjs/client/base/UaWebClientNative.js +34 -0
- package/dist/cjs/client/base/index.js +18 -0
- package/dist/cjs/client/index.js +1 -0
- package/dist/cjs/client/utils/UaNodeReader.js +13 -13
- package/dist/cjs/client/utils/UaObjectTypeDictionary.js +1 -1
- package/dist/cjs/common/types/UaLink.js +9 -1
- package/dist/client/UaWebClient.d.ts +5 -6
- package/dist/client/UaWebClient.js +41 -41
- package/dist/client/base/UaWebClientApi.d.ts +11 -0
- package/dist/client/base/UaWebClientApi.js +2 -0
- package/dist/client/base/UaWebClientNative.d.ts +15 -0
- package/dist/client/base/UaWebClientNative.js +34 -0
- package/dist/client/base/index.d.ts +2 -0
- package/dist/client/base/index.js +18 -0
- package/dist/client/index.d.ts +1 -0
- package/dist/client/index.js +1 -0
- package/dist/client/utils/UaNodeReader.js +13 -13
- package/dist/client/utils/UaObjectTypeDictionary.js +1 -1
- package/dist/common/types/UaLink.d.ts +6 -1
- package/dist/common/types/UaLink.js +9 -1
- package/package.json +1 -1
|
@@ -12,19 +12,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.UaWebClient = void 0;
|
|
13
13
|
const opcua_webapi_1 = require("opcua-webapi");
|
|
14
14
|
const common_1 = require("../common");
|
|
15
|
+
const __1 = require("..");
|
|
15
16
|
const common_2 = require("../common");
|
|
16
17
|
class UaWebClient {
|
|
17
18
|
constructor(clientConfig) {
|
|
18
|
-
this.api = new opcua_webapi_1.DefaultApi(clientConfig.apiConfig);
|
|
19
19
|
this.clientConfig = clientConfig;
|
|
20
|
+
this.api = this.createApi();
|
|
20
21
|
this.requestHandle = 1;
|
|
21
22
|
}
|
|
22
23
|
getUrl() {
|
|
23
24
|
return this.clientConfig.apiConfig.basePath;
|
|
24
25
|
}
|
|
25
|
-
getNativeApi() {
|
|
26
|
-
return this.api;
|
|
27
|
-
}
|
|
28
26
|
find(applicationUris) {
|
|
29
27
|
return __awaiter(this, void 0, void 0, function* () {
|
|
30
28
|
let results = yield this.findServer(this.clientConfig.apiConfig.basePath, (applicationUris) ? applicationUris : []);
|
|
@@ -360,18 +358,18 @@ class UaWebClient {
|
|
|
360
358
|
NodesToBrowse.push(item.toStruct());
|
|
361
359
|
}
|
|
362
360
|
let request = (0, opcua_webapi_1.BrowseRequestFromJSON)({
|
|
363
|
-
RequestHeader: this.requestHeader(
|
|
361
|
+
RequestHeader: this.requestHeader(additionalParameters),
|
|
364
362
|
NodesToBrowse: NodesToBrowse,
|
|
365
363
|
RequestedMaxReferencesPerNode: (maxReferencesPerNode && maxReferencesPerNode > 0) ? maxReferencesPerNode : undefined,
|
|
366
364
|
View: view
|
|
367
365
|
});
|
|
368
|
-
let timeout = this.requestTimeout(
|
|
366
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
369
367
|
let response;
|
|
370
368
|
if (timeout > 0 && typeof AbortController !== "undefined") {
|
|
371
369
|
let controller = new AbortController();
|
|
372
370
|
let timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
373
371
|
try {
|
|
374
|
-
response = yield this.api.browse(
|
|
372
|
+
response = yield this.api.browse(request, { signal: controller.signal });
|
|
375
373
|
}
|
|
376
374
|
catch (error) {
|
|
377
375
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -382,7 +380,7 @@ class UaWebClient {
|
|
|
382
380
|
}
|
|
383
381
|
else {
|
|
384
382
|
try {
|
|
385
|
-
response = yield this.api.browse(
|
|
383
|
+
response = yield this.api.browse(request);
|
|
386
384
|
}
|
|
387
385
|
catch (error) {
|
|
388
386
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -410,17 +408,17 @@ class UaWebClient {
|
|
|
410
408
|
if (continuationPoints.length == 0)
|
|
411
409
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadNothingToDo));
|
|
412
410
|
let request = (0, opcua_webapi_1.BrowseNextRequestFromJSON)({
|
|
413
|
-
RequestHeader: this.requestHeader(
|
|
411
|
+
RequestHeader: this.requestHeader(additionalParameters),
|
|
414
412
|
ContinuationPoints: continuationPoints,
|
|
415
413
|
ReleaseContinuationPoints: releaseContinuationPoints
|
|
416
414
|
});
|
|
417
|
-
let timeout = this.requestTimeout(
|
|
415
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
418
416
|
let response;
|
|
419
417
|
if (timeout > 0 && typeof AbortController !== "undefined") {
|
|
420
418
|
let controller = new AbortController();
|
|
421
419
|
let timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
422
420
|
try {
|
|
423
|
-
response = yield this.api.browseNext(
|
|
421
|
+
response = yield this.api.browseNext(request, { signal: controller.signal });
|
|
424
422
|
}
|
|
425
423
|
catch (error) {
|
|
426
424
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -431,7 +429,7 @@ class UaWebClient {
|
|
|
431
429
|
}
|
|
432
430
|
else {
|
|
433
431
|
try {
|
|
434
|
-
response = yield this.api.browseNext(
|
|
432
|
+
response = yield this.api.browseNext(request);
|
|
435
433
|
}
|
|
436
434
|
catch (error) {
|
|
437
435
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -461,20 +459,20 @@ class UaWebClient {
|
|
|
461
459
|
NodesToRead.push(item.toStruct());
|
|
462
460
|
}
|
|
463
461
|
let request = (0, opcua_webapi_1.ReadRequestFromJSON)({
|
|
464
|
-
RequestHeader: this.requestHeader(
|
|
462
|
+
RequestHeader: this.requestHeader(additionalParameters),
|
|
465
463
|
NodesToRead: NodesToRead,
|
|
466
464
|
MaxAge: (maxAge && maxAge > 0) ? maxAge : undefined,
|
|
467
465
|
TimestampsToReturn: (timestampsToReturn &&
|
|
468
466
|
timestampsToReturn >= opcua_webapi_1.TimestampsToReturn.Source &&
|
|
469
467
|
timestampsToReturn < opcua_webapi_1.TimestampsToReturn.Invalid) ? timestampsToReturn : opcua_webapi_1.TimestampsToReturn.Neither
|
|
470
468
|
});
|
|
471
|
-
let timeout = this.requestTimeout(
|
|
469
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
472
470
|
let response;
|
|
473
471
|
if (timeout > 0 && typeof AbortController !== "undefined") {
|
|
474
472
|
let controller = new AbortController();
|
|
475
473
|
let timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
476
474
|
try {
|
|
477
|
-
response = yield this.api.read(
|
|
475
|
+
response = yield this.api.read(request, { signal: controller.signal });
|
|
478
476
|
}
|
|
479
477
|
catch (error) {
|
|
480
478
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -485,7 +483,7 @@ class UaWebClient {
|
|
|
485
483
|
}
|
|
486
484
|
else {
|
|
487
485
|
try {
|
|
488
|
-
response = yield this.api.read(
|
|
486
|
+
response = yield this.api.read(request);
|
|
489
487
|
}
|
|
490
488
|
catch (error) {
|
|
491
489
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -513,16 +511,16 @@ class UaWebClient {
|
|
|
513
511
|
NodesToWrite.push(item.toStruct());
|
|
514
512
|
}
|
|
515
513
|
let request = (0, opcua_webapi_1.WriteRequestFromJSON)({
|
|
516
|
-
RequestHeader: this.requestHeader(
|
|
514
|
+
RequestHeader: this.requestHeader(additionalParameters),
|
|
517
515
|
NodesToWrite: NodesToWrite
|
|
518
516
|
});
|
|
519
|
-
let timeout = this.requestTimeout(
|
|
517
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
520
518
|
let response;
|
|
521
519
|
if (timeout > 0 && typeof AbortController !== "undefined") {
|
|
522
520
|
let controller = new AbortController();
|
|
523
521
|
let timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
524
522
|
try {
|
|
525
|
-
response = yield this.api.write(
|
|
523
|
+
response = yield this.api.write(request, { signal: controller.signal });
|
|
526
524
|
}
|
|
527
525
|
catch (error) {
|
|
528
526
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -533,7 +531,7 @@ class UaWebClient {
|
|
|
533
531
|
}
|
|
534
532
|
else {
|
|
535
533
|
try {
|
|
536
|
-
response = yield this.api.write(
|
|
534
|
+
response = yield this.api.write(request);
|
|
537
535
|
}
|
|
538
536
|
catch (error) {
|
|
539
537
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -561,16 +559,16 @@ class UaWebClient {
|
|
|
561
559
|
MethodsToCall.push(item.toStruct());
|
|
562
560
|
}
|
|
563
561
|
let request = (0, opcua_webapi_1.CallRequestFromJSON)({
|
|
564
|
-
RequestHeader: this.requestHeader(
|
|
562
|
+
RequestHeader: this.requestHeader(additionalParameters),
|
|
565
563
|
MethodsToCall: MethodsToCall
|
|
566
564
|
});
|
|
567
|
-
let timeout = this.requestTimeout(
|
|
565
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
568
566
|
let response;
|
|
569
567
|
if (timeout > 0 && typeof AbortController !== "undefined") {
|
|
570
568
|
let controller = new AbortController();
|
|
571
569
|
let timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
572
570
|
try {
|
|
573
|
-
response = yield this.api.call(
|
|
571
|
+
response = yield this.api.call(request, { signal: controller.signal });
|
|
574
572
|
}
|
|
575
573
|
catch (error) {
|
|
576
574
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -581,7 +579,7 @@ class UaWebClient {
|
|
|
581
579
|
}
|
|
582
580
|
else {
|
|
583
581
|
try {
|
|
584
|
-
response = yield this.api.call(
|
|
582
|
+
response = yield this.api.call(request);
|
|
585
583
|
}
|
|
586
584
|
catch (error) {
|
|
587
585
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -611,7 +609,7 @@ class UaWebClient {
|
|
|
611
609
|
NodesToRead.push(item.toStruct());
|
|
612
610
|
}
|
|
613
611
|
let request = (0, opcua_webapi_1.HistoryReadRequestFromJSON)({
|
|
614
|
-
RequestHeader: this.requestHeader(
|
|
612
|
+
RequestHeader: this.requestHeader(additionalParameters),
|
|
615
613
|
HistoryReadDetails: common_1.UaPayloadMapper.extensionObjectToWebApi(historyReadDetails),
|
|
616
614
|
TimestampsToReturn: (timestampsToReturn &&
|
|
617
615
|
timestampsToReturn >= opcua_webapi_1.TimestampsToReturn.Source &&
|
|
@@ -619,13 +617,13 @@ class UaWebClient {
|
|
|
619
617
|
ReleaseContinuationPoints: releaseContinuationPoints,
|
|
620
618
|
NodesToRead: NodesToRead
|
|
621
619
|
});
|
|
622
|
-
let timeout = this.requestTimeout(
|
|
620
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
623
621
|
let response;
|
|
624
622
|
if (timeout > 0 && typeof AbortController !== "undefined") {
|
|
625
623
|
let controller = new AbortController();
|
|
626
624
|
let timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
627
625
|
try {
|
|
628
|
-
response = yield this.api.historyRead(
|
|
626
|
+
response = yield this.api.historyRead(request, { signal: controller.signal });
|
|
629
627
|
}
|
|
630
628
|
catch (error) {
|
|
631
629
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -636,7 +634,7 @@ class UaWebClient {
|
|
|
636
634
|
}
|
|
637
635
|
else {
|
|
638
636
|
try {
|
|
639
|
-
response = yield this.api.historyRead(
|
|
637
|
+
response = yield this.api.historyRead(request);
|
|
640
638
|
}
|
|
641
639
|
catch (error) {
|
|
642
640
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -660,18 +658,18 @@ class UaWebClient {
|
|
|
660
658
|
return __awaiter(this, void 0, void 0, function* () {
|
|
661
659
|
var _a, _b;
|
|
662
660
|
let request = (0, opcua_webapi_1.FindServersRequestFromJSON)({
|
|
663
|
-
RequestHeader: this.requestHeader(
|
|
661
|
+
RequestHeader: this.requestHeader(additionalParameters),
|
|
664
662
|
ServerUris: serverUris,
|
|
665
663
|
EndpointUrl: endpointUrl,
|
|
666
664
|
LocaleIds: localeIds
|
|
667
665
|
});
|
|
668
|
-
let timeout = this.requestTimeout(
|
|
666
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
669
667
|
let response;
|
|
670
668
|
if (timeout > 0 && typeof AbortController !== "undefined") {
|
|
671
669
|
let controller = new AbortController();
|
|
672
670
|
let timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
673
671
|
try {
|
|
674
|
-
response = yield this.api.findServers(
|
|
672
|
+
response = yield this.api.findServers(request, { signal: controller.signal });
|
|
675
673
|
}
|
|
676
674
|
catch (error) {
|
|
677
675
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -682,7 +680,7 @@ class UaWebClient {
|
|
|
682
680
|
}
|
|
683
681
|
else {
|
|
684
682
|
try {
|
|
685
|
-
response = yield this.api.findServers(
|
|
683
|
+
response = yield this.api.findServers(request);
|
|
686
684
|
}
|
|
687
685
|
catch (error) {
|
|
688
686
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -699,18 +697,18 @@ class UaWebClient {
|
|
|
699
697
|
return __awaiter(this, void 0, void 0, function* () {
|
|
700
698
|
var _a, _b;
|
|
701
699
|
let request = (0, opcua_webapi_1.GetEndpointsRequestFromJSON)({
|
|
702
|
-
RequestHeader: this.requestHeader(
|
|
700
|
+
RequestHeader: this.requestHeader(additionalParameters),
|
|
703
701
|
EndpointUrl: endpointUrl,
|
|
704
702
|
LocaleIds: localeIds,
|
|
705
703
|
ProfileUris: profileUris
|
|
706
704
|
});
|
|
707
|
-
let timeout = this.requestTimeout(
|
|
705
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
708
706
|
let response;
|
|
709
707
|
if (timeout > 0 && typeof AbortController !== "undefined") {
|
|
710
708
|
let controller = new AbortController();
|
|
711
709
|
let timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
712
710
|
try {
|
|
713
|
-
response = yield this.api.getEndpoints(
|
|
711
|
+
response = yield this.api.getEndpoints(request, { signal: controller.signal });
|
|
714
712
|
}
|
|
715
713
|
catch (error) {
|
|
716
714
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -721,7 +719,7 @@ class UaWebClient {
|
|
|
721
719
|
}
|
|
722
720
|
else {
|
|
723
721
|
try {
|
|
724
|
-
response = yield this.api.getEndpoints(
|
|
722
|
+
response = yield this.api.getEndpoints(request);
|
|
725
723
|
}
|
|
726
724
|
catch (error) {
|
|
727
725
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -734,13 +732,12 @@ class UaWebClient {
|
|
|
734
732
|
return response.Endpoints;
|
|
735
733
|
});
|
|
736
734
|
}
|
|
737
|
-
requestHeader(
|
|
738
|
-
let timeout = this.requestTimeout(
|
|
735
|
+
requestHeader(additionalParameters) {
|
|
736
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
739
737
|
let ret = {
|
|
740
738
|
RequestHandle: this.requestHandle,
|
|
741
739
|
TimeoutHint: timeout,
|
|
742
740
|
Timestamp: new Date(),
|
|
743
|
-
AuthenticationToken: this.authenticationToken,
|
|
744
741
|
ReturnDiagnostics: (additionalParameters) ? additionalParameters.returnDiagnostics : undefined,
|
|
745
742
|
AuditEntryId: (additionalParameters) ? additionalParameters.auditEntryId : undefined,
|
|
746
743
|
};
|
|
@@ -749,11 +746,14 @@ class UaWebClient {
|
|
|
749
746
|
this.requestHandle = 1;
|
|
750
747
|
return ret;
|
|
751
748
|
}
|
|
752
|
-
requestTimeout(
|
|
753
|
-
let timeout = clientConfig.defaultTimeout;
|
|
749
|
+
requestTimeout(additionalParameters) {
|
|
750
|
+
let timeout = this.clientConfig.defaultTimeout;
|
|
754
751
|
if (additionalParameters && additionalParameters.timeout > 1000)
|
|
755
752
|
timeout = additionalParameters.timeout;
|
|
756
753
|
return timeout;
|
|
757
754
|
}
|
|
755
|
+
createApi() {
|
|
756
|
+
return new __1.UaWebClientNative(this.clientConfig.apiConfig);
|
|
757
|
+
}
|
|
758
758
|
}
|
|
759
759
|
exports.UaWebClient = UaWebClient;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UaWebClientNative = void 0;
|
|
4
|
+
const opcua_webapi_1 = require("opcua-webapi");
|
|
5
|
+
class UaWebClientNative {
|
|
6
|
+
constructor(configure) {
|
|
7
|
+
this.api = new opcua_webapi_1.DefaultApi(configure);
|
|
8
|
+
}
|
|
9
|
+
browse(request, initOverrides) {
|
|
10
|
+
return this.api.browse({ browseRequest: request }, initOverrides);
|
|
11
|
+
}
|
|
12
|
+
browseNext(request, initOverrides) {
|
|
13
|
+
return this.api.browseNext({ browseNextRequest: request }, initOverrides);
|
|
14
|
+
}
|
|
15
|
+
call(request, initOverrides) {
|
|
16
|
+
return this.api.call({ callRequest: request }, initOverrides);
|
|
17
|
+
}
|
|
18
|
+
findServers(request, initOverrides) {
|
|
19
|
+
return this.api.findServers({ findServersRequest: request }, initOverrides);
|
|
20
|
+
}
|
|
21
|
+
getEndpoints(request, initOverrides) {
|
|
22
|
+
return this.api.getEndpoints({ getEndpointsRequest: request }, initOverrides);
|
|
23
|
+
}
|
|
24
|
+
historyRead(request, initOverrides) {
|
|
25
|
+
return this.api.historyRead({ historyReadRequest: request }, initOverrides);
|
|
26
|
+
}
|
|
27
|
+
read(request, initOverrides) {
|
|
28
|
+
return this.api.read({ readRequest: request }, initOverrides);
|
|
29
|
+
}
|
|
30
|
+
write(request, initOverrides) {
|
|
31
|
+
return this.api.write({ writeRequest: request }, initOverrides);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.UaWebClientNative = UaWebClientNative;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./UaWebClientApi"), exports);
|
|
18
|
+
__exportStar(require("./UaWebClientNative"), exports);
|
package/dist/cjs/client/index.js
CHANGED
|
@@ -56,7 +56,7 @@ class UaNodeReaderBase {
|
|
|
56
56
|
for (let item of currentResult.references) {
|
|
57
57
|
let nodeId = item.nodeId.getNodeId();
|
|
58
58
|
let typeDefinition = (_a = item.typeDefinition) === null || _a === void 0 ? void 0 : _a.getNodeId();
|
|
59
|
-
if (null == nodeId || null
|
|
59
|
+
if (null == nodeId || null === typeDefinition)
|
|
60
60
|
continue;
|
|
61
61
|
this._browseResults.push({
|
|
62
62
|
fromNodeId: currentNode.nodeId,
|
|
@@ -575,7 +575,7 @@ class UaNodeLinkReader {
|
|
|
575
575
|
};
|
|
576
576
|
ret.set(item.fromNodeId.toString(), result);
|
|
577
577
|
}
|
|
578
|
-
result.links.push(new common_1.UaLink(item.nodeId, item.nodeClass, item.referenceTypeId, item.isForward));
|
|
578
|
+
result.links.push(new common_1.UaLink(item.nodeId, item.nodeClass, item.browseName, item.displayName, item.referenceTypeId, item.isForward));
|
|
579
579
|
}
|
|
580
580
|
return [...ret.values()];
|
|
581
581
|
}
|
|
@@ -587,7 +587,7 @@ class UaNodeLinkReader {
|
|
|
587
587
|
let nodesToBrowse = this._nodesToBrowse.splice(0, 50);
|
|
588
588
|
let browseDescriptions = [];
|
|
589
589
|
for (let item of nodesToBrowse) {
|
|
590
|
-
let browseDescription = new common_1.UaBrowseDescription(item, opcua_webapi_1.BrowseDirection.Both, common_1.UaNodeId.from(common_1.ReferenceTypeIds.NonHierarchicalReferences), true, opcua_webapi_1.NodeClass.Object
|
|
590
|
+
let browseDescription = new common_1.UaBrowseDescription(item, opcua_webapi_1.BrowseDirection.Both, common_1.UaNodeId.from(common_1.ReferenceTypeIds.NonHierarchicalReferences), true, opcua_webapi_1.NodeClass.Object, 63);
|
|
591
591
|
browseDescriptions.push(browseDescription);
|
|
592
592
|
}
|
|
593
593
|
let results = yield client.browse(browseDescriptions, 50);
|
|
@@ -599,15 +599,15 @@ class UaNodeLinkReader {
|
|
|
599
599
|
for (let item of currentResult.references) {
|
|
600
600
|
let nodeId = item.nodeId.getNodeId();
|
|
601
601
|
let typeDefinition = (_a = item.typeDefinition) === null || _a === void 0 ? void 0 : _a.getNodeId();
|
|
602
|
-
if (null == nodeId || null
|
|
602
|
+
if (null == nodeId || null === typeDefinition)
|
|
603
603
|
continue;
|
|
604
604
|
this._browseResults.push({
|
|
605
605
|
fromNodeId: currentNodeId,
|
|
606
606
|
nodeId: nodeId,
|
|
607
|
-
nodeClass: item.nodeClass,
|
|
608
|
-
browseName: item.browseName,
|
|
609
|
-
displayName: item.displayName,
|
|
610
|
-
referenceTypeId: item.referenceTypeId,
|
|
607
|
+
nodeClass: (item.nodeClass) ? item.nodeClass : opcua_webapi_1.NodeClass.Unspecified,
|
|
608
|
+
browseName: (item.browseName) ? item.browseName : "",
|
|
609
|
+
displayName: (item.displayName) ? item.displayName : common_1.UaLocalizedText.nullText,
|
|
610
|
+
referenceTypeId: (item.referenceTypeId) ? item.referenceTypeId : common_1.UaNodeId.nullNodeId,
|
|
611
611
|
isForward: item.isForward,
|
|
612
612
|
typeDefinitionId: typeDefinition
|
|
613
613
|
});
|
|
@@ -638,15 +638,15 @@ class UaNodeLinkReader {
|
|
|
638
638
|
for (let item of currentResult.references) {
|
|
639
639
|
let nodeId = item.nodeId.getNodeId();
|
|
640
640
|
let typeDefinition = (_a = item.typeDefinition) === null || _a === void 0 ? void 0 : _a.getNodeId();
|
|
641
|
-
if (null == nodeId || null
|
|
641
|
+
if (null == nodeId || null === typeDefinition)
|
|
642
642
|
continue;
|
|
643
643
|
this._browseResults.push({
|
|
644
644
|
fromNodeId: currentNodeId,
|
|
645
645
|
nodeId: nodeId,
|
|
646
|
-
nodeClass: item.nodeClass,
|
|
647
|
-
browseName: item.browseName,
|
|
648
|
-
displayName: item.displayName,
|
|
649
|
-
referenceTypeId: item.referenceTypeId,
|
|
646
|
+
nodeClass: (item.nodeClass) ? item.nodeClass : opcua_webapi_1.NodeClass.Unspecified,
|
|
647
|
+
browseName: (item.browseName) ? item.browseName : "",
|
|
648
|
+
displayName: (item.displayName) ? item.displayName : common_1.UaLocalizedText.nullText,
|
|
649
|
+
referenceTypeId: (item.referenceTypeId) ? item.referenceTypeId : common_1.UaNodeId.nullNodeId,
|
|
650
650
|
isForward: item.isForward,
|
|
651
651
|
typeDefinitionId: typeDefinition
|
|
652
652
|
});
|
|
@@ -38,7 +38,7 @@ class UaObjectTypeDictionary {
|
|
|
38
38
|
let nodeIds = this._remainingNodesToBrowse.splice(0, 15);
|
|
39
39
|
let nodesToBrowse = [];
|
|
40
40
|
for (let item of nodeIds) {
|
|
41
|
-
let browseDescription = new common_1.UaBrowseDescription(item, opcua_webapi_1.BrowseDirection.Forward, new common_1.UaNodeId(common_1.ReferenceTypeIds.HasSubtype), false, opcua_webapi_1.NodeClass.ObjectType,
|
|
41
|
+
let browseDescription = new common_1.UaBrowseDescription(item, opcua_webapi_1.BrowseDirection.Forward, new common_1.UaNodeId(common_1.ReferenceTypeIds.HasSubtype), false, opcua_webapi_1.NodeClass.ObjectType, 63);
|
|
42
42
|
nodesToBrowse.push(browseDescription);
|
|
43
43
|
}
|
|
44
44
|
let results = yield client.browse(nodesToBrowse);
|
|
@@ -2,8 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.UaLink = void 0;
|
|
4
4
|
class UaLink {
|
|
5
|
-
constructor(targetId, nodeClass, referenceTypeId, isForward) {
|
|
5
|
+
constructor(targetId, nodeClass, browseName, displayName, referenceTypeId, isForward) {
|
|
6
6
|
this._targetId = targetId;
|
|
7
|
+
this._browseName = browseName;
|
|
8
|
+
this._displayName = displayName;
|
|
7
9
|
this._nodeClass = nodeClass;
|
|
8
10
|
this._referenceTypeId = referenceTypeId;
|
|
9
11
|
this._isForward = isForward;
|
|
@@ -11,6 +13,12 @@ class UaLink {
|
|
|
11
13
|
get targetId() {
|
|
12
14
|
return this._targetId;
|
|
13
15
|
}
|
|
16
|
+
get browseName() {
|
|
17
|
+
return this._browseName;
|
|
18
|
+
}
|
|
19
|
+
get displayName() {
|
|
20
|
+
return this._displayName;
|
|
21
|
+
}
|
|
14
22
|
get nodeClass() {
|
|
15
23
|
return this._nodeClass;
|
|
16
24
|
}
|
|
@@ -1,15 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ViewDescription, RequestHeader, ApplicationDescription, BrowseDirection, EndpointDescription } from "opcua-webapi";
|
|
2
2
|
import { UaBrowseResult, UaNodeAttributes, UaVariableAttributes, UaNodeId, UaDataValue, UaVariant, UaStatusCode, UaExtensionObject, UaHistoryDataResult, UaQuery, UaObjectAttributes, UaMethodArguments, UaApplicationDescriptor, UaBrowseDescription, UaReadValueId, UaWriteValue, UaHistoryReadValueId, UaHistoryReadResult } from "../common";
|
|
3
|
-
import { UaClientConfiguration, UaClientParameters } from "..";
|
|
3
|
+
import { UaClientConfiguration, UaClientParameters, UaWebClientApi } from "..";
|
|
4
4
|
import { UaHistoryEventResult, UaCallMethodRequest, UaCallMethodResult } from "../common";
|
|
5
5
|
export declare class UaWebClient {
|
|
6
6
|
private api;
|
|
7
7
|
private clientConfig;
|
|
8
8
|
private requestHandle;
|
|
9
|
-
protected authenticationToken: string | undefined;
|
|
10
9
|
constructor(clientConfig: UaClientConfiguration);
|
|
11
10
|
getUrl(): string;
|
|
12
|
-
getNativeApi(): DefaultApi;
|
|
13
11
|
find(applicationUris?: Array<string>): Promise<Array<UaApplicationDescriptor>>;
|
|
14
12
|
browseChild(nodeId: UaNodeId, nodeClass?: number, maxReferences?: number): Promise<UaBrowseResult>;
|
|
15
13
|
browseReference(nodeId: UaNodeId, nodeClass?: number, direction?: BrowseDirection, referenceTypeId?: UaNodeId, maxReferences?: number): Promise<UaBrowseResult>;
|
|
@@ -33,6 +31,7 @@ export declare class UaWebClient {
|
|
|
33
31
|
historyRead(nodesToRead: Array<UaHistoryReadValueId>, historyReadDetails: UaExtensionObject, timestampsToReturn?: number, releaseContinuationPoints?: boolean, additionalParameters?: UaClientParameters): Promise<Array<UaHistoryReadResult>>;
|
|
34
32
|
findServer(endpointUrl: string, serverUris: Array<string>, localeIds?: Array<string>, additionalParameters?: UaClientParameters): Promise<Array<ApplicationDescription>>;
|
|
35
33
|
getEndpoints(endpointUrl?: string, localeIds?: Array<string>, profileUris?: Array<string>, additionalParameters?: UaClientParameters): Promise<Array<EndpointDescription>>;
|
|
36
|
-
|
|
37
|
-
|
|
34
|
+
protected requestHeader(additionalParameters?: UaClientParameters): RequestHeader;
|
|
35
|
+
protected requestTimeout(additionalParameters?: UaClientParameters): number;
|
|
36
|
+
protected createApi(): UaWebClientApi;
|
|
38
37
|
}
|
|
@@ -12,19 +12,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.UaWebClient = void 0;
|
|
13
13
|
const opcua_webapi_1 = require("opcua-webapi");
|
|
14
14
|
const common_1 = require("../common");
|
|
15
|
+
const __1 = require("..");
|
|
15
16
|
const common_2 = require("../common");
|
|
16
17
|
class UaWebClient {
|
|
17
18
|
constructor(clientConfig) {
|
|
18
|
-
this.api = new opcua_webapi_1.DefaultApi(clientConfig.apiConfig);
|
|
19
19
|
this.clientConfig = clientConfig;
|
|
20
|
+
this.api = this.createApi();
|
|
20
21
|
this.requestHandle = 1;
|
|
21
22
|
}
|
|
22
23
|
getUrl() {
|
|
23
24
|
return this.clientConfig.apiConfig.basePath;
|
|
24
25
|
}
|
|
25
|
-
getNativeApi() {
|
|
26
|
-
return this.api;
|
|
27
|
-
}
|
|
28
26
|
find(applicationUris) {
|
|
29
27
|
return __awaiter(this, void 0, void 0, function* () {
|
|
30
28
|
let results = yield this.findServer(this.clientConfig.apiConfig.basePath, (applicationUris) ? applicationUris : []);
|
|
@@ -360,18 +358,18 @@ class UaWebClient {
|
|
|
360
358
|
NodesToBrowse.push(item.toStruct());
|
|
361
359
|
}
|
|
362
360
|
let request = (0, opcua_webapi_1.BrowseRequestFromJSON)({
|
|
363
|
-
RequestHeader: this.requestHeader(
|
|
361
|
+
RequestHeader: this.requestHeader(additionalParameters),
|
|
364
362
|
NodesToBrowse: NodesToBrowse,
|
|
365
363
|
RequestedMaxReferencesPerNode: (maxReferencesPerNode && maxReferencesPerNode > 0) ? maxReferencesPerNode : undefined,
|
|
366
364
|
View: view
|
|
367
365
|
});
|
|
368
|
-
let timeout = this.requestTimeout(
|
|
366
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
369
367
|
let response;
|
|
370
368
|
if (timeout > 0 && typeof AbortController !== "undefined") {
|
|
371
369
|
let controller = new AbortController();
|
|
372
370
|
let timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
373
371
|
try {
|
|
374
|
-
response = yield this.api.browse(
|
|
372
|
+
response = yield this.api.browse(request, { signal: controller.signal });
|
|
375
373
|
}
|
|
376
374
|
catch (error) {
|
|
377
375
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -382,7 +380,7 @@ class UaWebClient {
|
|
|
382
380
|
}
|
|
383
381
|
else {
|
|
384
382
|
try {
|
|
385
|
-
response = yield this.api.browse(
|
|
383
|
+
response = yield this.api.browse(request);
|
|
386
384
|
}
|
|
387
385
|
catch (error) {
|
|
388
386
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -410,17 +408,17 @@ class UaWebClient {
|
|
|
410
408
|
if (continuationPoints.length == 0)
|
|
411
409
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadNothingToDo));
|
|
412
410
|
let request = (0, opcua_webapi_1.BrowseNextRequestFromJSON)({
|
|
413
|
-
RequestHeader: this.requestHeader(
|
|
411
|
+
RequestHeader: this.requestHeader(additionalParameters),
|
|
414
412
|
ContinuationPoints: continuationPoints,
|
|
415
413
|
ReleaseContinuationPoints: releaseContinuationPoints
|
|
416
414
|
});
|
|
417
|
-
let timeout = this.requestTimeout(
|
|
415
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
418
416
|
let response;
|
|
419
417
|
if (timeout > 0 && typeof AbortController !== "undefined") {
|
|
420
418
|
let controller = new AbortController();
|
|
421
419
|
let timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
422
420
|
try {
|
|
423
|
-
response = yield this.api.browseNext(
|
|
421
|
+
response = yield this.api.browseNext(request, { signal: controller.signal });
|
|
424
422
|
}
|
|
425
423
|
catch (error) {
|
|
426
424
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -431,7 +429,7 @@ class UaWebClient {
|
|
|
431
429
|
}
|
|
432
430
|
else {
|
|
433
431
|
try {
|
|
434
|
-
response = yield this.api.browseNext(
|
|
432
|
+
response = yield this.api.browseNext(request);
|
|
435
433
|
}
|
|
436
434
|
catch (error) {
|
|
437
435
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -461,20 +459,20 @@ class UaWebClient {
|
|
|
461
459
|
NodesToRead.push(item.toStruct());
|
|
462
460
|
}
|
|
463
461
|
let request = (0, opcua_webapi_1.ReadRequestFromJSON)({
|
|
464
|
-
RequestHeader: this.requestHeader(
|
|
462
|
+
RequestHeader: this.requestHeader(additionalParameters),
|
|
465
463
|
NodesToRead: NodesToRead,
|
|
466
464
|
MaxAge: (maxAge && maxAge > 0) ? maxAge : undefined,
|
|
467
465
|
TimestampsToReturn: (timestampsToReturn &&
|
|
468
466
|
timestampsToReturn >= opcua_webapi_1.TimestampsToReturn.Source &&
|
|
469
467
|
timestampsToReturn < opcua_webapi_1.TimestampsToReturn.Invalid) ? timestampsToReturn : opcua_webapi_1.TimestampsToReturn.Neither
|
|
470
468
|
});
|
|
471
|
-
let timeout = this.requestTimeout(
|
|
469
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
472
470
|
let response;
|
|
473
471
|
if (timeout > 0 && typeof AbortController !== "undefined") {
|
|
474
472
|
let controller = new AbortController();
|
|
475
473
|
let timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
476
474
|
try {
|
|
477
|
-
response = yield this.api.read(
|
|
475
|
+
response = yield this.api.read(request, { signal: controller.signal });
|
|
478
476
|
}
|
|
479
477
|
catch (error) {
|
|
480
478
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -485,7 +483,7 @@ class UaWebClient {
|
|
|
485
483
|
}
|
|
486
484
|
else {
|
|
487
485
|
try {
|
|
488
|
-
response = yield this.api.read(
|
|
486
|
+
response = yield this.api.read(request);
|
|
489
487
|
}
|
|
490
488
|
catch (error) {
|
|
491
489
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -513,16 +511,16 @@ class UaWebClient {
|
|
|
513
511
|
NodesToWrite.push(item.toStruct());
|
|
514
512
|
}
|
|
515
513
|
let request = (0, opcua_webapi_1.WriteRequestFromJSON)({
|
|
516
|
-
RequestHeader: this.requestHeader(
|
|
514
|
+
RequestHeader: this.requestHeader(additionalParameters),
|
|
517
515
|
NodesToWrite: NodesToWrite
|
|
518
516
|
});
|
|
519
|
-
let timeout = this.requestTimeout(
|
|
517
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
520
518
|
let response;
|
|
521
519
|
if (timeout > 0 && typeof AbortController !== "undefined") {
|
|
522
520
|
let controller = new AbortController();
|
|
523
521
|
let timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
524
522
|
try {
|
|
525
|
-
response = yield this.api.write(
|
|
523
|
+
response = yield this.api.write(request, { signal: controller.signal });
|
|
526
524
|
}
|
|
527
525
|
catch (error) {
|
|
528
526
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -533,7 +531,7 @@ class UaWebClient {
|
|
|
533
531
|
}
|
|
534
532
|
else {
|
|
535
533
|
try {
|
|
536
|
-
response = yield this.api.write(
|
|
534
|
+
response = yield this.api.write(request);
|
|
537
535
|
}
|
|
538
536
|
catch (error) {
|
|
539
537
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -561,16 +559,16 @@ class UaWebClient {
|
|
|
561
559
|
MethodsToCall.push(item.toStruct());
|
|
562
560
|
}
|
|
563
561
|
let request = (0, opcua_webapi_1.CallRequestFromJSON)({
|
|
564
|
-
RequestHeader: this.requestHeader(
|
|
562
|
+
RequestHeader: this.requestHeader(additionalParameters),
|
|
565
563
|
MethodsToCall: MethodsToCall
|
|
566
564
|
});
|
|
567
|
-
let timeout = this.requestTimeout(
|
|
565
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
568
566
|
let response;
|
|
569
567
|
if (timeout > 0 && typeof AbortController !== "undefined") {
|
|
570
568
|
let controller = new AbortController();
|
|
571
569
|
let timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
572
570
|
try {
|
|
573
|
-
response = yield this.api.call(
|
|
571
|
+
response = yield this.api.call(request, { signal: controller.signal });
|
|
574
572
|
}
|
|
575
573
|
catch (error) {
|
|
576
574
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -581,7 +579,7 @@ class UaWebClient {
|
|
|
581
579
|
}
|
|
582
580
|
else {
|
|
583
581
|
try {
|
|
584
|
-
response = yield this.api.call(
|
|
582
|
+
response = yield this.api.call(request);
|
|
585
583
|
}
|
|
586
584
|
catch (error) {
|
|
587
585
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -611,7 +609,7 @@ class UaWebClient {
|
|
|
611
609
|
NodesToRead.push(item.toStruct());
|
|
612
610
|
}
|
|
613
611
|
let request = (0, opcua_webapi_1.HistoryReadRequestFromJSON)({
|
|
614
|
-
RequestHeader: this.requestHeader(
|
|
612
|
+
RequestHeader: this.requestHeader(additionalParameters),
|
|
615
613
|
HistoryReadDetails: common_1.UaPayloadMapper.extensionObjectToWebApi(historyReadDetails),
|
|
616
614
|
TimestampsToReturn: (timestampsToReturn &&
|
|
617
615
|
timestampsToReturn >= opcua_webapi_1.TimestampsToReturn.Source &&
|
|
@@ -619,13 +617,13 @@ class UaWebClient {
|
|
|
619
617
|
ReleaseContinuationPoints: releaseContinuationPoints,
|
|
620
618
|
NodesToRead: NodesToRead
|
|
621
619
|
});
|
|
622
|
-
let timeout = this.requestTimeout(
|
|
620
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
623
621
|
let response;
|
|
624
622
|
if (timeout > 0 && typeof AbortController !== "undefined") {
|
|
625
623
|
let controller = new AbortController();
|
|
626
624
|
let timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
627
625
|
try {
|
|
628
|
-
response = yield this.api.historyRead(
|
|
626
|
+
response = yield this.api.historyRead(request, { signal: controller.signal });
|
|
629
627
|
}
|
|
630
628
|
catch (error) {
|
|
631
629
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -636,7 +634,7 @@ class UaWebClient {
|
|
|
636
634
|
}
|
|
637
635
|
else {
|
|
638
636
|
try {
|
|
639
|
-
response = yield this.api.historyRead(
|
|
637
|
+
response = yield this.api.historyRead(request);
|
|
640
638
|
}
|
|
641
639
|
catch (error) {
|
|
642
640
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -660,18 +658,18 @@ class UaWebClient {
|
|
|
660
658
|
return __awaiter(this, void 0, void 0, function* () {
|
|
661
659
|
var _a, _b;
|
|
662
660
|
let request = (0, opcua_webapi_1.FindServersRequestFromJSON)({
|
|
663
|
-
RequestHeader: this.requestHeader(
|
|
661
|
+
RequestHeader: this.requestHeader(additionalParameters),
|
|
664
662
|
ServerUris: serverUris,
|
|
665
663
|
EndpointUrl: endpointUrl,
|
|
666
664
|
LocaleIds: localeIds
|
|
667
665
|
});
|
|
668
|
-
let timeout = this.requestTimeout(
|
|
666
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
669
667
|
let response;
|
|
670
668
|
if (timeout > 0 && typeof AbortController !== "undefined") {
|
|
671
669
|
let controller = new AbortController();
|
|
672
670
|
let timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
673
671
|
try {
|
|
674
|
-
response = yield this.api.findServers(
|
|
672
|
+
response = yield this.api.findServers(request, { signal: controller.signal });
|
|
675
673
|
}
|
|
676
674
|
catch (error) {
|
|
677
675
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -682,7 +680,7 @@ class UaWebClient {
|
|
|
682
680
|
}
|
|
683
681
|
else {
|
|
684
682
|
try {
|
|
685
|
-
response = yield this.api.findServers(
|
|
683
|
+
response = yield this.api.findServers(request);
|
|
686
684
|
}
|
|
687
685
|
catch (error) {
|
|
688
686
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -699,18 +697,18 @@ class UaWebClient {
|
|
|
699
697
|
return __awaiter(this, void 0, void 0, function* () {
|
|
700
698
|
var _a, _b;
|
|
701
699
|
let request = (0, opcua_webapi_1.GetEndpointsRequestFromJSON)({
|
|
702
|
-
RequestHeader: this.requestHeader(
|
|
700
|
+
RequestHeader: this.requestHeader(additionalParameters),
|
|
703
701
|
EndpointUrl: endpointUrl,
|
|
704
702
|
LocaleIds: localeIds,
|
|
705
703
|
ProfileUris: profileUris
|
|
706
704
|
});
|
|
707
|
-
let timeout = this.requestTimeout(
|
|
705
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
708
706
|
let response;
|
|
709
707
|
if (timeout > 0 && typeof AbortController !== "undefined") {
|
|
710
708
|
let controller = new AbortController();
|
|
711
709
|
let timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
712
710
|
try {
|
|
713
|
-
response = yield this.api.getEndpoints(
|
|
711
|
+
response = yield this.api.getEndpoints(request, { signal: controller.signal });
|
|
714
712
|
}
|
|
715
713
|
catch (error) {
|
|
716
714
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -721,7 +719,7 @@ class UaWebClient {
|
|
|
721
719
|
}
|
|
722
720
|
else {
|
|
723
721
|
try {
|
|
724
|
-
response = yield this.api.getEndpoints(
|
|
722
|
+
response = yield this.api.getEndpoints(request);
|
|
725
723
|
}
|
|
726
724
|
catch (error) {
|
|
727
725
|
throw new common_1.UaError((0, common_1.makeUaStatusCode)(opcua_webapi_1.StatusCodes.BadCommunicationError));
|
|
@@ -734,13 +732,12 @@ class UaWebClient {
|
|
|
734
732
|
return response.Endpoints;
|
|
735
733
|
});
|
|
736
734
|
}
|
|
737
|
-
requestHeader(
|
|
738
|
-
let timeout = this.requestTimeout(
|
|
735
|
+
requestHeader(additionalParameters) {
|
|
736
|
+
let timeout = this.requestTimeout(additionalParameters);
|
|
739
737
|
let ret = {
|
|
740
738
|
RequestHandle: this.requestHandle,
|
|
741
739
|
TimeoutHint: timeout,
|
|
742
740
|
Timestamp: new Date(),
|
|
743
|
-
AuthenticationToken: this.authenticationToken,
|
|
744
741
|
ReturnDiagnostics: (additionalParameters) ? additionalParameters.returnDiagnostics : undefined,
|
|
745
742
|
AuditEntryId: (additionalParameters) ? additionalParameters.auditEntryId : undefined,
|
|
746
743
|
};
|
|
@@ -749,11 +746,14 @@ class UaWebClient {
|
|
|
749
746
|
this.requestHandle = 1;
|
|
750
747
|
return ret;
|
|
751
748
|
}
|
|
752
|
-
requestTimeout(
|
|
753
|
-
let timeout = clientConfig.defaultTimeout;
|
|
749
|
+
requestTimeout(additionalParameters) {
|
|
750
|
+
let timeout = this.clientConfig.defaultTimeout;
|
|
754
751
|
if (additionalParameters && additionalParameters.timeout > 1000)
|
|
755
752
|
timeout = additionalParameters.timeout;
|
|
756
753
|
return timeout;
|
|
757
754
|
}
|
|
755
|
+
createApi() {
|
|
756
|
+
return new __1.UaWebClientNative(this.clientConfig.apiConfig);
|
|
757
|
+
}
|
|
758
758
|
}
|
|
759
759
|
exports.UaWebClient = UaWebClient;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { BrowseNextRequest, BrowseNextResponse, BrowseRequest, BrowseResponse, CallRequest, CallResponse, FindServersRequest, FindServersResponse, GetEndpointsRequest, GetEndpointsResponse, HistoryReadRequest, HistoryReadResponse, ReadRequest, ReadResponse, WriteRequest, WriteResponse } from "opcua-webapi";
|
|
2
|
+
export interface UaWebClientApi {
|
|
3
|
+
browse(request: BrowseRequest, initOverrides?: RequestInit): Promise<BrowseResponse>;
|
|
4
|
+
browseNext(request: BrowseNextRequest, initOverrides?: RequestInit): Promise<BrowseNextResponse>;
|
|
5
|
+
call(request: CallRequest, initOverrides?: RequestInit): Promise<CallResponse>;
|
|
6
|
+
findServers(request: FindServersRequest, initOverrides?: RequestInit): Promise<FindServersResponse>;
|
|
7
|
+
getEndpoints(request: GetEndpointsRequest, initOverrides?: RequestInit): Promise<GetEndpointsResponse>;
|
|
8
|
+
historyRead(request: HistoryReadRequest, initOverrides?: RequestInit): Promise<HistoryReadResponse>;
|
|
9
|
+
read(request: ReadRequest, initOverrides?: RequestInit): Promise<ReadResponse>;
|
|
10
|
+
write(request: WriteRequest, initOverrides?: RequestInit): Promise<WriteResponse>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Configuration } from "opcua-webapi";
|
|
2
|
+
import { UaWebClientApi } from "./UaWebClientApi";
|
|
3
|
+
import { BrowseNextRequest, BrowseNextResponse, BrowseRequest, BrowseResponse, CallRequest, CallResponse, FindServersRequest, FindServersResponse, GetEndpointsRequest, GetEndpointsResponse, HistoryReadRequest, HistoryReadResponse, ReadRequest, ReadResponse, WriteRequest, WriteResponse } from "opcua-webapi";
|
|
4
|
+
export declare class UaWebClientNative implements UaWebClientApi {
|
|
5
|
+
private api;
|
|
6
|
+
constructor(configure: Configuration);
|
|
7
|
+
browse(request: BrowseRequest, initOverrides?: RequestInit): Promise<BrowseResponse>;
|
|
8
|
+
browseNext(request: BrowseNextRequest, initOverrides?: RequestInit): Promise<BrowseNextResponse>;
|
|
9
|
+
call(request: CallRequest, initOverrides?: RequestInit): Promise<CallResponse>;
|
|
10
|
+
findServers(request: FindServersRequest, initOverrides?: RequestInit): Promise<FindServersResponse>;
|
|
11
|
+
getEndpoints(request: GetEndpointsRequest, initOverrides?: RequestInit): Promise<GetEndpointsResponse>;
|
|
12
|
+
historyRead(request: HistoryReadRequest, initOverrides?: RequestInit): Promise<HistoryReadResponse>;
|
|
13
|
+
read(request: ReadRequest, initOverrides?: RequestInit): Promise<ReadResponse>;
|
|
14
|
+
write(request: WriteRequest, initOverrides?: RequestInit): Promise<WriteResponse>;
|
|
15
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UaWebClientNative = void 0;
|
|
4
|
+
const opcua_webapi_1 = require("opcua-webapi");
|
|
5
|
+
class UaWebClientNative {
|
|
6
|
+
constructor(configure) {
|
|
7
|
+
this.api = new opcua_webapi_1.DefaultApi(configure);
|
|
8
|
+
}
|
|
9
|
+
browse(request, initOverrides) {
|
|
10
|
+
return this.api.browse({ browseRequest: request }, initOverrides);
|
|
11
|
+
}
|
|
12
|
+
browseNext(request, initOverrides) {
|
|
13
|
+
return this.api.browseNext({ browseNextRequest: request }, initOverrides);
|
|
14
|
+
}
|
|
15
|
+
call(request, initOverrides) {
|
|
16
|
+
return this.api.call({ callRequest: request }, initOverrides);
|
|
17
|
+
}
|
|
18
|
+
findServers(request, initOverrides) {
|
|
19
|
+
return this.api.findServers({ findServersRequest: request }, initOverrides);
|
|
20
|
+
}
|
|
21
|
+
getEndpoints(request, initOverrides) {
|
|
22
|
+
return this.api.getEndpoints({ getEndpointsRequest: request }, initOverrides);
|
|
23
|
+
}
|
|
24
|
+
historyRead(request, initOverrides) {
|
|
25
|
+
return this.api.historyRead({ historyReadRequest: request }, initOverrides);
|
|
26
|
+
}
|
|
27
|
+
read(request, initOverrides) {
|
|
28
|
+
return this.api.read({ readRequest: request }, initOverrides);
|
|
29
|
+
}
|
|
30
|
+
write(request, initOverrides) {
|
|
31
|
+
return this.api.write({ writeRequest: request }, initOverrides);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.UaWebClientNative = UaWebClientNative;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./UaWebClientApi"), exports);
|
|
18
|
+
__exportStar(require("./UaWebClientNative"), exports);
|
package/dist/client/index.d.ts
CHANGED
package/dist/client/index.js
CHANGED
|
@@ -56,7 +56,7 @@ class UaNodeReaderBase {
|
|
|
56
56
|
for (let item of currentResult.references) {
|
|
57
57
|
let nodeId = item.nodeId.getNodeId();
|
|
58
58
|
let typeDefinition = (_a = item.typeDefinition) === null || _a === void 0 ? void 0 : _a.getNodeId();
|
|
59
|
-
if (null == nodeId || null
|
|
59
|
+
if (null == nodeId || null === typeDefinition)
|
|
60
60
|
continue;
|
|
61
61
|
this._browseResults.push({
|
|
62
62
|
fromNodeId: currentNode.nodeId,
|
|
@@ -575,7 +575,7 @@ class UaNodeLinkReader {
|
|
|
575
575
|
};
|
|
576
576
|
ret.set(item.fromNodeId.toString(), result);
|
|
577
577
|
}
|
|
578
|
-
result.links.push(new common_1.UaLink(item.nodeId, item.nodeClass, item.referenceTypeId, item.isForward));
|
|
578
|
+
result.links.push(new common_1.UaLink(item.nodeId, item.nodeClass, item.browseName, item.displayName, item.referenceTypeId, item.isForward));
|
|
579
579
|
}
|
|
580
580
|
return [...ret.values()];
|
|
581
581
|
}
|
|
@@ -587,7 +587,7 @@ class UaNodeLinkReader {
|
|
|
587
587
|
let nodesToBrowse = this._nodesToBrowse.splice(0, 50);
|
|
588
588
|
let browseDescriptions = [];
|
|
589
589
|
for (let item of nodesToBrowse) {
|
|
590
|
-
let browseDescription = new common_1.UaBrowseDescription(item, opcua_webapi_1.BrowseDirection.Both, common_1.UaNodeId.from(common_1.ReferenceTypeIds.NonHierarchicalReferences), true, opcua_webapi_1.NodeClass.Object
|
|
590
|
+
let browseDescription = new common_1.UaBrowseDescription(item, opcua_webapi_1.BrowseDirection.Both, common_1.UaNodeId.from(common_1.ReferenceTypeIds.NonHierarchicalReferences), true, opcua_webapi_1.NodeClass.Object, 63);
|
|
591
591
|
browseDescriptions.push(browseDescription);
|
|
592
592
|
}
|
|
593
593
|
let results = yield client.browse(browseDescriptions, 50);
|
|
@@ -599,15 +599,15 @@ class UaNodeLinkReader {
|
|
|
599
599
|
for (let item of currentResult.references) {
|
|
600
600
|
let nodeId = item.nodeId.getNodeId();
|
|
601
601
|
let typeDefinition = (_a = item.typeDefinition) === null || _a === void 0 ? void 0 : _a.getNodeId();
|
|
602
|
-
if (null == nodeId || null
|
|
602
|
+
if (null == nodeId || null === typeDefinition)
|
|
603
603
|
continue;
|
|
604
604
|
this._browseResults.push({
|
|
605
605
|
fromNodeId: currentNodeId,
|
|
606
606
|
nodeId: nodeId,
|
|
607
|
-
nodeClass: item.nodeClass,
|
|
608
|
-
browseName: item.browseName,
|
|
609
|
-
displayName: item.displayName,
|
|
610
|
-
referenceTypeId: item.referenceTypeId,
|
|
607
|
+
nodeClass: (item.nodeClass) ? item.nodeClass : opcua_webapi_1.NodeClass.Unspecified,
|
|
608
|
+
browseName: (item.browseName) ? item.browseName : "",
|
|
609
|
+
displayName: (item.displayName) ? item.displayName : common_1.UaLocalizedText.nullText,
|
|
610
|
+
referenceTypeId: (item.referenceTypeId) ? item.referenceTypeId : common_1.UaNodeId.nullNodeId,
|
|
611
611
|
isForward: item.isForward,
|
|
612
612
|
typeDefinitionId: typeDefinition
|
|
613
613
|
});
|
|
@@ -638,15 +638,15 @@ class UaNodeLinkReader {
|
|
|
638
638
|
for (let item of currentResult.references) {
|
|
639
639
|
let nodeId = item.nodeId.getNodeId();
|
|
640
640
|
let typeDefinition = (_a = item.typeDefinition) === null || _a === void 0 ? void 0 : _a.getNodeId();
|
|
641
|
-
if (null == nodeId || null
|
|
641
|
+
if (null == nodeId || null === typeDefinition)
|
|
642
642
|
continue;
|
|
643
643
|
this._browseResults.push({
|
|
644
644
|
fromNodeId: currentNodeId,
|
|
645
645
|
nodeId: nodeId,
|
|
646
|
-
nodeClass: item.nodeClass,
|
|
647
|
-
browseName: item.browseName,
|
|
648
|
-
displayName: item.displayName,
|
|
649
|
-
referenceTypeId: item.referenceTypeId,
|
|
646
|
+
nodeClass: (item.nodeClass) ? item.nodeClass : opcua_webapi_1.NodeClass.Unspecified,
|
|
647
|
+
browseName: (item.browseName) ? item.browseName : "",
|
|
648
|
+
displayName: (item.displayName) ? item.displayName : common_1.UaLocalizedText.nullText,
|
|
649
|
+
referenceTypeId: (item.referenceTypeId) ? item.referenceTypeId : common_1.UaNodeId.nullNodeId,
|
|
650
650
|
isForward: item.isForward,
|
|
651
651
|
typeDefinitionId: typeDefinition
|
|
652
652
|
});
|
|
@@ -38,7 +38,7 @@ class UaObjectTypeDictionary {
|
|
|
38
38
|
let nodeIds = this._remainingNodesToBrowse.splice(0, 15);
|
|
39
39
|
let nodesToBrowse = [];
|
|
40
40
|
for (let item of nodeIds) {
|
|
41
|
-
let browseDescription = new common_1.UaBrowseDescription(item, opcua_webapi_1.BrowseDirection.Forward, new common_1.UaNodeId(common_1.ReferenceTypeIds.HasSubtype), false, opcua_webapi_1.NodeClass.ObjectType,
|
|
41
|
+
let browseDescription = new common_1.UaBrowseDescription(item, opcua_webapi_1.BrowseDirection.Forward, new common_1.UaNodeId(common_1.ReferenceTypeIds.HasSubtype), false, opcua_webapi_1.NodeClass.ObjectType, 63);
|
|
42
42
|
nodesToBrowse.push(browseDescription);
|
|
43
43
|
}
|
|
44
44
|
let results = yield client.browse(nodesToBrowse);
|
|
@@ -1,11 +1,16 @@
|
|
|
1
|
+
import { UaLocalizedText } from "./UaLocalizedText";
|
|
1
2
|
import { UaNodeId } from "./UaNodeId";
|
|
2
3
|
export declare class UaLink {
|
|
3
4
|
private _targetId;
|
|
4
5
|
private _nodeClass;
|
|
6
|
+
private _browseName;
|
|
7
|
+
private _displayName;
|
|
5
8
|
private _referenceTypeId;
|
|
6
9
|
private _isForward;
|
|
7
|
-
constructor(targetId: UaNodeId, nodeClass: number, referenceTypeId: UaNodeId, isForward: boolean);
|
|
10
|
+
constructor(targetId: UaNodeId, nodeClass: number, browseName: string, displayName: UaLocalizedText, referenceTypeId: UaNodeId, isForward: boolean);
|
|
8
11
|
get targetId(): UaNodeId;
|
|
12
|
+
get browseName(): string;
|
|
13
|
+
get displayName(): UaLocalizedText;
|
|
9
14
|
get nodeClass(): number;
|
|
10
15
|
get referenceTypeId(): UaNodeId;
|
|
11
16
|
get isForward(): boolean;
|
|
@@ -2,8 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.UaLink = void 0;
|
|
4
4
|
class UaLink {
|
|
5
|
-
constructor(targetId, nodeClass, referenceTypeId, isForward) {
|
|
5
|
+
constructor(targetId, nodeClass, browseName, displayName, referenceTypeId, isForward) {
|
|
6
6
|
this._targetId = targetId;
|
|
7
|
+
this._browseName = browseName;
|
|
8
|
+
this._displayName = displayName;
|
|
7
9
|
this._nodeClass = nodeClass;
|
|
8
10
|
this._referenceTypeId = referenceTypeId;
|
|
9
11
|
this._isForward = isForward;
|
|
@@ -11,6 +13,12 @@ class UaLink {
|
|
|
11
13
|
get targetId() {
|
|
12
14
|
return this._targetId;
|
|
13
15
|
}
|
|
16
|
+
get browseName() {
|
|
17
|
+
return this._browseName;
|
|
18
|
+
}
|
|
19
|
+
get displayName() {
|
|
20
|
+
return this._displayName;
|
|
21
|
+
}
|
|
14
22
|
get nodeClass() {
|
|
15
23
|
return this._nodeClass;
|
|
16
24
|
}
|