jooby-codec 1.4.0 → 1.5.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 (61) hide show
  1. package/dist/CommandBinaryBuffer.d.ts +40 -23
  2. package/dist/CommandBinaryBuffer.js +93 -58
  3. package/dist/CommandBinaryBuffer.js.map +1 -1
  4. package/dist/commands/downlink/ExAbsArchiveDaysMC.d.ts +2 -2
  5. package/dist/commands/downlink/ExAbsArchiveDaysMC.js +6 -6
  6. package/dist/commands/downlink/ExAbsArchiveDaysMC.js.map +1 -1
  7. package/dist/commands/downlink/ExAbsArchiveHoursMC.d.ts +2 -2
  8. package/dist/commands/downlink/ExAbsArchiveHoursMC.js +6 -6
  9. package/dist/commands/downlink/ExAbsArchiveHoursMC.js.map +1 -1
  10. package/dist/commands/downlink/ExAbsCurrentMC.d.ts +30 -0
  11. package/dist/commands/downlink/ExAbsCurrentMC.js +43 -0
  12. package/dist/commands/downlink/ExAbsCurrentMC.js.map +1 -0
  13. package/dist/commands/downlink/GetArchiveDaysMC.d.ts +2 -2
  14. package/dist/commands/downlink/GetArchiveDaysMC.js +6 -6
  15. package/dist/commands/downlink/GetArchiveDaysMC.js.map +1 -1
  16. package/dist/commands/downlink/GetArchiveHoursMC.d.ts +2 -2
  17. package/dist/commands/downlink/GetArchiveHoursMC.js +6 -6
  18. package/dist/commands/downlink/GetArchiveHoursMC.js.map +1 -1
  19. package/dist/commands/downlink/SetParameter.d.ts +7 -1
  20. package/dist/commands/downlink/SetParameter.js +11 -0
  21. package/dist/commands/downlink/SetParameter.js.map +1 -1
  22. package/dist/commands/downlink/index.d.ts +1 -0
  23. package/dist/commands/downlink/index.js +1 -0
  24. package/dist/commands/downlink/index.js.map +1 -1
  25. package/dist/commands/uplink/DataDayMC.d.ts +2 -2
  26. package/dist/commands/uplink/DataDayMC.js +8 -8
  27. package/dist/commands/uplink/DataDayMC.js.map +1 -1
  28. package/dist/commands/uplink/DataHourMC.d.ts +10 -4
  29. package/dist/commands/uplink/DataHourMC.js +13 -35
  30. package/dist/commands/uplink/DataHourMC.js.map +1 -1
  31. package/dist/commands/uplink/ExAbsArchiveDaysMC.d.ts +9 -38
  32. package/dist/commands/uplink/ExAbsArchiveDaysMC.js +16 -38
  33. package/dist/commands/uplink/ExAbsArchiveDaysMC.js.map +1 -1
  34. package/dist/commands/uplink/ExAbsArchiveHoursMC.d.ts +13 -7
  35. package/dist/commands/uplink/ExAbsArchiveHoursMC.js +24 -60
  36. package/dist/commands/uplink/ExAbsArchiveHoursMC.js.map +1 -1
  37. package/dist/commands/uplink/ExAbsCurrentMC.d.ts +15 -0
  38. package/dist/commands/uplink/ExAbsCurrentMC.js +30 -0
  39. package/dist/commands/uplink/ExAbsCurrentMC.js.map +1 -0
  40. package/dist/commands/uplink/ExAbsDayMC.d.ts +8 -3
  41. package/dist/commands/uplink/ExAbsDayMC.js +10 -36
  42. package/dist/commands/uplink/ExAbsDayMC.js.map +1 -1
  43. package/dist/commands/uplink/ExAbsHourMC.d.ts +58 -6
  44. package/dist/commands/uplink/ExAbsHourMC.js +45 -50
  45. package/dist/commands/uplink/ExAbsHourMC.js.map +1 -1
  46. package/dist/commands/uplink/GetArchiveDaysMC.d.ts +5 -29
  47. package/dist/commands/uplink/GetArchiveDaysMC.js +11 -37
  48. package/dist/commands/uplink/GetArchiveDaysMC.js.map +1 -1
  49. package/dist/commands/uplink/GetArchiveHoursMC.d.ts +47 -7
  50. package/dist/commands/uplink/GetArchiveHoursMC.js +43 -23
  51. package/dist/commands/uplink/GetArchiveHoursMC.js.map +1 -1
  52. package/dist/commands/uplink/GetCurrentMC.d.ts +2 -8
  53. package/dist/commands/uplink/GetCurrentMC.js +3 -3
  54. package/dist/commands/uplink/GetCurrentMC.js.map +1 -1
  55. package/dist/commands/uplink/index.d.ts +1 -0
  56. package/dist/commands/uplink/index.js +1 -0
  57. package/dist/commands/uplink/index.js.map +1 -1
  58. package/dist/constants/deviceParameters.d.ts +5 -1
  59. package/dist/constants/deviceParameters.js +5 -1
  60. package/dist/constants/deviceParameters.js.map +1 -1
  61. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"GetArchiveDaysMC.js","sourceRoot":"","sources":["../../../src/commands/uplink/GetArchiveDaysMC.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GetArchiveDaysMC.js","sourceRoot":"","sources":["../../../src/commands/uplink/GetArchiveDaysMC.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,mBAAmC,MAAM,8BAA8B,CAAC;AAC/E,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AACzD,OAAO,EAAC,kBAAkB,EAAC,MAAM,qBAAqB,CAAC;AAqBvD,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,aAAa,GAAG,qBAAqB,CAAC;AAE5C,sFAAsF;AACtF,6DAA6D;AAC7D,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAGnC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,gBAAiB,SAAQ,OAAO;IAClC,YAAqB,UAA6C;QAC9D,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAmC;QAG9D,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAChG,CAAC;IAQD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC/B,MAAM,WAAW,GAAwB,EAAE,CAAC;QAE5C,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YAC5B,MAAM,OAAO,GAAkB,EAAE,CAAC;YAElC,WAAW,CAAC,IAAI,CAAC;gBACb,OAAO;gBACP,KAAK,EAAE,YAAY;aACtB,CAAC,CAAC;YAEH,KAAM,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,EAAE,EAAE,GAAG,EAAG;gBACnC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;aAC3C;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,gBAAgB,CAAC,EAAC,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,kBAAkB,CAAC,IAAI,CAAC,EAAC,CAAC,CAAC;IAC1F,CAAC;IAED,OAAO;QACH,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,qBAAqB,CAAC,CAAC;QAC9D,MAAM,EAAC,IAAI,EAAE,SAAS,EAAE,WAAW,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAEvD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1B,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAChC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEtB,WAAW,CAAC,OAAO,CAAC,CAAC,EAAC,OAAO,EAAC,EAAE,EAAE;YAC9B,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAClE,CAAC;;AA1Ce,mBAAE,GAAG,UAAU,CAAC;AAEhB,8BAAa,GAAG,MAAM,CAAC;AAEvB,sBAAK,GAAG,aAAa,CAAC;AA0C1C,eAAe,gBAAgB,CAAC"}
@@ -1,27 +1,67 @@
1
1
  import Command from '../../Command.js';
2
- import { IChannel } from '../../CommandBinaryBuffer.js';
2
+ import { IChannelHours } from '../../CommandBinaryBuffer.js';
3
3
  /**
4
4
  * GetArchiveHoursMC command parameters
5
5
  *
6
6
  * @example
7
7
  * // archive hours values from 001-03-10T12:00:00.000Z with 1-hour diff
8
8
  * {
9
- * channelList: [{value: 101, index: 0, diff: [value: 1]}],
10
- * date: '2001-03-10T12:00:00.000Z',
9
+ * channelList: [{value: 101, index: 0, diff: [1]}],
10
+ * startTime: 756648000,
11
11
  * hours: 1
12
12
  * }
13
13
  */
14
14
  interface IUplinkGetArchiveHoursMCParameters {
15
- channelList: Array<IChannel>;
16
- date: Date | undefined | string;
17
- hours: number | undefined;
15
+ channelList: Array<IChannelHours>;
16
+ startTime: number;
17
+ hours: number;
18
18
  }
19
+ /**
20
+ * Uplink command
21
+ *
22
+ * @example
23
+ * ```js
24
+ * import GetArchiveHoursMC from 'jooby-codec/commands/uplink/GetArchiveHoursMC';
25
+ *
26
+ * const command = new GetArchiveHoursMC(
27
+ * startTime: 756648000,
28
+ * hours: 1,
29
+ * channelList: [
30
+ * {
31
+ * value: 131,
32
+ * index: 0,
33
+ * diff: [10]
34
+ * },
35
+ * {
36
+ * value: 8,
37
+ * index: 1,
38
+ * diff: [10]
39
+ * },
40
+ * {
41
+ * value: 8,
42
+ * index: 2,
43
+ * diff: [10]
44
+ * },
45
+ * {
46
+ * value: 12,
47
+ * index: 3,
48
+ * diff: [10]
49
+ * }
50
+ * ]
51
+ * );
52
+ *
53
+ * // output command binary in hex representation
54
+ * console.log(command.toHex());
55
+ * // 1a 0d 2f 97 0c 0f 83 01 0a 08 0a 08 0a 0c 0a
56
+ * ```
57
+ * [Command format documentation](https://github.com/jooby-dev/jooby-docs/blob/main/docs/commands/GetArchiveHoursMC.md#response)
58
+ */
19
59
  declare class GetArchiveHoursMC extends Command {
20
60
  parameters: IUplinkGetArchiveHoursMCParameters;
21
61
  constructor(parameters: IUplinkGetArchiveHoursMCParameters);
22
62
  static readonly id = 26;
23
63
  static readonly directionType = 2;
24
- static readonly title = "GET_ARCHIVE_HOURS_MUL";
64
+ static readonly title = "GET_ARCHIVE_HOURS";
25
65
  static fromBytes(data: Uint8Array): GetArchiveHoursMC;
26
66
  toBytes(): Uint8Array;
27
67
  }
@@ -1,35 +1,56 @@
1
1
  import Command from '../../Command.js';
2
2
  import CommandBinaryBuffer from '../../CommandBinaryBuffer.js';
3
3
  import { UPLINK } from '../../constants/directionTypes.js';
4
- import { getDateFromSeconds } from '../../utils/time.js';
5
4
  const COMMAND_ID = 0x1a;
6
- const COMMAND_TITLE = 'GET_ARCHIVE_HOURS_MUL';
5
+ const COMMAND_TITLE = 'GET_ARCHIVE_HOURS';
7
6
  // date 2 bytes, hour 1 byte, channelList - 1 byte, so max channelList = 4
8
7
  // max hours diff - 7 (3 bit value)
9
8
  // 4 + (4 channelList * 5 bytes of hour values) + (4 * 5 bytes of diff * 7 max hours diff)
10
9
  const COMMAND_BODY_MAX_SIZE = 164;
10
+ /**
11
+ * Uplink command
12
+ *
13
+ * @example
14
+ * ```js
15
+ * import GetArchiveHoursMC from 'jooby-codec/commands/uplink/GetArchiveHoursMC';
16
+ *
17
+ * const command = new GetArchiveHoursMC(
18
+ * startTime: 756648000,
19
+ * hours: 1,
20
+ * channelList: [
21
+ * {
22
+ * value: 131,
23
+ * index: 0,
24
+ * diff: [10]
25
+ * },
26
+ * {
27
+ * value: 8,
28
+ * index: 1,
29
+ * diff: [10]
30
+ * },
31
+ * {
32
+ * value: 8,
33
+ * index: 2,
34
+ * diff: [10]
35
+ * },
36
+ * {
37
+ * value: 12,
38
+ * index: 3,
39
+ * diff: [10]
40
+ * }
41
+ * ]
42
+ * );
43
+ *
44
+ * // output command binary in hex representation
45
+ * console.log(command.toHex());
46
+ * // 1a 0d 2f 97 0c 0f 83 01 0a 08 0a 08 0a 0c 0a
47
+ * ```
48
+ * [Command format documentation](https://github.com/jooby-dev/jooby-docs/blob/main/docs/commands/GetArchiveHoursMC.md#response)
49
+ */
11
50
  class GetArchiveHoursMC extends Command {
12
51
  constructor(parameters) {
13
52
  super();
14
53
  this.parameters = parameters;
15
- const { date, hours, channelList } = this.parameters;
16
- // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
17
- if (date === undefined) {
18
- const [{ seconds }] = channelList;
19
- if (seconds) {
20
- this.parameters.date = getDateFromSeconds(seconds);
21
- }
22
- else {
23
- throw new Error(`${GetArchiveHoursMC.getName()} can't recognize time`);
24
- }
25
- }
26
- else if (typeof date === 'string') {
27
- this.parameters.date = new Date(date);
28
- }
29
- // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
30
- if (hours === undefined) {
31
- this.parameters.hours = channelList[0].diff.length;
32
- }
33
54
  this.parameters.channelList = this.parameters.channelList.sort((a, b) => a.index - b.index);
34
55
  }
35
56
  static fromBytes(data) {
@@ -38,9 +59,8 @@ class GetArchiveHoursMC extends Command {
38
59
  }
39
60
  toBytes() {
40
61
  const buffer = new CommandBinaryBuffer(COMMAND_BODY_MAX_SIZE);
41
- const { hours, date, channelList } = this.parameters;
42
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
43
- buffer.setChannelsValuesWithHourDiff(hours, date, channelList);
62
+ const { hours, startTime, channelList } = this.parameters;
63
+ buffer.setChannelsValuesWithHourDiff(hours, startTime, channelList);
44
64
  return Command.toBytes(COMMAND_ID, buffer.getBytesToOffset());
45
65
  }
46
66
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GetArchiveHoursMC.js","sourceRoot":"","sources":["../../../src/commands/uplink/GetArchiveHoursMC.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,mBAA+B,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AACzD,OAAO,EAAC,kBAAkB,EAAC,MAAM,qBAAqB,CAAC;AAqBvD,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,aAAa,GAAG,uBAAuB,CAAC;AAE9C,0EAA0E;AAC1E,mCAAmC;AACnC,0FAA0F;AAC1F,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAGlC,MAAM,iBAAkB,SAAQ,OAAO;IACnC,YAAqB,UAA8C;QAC/D,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAoC;QAG/D,MAAM,EAAC,IAAI,EAAE,KAAK,EAAE,WAAW,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAEnD,uEAAuE;QACvE,IAAK,IAAI,KAAK,SAAS,EAAG;YACtB,MAAM,CAAC,EAAC,OAAO,EAAC,CAAC,GAAG,WAAW,CAAC;YAEhC,IAAK,OAAO,EAAG;gBACX,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;aACtD;iBAAM;gBACH,MAAM,IAAI,KAAK,CAAC,GAAG,iBAAiB,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC;aAC1E;SACJ;aAAM,IAAK,OAAO,IAAI,KAAK,QAAQ,EAAG;YACnC,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;SACzC;QAED,uEAAuE;QACvE,IAAK,KAAK,KAAK,SAAS,EAAG;YACvB,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;SACtD;QAED,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAChG,CAAC;IAQD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,iBAAiB,CAAC,MAAM,CAAC,6BAA6B,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,OAAO;QACH,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,qBAAqB,CAAC,CAAC;QAC9D,MAAM,EAAC,KAAK,EAAE,IAAI,EAAE,WAAW,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAEnD,oEAAoE;QACpE,MAAM,CAAC,6BAA6B,CAAC,KAAM,EAAE,IAAY,EAAE,WAAW,CAAC,CAAC;QAExE,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAClE,CAAC;;AApBe,oBAAE,GAAG,UAAU,CAAC;AAEhB,+BAAa,GAAG,MAAM,CAAC;AAEvB,uBAAK,GAAG,aAAa,CAAC;AAoB1C,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"GetArchiveHoursMC.js","sourceRoot":"","sources":["../../../src/commands/uplink/GetArchiveHoursMC.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,mBAAoC,MAAM,8BAA8B,CAAC;AAChF,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AAqBzD,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,aAAa,GAAG,mBAAmB,CAAC;AAE1C,0EAA0E;AAC1E,mCAAmC;AACnC,0FAA0F;AAC1F,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAGlC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,iBAAkB,SAAQ,OAAO;IACnC,YAAqB,UAA8C;QAC/D,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAoC;QAG/D,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAChG,CAAC;IAQD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,iBAAiB,CAAC,MAAM,CAAC,6BAA6B,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,OAAO;QACH,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,qBAAqB,CAAC,CAAC;QAC9D,MAAM,EAAC,KAAK,EAAE,SAAS,EAAE,WAAW,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAExD,MAAM,CAAC,6BAA6B,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAEpE,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAClE,CAAC;;AAnBe,oBAAE,GAAG,UAAU,CAAC;AAEhB,+BAAa,GAAG,MAAM,CAAC;AAEvB,uBAAK,GAAG,aAAa,CAAC;AAmB1C,eAAe,iBAAiB,CAAC"}
@@ -1,16 +1,10 @@
1
1
  import Command from '../../Command.js';
2
- /**
3
- * GetCurrentMC command channel.
4
- */
5
- export interface IChannel {
6
- index: number;
7
- value: number;
8
- }
2
+ import { IChannelValue } from '../../CommandBinaryBuffer.js';
9
3
  /**
10
4
  * GetCurrentMC command parameters.
11
5
  */
12
6
  export interface IGetCurrentMCParameters {
13
- channelList: Array<IChannel>;
7
+ channelList: Array<IChannelValue>;
14
8
  }
15
9
  declare class GetCurrentMC extends Command {
16
10
  parameters: IGetCurrentMCParameters;
@@ -2,7 +2,7 @@ import Command from '../../Command.js';
2
2
  import CommandBinaryBuffer from '../../CommandBinaryBuffer.js';
3
3
  import { UPLINK } from '../../constants/directionTypes.js';
4
4
  const COMMAND_ID = 0x18;
5
- const COMMAND_TITLE = 'GET_CURRENT_MUL';
5
+ const COMMAND_TITLE = 'GET_CURRENT_MC';
6
6
  // 2 bytes for 7 channelList + (7 channelList * 5 byte for current value of channel)
7
7
  const COMMAND_BODY_MAX_SIZE = 37;
8
8
  class GetCurrentMC extends Command {
@@ -14,7 +14,7 @@ class GetCurrentMC extends Command {
14
14
  static fromBytes(data) {
15
15
  const parameters = { channelList: [] };
16
16
  const buffer = new CommandBinaryBuffer(data);
17
- const channelList = buffer.getChannels(false);
17
+ const channelList = buffer.getChannels();
18
18
  parameters.channelList = channelList.map(channelIndex => ({
19
19
  value: buffer.getExtendedValue(),
20
20
  index: channelIndex
@@ -24,7 +24,7 @@ class GetCurrentMC extends Command {
24
24
  toBytes() {
25
25
  const buffer = new CommandBinaryBuffer(COMMAND_BODY_MAX_SIZE);
26
26
  const { channelList } = this.parameters;
27
- buffer.setChannels(channelList.map(({ index }) => index));
27
+ buffer.setChannels(channelList);
28
28
  channelList.forEach(({ value }) => buffer.setExtendedValue(value));
29
29
  return Command.toBytes(COMMAND_ID, buffer.getBytesToOffset());
30
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GetCurrentMC.js","sourceRoot":"","sources":["../../../src/commands/uplink/GetCurrentMC.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,mBAAmB,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AAmBzD,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,aAAa,GAAG,iBAAiB,CAAC;AAExC,oFAAoF;AACpF,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAGjC,MAAM,YAAa,SAAQ,OAAO;IAC9B,YAAqB,UAAmC;QACpD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAyB;QAGpD,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAChG,CAAC;IAQD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,UAAU,GAA4B,EAAC,WAAW,EAAE,EAAE,EAAC,CAAC;QAE9D,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAE9C,UAAU,CAAC,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YACtD,KAAK,EAAE,MAAM,CAAC,gBAAgB,EAAE;YAChC,KAAK,EAAE,YAAY;SACtB,CAAC,CAAC,CAAC;QAEJ,OAAO,IAAI,YAAY,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAED,OAAO;QACH,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,qBAAqB,CAAC,CAAC;QAC9D,MAAM,EAAC,WAAW,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAEtC,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;QACxD,WAAW,CAAC,OAAO,CAAC,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;QAEjE,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAClE,CAAC;;AA7BM,eAAE,GAAG,UAAU,CAAC;AAEP,0BAAa,GAAG,MAAM,CAAC;AAEhC,kBAAK,GAAG,aAAa,CAAC;AA6BjC,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"GetCurrentMC.js","sourceRoot":"","sources":["../../../src/commands/uplink/GetCurrentMC.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,mBAAoC,MAAM,8BAA8B,CAAC;AAChF,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AAUzD,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,aAAa,GAAG,gBAAgB,CAAC;AAEvC,oFAAoF;AACpF,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAGjC,MAAM,YAAa,SAAQ,OAAO;IAC9B,YAAqB,UAAmC;QACpD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAyB;QAGpD,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAChG,CAAC;IAQD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,UAAU,GAA4B,EAAC,WAAW,EAAE,EAAE,EAAC,CAAC;QAE9D,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QAEzC,UAAU,CAAC,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YACtD,KAAK,EAAE,MAAM,CAAC,gBAAgB,EAAE;YAChC,KAAK,EAAE,YAAY;SACtB,CAAkB,CAAC,CAAC;QAErB,OAAO,IAAI,YAAY,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAED,OAAO;QACH,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,qBAAqB,CAAC,CAAC;QAC9D,MAAM,EAAC,WAAW,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAEtC,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAChC,WAAW,CAAC,OAAO,CAAC,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;QAEjE,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAClE,CAAC;;AA7BM,eAAE,GAAG,UAAU,CAAC;AAEP,0BAAa,GAAG,MAAM,CAAC;AAEhC,kBAAK,GAAG,aAAa,CAAC;AA6BjC,eAAe,YAAY,CAAC"}
@@ -6,6 +6,7 @@
6
6
  export { default as CorrectTime2000 } from './CorrectTime2000.js';
7
7
  export { default as DataDayMC } from './DataDayMC.js';
8
8
  export { default as DataHourMC } from './DataHourMC.js';
9
+ export { default as ExAbsCurrentMC } from './ExAbsCurrentMC.js';
9
10
  export { default as ExAbsArchiveDaysMC } from './ExAbsArchiveDaysMC.js';
10
11
  export { default as ExAbsArchiveHoursMC } from './ExAbsArchiveHoursMC.js';
11
12
  export { default as ExAbsDayMC } from './ExAbsDayMC.js';
@@ -6,6 +6,7 @@
6
6
  export { default as CorrectTime2000 } from './CorrectTime2000.js';
7
7
  export { default as DataDayMC } from './DataDayMC.js';
8
8
  export { default as DataHourMC } from './DataHourMC.js';
9
+ export { default as ExAbsCurrentMC } from './ExAbsCurrentMC.js';
9
10
  export { default as ExAbsArchiveDaysMC } from './ExAbsArchiveDaysMC.js';
10
11
  export { default as ExAbsArchiveHoursMC } from './ExAbsArchiveHoursMC.js';
11
12
  export { default as ExAbsDayMC } from './ExAbsDayMC.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/uplink/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,OAAO,IAAI,eAAe,EAAC,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAC,OAAO,IAAI,kBAAkB,EAAC,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAC,OAAO,IAAI,mBAAmB,EAAC,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAC,OAAO,IAAI,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAC,OAAO,IAAI,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAC,OAAO,IAAI,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAC,OAAO,IAAI,QAAQ,EAAC,MAAM,eAAe,CAAC;AAClD,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAC,OAAO,IAAI,QAAQ,EAAC,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/uplink/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,OAAO,IAAI,eAAe,EAAC,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAC,OAAO,IAAI,cAAc,EAAC,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAC,OAAO,IAAI,kBAAkB,EAAC,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAC,OAAO,IAAI,mBAAmB,EAAC,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAC,OAAO,IAAI,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAC,OAAO,IAAI,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAC,OAAO,IAAI,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAC,OAAO,IAAI,QAAQ,EAAC,MAAM,eAAe,CAAC;AAClD,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAC,OAAO,IAAI,QAAQ,EAAC,MAAM,eAAe,CAAC"}
@@ -10,6 +10,10 @@ export declare const INITIAL_DATA = 23;
10
10
  */
11
11
  export declare const ABSOLUTE_DATA_STATUS = 24;
12
12
  /**
13
- * same as INITIAL_DATA but with channel number
13
+ * same as INITIAL_DATA for a specific channel
14
14
  */
15
15
  export declare const INITIAL_DATA_MULTI_CHANNEL = 29;
16
+ /**
17
+ * Status of device data sending, absolute value or pulse counter for a specific channel
18
+ */
19
+ export declare const ABSOLUTE_DATA_STATUS_MULTI_CHANNEL = 30;
@@ -10,7 +10,11 @@ export const INITIAL_DATA = 23;
10
10
  */
11
11
  export const ABSOLUTE_DATA_STATUS = 24;
12
12
  /**
13
- * same as INITIAL_DATA but with channel number
13
+ * same as INITIAL_DATA for a specific channel
14
14
  */
15
15
  export const INITIAL_DATA_MULTI_CHANNEL = 29;
16
+ /**
17
+ * Status of device data sending, absolute value or pulse counter for a specific channel
18
+ */
19
+ export const ABSOLUTE_DATA_STATUS_MULTI_CHANNEL = 30;
16
20
  //# sourceMappingURL=deviceParameters.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"deviceParameters.js","sourceRoot":"","sources":["../../src/constants/deviceParameters.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAC;AAE/B;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAEvC;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"deviceParameters.js","sourceRoot":"","sources":["../../src/constants/deviceParameters.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAC;AAE/B;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAEvC;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,CAAC;AAE7C;;GAEG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jooby-codec",
3
- "version": "1.4.0",
3
+ "version": "1.5.0",
4
4
  "description": "Jooby message encoders/decoders",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",