jooby-codec 1.5.0 → 1.7.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/dist/Command.d.ts +14 -4
- package/dist/Command.js +10 -5
- package/dist/Command.js.map +1 -1
- package/dist/CommandBinaryBuffer.d.ts +142 -5
- package/dist/CommandBinaryBuffer.js +275 -0
- package/dist/CommandBinaryBuffer.js.map +1 -1
- package/dist/commands/downlink/CorrectTime2000.d.ts +1 -6
- package/dist/commands/downlink/CorrectTime2000.js +2 -8
- package/dist/commands/downlink/CorrectTime2000.js.map +1 -1
- package/dist/commands/downlink/ExAbsArchiveDaysMC.d.ts +5 -10
- package/dist/commands/downlink/ExAbsArchiveDaysMC.js +3 -9
- package/dist/commands/downlink/ExAbsArchiveDaysMC.js.map +1 -1
- package/dist/commands/downlink/ExAbsArchiveHoursMC.d.ts +5 -10
- package/dist/commands/downlink/ExAbsArchiveHoursMC.js +3 -9
- package/dist/commands/downlink/ExAbsArchiveHoursMC.js.map +1 -1
- package/dist/commands/downlink/ExAbsCurrentMC.d.ts +1 -6
- package/dist/commands/downlink/ExAbsCurrentMC.js +3 -8
- package/dist/commands/downlink/ExAbsCurrentMC.js.map +1 -1
- package/dist/commands/downlink/GetArchiveDaysMC.d.ts +5 -5
- package/dist/commands/downlink/GetArchiveDaysMC.js +3 -4
- package/dist/commands/downlink/GetArchiveDaysMC.js.map +1 -1
- package/dist/commands/downlink/GetArchiveEvents.d.ts +39 -0
- package/dist/commands/downlink/GetArchiveEvents.js +58 -0
- package/dist/commands/downlink/GetArchiveEvents.js.map +1 -0
- package/dist/commands/downlink/GetArchiveHoursMC.d.ts +5 -10
- package/dist/commands/downlink/GetArchiveHoursMC.js +3 -9
- package/dist/commands/downlink/GetArchiveHoursMC.js.map +1 -1
- package/dist/commands/downlink/GetCurrentMC.d.ts +25 -0
- package/dist/commands/downlink/GetCurrentMC.js +41 -0
- package/dist/commands/downlink/GetCurrentMC.js.map +1 -0
- package/dist/commands/downlink/GetLmicVersion.d.ts +25 -0
- package/dist/commands/downlink/GetLmicVersion.js +41 -0
- package/dist/commands/downlink/GetLmicVersion.js.map +1 -0
- package/dist/commands/downlink/GetParameter.d.ts +37 -0
- package/dist/commands/downlink/GetParameter.js +64 -0
- package/dist/commands/downlink/GetParameter.js.map +1 -0
- package/dist/commands/downlink/NewStatus.d.ts +1 -1
- package/dist/commands/downlink/NewStatus.js +3 -3
- package/dist/commands/downlink/NewStatus.js.map +1 -1
- package/dist/commands/downlink/SetParameter.d.ts +6 -56
- package/dist/commands/downlink/SetParameter.js +45 -105
- package/dist/commands/downlink/SetParameter.js.map +1 -1
- package/dist/commands/downlink/SetTime2000.d.ts +1 -6
- package/dist/commands/downlink/SetTime2000.js +2 -8
- package/dist/commands/downlink/SetTime2000.js.map +1 -1
- package/dist/commands/downlink/SoftRestart.d.ts +1 -1
- package/dist/commands/downlink/SoftRestart.js +3 -3
- package/dist/commands/downlink/SoftRestart.js.map +1 -1
- package/dist/commands/downlink/index.d.ts +4 -0
- package/dist/commands/downlink/index.js +4 -0
- package/dist/commands/downlink/index.js.map +1 -1
- package/dist/commands/uplink/CorrectTime2000.d.ts +1 -1
- package/dist/commands/uplink/CorrectTime2000.js +3 -3
- package/dist/commands/uplink/CorrectTime2000.js.map +1 -1
- package/dist/commands/uplink/DataDayMC.d.ts +3 -5
- package/dist/commands/uplink/DataDayMC.js +4 -3
- package/dist/commands/uplink/DataDayMC.js.map +1 -1
- package/dist/commands/uplink/DataHourMC.d.ts +3 -2
- package/dist/commands/uplink/DataHourMC.js +4 -3
- package/dist/commands/uplink/DataHourMC.js.map +1 -1
- package/dist/commands/uplink/ExAbsArchiveDaysMC.d.ts +3 -2
- package/dist/commands/uplink/ExAbsArchiveDaysMC.js +4 -3
- package/dist/commands/uplink/ExAbsArchiveDaysMC.js.map +1 -1
- package/dist/commands/uplink/ExAbsArchiveHoursMC.d.ts +3 -2
- package/dist/commands/uplink/ExAbsArchiveHoursMC.js +4 -3
- package/dist/commands/uplink/ExAbsArchiveHoursMC.js.map +1 -1
- package/dist/commands/uplink/ExAbsCurrentMC.d.ts +1 -1
- package/dist/commands/uplink/ExAbsCurrentMC.js +4 -3
- package/dist/commands/uplink/ExAbsCurrentMC.js.map +1 -1
- package/dist/commands/uplink/ExAbsDayMC.d.ts +3 -2
- package/dist/commands/uplink/ExAbsDayMC.js +4 -3
- package/dist/commands/uplink/ExAbsDayMC.js.map +1 -1
- package/dist/commands/uplink/ExAbsHourMC.d.ts +3 -2
- package/dist/commands/uplink/ExAbsHourMC.js +4 -3
- package/dist/commands/uplink/ExAbsHourMC.js.map +1 -1
- package/dist/commands/uplink/GetArchiveDaysMC.d.ts +3 -2
- package/dist/commands/uplink/GetArchiveDaysMC.js +4 -3
- package/dist/commands/uplink/GetArchiveDaysMC.js.map +1 -1
- package/dist/commands/uplink/GetArchiveEvents.d.ts +48 -0
- package/dist/commands/uplink/GetArchiveEvents.js +105 -0
- package/dist/commands/uplink/GetArchiveEvents.js.map +1 -0
- package/dist/commands/uplink/GetArchiveHoursMC.d.ts +3 -2
- package/dist/commands/uplink/GetArchiveHoursMC.js +4 -3
- package/dist/commands/uplink/GetArchiveHoursMC.js.map +1 -1
- package/dist/commands/uplink/GetCurrentMC.d.ts +24 -2
- package/dist/commands/uplink/GetCurrentMC.js +60 -3
- package/dist/commands/uplink/GetCurrentMC.js.map +1 -1
- package/dist/commands/uplink/GetLmicVersion.d.ts +46 -0
- package/dist/commands/uplink/GetLmicVersion.js +90 -0
- package/dist/commands/uplink/GetLmicVersion.js.map +1 -0
- package/dist/commands/uplink/GetParameter.d.ts +30 -0
- package/dist/commands/uplink/GetParameter.js +91 -0
- package/dist/commands/uplink/GetParameter.js.map +1 -0
- package/dist/commands/uplink/LastEvent.d.ts +5 -76
- package/dist/commands/uplink/LastEvent.js +67 -115
- package/dist/commands/uplink/LastEvent.js.map +1 -1
- package/dist/commands/uplink/NewEvent.d.ts +35 -7
- package/dist/commands/uplink/NewEvent.js +96 -20
- package/dist/commands/uplink/NewEvent.js.map +1 -1
- package/dist/commands/uplink/NewStatus.d.ts +1 -1
- package/dist/commands/uplink/NewStatus.js +4 -3
- package/dist/commands/uplink/NewStatus.js.map +1 -1
- package/dist/commands/uplink/SetTime2000.d.ts +1 -1
- package/dist/commands/uplink/SetTime2000.js +3 -3
- package/dist/commands/uplink/SetTime2000.js.map +1 -1
- package/dist/commands/uplink/SoftRestart.d.ts +1 -1
- package/dist/commands/uplink/SoftRestart.js +3 -3
- package/dist/commands/uplink/SoftRestart.js.map +1 -1
- package/dist/commands/uplink/Time2000.d.ts +5 -5
- package/dist/commands/uplink/Time2000.js +6 -7
- package/dist/commands/uplink/Time2000.js.map +1 -1
- package/dist/commands/uplink/index.d.ts +3 -0
- package/dist/commands/uplink/index.js +3 -0
- package/dist/commands/uplink/index.js.map +1 -1
- package/dist/constants/{directionTypes.js → directions.js} +1 -1
- package/dist/constants/directions.js.map +1 -0
- package/dist/constants/events.d.ts +30 -4
- package/dist/constants/events.js +30 -4
- package/dist/constants/events.js.map +1 -1
- package/dist/constants/hardwareTypes.d.ts +2 -2
- package/dist/constants/hardwareTypes.js +2 -2
- package/dist/constants/index.d.ts +1 -1
- package/dist/constants/index.js +1 -1
- package/dist/constants/index.js.map +1 -1
- package/dist/utils/bitSet.d.ts +2 -2
- package/dist/utils/bitSet.js +2 -2
- package/dist/utils/message.d.ts +8 -0
- package/dist/utils/message.js +3 -3
- package/dist/utils/message.js.map +1 -1
- package/dist/utils/time.d.ts +20 -3
- package/dist/utils/time.js +2 -2
- package/dist/utils/time.js.map +1 -1
- package/package.json +1 -1
- package/dist/constants/directionTypes.js.map +0 -1
- /package/dist/constants/{directionTypes.d.ts → directions.d.ts} +0 -0
package/dist/Command.d.ts
CHANGED
|
@@ -1,22 +1,32 @@
|
|
|
1
1
|
import { IHexFormatOptions } from './utils/getHexFromBytes.js';
|
|
2
|
+
export interface ICommandExample {
|
|
3
|
+
name: string;
|
|
4
|
+
parameters?: object;
|
|
5
|
+
hardwareType?: number;
|
|
6
|
+
hex: {
|
|
7
|
+
header: string;
|
|
8
|
+
body: string;
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
export type TCommandExampleList = Array<ICommandExample>;
|
|
2
12
|
/**
|
|
3
13
|
* private
|
|
4
14
|
*/
|
|
5
|
-
declare class Command {
|
|
15
|
+
declare abstract class Command {
|
|
6
16
|
static id: number;
|
|
7
17
|
static directionType: unknown;
|
|
8
18
|
static title: string;
|
|
19
|
+
static examples: TCommandExampleList;
|
|
20
|
+
static hasParameters: boolean;
|
|
9
21
|
parameters: unknown;
|
|
10
22
|
/** Get command ID in hex format. */
|
|
11
23
|
static getId(): string;
|
|
12
24
|
/** Get command ID and title. */
|
|
13
25
|
static getName(): string;
|
|
14
26
|
/**
|
|
15
|
-
* Parse
|
|
16
|
-
* Should not be used directly, only from Command child.
|
|
27
|
+
* Parse body without header.
|
|
17
28
|
*
|
|
18
29
|
* @param data command in binary form
|
|
19
|
-
* @param commandsById
|
|
20
30
|
*
|
|
21
31
|
* @returns command instance
|
|
22
32
|
*/
|
package/dist/Command.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as header from './utils/header.js';
|
|
2
2
|
import getHexFromBytes from './utils/getHexFromBytes.js';
|
|
3
|
-
import { UPLINK } from './constants/
|
|
3
|
+
import { UPLINK } from './constants/directions.js';
|
|
4
4
|
/**
|
|
5
5
|
* private
|
|
6
6
|
*/
|
|
@@ -12,17 +12,21 @@ class Command {
|
|
|
12
12
|
/** Get command ID and title. */
|
|
13
13
|
static getName() {
|
|
14
14
|
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
|
15
|
-
return `${this.directionType === UPLINK ? 'uplink' : 'downlink'} command ${this.getId()}:${this.
|
|
15
|
+
return `${this.directionType === UPLINK ? 'uplink' : 'downlink'} command ${this.getId()}:${this.name}`;
|
|
16
16
|
}
|
|
17
17
|
/**
|
|
18
|
-
* Parse
|
|
19
|
-
* Should not be used directly, only from Command child.
|
|
18
|
+
* Parse body without header.
|
|
20
19
|
*
|
|
21
20
|
* @param data command in binary form
|
|
22
|
-
* @param commandsById
|
|
23
21
|
*
|
|
24
22
|
* @returns command instance
|
|
25
23
|
*/
|
|
24
|
+
// static fromBytes ( data: Uint8Array ): Command {
|
|
25
|
+
// throw new Error('not implemented!');
|
|
26
|
+
// }
|
|
27
|
+
// static fromHex ( data: string ): Command {
|
|
28
|
+
// return this.fromBytes(getBytesFromHex(data));
|
|
29
|
+
// }
|
|
26
30
|
// static fromBytes ( data: Uint8Array, commandsById: any ): any {
|
|
27
31
|
// const headerData = header.fromBytes(data);
|
|
28
32
|
// if ( headerData.headerSize + headerData.commandSize < data.length ) {
|
|
@@ -80,5 +84,6 @@ class Command {
|
|
|
80
84
|
return JSON.stringify(this.getParameters());
|
|
81
85
|
}
|
|
82
86
|
}
|
|
87
|
+
Command.hasParameters = false;
|
|
83
88
|
export default Command;
|
|
84
89
|
//# sourceMappingURL=Command.js.map
|
package/dist/Command.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Command.js","sourceRoot":"","sources":["../src/Command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,eAAoC,MAAM,4BAA4B,CAAC;AAC9E,OAAO,EAAC,MAAM,EAAC,MAAM
|
|
1
|
+
{"version":3,"file":"Command.js","sourceRoot":"","sources":["../src/Command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,eAAoC,MAAM,4BAA4B,CAAC;AAC9E,OAAO,EAAC,MAAM,EAAC,MAAM,2BAA2B,CAAC;AAiBjD;;GAEG;AACH,MAAe,OAAO;IAelB,oCAAoC;IACpC,MAAM,CAAC,KAAK;QACR,OAAO,KAAK,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IACxD,CAAC;IAED,gCAAgC;IAChC,MAAM,CAAC,OAAO;QACV,uEAAuE;QACvE,OAAO,GAAG,IAAI,CAAC,aAAa,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,YAAY,IAAI,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IAC3G,CAAC;IAED;;;;;;OAMG;IACH,mDAAmD;IACnD,2CAA2C;IAC3C,IAAI;IAEJ,6CAA6C;IAC7C,oDAAoD;IACpD,IAAI;IAEJ,kEAAkE;IAClE,iDAAiD;IAEjD,4EAA4E;IAC5E,2BAA2B;IAC3B,2IAA2I;IAC3I,aAAa;IACb,QAAQ;IAER,0DAA0D;IAE1D,wBAAwB;IACxB,2BAA2B;IAC3B,sEAAsE;IACtE,aAAa;IACb,QAAQ;IAER,oEAAoE;IACpE,gCAAgC;IAChC,4FAA4F;IAC5F,SAAS;IACT,IAAI;IAEJ;;;;;;OAMG;IACH,MAAM,CAAC,OAAO,CAAG,EAAU,EAAE,WAAwB;QACjD,MAAM,aAAa,GAAG,WAAW,EAAE,MAAM,IAAI,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;QAErD,IAAK,WAAW,IAAI,aAAa,EAAG;YAChC,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,aAAa,CAAC,CAAC;YAErE,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC3B,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;YAE/C,OAAO,UAAU,CAAC;SACrB;QAED,8BAA8B;QAC9B,OAAO,UAAU,CAAC;IACtB,CAAC;IAED,8BAA8B;IAC9B,aAAa;QACT,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED,kDAAkD;IAClD,OAAO;QACH,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAG,UAA6B,EAAE;QACnC,OAAO,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAED;;;;OAIG;IACH,MAAM;QACF,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IAChD,CAAC;;AApGM,qBAAa,GAAG,KAAK,CAAC;AAwGjC,eAAe,OAAO,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import BinaryBuffer from './BinaryBuffer.js';
|
|
2
|
+
import { TTime2000 } from './utils/time.js';
|
|
2
3
|
export interface IBatteryVoltage {
|
|
3
4
|
/**
|
|
4
5
|
* battery voltage value at low consumption, in mV;
|
|
@@ -62,10 +63,131 @@ export interface IChannelArchiveDays extends IChannel {
|
|
|
62
63
|
*/
|
|
63
64
|
dayList: Array<number>;
|
|
64
65
|
}
|
|
66
|
+
export interface IEventGasStatus {
|
|
67
|
+
/** the battery voltage has dropped below the set threshold */
|
|
68
|
+
isBatteryLow?: boolean;
|
|
69
|
+
/** there is a magnetic field influence */
|
|
70
|
+
isMagneticInfluence?: boolean;
|
|
71
|
+
/** button is release (device is unmounted) */
|
|
72
|
+
isButtonReleased?: boolean;
|
|
73
|
+
/** the device has detected a loss of connection to the server */
|
|
74
|
+
isConnectionLost?: boolean;
|
|
75
|
+
}
|
|
76
|
+
export interface IEvent2ChannelStatus {
|
|
77
|
+
/** the battery voltage has dropped below the set threshold */
|
|
78
|
+
isBatteryLow?: boolean;
|
|
79
|
+
/** the device has detected a loss of connection to the server */
|
|
80
|
+
isConnectionLost?: boolean;
|
|
81
|
+
/** the first channel is not active */
|
|
82
|
+
isFirstChannelInactive?: boolean;
|
|
83
|
+
/** the second channel is not active */
|
|
84
|
+
isSecondChannelInactive?: boolean;
|
|
85
|
+
}
|
|
86
|
+
export interface IEventElimpStatus {
|
|
87
|
+
/** the device has detected a loss of connection to the server */
|
|
88
|
+
isConnectionLost?: boolean;
|
|
89
|
+
}
|
|
90
|
+
export interface IEventWaterStatus {
|
|
91
|
+
/** the battery voltage has dropped below the set threshold */
|
|
92
|
+
isBatteryLow?: boolean;
|
|
93
|
+
/** the device has detected a loss of connection to the server */
|
|
94
|
+
isConnectionLost?: boolean;
|
|
95
|
+
}
|
|
96
|
+
export interface IEvent4ChannelStatus {
|
|
97
|
+
/** the battery voltage has dropped below the set threshold */
|
|
98
|
+
isBatteryLow?: boolean;
|
|
99
|
+
/** the device has detected a loss of connection to the server */
|
|
100
|
+
isConnectionLost?: boolean;
|
|
101
|
+
/** the first channel is not active */
|
|
102
|
+
isFirstChannelInactive?: boolean;
|
|
103
|
+
/** the second channel is not active */
|
|
104
|
+
isSecondChannelInactive?: boolean;
|
|
105
|
+
/** the third channel is not active */
|
|
106
|
+
isThirdChannelInactive?: boolean;
|
|
107
|
+
/** the forth channel is not active */
|
|
108
|
+
isForthChannelInactive?: boolean;
|
|
109
|
+
}
|
|
110
|
+
export interface IEventMtxStatus {
|
|
111
|
+
/** meter case is open */
|
|
112
|
+
isMeterCaseOpen?: boolean;
|
|
113
|
+
/** there is a magnetic field influence */
|
|
114
|
+
isMagneticInfluence?: boolean;
|
|
115
|
+
/** parameters set remotely */
|
|
116
|
+
isParametersSetRemotely?: boolean;
|
|
117
|
+
/** parameters set locally */
|
|
118
|
+
isParametersSetLocally?: boolean;
|
|
119
|
+
/** meter program restart */
|
|
120
|
+
isMeterProgramRestarted?: boolean;
|
|
121
|
+
/** incorrect password and lockout */
|
|
122
|
+
isLockedOut?: boolean;
|
|
123
|
+
/** time set */
|
|
124
|
+
isTimeSet?: boolean;
|
|
125
|
+
/** time correction */
|
|
126
|
+
isTimeCorrected?: boolean;
|
|
127
|
+
/** meter failure */
|
|
128
|
+
isMeterFailure?: boolean;
|
|
129
|
+
/** meter terminal box is open */
|
|
130
|
+
isMeterTerminalBoxOpen?: boolean;
|
|
131
|
+
/** meter module compartment is open */
|
|
132
|
+
isModuleCompartmentOpen?: boolean;
|
|
133
|
+
/** tariff plan changed */
|
|
134
|
+
isTariffPlanChanged?: boolean;
|
|
135
|
+
/** new tariff plan received */
|
|
136
|
+
isNewTariffPlanReceived?: boolean;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Initial values for pulse devices.
|
|
140
|
+
*/
|
|
141
|
+
interface IParameterInitialData {
|
|
142
|
+
/**
|
|
143
|
+
* 4 byte int BE
|
|
144
|
+
*/
|
|
145
|
+
value: number;
|
|
146
|
+
/**
|
|
147
|
+
* 4 byte int BE
|
|
148
|
+
*/
|
|
149
|
+
meterValue: number;
|
|
150
|
+
pulseCoefficient: number;
|
|
151
|
+
}
|
|
152
|
+
interface IParameterInitialDataMC extends IParameterInitialData {
|
|
153
|
+
/**
|
|
154
|
+
* Channel that accept initial values.
|
|
155
|
+
*/
|
|
156
|
+
channel: number;
|
|
157
|
+
}
|
|
158
|
+
interface IParameterAbsoluteDataStatus {
|
|
159
|
+
status: number;
|
|
160
|
+
}
|
|
161
|
+
interface IParameterAbsoluteDataStatusMC extends IParameterAbsoluteDataStatus {
|
|
162
|
+
/**
|
|
163
|
+
* Channel that accept status changing.
|
|
164
|
+
*/
|
|
165
|
+
channel: number;
|
|
166
|
+
}
|
|
167
|
+
export interface IParameter {
|
|
168
|
+
id: number;
|
|
169
|
+
data: TParameterData;
|
|
170
|
+
}
|
|
171
|
+
export type TEventStatus = IEventGasStatus | IEvent2ChannelStatus | IEventElimpStatus | IEventWaterStatus | IEvent4ChannelStatus | IEventMtxStatus;
|
|
172
|
+
type TParameterData = IParameterInitialData | IParameterInitialDataMC | IParameterAbsoluteDataStatus | IParameterAbsoluteDataStatusMC;
|
|
65
173
|
/**
|
|
66
174
|
* Command specific byte array manipulation.
|
|
67
175
|
*/
|
|
68
176
|
declare class CommandBinaryBuffer extends BinaryBuffer {
|
|
177
|
+
/**
|
|
178
|
+
* Get amount of bytes necessary to store an extended value.
|
|
179
|
+
*
|
|
180
|
+
* @param bits - amount of bits of original value
|
|
181
|
+
*
|
|
182
|
+
* @example
|
|
183
|
+
* ```js
|
|
184
|
+
* const bits = (16384).toString(2).length;
|
|
185
|
+
* const bytes = CommandBinaryBuffer.getExtendedValueSize(bits);
|
|
186
|
+
* // 16384 normally is stored in 2 bytes but for extended value 3 bytes are required
|
|
187
|
+
* ```
|
|
188
|
+
*/
|
|
189
|
+
static getExtendedValueSize(bits: number): number;
|
|
190
|
+
static getParameterSize(parameter: IParameter): number;
|
|
69
191
|
getExtendedValue(): number;
|
|
70
192
|
setExtendedValue(value: number): void;
|
|
71
193
|
/**
|
|
@@ -89,7 +211,7 @@ declare class CommandBinaryBuffer extends BinaryBuffer {
|
|
|
89
211
|
* Convert date or seconds to bytes.
|
|
90
212
|
* '2023-12-23' will be 0010111-1100-10111, so bytes: ['00101111', '10010111'] -> [47, 151]
|
|
91
213
|
*/
|
|
92
|
-
setDate(dateOrTime: Date |
|
|
214
|
+
setDate(dateOrTime: Date | TTime2000): void;
|
|
93
215
|
/**
|
|
94
216
|
* Retrieve device time from byte array.
|
|
95
217
|
*
|
|
@@ -101,17 +223,32 @@ declare class CommandBinaryBuffer extends BinaryBuffer {
|
|
|
101
223
|
hour: number;
|
|
102
224
|
};
|
|
103
225
|
setHours(hour: number, hours: number): void;
|
|
104
|
-
getTime():
|
|
105
|
-
setTime(value:
|
|
226
|
+
getTime(): TTime2000;
|
|
227
|
+
setTime(value: TTime2000): void;
|
|
106
228
|
getBatterVoltage(): IBatteryVoltage;
|
|
107
229
|
setBatterVoltage(batteryVoltage: IBatteryVoltage): void;
|
|
108
230
|
getChannelsValuesWithHourDiff(): {
|
|
109
231
|
hours: number;
|
|
110
|
-
startTime:
|
|
232
|
+
startTime: TTime2000;
|
|
111
233
|
channelList: Array<IChannelHours>;
|
|
112
234
|
};
|
|
113
|
-
setChannelsValuesWithHourDiff(hours: number, startTime:
|
|
235
|
+
setChannelsValuesWithHourDiff(hours: number, startTime: TTime2000, channelList: Array<IChannelHours>): void;
|
|
114
236
|
getChannelsWithAbsoluteValues(): Array<IChannelAbsoluteValue>;
|
|
115
237
|
setChannelsWithAbsoluteValues(channelList: Array<IChannelAbsoluteValue>): void;
|
|
238
|
+
static getEventStatusSize(hardwareType: number): number;
|
|
239
|
+
getEventStatus(hardwareType: number): TEventStatus;
|
|
240
|
+
setEventStatus(hardwareType: number, status: TEventStatus): void;
|
|
241
|
+
private getPulseCoefficient;
|
|
242
|
+
private setPulseCoefficient;
|
|
243
|
+
private getParameterInitialData;
|
|
244
|
+
private setParameterInitialData;
|
|
245
|
+
private getParameterInitialDataMC;
|
|
246
|
+
private setParameterInitialDataMC;
|
|
247
|
+
private getParameterAbsoluteDataStatus;
|
|
248
|
+
private setParameterAbsoluteDataStatus;
|
|
249
|
+
private getParameterAbsoluteDataStatusMC;
|
|
250
|
+
private setParameterAbsoluteDataStatusMC;
|
|
251
|
+
getParameter(): IParameter;
|
|
252
|
+
setParameter(parameter: IParameter): void;
|
|
116
253
|
}
|
|
117
254
|
export default CommandBinaryBuffer;
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import BinaryBuffer from './BinaryBuffer.js';
|
|
2
|
+
import * as bitSet from './utils/bitSet.js';
|
|
2
3
|
import { getDateFromSeconds, getSecondsFromDate } from './utils/time.js';
|
|
4
|
+
import * as hardwareTypes from './constants/hardwareTypes.js';
|
|
5
|
+
import * as deviceParameters from './constants/deviceParameters.js';
|
|
3
6
|
const INITIAL_YEAR = 2000;
|
|
4
7
|
const MONTH_BIT_SIZE = 4;
|
|
5
8
|
const DATE_BIT_SIZE = 5;
|
|
@@ -7,10 +10,123 @@ const YEAR_START_INDEX = 1;
|
|
|
7
10
|
const UNKNOWN_BATTERY_VOLTAGE = 4095;
|
|
8
11
|
const EXTEND_BIT_MASK = 0x80;
|
|
9
12
|
const LAST_BIT_INDEX = 7;
|
|
13
|
+
const GAS_HARDWARE_TYPES = [
|
|
14
|
+
hardwareTypes.GAZM0,
|
|
15
|
+
hardwareTypes.GAZM0NEW,
|
|
16
|
+
hardwareTypes.GAZM3,
|
|
17
|
+
hardwareTypes.GAZWLE
|
|
18
|
+
];
|
|
19
|
+
const TWO_CHANNELS_HARDWARE_TYPES = [
|
|
20
|
+
hardwareTypes.IMP2AS,
|
|
21
|
+
hardwareTypes.IMP2EU,
|
|
22
|
+
hardwareTypes.IMP2IN,
|
|
23
|
+
hardwareTypes.NOVATOR
|
|
24
|
+
];
|
|
25
|
+
const ELIMP_HARDWARE_TYPES = [
|
|
26
|
+
hardwareTypes.ELIMP
|
|
27
|
+
];
|
|
28
|
+
const WATER_HARDWARE_TYPES = [
|
|
29
|
+
hardwareTypes.WATER
|
|
30
|
+
];
|
|
31
|
+
const FOUR_CHANNELS_HARDWARE_TYPES = [
|
|
32
|
+
hardwareTypes.IMP4EU,
|
|
33
|
+
hardwareTypes.IMP4IN
|
|
34
|
+
];
|
|
35
|
+
const MTX_HARDWARE_TYPES = [
|
|
36
|
+
hardwareTypes.MTXLORA
|
|
37
|
+
];
|
|
38
|
+
const TWO_BYTES_HARDWARE_TYPES = [...FOUR_CHANNELS_HARDWARE_TYPES, ...MTX_HARDWARE_TYPES];
|
|
39
|
+
const gasBitMask = {
|
|
40
|
+
isBatteryLow: 2 ** 0,
|
|
41
|
+
isMagneticInfluence: 2 ** 1,
|
|
42
|
+
isButtonReleased: 2 ** 2,
|
|
43
|
+
isConnectionLost: 2 ** 3
|
|
44
|
+
};
|
|
45
|
+
const twoChannelBitMask = {
|
|
46
|
+
isBatteryLow: 2 ** 0,
|
|
47
|
+
isConnectionLost: 2 ** 3,
|
|
48
|
+
isFirstChannelInactive: 2 ** 4,
|
|
49
|
+
isSecondChannelInactive: 2 ** 5
|
|
50
|
+
};
|
|
51
|
+
const elimpBitMask = {
|
|
52
|
+
isConnectionLost: 2 ** 3
|
|
53
|
+
};
|
|
54
|
+
const waterBitMask = {
|
|
55
|
+
isBatteryLow: 2 ** 0,
|
|
56
|
+
isConnectionLost: 2 ** 3
|
|
57
|
+
};
|
|
58
|
+
const fourChannelBitMask = {
|
|
59
|
+
isBatteryLow: 2 ** 0,
|
|
60
|
+
isConnectionLost: 2 ** 3,
|
|
61
|
+
isFirstChannelInactive: 2 ** 4,
|
|
62
|
+
isSecondChannelInactive: 2 ** 5,
|
|
63
|
+
isThirdChannelInactive: 2 ** 6,
|
|
64
|
+
isForthChannelInactive: 2 ** 7
|
|
65
|
+
};
|
|
66
|
+
const mtxBitMask = {
|
|
67
|
+
isMeterCaseOpen: 2 ** 0,
|
|
68
|
+
isMagneticInfluence: 2 ** 1,
|
|
69
|
+
isParametersSetRemotely: 2 ** 2,
|
|
70
|
+
isParametersSetLocally: 2 ** 3,
|
|
71
|
+
isMeterProgramRestarted: 2 ** 4,
|
|
72
|
+
isLockedOut: 2 ** 5,
|
|
73
|
+
isTimeSet: 2 ** 6,
|
|
74
|
+
isTimeCorrected: 2 ** 7,
|
|
75
|
+
isMeterFailure: 2 ** 8,
|
|
76
|
+
isMeterTerminalBoxOpen: 2 ** 9,
|
|
77
|
+
isModuleCompartmentOpen: 2 ** 10,
|
|
78
|
+
isTariffPlanChanged: 2 ** 11,
|
|
79
|
+
isNewTariffPlanReceived: 2 ** 12
|
|
80
|
+
};
|
|
81
|
+
/**
|
|
82
|
+
* device parameter data size + byte for parameter id
|
|
83
|
+
*/
|
|
84
|
+
const parametersSizeMap = new Map([
|
|
85
|
+
[deviceParameters.INITIAL_DATA, 9 + 1],
|
|
86
|
+
[deviceParameters.ABSOLUTE_DATA_STATUS, 1 + 1],
|
|
87
|
+
[deviceParameters.INITIAL_DATA_MULTI_CHANNEL, 10 + 1],
|
|
88
|
+
[deviceParameters.ABSOLUTE_DATA_STATUS_MULTI_CHANNEL, 2 + 1]
|
|
89
|
+
]);
|
|
90
|
+
const byteToPulseCoefficientMap = new Map([
|
|
91
|
+
[0x80, 1000],
|
|
92
|
+
[0x81, 5000],
|
|
93
|
+
[0x82, 100],
|
|
94
|
+
[0x83, 10],
|
|
95
|
+
[0x84, 1],
|
|
96
|
+
[0x85, 0.1],
|
|
97
|
+
[0x86, 0.01]
|
|
98
|
+
]);
|
|
99
|
+
const pulseCoefficientToByteMap = new Map([...byteToPulseCoefficientMap.entries()].map(([key, value]) => [value, key]));
|
|
100
|
+
const isMSBSet = (value) => !!(value & 0x80);
|
|
10
101
|
/**
|
|
11
102
|
* Command specific byte array manipulation.
|
|
12
103
|
*/
|
|
13
104
|
class CommandBinaryBuffer extends BinaryBuffer {
|
|
105
|
+
/**
|
|
106
|
+
* Get amount of bytes necessary to store an extended value.
|
|
107
|
+
*
|
|
108
|
+
* @param bits - amount of bits of original value
|
|
109
|
+
*
|
|
110
|
+
* @example
|
|
111
|
+
* ```js
|
|
112
|
+
* const bits = (16384).toString(2).length;
|
|
113
|
+
* const bytes = CommandBinaryBuffer.getExtendedValueSize(bits);
|
|
114
|
+
* // 16384 normally is stored in 2 bytes but for extended value 3 bytes are required
|
|
115
|
+
* ```
|
|
116
|
+
*/
|
|
117
|
+
static getExtendedValueSize(bits) {
|
|
118
|
+
const extBits = Math.ceil(bits / 7);
|
|
119
|
+
const totalBits = bits + extBits;
|
|
120
|
+
const extBytes = Math.ceil(totalBits / 8);
|
|
121
|
+
return extBytes;
|
|
122
|
+
}
|
|
123
|
+
static getParameterSize(parameter) {
|
|
124
|
+
const size = parametersSizeMap.get(parameter.id);
|
|
125
|
+
if (size === undefined) {
|
|
126
|
+
throw new Error('unknown parameter id');
|
|
127
|
+
}
|
|
128
|
+
return size;
|
|
129
|
+
}
|
|
14
130
|
getExtendedValue() {
|
|
15
131
|
let value = 0;
|
|
16
132
|
let isByteExtended = true;
|
|
@@ -251,6 +367,165 @@ class CommandBinaryBuffer extends BinaryBuffer {
|
|
|
251
367
|
this.setExtendedValue(value);
|
|
252
368
|
}
|
|
253
369
|
}
|
|
370
|
+
static getEventStatusSize(hardwareType) {
|
|
371
|
+
return TWO_BYTES_HARDWARE_TYPES.includes(hardwareType) ? 2 : 1;
|
|
372
|
+
}
|
|
373
|
+
getEventStatus(hardwareType) {
|
|
374
|
+
let status;
|
|
375
|
+
if (GAS_HARDWARE_TYPES.includes(hardwareType)) {
|
|
376
|
+
status = bitSet.toObject(gasBitMask, this.getUint8());
|
|
377
|
+
}
|
|
378
|
+
else if (TWO_CHANNELS_HARDWARE_TYPES.includes(hardwareType)) {
|
|
379
|
+
status = bitSet.toObject(twoChannelBitMask, this.getUint8());
|
|
380
|
+
}
|
|
381
|
+
else if (ELIMP_HARDWARE_TYPES.includes(hardwareType)) {
|
|
382
|
+
status = bitSet.toObject(elimpBitMask, this.getUint8());
|
|
383
|
+
}
|
|
384
|
+
else if (WATER_HARDWARE_TYPES.includes(hardwareType)) {
|
|
385
|
+
status = bitSet.toObject(waterBitMask, this.getUint8());
|
|
386
|
+
}
|
|
387
|
+
else if (FOUR_CHANNELS_HARDWARE_TYPES.includes(hardwareType)) {
|
|
388
|
+
status = bitSet.toObject(fourChannelBitMask, this.getExtendedValue());
|
|
389
|
+
}
|
|
390
|
+
else if (MTX_HARDWARE_TYPES.includes(hardwareType)) {
|
|
391
|
+
status = bitSet.toObject(mtxBitMask, this.getUint16());
|
|
392
|
+
}
|
|
393
|
+
else {
|
|
394
|
+
throw new Error('wrong hardwareType');
|
|
395
|
+
}
|
|
396
|
+
return status;
|
|
397
|
+
}
|
|
398
|
+
setEventStatus(hardwareType, status) {
|
|
399
|
+
if (GAS_HARDWARE_TYPES.includes(hardwareType)) {
|
|
400
|
+
this.setUint8(bitSet.fromObject(gasBitMask, status));
|
|
401
|
+
}
|
|
402
|
+
else if (TWO_CHANNELS_HARDWARE_TYPES.includes(hardwareType)) {
|
|
403
|
+
this.setUint8(bitSet.fromObject(twoChannelBitMask, status));
|
|
404
|
+
}
|
|
405
|
+
else if (ELIMP_HARDWARE_TYPES.includes(hardwareType)) {
|
|
406
|
+
this.setUint8(bitSet.fromObject(elimpBitMask, status));
|
|
407
|
+
}
|
|
408
|
+
else if (WATER_HARDWARE_TYPES.includes(hardwareType)) {
|
|
409
|
+
this.setUint8(bitSet.fromObject(waterBitMask, status));
|
|
410
|
+
}
|
|
411
|
+
else if (FOUR_CHANNELS_HARDWARE_TYPES.includes(hardwareType)) {
|
|
412
|
+
this.setExtendedValue(bitSet.fromObject(fourChannelBitMask, status));
|
|
413
|
+
}
|
|
414
|
+
else if (MTX_HARDWARE_TYPES.includes(hardwareType)) {
|
|
415
|
+
this.setUint16(bitSet.fromObject(mtxBitMask, status));
|
|
416
|
+
}
|
|
417
|
+
else {
|
|
418
|
+
throw new Error('wrong hardwareType');
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
getPulseCoefficient() {
|
|
422
|
+
const pulseCoefficient = this.getUint8();
|
|
423
|
+
if (isMSBSet(pulseCoefficient)) {
|
|
424
|
+
const value = byteToPulseCoefficientMap.get(pulseCoefficient);
|
|
425
|
+
if (value) {
|
|
426
|
+
return value;
|
|
427
|
+
}
|
|
428
|
+
throw new Error('pulseCoefficient MSB is set, but value unknown');
|
|
429
|
+
}
|
|
430
|
+
return pulseCoefficient;
|
|
431
|
+
}
|
|
432
|
+
setPulseCoefficient(value) {
|
|
433
|
+
if (pulseCoefficientToByteMap.has(value)) {
|
|
434
|
+
const byte = pulseCoefficientToByteMap.get(value);
|
|
435
|
+
if (byte) {
|
|
436
|
+
this.setUint8(byte);
|
|
437
|
+
}
|
|
438
|
+
else {
|
|
439
|
+
throw new Error('pulseCoefficient MSB is set, but value unknown');
|
|
440
|
+
}
|
|
441
|
+
}
|
|
442
|
+
else {
|
|
443
|
+
this.setUint8(value);
|
|
444
|
+
}
|
|
445
|
+
}
|
|
446
|
+
getParameterInitialData() {
|
|
447
|
+
return {
|
|
448
|
+
meterValue: this.getUint32(false),
|
|
449
|
+
pulseCoefficient: this.getPulseCoefficient(),
|
|
450
|
+
value: this.getUint32(false)
|
|
451
|
+
};
|
|
452
|
+
}
|
|
453
|
+
setParameterInitialData(parameter) {
|
|
454
|
+
this.setUint32(parameter.meterValue, false);
|
|
455
|
+
this.setPulseCoefficient(parameter.pulseCoefficient);
|
|
456
|
+
this.setUint32(parameter.value, false);
|
|
457
|
+
}
|
|
458
|
+
getParameterInitialDataMC() {
|
|
459
|
+
return {
|
|
460
|
+
channel: this.getUint8(),
|
|
461
|
+
meterValue: this.getUint32(false),
|
|
462
|
+
pulseCoefficient: this.getPulseCoefficient(),
|
|
463
|
+
value: this.getUint32(false)
|
|
464
|
+
};
|
|
465
|
+
}
|
|
466
|
+
setParameterInitialDataMC(parameter) {
|
|
467
|
+
this.setUint8(parameter.channel);
|
|
468
|
+
this.setUint32(parameter.meterValue, false);
|
|
469
|
+
this.setPulseCoefficient(parameter.pulseCoefficient);
|
|
470
|
+
this.setUint32(parameter.value, false);
|
|
471
|
+
}
|
|
472
|
+
getParameterAbsoluteDataStatus() {
|
|
473
|
+
return { status: this.getUint8() };
|
|
474
|
+
}
|
|
475
|
+
setParameterAbsoluteDataStatus(parameter) {
|
|
476
|
+
this.setUint8(parameter.status);
|
|
477
|
+
}
|
|
478
|
+
getParameterAbsoluteDataStatusMC() {
|
|
479
|
+
return {
|
|
480
|
+
channel: this.getUint8(),
|
|
481
|
+
status: this.getUint8()
|
|
482
|
+
};
|
|
483
|
+
}
|
|
484
|
+
setParameterAbsoluteDataStatusMC(parameter) {
|
|
485
|
+
this.setUint8(parameter.channel);
|
|
486
|
+
this.setUint8(parameter.status);
|
|
487
|
+
}
|
|
488
|
+
getParameter() {
|
|
489
|
+
const id = this.getUint8();
|
|
490
|
+
let data;
|
|
491
|
+
switch (id) {
|
|
492
|
+
case deviceParameters.INITIAL_DATA:
|
|
493
|
+
data = this.getParameterInitialData();
|
|
494
|
+
break;
|
|
495
|
+
case deviceParameters.INITIAL_DATA_MULTI_CHANNEL:
|
|
496
|
+
data = this.getParameterInitialDataMC();
|
|
497
|
+
break;
|
|
498
|
+
case deviceParameters.ABSOLUTE_DATA_STATUS:
|
|
499
|
+
data = this.getParameterAbsoluteDataStatus();
|
|
500
|
+
break;
|
|
501
|
+
case deviceParameters.ABSOLUTE_DATA_STATUS_MULTI_CHANNEL:
|
|
502
|
+
data = this.getParameterAbsoluteDataStatusMC();
|
|
503
|
+
break;
|
|
504
|
+
default:
|
|
505
|
+
throw new Error(`parameter ${id} is not supported`);
|
|
506
|
+
}
|
|
507
|
+
return { id, data };
|
|
508
|
+
}
|
|
509
|
+
setParameter(parameter) {
|
|
510
|
+
const { id, data } = parameter;
|
|
511
|
+
this.setUint8(id);
|
|
512
|
+
switch (id) {
|
|
513
|
+
case deviceParameters.INITIAL_DATA:
|
|
514
|
+
this.setParameterInitialData(data);
|
|
515
|
+
break;
|
|
516
|
+
case deviceParameters.INITIAL_DATA_MULTI_CHANNEL:
|
|
517
|
+
this.setParameterInitialDataMC(data);
|
|
518
|
+
break;
|
|
519
|
+
case deviceParameters.ABSOLUTE_DATA_STATUS:
|
|
520
|
+
this.setParameterAbsoluteDataStatus(data);
|
|
521
|
+
break;
|
|
522
|
+
case deviceParameters.ABSOLUTE_DATA_STATUS_MULTI_CHANNEL:
|
|
523
|
+
this.setParameterAbsoluteDataStatusMC(data);
|
|
524
|
+
break;
|
|
525
|
+
default:
|
|
526
|
+
throw new Error(`parameter ${id} is not supported`);
|
|
527
|
+
}
|
|
528
|
+
}
|
|
254
529
|
}
|
|
255
530
|
export default CommandBinaryBuffer;
|
|
256
531
|
//# sourceMappingURL=CommandBinaryBuffer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandBinaryBuffer.js","sourceRoot":"","sources":["../src/CommandBinaryBuffer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CommandBinaryBuffer.js","sourceRoot":"","sources":["../src/CommandBinaryBuffer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* [[include:commands/downlink/CorrectTime2000.md]]
|
|
3
|
-
*
|
|
4
|
-
* @packageDocumentation
|
|
5
|
-
*/
|
|
6
1
|
import Command from '../../Command.js';
|
|
7
2
|
/**
|
|
8
3
|
* CorrectTime2000 command parameters
|
|
@@ -42,7 +37,7 @@ declare class CorrectTime2000 extends Command {
|
|
|
42
37
|
constructor(parameters: IDownlinkCorrectTime2000Parameters);
|
|
43
38
|
static readonly id = 12;
|
|
44
39
|
static readonly directionType = 1;
|
|
45
|
-
static readonly
|
|
40
|
+
static readonly hasParameters = true;
|
|
46
41
|
static fromBytes(data: Uint8Array): CorrectTime2000;
|
|
47
42
|
toBytes(): Uint8Array;
|
|
48
43
|
}
|
|
@@ -1,13 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* [[include:commands/downlink/CorrectTime2000.md]]
|
|
3
|
-
*
|
|
4
|
-
* @packageDocumentation
|
|
5
|
-
*/
|
|
6
1
|
import Command from '../../Command.js';
|
|
7
2
|
import BinaryBuffer from '../../BinaryBuffer.js';
|
|
8
|
-
import { DOWNLINK } from '../../constants/
|
|
3
|
+
import { DOWNLINK } from '../../constants/directions.js';
|
|
9
4
|
const COMMAND_ID = 0x0c;
|
|
10
|
-
const COMMAND_TITLE = 'CORRECT_TIME_2000';
|
|
11
5
|
const COMMAND_BODY_SIZE = 2;
|
|
12
6
|
/**
|
|
13
7
|
* Downlink command.
|
|
@@ -57,6 +51,6 @@ class CorrectTime2000 extends Command {
|
|
|
57
51
|
}
|
|
58
52
|
CorrectTime2000.id = COMMAND_ID;
|
|
59
53
|
CorrectTime2000.directionType = DOWNLINK;
|
|
60
|
-
CorrectTime2000.
|
|
54
|
+
CorrectTime2000.hasParameters = true;
|
|
61
55
|
export default CorrectTime2000;
|
|
62
56
|
//# sourceMappingURL=CorrectTime2000.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CorrectTime2000.js","sourceRoot":"","sources":["../../../src/commands/downlink/CorrectTime2000.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"CorrectTime2000.js","sourceRoot":"","sources":["../../../src/commands/downlink/CorrectTime2000.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,YAAY,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAC,QAAQ,EAAC,MAAM,+BAA+B,CAAC;AAGvD,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAqB5B;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,eAAgB,SAAQ,OAAO;IACjC,YAAqB,UAA8C;QAC/D,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAoC;IAEnE,CAAC;IAUD,oCAAoC;IACpC,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,IAAK,IAAI,CAAC,UAAU,KAAK,iBAAiB,EAAG;YACzC,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,wBAAwB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;SAChF;QAED,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC7C,MAAM,UAAU,GAAG;YACf,cAAc,EAAE,MAAM,CAAC,QAAQ,EAAE;YACjC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE;SAC5B,CAAC;QAEF,IAAK,CAAC,MAAM,CAAC,OAAO,EAAG;YACnB,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,8BAA8B,CAAC,CAAC;SACpE;QAED,OAAO,IAAI,eAAe,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;IAED,0CAA0C;IAC1C,OAAO;QACH,MAAM,EAAC,cAAc,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;QAE1D,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;QAChC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAExB,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AAnCe,kBAAE,GAAG,UAAU,CAAC;AAEhB,6BAAa,GAAG,QAAQ,CAAC;AAEzB,6BAAa,GAAG,IAAI,CAAC;AAmCzC,eAAe,eAAe,CAAC"}
|