ads-client 2.0.0-beta.4 → 2.0.0-beta.6

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.
@@ -613,6 +613,19 @@ export declare const ADS_RCP_METHOD_PARAM_FLAGS: {
613
613
  /** Return given flag value as string array */
614
614
  toStringArray: (flags: number) => string[];
615
615
  };
616
+ /**
617
+ * ADS symbol upload info flags
618
+ *
619
+ * Source: TwinCAT.Ads.dll By Beckhoff
620
+ */
621
+ export declare const ADS_UPLOAD_INFO_FLAGS: {
622
+ None: number;
623
+ Is64BitPlatform: number;
624
+ IncludesBaseTypes: number;
625
+ Utf8EncodedStringData: number;
626
+ /** Return given flag value as string array */
627
+ toStringArray: (flags: number) => string[];
628
+ };
616
629
  /**
617
630
  * AMS router state
618
631
  */
@@ -672,7 +685,7 @@ export declare const BASE_DATA_TYPES: {
672
685
  adsDataType: number;
673
686
  size: number;
674
687
  toBuffer: (value: number | BigInt | Buffer, buffer: Buffer) => void;
675
- fromBuffer: (buffer: Buffer) => bigint | Buffer;
688
+ fromBuffer: (buffer: Buffer) => bigint | Buffer<ArrayBufferLike>;
676
689
  } | null;
677
690
  /**
678
691
  * Writes given value to given or new buffer
@@ -681,14 +694,14 @@ export declare const BASE_DATA_TYPES: {
681
694
  * @param value Value to write
682
695
  * @param buffer Optional - Buffer to write to. If not given, new Buffer is allocated
683
696
  */
684
- toBuffer: (name: string, value: PlcPrimitiveType | Date, buffer?: Buffer) => Buffer;
697
+ toBuffer: (name: string, value: PlcPrimitiveType | Date, buffer?: Buffer) => Buffer<ArrayBufferLike>;
685
698
  /**
686
699
  * Reads given data type from given buffer
687
700
  *
688
701
  * @param {string} name Data type name
689
702
  * @param {Buffer} buffer Buffer to read from
690
703
  */
691
- fromBuffer: (name: string, buffer: Buffer, convertDates: boolean) => string | number | bigint | boolean | Buffer | Date;
704
+ fromBuffer: (name: string, buffer: Buffer, convertDates: boolean) => string | number | bigint | boolean | Buffer<ArrayBufferLike> | Date;
692
705
  /**
693
706
  * All base data types and properties
694
707
  */
@@ -721,7 +734,7 @@ export declare const BASE_DATA_TYPES: {
721
734
  adsDataType: number;
722
735
  size: number;
723
736
  toBuffer: (value: number | BigInt | Buffer, buffer: Buffer) => void;
724
- fromBuffer: (buffer: Buffer) => bigint | Buffer;
737
+ fromBuffer: (buffer: Buffer) => bigint | Buffer<ArrayBufferLike>;
725
738
  })[];
726
739
  /**
727
740
  * Returns true if given data type is found and known
@@ -777,18 +790,21 @@ export declare const amsNetIdStrToByteArray: (str: string) => number[];
777
790
  */
778
791
  export declare const trimPlcString: (str: string) => string;
779
792
  /**
780
- * Decodes provided Buffer object to plc STRING using cp1252 encoding.
793
+ * Decodes provided Buffer object to plc STRING using cp1252 encoding or UTF-8.
781
794
  * Also removes empty bytes from the end.
795
+ *
782
796
  * @param data Buffer data that contains plc STRING
797
+ * @param UTF8 If true, the value is handled as UTF-8, otherwise as cp1252.
783
798
  * @returns
784
799
  */
785
- export declare const decodePlcStringBuffer: (data: Buffer) => string;
800
+ export declare const decodePlcStringBuffer: (data: Buffer, UTF8?: boolean) => string;
786
801
  /**
787
802
  * Encodes provided string to a Buffer object as plc STRING using cp1252 encoding
788
803
  * @param str String to encode
804
+ * @param UTF8 If true, the value is encoded as UTF-8, otherwise as cp1252.
789
805
  * @returns
790
806
  */
791
- export declare const encodeStringToPlcStringBuffer: (str: string) => Buffer;
807
+ export declare const encodeStringToPlcStringBuffer: (str: string, UTF8?: boolean) => Buffer<ArrayBufferLike>;
792
808
  /**
793
809
  * Decodes provided Buffer object to plc WSTRING using ucs2 encoding.
794
810
  * Also removes empty bytes from the end.
@@ -801,7 +817,7 @@ export declare const decodePlcWstringBuffer: (data: Buffer) => string;
801
817
  * @param str String to encode
802
818
  * @returns
803
819
  */
