jooby-codec 3.6.1 → 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 (139) 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/analog/frame.d.ts +8 -8
  26. package/dist/analog/frame.js +11 -11
  27. package/dist/analog/frame.js.map +1 -1
  28. package/dist/analog/index.d.ts +1 -0
  29. package/dist/analog/index.js +1 -0
  30. package/dist/analog/index.js.map +1 -1
  31. package/dist/analog/message.js +3 -3
  32. package/dist/analog/message.js.map +1 -1
  33. package/dist/index.d.ts +1 -0
  34. package/dist/index.js +1 -0
  35. package/dist/index.js.map +1 -1
  36. package/dist/mtx/message.d.ts +2 -1
  37. package/dist/mtx/message.js +8 -6
  38. package/dist/mtx/message.js.map +1 -1
  39. package/dist/mtxLora/Command.d.ts +27 -0
  40. package/dist/mtxLora/Command.js +27 -0
  41. package/dist/mtxLora/Command.js.map +1 -0
  42. package/dist/mtxLora/CommandBinaryBuffer.d.ts +50 -0
  43. package/dist/mtxLora/CommandBinaryBuffer.js +272 -0
  44. package/dist/mtxLora/CommandBinaryBuffer.js.map +1 -0
  45. package/dist/mtxLora/UnknownCommand.d.ts +12 -0
  46. package/dist/mtxLora/UnknownCommand.js +17 -0
  47. package/dist/mtxLora/UnknownCommand.js.map +1 -0
  48. package/dist/mtxLora/commands/downlink/GetHalfhoursEnergies.d.ts +20 -0
  49. package/dist/mtxLora/commands/downlink/GetHalfhoursEnergies.js +61 -0
  50. package/dist/mtxLora/commands/downlink/GetHalfhoursEnergies.js.map +1 -0
  51. package/dist/mtxLora/commands/downlink/index.d.ts +1 -0
  52. package/dist/mtxLora/commands/downlink/index.js +2 -0
  53. package/dist/mtxLora/commands/downlink/index.js.map +1 -0
  54. package/dist/mtxLora/commands/index.d.ts +2 -0
  55. package/dist/mtxLora/commands/index.js +3 -0
  56. package/dist/mtxLora/commands/index.js.map +1 -0
  57. package/dist/mtxLora/commands/uplink/GetDayEnergies.d.ts +17 -0
  58. package/dist/mtxLora/commands/uplink/GetDayEnergies.js +59 -0
  59. package/dist/mtxLora/commands/uplink/GetDayEnergies.js.map +1 -0
  60. package/dist/mtxLora/commands/uplink/GetDayMaxPower.d.ts +17 -0
  61. package/dist/mtxLora/commands/uplink/GetDayMaxPower.js +67 -0
  62. package/dist/mtxLora/commands/uplink/GetDayMaxPower.js.map +1 -0
  63. package/dist/mtxLora/commands/uplink/GetHalfhoursEnergies.d.ts +19 -0
  64. package/dist/mtxLora/commands/uplink/GetHalfhoursEnergies.js +68 -0
  65. package/dist/mtxLora/commands/uplink/GetHalfhoursEnergies.js.map +1 -0
  66. package/dist/mtxLora/commands/uplink/index.d.ts +3 -0
  67. package/dist/mtxLora/commands/uplink/index.js +4 -0
  68. package/dist/mtxLora/commands/uplink/index.js.map +1 -0
  69. package/dist/mtxLora/constants/commandRelations.d.ts +6 -0
  70. package/dist/mtxLora/constants/commandRelations.js +11 -0
  71. package/dist/mtxLora/constants/commandRelations.js.map +1 -0
  72. package/dist/mtxLora/index.d.ts +2 -0
  73. package/dist/mtxLora/index.js +3 -0
  74. package/dist/mtxLora/index.js.map +1 -0
  75. package/dist/mtxLora/message.d.ts +24 -0
  76. package/dist/mtxLora/message.js +81 -0
  77. package/dist/mtxLora/message.js.map +1 -0
  78. package/dist/obis-observer/CommandBinaryBuffer.d.ts +10 -6
  79. package/dist/obis-observer/CommandBinaryBuffer.js +10 -8
  80. package/dist/obis-observer/CommandBinaryBuffer.js.map +1 -1
  81. package/dist/obis-observer/commands/downlink/GetArchiveState.d.ts +1 -1
  82. package/dist/obis-observer/commands/downlink/GetArchiveState.js +17 -12
  83. package/dist/obis-observer/commands/downlink/GetArchiveState.js.map +1 -1
  84. package/dist/obis-observer/commands/downlink/GetMeterDate.d.ts +1 -1
  85. package/dist/obis-observer/commands/downlink/GetMeterDate.js +14 -7
  86. package/dist/obis-observer/commands/downlink/GetMeterDate.js.map +1 -1
  87. package/dist/obis-observer/commands/downlink/GetMeterInfo.d.ts +1 -1
  88. package/dist/obis-observer/commands/downlink/GetMeterInfo.js +14 -7
  89. package/dist/obis-observer/commands/downlink/GetMeterInfo.js.map +1 -1
  90. package/dist/obis-observer/commands/downlink/GetMeterReadoutState.d.ts +1 -1
  91. package/dist/obis-observer/commands/downlink/GetMeterReadoutState.js +14 -7
  92. package/dist/obis-observer/commands/downlink/GetMeterReadoutState.js.map +1 -1
  93. package/dist/obis-observer/commands/downlink/GetObisContent.js +5 -5
  94. package/dist/obis-observer/commands/downlink/GetObisContent.js.map +1 -1
  95. package/dist/obis-observer/commands/downlink/GetObisContentById.d.ts +1 -1
  96. package/dist/obis-observer/commands/downlink/GetObisContentById.js +16 -7
  97. package/dist/obis-observer/commands/downlink/GetObisContentById.js.map +1 -1
  98. package/dist/obis-observer/commands/downlink/GetSerialPort.d.ts +13 -0
  99. package/dist/obis-observer/commands/downlink/GetSerialPort.js +32 -0
  100. package/dist/obis-observer/commands/downlink/GetSerialPort.js.map +1 -0
  101. package/dist/obis-observer/commands/downlink/ReadMeterArchive.js +5 -5
  102. package/dist/obis-observer/commands/downlink/ReadMeterArchive.js.map +1 -1
  103. package/dist/obis-observer/commands/downlink/ReadMeterArchiveWithDate.js +5 -5
  104. package/dist/obis-observer/commands/downlink/ReadMeterArchiveWithDate.js.map +1 -1
  105. package/dist/obis-observer/commands/downlink/RemoveMeter.d.ts +1 -1
  106. package/dist/obis-observer/commands/downlink/RemoveMeter.js +14 -7
  107. package/dist/obis-observer/commands/downlink/RemoveMeter.js.map +1 -1
  108. package/dist/obis-observer/commands/downlink/SetSerialPort.d.ts +3 -9
  109. package/dist/obis-observer/commands/downlink/SetSerialPort.js +6 -13
  110. package/dist/obis-observer/commands/downlink/SetSerialPort.js.map +1 -1
  111. package/dist/obis-observer/commands/downlink/SetupMeter.js +7 -7
  112. package/dist/obis-observer/commands/downlink/SetupMeter.js.map +1 -1
  113. package/dist/obis-observer/commands/downlink/index.d.ts +1 -0
  114. package/dist/obis-observer/commands/downlink/index.js +1 -0
  115. package/dist/obis-observer/commands/downlink/index.js.map +1 -1
  116. package/dist/obis-observer/commands/uplink/GetMeterIdListResponse.js +5 -5
  117. package/dist/obis-observer/commands/uplink/GetMeterIdListResponse.js.map +1 -1
  118. package/dist/obis-observer/commands/uplink/GetMeterIdResponse.d.ts +1 -1
  119. package/dist/obis-observer/commands/uplink/GetMeterIdResponse.js +14 -7
  120. package/dist/obis-observer/commands/uplink/GetMeterIdResponse.js.map +1 -1
  121. package/dist/obis-observer/commands/uplink/GetSerialPortResponse.d.ts +13 -0
  122. package/dist/obis-observer/commands/uplink/GetSerialPortResponse.js +44 -0
  123. package/dist/obis-observer/commands/uplink/GetSerialPortResponse.js.map +1 -0
  124. package/dist/obis-observer/commands/uplink/ObservationReport.js +5 -5
  125. package/dist/obis-observer/commands/uplink/ObservationReport.js.map +1 -1
  126. package/dist/obis-observer/commands/uplink/ObservationReportString.js +6 -6
  127. package/dist/obis-observer/commands/uplink/ObservationReportString.js.map +1 -1
  128. package/dist/obis-observer/commands/uplink/ReadArchiveResponse.js +5 -5
  129. package/dist/obis-observer/commands/uplink/ReadArchiveResponse.js.map +1 -1
  130. package/dist/obis-observer/commands/uplink/index.d.ts +1 -0
  131. package/dist/obis-observer/commands/uplink/index.js +1 -0
  132. package/dist/obis-observer/commands/uplink/index.js.map +1 -1
  133. package/dist/obis-observer/constants/commandRelations.d.ts +2 -2
  134. package/dist/obis-observer/constants/commandRelations.js +1 -0
  135. package/dist/obis-observer/constants/commandRelations.js.map +1 -1
  136. package/dist/utils/permutations.d.ts +2 -0
  137. package/dist/utils/permutations.js +15 -0
  138. package/dist/utils/permutations.js.map +1 -0
  139. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"GetArchiveState.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/GetArchiveState.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAC,eAAe,EAAqB,MAAM,8BAA8B,CAAC;AACjF,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAY1D,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,YAAY,GAAG,eAAe,GAAG,CAAC,CAAC;AAEzC,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,mBAAmB;QACzB,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,CAAC;SACjB;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;KACxC;IACD;QACI,IAAI,EAAE,+BAA+B;QACrC,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,CAAC;YACd,OAAO,EAAE,CAAC;SACb;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAC;KAC3C;CACJ,CAAC;AAwBF,MAAM,eAAgB,SAAQ,OAAO;IACjC,YAAqB,UAAsC;QACvD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAA4B;QAGvD,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC7B,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,CAAa;QAC5D,OAAO,OAAO;YACV,CAAC,CAAC,IAAI,eAAe,CAAC,EAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAC,CAAC;YACxD,CAAC,CAAC,IAAI,eAAe,CAAC,EAAC,SAAS,EAAE,WAAW,EAAC,CAAC,CAAC;IACxD,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAC1D,MAAM,OAAO,GAAG,OAAO;YACnB,CAAC,CAAC,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC;YACnC,CAAC,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAG/B,OAAO,OAAO,CAAC,OAAO,CAClB,UAAU,EACV,IAAI,UAAU,CAAC,OAAO,CAAC,CAC1B,CAAC;IACN,CAAC;;AA5Be,kBAAE,GAAG,UAAU,CAAC;AAEhB,6BAAa,GAAG,QAAQ,CAAC;AAEzB,wBAAQ,GAAG,QAAQ,CAAC;AAEpB,6BAAa,GAAG,IAAI,CAAC;AA0BzC,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"GetArchiveState.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/GetArchiveState.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,mBAAmB,EAAE,EAAC,eAAe,EAAE,aAAa,EAAqB,MAAM,8BAA8B,CAAC;AACrH,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAY1D,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,mBAAmB;QACzB,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,CAAC;SACjB;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;KACxC;IACD;QACI,IAAI,EAAE,+BAA+B;QACrC,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,CAAC;YACd,OAAO,EAAE,CAAC;SACb;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAC;KACpD;CACJ,CAAC;AAwBF,MAAM,eAAgB,SAAQ,OAAO;IACjC,YAAqB,UAAsC;QACvD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAA4B;QAGvD,IAAI,CAAC,IAAI,GAAG,eAAe,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/E,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpC,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAEtC,OAAO,MAAM,CAAC,OAAO;YACjB,CAAC,CAAC,IAAI,eAAe,CAAC,EAAC,SAAS,EAAE,WAAW,EAAC,CAAC;YAC/C,CAAC,CAAC,IAAI,eAAe,CAAC,EAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,SAAS,EAAE,EAAC,CAAC,CAAC;IACrF,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAC1D,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;QAE5D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3B,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC7B,IAAK,OAAO,EAAG,CAAC;YACZ,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC9B,CAAC;QAED,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AAjCe,kBAAE,GAAG,UAAU,CAAC;AAEhB,6BAAa,GAAG,QAAQ,CAAC;AAEzB,wBAAQ,GAAG,QAAQ,CAAC;AAEpB,6BAAa,GAAG,IAAI,CAAC;AA+BzC,eAAe,eAAe,CAAC"}
