antprotocol-websdk 1.0.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.
Files changed (57) hide show
  1. package/README.md +27 -0
  2. package/dist/common/config/ProtocolRuntimeConfig.d.ts +36 -0
  3. package/dist/common/config/ProtocolRuntimeConfig.d.ts.map +1 -0
  4. package/dist/common/config/SdkConfig.d.ts +136 -0
  5. package/dist/common/config/SdkConfig.d.ts.map +1 -0
  6. package/dist/common/config/index.d.ts +8 -0
  7. package/dist/common/config/index.d.ts.map +1 -0
  8. package/dist/common/model/ProtocolGlobalModel.d.ts +416 -0
  9. package/dist/common/model/ProtocolGlobalModel.d.ts.map +1 -0
  10. package/dist/common/utils/CalculateCRC16Modbus.d.ts +2 -0
  11. package/dist/common/utils/CalculateCRC16Modbus.d.ts.map +1 -0
  12. package/dist/common/utils/UuidUtil.d.ts +19 -0
  13. package/dist/common/utils/UuidUtil.d.ts.map +1 -0
  14. package/dist/common/utils/gbk-encoder/GbkEncoder.d.ts +107 -0
  15. package/dist/common/utils/gbk-encoder/GbkEncoder.d.ts.map +1 -0
  16. package/dist/common/utils/gbk-encoder/generate-dictionary.d.ts +29 -0
  17. package/dist/common/utils/gbk-encoder/generate-dictionary.d.ts.map +1 -0
  18. package/dist/common/utils/gbk-encoder/hanzi-dictionary.d.ts +35 -0
  19. package/dist/common/utils/gbk-encoder/hanzi-dictionary.d.ts.map +1 -0
  20. package/dist/common/utils/gbk-encoder/index.d.ts +8 -0
  21. package/dist/common/utils/gbk-encoder/index.d.ts.map +1 -0
  22. package/dist/common/utils/gbk-encoder/single-byte-dictionary.d.ts +35 -0
  23. package/dist/common/utils/gbk-encoder/single-byte-dictionary.d.ts.map +1 -0
  24. package/dist/common/utils/logPlugins.d.ts +9 -0
  25. package/dist/common/utils/logPlugins.d.ts.map +1 -0
  26. package/dist/common/utils/time.d.ts +29 -0
  27. package/dist/common/utils/time.d.ts.map +1 -0
  28. package/dist/custom_analyze/bms_0x11_1.0.0.d.ts +24 -0
  29. package/dist/custom_analyze/bms_0x11_1.0.0.d.ts.map +1 -0
  30. package/dist/custom_analyze/bms_0x13_1.0.0.d.ts +20 -0
  31. package/dist/custom_analyze/bms_0x13_1.0.0.d.ts.map +1 -0
  32. package/dist/custom_analyze/bms_0x14_1.0.0.d.ts +22 -0
  33. package/dist/custom_analyze/bms_0x14_1.0.0.d.ts.map +1 -0
  34. package/dist/custom_analyze/bms_0x61_1.0.0.d.ts +35 -0
  35. package/dist/custom_analyze/bms_0x61_1.0.0.d.ts.map +1 -0
  36. package/dist/custom_analyze/bms_0x63_1.0.0.d.ts +16 -0
  37. package/dist/custom_analyze/bms_0x63_1.0.0.d.ts.map +1 -0
  38. package/dist/custom_analyze/bms_0x80_1.0.0.d.ts +22 -0
  39. package/dist/custom_analyze/bms_0x80_1.0.0.d.ts.map +1 -0
  40. package/dist/custom_analyze/bms_common_1.0.0.d.ts +50 -0
  41. package/dist/custom_analyze/bms_common_1.0.0.d.ts.map +1 -0
  42. package/dist/index.d.ts +14 -0
  43. package/dist/index.d.ts.map +1 -0
  44. package/dist/index.js +11416 -0
  45. package/dist/protocol/BMSProtocol.d.ts +5 -0
  46. package/dist/protocol/BMSProtocol.d.ts.map +1 -0
  47. package/dist/protocol/ChargerProtocol.d.ts +5 -0
  48. package/dist/protocol/ChargerProtocol.d.ts.map +1 -0
  49. package/dist/protocol/DisplayerProtocol.d.ts +5 -0
  50. package/dist/protocol/DisplayerProtocol.d.ts.map +1 -0
  51. package/dist/protocol/PowerProtocol.d.ts +5 -0
  52. package/dist/protocol/PowerProtocol.d.ts.map +1 -0
  53. package/dist/protocol/common/ProtocolBasic.d.ts +320 -0
  54. package/dist/protocol/common/ProtocolBasic.d.ts.map +1 -0
  55. package/dist/protocol/common/ProtocolInterface.d.ts +91 -0
  56. package/dist/protocol/common/ProtocolInterface.d.ts.map +1 -0
  57. package/package.json +55 -0