804
- export declare const encodeStringToPlcWstringBuffer: (str: string) => Buffer;
820
+ export declare const encodeStringToPlcWstringBuffer: (str: string) => Buffer<ArrayBufferLike>;
805
821
  /**
806
822
  * Converts given AmsAddress as string of type `amsNetId:port`
807
823
  * @param address
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.amsAddressToString = exports.encodeStringToPlcWstringBuffer = exports.decodePlcWstringBuffer = exports.encodeStringToPlcStringBuffer = exports.decodePlcStringBuffer = exports.trimPlcString = exports.amsNetIdStrToByteArray = exports.byteArrayToAmsNetIdStr = exports.BASE_DATA_TYPES = exports.AMS_ROUTER_STATE = exports.ADS_RCP_METHOD_PARAM_FLAGS = exports.ADS_RCP_METHOD_FLAGS = exports.ADS_DATA_TYPES = exports.ADS_DATA_TYPE_FLAGS = exports.ADS_SYMBOL_FLAGS_2 = exports.ADS_SYMBOL_FLAGS = exports.ADS_RESERVED_INDEX_GROUPS = exports.ADS_STATE = exports.ADS_TRANS_MODE = exports.ADS_ERROR = exports.ADS_STATE_FLAGS = exports.ADS_COMMAND = exports.ADS_RESERVED_PORTS = exports.AMS_HEADER_FLAG = exports.LOOPBACK_AMS_NET_ID = exports.ADS_DEFAULT_TCP_PORT = exports.ADS_INVOKE_ID_MAX_VALUE = exports.ADS_INDEX_GROUP_LENGTH = exports.ADS_INDEX_OFFSET_LENGTH = exports.AMS_NET_ID_LENGTH = exports.AMS_HEADER_LENGTH = exports.AMS_TCP_HEADER_LENGTH = void 0;
6
+ exports.amsAddressToString = exports.encodeStringToPlcWstringBuffer = exports.decodePlcWstringBuffer = exports.encodeStringToPlcStringBuffer = exports.decodePlcStringBuffer = exports.trimPlcString = exports.amsNetIdStrToByteArray = exports.byteArrayToAmsNetIdStr = exports.BASE_DATA_TYPES = exports.AMS_ROUTER_STATE = exports.ADS_UPLOAD_INFO_FLAGS = exports.ADS_RCP_METHOD_PARAM_FLAGS = exports.ADS_RCP_METHOD_FLAGS = exports.ADS_DATA_TYPES = exports.ADS_DATA_TYPE_FLAGS = exports.ADS_SYMBOL_FLAGS_2 = exports.ADS_SYMBOL_FLAGS = exports.ADS_RESERVED_INDEX_GROUPS = exports.ADS_STATE = exports.ADS_TRANS_MODE = exports.ADS_ERROR = exports.ADS_STATE_FLAGS = exports.ADS_COMMAND = exports.ADS_RESERVED_PORTS = exports.AMS_HEADER_FLAG = exports.LOOPBACK_AMS_NET_ID = exports.ADS_DEFAULT_TCP_PORT = exports.ADS_INVOKE_ID_MAX_VALUE = exports.ADS_INDEX_GROUP_LENGTH = exports.ADS_INDEX_OFFSET_LENGTH = exports.AMS_NET_ID_LENGTH = exports.AMS_HEADER_LENGTH = exports.AMS_TCP_HEADER_LENGTH = void 0;
7
7
  /*
8
8
  Copyright (c) Jussi Isotalo <j.isotalo91@gmail.com>
9
9
 
@@ -622,8 +622,9 @@ exports.ADS_SYMBOL_FLAGS = {
622
622
  continue;
623
623
  //Check if flag is available
624
624
  if ((flags & this[typedKey]) === this[typedKey]) {
625
- if (flags === 0 || this[typedKey] !== 0)
625
+ if (flags === 0 || this[typedKey] !== 0) {
626
626
  flagsArr.push(key);
627
+ }
627
628
  }
628
629
  }
629
630
  return flagsArr;
@@ -660,8 +661,9 @@ exports.ADS_SYMBOL_FLAGS_2 = {
660
661
  continue;
661
662
  //Check if flag is available
662
663
  if ((flags & this[typedKey]) === this[typedKey]) {
663
- if (flags === 0 || this[typedKey] !== 0)
664
+ if (flags === 0 || this[typedKey] !== 0) {
664
665
  flagsArr.push(key);
666
+ }
665
667
  }
666
668
  }
667
669
  return flagsArr;
@@ -746,8 +748,9 @@ exports.ADS_DATA_TYPE_FLAGS = {
746
748
  continue;
747
749
  //Check if flag is available
748
750
  if ((flags & this[typedKey]) === this[typedKey]) {
749
- if (flags === 0 || this[typedKey] !== 0)
751
+ if (flags === 0 || this[typedKey] !== 0) {
750
752
  flagsArr.push(key);
753
+ }
751
754
  }
752
755
  }
753
756
  return flagsArr;
@@ -822,8 +825,9 @@ exports.ADS_RCP_METHOD_FLAGS = {
822
825
  continue;
823
826
  //Check if flag is available
824
827
  if ((flags & this[typedKey]) === this[typedKey]) {
825
- if (flags === 0 || this[typedKey] !== 0)
828
+ if (flags === 0 || this[typedKey] !== 0) {
826
829
  flagsArr.push(key);
830
+ }
827
831
  }
828
832
  }
829
833
  return flagsArr;
@@ -859,8 +863,40 @@ exports.ADS_RCP_METHOD_PARAM_FLAGS = {
859
863
  continue;
860
864
  //Check if flag is available
861
865
  if ((flags & this[typedKey]) === this[typedKey]) {
862
- if (flags === 0 || this[typedKey] !== 0)
866
+ if (flags === 0 || this[typedKey] !== 0) {
863
867
  flagsArr.push(key);
868
+ }
869
+ }
870
+ }
871
+ return flagsArr;
872
+ }
873
+ };
874
+ /**
875
+ * ADS symbol upload info flags
876
+ *
877
+ * Source: TwinCAT.Ads.dll By Beckhoff
878
+ */
879
+ exports.ADS_UPLOAD_INFO_FLAGS = {
880
+ //None / Unititialized
881
+ None: 0,
882
+ //Target is 64 Bit Platform
883
+ Is64BitPlatform: 1,
884
+ //Symbol Server includes Base types.
885
+ IncludesBaseTypes: 2,
886
+ //String data is encoded in UTF-8 (All PLC STRING data is encoded in UTF8. This flag is used from TwinCAT 4026 on.)
887
+ Utf8EncodedStringData: 4,
888
+ /** Return given flag value as string array */
889
+ toStringArray: function (flags) {
890
+ const flagsArr = [];
891
+ for (const key of Object.keys(this)) {
892
+ const typedKey = key;
893
+ if (typeof this[typedKey] !== 'number')
894
+ continue;
895
+ //Check if flag is available
896
+ if ((flags & this[typedKey]) === this[typedKey]) {
897
+ if (flags === 0 || this[typedKey] !== 0) {
898
+ flagsArr.push(key);
899
+ }
864
900
  }
865
901
  }
866
902
  return flagsArr;
@@ -1208,19 +1244,22 @@ exports.amsNetIdStrToByteArray = amsNetIdStrToByteArray;
1208
1244
  const trimPlcString = (str) => str.substring(0, str.indexOf("\0"));
1209
1245
  exports.trimPlcString = trimPlcString;
1210
1246
  /**
1211
- * Decodes provided Buffer object to plc STRING using cp1252 encoding.
1247
+ * Decodes provided Buffer object to plc STRING using cp1252 encoding or UTF-8.
1212
1248
  * Also removes empty bytes from the end.
1249
+ *
1213
1250
  * @param data Buffer data that contains plc STRING
1251
+ * @param UTF8 If true, the value is handled as UTF-8, otherwise as cp1252.
1214
1252
  * @returns
1215
1253
  */
1216
- const decodePlcStringBuffer = (data) => (0, exports.trimPlcString)(iconv_lite_1.default.decode(data, "cp1252"));
1254
+ const decodePlcStringBuffer = (data, UTF8 = false) => (0, exports.trimPlcString)(UTF8 ? iconv_lite_1.default.decode(data, "utf8") : iconv_lite_1.default.decode(data, "cp1252"));
1217
1255
  exports.decodePlcStringBuffer = decodePlcStringBuffer;
1218
1256
  /**
1219
1257
  * Encodes provided string to a Buffer object as plc STRING using cp1252 encoding
1220
1258
  * @param str String to encode
1259
+ * @param UTF8 If true, the value is encoded as UTF-8, otherwise as cp1252.
1221
1260
  * @returns
1222
1261
  */
1223
- const encodeStringToPlcStringBuffer = (str) => iconv_lite_1.default.encode(str, "cp1252");
1262
+ const encodeStringToPlcStringBuffer = (str, UTF8 = false) => UTF8 ? iconv_lite_1.default.encode(str, "utf8") : iconv_lite_1.default.encode(str, "cp1252");
1224
1263
  exports.encodeStringToPlcStringBuffer = encodeStringToPlcStringBuffer;
1225
1264
  /**
1226
1265
  * Decodes provided Buffer object to plc WSTRING using ucs2 encoding.
@@ -1 +1 @@
1
- {"version":3,"file":"ads-commons.js","sourceRoot":"","sources":["../src/ads-commons.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ads-commons.js","sourceRoot":"","sources":["../src/ads-commons.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import ClientError from "../client-error";
2
- import { AdsDataType, AdsDeviceInfo, AdsRawAddress, AdsResponse, AdsState, AdsSymbol, AmsAddress, AmsRouterState, AmsTcpPacket, BaseAdsResponse } from "./ads-protocol-types";
2
+ import { AdsDataType, AdsDeviceInfo, AdsRawAddress, AdsResponse, AdsState, AdsSymbol, AdsUploadInfo, AmsAddress, AmsRouterState, AmsTcpPacket, BaseAdsResponse } from "./ads-protocol-types";
3
3
  /**
4
4
  * Possible debug levels
5
5
  *
@@ -400,6 +400,14 @@ export interface AdsClientSettings {
400
400
  * A warning will be emitted when an unknown subscription is deleted.
401
401
  */
402
402
  deleteUnknownSubscriptions?: boolean;
403
+ /**
404
+ * **Optional**: If set, the client **always** uses UTF-8 for encoding/decoding ADS symbols (default: `false`).
405
+ *
406
+ * Otherwise, the client detects target system encoding automatically. TwinCAT 4026 and newer always use UTF-8.
407
+ *
408
+ * When connecting to a non-PLC system with UTF-8 encoded ADS symbols, this setting needs to be set.
409
+ */
410
+ forceUtf8ForAdsSymbols?: boolean;
403
411
  }
404
412
  /**
405
413
  * Internal timer object to keep the timer state saved
@@ -531,27 +539,8 @@ export interface ConnectionMetaData {
531
539
  allPlcDataTypesCached: boolean;
532
540
  /** Cached target PLC runtime data types without subitems (if available) */
533
541
  plcDataTypes: AdsDataTypeContainer;
534
- }
535
- /**
536
- * PLC runtime upload info
537
- *
538
- * Contains information about symbols and data types
539
- *
540
- * @category Types
541
- */
542
- export interface AdsUploadInfo {
543
- /** Number of symbols in the target runtime */
544
- symbolCount: number;
545
- /** Length of downloadable symbol description data (bytes) */
546
- symbolLength: number;
547
- /** Number of datatypes in the target runtime */
548
- dataTypeCount: number;
549
- /** Length of downloadable data type description data (bytes) */
550
- dataTypeLength: number;
551
- /** Unknown */
552
- extraCount: number;
553
- /** Unknown */
554
- extraLength: number;
542
+ /** Set to `true` if target ADS symbols/datatypes are UTF-8 encoded (always in TwinCAT 4026->) */
543
+ adsSymbolsUseUtf8: boolean;
555
544
  }
