jooby-codec 3.7.0 → 3.8.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 (79) hide show
  1. package/dist/analog/CommandBinaryBuffer.d.ts +9 -0
  2. package/dist/analog/CommandBinaryBuffer.js +19 -0
  3. package/dist/analog/CommandBinaryBuffer.js.map +1 -1
  4. package/dist/analog/DataSegmentsCollector.d.ts +7 -0
  5. package/dist/analog/DataSegmentsCollector.js +61 -0
  6. package/dist/analog/DataSegmentsCollector.js.map +1 -0
  7. package/dist/analog/commands/DataSegmentBase.d.ts +11 -0
  8. package/dist/analog/commands/DataSegmentBase.js +41 -0
  9. package/dist/analog/commands/DataSegmentBase.js.map +1 -0
  10. package/dist/analog/commands/downlink/DataSegment.d.ts +4 -0
  11. package/dist/analog/commands/downlink/DataSegment.js +7 -0
  12. package/dist/analog/commands/downlink/DataSegment.js.map +1 -0
  13. package/dist/analog/commands/downlink/index.d.ts +1 -0
  14. package/dist/analog/commands/downlink/index.js +1 -0
  15. package/dist/analog/commands/downlink/index.js.map +1 -1
  16. package/dist/analog/commands/uplink/DataSegment.d.ts +4 -0
  17. package/dist/analog/commands/uplink/DataSegment.js +7 -0
  18. package/dist/analog/commands/uplink/DataSegment.js.map +1 -0
  19. package/dist/analog/commands/uplink/index.d.ts +1 -0
  20. package/dist/analog/commands/uplink/index.js +1 -0
  21. package/dist/analog/commands/uplink/index.js.map +1 -1
  22. package/dist/analog/constants/commandRelations.d.ts +2 -2
  23. package/dist/analog/constants/commandRelations.js +1 -0
  24. package/dist/analog/constants/commandRelations.js.map +1 -1
  25. package/dist/index.d.ts +1 -0
  26. package/dist/index.js +1 -0
  27. package/dist/index.js.map +1 -1
  28. package/dist/mtx/message.d.ts +2 -1
  29. package/dist/mtx/message.js +8 -6
  30. package/dist/mtx/message.js.map +1 -1
  31. package/dist/mtxLora/Command.d.ts +1 -1
  32. package/dist/mtxLora/Command.js +0 -3
  33. package/dist/mtxLora/Command.js.map +1 -1
  34. package/dist/mtxLora/CommandBinaryBuffer.d.ts +44 -8
  35. package/dist/mtxLora/CommandBinaryBuffer.js +260 -16
  36. package/dist/mtxLora/CommandBinaryBuffer.js.map +1 -1
  37. package/dist/mtxLora/UnknownCommand.d.ts +12 -0
  38. package/dist/mtxLora/UnknownCommand.js +17 -0
  39. package/dist/mtxLora/UnknownCommand.js.map +1 -0
  40. package/dist/mtxLora/commands/downlink/GetHalfhoursEnergies.d.ts +20 -0
  41. package/dist/mtxLora/commands/downlink/GetHalfhoursEnergies.js +61 -0
  42. package/dist/mtxLora/commands/downlink/GetHalfhoursEnergies.js.map +1 -0
  43. package/dist/mtxLora/commands/downlink/index.d.ts +1 -1
  44. package/dist/mtxLora/commands/downlink/index.js +1 -1
  45. package/dist/mtxLora/commands/downlink/index.js.map +1 -1
  46. package/dist/mtxLora/commands/uplink/GetDayEnergies.d.ts +17 -0
  47. package/dist/mtxLora/commands/uplink/GetDayEnergies.js +59 -0
  48. package/dist/mtxLora/commands/uplink/GetDayEnergies.js.map +1 -0
  49. package/dist/mtxLora/commands/uplink/GetDayMaxPower.d.ts +17 -0
  50. package/dist/mtxLora/commands/uplink/GetDayMaxPower.js +67 -0
  51. package/dist/mtxLora/commands/uplink/GetDayMaxPower.js.map +1 -0
  52. package/dist/mtxLora/commands/uplink/GetHalfhoursEnergies.d.ts +19 -0
  53. package/dist/mtxLora/commands/uplink/GetHalfhoursEnergies.js +68 -0
  54. package/dist/mtxLora/commands/uplink/GetHalfhoursEnergies.js.map +1 -0
  55. package/dist/mtxLora/commands/uplink/index.d.ts +3 -1
  56. package/dist/mtxLora/commands/uplink/index.js +3 -1
  57. package/dist/mtxLora/commands/uplink/index.js.map +1 -1
  58. package/dist/mtxLora/constants/commandRelations.d.ts +2 -2
  59. package/dist/mtxLora/constants/commandRelations.js +1 -1
  60. package/dist/mtxLora/constants/commandRelations.js.map +1 -1
  61. package/dist/mtxLora/index.d.ts +1 -0
  62. package/dist/mtxLora/index.js +1 -0
  63. package/dist/mtxLora/index.js.map +1 -1
  64. package/dist/mtxLora/message.d.ts +24 -0
  65. package/dist/mtxLora/message.js +81 -0
  66. package/dist/mtxLora/message.js.map +1 -0
  67. package/dist/utils/permutations.d.ts +2 -0
  68. package/dist/utils/permutations.js +15 -0
  69. package/dist/utils/permutations.js.map +1 -0
  70. package/package.json +1 -1
  71. package/dist/mtxLora/commands/MtxCommandBase.d.ts +0 -11
  72. package/dist/mtxLora/commands/MtxCommandBase.js +0 -44
  73. package/dist/mtxLora/commands/MtxCommandBase.js.map +0 -1
  74. package/dist/mtxLora/commands/downlink/MtxCommand.d.ts +0 -4
  75. package/dist/mtxLora/commands/downlink/MtxCommand.js +0 -7
  76. package/dist/mtxLora/commands/downlink/MtxCommand.js.map +0 -1
  77. package/dist/mtxLora/commands/uplink/MtxCommand.d.ts +0 -4
  78. package/dist/mtxLora/commands/uplink/MtxCommand.js +0 -7
  79. package/dist/mtxLora/commands/uplink/MtxCommand.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Command.js","sourceRoot":"","sources":["../../src/mtxLora/Command.ts"],"names":[],"mappings":"AACA,OAAO,eAAe,MAAM,6BAA6B,CAAC;AAC1D,OAAO,gBAAgB,MAAM,8BAA8B,CAAC;AAC5D,OAAO,kBAAkB,MAAM,gCAAgC,CAAC;AAehE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAMrC,MAAe,OAAO;IAAtB;QAeI,SAAI,GAAG,CAAC,CAAC;IAkCb,CAAC;IA9BG,MAAM,CAAC,KAAK;QACR,OAAO,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC;IAGD,aAAa;QACT,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAGD,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,QAAQ;QACJ,OAAO,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IAC9C,CAAC;IAOD,MAAM;QACF,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IAChD,CAAC;;AAvCM,qBAAa,GAAG,KAAK,AAAR,CAAS;AA2CjC,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"Command.js","sourceRoot":"","sources":["../../src/mtxLora/Command.ts"],"names":[],"mappings":"AACA,OAAO,eAAe,MAAM,6BAA6B,CAAC;AAC1D,OAAO,gBAAgB,MAAM,8BAA8B,CAAC;AAC5D,OAAO,kBAAkB,MAAM,gCAAgC,CAAC;AAgBhE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAMrC,MAAe,OAAO;IAgBlB,MAAM,CAAC,KAAK;QACR,OAAO,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC;IAGD,aAAa;QACT,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAGD,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,QAAQ;QACJ,OAAO,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IAC9C,CAAC;IAOD,MAAM;QACF,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IAChD,CAAC;;AApCM,qBAAa,GAAG,KAAK,CAAC;AAwCjC,eAAe,OAAO,CAAC"}