package/README.md ADDED
@@ -0,0 +1,27 @@
1
+ # AntProtocol Web SDK
2
+
3
+ AntProtocol Web SDK is a TypeScript/JavaScript library for interacting with AntProtocol devices (BMS, Charger, Displayer, Power).
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install antprotocol-websdk
9
+ ```
10
+
11
+ ## Usage
12
+
13
+ ```typescript
14
+ import { BMSProtocol, SdkConfig } from 'antprotocol-websdk';
15
+
16
+ // Initialize configuration if needed (defaults to PROD)
17
+ // SdkConfig.switchEnvironment(Environment.DEV);
18
+
19
+ // Use the protocol
20
+ // ...
21
+ ```
22
+
23
+ ## Features
24
+
25
+ - Protocol parsing and command generation
26
+ - Multi-device support (BMS, Charger, etc.)
27
+ - TypeScript support
@@ -0,0 +1,36 @@
1
+ /**
2
+ * 协议运行时配置管理器
3
+ * 用于管理协议相关的动态配置
4
+ */
5
+ export declare class ProtocolRuntimeConfig {
6
+ /**
7
+ * 自定义通讯地址
8
+ */
9
+ private static customCommunicationAddress;
10
+ /**
11
+ * 配置变更监听器
12
+ */
13
+ private static listeners;
14
+ /**
15
+ * 设置自定义通讯地址
16
+ * @param communicationAddress 通讯地址(如 "01", "02" 等)
17
+ */
18
+ static setCustomCommunicationAddress(communicationAddress: string | undefined): void;
19
+ /**
20
+ * 获取自定义通讯地址
21
+ * @returns 自定义通讯地址,如果未设置则返回 undefined
22
+ */
23
+ static getCustomCommunicationAddress(): string | undefined;
24
+ /**
25
+ * 订阅配置变更事件
26
+ * @param listener 监听器回调函数
27
+ * @returns 取消订阅的函数
28
+ */
29
+ static onAddressChange(listener: (address: string | undefined) => void): () => void;
30
+ /**
31
+ * 通知所有监听器
32
+ * @param address 新的通讯地址
33
+ */
34
+ private static notifyListeners;
35
+ }
36
+ //# sourceMappingURL=ProtocolRuntimeConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProtocolRuntimeConfig.d.ts","sourceRoot":"","sources":["../../../websdk/common/config/ProtocolRuntimeConfig.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,qBAAqB;IAChC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,0BAA0B,CAAiC;IAE1E;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,SAAS,CAAyD;IAEjF;;;OAGG;WACW,6BAA6B,CAAC,oBAAoB,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAU3F;;;OAGG;WACW,6BAA6B,IAAI,MAAM,GAAG,SAAS;IAIjE;;;;OAIG;WACW,eAAe,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,GAAG,MAAM,IAAI;IAO1F;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;CAS/B"}
@@ -0,0 +1,136 @@
1
+ /**
2
+ * 环境类型枚举
3
+ */
4
+ export declare enum Environment {
5
+ DEV = "dev",
6
+ PROD = "prod"
7
+ }
8
+ /**
9
+ * SDK配置管理类
10
+ * 用于管理SDK的各种配置项,支持运行时修改和多环境配置
11
+ */
12
+ export declare class SdkConfig {
13
+ private static instance;
14
+ private static currentEnv;
15
+ private envConfigs;
16
+ /**
17
+ * 私有构造函数
18
+ */
19
+ private constructor();
20
+ /**
21
+ * 获取单例实例
22
+ * @returns SdkConfig实例
23
+ */
24
+ static getInstance(): SdkConfig;
25
+ /**
26
+ * 获取当前环境
27
+ * @returns 当前环境
28
+ */
29
+ getCurrentEnvironment(): Environment;
30
+ /**
31
+ * 静态方法:获取当前环境
32
+ * @returns 当前环境
33
+ */
34
+ static getCurrentEnvironment(): Environment;
35
+ /**
36
+ * 切换环境
37
+ * @param env 目标环境
38
+ */
39
+ switchEnvironment(env: Environment): void;
40
+ /**
41
+ * 静态方法:切换环境
42
+ * @param env 目标环境
43
+ */
44
+ static switchEnvironment(env: Environment): void;
45
+ /**
46
+ * 获取当前环境的配置
47
+ * @returns 当前环境的配置
48
+ */
49
+ private get config();
50
+ /**
51
+ * 静态方法:获取当前环境的配置
52
+ * @returns 当前环境的配置
53
+ */
54
+ static get config(): {
55
+ protocol: {
56
+ apiUrl: string;
57
+ customCodesApiUrl: string;
58
+ };
59
+ };
60
+ /**
61
+ * 获取协议API地址
62
+ * @returns 协议API地址
63
+ */
64
+ getProtocolApiUrl(): string;
65
+ /**
66
+ * 静态方法:获取协议API地址
67
+ * @returns 协议API地址
68
+ */
69
+ static getProtocolApiUrl(): string;
70
+ /**
71
+ * 获取自定义代码API地址
72
+ * @returns 自定义代码API地址
73
+ */
74
+ getCustomCodesApiUrl(): string;
75
+ /**
76
+ * 静态方法:获取自定义代码API地址
77
+ * @returns 自定义代码API地址
78
+ */
79
+ static getCustomCodesApiUrl(): string;
80
+ /**
81
+ * 更新当前环境的协议配置
82
+ * @param protocolConfig 新的协议配置
83
+ */
84
+ updateProtocolConfig(protocolConfig: Partial<{
85
+ apiUrl: string;
86
+ customCodesApiUrl: string;
87
+ }>): void;
88
+ /**
89
+ * 静态方法:更新当前环境的协议配置
90
+ * @param protocolConfig 新的协议配置
91
+ */
92
+ static updateProtocolConfig(protocolConfig: Partial<{
93
+ apiUrl: string;
94
+ customCodesApiUrl: string;
95
+ }>): void;
96
+ /**
97
+ * 获取当前环境的完整配置
98
+ * @returns 完整配置对象的副本
99
+ */
100
+ getConfig(): any;
101
+ /**
102
+ * 获取所有环境的配置
103
+ * @returns 所有环境的配置对象的副本
104
+ */
105
+ getAllEnvironmentConfigs(): Record<Environment, any>;
106
+ /**
107
+ * 静态方法:获取所有环境的配置
108
+ * @returns 所有环境的配置对象的副本
109
+ */
110
+ static getAllEnvironmentConfigs(): Record<Environment, any>;
111
+ /**
112
+ * 更新当前环境的完整配置
113
+ * @param newConfig 新的配置对象
114
+ */
115
+ updateConfig(newConfig: any): void;
116
+ /**
117
+ * 静态方法:更新当前环境的完整配置
118
+ * @param newConfig 新的配置对象
119
+ */
120
+ static updateConfig(newConfig: any): void;
121
+ /**
122
+ * 更新指定环境的配置
123
+ * @param env 目标环境
124
+ * @param newConfig 新的配置对象
125
+ */
126
+ updateEnvironmentConfig(env: Environment, newConfig: any): void;
127
+ /**
128
+ * 静态方法:更新指定环境的配置
129
+ * @param env 目标环境
130
+ * @param newConfig 新的配置对象
131
+ */
132
+ static updateEnvironmentConfig(env: Environment, newConfig: any): void;
133
+ }
134
+ declare const sdkConfigInstance: SdkConfig;
135
+ export default sdkConfigInstance;
136
+ //# sourceMappingURL=SdkConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SdkConfig.d.ts","sourceRoot":"","sources":["../../../websdk/common/config/SdkConfig.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,oBAAY,WAAW;IACrB,GAAG,QAAQ;IACX,IAAI,SAAS;CACd;AAED;;;GAGG;AACH,qBAAa,SAAS;IAEpB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAY;IAGnC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAiC;IAG1D,OAAO,CAAC,UAAU,CAwBhB;IAEF;;OAEG;IACH,OAAO;IAMP;;;OAGG;WACW,WAAW,IAAI,SAAS;IAOtC;;;OAGG;IACI,qBAAqB,IAAI,WAAW;IAI3C;;;OAGG;WACW,qBAAqB,IAAI,WAAW;IAIlD;;;OAGG;IACI,iBAAiB,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI;IAIhD;;;OAGG;WACW,iBAAiB,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI;IAQvD;;;OAGG;IACH,OAAO,KAAK,MAAM,GAEjB;IAED;;;OAGG;IACH,WAAkB,MAAM;kBA1FV;YAER,MAAM,EAAE,MAAM,CAAC;YAEf,iBAAiB,EAAE,MAAM,CAAC;SAC3B;MAuFJ;IAED;;;OAGG;IACI,iBAAiB,IAAI,MAAM;IAIlC;;;OAGG;WACW,iBAAiB,IAAI,MAAM;IAIzC;;;OAGG;IACI,oBAAoB,IAAI,MAAM;IAIrC;;;OAGG;WACW,oBAAoB,IAAI,MAAM;IAI5C;;;OAGG;IACI,oBAAoB,CACzB,cAAc,EAAE,OAAO,CAAC;QACtB,MAAM,EAAE,MAAM,CAAC;QACf,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAAC,GACD,IAAI;IASP;;;OAGG;WACW,oBAAoB,CAChC,cAAc,EAAE,OAAO,CAAC;QACtB,MAAM,EAAE,MAAM,CAAC;QACf,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAAC,GACD,IAAI;IAIP;;;OAGG;IACI,SAAS,IAAI,GAAG;IAKvB;;;OAGG;IACI,wBAAwB,IAAI,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC;IAK3D;;;OAGG;WACW,wBAAwB,IAAI,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC;IAIlE;;;OAGG;IACI,YAAY,CAAC,SAAS,EAAE,GAAG,GAAG,IAAI;IAYzC;;;OAGG;WACW,YAAY,CAAC,SAAS,EAAE,GAAG,GAAG,IAAI;IAIhD;;;;OAIG;IACI,uBAAuB,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,GAAG,IAAI;IAYtE;;;;OAIG;WACW,uBAAuB,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,GAAG,IAAI;CAG9E;AAGD,QAAA,MAAM,iBAAiB,WAA0B,CAAC;AAClD,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * 配置模块导出文件
3
+ */
4
+ import SdkConfig from "./SdkConfig";
5
+ import { Environment } from "./SdkConfig";
6
+ export { SdkConfig, Environment };
7
+ export default SdkConfig;
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../websdk/common/config/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;AAGlC,eAAe,SAAS,CAAC"}
@@ -0,0 +1,416 @@
1
+ export {};
2
+ declare global {
3
+ export type PacketConfigType = "BLE" | "MQTT" | "SERIAL" | "ADVERTISEMENT";
4
+ export type DeviceType = "bms" | "charger" | "displayer" | "power";
5
+ /**
6
+ * 用于被渲染的Select数据对象
7
+ */
8
+ interface SelectProtocol {
9
+ /**
10
+ * 协议名称
11
+ */
12
+ text: string;
13
+ /**
14
+ *主协议 MD5
15
+ */
16
+ md5: string;
17
+ /**
18
+ * 子协议版本号
19
+ */
20
+ versionNum: string;
21
+ /**
22
+ * 协议类型 bms|charger|power
23
+ */
24
+ type: string;
25
+ /**
26
+ * 主协议唯一ID
27
+ */
28
+ uniqueId: number;
29
+ }
30
+ /**
31
+ * 从API返回的协议
32
+ */
33
+ interface ApiProtocol {
34
+ /**
35
+ * 主协议唯一ID
36
+ */
37
+ uniqueId: number;
38
+ /**
39
+ * 协议编码
40
+ */
41
+ code: string;
42
+ /**
43
+ * 协议名称
44
+ */
45
+ name: string;
46
+ /**
47
+ * 协议文件下载路径
48
+ */
49
+ downloadUrl: string;
50
+ /**
51
+ * 文件MD5值
52
+ */
53
+ md5: string;
54
+ /**
55
+ * 协议类型 bms|charger|power
56
+ */
57
+ type: string;
58
+ }
59
+ /**
60
+ * 用来本地持久化的协议对象
61
+ */
62
+ interface StoreProtocol extends ApiProtocol {
63
+ mainProtocol: MainProtocol;
64
+ }
65
+ interface PacketConfig {
66
+ /**
67
+ * 类型。BLE、MQTT、485、CAN等
68
+ */
69
+ type: string;
70
+ /**
71
+ * 是否需要CRC校验
72
+ */
73
+ needCrc: boolean;
74
+ /**
75
+ * 帧头
76
+ */
77
+ prefix: string;
78
+ /**
79
+ * 帧尾
80
+ */
81
+ suffix: string;
82
+ }
83
+ /**
84
+ * 主协议对象
85
+ */
86
+ interface MainProtocol {
87
+ /**
88
+ * 协议编码
89
+ */
90
+ protocolCode: string;
91
+ /**
92
+ * 协议名称
93
+ */
94
+ protocolName: string;
95
+ /**
96
+ * 数据包配置
97
+ */
98
+ packetConfigs: Array<PacketConfig>;
99
+ /**
100
+ * 子协议
101
+ */
102
+ protocols: Map<string, ChildProtocol>;
103
+ }
104
+ /**
105
+ * 自协议对象
106
+ */
107
+ interface ChildProtocol {
108
+ /**
109
+ * 协议所属环境类型<br>
110
+ * prod:发行版|dev:测试版|pub:公测版
111
+ */
112
+ env: string;
113
+ /**
114
+ * 子协议编码
115
+ */
116
+ code: string;
117
+ /**
118
+ * 描述
119
+ */
120
+ desc: string;
121
+ /**
122
+ * 名称
123
+ */
124
+ name: string;
125
+ /**
126
+ * 是否需要crc
127
+ */
128
+ needCrc?: boolean | false;
129
+ /**
130
+ * 协议前缀
131
+ */
132
+ prefix?: string;
133
+ /**
134
+ * 协议后缀
135
+ */
136
+ suffix?: string;
137
+ /**
138
+ * 协议版本号
139
+ */
140
+ versionNum: string;
141
+ /**
142
+ * 批量读指令集<br>
143
+ * key:指令代码<br>
144
+ * value:BulkReadValue 指令/ACK功能码/指令描述
145
+ */
146
+ bulkReadCommands: Map<string, BulkReadValue>;
147
+ /**
148
+ * 上报指令<br>
149
+ * key:Hex功能码<br>
150
+ * value:ReportValue 解析类型/功能码/功能描述/通用寄存器功能定义
151
+ */
152
+ reportDefine: Map<string, ReportValue>;
153
+ /**
154
+ * 下发指令<br>
155
+ * key:Hex功能码<br>
156
+ * value:SendCommandValue 功能码/功能描述/寄存器功能详情
157
+ */
158
+ sendCommands: Map<string, SendCommandValue>;
159
+ }
160
+ /**
161
+ * 批量读取指令结构
162
+ */
163
+ interface BulkReadValue {
164
+ /**
165
+ * 指令英文Code值
166
+ */
167
+ key?: string;
168
+ /**
169
+ * ACK功能码
170
+ * <br><font color=red>(HEX字符串)</font>
171
+ */
172
+ ackFunc: string;
173
+ /**
174
+ * 描述
175
+ */
176
+ define: string;
177
+ /**
178
+ * 指令
179
+ * <br><font color=red>(HEX字符串)</font>
180
+ */
181
+ hex: string;
182
+ }
183
+ /**
184
+ * 数据上报指令结构对象
185
+ */
186
+ interface ReportValue {
187
+ /**
188
+ * 解析类型<br>
189
+ * general:常规 遵循协议默认解析原则<br>
190
+ * custom:自定义 复杂报文解析时,需提供解析方法<br>
191
+ */
192
+ analysisType: string;
193
+ /**
194
+ * 自定义解析代码<br>
195
+ * 这里配置的是自定义解析代码的analysisCode。在解析时,会根据此code去api/custom_analyze/目录下查找对应的代码去解析。
196
+ */
197
+ customCode: string;
198
+ /**
199
+ *
200
+ * key:寄存器地址Hex值<br>
201
+ * value:ReportRegisterValue 数据上报寄存器功能定义
202
+ */
203
+ details: Map<string, ReportRegisterValue>;
204
+ /**
205
+ * 功能码
206
+ * <br><font color=red>(HEX字符串)</font>
207
+ */
208
+ func: string;
209
+ /**
210
+ * 功能描述
211
+ */
212
+ funcName: string;
213
+ }
214
+ /**
215
+ * 数据上报寄存器功能定义
216
+ */
217
+ interface ReportRegisterValue {
218
+ /**
219
+ * 数据类型。如:uint16
220
+ */
221
+ dataType: string;
222
+ /**
223
+ * 寄存器地址含义描述
224
+ */
225
+ define: string;
226
+ /**
227
+ * 寄存器英文编码。协议范围内全局唯一
228
+ */
229
+ fieldName: string;
230
+ /**
231
+ * 数据长度
232
+ */
233
+ len: number;
234
+ /**
235
+ * 数据倍数
236
+ */
237
+ range: number;
238
+ /**
239
+ * 寄存器地址
240
+ * <br><font color=red>(HEX字符串)</font>
241
+ */
242
+ reg: string;
243
+ /**
244
+ * 寄存器指令排序
245
+ */
246
+ sort: number;
247
+ /**
248
+ * 单位
249
+ */
250
+ unit: string;
251
+ }
252
+ /**
253
+ * 下发指令
254
+ */
255
+ interface SendCommandValue {
256
+ /**
257
+ * 功能码
258
+ * <br><font color=red>(HEX字符串)</font>
259
+ */
260
+ func: string;
261
+ /**
262
+ * 功能说明
263
+ */
264
+ funcName: string;
265
+ /**
266
+ * 指令组<br>
267
+ * key:指令英文代码。协议内全局唯一<br>
268
+ * value:CommandDetail 指令详情
269
+ */
270
+ regDetails: Map<string, CommandDetail>;
271
+ }
272
+ /**
273
+ * 下发指令详情
274
+ */
275
+ interface CommandDetail {
276
+ /**
277
+ * 指令英文Code
278
+ */
279
+ key?: string;
280
+ /**
281
+ * ACK功能码
282
+ * <br><font color=red>(HEX字符串)</font>
283
+ */
284
+ ack: string;
285
+ auth: string;
286
+ /**
287
+ * 单位。如:uint16
288
+ */
289
+ dataType: string;
290
+ /**
291
+ * 指令描述
292
+ */
293
+ define: string;
294
+ /**
295
+ * 指令
296
+ * <br><font color=red>(HEX字符串)</font>
297
+ */
298
+ hex: string;
299
+ /**
300
+ * 权限
301
+ */
302
+ level: number;
303
+ /**
304
+ * 指令范围
305
+ */
306
+ range: number;
307
+ sort: number;
308
+ /**
309
+ * 单位
310
+ */
311
+ unit: string;
312
+ }
313
+ /**
314
+ * 构建发送命令的统一返回结果
315
+ */
316
+ interface BuildSendResult {
317
+ /**
318
+ * 是否成功
319
+ */
320
+ success: boolean;
321
+ /**
322
+ * 错误消息
323
+ */
324
+ message?: string;
325
+ /**
326
+ * Hex命令
327
+ */
328
+ command?: string;
329
+ /**
330
+ * ACK功能码(HEX)
331
+ */
332
+ ack?: string;
333
+ }
334
+ interface AnalyzeSendResult {
335
+ /**
336
+ * 是否成功
337
+ */
338
+ success: boolean;
339
+ /**
340
+ * 错误消息
341
+ */
342
+ message?: string;
343
+ /**
344
+ * 解析后的数据<br>
345
+ * Key:指令Code<br>
346
+ * Value<AnalyzeData>:解析结果,若是数值类型,自动做了倍数转换
347
+ */
348
+ data: AnalyzeData[];
349
+ }
350
+ /**
351
+ * Hex格式化后的报文对象
352
+ */
353
+ interface HexPackage {
354
+ /**
355
+ * 功能码
356
+ */
357
+ func: string;
358
+ /**
359
+ * 寄存器地址
360
+ */
361
+ registCode: string;
362
+ /**
363
+ * 数据长度
364
+ */
365
+ dataLength: number;
366
+ /**
367
+ * 数据长度Hex格式
368
+ */
369
+ dataLengthHex: string;
370
+ /**
371
+ * 荷载
372
+ */
373
+ data: string;
374
+ /**
375
+ * CRC
376
+ */
377
+ crc: string;
378
+ }
379
+ /**
380
+ * 解析后数据的类型<br>
381
+ * Hex:表示解析失败,按照荷载Hex原文返回<br>
382
+ * REAL:表示解析成功,返回的是真实值<br>
383
+ * JSON:表示解析成功,返回的是JSON对象
384
+ */
385
+ type AnalyzeDataType = "HEX" | "REAL" | "JSON";
386
+ /**
387
+ * 解析后的单个数据
388
+ */
389
+ interface AnalyzeData {
390
+ /**
391
+ * 功能码
392
+ */
393
+ func: string;
394
+ /**
395
+ * 寄存器英文编码
396
+ */
397
+ registerFieldName: string;
398
+ /**
399
+ * 寄存器含义
400
+ */
401
+ registerDefine: string;
402
+ /**
403
+ * 数据类型
404
+ */
405
+ dataType: AnalyzeDataType;
406
+ /**
407
+ * 数据
408
+ */
409
+ data: string;
410
+ /**
411
+ * 解析前的hex数据
412
+ */
413
+ hex: string;
414
+ }
415
+ }
416
+ //# sourceMappingURL=ProtocolGlobalModel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProtocolGlobalModel.d.ts","sourceRoot":"","sources":["../../../websdk/common/model/ProtocolGlobalModel.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const CalculateCRC16Modbus: (data: string) => string;
2
+ //# sourceMappingURL=CalculateCRC16Modbus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CalculateCRC16Modbus.d.ts","sourceRoot":"","sources":["../../../websdk/common/utils/CalculateCRC16Modbus.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,oBAAoB,GAAI,MAAM,MAAM,KAAG,MAsBnD,CAAA"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * UUID 工具类
3
+ * 提供生成和格式化 UUID 的方法
4
+ */
5
+ export declare class UuidUtil {
6
+ /**
7
+ * 生成纯 UUID
8
+ * @returns 标准格式的 UUID
9
+ */
10
+ private static generateUuid;
11
+ /**
12
+ * 获取唯一键
13
+ * 格式: UUID全部大写,去掉所有减号,然后用-号和一个毫秒级时间戳拼接
14
+ * @returns 格式化后的唯一键
15
+ */
16
+ static getUniqueKey(): string;
17
+ }
18
+ export default UuidUtil;
19
+ //# sourceMappingURL=UuidUtil.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UuidUtil.d.ts","sourceRoot":"","sources":["../../../websdk/common/utils/UuidUtil.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,QAAQ;IACnB;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY;IAQ3B;;;;OAIG;WACW,YAAY,IAAI,MAAM;CAarC;AAED,eAAe,QAAQ,CAAC"}