556
545
  /**
557
546
  * Object containing PLC runtime symbol information objects
@@ -584,6 +573,17 @@ export interface AdsCommandToSend {
584
573
  /** Payload data */
585
574
  payload?: Buffer;
586
575
  }
576
+ /**
577
+ * Return value of `sendAdsCommandWithFallback()`
578
+ *
579
+ * @category Types
580
+ */
581
+ export interface SendAdsCommandWithFallbackResult<T> {
582
+ /** True if fallback command was used (main command failed) */
583
+ fallbackUsed: boolean;
584
+ /** The response */
585
+ response: AmsTcpPacket<T>;
586
+ }
587
587
  /**
588
588
  * Represents a callback function used in a subscription.
589
589
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ads-client-types.js","sourceRoot":"","sources":["../../src/types/ads-client-types.ts"],"names":[],"mappings":";;AAoiBC,CAAC;AA4BD,CAAC"}
1
+ {"version":3,"file":"ads-client-types.js","sourceRoot":"","sources":["../../src/types/ads-client-types.ts"],"names":[],"mappings":";;AA6iBC,CAAC;AA8BD,CAAC"}
@@ -353,11 +353,11 @@ export interface AdsSymbol {
353
353
  /** Symbol comment (variable comment in the PLC code) */
354
354
  comment: string;