@@ -10,7 +10,7 @@ declare class GetMeterDate extends Command {
10
10
  static readonly directionType = 1;
11
11
  static readonly examples: TCommandExampleList;
12
12
  static readonly hasParameters = true;
13
- static fromBytes([requestId, meterId]: Uint8Array): GetMeterDate;
13
+ static fromBytes(data: Uint8Array): GetMeterDate;
14
14
  toBytes(): Uint8Array;
15
15
  }
16
16
  export default GetMeterDate;
@@ -1,5 +1,5 @@
1
1
  import Command from '../../Command.js';
2
- import { REQUEST_ID_SIZE } from '../../CommandBinaryBuffer.js';
2
+ import CommandBinaryBuffer, { REQUEST_ID_SIZE, METER_ID_SIZE } from '../../CommandBinaryBuffer.js';
3
3
  import { DOWNLINK } from '../../../constants/directions.js';
4
4
  const COMMAND_ID = 0x7a;
5
5
  const examples = [
@@ -9,21 +9,28 @@ const examples = [
9
9
  requestId: 4,
10
10
  meterId: 3
11
11
  },
12
- hex: { header: '7a 02', body: '04 03' }
12
+ hex: { header: '7a 05', body: '04 00 00 00 03' }
13
13
  }
14
14
  ];
