knx.ts 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.
- package/LICENSE +21 -0
- package/README.md +211 -0
- package/dist/@types/interfaces/DPTs.d.ts +144 -0
- package/dist/@types/interfaces/DPTs.js +3 -0
- package/dist/@types/interfaces/EMI.d.ts +396 -0
- package/dist/@types/interfaces/EMI.js +2 -0
- package/dist/@types/interfaces/ServiceMessage.d.ts +11 -0
- package/dist/@types/interfaces/ServiceMessage.js +2 -0
- package/dist/@types/interfaces/SystemStatus.d.ts +18 -0
- package/dist/@types/interfaces/SystemStatus.js +2 -0
- package/dist/@types/interfaces/connection.d.ts +139 -0
- package/dist/@types/interfaces/connection.js +2 -0
- package/dist/@types/interfaces/localEndPoint.d.ts +5 -0
- package/dist/@types/interfaces/localEndPoint.js +2 -0
- package/dist/@types/types/AllDpts.d.ts +3 -0
- package/dist/@types/types/AllDpts.js +3 -0
- package/dist/@types/types/DecodedDPTType.d.ts +21 -0
- package/dist/@types/types/DecodedDPTType.js +2 -0
- package/dist/connection/KNXService.d.ts +58 -0
- package/dist/connection/KNXService.js +242 -0
- package/dist/connection/KNXTunneling.d.ts +44 -0
- package/dist/connection/KNXTunneling.js +509 -0
- package/dist/connection/KNXnetIPServer.d.ts +64 -0
- package/dist/connection/KNXnetIPServer.js +900 -0
- package/dist/connection/Router.d.ts +49 -0
- package/dist/connection/Router.js +269 -0
- package/dist/connection/TPUART.d.ts +32 -0
- package/dist/connection/TPUART.js +497 -0
- package/dist/connection/TunnelConnection.d.ts +57 -0
- package/dist/connection/TunnelConnection.js +167 -0
- package/dist/core/CEMI.d.ts +1130 -0
- package/dist/core/CEMI.js +1281 -0
- package/dist/core/ControlField.d.ts +57 -0
- package/dist/core/ControlField.js +120 -0
- package/dist/core/ControlFieldExtended.d.ts +56 -0
- package/dist/core/ControlFieldExtended.js +114 -0
- package/dist/core/EMI.d.ts +2515 -0
- package/dist/core/EMI.js +3898 -0
- package/dist/core/KNXAddInfoTypes.d.ts +225 -0
- package/dist/core/KNXAddInfoTypes.js +602 -0
- package/dist/core/KNXnetIPHeader.d.ts +10 -0
- package/dist/core/KNXnetIPHeader.js +38 -0
- package/dist/core/KNXnetIPStructures.d.ts +179 -0
- package/dist/core/KNXnetIPStructures.js +622 -0
- package/dist/core/MessageCodeField.d.ts +886 -0
- package/dist/core/MessageCodeField.js +399 -0
- package/dist/core/SystemStatus.d.ts +144 -0
- package/dist/core/SystemStatus.js +325 -0
- package/dist/core/data/KNXData.d.ts +7 -0
- package/dist/core/data/KNXData.js +30 -0
- package/dist/core/data/KNXDataDecode.d.ts +396 -0
- package/dist/core/data/KNXDataDecode.js +1186 -0
- package/dist/core/data/KNXDataEncode.d.ts +332 -0
- package/dist/core/data/KNXDataEncode.js +1504 -0
- package/dist/core/enum/APCIEnum.d.ts +587 -0
- package/dist/core/enum/APCIEnum.js +591 -0
- package/dist/core/enum/EnumControlField.d.ts +24 -0
- package/dist/core/enum/EnumControlField.js +36 -0
- package/dist/core/enum/EnumControlFieldExtended.d.ts +36 -0
- package/dist/core/enum/EnumControlFieldExtended.js +41 -0
- package/dist/core/enum/EnumShortACKFrame.d.ts +6 -0
- package/dist/core/enum/EnumShortACKFrame.js +10 -0
- package/dist/core/enum/ErrorCodeSet.d.ts +57 -0
- package/dist/core/enum/ErrorCodeSet.js +2 -0
- package/dist/core/enum/KNXnetIPEnum.d.ts +95 -0
- package/dist/core/enum/KNXnetIPEnum.js +90 -0
- package/dist/core/enum/SAP.d.ts +19 -0
- package/dist/core/enum/SAP.js +23 -0
- package/dist/core/layers/data/APDU.d.ts +38 -0
- package/dist/core/layers/data/APDU.js +115 -0
- package/dist/core/layers/data/NPDU.d.ts +73 -0
- package/dist/core/layers/data/NPDU.js +103 -0
- package/dist/core/layers/data/TPDU.d.ts +53 -0
- package/dist/core/layers/data/TPDU.js +73 -0
- package/dist/core/layers/interfaces/APCI.d.ts +61 -0
- package/dist/core/layers/interfaces/APCI.js +92 -0
- package/dist/core/layers/interfaces/TPCI.d.ts +110 -0
- package/dist/core/layers/interfaces/TPCI.js +196 -0
- package/dist/core/resources/DeviceDescriptorType.d.ts +46 -0
- package/dist/core/resources/DeviceDescriptorType.js +69 -0
- package/dist/errors/DPTNotFound.d.ts +6 -0
- package/dist/errors/DPTNotFound.js +15 -0
- package/dist/errors/InvalidKnxAddresExeption.d.ts +3 -0
- package/dist/errors/InvalidKnxAddresExeption.js +9 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +18 -0
- package/dist/utils/CEMIAdapter.d.ts +16 -0
- package/dist/utils/CEMIAdapter.js +94 -0
- package/dist/utils/KNXHelper.d.ts +78 -0
- package/dist/utils/KNXHelper.js +338 -0
- package/dist/utils/Logger.d.ts +17 -0
- package/dist/utils/Logger.js +96 -0
- package/dist/utils/MessageCodeTranslator.d.ts +19 -0
- package/dist/utils/MessageCodeTranslator.js +77 -0
- package/dist/utils/checksumFrame.d.ts +18 -0
- package/dist/utils/checksumFrame.js +41 -0
- package/dist/utils/localIp.d.ts +7 -0
- package/dist/utils/localIp.js +45 -0
- package/package.json +49 -0
|
@@ -0,0 +1,396 @@
|
|
|
1
|
+
import { DecodedDPTType } from "../../@types/types/DecodedDPTType";
|
|
2
|
+
import { KNXData } from "./KNXData";
|
|
3
|
+
/**
|
|
4
|
+
* Represents KNX DPTs (Data Point Types), decodes them according to their specification
|
|
5
|
+
*/
|
|
6
|
+
export declare class KnxDataDecode extends KNXData {
|
|
7
|
+
private constructor();
|
|
8
|
+
static decodeThis<T extends typeof KnxDataDecode.dptEnum[number] | string>(dpt: T, buffer: Buffer): DecodedDPTType<T>;
|
|
9
|
+
static get dptEnum(): readonly [1, 2, 3007, 3008, 4001, 4002, 5, 5001, 5002, 6, 6001, 6010, 6020, 7, 7001, 7002, 7003, 7004, 7005, 7006, 7007, 7011, 7012, 7013, 8, 9, 10001, 11001, 12001, 12002, 13, 13001, 13002, 13010, 13011, 13012, 13013, 13014, 13015, 13016, 13100, 14, 15000, 16, 16002, 20, 20001, 20002, 20003, 20004, 20005, 20006, 20007, 20008, 20011, 20012, 20013, 20014, 20017, 20020, 20021, 20022, 27001, 28001, 29, 29010, 29011, 29012, 232600, 238600, 245600, 250600, 251600];
|
|
10
|
+
private static toPercentage;
|
|
11
|
+
private static toAngle;
|
|
12
|
+
/**
|
|
13
|
+
* Interpret the underlying data as boolean value
|
|
14
|
+
* @returns
|
|
15
|
+
*/
|
|
16
|
+
static asDpt1(buffer: Buffer): boolean;
|
|
17
|
+
/**
|
|
18
|
+
* Interpretar la información del DPT2 (B2) y devolver un objeto con los campos:
|
|
19
|
+
* - control (c): 0 o 1
|
|
20
|
+
* - value (v): 0 o 1
|
|
21
|
+
* - description: descripción basada en la combinación de bits
|
|
22
|
+
*
|
|
23
|
+
* Los datos se encuentran en el primer octeto (buffer[0]), y solo se toman en cuenta los dos bits menos significativos.
|
|
24
|
+
*/
|
|
25
|
+
static asDpt2(buffer: Buffer): {
|
|
26
|
+
control: number;
|
|
27
|
+
value: number;
|
|
28
|
+
description: string;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Interpretar la información del DPT3007 (B1U3) y devolver un objeto con:
|
|
32
|
+
* - control: 0 (Decrease) o 1 (Increase)
|
|
33
|
+
* - stepCode: valor de 3 bits (0…7)
|
|
34
|
+
* - action: descripción de la acción (Decrease o Increase)
|
|
35
|
+
* - description: "Break" si stepCode es 0 o el detalle de step con el número de intervalos
|
|
36
|
+
*
|
|
37
|
+
* Se asume que el dato se encuentra en el primer octeto útil, es decir, en buffer[0].
|
|
38
|
+
* Como la información es de 4 bits, se toma el nibble inferior del byte.
|
|
39
|
+
*/
|
|
40
|
+
static asDpt3007(buffer: Buffer): {
|
|
41
|
+
control: number;
|
|
42
|
+
stepCode: number;
|
|
43
|
+
action: string;
|
|
44
|
+
description: string;
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* Interpretar la información del DPT3008 (DPT_Control_Blinds).
|
|
48
|
+
* Se asume que los datos se encuentran en el primer octeto de la carga útil.
|
|
49
|
+
*
|
|
50
|
+
* Formato: 4 bit: B1U3
|
|
51
|
+
* Campos:
|
|
52
|
+
* - c: 1 bit (0 = Up, 1 = Down)
|
|
53
|
+
* - stepCode: 3 bits
|
|
54
|
+
*
|
|
55
|
+
* Retorna un objeto con:
|
|
56
|
+
* - control: 0 o 1
|
|
57
|
+
* - stepCode: valor numérico de 0 a 7
|
|
58
|
+
* - description: texto descriptivo (p.ej. "Up" o "Down")
|
|
59
|
+
* - intervals: Si stepCode es distinto de 0, se calcula como 2^(stepCode - 1), o bien se indica "Break" si es 0.
|
|
60
|
+
*/
|
|
61
|
+
static asDpt3008(buffer: Buffer): {
|
|
62
|
+
control: number;
|
|
63
|
+
stepCode: number;
|
|
64
|
+
description: string;
|
|
65
|
+
intervals: string | number;
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* Interpreta la información del DPT4001 (DPT_Char_ASCII).
|
|
69
|
+
* Se asume que el dato se encuentra en el primer octeto de la carga útil.
|
|
70
|
+
*
|
|
71
|
+
* - Valida que el MSB sea 0 (valor en el rango 0...127).
|
|
72
|
+
* - Retorna el carácter ASCII correspondiente.
|
|
73
|
+
*/
|
|
74
|
+
static asDpt4001(buffer: Buffer): string;
|
|
75
|
+
/**
|
|
76
|
+
* Interpreta la información del DPT4002 (DPT_Char_8859_1).
|
|
77
|
+
* Se asume que el dato se encuentra en el primer octeto de la carga útil.
|
|
78
|
+
*
|
|
79
|
+
* - No se impone restricción en el MSB (valor en el rango 0...255).
|
|
80
|
+
* - Retorna el carácter correspondiente en ISO-8859-1.
|
|
81
|
+
*/
|
|
82
|
+
static asDpt4002(buffer: Buffer): string;
|
|
83
|
+
/**
|
|
84
|
+
* Interpret the underlying data as 1 Byte unsigned value
|
|
85
|
+
* @returns
|
|
86
|
+
*/
|
|
87
|
+
static asDpt5(buffer: Buffer): number;
|
|
88
|
+
static asDpt5001(buffer: Buffer): string;
|
|
89
|
+
static asDpt5002(buffer: Buffer): string;
|
|
90
|
+
static asDpt6(buffer: Buffer): number;
|
|
91
|
+
static asDpt6001(buffer: Buffer): string;
|
|
92
|
+
static asDpt6010(buffer: Buffer): string;
|
|
93
|
+
static asDpt6020(buffer: Buffer): {
|
|
94
|
+
status: string;
|
|
95
|
+
mode: string;
|
|
96
|
+
};
|
|
97
|
+
static asDpt7(buffer: Buffer): number;
|
|
98
|
+
static asDpt7001(buffer: Buffer): string;
|
|
99
|
+
static asDpt7002(buffer: Buffer): string;
|
|
100
|
+
static asDpt7003(buffer: Buffer): string;
|
|
101
|
+
static asDpt7004(buffer: Buffer): string;
|
|
102
|
+
static asDpt7005(buffer: Buffer): string;
|
|
103
|
+
static asDpt7006(buffer: Buffer): string;
|
|
104
|
+
static asDpt7007(buffer: Buffer): string;
|
|
105
|
+
static asDpt7011(buffer: Buffer): string;
|
|
106
|
+
static asDpt7012(buffer: Buffer): {
|
|
107
|
+
value: number;
|
|
108
|
+
status: string;
|
|
109
|
+
} | {
|
|
110
|
+
value: string;
|
|
111
|
+
status: string;
|
|
112
|
+
};
|
|
113
|
+
static asDpt7013(buffer: Buffer): string;
|
|
114
|
+
static asDpt8(buffer: Buffer): number;
|
|
115
|
+
/**
|
|
116
|
+
* Decodifica un DPT9 (2-octetos) según la especificación KNX:
|
|
117
|
+
* FloatValue = 0.01 * M * 2^(E)
|
|
118
|
+
* S (1 bit) = Signo de la mantisa
|
|
119
|
+
* E (4 bits) = [0…15]
|
|
120
|
+
* M (11 bits) = Mantisa
|
|
121
|
+
* Si el valor codificado es 0x7FFF, se considera inválido.
|
|
122
|
+
*
|
|
123
|
+
* @returns El valor en punto flotante.
|
|
124
|
+
*/
|
|
125
|
+
static asDpt9(buffer: Buffer): number;
|
|
126
|
+
/**
|
|
127
|
+
* Interpreta la información del DPT 10001 (Time of Day).
|
|
128
|
+
* Se asume que la carga útil contiene 3 octetos codificados según:
|
|
129
|
+
*
|
|
130
|
+
* Octeto 1: NNNUUUUU -> 3 bits para el Día y 5 bits para la Hora.
|
|
131
|
+
* Octeto 2: rrUUUUUU -> 6 bits para los Minutos (dos bits reservados).
|
|
132
|
+
* Octeto 3: rrUUUUUU -> 6 bits para los Segundos (dos bits reservados).
|
|
133
|
+
*
|
|
134
|
+
* Retorna un objeto con:
|
|
135
|
+
* - day: número del día (0 = no day, 1 = lunes, …, 7 = domingo)
|
|
136
|
+
* - dayName: nombre del día (o "No day")
|
|
137
|
+
* - hour: hora (0...23)
|
|
138
|
+
* - minutes: minutos (0...59)
|
|
139
|
+
* - seconds: segundos (0...59)
|
|
140
|
+
*/
|
|
141
|
+
static asDpt10001(buffer: Buffer): {
|
|
142
|
+
day: number;
|
|
143
|
+
dayName: string;
|
|
144
|
+
hour: number;
|
|
145
|
+
minutes: number;
|
|
146
|
+
seconds: number;
|
|
147
|
+
};
|
|
148
|
+
/**
|
|
149
|
+
* Interpreta la información del DPT 11001 (Date).
|
|
150
|
+
* Se asume que la carga útil contiene 3 octetos codificados según:
|
|
151
|
+
*
|
|
152
|
+
* Octeto 1: r3U5 => Day: 5 bits (bits [4:0])
|
|
153
|
+
* Octeto 2: r4U4 => Month: 4 bits (bits [3:0])
|
|
154
|
+
* Octeto 3: r1U7 => Year: 7 bits (bits [6:0])
|
|
155
|
+
*
|
|
156
|
+
* La interpretación del año es:
|
|
157
|
+
* - Si el valor es >= 90: año = 1900 + valor (siglo XX)
|
|
158
|
+
* - Si el valor es < 90: año = 2000 + valor (siglo XXI)
|
|
159
|
+
*
|
|
160
|
+
* Retorna un objeto con los campos day, month, year y una cadena formateada.
|
|
161
|
+
*/
|
|
162
|
+
static asDpt11001(buffer: Buffer): {
|
|
163
|
+
day: number;
|
|
164
|
+
month: number;
|
|
165
|
+
year: number;
|
|
166
|
+
dateString: string;
|
|
167
|
+
};
|
|
168
|
+
/**
|
|
169
|
+
* Interpreta la información del DPT 12.001 (4-Octet Unsigned Value para counter pulses).
|
|
170
|
+
* Se asume que la carga útil contiene 4 octetos.
|
|
171
|
+
*
|
|
172
|
+
* @returns Un objeto con el valor sin signo y la unidad ("pulses").
|
|
173
|
+
*/
|
|
174
|
+
static asDpt12001(buffer: Buffer): {
|
|
175
|
+
value: number;
|
|
176
|
+
unit: string;
|
|
177
|
+
};
|
|
178
|
+
/**
|
|
179
|
+
* Interpreta la información de los DPT LongTimePeriod (12.100, 12.101, 12.102) para operating hours.
|
|
180
|
+
* Se asume que la carga útil contiene 4 octetos.
|
|
181
|
+
*
|
|
182
|
+
* @param variant Puede ser:
|
|
183
|
+
* - "sec" para DPT_LongTimePeriod_Sec (12.100, segundos),
|
|
184
|
+
* - "min" para DPT_LongTimePeriod_Min (12.101, minutos),
|
|
185
|
+
* - "hrs" para DPT_LongTimePeriod_Hrs (12.102, horas).
|
|
186
|
+
* Por defecto se usa "sec".
|
|
187
|
+
*
|
|
188
|
+
* @returns Un objeto con el valor sin signo y la unidad seleccionada.
|
|
189
|
+
*/
|
|
190
|
+
static asDpt12002(buffer: Buffer, variant?: 'sec' | 'min' | 'hrs'): {
|
|
191
|
+
value: number;
|
|
192
|
+
unit: string;
|
|
193
|
+
};
|
|
194
|
+
/**
|
|
195
|
+
* Interpret the underlying data as 4 byte signed integer
|
|
196
|
+
* @returns
|
|
197
|
+
*/
|
|
198
|
+
static asDpt13(buffer: Buffer): number;
|
|
199
|
+
/**
|
|
200
|
+
* DPT 13.001: DPT_Value_4_Count
|
|
201
|
+
* Interpreta un contador de pulsos (valor de 4 octetos con signo).
|
|
202
|
+
*/
|
|
203
|
+
static asDpt13001(buffer: Buffer): {
|
|
204
|
+
value: number;
|
|
205
|
+
unit: string;
|
|
206
|
+
};
|
|
207
|
+
/**
|
|
208
|
+
* DPT 13.002: DPT_FlowRate_m3/h
|
|
209
|
+
* Interpreta el flujo en m³/h (valor de 4 octetos con signo) con alta resolución.
|
|
210
|
+
*/
|
|
211
|
+
static asDpt13002(buffer: Buffer): {
|
|
212
|
+
value: number;
|
|
213
|
+
unit: string;
|
|
214
|
+
};
|
|
215
|
+
/**
|
|
216
|
+
* DPT 13.010: DPT_ActiveEnergy
|
|
217
|
+
* Interpreta la energía activa en Wh.
|
|
218
|
+
*/
|
|
219
|
+
static asDpt13010(buffer: Buffer): {
|
|
220
|
+
value: number;
|
|
221
|
+
unit: string;
|
|
222
|
+
};
|
|
223
|
+
/**
|
|
224
|
+
* DPT 13.011: DPT_ApparantEnergy
|
|
225
|
+
* Interpreta la energía aparente en VAh.
|
|
226
|
+
*/
|
|
227
|
+
static asDpt13011(buffer: Buffer): {
|
|
228
|
+
value: number;
|
|
229
|
+
unit: string;
|
|
230
|
+
};
|
|
231
|
+
/**
|
|
232
|
+
* DPT 13.012: DPT_ReactiveEnergy
|
|
233
|
+
* Interpreta la energía reactiva en VARh.
|
|
234
|
+
*/
|
|
235
|
+
static asDpt13012(buffer: Buffer): {
|
|
236
|
+
value: number;
|
|
237
|
+
unit: string;
|
|
238
|
+
};
|
|
239
|
+
/**
|
|
240
|
+
* DPT 13.013: DPT_ActiveEnergy_kWh
|
|
241
|
+
* Interpreta la energía activa en kWh.
|
|
242
|
+
*/
|
|
243
|
+
static asDpt13013(buffer: Buffer): {
|
|
244
|
+
value: number;
|
|
245
|
+
unit: string;
|
|
246
|
+
};
|
|
247
|
+
/**
|
|
248
|
+
* DPT 13.014: DPT_ApparantEnergy_kVAh
|
|
249
|
+
* Interpreta la energía aparente en kVAh.
|
|
250
|
+
*/
|
|
251
|
+
static asDpt13014(buffer: Buffer): {
|
|
252
|
+
value: number;
|
|
253
|
+
unit: string;
|
|
254
|
+
};
|
|
255
|
+
/**
|
|
256
|
+
* DPT 13.015: DPT_ReactiveEnergy_kVARh
|
|
257
|
+
* Interpreta la energía reactiva en kVARh.
|
|
258
|
+
*/
|
|
259
|
+
static asDpt13015(buffer: Buffer): {
|
|
260
|
+
value: number;
|
|
261
|
+
unit: string;
|
|
262
|
+
};
|
|
263
|
+
/**
|
|
264
|
+
* DPT 13.016: DPT_ActiveEnergy_MWh
|
|
265
|
+
* Interpreta la energía activa en MWh.
|
|
266
|
+
*/
|
|
267
|
+
static asDpt13016(buffer: Buffer): {
|
|
268
|
+
value: number;
|
|
269
|
+
unit: string;
|
|
270
|
+
};
|
|
271
|
+
/**
|
|
272
|
+
* DPT 13.100: DPT_LongDeltaTimeSec
|
|
273
|
+
* Interpreta un periodo de tiempo en segundos.
|
|
274
|
+
*/
|
|
275
|
+
static asDpt13100(buffer: Buffer): {
|
|
276
|
+
value: number;
|
|
277
|
+
unit: string;
|
|
278
|
+
};
|
|
279
|
+
/**
|
|
280
|
+
* Interpret the underlying data as 4 byte floating point number
|
|
281
|
+
*/
|
|
282
|
+
static asDpt14(buffer: Buffer): number;
|
|
283
|
+
/**
|
|
284
|
+
* DPT 15.000: DPT_Access_Data
|
|
285
|
+
* Decodifica un valor de 4 bytes con información de acceso.
|
|
286
|
+
*/
|
|
287
|
+
static asDpt15000(buffer: Buffer): {
|
|
288
|
+
accessCode: string;
|
|
289
|
+
error: boolean;
|
|
290
|
+
permission: boolean;
|
|
291
|
+
readDirection: boolean;
|
|
292
|
+
encryption: boolean;
|
|
293
|
+
index: number;
|
|
294
|
+
};
|
|
295
|
+
/**
|
|
296
|
+
* DPT 16.000 / 16.001: DPT_String
|
|
297
|
+
* Decodifica una cadena de 14 bytes en ASCII o ISO-8859-1.
|
|
298
|
+
*/
|
|
299
|
+
static asDpt16(buffer: Buffer): string;
|
|
300
|
+
/**
|
|
301
|
+
* Decodifica un buffer de 14 bytes en formato hexadecimal (DPT 16.002).
|
|
302
|
+
* (No oficial en la especificacion del DataPointType de Knx en la version 02.02.01)
|
|
303
|
+
*/
|
|
304
|
+
static asDpt16002(buffer: Buffer): {
|
|
305
|
+
hex: string;
|
|
306
|
+
decimal: string;
|
|
307
|
+
};
|
|
308
|
+
static asDpt20(buffer: Buffer): number;
|
|
309
|
+
static asDpt20001(buffer: Buffer): string;
|
|
310
|
+
static asDpt20002(buffer: Buffer): string;
|
|
311
|
+
static asDpt20003(buffer: Buffer): string;
|
|
312
|
+
static asDpt20004(buffer: Buffer): string;
|
|
313
|
+
static asDpt20005(buffer: Buffer): string;
|
|
314
|
+
static asDpt20006(buffer: Buffer): string;
|
|
315
|
+
static asDpt20007(buffer: Buffer): string;
|
|
316
|
+
static asDpt20008(buffer: Buffer): string;
|
|
317
|
+
static asDpt20011(buffer: Buffer): string;
|
|
318
|
+
static asDpt20012(buffer: Buffer): string;
|
|
319
|
+
static asDpt20013(buffer: Buffer): string;
|
|
320
|
+
static asDpt20014(buffer: Buffer): string;
|
|
321
|
+
static asDpt20017(buffer: Buffer): string;
|
|
322
|
+
static asDpt20020(buffer: Buffer): string;
|
|
323
|
+
static asDpt20021(buffer: Buffer): string;
|
|
324
|
+
static asDpt20022(buffer: Buffer): string;
|
|
325
|
+
static asDpt27001(buffer: Buffer): {
|
|
326
|
+
outputs: boolean[];
|
|
327
|
+
masks: boolean[];
|
|
328
|
+
};
|
|
329
|
+
static asDpt28001(buffer: Buffer): string;
|
|
330
|
+
static asDpt29(buffer: Buffer): number;
|
|
331
|
+
static asDpt29010(buffer: Buffer): number;
|
|
332
|
+
static asDpt29011(buffer: Buffer): number;
|
|
333
|
+
static asDpt29012(buffer: Buffer): number;
|
|
334
|
+
static asDpt232600(buffer: Buffer): {
|
|
335
|
+
dataBuffer: Buffer<ArrayBufferLike>;
|
|
336
|
+
rgb: {
|
|
337
|
+
R: number;
|
|
338
|
+
G: number;
|
|
339
|
+
B: number;
|
|
340
|
+
};
|
|
341
|
+
};
|
|
342
|
+
static asDpt238600(buffer: Buffer): {
|
|
343
|
+
addr: number;
|
|
344
|
+
lf: boolean;
|
|
345
|
+
bf: boolean;
|
|
346
|
+
};
|
|
347
|
+
static asDpt245600(buffer: Buffer): {
|
|
348
|
+
LTRF: number;
|
|
349
|
+
LTRD: number;
|
|
350
|
+
LTRP: number;
|
|
351
|
+
SF: number;
|
|
352
|
+
SD: number;
|
|
353
|
+
SP: number;
|
|
354
|
+
LDTR: number;
|
|
355
|
+
LPDTR: number;
|
|
356
|
+
};
|
|
357
|
+
static asDpt250600(buffer: Buffer): {
|
|
358
|
+
r4_1: number;
|
|
359
|
+
r4_2: number;
|
|
360
|
+
r4_3: number;
|
|
361
|
+
r4_4: number;
|
|
362
|
+
C: number;
|
|
363
|
+
StepCodeColourTemp: number;
|
|
364
|
+
r4_5: number;
|
|
365
|
+
r4_6: number;
|
|
366
|
+
r4_7: number;
|
|
367
|
+
r4_8: number;
|
|
368
|
+
B: number;
|
|
369
|
+
StepCodeBrightness: number;
|
|
370
|
+
reserved: number;
|
|
371
|
+
validityColourTemp: number;
|
|
372
|
+
validityBrightness: number;
|
|
373
|
+
};
|
|
374
|
+
/**
|
|
375
|
+
* DPT 251.600: DPT_Colour_RGBW
|
|
376
|
+
* Decodifica un valor RGBW de 6 bytes con indicadores de validez.
|
|
377
|
+
*/
|
|
378
|
+
static asDpt251600(buffer: Buffer): {
|
|
379
|
+
R: {
|
|
380
|
+
value: number;
|
|
381
|
+
valid: boolean;
|
|
382
|
+
};
|
|
383
|
+
G: {
|
|
384
|
+
value: number;
|
|
385
|
+
valid: boolean;
|
|
386
|
+
};
|
|
387
|
+
B: {
|
|
388
|
+
value: number;
|
|
389
|
+
valid: boolean;
|
|
390
|
+
};
|
|
391
|
+
W: {
|
|
392
|
+
value: number;
|
|
393
|
+
valid: boolean;
|
|
394
|
+
};
|
|
395
|
+
};
|
|
396
|
+
}
|