355
355
  /** If symbol is an array, information of each array dimension */
356
- arrayInfo: Array<AdsArrayInfoEntry>;
356
+ arrayInfo: AdsArrayInfoEntry[];
357
357
  /** GUID of the symbol */
358
358
  typeGuid: string;
359
359
  /** Symbol attributes, such as pragmas */
360
- attributes: Array<AdsAttributeEntry>;
360
+ attributes: AdsAttributeEntry[];
361
361
  extendedFlags: number;
362
362
  /** Rest bytes in the end of data that have no meaning yet */
363
363
  reserved: Buffer;
@@ -531,4 +531,41 @@ export interface AdsEnumInfoEntry {
531
531
  name: string;
532
532
  /** Enumeration value */
533
533
  value: PlcPrimitiveType;
534
+ /** Comment (only available in TC 4026 and newer) */
535
+ comment?: string;
536
+ /** Attributes (only available in TC 4026 and newer) */
537
+ attributes?: AdsAttributeEntry[];
538
+ }
539
+ /**
540
+ * PLC runtime upload info
541
+ *
542
+ * Contains information about symbols, data types and target system.
543
+ *
544
+ * @category Types
545
+ */
546
+ export interface AdsUploadInfo {
547
+ /** Upload info version - depends on target TwinCAT version (1 = 8 bytes, 2 = 24 bytes, 3 = 64 bytes of data) */
548
+ version: 1 | 2 | 3;
549
+ /** Number of symbols in the target runtime (version >= 1) */
550
+ symbolCount: number;
551
+ /** Length of downloadable symbol description data (bytes) (version >= 1) */
552
+ symbolLength: number;
553
+ /** Number of datatypes in the target runtime (version >= 2) */
554
+ dataTypeCount?: number;
555
+ /** Length of downloadable data type description data (bytes) (version >= 2) */
556
+ dataTypeLength?: number;
557
+ /** Max. allowed dynamic symbol count (version >= 2) */
558
+ maxDynamicSymbolCount?: number;
559
+ /** Number of dynamic symbols used (version >= 2) */
560
+ dynamicSymbolCount?: number;
561
+ /** Invalid dynamic symbol count (version >= 3) */
562
+ invalidDynamicSymbolCount?: number;
563
+ /** Encoding code page used for STRING encoding (version >= 3) */
564
+ encodingCodePage?: number;
565
+ /** Upload info flags as bit-notation (see ADS.ADS_SYMBOL_FLAGS) (version >= 3) */
566
+ flags?: number;
567
+ /** Upload info flags as string array (see ADS.ADS_SYMBOL_FLAGS) (version >= 3) */
568
+ flagsStr?: (keyof typeof ADS.ADS_UPLOAD_INFO_FLAGS | string)[];
569
+ /** Reserved bytes (version >= 3) */
570
+ reserved?: Buffer;
534
571
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ads-client",
3
- "version": "2.0.0-beta.4",
3
+ "version": "2.0.0-beta.6",
4
4
  "description": "Beckhoff TwinCAT ADS client library for Node.js (unofficial). Connect to a Beckhoff TwinCAT automation system using the ADS protocol from a Node.js app.",
5
5
  "main": "./dist/ads-client.js",
6
6
  "scripts": {
@@ -37,18 +37,18 @@
37
37
  "url": "https://github.com/jisotalo/ads-client.git"
38
38
  },
39
39
  "dependencies": {
40
- "debug": "^4.3.5",
40
+ "debug": "^4.4.0",
41
41
  "iconv-lite": "^0.6.3",
42
42
  "long": "^5.2.3"
43
43
  },
44
44
  "devDependencies": {
45
45
  "@tsconfig/node16": "^16.1.3",
46
46
  "@types/debug": "^4.1.12",
47
- "@types/jest": "^29.5.12",
48
- "@types/node": "^20.14.12",
47
+ "@types/jest": "^29.5.14",
48
+ "@types/node": "^22.10.2",
49
49
  "jest": "^29.7.0",
50
- "typedoc": "^0.26.5",
51
- "typescript": "^5.5.4"
50
+ "typedoc": "^0.27.4",
51
+ "typescript": "^5.7.2"
52
52
  },
53
53
  "files": [
54
54
  "dist/",