jooby-codec 1.3.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 (95) hide show
  1. package/dist/CommandBinaryBuffer.d.ts +41 -24
  2. package/dist/CommandBinaryBuffer.js +100 -65
  3. package/dist/CommandBinaryBuffer.js.map +1 -1
  4. package/dist/commands/downlink/ExAbsArchiveDaysMC.d.ts +47 -0
  5. package/dist/commands/downlink/{ExAbsArchiveDaysMul.js → ExAbsArchiveDaysMC.js} +20 -20
  6. package/dist/commands/downlink/ExAbsArchiveDaysMC.js.map +1 -0
  7. package/dist/commands/downlink/ExAbsArchiveHoursMC.d.ts +47 -0
  8. package/dist/commands/downlink/{ExAbsArchiveHoursMul.js → ExAbsArchiveHoursMC.js} +20 -20
  9. package/dist/commands/downlink/ExAbsArchiveHoursMC.js.map +1 -0
  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 +47 -0
  14. package/dist/commands/downlink/{GetArchiveDaysMul.js → GetArchiveDaysMC.js} +20 -20
  15. package/dist/commands/downlink/GetArchiveDaysMC.js.map +1 -0
  16. package/dist/commands/downlink/GetArchiveHoursMC.d.ts +47 -0
  17. package/dist/commands/downlink/{GetArchiveHoursMul.js → GetArchiveHoursMC.js} +20 -20
  18. package/dist/commands/downlink/GetArchiveHoursMC.js.map +1 -0
  19. package/dist/commands/downlink/SetParameter.d.ts +8 -2
  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 +5 -4
  23. package/dist/commands/downlink/index.js +5 -4
  24. package/dist/commands/downlink/index.js.map +1 -1
  25. package/dist/commands/uplink/DataDayMC.d.ts +20 -0
  26. package/dist/commands/uplink/{DataDayMul.js → DataDayMC.js} +17 -17
  27. package/dist/commands/uplink/DataDayMC.js.map +1 -0
  28. package/dist/commands/uplink/DataHourMC.d.ts +17 -0
  29. package/dist/commands/uplink/DataHourMC.js +55 -0
  30. package/dist/commands/uplink/DataHourMC.js.map +1 -0
  31. package/dist/commands/uplink/ExAbsArchiveDaysMC.d.ts +17 -0
  32. package/dist/commands/uplink/ExAbsArchiveDaysMC.js +50 -0
  33. package/dist/commands/uplink/ExAbsArchiveDaysMC.js.map +1 -0
  34. package/dist/commands/uplink/ExAbsArchiveHoursMC.d.ts +17 -0
  35. package/dist/commands/uplink/ExAbsArchiveHoursMC.js +57 -0
  36. package/dist/commands/uplink/ExAbsArchiveHoursMC.js.map +1 -0
  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 +16 -0
  41. package/dist/commands/uplink/ExAbsDayMC.js +34 -0
  42. package/dist/commands/uplink/ExAbsDayMC.js.map +1 -0
  43. package/dist/commands/uplink/ExAbsHourMC.d.ts +63 -0
  44. package/dist/commands/uplink/ExAbsHourMC.js +87 -0
  45. package/dist/commands/uplink/ExAbsHourMC.js.map +1 -0
  46. package/dist/commands/uplink/GetArchiveDaysMC.d.ts +49 -0
  47. package/dist/commands/uplink/GetArchiveDaysMC.js +71 -0
  48. package/dist/commands/uplink/GetArchiveDaysMC.js.map +1 -0
  49. package/dist/commands/uplink/GetArchiveHoursMC.d.ts +68 -0
  50. package/dist/commands/uplink/GetArchiveHoursMC.js +71 -0
  51. package/dist/commands/uplink/GetArchiveHoursMC.js.map +1 -0
  52. package/dist/commands/uplink/GetCurrentMC.d.ts +18 -0
  53. package/dist/commands/uplink/GetCurrentMC.js +36 -0
  54. package/dist/commands/uplink/GetCurrentMC.js.map +1 -0
  55. package/dist/commands/uplink/index.d.ts +10 -9
  56. package/dist/commands/uplink/index.js +10 -9
  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
  62. package/dist/commands/downlink/ExAbsArchiveDaysMul.d.ts +0 -47
  63. package/dist/commands/downlink/ExAbsArchiveDaysMul.js.map +0 -1
  64. package/dist/commands/downlink/ExAbsArchiveHoursMul.d.ts +0 -47
  65. package/dist/commands/downlink/ExAbsArchiveHoursMul.js.map +0 -1
  66. package/dist/commands/downlink/GetArchiveDaysMul.d.ts +0 -47
  67. package/dist/commands/downlink/GetArchiveDaysMul.js.map +0 -1
  68. package/dist/commands/downlink/GetArchiveHoursMul.d.ts +0 -47
  69. package/dist/commands/downlink/GetArchiveHoursMul.js.map +0 -1
  70. package/dist/commands/uplink/DataDayMul.d.ts +0 -20
  71. package/dist/commands/uplink/DataDayMul.js.map +0 -1
  72. package/dist/commands/uplink/DataHourMul.d.ts +0 -11
  73. package/dist/commands/uplink/DataHourMul.js +0 -77
  74. package/dist/commands/uplink/DataHourMul.js.map +0 -1
  75. package/dist/commands/uplink/ExAbsArchiveDaysMul.d.ts +0 -46
  76. package/dist/commands/uplink/ExAbsArchiveDaysMul.js +0 -72
  77. package/dist/commands/uplink/ExAbsArchiveDaysMul.js.map +0 -1
  78. package/dist/commands/uplink/ExAbsArchiveHoursMul.d.ts +0 -11
  79. package/dist/commands/uplink/ExAbsArchiveHoursMul.js +0 -93
  80. package/dist/commands/uplink/ExAbsArchiveHoursMul.js.map +0 -1
  81. package/dist/commands/uplink/ExAbsDayMul.d.ts +0 -11
  82. package/dist/commands/uplink/ExAbsDayMul.js +0 -60
  83. package/dist/commands/uplink/ExAbsDayMul.js.map +0 -1
  84. package/dist/commands/uplink/ExAbsHourMul.d.ts +0 -11
  85. package/dist/commands/uplink/ExAbsHourMul.js +0 -92
  86. package/dist/commands/uplink/ExAbsHourMul.js.map +0 -1
  87. package/dist/commands/uplink/GetArchiveDaysMul.d.ts +0 -73
  88. package/dist/commands/uplink/GetArchiveDaysMul.js +0 -97
  89. package/dist/commands/uplink/GetArchiveDaysMul.js.map +0 -1
  90. package/dist/commands/uplink/GetArchiveHoursMul.d.ts +0 -28
  91. package/dist/commands/uplink/GetArchiveHoursMul.js +0 -51
  92. package/dist/commands/uplink/GetArchiveHoursMul.js.map +0 -1
  93. package/dist/commands/uplink/GetCurrentMul.d.ts +0 -24
  94. package/dist/commands/uplink/GetCurrentMul.js +0 -36
  95. package/dist/commands/uplink/GetCurrentMul.js.map +0 -1