@@ -1,14 +1,50 @@
1
1
  import BinaryBuffer from '../utils/BinaryBuffer.js';
2
- export interface IMtxCommand {
3
- sequence: number;
4
- fragmentIndex: number;
5
- fragmentsNumber: number;
6
- last: boolean;
7
- data: Uint8Array;
2
+ export interface IDate {
3
+ year: number;
4
+ month: number;
5
+ day: number;
8
6
  }
7
+ export interface IEnergies<T = number> {
8
+ aPlus?: T;
9
+ aPlusRPlus?: T;
10
+ aPlusRMinus?: T;
11
+ aMinus?: T;
12
+ aMinusRPlus?: T;
13
+ aMinusRMinus?: T;
14
+ }
15
+ interface IPowerMax {
16
+ hours: number;
17
+ minutes: number;
18
+ power: number;
19
+ }
20
+ export type TEnergiesFlags = IEnergies<boolean>;
21
+ type THalfhoursEnergy = Array<number | undefined>;
22
+ export type THalfhoursEnergies = IEnergies<THalfhoursEnergy>;
23
+ export type TTariffsEnergies = Array<IEnergies>;
24
+ export type TTariffsPowerMax = Array<IEnergies<IPowerMax>>;
9
25
  declare class CommandBinaryBuffer extends BinaryBuffer {
10
26
  constructor(dataOrLength: Uint8Array | number | string);
11
- getMtxCommand(): IMtxCommand;
12
- setMtxCommand(value: IMtxCommand): void;
27
+ getDate(): IDate;
28
+ setDate({ year, month, day }: IDate): void;
29
+ getEnergiesFlags(): TEnergiesFlags;
30
+ setEnergiesFlags<T>(energies: IEnergies<T>): void;
31
+ getHalfhoursEnergy(halfhoursNumber: number): THalfhoursEnergy;
32
+ setHalfhoursEnergy(halfhours: THalfhoursEnergy | undefined): void;
33
+ getHalfhoursEnergies(energiesFlags: TEnergiesFlags, halfhoursNumber: number): THalfhoursEnergies;
34
+ setHalfhoursEnergies(energies: THalfhoursEnergies): void;
35
+ getAPlusTariffEnergies(energyFlags: number): IEnergies;
36
+ setAPlusTariffEnergies(energies: IEnergies | undefined): void;
37
+ getAMinusTariffEnergies(energyFlags: number): IEnergies;
38
+ setAMinusTariffEnergies(energies: IEnergies | undefined): void;
39
+ getTariffsEnergies(): TTariffsEnergies;
40
+ setTariffsEnergies(tariffs: TTariffsEnergies): void;
41
+ getPowerMax(): IPowerMax;
42
+ setPowerMax(value: IPowerMax | undefined): void;
43
+ getAPlusTariffPowerMax(energyFlags: number): IEnergies<IPowerMax>;
44
+ setAPlusTariffPowerMax(energies: IEnergies<IPowerMax> | undefined): void;
45
+ getAMinusTariffPowerMax(energyFlags: number): IEnergies<IPowerMax>;
46
+ setAMinusTariffPowerMax(energies: IEnergies<IPowerMax> | undefined): void;
47
+ getTariffsPowerMax(): TTariffsPowerMax;
48
+ setTariffsPowerMax(tariffs: TTariffsPowerMax): void;
13
49
  }
14
50
  export default CommandBinaryBuffer;
@@ -1,27 +1,271 @@
1
1
  import BinaryBuffer from '../utils/BinaryBuffer.js';
2
- import { extractBits, fillBits } from '../utils/bitSet.js';
2
+ import * as bitSet from '../utils/bitSet.js';
3
+ const UNDEFINED_ENERGY_VALUE = 0xffffffff;
4
+ const TARIFF_NUMBER = 4;
5
+ const energiesMask = {
6
+ aPlus: 0x01,
7
+ aPlusRPlus: 0x02,
8
+ aPlusRMinus: 0x04,
9
+ aMinus: 0x08,
10
+ aMinusRPlus: 0x10,
11
+ aMinusRMinus: 0x20
12
+ };
13
+ const getEnergiesFlags = (energies) => {
14
+ const booleanObject = Object.fromEntries(Object.entries(energies).map(([name, value]) => [name, !!value]));
15
+ return bitSet.fromObject(energiesMask, booleanObject);
16
+ };
17
+ const getAPlusTariffBit = (tariff) => (tariff < TARIFF_NUMBER ? (1 << tariff) : 0);
18
+ const getAMinusTariffBit = (tariff) => (tariff < TARIFF_NUMBER ? ((1 << tariff) << 4) : 0);
19
+ const getTariffEnergiesFlag = (tariff, energies) => {
20
+ let flag = 0;
21
+ if (tariff < TARIFF_NUMBER) {
22
+ if (energies.aPlus || energies.aPlusRPlus || energies.aPlusRMinus) {
23
+ flag |= getAPlusTariffBit(tariff);
24
+ }
25
+ if (energies.aMinus || energies.aMinusRPlus || energies.aMinusRMinus) {
26
+ flag |= getAMinusTariffBit(tariff);
27
+ }
28
+ }
29
+ return flag;
30
+ };
3
31
  class CommandBinaryBuffer extends BinaryBuffer {
4
32
  constructor(dataOrLength) {
5
33
  super(dataOrLength, false);
6
34
  }
7
- getMtxCommand() {
8
- const sequence = this.getUint8();
9
- const flag = this.getUint8();
35
+ getDate() {
36
+ const datePart1 = this.getUint8();
37
+ const datePart2 = this.getUint8();
10
38
  return {
11
- sequence,
12
- fragmentIndex: extractBits(flag, 3, 1),
13
- fragmentsNumber: extractBits(flag, 3, 5),
14
- last: Boolean(extractBits(flag, 1, 8)),
15
- data: this.getBytesLeft()
39
+ year: datePart1 >> 1,
40
+ month: ((datePart1 & 1) << 4) | (datePart2 >> 5),
41
+ day: datePart2 & 0x1f
16
42
  };
17
43
  }
18
- setMtxCommand(value) {
19
- let flag = fillBits(0, 3, 1, value.fragmentIndex);
20
- flag = fillBits(flag, 3, 5, value.fragmentsNumber);
21
- flag = fillBits(flag, 1, 8, +value.last);
22
- this.setUint8(value.sequence);
23
- this.setUint8(flag);
24
- this.setBytes(value.data);
44
+ setDate({ year, month, day }) {
45
+ const date1 = (year << 1) | (month >> 3);
46
+ const date2 = ((month & 0x03) << 5) | (day & 0x1f);
47
+ this.setUint8(date1);
48
+ this.setUint8(date2);
49
+ }
50
+ getEnergiesFlags() {
51
+ const byte = this.getUint8();
52
+ return bitSet.toObject(energiesMask, byte);
53
+ }
54
+ setEnergiesFlags(energies) {
55
+ this.setUint8(getEnergiesFlags(energies));
56
+ }
57
+ getHalfhoursEnergy(halfhoursNumber) {
58
+ const halfhours = [];
59
+ for (let index = 0; index < halfhoursNumber; index++) {
60
+ const value = this.getUint32();
61
+ halfhours.push(value === UNDEFINED_ENERGY_VALUE ? undefined : value);
62
+ }
63
+ return halfhours;
64
+ }
65
+ setHalfhoursEnergy(halfhours) {
66
+ if (halfhours) {
67
+ for (let index = 0; index < halfhours.length; index++) {
68
+ const value = halfhours[index];
69
+ this.setUint32(value === undefined ? UNDEFINED_ENERGY_VALUE : value);
70
+ }
71
+ }
72
+ }
73
+ getHalfhoursEnergies(energiesFlags, halfhoursNumber) {
74
+ const energies = {};
75
+ if (energiesFlags.aPlus) {
76
+ energies.aPlus = this.getHalfhoursEnergy(halfhoursNumber);
77
+ }
78
+ if (energiesFlags.aPlusRPlus) {
79
+ energies.aPlusRPlus = this.getHalfhoursEnergy(halfhoursNumber);
80
+ }
81
+ if (energiesFlags.aPlusRMinus) {
82
+ energies.aPlusRMinus = this.getHalfhoursEnergy(halfhoursNumber);
83
+ }
84
+ if (energiesFlags.aMinus) {
85
+ energies.aMinus = this.getHalfhoursEnergy(halfhoursNumber);
86
+ }
87
+ if (energiesFlags.aMinusRPlus) {
88
+ energies.aMinusRPlus = this.getHalfhoursEnergy(halfhoursNumber);
89
+ }
90
+ if (energiesFlags.aMinusRMinus) {
91
+ energies.aMinusRMinus = this.getHalfhoursEnergy(halfhoursNumber);
92
+ }
93
+ return energies;
94
+ }
95
+ setHalfhoursEnergies(energies) {
96
+ this.setHalfhoursEnergy(energies.aPlus);
97
+ this.setHalfhoursEnergy(energies.aPlusRPlus);
98
+ this.setHalfhoursEnergy(energies.aPlusRMinus);
99
+ this.setHalfhoursEnergy(energies.aMinus);
100
+ this.setHalfhoursEnergy(energies.aMinusRPlus);
101
+ this.setHalfhoursEnergy(energies.aMinusRMinus);
102
+ }
103
+ getAPlusTariffEnergies(energyFlags) {
104
+ const energies = {};
105
+ if (energyFlags & energiesMask.aPlus) {
106
+ energies.aPlus = this.getUint32();
107
+ }
108
+ if (energyFlags & energiesMask.aPlusRPlus) {
109
+ energies.aPlusRPlus = this.getUint32();
110
+ }
111
+ if (energyFlags & energiesMask.aPlusRMinus) {
112
+ energies.aPlusRMinus = this.getUint32();
113
+ }
114
+ return energies;
115
+ }
116
+ setAPlusTariffEnergies(energies) {
117
+ if (energies) {
118
+ if (energies.aPlus) {
119
+ this.setUint32(energies.aPlus);
120
+ }
121
+ if (energies.aPlusRPlus) {
122
+ this.setUint32(energies.aPlusRPlus);
123
+ }
124
+ if (energies.aPlusRMinus) {
125
+ this.setUint32(energies.aPlusRMinus);
126
+ }
127
+ }
128
+ }
129
+ getAMinusTariffEnergies(energyFlags) {
130
+ const energies = {};
131
+ if (energyFlags & energiesMask.aMinus) {
132
+ energies.aMinus = this.getUint32();
133
+ }
134
+ if (energyFlags & energiesMask.aMinusRPlus) {
135
+ energies.aMinusRPlus = this.getUint32();
136
+ }
137
+ if (energyFlags & energiesMask.aMinusRMinus) {
138
+ energies.aMinusRMinus = this.getUint32();
139
+ }
140
+ return energies;
141
+ }
142
+ setAMinusTariffEnergies(energies) {
143
+ if (energies) {
144
+ if (energies.aMinus) {
145
+ this.setUint32(energies.aMinus);
146
+ }
147
+ if (energies.aMinusRPlus) {
148
+ this.setUint32(energies.aMinusRPlus);
149
+ }
150
+ if (energies.aMinusRMinus) {
151
+ this.setUint32(energies.aMinusRMinus);
152
+ }
153
+ }
154
+ }
155
+ getTariffsEnergies() {
156
+ const energyFlags = this.getUint8();
157
+ const tariffFlags = this.getUint8();
158
+ const tariffs = [];
159
+ for (let index = 0; index < TARIFF_NUMBER; index++) {
160
+ if (tariffFlags & getAPlusTariffBit(index)) {
161
+ tariffs[index] = this.getAPlusTariffEnergies(energyFlags);
162
+ }
163
+ }
164
+ for (let index = 0; index < TARIFF_NUMBER; index++) {
165
+ if (tariffFlags & getAMinusTariffBit(index)) {
166
+ tariffs[index] = { ...tariffs[index], ...this.getAMinusTariffEnergies(energyFlags) };
167
+ }
168
+ }
169
+ return tariffs;
170
+ }
171
+ setTariffsEnergies(tariffs) {
172
+ let energiesFlags = 0;
173
+ let tariffsFlags = 0;
174
+ tariffs.forEach((tariff, index) => {
175
+ if (tariff) {
176
+ energiesFlags |= getEnergiesFlags(tariff);
177
+ tariffsFlags |= getTariffEnergiesFlag(index, tariff);
178
+ }
179
+ });
180
+ this.setUint8(energiesFlags);
181
+ this.setUint8(tariffsFlags);
182
+ tariffs.forEach(tariff => this.setAPlusTariffEnergies(tariff));
183
+ tariffs.forEach(tariff => this.setAMinusTariffEnergies(tariff));
184
+ }
185
+ getPowerMax() {
186
+ return {
187
+ hours: this.getUint8(),
188
+ minutes: this.getUint8(),
189
+ power: this.getUint32()
190
+ };
191
+ }
192
+ setPowerMax(value) {
193
+ if (value) {
194
+ const { hours, minutes, power } = value;
195
+ this.setUint8(hours);
196
+ this.setUint8(minutes);
197
+ this.setUint32(power);
198
+ }
199
+ }
200
+ getAPlusTariffPowerMax(energyFlags) {
201
+ const energies = {};
202
+ if (energyFlags & energiesMask.aPlus) {
203
+ energies.aPlus = this.getPowerMax();
204
+ }
205
+ if (energyFlags & energiesMask.aPlusRPlus) {
206
+ energies.aPlusRPlus = this.getPowerMax();
207
+ }
208
+ if (energyFlags & energiesMask.aPlusRMinus) {
209
+ energies.aPlusRMinus = this.getPowerMax();
210
+ }
211
+ return energies;
212
+ }
213
+ setAPlusTariffPowerMax(energies) {
214
+ if (energies) {
215
+ this.setPowerMax(energies.aPlus);
216
+ this.setPowerMax(energies.aPlusRPlus);
217
+ this.setPowerMax(energies.aPlusRPlus);
218
+ }
219
+ }
220
+ getAMinusTariffPowerMax(energyFlags) {
221
+ const energies = {};
222
+ if (energyFlags & energiesMask.aMinus) {
223
+ energies.aMinus = this.getPowerMax();
224
+ }
225
+ if (energyFlags & energiesMask.aMinusRPlus) {
226
+ energies.aMinusRPlus = this.getPowerMax();
227
+ }
228
+ if (energyFlags & energiesMask.aMinusRMinus) {
229
+ energies.aMinusRMinus = this.getPowerMax();
230
+ }
231
+ return energies;
232
+ }
233
+ setAMinusTariffPowerMax(energies) {
234
+ if (energies) {
235
+ this.setPowerMax(energies.aMinus);
236
+ this.setPowerMax(energies.aMinusRPlus);
237
+ this.setPowerMax(energies.aMinusRMinus);
238
+ }
239
+ }
240
+ getTariffsPowerMax() {
241
+ const energyFlags = this.getUint8();
242
+ const tariffFlags = this.getUint8();
243
+ const tariffs = [];
244
+ for (let index = 0; index < TARIFF_NUMBER; index++) {
245
+ if (tariffFlags & getAPlusTariffBit(index)) {
246
+ tariffs[index] = this.getAPlusTariffPowerMax(energyFlags);
247
+ }
248
+ }
249
+ for (let index = 0; index < TARIFF_NUMBER; index++) {
250
+ if (tariffFlags & getAMinusTariffBit(index)) {
251
+ tariffs[index] = { ...tariffs[index], ...this.getAMinusTariffPowerMax(energyFlags) };
252
+ }
253
+ }
254
+ return tariffs;
255
+ }
256
+ setTariffsPowerMax(tariffs) {
257
+ let energiesFlags = 0;
258
+ let tariffsFlags = 0;
259
+ tariffs.forEach((tariff, index) => {
260
+ if (tariff) {
261
+ energiesFlags |= getEnergiesFlags(tariff);
262
+ tariffsFlags |= getTariffEnergiesFlag(index, tariff);
263
+ }
264
+ });
265
+ this.setUint8(energiesFlags);
266
+ this.setUint8(tariffsFlags);
267
+ tariffs.forEach(tariff => this.setAPlusTariffPowerMax(tariff));
268
+ tariffs.forEach(tariff => this.setAMinusTariffPowerMax(tariff));
25
269
  }
26
270
  }
27
271
  export default CommandBinaryBuffer;
@@ -1 +1 @@
1
- {"version":3,"file":"CommandBinaryBuffer.js","sourceRoot":"","sources":["../../src/mtxLora/CommandBinaryBuffer.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAC,WAAW,EAAE,QAAQ,EAAC,MAAM,oBAAoB,CAAC;AAezD,MAAM,mBAAoB,SAAQ,YAAY;IAC1C,YAAc,YAA0C;QAEpD,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,aAAa;QACT,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAE7B,OAAO;YACH,QAAQ;YACR,aAAa,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YACtC,eAAe,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YACxC,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACtC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE;SAC5B,CAAC;IACN,CAAC;IAED,aAAa,CAAG,KAAkB;QAC9B,IAAI,IAAI,GAAG,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;QAClD,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;QACnD,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEzC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC9B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACpB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;CACJ;AAGD,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"CommandBinaryBuffer.js","sourceRoot":"","sources":["../../src/mtxLora/CommandBinaryBuffer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import Command from './Command.js';
2
+ interface IUnknownCommandParameters {
3
+ id: number;
4
+ data: Uint8Array;
5
+ }
6
+ declare class UnknownCommand extends Command {
7
+ parameters: IUnknownCommandParameters;
8
+ constructor(parameters: IUnknownCommandParameters);
9
+ static fromBytes(id: number, data: Uint8Array): UnknownCommand;
10
+ toBytes(): Uint8Array;
11
+ }
12
+ export default UnknownCommand;
@@ -0,0 +1,17 @@
1
+ import Command from './Command.js';
2
+ class UnknownCommand extends Command {
3
+ constructor(parameters) {
4
+ super();
5
+ this.parameters = parameters;
6
+ }
7
+ static fromBytes(id, data) {
8
+ const parameters = { id, data };
9
+ return new UnknownCommand(parameters);
10
+ }
11
+ toBytes() {
12
+ const { id, data } = this.parameters;
13
+ return new Uint8Array([id, ...data]);
14
+ }
15
+ }
16
+ export default UnknownCommand;
17
+ //# sourceMappingURL=UnknownCommand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UnknownCommand.js","sourceRoot":"","sources":["../../src/mtxLora/UnknownCommand.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,cAAc,CAAC;AAiBnC,MAAM,cAAe,SAAQ,OAAO;IAChC,YAAqB,UAAqC;QACtD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAA2B;IAE1D,CAAC;IAGD,MAAM,CAAC,SAAS,CAAG,EAAU,EAAE,IAAgB;QAC3C,MAAM,UAAU,GAA8B,EAAC,EAAE,EAAE,IAAI,EAAC,CAAC;QAEzD,OAAO,IAAI,cAAc,CAAC,UAAU,CAAC,CAAC;IAC1C,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,EAAE,EAAE,IAAI,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAEnC,OAAO,IAAI,UAAU,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;IACzC,CAAC;CACJ;AAED,eAAe,cAAc,CAAC"}
@@ -0,0 +1,20 @@
1
+ import Command, { TCommandExampleList } from '../../Command.js';
2
+ import { IDate, TEnergiesFlags } from '../../CommandBinaryBuffer.js';
3
+ interface IGetHalfhoursEnergies {
4
+ date: IDate;
5
+ energies: TEnergiesFlags;
6
+ firstHalfhour: number;
7
+ halfhoursNumber: number;
8
+ }
9
+ declare class GetHalfhoursEnergies extends Command {
10
+ parameters: IGetHalfhoursEnergies;
11
+ constructor(parameters: IGetHalfhoursEnergies);
12
+ static readonly id = 105;
13
+ static readonly directionType = 1;
14
+ static readonly examples: TCommandExampleList;
15
+ static readonly hasParameters = true;
16
+ static readonly maxSize = 5;
17
+ static fromBytes(data: Uint8Array): GetHalfhoursEnergies;
18
+ toBytes(): Uint8Array;
19
+ }
20
+ export default GetHalfhoursEnergies;
@@ -0,0 +1,61 @@
1
+ import Command, { COMMAND_HEADER_SIZE } from '../../Command.js';
2
+ import { DOWNLINK } from '../../../constants/directions.js';
3
+ import CommandBinaryBuffer from '../../CommandBinaryBuffer.js';
4
+ const COMMAND_ID = 0x69;
5
+ const COMMAND_SIZE = 5;
6
+ const examples = [
7
+ {
8
+ name: 'request for halfhours energies',
9
+ parameters: {
10
+ date: {
11
+ year: 21,
12
+ month: 2,
13
+ day: 3
14
+ },
15
+ firstHalfhour: 5,
16
+ halfhoursNumber: 4,
17
+ energies: {
18
+ aPlus: true,
19
+ aPlusRPlus: true,
20
+ aPlusRMinus: false,
21
+ aMinus: false,
22
+ aMinusRPlus: false,
23
+ aMinusRMinus: false
24
+ }
25
+ },
26
+ hex: { header: '69 05', body: '2a 43 03 05 04' }
27
+ }
28
+ ];
29
+ class GetHalfhoursEnergies extends Command {
30
+ constructor(parameters) {
31
+ super();
32
+ this.parameters = parameters;
33
+ }
34
+ static fromBytes(data) {
35
+ const buffer = new CommandBinaryBuffer(data);
36
+ return new GetHalfhoursEnergies({
37
+ date: buffer.getDate(),
38
+ energies: buffer.getEnergiesFlags(),
39
+ firstHalfhour: buffer.getUint8(),
40
+ halfhoursNumber: buffer.getUint8()
41
+ });
42
+ }
43
+ toBytes() {
44
+ const buffer = new CommandBinaryBuffer(COMMAND_HEADER_SIZE + COMMAND_SIZE);
45
+ const { parameters } = this;
46
+ buffer.setUint8(COMMAND_ID);
47
+ buffer.setUint8(COMMAND_SIZE);
48
+ buffer.setDate(parameters.date);
49
+ buffer.setEnergiesFlags(parameters.energies);
50
+ buffer.setUint8(parameters.firstHalfhour);
51
+ buffer.setUint8(parameters.halfhoursNumber);
52
+ return buffer.toUint8Array();
53
+ }
54
+ }
55
+ GetHalfhoursEnergies.id = COMMAND_ID;
56
+ GetHalfhoursEnergies.directionType = DOWNLINK;
57
+ GetHalfhoursEnergies.examples = examples;
58
+ GetHalfhoursEnergies.hasParameters = true;
59
+ GetHalfhoursEnergies.maxSize = COMMAND_SIZE;
60
+ export default GetHalfhoursEnergies;
61
+ //# sourceMappingURL=GetHalfhoursEnergies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GetHalfhoursEnergies.js","sourceRoot":"","sources":["../../../../src/mtxLora/commands/downlink/GetHalfhoursEnergies.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,EAAE,EAAsB,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AACnF,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAC1D,OAAO,mBAA4C,MAAM,8BAA8B,CAAC;AAWxF,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,YAAY,GAAG,CAAC,CAAC;AAEvB,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,gCAAgC;QACtC,UAAU,EAAE;YACR,IAAI,EAAE;gBACF,IAAI,EAAE,EAAE;gBACR,KAAK,EAAE,CAAC;gBACR,GAAG,EAAE,CAAC;aACT;YACD,aAAa,EAAE,CAAC;YAChB,eAAe,EAAE,CAAC;YAClB,QAAQ,EAAE;gBACN,KAAK,EAAE,IAAI;gBACX,UAAU,EAAE,IAAI;gBAChB,WAAW,EAAE,KAAK;gBAClB,MAAM,EAAE,KAAK;gBACb,WAAW,EAAE,KAAK;gBAClB,YAAY,EAAE,KAAK;aACtB;SACJ;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAC;KACjD;CACJ,CAAC;AA+BF,MAAM,oBAAqB,SAAQ,OAAO;IACtC,YAAqB,UAAiC;QAClD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAuB;IAEtD,CAAC;IAeD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,oBAAoB,CAAC;YAC5B,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE;YACtB,QAAQ,EAAE,MAAM,CAAC,gBAAgB,EAAE;YACnC,aAAa,EAAE,MAAM,CAAC,QAAQ,EAAE;YAChC,eAAe,EAAE,MAAM,CAAC,QAAQ,EAAE;SACrC,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,mBAAmB,GAAG,YAAY,CAAC,CAAC;QAC3E,MAAM,EAAC,UAAU,EAAC,GAAG,IAAI,CAAC;QAE1B,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC5B,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAE9B,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,CAAC,gBAAgB,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QAC1C,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;QAE5C,OAAO,MAAM,CAAC,YAAY,EAAE,CAAC;IACjC,CAAC;;AArCe,uBAAE,GAAG,UAAU,CAAC;AAEhB,kCAAa,GAAG,QAAQ,CAAC;AAEzB,6BAAQ,GAAG,QAAQ,CAAC;AAEpB,kCAAa,GAAG,IAAI,CAAC;AAErB,4BAAO,GAAG,YAAY,CAAC;AAiC3C,eAAe,oBAAoB,CAAC"}
@@ -1 +1 @@
1
- export { default as MtxCommand } from './MtxCommand.js';
1
+ export { default as GetHalfhoursEnergies } from './GetHalfhoursEnergies.js';
@@ -1,2 +1,2 @@
1
- export { default as MtxCommand } from './MtxCommand.js';
1
+ export { default as GetHalfhoursEnergies } from './GetHalfhoursEnergies.js';
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mtxLora/commands/downlink/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mtxLora/commands/downlink/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAC,OAAO,IAAI,oBAAoB,EAAC,MAAM,2BAA2B,CAAC"}
@@ -0,0 +1,17 @@
1
+ import Command, { TCommandExampleList } from '../../Command.js';
2
+ import { IDate, TTariffsEnergies } from '../../CommandBinaryBuffer.js';
3
+ interface IGetDayEnergies {
4
+ date: IDate;
5
+ energies: TTariffsEnergies;
6
+ }
7
+ declare class GetDayEnergies extends Command {
8
+ parameters: IGetDayEnergies;
9
+ constructor(parameters: IGetDayEnergies);
10
+ static readonly id = 120;
11
+ static readonly directionType = 2;
12
+ static readonly examples: TCommandExampleList;
13
+ static readonly hasParameters = true;
14
+ static fromBytes(data: Uint8Array): GetDayEnergies;
15
+ toBytes(): Uint8Array;
16
+ }
17
+ export default GetDayEnergies;
@@ -0,0 +1,59 @@
1
+ import Command, { COMMAND_HEADER_SIZE } from '../../Command.js';
2
+ import CommandBinaryBuffer from '../../CommandBinaryBuffer.js';
3
+ import { UPLINK } from '../../../constants/directions.js';
4
+ const COMMAND_ID = 0x78;
5
+ const DATE_SIZE = 3;
6
+ const MAX_TARIFFS_ENERGIES_SIZE = 5 * 4 * 4;
7
+ const COMMAND_MAX_SIZE = DATE_SIZE + MAX_TARIFFS_ENERGIES_SIZE;
8
+ const examples = [
9
+ {
10
+ name: 'get day energies',
11
+ parameters: {
12
+ date: {
13
+ year: 21,
14
+ month: 2,
15
+ day: 3
16
+ },
17
+ energies: [
18
+ {
19
+ aPlus: 0x1000,
20
+ aMinusRPlus: 0x2000
21
+ }
22
+ ]
23
+ },
24
+ hex: {
25
+ header: '78 0c',
26
+ body: '2a 43 11 11 00 00 10 00 00 00 20 00'
27
+ }
28
+ }
29
+ ];
30
+ class GetDayEnergies extends Command {
31
+ constructor(parameters) {
32
+ super();
33
+ this.parameters = parameters;
34
+ }
35
+ static fromBytes(data) {
36
+ const buffer = new CommandBinaryBuffer(data);
37
+ return new GetDayEnergies({
38
+ date: buffer.getDate(),
39
+ energies: buffer.getTariffsEnergies()
40
+ });
41
+ }
42
+ toBytes() {
43
+ const { parameters: { date, energies } } = this;
44
+ const buffer = new CommandBinaryBuffer(COMMAND_HEADER_SIZE + COMMAND_MAX_SIZE);
45
+ buffer.setDate(date);
46
+ buffer.setTariffsEnergies(energies);
47
+ return new Uint8Array([
48
+ COMMAND_ID,
49
+ buffer.position,
50
+ ...buffer.getBytesToOffset()
51
+ ]);
52
+ }
53
+ }
54
+ GetDayEnergies.id = COMMAND_ID;
55
+ GetDayEnergies.directionType = UPLINK;
56
+ GetDayEnergies.examples = examples;
57
+ GetDayEnergies.hasParameters = true;
58
+ export default GetDayEnergies;
59
+ //# sourceMappingURL=GetDayEnergies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GetDayEnergies.js","sourceRoot":"","sources":["../../../../src/mtxLora/commands/uplink/GetDayEnergies.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,EAAE,EAAsB,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AACnF,OAAO,mBAA8C,MAAM,8BAA8B,CAAC;AAC1F,OAAO,EAAC,MAAM,EAAC,MAAM,kCAAkC,CAAC;AASxD,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,SAAS,GAAG,CAAC,CAAC;AACpB,MAAM,yBAAyB,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC5C,MAAM,gBAAgB,GAAG,SAAS,GAAG,yBAAyB,CAAC;AAE/D,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,kBAAkB;QACxB,UAAU,EAAE;YACR,IAAI,EAAE;gBACF,IAAI,EAAE,EAAE;gBACR,KAAK,EAAE,CAAC;gBACR,GAAG,EAAE,CAAC;aACT;YACD,QAAQ,EAAE;gBACN;oBACI,KAAK,EAAE,MAAM;oBACb,WAAW,EAAE,MAAM;iBACtB;aACJ;SACJ;QACD,GAAG,EAAE;YACD,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,qCAAqC;SAC9C;KACJ;CACJ,CAAC;AA8BF,MAAM,cAAe,SAAQ,OAAO;IAChC,YAAqB,UAA2B;QAC5C,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAiB;IAEhD,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,cAAc,CAAC;YACtB,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE;YACtB,QAAQ,EAAE,MAAM,CAAC,kBAAkB,EAAE;SACxC,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,UAAU,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAC,EAAC,GAAG,IAAI,CAAC;QAC5C,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;QAG/E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrB,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAEpC,OAAO,IAAI,UAAU,CAAC;YAClB,UAAU;YACV,MAAM,CAAC,QAAQ;YACf,GAAG,MAAM,CAAC,gBAAgB,EAAE;SAC/B,CAAC,CAAC;IACP,CAAC;;AAjCe,iBAAE,GAAG,UAAU,CAAC;AAEhB,4BAAa,GAAG,MAAM,CAAC;AAEvB,uBAAQ,GAAG,QAAQ,CAAC;AAEpB,4BAAa,GAAG,IAAI,CAAC;AA+BzC,eAAe,cAAc,CAAC"}
@@ -0,0 +1,17 @@
1
+ import Command, { TCommandExampleList } from '../../Command.js';
2
+ import { IDate, TTariffsPowerMax } from '../../CommandBinaryBuffer.js';
3
+ interface IGetDayMaxPower {
4
+ date: IDate;
5
+ tariffs: TTariffsPowerMax;
6
+ }
7
+ declare class GetDayMaxPower extends Command {
8
+ parameters: IGetDayMaxPower;
9
+ constructor(parameters: IGetDayMaxPower);
10
+ static readonly id = 121;
11
+ static readonly directionType = 2;
12
+ static readonly examples: TCommandExampleList;
13
+ static readonly hasParameters = true;
14
+ static fromBytes(data: Uint8Array): GetDayMaxPower;
15
+ toBytes(): Uint8Array;
16
+ }
17
+ export default GetDayMaxPower;