15
15
  class GetMeterDate extends Command {
16
16
  constructor(parameters) {
17
17
  super();
18
18
  this.parameters = parameters;
19
- this.size = REQUEST_ID_SIZE + 1;
19
+ this.size = REQUEST_ID_SIZE + METER_ID_SIZE;
20
20
  }
21
- static fromBytes([requestId, meterId]) {
22
- return new GetMeterDate({ requestId, meterId });
21
+ static fromBytes(data) {
22
+ const buffer = new CommandBinaryBuffer(data);
23
+ return new GetMeterDate({
24
+ requestId: buffer.getUint8(),
25
+ meterId: buffer.getUint32()
26
+ });
23
27
  }
24
28
  toBytes() {
25
- const { parameters } = this;
26
- return Command.toBytes(COMMAND_ID, new Uint8Array([parameters.requestId, parameters.meterId]));
29
+ const { requestId, meterId } = this.parameters;
30
+ const buffer = new CommandBinaryBuffer(this.size);
31
+ buffer.setUint8(requestId);
32
+ buffer.setUint32(meterId);
33
+ return Command.toBytes(COMMAND_ID, buffer.toUint8Array());
27
34
  }
28
35
  }
29
36
  GetMeterDate.id = COMMAND_ID;
@@ -1 +1 @@
1
- {"version":3,"file":"GetMeterDate.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/GetMeterDate.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAqB,eAAe,EAAC,MAAM,8BAA8B,CAAC;AACjF,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAW1D,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,sBAAsB;QAC5B,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,OAAO,EAAE,CAAC;SACb;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;KACxC;CACJ,CAAC;AAuBF,MAAM,YAAa,SAAQ,OAAO;IAC9B,YAAqB,UAAmC;QACpD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAyB;QAGpD,IAAI,CAAC,IAAI,GAAG,eAAe,GAAG,CAAC,CAAC;IACpC,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,CAAC,SAAS,EAAE,OAAO,CAAa;QAC/C,OAAO,IAAI,YAAY,CAAC,EAAC,SAAS,EAAE,OAAO,EAAC,CAAC,CAAC;IAClD,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,UAAU,EAAC,GAAG,IAAI,CAAC;QAE1B,OAAO,OAAO,CAAC,OAAO,CAClB,UAAU,EACV,IAAI,UAAU,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAC7D,CAAC;IACN,CAAC;;AAtBe,eAAE,GAAG,UAAU,CAAC;AAEhB,0BAAa,GAAG,QAAQ,CAAC;AAEzB,qBAAQ,GAAG,QAAQ,CAAC;AAEpB,0BAAa,GAAG,IAAI,CAAC;AAoBzC,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"GetMeterDate.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/GetMeterDate.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,mBAAmB,EAAE,EAAqB,eAAe,EAAE,aAAa,EAAC,MAAM,8BAA8B,CAAC;AACrH,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAW1D,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,sBAAsB;QAC5B,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,OAAO,EAAE,CAAC;SACb;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAC;KACjD;CACJ,CAAC;AAuBF,MAAM,YAAa,SAAQ,OAAO;IAC9B,YAAqB,UAAmC;QACpD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAyB;QAGpD,IAAI,CAAC,IAAI,GAAG,eAAe,GAAG,aAAa,CAAC;IAChD,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,YAAY,CAAC;YACpB,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC5B,OAAO,EAAE,MAAM,CAAC,SAAS,EAAE;SAC9B,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,SAAS,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAC7C,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;QAE5D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3B,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAE1B,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AA5Be,eAAE,GAAG,UAAU,CAAC;AAEhB,0BAAa,GAAG,QAAQ,CAAC;AAEzB,qBAAQ,GAAG,QAAQ,CAAC;AAEpB,0BAAa,GAAG,IAAI,CAAC;AA0BzC,eAAe,YAAY,CAAC"}
@@ -10,7 +10,7 @@ declare class GetMeterInfo extends Command {
10
10
  static readonly directionType = 1;
11
11
  static readonly examples: TCommandExampleList;
12
12
  static readonly hasParameters = true;
13
- static fromBytes([requestId, meterId]: Uint8Array): GetMeterInfo;
13
+ static fromBytes(data: Uint8Array): GetMeterInfo;
14
14
  toBytes(): Uint8Array;
15
15
  }
16
16
  export default GetMeterInfo;
@@ -1,5 +1,5 @@
1
1
  import Command from '../../Command.js';
2
- import { REQUEST_ID_SIZE } from '../../CommandBinaryBuffer.js';
2
+ import CommandBinaryBuffer, { REQUEST_ID_SIZE, METER_ID_SIZE } from '../../CommandBinaryBuffer.js';
3
3
  import { DOWNLINK } from '../../../constants/directions.js';
4
4
  const COMMAND_ID = 0x78;
5
5
  const examples = [
@@ -9,21 +9,28 @@ const examples = [
9
9
  requestId: 8,
10
10
  meterId: 1
11
11
  },
12
- hex: { header: '78 02', body: '08 01' }
12
+ hex: { header: '78 05', body: '08 00 00 00 01' }
13
13
  }
14
14
  ];
15
15
  class GetMeterInfo extends Command {
16
16
  constructor(parameters) {
17
17
  super();
18
18
  this.parameters = parameters;
19
- this.size = REQUEST_ID_SIZE + 1;
19
+ this.size = REQUEST_ID_SIZE + METER_ID_SIZE;
20
20
  }
21
- static fromBytes([requestId, meterId]) {
22
- return new GetMeterInfo({ requestId, meterId });
21
+ static fromBytes(data) {
22
+ const buffer = new CommandBinaryBuffer(data);
23
+ return new GetMeterInfo({
24
+ requestId: buffer.getUint8(),
25
+ meterId: buffer.getUint32()
26
+ });
23
27
  }
24
28
  toBytes() {
25
- const { parameters } = this;
26
- return Command.toBytes(COMMAND_ID, new Uint8Array([parameters.requestId, parameters.meterId]));
29
+ const { requestId, meterId } = this.parameters;
30
+ const buffer = new CommandBinaryBuffer(this.size);
31
+ buffer.setUint8(requestId);
32
+ buffer.setUint32(meterId);
33
+ return Command.toBytes(COMMAND_ID, buffer.toUint8Array());
27
34
  }
28
35
  }
29
36
  GetMeterInfo.id = COMMAND_ID;
@@ -1 +1 @@
1
- {"version":3,"file":"GetMeterInfo.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/GetMeterInfo.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAqB,eAAe,EAAC,MAAM,8BAA8B,CAAC;AACjF,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAW1D,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,4BAA4B;QAClC,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,OAAO,EAAE,CAAC;SACb;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;KACxC;CACJ,CAAC;AAuBF,MAAM,YAAa,SAAQ,OAAO;IAC9B,YAAqB,UAAmC;QACpD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAyB;QAGpD,IAAI,CAAC,IAAI,GAAG,eAAe,GAAG,CAAC,CAAC;IACpC,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,CAAC,SAAS,EAAE,OAAO,CAAa;QAC/C,OAAO,IAAI,YAAY,CAAC,EAAC,SAAS,EAAE,OAAO,EAAC,CAAC,CAAC;IAClD,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,UAAU,EAAC,GAAG,IAAI,CAAC;QAE1B,OAAO,OAAO,CAAC,OAAO,CAClB,UAAU,EACV,IAAI,UAAU,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAC7D,CAAC;IACN,CAAC;;AAtBe,eAAE,GAAG,UAAU,CAAC;AAEhB,0BAAa,GAAG,QAAQ,CAAC;AAEzB,qBAAQ,GAAG,QAAQ,CAAC;AAEpB,0BAAa,GAAG,IAAI,CAAC;AAoBzC,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"GetMeterInfo.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/GetMeterInfo.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,mBAAmB,EAAE,EAAqB,eAAe,EAAE,aAAa,EAAC,MAAM,8BAA8B,CAAC;AACrH,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAW1D,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,4BAA4B;QAClC,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,OAAO,EAAE,CAAC;SACb;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAC;KACjD;CACJ,CAAC;AAuBF,MAAM,YAAa,SAAQ,OAAO;IAC9B,YAAqB,UAAmC;QACpD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAyB;QAGpD,IAAI,CAAC,IAAI,GAAG,eAAe,GAAG,aAAa,CAAC;IAChD,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,YAAY,CAAC;YACpB,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC5B,OAAO,EAAE,MAAM,CAAC,SAAS,EAAE;SAC9B,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,SAAS,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAC7C,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;QAE5D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3B,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAE1B,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AA5Be,eAAE,GAAG,UAAU,CAAC;AAEhB,0BAAa,GAAG,QAAQ,CAAC;AAEzB,qBAAQ,GAAG,QAAQ,CAAC;AAEpB,0BAAa,GAAG,IAAI,CAAC;AA0BzC,eAAe,YAAY,CAAC"}
@@ -10,7 +10,7 @@ declare class GetMeterReadoutState extends Command {
10
10
  static readonly directionType = 1;
11
11
  static readonly examples: TCommandExampleList;
12
12
  static readonly hasParameters = true;
13
- static fromBytes([requestId, meterId]: Uint8Array): GetMeterReadoutState;
13
+ static fromBytes(data: Uint8Array): GetMeterReadoutState;
14
14
  toBytes(): Uint8Array;
15
15
  }
16
16
  export default GetMeterReadoutState;
@@ -1,5 +1,5 @@
1
1
  import Command from '../../Command.js';
2
- import { REQUEST_ID_SIZE } from '../../CommandBinaryBuffer.js';
2
+ import CommandBinaryBuffer, { REQUEST_ID_SIZE, METER_ID_SIZE } from '../../CommandBinaryBuffer.js';
3
3
  import { DOWNLINK } from '../../../constants/directions.js';
4
4
  const COMMAND_ID = 0x81;
5
5
  const examples = [
@@ -9,21 +9,28 @@ const examples = [
9
9
  requestId: 9,
10
10
  meterId: 3
11
11
  },
12
- hex: { header: '81 02', body: '09 03' }
12
+ hex: { header: '81 05', body: '09 00 00 00 03' }
13
13
  }
14
14
  ];
15
15
  class GetMeterReadoutState extends Command {
16
16
  constructor(parameters) {
17
17
  super();
18
18
  this.parameters = parameters;
19
- this.size = REQUEST_ID_SIZE + (parameters.meterId ? 1 : 0);
19
+ this.size = REQUEST_ID_SIZE + METER_ID_SIZE;
20
20
  }
21
- static fromBytes([requestId, meterId]) {
22
- return new GetMeterReadoutState({ requestId, meterId });
21
+ static fromBytes(data) {
22
+ const buffer = new CommandBinaryBuffer(data);
23
+ return new GetMeterReadoutState({
24
+ requestId: buffer.getUint8(),
25
+ meterId: buffer.getUint32()
26
+ });
23
27
  }
24
28
  toBytes() {
25
- const { parameters } = this;
26
- return Command.toBytes(COMMAND_ID, new Uint8Array([parameters.requestId, parameters.meterId]));
29
+ const { requestId, meterId } = this.parameters;
30
+ const buffer = new CommandBinaryBuffer(this.size);
31
+ buffer.setUint8(requestId);
32
+ buffer.setUint32(meterId);
33
+ return Command.toBytes(COMMAND_ID, buffer.toUint8Array());
27
34
  }
28
35
  }
29
36
  GetMeterReadoutState.id = COMMAND_ID;
@@ -1 +1 @@
1
- {"version":3,"file":"GetMeterReadoutState.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/GetMeterReadoutState.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAqB,eAAe,EAAC,MAAM,8BAA8B,CAAC;AACjF,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAW1D,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,+BAA+B;QACrC,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,OAAO,EAAE,CAAC;SACb;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;KACxC;CACJ,CAAC;AAuBF,MAAM,oBAAqB,SAAQ,OAAO;IACtC,YAAqB,UAA2C;QAC5D,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAiC;QAG5D,IAAI,CAAC,IAAI,GAAG,eAAe,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/D,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,CAAC,SAAS,EAAE,OAAO,CAAa;QAC/C,OAAO,IAAI,oBAAoB,CAAC,EAAC,SAAS,EAAE,OAAO,EAAC,CAAC,CAAC;IAC1D,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,UAAU,EAAC,GAAG,IAAI,CAAC;QAE1B,OAAO,OAAO,CAAC,OAAO,CAClB,UAAU,EACV,IAAI,UAAU,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAC7D,CAAC;IACN,CAAC;;AAtBe,uBAAE,GAAG,UAAU,CAAC;AAEhB,kCAAa,GAAG,QAAQ,CAAC;AAEzB,6BAAQ,GAAG,QAAQ,CAAC;AAEpB,kCAAa,GAAG,IAAI,CAAC;AAoBzC,eAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"GetMeterReadoutState.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/GetMeterReadoutState.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,mBAAmB,EAAE,EAAqB,eAAe,EAAE,aAAa,EAAC,MAAM,8BAA8B,CAAC;AACrH,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAW1D,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,+BAA+B;QACrC,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,OAAO,EAAE,CAAC;SACb;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAC;KACjD;CACJ,CAAC;AAuBF,MAAM,oBAAqB,SAAQ,OAAO;IACtC,YAAqB,UAA2C;QAC5D,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAiC;QAG5D,IAAI,CAAC,IAAI,GAAG,eAAe,GAAG,aAAa,CAAC;IAChD,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,oBAAoB,CAAC;YAC5B,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC5B,OAAO,EAAE,MAAM,CAAC,SAAS,EAAE;SAC9B,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,SAAS,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAC7C,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;QAE5D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3B,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAE1B,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AA5Be,uBAAE,GAAG,UAAU,CAAC;AAEhB,kCAAa,GAAG,QAAQ,CAAC;AAEzB,6BAAQ,GAAG,QAAQ,CAAC;AAEpB,kCAAa,GAAG,IAAI,CAAC;AA0BzC,eAAe,oBAAoB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import Command from '../../Command.js';
2
- import CommandBinaryBuffer, { REQUEST_ID_SIZE } from '../../CommandBinaryBuffer.js';
2
+ import CommandBinaryBuffer, { REQUEST_ID_SIZE, METER_ID_SIZE } from '../../CommandBinaryBuffer.js';
3
3
  import { DOWNLINK } from '../../../constants/directions.js';
4
4
  const COMMAND_ID = 0x4e;
5
5
  const examples = [
@@ -14,20 +14,20 @@ const examples = [
14
14
  e: 1
15
15
  }
16
16
  },
17
- hex: { header: '4e 06', body: '03 08 02 00 09 01' }
17
+ hex: { header: '4e 09', body: '03 00 00 00 08 02 00 09 01' }
18
18
  }
19
19
  ];
20
20
  class GetContentByObis extends Command {
21
21
  constructor(parameters) {
22
22
  super();
23
23
  this.parameters = parameters;
24
- this.size = REQUEST_ID_SIZE + 1 + CommandBinaryBuffer.getObisSize(parameters.obis);
24
+ this.size = REQUEST_ID_SIZE + METER_ID_SIZE + CommandBinaryBuffer.getObisSize(parameters.obis);
25
25
  }
26
26
  static fromBytes(data) {
27
27
  const buffer = new CommandBinaryBuffer(data);
28
28
  return new GetContentByObis({
29
29
  requestId: buffer.getUint8(),
30
- meterId: buffer.getUint8(),
30
+ meterId: buffer.getUint32(),
31
31
  obis: buffer.getObis()
32
32
  });
33
33
  }
@@ -35,7 +35,7 @@ class GetContentByObis extends Command {
35
35
  const { requestId, meterId, obis } = this.parameters;
36
36
  const buffer = new CommandBinaryBuffer(this.size);
37
37
  buffer.setUint8(requestId);
38
- buffer.setUint8(meterId);
38
+ buffer.setUint32(meterId);
39
39
  buffer.setObis(obis);
40
40
  return Command.toBytes(COMMAND_ID, buffer.toUint8Array());
41
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GetObisContent.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/GetObisContent.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,mBAAmB,EAAE,EAAC,eAAe,EAA4B,MAAM,8BAA8B,CAAC;AAC7G,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAY1D,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,0DAA0D;QAChE,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,OAAO,EAAE,CAAC;YACV,IAAI,EAAE;gBACF,CAAC,EAAE,CAAC;gBACJ,CAAC,EAAE,CAAC;gBACJ,CAAC,EAAE,CAAC;aACP;SACJ;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAC;KACpD;CACJ,CAAC;AA4BF,MAAM,gBAAiB,SAAQ,OAAO;IAClC,YAAqB,UAAuC;QACxD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAA6B;QAGxD,IAAI,CAAC,IAAI,GAAG,eAAe,GAAG,CAAC,GAAG,mBAAmB,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACvF,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,gBAAgB,CAAC;YACxB,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC5B,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC1B,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE;SACzB,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,SAAS,EAAE,OAAO,EAAE,IAAI,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QACnD,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;QAE5D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3B,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAErB,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AA9Be,mBAAE,GAAG,UAAU,CAAC;AAEhB,8BAAa,GAAG,QAAQ,CAAC;AAEzB,yBAAQ,GAAG,QAAQ,CAAC;AAEpB,8BAAa,GAAG,IAAI,CAAC;AA4BzC,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"GetObisContent.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/GetObisContent.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,mBAAmB,EAAE,EAAC,eAAe,EAAE,aAAa,EAA4B,MAAM,8BAA8B,CAAC;AAC5H,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAY1D,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,0DAA0D;QAChE,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,OAAO,EAAE,CAAC;YACV,IAAI,EAAE;gBACF,CAAC,EAAE,CAAC;gBACJ,CAAC,EAAE,CAAC;gBACJ,CAAC,EAAE,CAAC;aACP;SACJ;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,4BAA4B,EAAC;KAC7D;CACJ,CAAC;AA4BF,MAAM,gBAAiB,SAAQ,OAAO;IAClC,YAAqB,UAAuC;QACxD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAA6B;QAGxD,IAAI,CAAC,IAAI,GAAG,eAAe,GAAG,aAAa,GAAG,mBAAmB,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACnG,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,gBAAgB,CAAC;YACxB,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC5B,OAAO,EAAE,MAAM,CAAC,SAAS,EAAE;YAC3B,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE;SACzB,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,SAAS,EAAE,OAAO,EAAE,IAAI,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QACnD,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;QAE5D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3B,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC1B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAErB,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AA9Be,mBAAE,GAAG,UAAU,CAAC;AAEhB,8BAAa,GAAG,QAAQ,CAAC;AAEzB,yBAAQ,GAAG,QAAQ,CAAC;AAEpB,8BAAa,GAAG,IAAI,CAAC;AA4BzC,eAAe,gBAAgB,CAAC"}
@@ -11,7 +11,7 @@ declare class GetObisContentById extends Command {
11
11
  static readonly directionType = 1;
12
12
  static readonly examples: TCommandExampleList;
13
13
  static readonly hasParameters = true;
14
- static fromBytes([requestId, meterId, obisId]: Uint8Array): GetObisContentById;
14
+ static fromBytes(data: Uint8Array): GetObisContentById;
15
15
  toBytes(): Uint8Array;
16
16
  }
17
17
  export default GetObisContentById;
@@ -1,5 +1,5 @@
1
1
  import Command from '../../Command.js';
2
- import { REQUEST_ID_SIZE } from '../../CommandBinaryBuffer.js';
2
+ import CommandBinaryBuffer, { REQUEST_ID_SIZE, METER_ID_SIZE } from '../../CommandBinaryBuffer.js';
3
3
  import { DOWNLINK } from '../../../constants/directions.js';
4
4
  const COMMAND_ID = 0x50;
5
5
  const examples = [
@@ -10,21 +10,30 @@ const examples = [
10
10
  meterId: 4,
11
11
  obisId: 50
12
12
  },
13
- hex: { header: '50 03', body: '79 04 32' }
13
+ hex: { header: '50 06', body: '79 00 00 00 04 32' }
14
14
  }
15
15
  ];
16
16
  class GetObisContentById extends Command {
17
17
  constructor(parameters) {
18
18
  super();
19
19
  this.parameters = parameters;
20
- this.size = REQUEST_ID_SIZE + 2;
20
+ this.size = REQUEST_ID_SIZE + METER_ID_SIZE + 1;
21
21
  }
22
- static fromBytes([requestId, meterId, obisId]) {
23
- return new GetObisContentById({ requestId, meterId, obisId });
22
+ static fromBytes(data) {
23
+ const buffer = new CommandBinaryBuffer(data);
24
+ return new GetObisContentById({
25
+ requestId: buffer.getUint8(),
26
+ meterId: buffer.getUint32(),
27
+ obisId: buffer.getUint8()
28
+ });
24
29
  }
25
30
  toBytes() {
26
- const { parameters } = this;
27
- return Command.toBytes(COMMAND_ID, new Uint8Array([parameters.requestId, parameters.meterId, parameters.obisId]));
31
+ const { requestId, meterId, obisId } = this.parameters;
32
+ const buffer = new CommandBinaryBuffer(this.size);
33
+ buffer.setUint8(requestId);
34
+ buffer.setUint32(meterId);
35
+ buffer.setUint8(obisId);
36
+ return Command.toBytes(COMMAND_ID, buffer.toUint8Array());
28
37
  }
29
38
  }
30
39
  GetObisContentById.id = COMMAND_ID;
@@ -1 +1 @@
1
- {"version":3,"file":"GetObisContentById.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/GetObisContentById.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAqB,eAAe,EAAC,MAAM,8BAA8B,CAAC;AACjF,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAY1D,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,uCAAuC;QAC7C,UAAU,EAAE;YACR,SAAS,EAAE,GAAG;YACd,OAAO,EAAE,CAAC;YACV,MAAM,EAAE,EAAE;SACb;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAC;KAC3C;CACJ,CAAC;AAwBF,MAAM,kBAAmB,SAAQ,OAAO;IACpC,YAAqB,UAAyC;QAC1D,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAA+B;QAI1D,IAAI,CAAC,IAAI,GAAG,eAAe,GAAG,CAAC,CAAC;IACpC,CAAC;IAWD,MAAM,CAAC,SAAS,CAAG,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAa;QACvD,OAAO,IAAI,kBAAkB,CAAC,EAAC,SAAS,EAAE,OAAO,EAAE,MAAM,EAAC,CAAC,CAAC;IAChE,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,UAAU,EAAC,GAAG,IAAI,CAAC;QAE1B,OAAO,OAAO,CAAC,OAAO,CAClB,UAAU,EACV,IAAI,UAAU,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAChF,CAAC;IACN,CAAC;;AArBe,qBAAE,GAAG,UAAU,CAAC;AAEhB,gCAAa,GAAG,QAAQ,CAAC;AAEzB,2BAAQ,GAAG,QAAQ,CAAC;AAEpB,gCAAa,GAAG,IAAI,CAAC;AAmBzC,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"GetObisContentById.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/GetObisContentById.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,mBAAmB,EAAE,EAAqB,eAAe,EAAE,aAAa,EAAC,MAAM,8BAA8B,CAAC;AACrH,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAY1D,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,uCAAuC;QAC7C,UAAU,EAAE;YACR,SAAS,EAAE,GAAG;YACd,OAAO,EAAE,CAAC;YACV,MAAM,EAAE,EAAE;SACb;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAC;KACpD;CACJ,CAAC;AAwBF,MAAM,kBAAmB,SAAQ,OAAO;IACpC,YAAqB,UAAyC;QAC1D,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAA+B;QAI1D,IAAI,CAAC,IAAI,GAAG,eAAe,GAAG,aAAa,GAAG,CAAC,CAAC;IACpD,CAAC;IAWD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,kBAAkB,CAAC;YAC1B,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC5B,OAAO,EAAE,MAAM,CAAC,SAAS,EAAE;YAC3B,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE;SAC5B,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,SAAS,EAAE,OAAO,EAAE,MAAM,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QACrD,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;QAE5D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3B,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC1B,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAExB,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AA7Be,qBAAE,GAAG,UAAU,CAAC;AAEhB,gCAAa,GAAG,QAAQ,CAAC;AAEzB,2BAAQ,GAAG,QAAQ,CAAC;AAEpB,gCAAa,GAAG,IAAI,CAAC;AA2BzC,eAAe,kBAAkB,CAAC"}
@@ -0,0 +1,13 @@
1
+ import Command, { TCommandExampleList } from '../../Command.js';
2
+ import { ICommandParameters } from '../../CommandBinaryBuffer.js';
3
+ declare class GetSerialPort extends Command {
4
+ parameters: ICommandParameters;
5
+ constructor(parameters: ICommandParameters);
6
+ static readonly id = 7;
7
+ static readonly directionType = 1;
8
+ static readonly examples: TCommandExampleList;
9
+ static readonly hasParameters = true;
10
+ static fromBytes([requestId]: Uint8Array): GetSerialPort;
11
+ toBytes(): Uint8Array;
12
+ }
13
+ export default GetSerialPort;
@@ -0,0 +1,32 @@
1
+ import Command from '../../Command.js';
2
+ import { REQUEST_ID_SIZE } from '../../CommandBinaryBuffer.js';
3
+ import { DOWNLINK } from '../../../constants/directions.js';
4
+ const COMMAND_ID = 0x07;
5
+ const examples = [
6
+ {
7
+ name: 'simple request',
8
+ parameters: {
9
+ requestId: 7
10
+ },
11
+ hex: { header: '07 01', body: '07' }
12
+ }
13
+ ];
14
+ class GetSerialPort extends Command {
15
+ constructor(parameters) {
16
+ super();
17
+ this.parameters = parameters;
18
+ this.size = REQUEST_ID_SIZE;
19
+ }
20
+ static fromBytes([requestId]) {
21
+ return new GetSerialPort({ requestId });
22
+ }
23
+ toBytes() {
24
+ return Command.toBytes(COMMAND_ID, new Uint8Array([this.parameters.requestId]));
25
+ }
26
+ }
27
+ GetSerialPort.id = COMMAND_ID;
28
+ GetSerialPort.directionType = DOWNLINK;
29
+ GetSerialPort.examples = examples;
30
+ GetSerialPort.hasParameters = true;
31
+ export default GetSerialPort;
32
+ //# sourceMappingURL=GetSerialPort.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GetSerialPort.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/GetSerialPort.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAqB,eAAe,EAAC,MAAM,8BAA8B,CAAC;AACjF,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAG1D,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,gBAAgB;QACtB,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;SACf;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAC;KACrC;CACJ,CAAC;AAsBF,MAAM,aAAc,SAAQ,OAAO;IAC/B,YAAqB,UAA8B;QAC/C,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAoB;QAG/C,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;IAChC,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,CAAC,SAAS,CAAa;QACtC,OAAO,IAAI,aAAa,CAAC,EAAC,SAAS,EAAC,CAAC,CAAC;IAC1C,CAAC;IAGD,OAAO;QACH,OAAO,OAAO,CAAC,OAAO,CAClB,UAAU,EACV,IAAI,UAAU,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAC9C,CAAC;IACN,CAAC;;AApBe,gBAAE,GAAG,UAAU,CAAC;AAEhB,2BAAa,GAAG,QAAQ,CAAC;AAEzB,sBAAQ,GAAG,QAAQ,CAAC;AAEpB,2BAAa,GAAG,IAAI,CAAC;AAkBzC,eAAe,aAAa,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import Command from '../../Command.js';
2
- import CommandBinaryBuffer, { REQUEST_ID_SIZE } from '../../CommandBinaryBuffer.js';
2
+ import CommandBinaryBuffer, { REQUEST_ID_SIZE, METER_ID_SIZE } from '../../CommandBinaryBuffer.js';
3
3
  import { DOWNLINK } from '../../../constants/directions.js';
4
4
  const COMMAND_ID = 0x11;
5
- const COMMAND_SIZE = REQUEST_ID_SIZE + 6;
5
+ const COMMAND_SIZE = REQUEST_ID_SIZE + METER_ID_SIZE + 5;
6
6
  const examples = [
7
7
  {
8
8
  name: 'request to read all archive 1 for the meter 2 starts with index 4',
@@ -12,7 +12,7 @@ const examples = [
12
12
  index: 4,
13
13
  meterId: 2
14
14
  },
15
- hex: { header: '11 07', body: '03 01 00 00 00 04 02' }
15
+ hex: { header: '11 0a', body: '03 01 00 00 00 04 00 00 00 02' }
16
16
  }
17
17
  ];
18
18
  class ReadMeterArchive extends Command {
@@ -27,7 +27,7 @@ class ReadMeterArchive extends Command {
27
27
  requestId: buffer.getUint8(),
28
28
  archiveType: buffer.getUint8(),
29
29
  index: buffer.getUint32(),
30
- meterId: buffer.getUint8()
30
+ meterId: buffer.getUint32()
31
31
  });
32
32
  }
33
33
  toBytes() {
@@ -36,7 +36,7 @@ class ReadMeterArchive extends Command {
36
36
  buffer.setUint8(requestId);
37
37
  buffer.setUint8(archiveType);
38
38
  buffer.setUint32(index);
39
- buffer.setUint8(meterId);
39
+ buffer.setUint32(meterId);
40
40
  return Command.toBytes(COMMAND_ID, buffer.toUint8Array());
41
41
  }
42
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ReadMeterArchive.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/ReadMeterArchive.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,mBAAmB,EAAE,EAAC,eAAe,EAAqB,MAAM,8BAA8B,CAAC;AACtG,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAa1D,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,YAAY,GAAG,eAAe,GAAG,CAAC,CAAC;AAEzC,MAAM,QAAQ,GAAwB;IAElC;QACI,IAAI,EAAE,mEAAmE;QACzE,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,CAAC;YACd,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,CAAC;SACb;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,sBAAsB,EAAC;KACvD;CACJ,CAAC;AAyBF,MAAM,gBAAiB,SAAQ,OAAO;IAClC,YAAqB,UAAuC;QACxD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAA6B;QAGxD,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC7B,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,gBAAgB,CAAC;YACxB,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC5B,WAAW,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC9B,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE;YACzB,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE;SAC7B,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QACjE,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;QAE5D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3B,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC7B,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACxB,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEzB,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AAhCe,mBAAE,GAAG,UAAU,CAAC;AAEhB,8BAAa,GAAG,QAAQ,CAAC;AAEzB,yBAAQ,GAAG,QAAQ,CAAC;AAEpB,8BAAa,GAAG,IAAI,CAAC;AA8BzC,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"ReadMeterArchive.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/ReadMeterArchive.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,mBAAmB,EAAE,EAAC,eAAe,EAAE,aAAa,EAAqB,MAAM,8BAA8B,CAAC;AACrH,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAa1D,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,YAAY,GAAG,eAAe,GAAG,aAAa,GAAG,CAAC,CAAC;AAEzD,MAAM,QAAQ,GAAwB;IAElC;QACI,IAAI,EAAE,mEAAmE;QACzE,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,CAAC;YACd,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,CAAC;SACb;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,+BAA+B,EAAC;KAChE;CACJ,CAAC;AAyBF,MAAM,gBAAiB,SAAQ,OAAO;IAClC,YAAqB,UAAuC;QACxD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAA6B;QAGxD,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC7B,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,gBAAgB,CAAC;YACxB,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC5B,WAAW,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC9B,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE;YACzB,OAAO,EAAE,MAAM,CAAC,SAAS,EAAE;SAC9B,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QACjE,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;QAE5D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3B,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC7B,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACxB,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAE1B,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AAhCe,mBAAE,GAAG,UAAU,CAAC;AAEhB,8BAAa,GAAG,QAAQ,CAAC;AAEzB,yBAAQ,GAAG,QAAQ,CAAC;AAEpB,8BAAa,GAAG,IAAI,CAAC;AA8BzC,eAAe,gBAAgB,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import Command from '../../Command.js';
2
- import CommandBinaryBuffer, { REQUEST_ID_SIZE } from '../../CommandBinaryBuffer.js';
2
+ import CommandBinaryBuffer, { REQUEST_ID_SIZE, METER_ID_SIZE } from '../../CommandBinaryBuffer.js';
3
3
  import { DOWNLINK } from '../../../constants/directions.js';
4
4
  const COMMAND_ID = 0x13;
5
- const COMMAND_SIZE = REQUEST_ID_SIZE + 10;
5
+ const COMMAND_SIZE = REQUEST_ID_SIZE + METER_ID_SIZE + 9;
6
6
  const examples = [
7
7
  {
8
8
  name: 'request to read all archive 2 for the meter 1 starts with index 0 for the date 15-09-23 14:24:22',
@@ -13,7 +13,7 @@ const examples = [
13
13
  meterId: 1,
14
14
  time2000: 496333462
15
15
  },
16
- hex: { header: '13 0b', body: '03 02 00 00 00 00 01 1d 95 72 96' }
16
+ hex: { header: '13 0e', body: '03 02 00 00 00 00 00 00 00 01 1d 95 72 96' }
17
17
  }
18
18
  ];
19
19
  class ReadMeterArchiveWithDate extends Command {
@@ -28,7 +28,7 @@ class ReadMeterArchiveWithDate extends Command {
28
28
  requestId: buffer.getUint8(),
29
29
  archiveType: buffer.getUint8(),
30
30
  index: buffer.getUint32(),
31
- meterId: buffer.getUint8(),
31
+ meterId: buffer.getUint32(),
32
32
  time2000: buffer.getUint32()
33
33
  });
34
34
  }
@@ -38,7 +38,7 @@ class ReadMeterArchiveWithDate extends Command {
38
38
  buffer.setUint8(requestId);
39
39
  buffer.setUint8(archiveType);
40
40
  buffer.setUint32(index);
41
- buffer.setUint8(meterId);
41
+ buffer.setUint32(meterId);
42
42
  buffer.setUint32(time2000);
43
43
  return Command.toBytes(COMMAND_ID, buffer.toUint8Array());
44
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ReadMeterArchiveWithDate.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/ReadMeterArchiveWithDate.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,mBAAmB,EAAE,EAAC,eAAe,EAAqB,MAAM,8BAA8B,CAAC;AACtG,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAe1D,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,YAAY,GAAG,eAAe,GAAG,EAAE,CAAC;AAE1C,MAAM,QAAQ,GAAwB;IAElC;QACI,IAAI,EAAE,kGAAkG;QACxG,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,CAAC;YACd,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,SAAS;SACtB;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,kCAAkC,EAAC;KACnE;CACJ,CAAC;AA0BF,MAAM,wBAAyB,SAAQ,OAAO;IAC1C,YAAqB,UAA+C;QAChE,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAqC;QAGhE,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC7B,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,wBAAwB,CAAC;YAChC,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC5B,WAAW,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC9B,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE;YACzB,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC1B,QAAQ,EAAE,MAAM,CAAC,SAAS,EAAE;SAC/B,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAC3E,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;QAE5D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3B,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC7B,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACxB,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzB,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE3B,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AAlCe,2BAAE,GAAG,UAAU,CAAC;AAEhB,sCAAa,GAAG,QAAQ,CAAC;AAEzB,iCAAQ,GAAG,QAAQ,CAAC;AAEpB,sCAAa,GAAG,IAAI,CAAC;AAgCzC,eAAe,wBAAwB,CAAC"}
1
+ {"version":3,"file":"ReadMeterArchiveWithDate.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/ReadMeterArchiveWithDate.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,mBAAmB,EAAE,EAAC,eAAe,EAAE,aAAa,EAAqB,MAAM,8BAA8B,CAAC;AACrH,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAe1D,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,YAAY,GAAG,eAAe,GAAG,aAAa,GAAG,CAAC,CAAC;AAEzD,MAAM,QAAQ,GAAwB;IAElC;QACI,IAAI,EAAE,kGAAkG;QACxG,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,CAAC;YACd,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,SAAS;SACtB;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,2CAA2C,EAAC;KAC5E;CACJ,CAAC;AA0BF,MAAM,wBAAyB,SAAQ,OAAO;IAC1C,YAAqB,UAA+C;QAChE,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAqC;QAGhE,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC7B,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,wBAAwB,CAAC;YAChC,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC5B,WAAW,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC9B,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE;YACzB,OAAO,EAAE,MAAM,CAAC,SAAS,EAAE;YAC3B,QAAQ,EAAE,MAAM,CAAC,SAAS,EAAE;SAC/B,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAC3E,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;QAE5D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3B,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC7B,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACxB,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC1B,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE3B,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AAlCe,2BAAE,GAAG,UAAU,CAAC;AAEhB,sCAAa,GAAG,QAAQ,CAAC;AAEzB,iCAAQ,GAAG,QAAQ,CAAC;AAEpB,sCAAa,GAAG,IAAI,CAAC;AAgCzC,eAAe,wBAAwB,CAAC"}
@@ -10,7 +10,7 @@ declare class RemoveMeter extends Command {
10
10
  static readonly directionType = 1;
11
11
  static readonly examples: TCommandExampleList;
12
12
  static readonly hasParameters = true;
13
- static fromBytes([requestId, meterId]: Uint8Array): RemoveMeter;
13
+ static fromBytes(data: Uint8Array): RemoveMeter;
14
14
  toBytes(): Uint8Array;
15
15
  }
16
16
  export default RemoveMeter;
@@ -1,8 +1,8 @@
1
1
  import Command from '../../Command.js';
2
- import { REQUEST_ID_SIZE } from '../../CommandBinaryBuffer.js';
2
+ import CommandBinaryBuffer, { REQUEST_ID_SIZE, METER_ID_SIZE } from '../../CommandBinaryBuffer.js';
3
3
  import { DOWNLINK } from '../../../constants/directions.js';
4
4
  const COMMAND_ID = 0x72;
5
- const COMMAND_SIZE = REQUEST_ID_SIZE + 1;
5
+ const COMMAND_SIZE = REQUEST_ID_SIZE + METER_ID_SIZE;
6
6
  const examples = [
7
7
  {
8
8
  name: 'remove meter 17',
@@ -10,7 +10,7 @@ const examples = [
10
10
  requestId: 3,
11
11
  meterId: 17
12
12
  },
13
- hex: { header: '72 02', body: '03 11' }
13
+ hex: { header: '72 05', body: '03 00 00 00 11' }
14
14
  }
15
15
  ];
16
16
  class RemoveMeter extends Command {
@@ -19,12 +19,19 @@ class RemoveMeter extends Command {
19
19
  this.parameters = parameters;
20
20
  this.size = COMMAND_SIZE;
21
21
  }
22
- static fromBytes([requestId, meterId]) {
23
- return new RemoveMeter({ requestId, meterId });
22
+ static fromBytes(data) {
23
+ const buffer = new CommandBinaryBuffer(data);
24
+ return new RemoveMeter({
25
+ requestId: buffer.getUint8(),
26
+ meterId: buffer.getUint32()
27
+ });
24
28
  }
25
29
  toBytes() {
26
- const { parameters } = this;
27
- return Command.toBytes(COMMAND_ID, new Uint8Array([parameters.requestId, parameters.meterId]));
30
+ const { requestId, meterId } = this.parameters;
31
+ const buffer = new CommandBinaryBuffer(this.size);
32
+ buffer.setUint8(requestId);
33
+ buffer.setUint32(meterId);
34
+ return Command.toBytes(COMMAND_ID, buffer.toUint8Array());
28
35
  }
29
36
  }
30
37
  RemoveMeter.id = COMMAND_ID;
@@ -1 +1 @@
1
- {"version":3,"file":"RemoveMeter.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/RemoveMeter.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAC,eAAe,EAAqB,MAAM,8BAA8B,CAAC;AACjF,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAW1D,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,YAAY,GAAG,eAAe,GAAG,CAAC,CAAC;AAEzC,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,iBAAiB;QACvB,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,OAAO,EAAE,EAAE;SACd;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAC;KACxC;CACJ,CAAC;AAuBF,MAAM,WAAY,SAAQ,OAAO;IAC7B,YAAqB,UAAkC;QACnD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAwB;QAGnD,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC7B,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,CAAC,SAAS,EAAE,OAAO,CAAa;QAC/C,OAAO,IAAI,WAAW,CAAC,EAAC,SAAS,EAAE,OAAO,EAAC,CAAC,CAAC;IACjD,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,UAAU,EAAC,GAAG,IAAI,CAAC;QAE1B,OAAO,OAAO,CAAC,OAAO,CAClB,UAAU,EACV,IAAI,UAAU,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAC7D,CAAC;IACN,CAAC;;AAtBe,cAAE,GAAG,UAAU,CAAC;AAEhB,yBAAa,GAAG,QAAQ,CAAC;AAEzB,oBAAQ,GAAG,QAAQ,CAAC;AAEpB,yBAAa,GAAG,IAAI,CAAC;AAoBzC,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"RemoveMeter.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/RemoveMeter.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,mBAAmB,EAAE,EAAC,eAAe,EAAE,aAAa,EAAqB,MAAM,8BAA8B,CAAC;AACrH,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAW1D,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,YAAY,GAAG,eAAe,GAAG,aAAa,CAAC;AAErD,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,iBAAiB;QACvB,UAAU,EAAE;YACR,SAAS,EAAE,CAAC;YACZ,OAAO,EAAE,EAAE;SACd;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAC;KACjD;CACJ,CAAC;AAuBF,MAAM,WAAY,SAAQ,OAAO;IAC7B,YAAqB,UAAkC;QACnD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAwB;QAGnD,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC7B,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,WAAW,CAAC;YACnB,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC5B,OAAO,EAAE,MAAM,CAAC,SAAS,EAAE;SAC9B,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,SAAS,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAC7C,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;QAE5D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3B,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAE1B,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AA5Be,cAAE,GAAG,UAAU,CAAC;AAEhB,yBAAa,GAAG,QAAQ,CAAC;AAEzB,oBAAQ,GAAG,QAAQ,CAAC;AAEpB,yBAAa,GAAG,IAAI,CAAC;AA0BzC,eAAe,WAAW,CAAC"}
@@ -1,14 +1,8 @@
1
1
  import Command, { TCommandExampleList } from '../../Command.js';
2
- import { ICommandParameters } from '../../CommandBinaryBuffer.js';
3
- interface ISetSerialPortParameters extends ICommandParameters {
4
- baudRate: number;
5
- dataBits: number;
6
- parity: number;
7
- fixed: boolean;
8
- }
2
+ import { ISerialPortParameters, ICommandParameters } from '../../CommandBinaryBuffer.js';
9
3
  declare class SetSerialPort extends Command {
10
- parameters: ISetSerialPortParameters;
11
- constructor(parameters: ISetSerialPortParameters);
4
+ parameters: ISerialPortParameters & ICommandParameters;
5
+ constructor(parameters: ISerialPortParameters & ICommandParameters);
12
6
  static readonly id = 9;
13
7
  static readonly directionType = 1;
14
8
  static readonly examples: TCommandExampleList;
@@ -11,10 +11,9 @@ const examples = [
11
11
  requestId: 52,
12
12
  baudRate: 5,
13
13
  dataBits: 8,
14
- parity: parityTypes.ODD,
15
- fixed: true
14
+ parity: parityTypes.ODD
16
15
  },
17
- hex: { header: '09 04', body: '34 05 08 05' }
16
+ hex: { header: '09 04', body: '34 05 08 01' }
18
17
  },
19
18
  {
20
19
  name: 'set settings: 115200, 7, none',
@@ -22,8 +21,7 @@ const examples = [
22
21
  requestId: 52,
23
22
  baudRate: 12,
24
23
  dataBits: 7,
25
- parity: parityTypes.NONE,
26
- fixed: false
24
+ parity: parityTypes.NONE
27
25
  },
28
26
  hex: { header: '09 04', body: '34 0c 07 00' }
29
27
  }
@@ -38,18 +36,13 @@ class SetSerialPort extends Command {
38
36
  const buffer = new CommandBinaryBuffer(data);
39
37
  return new SetSerialPort({
40
38
  requestId: buffer.getUint8(),
41
- baudRate: buffer.getUint8(),
42
- dataBits: buffer.getUint8(),
43
- ...buffer.getSerialPortFlags()
39
+ ...buffer.getSerialPortParameters()
44
40
  });
45
41
  }
46
42
  toBytes() {
47
43
  const buffer = new CommandBinaryBuffer(COMMAND_SIZE);
48
- const { requestId, baudRate, dataBits, parity, fixed } = this.parameters;
49
- buffer.setUint8(requestId);
50
- buffer.setUint8(baudRate);
51
- buffer.setUint8(dataBits);
52
- buffer.setSerialPortFlags({ parity, fixed });
44
+ buffer.setUint8(this.parameters.requestId);
45
+ buffer.setSerialPortParameters(this.parameters);
53
46
  return Command.toBytes(COMMAND_ID, buffer.toUint8Array());
54
47
  }
55
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SetSerialPort.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/SetSerialPort.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,mBAAmB,EAAE,EAAC,eAAe,EAAqB,MAAM,8BAA8B,CAAC;AACtG,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAC1D,OAAO,KAAK,WAAW,MAAM,gCAAgC,CAAC;AAc9D,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,YAAY,GAAG,eAAe,GAAG,CAAC,CAAC;AAEzC,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,kCAAkC;QACxC,UAAU,EAAE;YACR,SAAS,EAAE,EAAE;YACb,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,CAAC;YACX,MAAM,EAAE,WAAW,CAAC,GAAG;YACvB,KAAK,EAAE,IAAI;SACd;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAC;KAC9C;IACD;QACI,IAAI,EAAE,+BAA+B;QACrC,UAAU,EAAE;YACR,SAAS,EAAE,EAAE;YACb,QAAQ,EAAE,EAAE;YACZ,QAAQ,EAAE,CAAC;YACX,MAAM,EAAE,WAAW,CAAC,IAAI;YACxB,KAAK,EAAE,KAAK;SACf;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAC;KAC9C;CACJ,CAAC;AA0BF,MAAM,aAAc,SAAQ,OAAO;IAC/B,YAAqB,UAAoC;QACrD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAA0B;QAGrD,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC7B,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,aAAa,CAAC;YACrB,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC5B,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC3B,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE;YAE3B,GAAG,MAAM,CAAC,kBAAkB,EAAE;SACjC,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,YAAY,CAAC,CAAC;QACrD,MAAM,EACF,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,KAAK,EACR,GAAG,IAAI,CAAC,UAAU,CAAC;QAEpB,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3B,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC1B,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC1B,MAAM,CAAC,kBAAkB,CAAC,EAAC,MAAM,EAAE,KAAK,EAAC,CAAC,CAAC;QAE3C,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AAvCe,gBAAE,GAAG,UAAU,CAAC;AAEhB,2BAAa,GAAG,QAAQ,CAAC;AAEzB,sBAAQ,GAAG,QAAQ,CAAC;AAEpB,2BAAa,GAAG,IAAI,CAAC;AAqCzC,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"SetSerialPort.js","sourceRoot":"","sources":["../../../../src/obis-observer/commands/downlink/SetSerialPort.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,mBAAmB,EAAE,EAAC,eAAe,EAA4C,MAAM,8BAA8B,CAAC;AAC7H,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAC1D,OAAO,KAAK,WAAW,MAAM,gCAAgC,CAAC;AAG9D,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,YAAY,GAAG,eAAe,GAAG,CAAC,CAAC;AAEzC,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,kCAAkC;QACxC,UAAU,EAAE;YACR,SAAS,EAAE,EAAE;YACb,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,CAAC;YACX,MAAM,EAAE,WAAW,CAAC,GAAG;SAC1B;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAC;KAC9C;IACD;QACI,IAAI,EAAE,+BAA+B;QACrC,UAAU,EAAE;YACR,SAAS,EAAE,EAAE;YACb,QAAQ,EAAE,EAAE;YACZ,QAAQ,EAAE,CAAC;YACX,MAAM,EAAE,WAAW,CAAC,IAAI;SAC3B;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAC;KAC9C;CACJ,CAAC;AAyBF,MAAM,aAAc,SAAQ,OAAO;IAC/B,YAAqB,UAAsD;QACvE,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAA4C;QAGvE,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC7B,CAAC;IAaD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,aAAa,CAAC;YACrB,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE;YAC5B,GAAG,MAAM,CAAC,uBAAuB,EAAE;SACtC,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAErD,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,CAAC,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEhD,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AA3Be,gBAAE,GAAG,UAAU,CAAC;AAEhB,2BAAa,GAAG,QAAQ,CAAC;AAEzB,sBAAQ,GAAG,QAAQ,CAAC;AAEpB,2BAAa,GAAG,IAAI,CAAC;AAyBzC,eAAe,aAAa,CAAC"}