@@ -0,0 +1,68 @@
1
+ import Command from '../../Command.js';
2
+ import { IChannelHours } from '../../CommandBinaryBuffer.js';
3
+ /**
4
+ * GetArchiveHoursMC command parameters
5
+ *
6
+ * @example
7
+ * // archive hours values from 001-03-10T12:00:00.000Z with 1-hour diff
8
+ * {
9
+ * channelList: [{value: 101, index: 0, diff: [1]}],
10
+ * startTime: 756648000,
11
+ * hours: 1
12
+ * }
13
+ */
14
+ interface IUplinkGetArchiveHoursMCParameters {
15
+ channelList: Array<IChannelHours>;
16
+ startTime: number;
17
+ hours: number;
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
+ */
59
+ declare class GetArchiveHoursMC extends Command {
60
+ parameters: IUplinkGetArchiveHoursMCParameters;
61
+ constructor(parameters: IUplinkGetArchiveHoursMCParameters);
62
+ static readonly id = 26;
63
+ static readonly directionType = 2;
64
+ static readonly title = "GET_ARCHIVE_HOURS";
65
+ static fromBytes(data: Uint8Array): GetArchiveHoursMC;
66
+ toBytes(): Uint8Array;
67
+ }
68
+ export default GetArchiveHoursMC;
@@ -0,0 +1,71 @@
1
+ import Command from '../../Command.js';
2
+ import CommandBinaryBuffer from '../../CommandBinaryBuffer.js';
3
+ import { UPLINK } from '../../constants/directionTypes.js';
4
+ const COMMAND_ID = 0x1a;
5
+ const COMMAND_TITLE = 'GET_ARCHIVE_HOURS';
6
+ // date 2 bytes, hour 1 byte, channelList - 1 byte, so max channelList = 4
7
+ // max hours diff - 7 (3 bit value)
8
+ // 4 + (4 channelList * 5 bytes of hour values) + (4 * 5 bytes of diff * 7 max hours diff)
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
+ */
50
+ class GetArchiveHoursMC extends Command {
51
+ constructor(parameters) {
52
+ super();
53
+ this.parameters = parameters;
54
+ this.parameters.channelList = this.parameters.channelList.sort((a, b) => a.index - b.index);
55
+ }
56
+ static fromBytes(data) {
57
+ const buffer = new CommandBinaryBuffer(data);
58
+ return new GetArchiveHoursMC(buffer.getChannelsValuesWithHourDiff());
59
+ }
60
+ toBytes() {
61
+ const buffer = new CommandBinaryBuffer(COMMAND_BODY_MAX_SIZE);
62
+ const { hours, startTime, channelList } = this.parameters;
63
+ buffer.setChannelsValuesWithHourDiff(hours, startTime, channelList);
64
+ return Command.toBytes(COMMAND_ID, buffer.getBytesToOffset());
65
+ }
66
+ }
67
+ GetArchiveHoursMC.id = COMMAND_ID;
68
+ GetArchiveHoursMC.directionType = UPLINK;
69
+ GetArchiveHoursMC.title = COMMAND_TITLE;
70
+ export default GetArchiveHoursMC;
71
+ //# sourceMappingURL=GetArchiveHoursMC.js.map
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,18 @@
1
+ import Command from '../../Command.js';
2
+ import { IChannelValue } from '../../CommandBinaryBuffer.js';
3
+ /**
4
+ * GetCurrentMC command parameters.
5
+ */
6
+ export interface IGetCurrentMCParameters {
7
+ channelList: Array<IChannelValue>;
8
+ }
9
+ declare class GetCurrentMC extends Command {
10
+ parameters: IGetCurrentMCParameters;
11
+ constructor(parameters: IGetCurrentMCParameters);
12
+ static id: number;
13
+ static readonly directionType = 2;
14
+ static title: string;
15
+ static fromBytes(data: Uint8Array): GetCurrentMC;
16
+ toBytes(): Uint8Array;
17
+ }
18
+ export default GetCurrentMC;
@@ -0,0 +1,36 @@
1
+ import Command from '../../Command.js';
2
+ import CommandBinaryBuffer from '../../CommandBinaryBuffer.js';
3
+ import { UPLINK } from '../../constants/directionTypes.js';
4
+ const COMMAND_ID = 0x18;
5
+ const COMMAND_TITLE = 'GET_CURRENT_MC';
6
+ // 2 bytes for 7 channelList + (7 channelList * 5 byte for current value of channel)
7
+ const COMMAND_BODY_MAX_SIZE = 37;
8
+ class GetCurrentMC extends Command {
9
+ constructor(parameters) {
10
+ super();
11
+ this.parameters = parameters;
12
+ this.parameters.channelList = this.parameters.channelList.sort((a, b) => a.index - b.index);
13
+ }
14
+ static fromBytes(data) {
15
+ const parameters = { channelList: [] };
16
+ const buffer = new CommandBinaryBuffer(data);
17
+ const channelList = buffer.getChannels();
18
+ parameters.channelList = channelList.map(channelIndex => ({
19
+ value: buffer.getExtendedValue(),
20
+ index: channelIndex
21
+ }));
22
+ return new GetCurrentMC(parameters);
23
+ }
24
+ toBytes() {
25
+ const buffer = new CommandBinaryBuffer(COMMAND_BODY_MAX_SIZE);
26
+ const { channelList } = this.parameters;
27
+ buffer.setChannels(channelList);
28
+ channelList.forEach(({ value }) => buffer.setExtendedValue(value));
29
+ return Command.toBytes(COMMAND_ID, buffer.getBytesToOffset());
30
+ }
31
+ }
32
+ GetCurrentMC.id = COMMAND_ID;
33
+ GetCurrentMC.directionType = UPLINK;
34
+ GetCurrentMC.title = COMMAND_TITLE;
35
+ export default GetCurrentMC;
36
+ //# sourceMappingURL=GetCurrentMC.js.map
@@ -0,0 +1 @@
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"}
@@ -4,15 +4,16 @@
4
4
  * @packageDocumentation
5
5
  */
6
6
  export { default as CorrectTime2000 } from './CorrectTime2000.js';
7
- export { default as DataDayMul } from './DataDayMul.js';
8
- export { default as DataHourMul } from './DataHourMul.js';
9
- export { default as ExAbsArchiveDaysMul } from './ExAbsArchiveDaysMul.js';
10
- export { default as ExAbsArchiveHoursMul } from './ExAbsArchiveHoursMul.js';
11
- export { default as ExAbsDayMul } from './ExAbsDayMul.js';
12
- export { default as ExAbsHourMul } from './ExAbsHourMul.js';
13
- export { default as GetArchiveDaysMul } from './GetArchiveDaysMul.js';
14
- export { default as GetArchiveHoursMul } from './GetArchiveHoursMul.js';
15
- export { default as GetCurrentMul } from './GetCurrentMul.js';
7
+ export { default as DataDayMC } from './DataDayMC.js';
8
+ export { default as DataHourMC } from './DataHourMC.js';
9
+ export { default as ExAbsCurrentMC } from './ExAbsCurrentMC.js';
10
+ export { default as ExAbsArchiveDaysMC } from './ExAbsArchiveDaysMC.js';
11
+ export { default as ExAbsArchiveHoursMC } from './ExAbsArchiveHoursMC.js';
12
+ export { default as ExAbsDayMC } from './ExAbsDayMC.js';
13
+ export { default as ExAbsHourMC } from './ExAbsHourMC.js';
14
+ export { default as GetArchiveDaysMC } from './GetArchiveDaysMC.js';
15
+ export { default as GetArchiveHoursMC } from './GetArchiveHoursMC.js';
16
+ export { default as GetCurrentMC } from './GetCurrentMC.js';
16
17
  export { default as LastEvent } from './LastEvent.js';
17
18
  export { default as NewEvent } from './NewEvent.js';
18
19
  export { default as NewStatus } from './NewStatus.js';
@@ -4,15 +4,16 @@
4
4
  * @packageDocumentation
5
5
  */
6
6
  export { default as CorrectTime2000 } from './CorrectTime2000.js';
7
- export { default as DataDayMul } from './DataDayMul.js';
8
- export { default as DataHourMul } from './DataHourMul.js';
9
- export { default as ExAbsArchiveDaysMul } from './ExAbsArchiveDaysMul.js';
10
- export { default as ExAbsArchiveHoursMul } from './ExAbsArchiveHoursMul.js';
11
- export { default as ExAbsDayMul } from './ExAbsDayMul.js';
12
- export { default as ExAbsHourMul } from './ExAbsHourMul.js';
13
- export { default as GetArchiveDaysMul } from './GetArchiveDaysMul.js';
14
- export { default as GetArchiveHoursMul } from './GetArchiveHoursMul.js';
15
- export { default as GetCurrentMul } from './GetCurrentMul.js';
7
+ export { default as DataDayMC } from './DataDayMC.js';
8
+ export { default as DataHourMC } from './DataHourMC.js';
9
+ export { default as ExAbsCurrentMC } from './ExAbsCurrentMC.js';
10
+ export { default as ExAbsArchiveDaysMC } from './ExAbsArchiveDaysMC.js';
11
+ export { default as ExAbsArchiveHoursMC } from './ExAbsArchiveHoursMC.js';
12
+ export { default as ExAbsDayMC } from './ExAbsDayMC.js';
13
+ export { default as ExAbsHourMC } from './ExAbsHourMC.js';
14
+ export { default as GetArchiveDaysMC } from './GetArchiveDaysMC.js';
15
+ export { default as GetArchiveHoursMC } from './GetArchiveHoursMC.js';
16
+ export { default as GetCurrentMC } from './GetCurrentMC.js';
16
17
  export { default as LastEvent } from './LastEvent.js';
17
18
  export { default as NewEvent } from './NewEvent.js';
18
19
  export { default as NewStatus } from './NewStatus.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,UAAU,EAAC,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAC,OAAO,IAAI,mBAAmB,EAAC,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAC,OAAO,IAAI,oBAAoB,EAAC,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAC,OAAO,IAAI,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAC,OAAO,IAAI,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAC,OAAO,IAAI,kBAAkB,EAAC,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAC5D,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.3.0",
3
+ "version": "1.5.0",
4
4
  "description": "Jooby message encoders/decoders",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,47 +0,0 @@
1
- /**
2
- * [[include:commands/downlink/ExAbsArchiveDaysMul.md]]
3
- *
4
- * @packageDocumentation
5
- */
6
- import Command from '../../Command.js';
7
- /**
8
- * ExAbsArchiveDaysMul command parameters
9
- *
10
- * @example
11
- * // request for 1 days archive values from channel #1 from 2023-12-24T00:00:00.000Z or 756691200 seconds since 2000 year
12
- * {channels: [0], dayAmount: 1, seconds: 756691200}
13
- */
14
- interface IDownlinkExAbsArchiveDaysMulParameters {
15
- /** amount of days to retrieve */
16
- dayAmount: number;
17
- /** time */
18
- seconds: number;
19
- /** array of channels indexes */
20
- channels: Array<number>;
21
- }
22
- /**
23
- * Downlink command
24
- *
25
- * @example
26
- * ```js
27
- * import ExAbsArchiveDaysMul from 'jooby-codec/commands/downlink/ExAbsArchiveDaysMul';
28
- *
29
- * const parameters = {channels: [0], dayAmount: 1, seconds: 756691200};
30
- * const command = new ExAbsArchiveDaysMul(parameters);
31
- *
32
- * // output command binary in hex representation
33
- * console.log(command.toHex());
34
- * // 1f 0c 04 2f 98 01 01
35
- * ```
36
- * [Command format documentation](https://github.com/jooby-dev/jooby-docs/blob/main/docs/commands/ExAbsArchiveDaysMul.md#request)
37
- */
38
- declare class ExAbsArchiveDaysMul extends Command {
39
- parameters: IDownlinkExAbsArchiveDaysMulParameters;
40
- constructor(parameters: IDownlinkExAbsArchiveDaysMulParameters);
41
- static readonly id = 3359;
42
- static readonly directionType = 1;
43
- static readonly title = "EX_ABS_ARCHIVE_DAYS_MUL";
44
- static fromBytes(data: Uint8Array): ExAbsArchiveDaysMul;
45
- toBytes(): Uint8Array;
46
- }
47
- export default ExAbsArchiveDaysMul;
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExAbsArchiveDaysMul.js","sourceRoot":"","sources":["../../../src/commands/downlink/ExAbsArchiveDaysMul.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,mBAAmB,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAC,QAAQ,EAAC,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EAAC,kBAAkB,EAAE,kBAAkB,EAAC,MAAM,qBAAqB,CAAC;AAsB3E,0CAA0C;AAC1C,MAAM,UAAU,GAAG,MAAM,CAAC;AAC1B,MAAM,aAAa,GAAG,yBAAyB,CAAC;AAChD,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAG5B;;;;;;;;;;;;;;;GAeG;AACH,MAAM,mBAAoB,SAAQ,OAAO;IACrC,YAAqB,UAAkD;QACnE,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAwC;QAGnE,IAAI,CAAC,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9E,CAAC;IAQD,oCAAoC;IACpC,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,IAAK,IAAI,CAAC,UAAU,KAAK,iBAAiB,EAAG;YACzC,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,wBAAwB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;SAChF;QAED,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAEpC,IAAK,CAAC,MAAM,CAAC,OAAO,EAAG;YACnB,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,8BAA8B,CAAC,CAAC;SACpE;QAED,OAAO,IAAI,mBAAmB,CAAC,EAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,EAAC,CAAC,CAAC;IAC7F,CAAC;IAED,0CAA0C;IAC1C,OAAO;QACH,MAAM,EAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QACvD,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;QAE1D,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAEzC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrB,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC7B,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAE3B,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AArCe,sBAAE,GAAG,UAAU,CAAC;AAEhB,iCAAa,GAAG,QAAQ,CAAC;AAEzB,yBAAK,GAAG,aAAa,CAAC;AAqC1C,eAAe,mBAAmB,CAAC"}
@@ -1,47 +0,0 @@
1
- /**
2
- * [[include:commands/downlink/ExAbsArchiveHoursMul.md]]
3
- *
4
- * @packageDocumentation
5
- */
6
- import Command from '../../Command.js';
7
- /**
8
- * ExAbsArchiveHoursMul command parameters
9
- *
10
- * @example
11
- * // request for 2 hours archive values from channel #1 from 2023-12-23T12:00:00.000Z or 756648000 seconds since 2000 year
12
- * {channels: [0], hourAmount: 2, seconds: 756648000}
13
- */
14
- interface IDownlinkExAbsArchiveHoursMulParameters {
15
- /** amount of hours to retrieve */
16
- hourAmount: number;
17
- /** time */
18
- seconds: number;
19
- /** array of channels indexes */
20
- channels: Array<number>;
21
- }
22
- /**
23
- * Downlink command
24
- *
25
- * @example
26
- * ```js
27
- * import ExAbsArchiveHoursMul from 'jooby-codec/commands/downlink/ExAbsArchiveHoursMul';
28
- *
29
- * const parameters = {channels: [0], hourAmount: 0, seconds: 756648000};
30
- * const command = new ExAbsArchiveHoursMul(parameters);
31
- *
32
- * // output command binary in hex representation
33
- * console.log(command.toHex());
34
- * // 1f 0c 04 2f 97 0c 01
35
- * ```
36
- * [Command format documentation](https://github.com/jooby-dev/jooby-docs/blob/main/docs/commands/ExAbsArchiveHoursMul.md#request)
37
- */
38
- declare class ExAbsArchiveHoursMul extends Command {
39
- parameters: IDownlinkExAbsArchiveHoursMulParameters;
40
- constructor(parameters: IDownlinkExAbsArchiveHoursMulParameters);
41
- static readonly id = 3103;
42
- static readonly directionType = 1;
43
- static readonly title = "EX_ABS_ARCHIVE_HOUR_MUL";
44
- static fromBytes(data: Uint8Array): ExAbsArchiveHoursMul;
45
- toBytes(): Uint8Array;
46
- }
47
- export default ExAbsArchiveHoursMul;
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExAbsArchiveHoursMul.js","sourceRoot":"","sources":["../../../src/commands/downlink/ExAbsArchiveHoursMul.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,mBAAmB,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAC,QAAQ,EAAC,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EAAC,kBAAkB,EAAE,kBAAkB,EAAC,MAAM,qBAAqB,CAAC;AAsB3E,0CAA0C;AAC1C,MAAM,UAAU,GAAG,MAAM,CAAC;AAC1B,MAAM,aAAa,GAAG,yBAAyB,CAAC;AAChD,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAG5B;;;;;;;;;;;;;;;GAeG;AACH,MAAM,oBAAqB,SAAQ,OAAO;IACtC,YAAqB,UAAmD;QACpE,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAyC;QAGpE,IAAI,CAAC,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9E,CAAC;IAQD,oCAAoC;IACpC,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,IAAK,IAAI,CAAC,UAAU,KAAK,iBAAiB,EAAG;YACzC,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,wBAAwB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;SAChF;QAED,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,EAAC,IAAI,EAAE,KAAK,EAAE,UAAU,EAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAE1C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAEvB,IAAK,CAAC,MAAM,CAAC,OAAO,EAAG;YACnB,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,8BAA8B,CAAC,CAAC;SACpE;QAED,OAAO,IAAI,oBAAoB,CAAC,EAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,EAAC,CAAC,CAAC;IAC/F,CAAC;IAED,0CAA0C;IAC1C,OAAO;QACH,MAAM,EAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QACxD,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;QAE1D,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAEhC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAClC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE7B,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AAxCe,uBAAE,GAAG,UAAU,CAAC;AAEhB,kCAAa,GAAG,QAAQ,CAAC;AAEzB,0BAAK,GAAG,aAAa,CAAC;AAwC1C,eAAe,oBAAoB,CAAC"}
@@ -1,47 +0,0 @@
1
- /**
2
- * [[include:commands/downlink/GetArchiveDaysMul.md]]
3
- *
4
- * @packageDocumentation
5
- */
6
- import Command from '../../Command.js';
7
- /**
8
- * GetArchiveDaysMul command parameters
9
- *
10
- * @example
11
- * // request for 1 days archive values from channel #1 from 2023-12-24T00:00:00.000Z or 756691200 seconds since 2000 year
12
- * {channels: [0], dayAmount: 1, seconds: 756691200}
13
- */
14
- interface IDownlinkGetArchiveDaysMulParameters {
15
- /** amount of days to retrieve */
16
- dayAmount: number;
17
- /** time */
18
- seconds: number;
19
- /** array of channels indexes */
20
- channels: Array<number>;
21
- }
22
- /**
23
- * Downlink command
24
- *
25
- * @example
26
- * ```js
27
- * import GetArchiveDaysMul from 'jooby-codec/commands/downlink/GetArchiveDaysMul';
28
- *
29
- * const parameters = {channels: [0], dayAmount: 1, seconds: 756691200};
30
- * const command = new GetArchiveDaysMul(parameters);
31
- *
32
- * // output command binary in hex representation
33
- * console.log(command.toHex());
34
- * // 1b 04 2f 98 01 01
35
- * ```
36
- * [Command format documentation](https://github.com/jooby-dev/jooby-docs/blob/main/docs/commands/GetArchiveDaysMul.md#request)
37
- */
38
- declare class GetArchiveDaysMul extends Command {
39
- parameters: IDownlinkGetArchiveDaysMulParameters;
40
- constructor(parameters: IDownlinkGetArchiveDaysMulParameters);
41
- static readonly id = 27;
42
- static readonly directionType = 1;
43
- static readonly title = "GET_ARCHIVE_DAYS_MUL";
44
- static fromBytes(data: Uint8Array): GetArchiveDaysMul;
45
- toBytes(): Uint8Array;
46
- }
47
- export default GetArchiveDaysMul;
@@ -1 +0,0 @@
1
- {"version":3,"file":"GetArchiveDaysMul.js","sourceRoot":"","sources":["../../../src/commands/downlink/GetArchiveDaysMul.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,mBAAmB,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAC,QAAQ,EAAC,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EAAC,kBAAkB,EAAE,kBAAkB,EAAC,MAAM,qBAAqB,CAAC;AAsB3E,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,aAAa,GAAG,sBAAsB,CAAC;AAC7C,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAG5B;;;;;;;;;;;;;;;GAeG;AACH,MAAM,iBAAkB,SAAQ,OAAO;IACnC,YAAqB,UAAgD;QACjE,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAsC;QAGjE,IAAI,CAAC,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9E,CAAC;IAQD,oCAAoC;IACpC,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,IAAK,IAAI,CAAC,UAAU,KAAK,iBAAiB,EAAG;YACzC,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,wBAAwB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;SAChF;QAED,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAEpC,IAAK,CAAC,MAAM,CAAC,OAAO,EAAG;YACnB,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,8BAA8B,CAAC,CAAC;SACpE;QAED,OAAO,IAAI,iBAAiB,CAAC,EAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,EAAC,CAAC,CAAC;IAC3F,CAAC;IAED,0CAA0C;IAC1C,OAAO;QACH,MAAM,EAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QACvD,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;QAE1D,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAEzC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrB,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC7B,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAE3B,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AArCe,oBAAE,GAAG,UAAU,CAAC;AAEhB,+BAAa,GAAG,QAAQ,CAAC;AAEzB,uBAAK,GAAG,aAAa,CAAC;AAqC1C,eAAe,iBAAiB,CAAC"}
@@ -1,47 +0,0 @@
1
- /**
2
- * [[include:commands/downlink/GetArchiveHoursMul.md]]
3
- *
4
- * @packageDocumentation
5
- */
6
- import Command from '../../Command.js';
7
- /**
8
- * GetArchiveHoursMul command parameters
9
- *
10
- * @example
11
- * // request for 2 hours archive values from channel #1 from 2023-12-23T12:00:00.000Z or 756648000 seconds since 2000 year
12
- * {channels: [0], hourAmount: 2, seconds: 756648000}
13
- */
14
- interface IDownlinkGetArchiveHoursMulParameters {
15
- /** amount of hours to retrieve */
16
- hourAmount: number;
17
- /** time */
18
- seconds: number;
19
- /** array of channels indexes */
20
- channels: Array<number>;
21
- }
22
- /**
23
- * Downlink command
24
- *
25
- * @example
26
- * ```js
27
- * import GetArchiveHoursMul from 'jooby-codec/commands/downlink/GetArchiveHoursMul';
28
- *
29
- * const parameters = {channels: [0], hourAmount: 0, seconds: 756648000};
30
- * const command = new GetArchiveHoursMul(parameters);
31
- *
32
- * // output command binary in hex representation
33
- * console.log(command.toHex());
34
- * // 1a 04 2f 97 0c 01
35
- * ```
36
- * [Command format documentation](https://github.com/jooby-dev/jooby-docs/blob/main/docs/commands/GetArchiveHoursMul.md#request)
37
- */
38
- declare class GetArchiveHoursMul extends Command {
39
- parameters: IDownlinkGetArchiveHoursMulParameters;
40
- constructor(parameters: IDownlinkGetArchiveHoursMulParameters);
41
- static readonly id = 26;
42
- static readonly directionType = 1;
43
- static readonly title = "GET_ARCHIVE_HOURS_MUL";
44
- static fromBytes(data: Uint8Array): GetArchiveHoursMul;
45
- toBytes(): Uint8Array;
46
- }
47
- export default GetArchiveHoursMul;
@@ -1 +0,0 @@
1
- {"version":3,"file":"GetArchiveHoursMul.js","sourceRoot":"","sources":["../../../src/commands/downlink/GetArchiveHoursMul.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,mBAAmB,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAC,QAAQ,EAAC,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EAAC,kBAAkB,EAAE,kBAAkB,EAAC,MAAM,qBAAqB,CAAC;AAsB3E,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,aAAa,GAAG,uBAAuB,CAAC;AAC9C,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAG5B;;;;;;;;;;;;;;;GAeG;AACH,MAAM,kBAAmB,SAAQ,OAAO;IACpC,YAAqB,UAAiD;QAClE,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAuC;QAGlE,IAAI,CAAC,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9E,CAAC;IAQD,oCAAoC;IACpC,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,IAAK,IAAI,CAAC,UAAU,KAAK,iBAAiB,EAAG;YACzC,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,wBAAwB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;SAChF;QAED,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,EAAC,IAAI,EAAE,KAAK,EAAE,UAAU,EAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAE1C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAEvB,IAAK,CAAC,MAAM,CAAC,OAAO,EAAG;YACnB,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,8BAA8B,CAAC,CAAC;SACpE;QAED,OAAO,IAAI,kBAAkB,CAAC,EAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,EAAC,CAAC,CAAC;IAC7F,CAAC;IAED,0CAA0C;IAC1C,OAAO;QACH,MAAM,EAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QACxD,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;QAE1D,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAEhC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAClC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE7B,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AAxCe,qBAAE,GAAG,UAAU,CAAC;AAEhB,gCAAa,GAAG,QAAQ,CAAC;AAEzB,wBAAK,GAAG,aAAa,CAAC;AAwC1C,eAAe,kBAAkB,CAAC"}
@@ -1,20 +0,0 @@
1
- import GetCurrentMul, { IGetCurrentMulParameters } from './GetCurrentMul.js';
2
- /**
3
- * DataDayMul command parameters.
4
- */
5
- interface IDataDayMulParameters extends IGetCurrentMulParameters {
6
- /**
7
- * Seconds since year 2000, i.e. timestamp (in seconds) - 946684800
8
- */
9
- seconds: number;
10
- }
11
- declare class DataDayMul extends GetCurrentMul {
12
- parameters: IDataDayMulParameters;
13
- constructor(parameters: IDataDayMulParameters);
14
- static readonly id = 22;
15
- static readonly directionType = 2;
16
- static readonly title = "DATA_DAY_MUL";
17
- static fromBytes(data: Uint8Array): DataDayMul;
18
- toBytes(): Uint8Array;
19
- }
20
- export default DataDayMul;
@@ -1 +0,0 @@
1
- {"version":3,"file":"DataDayMul.js","sourceRoot":"","sources":["../../../src/commands/uplink/DataDayMul.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAE5D,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,mBAAmB,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAC,kBAAkB,EAAC,MAAM,qBAAqB,CAAC;AACvD,OAAO,aAAyC,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AAczD,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,aAAa,GAAG,cAAc,CAAC;AAErC,qDAAqD;AACrD,cAAc;AACd,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAGjC,MAAM,UAAW,SAAQ,aAAa;IAClC,YAAqB,UAAiC;QAClD,KAAK,CAAC,UAAU,CAAC,CAAC;QADD,eAAU,GAAV,UAAU,CAAuB;IAEtD,CAAC;IAQD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,UAAU,GAA0B,EAAC,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC;QAErE,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAE/C,UAAU,CAAC,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YACpD,KAAK,EAAE,MAAM,CAAC,gBAAgB,EAAE;YAChC,KAAK,EAAE,YAAY;SACtB,CAAC,CAAC,CAAC;QAEJ,UAAU,CAAC,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAE9C,OAAO,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC;IACtC,CAAC;IAED,OAAO;QACH,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,qBAAqB,CAAC,CAAC;QAC9D,MAAM,EAAC,QAAQ,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAE5C,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACxB,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;QACrD,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;QAE9D,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAClE,CAAC;;AAjCe,aAAE,GAAG,UAAU,CAAC;AAEhB,wBAAa,GAAG,MAAM,CAAC;AAEvB,gBAAK,GAAG,aAAa,CAAC;AAiC1C,eAAe,UAAU,CAAC"}
@@ -1,11 +0,0 @@
1
- import GetCurrentMul from './GetCurrentMul.js';
2
- declare class DataHourMul extends GetCurrentMul {
3
- parameters: any;
4
- constructor(parameters: any);
5
- static readonly id = 23;
6
- static readonly directionType = 2;
7
- static readonly title = "DATA_HOUR_MUL";
8
- static fromBytes(data: Uint8Array): any;
9
- toBytes(): Uint8Array;
10
- }
11
- export default DataHourMul;
@@ -1,77 +0,0 @@
1
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
- /* eslint-disable @typescript-eslint/no-unsafe-member-access */
3
- /* eslint-disable @typescript-eslint/no-unsafe-argument */
4
- /* eslint-disable @typescript-eslint/no-unsafe-assignment */
5
- import Command from '../../Command.js';
6
- import GetCurrentMul from './GetCurrentMul.js';
7
- import { getSecondsFromDate, getDateFromSeconds } from '../../utils/time.js';
8
- import CommandBinaryBuffer from '../../CommandBinaryBuffer.js';
9
- import { UPLINK } from '../../constants/directionTypes.js';
10
- const COMMAND_ID = 0x17;
11
- const COMMAND_TITLE = 'DATA_HOUR_MUL';
12
- // date 2 bytes, hour 1 byte, channels - 1 byte, so max channels = 4
13
- // max hours diff - 7 (3 bit value)
14
- // 4 + (4 channels * 5 bytes of hour values) + (4 * 5 bytes of diff * 7 max hours diff)
15
- const COMMAND_BODY_MAX_SIZE = 164;
16
- class DataHourMul extends GetCurrentMul {
17
- constructor(parameters) {
18
- super(parameters);
19
- this.parameters = parameters;
20
- }
21
- static fromBytes(data) {
22
- const buffer = new CommandBinaryBuffer(data);
23
- const date = buffer.getDate();
24
- const { hour, hours } = buffer.getHours();
25
- const channelArray = buffer.getChannels(true);
26
- const maxChannel = Math.max.apply(null, channelArray);
27
- date.setUTCHours(hour);
28
- const counterDate = new Date(date);
29
- let hourAmount = hours;
30
- let value;
31
- const channels = [];
32
- if (hourAmount === 0) {
33
- // one hour
34
- hourAmount = 1;
35
- }
36
- for (let channelIndex = 0; channelIndex <= maxChannel; ++channelIndex) {
37
- // decode hour value for channel
38
- value = buffer.getExtendedValue();
39
- counterDate.setTime(date.getTime());
40
- const diff = [];
41
- const channel = { value, index: channelIndex, seconds: getSecondsFromDate(counterDate), diff };
42
- channels.push(channel);
43
- for (let hourIndex = 0; hourIndex < hourAmount; ++hourIndex) {
44
- value = buffer.getExtendedValue();
45
- counterDate.setUTCHours(counterDate.getUTCHours() + hourIndex);
46
- diff.push({ value, seconds: getSecondsFromDate(counterDate) });
47
- }
48
- }
49
- return new DataHourMul({ channels });
50
- }
51
- toBytes() {
52
- const buffer = new CommandBinaryBuffer(COMMAND_BODY_MAX_SIZE);
53
- const { channels } = this.parameters;
54
- const { seconds } = channels[0];
55
- const realDate = getDateFromSeconds(seconds);
56
- const hour = realDate.getUTCHours();
57
- let hourAmount = channels[0].diff.length;
58
- if (hourAmount === 1) {
59
- hourAmount = 0;
60
- }
61
- buffer.setDate(seconds);
62
- buffer.setHours(hour, hourAmount);
63
- buffer.setChannels(channels);
64
- for (const { value, diff } of channels) {
65
- buffer.setExtendedValue(value);
66
- for (const { value: diffValue } of diff) {
67
- buffer.setExtendedValue(diffValue);
68
- }
69
- }
70
- return Command.toBytes(COMMAND_ID, buffer.getBytesToOffset());
71
- }
72
- }
73
- DataHourMul.id = COMMAND_ID;
74
- DataHourMul.directionType = UPLINK;
75
- DataHourMul.title = COMMAND_TITLE;
76
- export default DataHourMul;
77
- //# sourceMappingURL=DataHourMul.js.map