jooby-codec 1.7.0 → 1.9.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 (169) hide show
  1. package/dist/BinaryBuffer.d.ts +2 -0
  2. package/dist/BinaryBuffer.js +9 -0
  3. package/dist/BinaryBuffer.js.map +1 -1
  4. package/dist/CommandBinaryBuffer.d.ts +182 -49
  5. package/dist/CommandBinaryBuffer.js +274 -28
  6. package/dist/CommandBinaryBuffer.js.map +1 -1
  7. package/dist/commands/downlink/CorrectTime2000.d.ts +4 -3
  8. package/dist/commands/downlink/CorrectTime2000.js +1 -0
  9. package/dist/commands/downlink/CorrectTime2000.js.map +1 -1
  10. package/dist/commands/downlink/GetArchiveDaysMC.d.ts +5 -4
  11. package/dist/commands/downlink/GetArchiveDaysMC.js +2 -1
  12. package/dist/commands/downlink/GetArchiveDaysMC.js.map +1 -1
  13. package/dist/commands/downlink/GetArchiveEvents.d.ts +4 -3
  14. package/dist/commands/downlink/GetArchiveEvents.js +3 -5
  15. package/dist/commands/downlink/GetArchiveEvents.js.map +1 -1
  16. package/dist/commands/downlink/GetArchiveHoursMC.d.ts +5 -4
  17. package/dist/commands/downlink/GetArchiveHoursMC.js +2 -1
  18. package/dist/commands/downlink/GetArchiveHoursMC.js.map +1 -1
  19. package/dist/commands/downlink/GetCurrentMC.d.ts +1 -0
  20. package/dist/commands/downlink/GetCurrentMC.js +1 -0
  21. package/dist/commands/downlink/GetCurrentMC.js.map +1 -1
  22. package/dist/commands/downlink/{ExAbsArchiveDaysMC.d.ts → GetExAbsArchiveDaysMC.d.ts} +12 -11
  23. package/dist/commands/downlink/{ExAbsArchiveDaysMC.js → GetExAbsArchiveDaysMC.js} +12 -11
  24. package/dist/commands/downlink/GetExAbsArchiveDaysMC.js.map +1 -0
  25. package/dist/commands/downlink/{ExAbsArchiveHoursMC.d.ts → GetExAbsArchiveHoursMC.d.ts} +12 -11
  26. package/dist/commands/downlink/{ExAbsArchiveHoursMC.js → GetExAbsArchiveHoursMC.js} +12 -11
  27. package/dist/commands/downlink/GetExAbsArchiveHoursMC.js.map +1 -0
  28. package/dist/commands/downlink/{ExAbsCurrentMC.d.ts → GetExAbsCurrentMC.d.ts} +8 -7
  29. package/dist/commands/downlink/{ExAbsCurrentMC.js → GetExAbsCurrentMC.js} +12 -11
  30. package/dist/commands/downlink/GetExAbsCurrentMC.js.map +1 -0
  31. package/dist/commands/downlink/{GetLmicVersion.d.ts → GetLmicInfo.d.ts} +7 -6
  32. package/dist/commands/downlink/{GetLmicVersion.js → GetLmicInfo.js} +12 -11
  33. package/dist/commands/downlink/GetLmicInfo.js.map +1 -0
  34. package/dist/commands/downlink/GetParameter.d.ts +4 -3
  35. package/dist/commands/downlink/GetParameter.js +3 -8
  36. package/dist/commands/downlink/GetParameter.js.map +1 -1
  37. package/dist/commands/downlink/{NewStatus.d.ts → GetStatus.d.ts} +9 -7
  38. package/dist/commands/downlink/{NewStatus.js → GetStatus.js} +18 -10
  39. package/dist/commands/downlink/GetStatus.js.map +1 -0
  40. package/dist/commands/downlink/SetParameter.d.ts +1 -0
  41. package/dist/commands/downlink/SetParameter.js +94 -16
  42. package/dist/commands/downlink/SetParameter.js.map +1 -1
  43. package/dist/commands/downlink/SetTime2000.d.ts +4 -3
  44. package/dist/commands/downlink/SetTime2000.js +1 -0
  45. package/dist/commands/downlink/SetTime2000.js.map +1 -1
  46. package/dist/commands/downlink/SoftRestart.d.ts +1 -0
  47. package/dist/commands/downlink/SoftRestart.js +1 -0
  48. package/dist/commands/downlink/SoftRestart.js.map +1 -1
  49. package/dist/commands/downlink/index.d.ts +5 -5
  50. package/dist/commands/downlink/index.js +5 -5
  51. package/dist/commands/downlink/index.js.map +1 -1
  52. package/dist/commands/uplink/CorrectTime2000Response.d.ts +39 -0
  53. package/dist/commands/uplink/{CorrectTime2000.js → CorrectTime2000Response.js} +23 -14
  54. package/dist/commands/uplink/CorrectTime2000Response.js.map +1 -0
  55. package/dist/commands/uplink/CurrentMC.d.ts +41 -0
  56. package/dist/commands/uplink/{GetCurrentMC.js → CurrentMC.js} +19 -18
  57. package/dist/commands/uplink/CurrentMC.js.map +1 -0
  58. package/dist/commands/uplink/DataDayMC.d.ts +32 -3
  59. package/dist/commands/uplink/DataDayMC.js +47 -4
  60. package/dist/commands/uplink/DataDayMC.js.map +1 -1
  61. package/dist/commands/uplink/DataHourMC.d.ts +32 -2
  62. package/dist/commands/uplink/DataHourMC.js +49 -4
  63. package/dist/commands/uplink/DataHourMC.js.map +1 -1
  64. package/dist/commands/uplink/ExAbsCurrentMC.d.ts +32 -4
  65. package/dist/commands/uplink/ExAbsCurrentMC.js +46 -0
  66. package/dist/commands/uplink/ExAbsCurrentMC.js.map +1 -1
  67. package/dist/commands/uplink/ExAbsDayMC.d.ts +32 -2
  68. package/dist/commands/uplink/ExAbsDayMC.js +50 -2
  69. package/dist/commands/uplink/ExAbsDayMC.js.map +1 -1
  70. package/dist/commands/uplink/ExAbsHourMC.d.ts +16 -11
  71. package/dist/commands/uplink/ExAbsHourMC.js +32 -9
  72. package/dist/commands/uplink/ExAbsHourMC.js.map +1 -1
  73. package/dist/commands/uplink/GetArchiveDaysMCResponse.d.ts +58 -0
  74. package/dist/commands/uplink/{GetArchiveDaysMC.js → GetArchiveDaysMCResponse.js} +44 -20
  75. package/dist/commands/uplink/GetArchiveDaysMCResponse.js.map +1 -0
  76. package/dist/commands/uplink/GetArchiveEventsResponse.d.ts +54 -0
  77. package/dist/commands/uplink/{GetArchiveEvents.js → GetArchiveEventsResponse.js} +24 -18
  78. package/dist/commands/uplink/GetArchiveEventsResponse.js.map +1 -0
  79. package/dist/commands/uplink/GetArchiveHoursMCResponse.d.ts +58 -0
  80. package/dist/commands/uplink/GetArchiveHoursMCResponse.js +77 -0
  81. package/dist/commands/uplink/GetArchiveHoursMCResponse.js.map +1 -0
  82. package/dist/commands/uplink/GetExAbsArchiveDaysMCResponse.d.ts +47 -0
  83. package/dist/commands/uplink/{ExAbsArchiveDaysMC.js → GetExAbsArchiveDaysMCResponse.js} +52 -7
  84. package/dist/commands/uplink/GetExAbsArchiveDaysMCResponse.js.map +1 -0
  85. package/dist/commands/uplink/GetExAbsArchiveHoursMCResponse.d.ts +44 -0
  86. package/dist/commands/uplink/{ExAbsArchiveHoursMC.js → GetExAbsArchiveHoursMCResponse.js} +46 -7
  87. package/dist/commands/uplink/GetExAbsArchiveHoursMCResponse.js.map +1 -0
  88. package/dist/commands/uplink/GetLmicInfoResponse.d.ts +52 -0
  89. package/dist/commands/uplink/{GetLmicVersion.js → GetLmicInfoResponse.js} +27 -27
  90. package/dist/commands/uplink/GetLmicInfoResponse.js.map +1 -0
  91. package/dist/commands/uplink/GetParameterResponse.d.ts +35 -0
  92. package/dist/commands/uplink/{GetParameter.js → GetParameterResponse.js} +25 -32
  93. package/dist/commands/uplink/GetParameterResponse.js.map +1 -0
  94. package/dist/commands/uplink/LastEvent.d.ts +19 -10
  95. package/dist/commands/uplink/LastEvent.js +21 -12
  96. package/dist/commands/uplink/LastEvent.js.map +1 -1
  97. package/dist/commands/uplink/NewEvent.d.ts +12 -8
  98. package/dist/commands/uplink/NewEvent.js +12 -8
  99. package/dist/commands/uplink/NewEvent.js.map +1 -1
  100. package/dist/commands/uplink/SetTime2000Response.d.ts +38 -0
  101. package/dist/commands/uplink/{SetTime2000.js → SetTime2000Response.js} +23 -15
  102. package/dist/commands/uplink/SetTime2000Response.js.map +1 -0
  103. package/dist/commands/uplink/SoftRestartResponse.d.ts +28 -0
  104. package/dist/commands/uplink/SoftRestartResponse.js +44 -0
  105. package/dist/commands/uplink/SoftRestartResponse.js.map +1 -0
  106. package/dist/commands/uplink/Status.d.ts +55 -0
  107. package/dist/commands/uplink/Status.js +153 -0
  108. package/dist/commands/uplink/Status.js.map +1 -0
  109. package/dist/commands/uplink/Time2000.d.ts +11 -9
  110. package/dist/commands/uplink/Time2000.js +18 -8
  111. package/dist/commands/uplink/Time2000.js.map +1 -1
  112. package/dist/commands/uplink/index.d.ts +12 -12
  113. package/dist/commands/uplink/index.js +12 -12
  114. package/dist/commands/uplink/index.js.map +1 -1
  115. package/dist/constants/deviceParameters.d.ts +26 -12
  116. package/dist/constants/deviceParameters.js +26 -12
  117. package/dist/constants/deviceParameters.js.map +1 -1
  118. package/dist/constants/hardwareTypes.d.ts +55 -27
  119. package/dist/constants/hardwareTypes.js +55 -27
  120. package/dist/constants/hardwareTypes.js.map +1 -1
  121. package/dist/constants/index.d.ts +2 -1
  122. package/dist/constants/index.js +2 -1
  123. package/dist/constants/index.js.map +1 -1
  124. package/dist/constants/rx2SpreadFactors.d.ts +12 -0
  125. package/dist/constants/rx2SpreadFactors.js +13 -0
  126. package/dist/constants/rx2SpreadFactors.js.map +1 -0
  127. package/package.json +5 -1
  128. package/readme.md +33 -16
  129. package/dist/commands/downlink/ExAbsArchiveDaysMC.js.map +0 -1
  130. package/dist/commands/downlink/ExAbsArchiveHoursMC.js.map +0 -1
  131. package/dist/commands/downlink/ExAbsCurrentMC.js.map +0 -1
  132. package/dist/commands/downlink/GetLmicVersion.js.map +0 -1
  133. package/dist/commands/downlink/NewStatus.js.map +0 -1
  134. package/dist/commands/uplink/CorrectTime2000.d.ts +0 -37
  135. package/dist/commands/uplink/CorrectTime2000.js.map +0 -1
  136. package/dist/commands/uplink/ExAbsArchiveDaysMC.d.ts +0 -18
  137. package/dist/commands/uplink/ExAbsArchiveDaysMC.js.map +0 -1
  138. package/dist/commands/uplink/ExAbsArchiveHoursMC.d.ts +0 -18
  139. package/dist/commands/uplink/ExAbsArchiveHoursMC.js.map +0 -1
  140. package/dist/commands/uplink/GetArchiveDaysMC.d.ts +0 -50
  141. package/dist/commands/uplink/GetArchiveDaysMC.js.map +0 -1
  142. package/dist/commands/uplink/GetArchiveEvents.d.ts +0 -48
  143. package/dist/commands/uplink/GetArchiveEvents.js.map +0 -1
  144. package/dist/commands/uplink/GetArchiveHoursMC.d.ts +0 -69
  145. package/dist/commands/uplink/GetArchiveHoursMC.js +0 -72
  146. package/dist/commands/uplink/GetArchiveHoursMC.js.map +0 -1
  147. package/dist/commands/uplink/GetCurrentMC.d.ts +0 -40
  148. package/dist/commands/uplink/GetCurrentMC.js.map +0 -1
  149. package/dist/commands/uplink/GetLmicVersion.d.ts +0 -46
  150. package/dist/commands/uplink/GetLmicVersion.js.map +0 -1
  151. package/dist/commands/uplink/GetParameter.d.ts +0 -30
  152. package/dist/commands/uplink/GetParameter.js.map +0 -1
  153. package/dist/commands/uplink/NewStatus.d.ts +0 -56
  154. package/dist/commands/uplink/NewStatus.js +0 -141
  155. package/dist/commands/uplink/NewStatus.js.map +0 -1
  156. package/dist/commands/uplink/SetTime2000.d.ts +0 -37
  157. package/dist/commands/uplink/SetTime2000.js.map +0 -1
  158. package/dist/commands/uplink/SoftRestart.d.ts +0 -24
  159. package/dist/commands/uplink/SoftRestart.js +0 -34
  160. package/dist/commands/uplink/SoftRestart.js.map +0 -1
  161. package/dist/constants/general.d.ts +0 -1
  162. package/dist/constants/general.js +0 -2
  163. package/dist/constants/general.js.map +0 -1
  164. package/dist/utils/getBitArrayFromNumber.d.ts +0 -14
  165. package/dist/utils/getBitArrayFromNumber.js +0 -15
  166. package/dist/utils/getBitArrayFromNumber.js.map +0 -1
  167. package/dist/utils/getIntFromBitString.d.ts +0 -6
  168. package/dist/utils/getIntFromBitString.js +0 -6
  169. package/dist/utils/getIntFromBitString.js.map +0 -1
@@ -6,28 +6,51 @@ const COMMAND_ID = 0x1b;
6
6
  // date 2 bytes, channelList 1 byte (max channelList: 4), days 1 byte (max days - 255)
7
7
  // 4 + (4 channelList * 5 bytes of day values * 255 max days)
8
8
  const COMMAND_BODY_MAX_SIZE = 5104;
9
+ const examples = [
10
+ {
11
+ name: 'get day values from 2001.03.10 12:00:00 GMT for 0 channel',
12
+ parameters: {
13
+ startTime: 2678227200,
14
+ days: 2,
15
+ channelList: [
16
+ {
17
+ index: 0,
18
+ dayList: [234, 332]
19
+ }
20
+ ]
21
+ },
22
+ hex: { header: '1b 08', body: 'a9 6d 01 02 ea 01 cc 02' }
23
+ }
24
+ ];
9
25
  /**
10
- * Uplink command
26
+ * Uplink command.
11
27
  *
12
- * @example
28
+ * @example create command instance from command body hex dump
13
29
  * ```js
14
- * import GetArchiveDaysMC from 'jooby-codec/commands/uplink/GetArchiveDaysMC';
15
- *
16
- * const parameters = {
17
- * channelList: [{index: 0, days: [{value: 234, day: 0}, {value: 332, day: 1}]}],
18
- * date: '2001-03-10T12:00:00.000Z',
19
- * days: 2
20
- * };
30
+ * import GetArchiveDaysMCResponse from 'jooby-codec/commands/uplink/GetArchiveDaysMCResponse';
21
31
  *
22
- * const command = new GetArchiveDaysMC(parameters);
32
+ * const commandBody = new Uint8Array([
33
+ * 0xa9, 0x6d, 0x01, 0x02, 0xea, 0x01, 0xcc, 0x02
34
+ * ]);
35
+ * const command = GetArchiveDaysMCResponse.fromBytes(commandBody);
23
36
  *
24
- * // output command binary in hex representation
25
- * console.log(command.toHex());
26
- * // 1b 04 2f 97 0c 01
37
+ * console.log(command.parameters);
38
+ * // output:
39
+ * {
40
+ * startTime: 2678227200,
41
+ * days: 2,
42
+ * channelList: [
43
+ * {
44
+ * index: 0,
45
+ * dayList: [234, 332]
46
+ * }
47
+ * ]
48
+ * }
27
49
  * ```
50
+ *
28
51
  * [Command format documentation](https://github.com/jooby-dev/jooby-docs/blob/main/docs/commands/GetArchiveDaysMC.md#response)
29
52
  */
30
- class GetArchiveDaysMC extends Command {
53
+ class GetArchiveDaysMCResponse extends Command {
31
54
  constructor(parameters) {
32
55
  super();
33
56
  this.parameters = parameters;
@@ -50,7 +73,7 @@ class GetArchiveDaysMC extends Command {
50
73
  dayList.push(buffer.getExtendedValue());
51
74
  }
52
75
  });
53
- return new GetArchiveDaysMC({ channelList, days, startTime: getSecondsFromDate(date) });
76
+ return new GetArchiveDaysMCResponse({ channelList, days, startTime: getSecondsFromDate(date) });
54
77
  }
55
78
  // returns full message - header with body
56
79
  toBytes() {
@@ -65,8 +88,9 @@ class GetArchiveDaysMC extends Command {
65
88
  return Command.toBytes(COMMAND_ID, buffer.getBytesToOffset());
66
89
  }
67
90
  }
68
- GetArchiveDaysMC.id = COMMAND_ID;
69
- GetArchiveDaysMC.directionType = UPLINK;
70
- GetArchiveDaysMC.hasParameters = true;
71
- export default GetArchiveDaysMC;
72
- //# sourceMappingURL=GetArchiveDaysMC.js.map
91
+ GetArchiveDaysMCResponse.id = COMMAND_ID;
92
+ GetArchiveDaysMCResponse.directionType = UPLINK;
93
+ GetArchiveDaysMCResponse.examples = examples;
94
+ GetArchiveDaysMCResponse.hasParameters = true;
95
+ export default GetArchiveDaysMCResponse;
96
+ //# sourceMappingURL=GetArchiveDaysMCResponse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GetArchiveDaysMCResponse.js","sourceRoot":"","sources":["../../../src/commands/uplink/GetArchiveDaysMCResponse.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ import Command, { TCommandExampleList } from '../../Command.js';
2
+ import { TTime2000 } from '../../utils/time.js';
3
+ interface IArchiveEvent {
4
+ time: TTime2000;
5
+ id: number;
6
+ sequenceNumber: number;
7
+ }
8
+ /**
9
+ * GetArchiveEventsResponse command parameters
10
+ *
11
+ * @example
12
+ * ```js
13
+ * import {constants} from 'jooby-codec';
14
+ *
15
+ * // one `MAGNET_ON` event at 2023-04-05 13:17:20 GMT
16
+ * [events: {id: constants.events.MAGNET_ON, sequenceNumber: 1, time: 734015840}]
17
+ */
18
+ interface IGetArchiveEventsResponseParameters {
19
+ eventList: Array<IArchiveEvent>;
20
+ }
21
+ /**
22
+ * Uplink command.
23
+ *
24
+ * @example create command instance from command body hex dump
25
+ * ```js
26
+ * import GetArchiveEventsResponse from 'jooby-codec/commands/uplink/GetArchiveEventsResponse';
27
+ *
28
+ * const commandBody = new Uint8Array([
29
+ * 0x2b, 0xc0, 0x31, 0x60, 0x01, 0x01
30
+ * ]);
31
+ * const command = GetArchiveEventsResponse.fromBytes(commandBody);
32
+ *
33
+ * console.log(command.parameters);
34
+ * // output:
35
+ * {
36
+ * eventList: [
37
+ * {time: 734015840, id: 1, sequenceNumber: 1}
38
+ * ]
39
+ * }
40
+ * ```
41
+ *
42
+ * [Command format documentation](https://github.com/jooby-dev/jooby-docs/blob/main/docs/commands/GetArchiveEvents.md#response)
43
+ */
44
+ declare class GetArchiveEventsResponse extends Command {
45
+ parameters: IGetArchiveEventsResponseParameters;
46
+ constructor(parameters: IGetArchiveEventsResponseParameters);
47
+ static readonly id = 11;
48
+ static readonly directionType = 2;
49
+ static readonly examples: TCommandExampleList;
50
+ static readonly hasParameters = true;
51
+ static fromBytes(data: Uint8Array): GetArchiveEventsResponse;
52
+ toBytes(): Uint8Array;
53
+ }
54
+ export default GetArchiveEventsResponse;
@@ -7,7 +7,7 @@ const COMMAND_ID = 0x0b;
7
7
  const COMMAND_BODY_MIN_SIZE = 4 + 1 + 1;
8
8
  const examples = [
9
9
  {
10
- name: '1 event - "MAGNET_ON" at 2023-04-05 13:17:20 GMT',
10
+ name: '1 event "MAGNET_ON" at 2023.04.05 13:17:20 GMT',
11
11
  parameters: {
12
12
  eventList: [
13
13
  {
@@ -20,7 +20,7 @@ const examples = [
20
20
  hex: { header: '0b 06', body: '2b c0 31 60 01 01' }
21
21
  },
22
22
  {
23
- name: '4 events example',
23
+ name: '4 events',
24
24
  parameters: {
25
25
  eventList: [
26
26
  {
@@ -61,21 +61,27 @@ const setEvent = (buffer, event) => {
61
61
  /**
62
62
  * Uplink command.
63
63
  *
64
- * @example
64
+ * @example create command instance from command body hex dump
65
65
  * ```js
66
- * import GetArchiveEvents from 'jooby-codec/commands/uplink/GetArchiveEvents';
67
- * import {constants} from 'jooby-codec';
66
+ * import GetArchiveEventsResponse from 'jooby-codec/commands/uplink/GetArchiveEventsResponse';
68
67
  *
69
- * const parameters = [eventList: {id: constants.events.MAGNET_ON, sequenceNumber: 1, time: 734015840}];
70
- * const command = new GetArchiveEvents(parameters);
68
+ * const commandBody = new Uint8Array([
69
+ * 0x2b, 0xc0, 0x31, 0x60, 0x01, 0x01
70
+ * ]);
71
+ * const command = GetArchiveEventsResponse.fromBytes(commandBody);
71
72
  *
72
- * // output command binary in hex representation
73
- * console.log(command.toHex());
74
- * // 0b 06 2b c0 31 60 01 01
73
+ * console.log(command.parameters);
74
+ * // output:
75
+ * {
76
+ * eventList: [
77
+ * {time: 734015840, id: 1, sequenceNumber: 1}
78
+ * ]
79
+ * }
75
80
  * ```
81
+ *
76
82
  * [Command format documentation](https://github.com/jooby-dev/jooby-docs/blob/main/docs/commands/GetArchiveEvents.md#response)
77
83
  */
78
- class GetArchiveEvents extends Command {
84
+ class GetArchiveEventsResponse extends Command {
79
85
  constructor(parameters) {
80
86
  super();
81
87
  this.parameters = parameters;
@@ -87,7 +93,7 @@ class GetArchiveEvents extends Command {
87
93
  while (buffer.bytesLeft > 0) {
88
94
  eventList.push(getEvent(buffer));
89
95
  }
90
- return new GetArchiveEvents({ eventList });
96
+ return new GetArchiveEventsResponse({ eventList });
91
97
  }
92
98
  // returns full message - header with body
93
99
  toBytes() {
@@ -97,9 +103,9 @@ class GetArchiveEvents extends Command {
97
103
  return Command.toBytes(COMMAND_ID, buffer.toUint8Array());
98
104
  }
99
105
  }
100
- GetArchiveEvents.id = COMMAND_ID;
101
- GetArchiveEvents.directionType = UPLINK;
102
- GetArchiveEvents.examples = examples;
103
- GetArchiveEvents.hasParameters = true;
104
- export default GetArchiveEvents;
105
- //# sourceMappingURL=GetArchiveEvents.js.map
106
+ GetArchiveEventsResponse.id = COMMAND_ID;
107
+ GetArchiveEventsResponse.directionType = UPLINK;
108
+ GetArchiveEventsResponse.examples = examples;
109
+ GetArchiveEventsResponse.hasParameters = true;
110
+ export default GetArchiveEventsResponse;
111
+ //# sourceMappingURL=GetArchiveEventsResponse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GetArchiveEventsResponse.js","sourceRoot":"","sources":["../../../src/commands/uplink/GetArchiveEventsResponse.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ import Command, { TCommandExampleList } from '../../Command.js';
2
+ import { IChannelHours } from '../../CommandBinaryBuffer.js';
3
+ import { TTime2000 } from '../../utils/time.js';
4
+ /**
5
+ * GetArchiveHoursMCResponse command parameters
6
+ *
7
+ * @example
8
+ * // archive hours values from 001-03-10T12:00:00.000Z with 1-hour diff
9
+ * {
10
+ * channelList: [{value: 101, index: 0, diff: [1]}],
11
+ * startTime: 756648000,
12
+ * hours: 1
13
+ * }
14
+ */
15
+ interface IGetArchiveHoursMCResponseParameters {
16
+ channelList: Array<IChannelHours>;
17
+ startTime: TTime2000;
18
+ hours: number;
19
+ }
20
+ /**
21
+ * Uplink command.
22
+ *
23
+ * @example create command instance from command body hex dump
24
+ * ```js
25
+ * import GetArchiveHoursMCResponse from 'jooby-codec/commands/uplink/GetArchiveHoursMCResponse';
26
+ *
27
+ * const commandBody = new Uint8Array([
28
+ * 0x2f, 0x97, 0x0c, 0x0f, 0x83, 0x01, 0x0a, 0x08, 0x0a, 0x08, 0x0a, 0x0c, 0x0a
29
+ * ]);
30
+ * const command = GetArchiveHoursMCResponse.fromBytes(commandBody);
31
+ *
32
+ * console.log(command.parameters);
33
+ * // output:
34
+ * {
35
+ * startTime: 756648000,
36
+ * hours: 1,
37
+ * channelList: [
38
+ * {index: 0, value: 131, diff: [10]},
39
+ * {index: 1, value: 8, diff: [10]},
40
+ * {index: 2, value: 8, diff: [10]},
41
+ * {index: 3, value: 12, diff: [10]}
42
+ * ]
43
+ * }
44
+ * ```
45
+ *
46
+ * [Command format documentation](https://github.com/jooby-dev/jooby-docs/blob/main/docs/commands/GetArchiveHoursMC.md#response)
47
+ */
48
+ declare class GetArchiveHoursMCResponse extends Command {
49
+ parameters: IGetArchiveHoursMCResponseParameters;
50
+ constructor(parameters: IGetArchiveHoursMCResponseParameters);
51
+ static readonly id = 26;
52
+ static readonly directionType = 2;
53
+ static readonly examples: TCommandExampleList;
54
+ static readonly hasParameters = true;
55
+ static fromBytes(data: Uint8Array): GetArchiveHoursMCResponse;
56
+ toBytes(): Uint8Array;
57
+ }
58
+ export default GetArchiveHoursMCResponse;
@@ -0,0 +1,77 @@
1
+ import Command from '../../Command.js';
2
+ import CommandBinaryBuffer from '../../CommandBinaryBuffer.js';
3
+ import { UPLINK } from '../../constants/directions.js';
4
+ const COMMAND_ID = 0x1a;
5
+ // date 2 bytes, hour 1 byte, channelList - 1 byte, so max channelList = 4
6
+ // max hours diff - 7 (3 bit value)
7
+ // 4 + (4 channelList * 5 bytes of hour values) + (4 * 5 bytes of diff * 7 max hours diff)
8
+ const COMMAND_BODY_MAX_SIZE = 164;
9
+ const examples = [
10
+ {
11
+ name: '4 channels at 2023.12.23 12:00:00 GMT',
12
+ parameters: {
13
+ startTime: 756648000,
14
+ hours: 1,
15
+ channelList: [
16
+ { index: 0, value: 131, diff: [10] },
17
+ { index: 1, value: 8, diff: [10] },
18
+ { index: 2, value: 8, diff: [10] },
19
+ { index: 3, value: 12, diff: [10] }
20
+ ]
21
+ },
22
+ hex: { header: '1a 0d', body: '2f 97 0c 0f 83 01 0a 08 0a 08 0a 0c 0a' }
23
+ }
24
+ ];
25
+ /**
26
+ * Uplink command.
27
+ *
28
+ * @example create command instance from command body hex dump
29
+ * ```js
30
+ * import GetArchiveHoursMCResponse from 'jooby-codec/commands/uplink/GetArchiveHoursMCResponse';
31
+ *
32
+ * const commandBody = new Uint8Array([
33
+ * 0x2f, 0x97, 0x0c, 0x0f, 0x83, 0x01, 0x0a, 0x08, 0x0a, 0x08, 0x0a, 0x0c, 0x0a
34
+ * ]);
35
+ * const command = GetArchiveHoursMCResponse.fromBytes(commandBody);
36
+ *
37
+ * console.log(command.parameters);
38
+ * // output:
39
+ * {
40
+ * startTime: 756648000,
41
+ * hours: 1,
42
+ * channelList: [
43
+ * {index: 0, value: 131, diff: [10]},
44
+ * {index: 1, value: 8, diff: [10]},
45
+ * {index: 2, value: 8, diff: [10]},
46
+ * {index: 3, value: 12, diff: [10]}
47
+ * ]
48
+ * }
49
+ * ```
50
+ *
51
+ * [Command format documentation](https://github.com/jooby-dev/jooby-docs/blob/main/docs/commands/GetArchiveHoursMC.md#response)
52
+ */
53
+ class GetArchiveHoursMCResponse extends Command {
54
+ constructor(parameters) {
55
+ super();
56
+ this.parameters = parameters;
57
+ this.parameters.channelList = this.parameters.channelList.sort((a, b) => a.index - b.index);
58
+ }
59
+ // data - only body (without header)
60
+ static fromBytes(data) {
61
+ const buffer = new CommandBinaryBuffer(data);
62
+ return new GetArchiveHoursMCResponse(buffer.getChannelsValuesWithHourDiff());
63
+ }
64
+ // returns full message - header with body
65
+ toBytes() {
66
+ const buffer = new CommandBinaryBuffer(COMMAND_BODY_MAX_SIZE);
67
+ const { hours, startTime, channelList } = this.parameters;
68
+ buffer.setChannelsValuesWithHourDiff(hours, startTime, channelList);
69
+ return Command.toBytes(COMMAND_ID, buffer.getBytesToOffset());
70
+ }
71
+ }
72
+ GetArchiveHoursMCResponse.id = COMMAND_ID;
73
+ GetArchiveHoursMCResponse.directionType = UPLINK;
74
+ GetArchiveHoursMCResponse.examples = examples;
75
+ GetArchiveHoursMCResponse.hasParameters = true;
76
+ export default GetArchiveHoursMCResponse;
77
+ //# sourceMappingURL=GetArchiveHoursMCResponse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GetArchiveHoursMCResponse.js","sourceRoot":"","sources":["../../../src/commands/uplink/GetArchiveHoursMCResponse.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,kBAAkB,CAAC;AAC9D,OAAO,mBAAoC,MAAM,8BAA8B,CAAC;AAChF,OAAO,EAAC,MAAM,EAAC,MAAM,+BAA+B,CAAC;AAsBrD,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,0EAA0E;AAC1E,mCAAmC;AACnC,0FAA0F;AAC1F,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAElC,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,uCAAuC;QAC7C,UAAU,EAAE;YACR,SAAS,EAAE,SAAS;YACpB,KAAK,EAAE,CAAC;YACR,WAAW,EAAE;gBACT,EAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAC;gBAClC,EAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAC;gBAChC,EAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAC;gBAChC,EAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAC;aACpC;SACJ;QACD,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,wCAAwC,EAAC;KACzE;CACJ,CAAC;AAGF;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,yBAA0B,SAAQ,OAAO;IAC3C,YAAqB,UAAgD;QACjE,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAsC;QAGjE,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;IAYD,oCAAoC;IACpC,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,yBAAyB,CAAC,MAAM,CAAC,6BAA6B,EAAE,CAAC,CAAC;IACjF,CAAC;IAED,0CAA0C;IAC1C,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;;AAxBe,4BAAE,GAAG,UAAU,CAAC;AAEhB,uCAAa,GAAG,MAAM,CAAC;AAEvB,kCAAQ,GAAG,QAAQ,CAAC;AAEpB,uCAAa,GAAG,IAAI,CAAC;AAsBzC,eAAe,yBAAyB,CAAC"}
@@ -0,0 +1,47 @@
1
+ import Command, { TCommandExampleList } from '../../Command.js';
2
+ import { IChannelArchiveDays } from '../../CommandBinaryBuffer.js';
3
+ import { TTime2000 } from '../../utils/time.js';
4
+ interface IGetExAbsArchiveDaysMCResponseParameters {
5
+ channelList: Array<IChannelArchiveDays>;
6
+ startTime: TTime2000;
7
+ days: number;
8
+ }
9
+ /**
10
+ * Uplink command.
11
+ *
12
+ * @example create command instance from command body hex dump
13
+ * ```js
14
+ * import GetExAbsArchiveDaysMCResponse from 'jooby-codec/commands/uplink/GetExAbsArchiveDaysMCResponse';
15
+ *
16
+ * const commandBody = new Uint8Array([
17
+ * 0x2e, 0x6a, 0x10, 0x02, 0x94, 0x2b, 0xaa, 0x2c
18
+ * ]);
19
+ * const command = GetExAbsArchiveDaysMCResponse.fromBytes(commandBody);
20
+ *
21
+ * console.log(command.parameters);
22
+ * // output:
23
+ * {
24
+ * startTime: 731721600,
25
+ * days: 2,
26
+ * channelList: [
27
+ * {
28
+ * index: 4,
29
+ * dayList: [5524, 5674]
30
+ * }
31
+ * ]
32
+ * }
33
+ * ```
34
+ *
35
+ * [Command format documentation](https://github.com/jooby-dev/jooby-docs/blob/main/docs/commands/GetExAbsArchiveDaysMC.md#response)
36
+ */
37
+ declare class GetExAbsArchiveDaysMCResponse extends Command {
38
+ parameters: IGetExAbsArchiveDaysMCResponseParameters;
39
+ constructor(parameters: IGetExAbsArchiveDaysMCResponseParameters);
40
+ static id: number;
41
+ static readonly directionType = 2;
42
+ static readonly examples: TCommandExampleList;
43
+ static readonly hasParameters = true;
44
+ static fromBytes(data: Uint8Array): GetExAbsArchiveDaysMCResponse;
45
+ toBytes(): Uint8Array;
46
+ }
47
+ export default GetExAbsArchiveDaysMCResponse;
@@ -6,7 +6,51 @@ const COMMAND_ID = 0x0d1f;
6
6
  // date 2 bytes, channelList 1 byte (max channelList: 4), days 1 byte (max days - 255)
7
7
  // 4 + (4 channelList * (1 byte pulse coefficient + 5 bytes of day values) * 255 max days)
8
8
  const COMMAND_BODY_MAX_SIZE = 6124;
9
- class ExAbsArchiveDaysMC extends Command {
9
+ const examples = [
10
+ {
11
+ name: '1 channel at 2023.03.10 00:00:00 GMT',
12
+ parameters: {
13
+ startTime: 731721600,
14
+ days: 2,
15
+ channelList: [
16
+ {
17
+ index: 4,
18
+ dayList: [5524, 5674]
19
+ }
20
+ ]
21
+ },
22
+ hex: { header: '1f 0d 08', body: '2e 6a 10 02 94 2b aa 2c' }
23
+ }
24
+ ];
25
+ /**
26
+ * Uplink command.
27
+ *
28
+ * @example create command instance from command body hex dump
29
+ * ```js
30
+ * import GetExAbsArchiveDaysMCResponse from 'jooby-codec/commands/uplink/GetExAbsArchiveDaysMCResponse';
31
+ *
32
+ * const commandBody = new Uint8Array([
33
+ * 0x2e, 0x6a, 0x10, 0x02, 0x94, 0x2b, 0xaa, 0x2c
34
+ * ]);
35
+ * const command = GetExAbsArchiveDaysMCResponse.fromBytes(commandBody);
36
+ *
37
+ * console.log(command.parameters);
38
+ * // output:
39
+ * {
40
+ * startTime: 731721600,
41
+ * days: 2,
42
+ * channelList: [
43
+ * {
44
+ * index: 4,
45
+ * dayList: [5524, 5674]
46
+ * }
47
+ * ]
48
+ * }
49
+ * ```
50
+ *
51
+ * [Command format documentation](https://github.com/jooby-dev/jooby-docs/blob/main/docs/commands/GetExAbsArchiveDaysMC.md#response)
52
+ */
53
+ class GetExAbsArchiveDaysMCResponse extends Command {
10
54
  constructor(parameters) {
11
55
  super();
12
56
  this.parameters = parameters;
@@ -29,7 +73,7 @@ class ExAbsArchiveDaysMC extends Command {
29
73
  dayList.push(buffer.getExtendedValue());
30
74
  }
31
75
  });
32
- return new ExAbsArchiveDaysMC({ channelList, days, startTime: getSecondsFromDate(date) });
76
+ return new GetExAbsArchiveDaysMCResponse({ channelList, days, startTime: getSecondsFromDate(date) });
33
77
  }
34
78
  // returns full message - header with body
35
79
  toBytes() {
@@ -44,8 +88,9 @@ class ExAbsArchiveDaysMC extends Command {
44
88
  return Command.toBytes(COMMAND_ID, buffer.getBytesToOffset());
45
89
  }
46
90
  }
47
- ExAbsArchiveDaysMC.id = COMMAND_ID;
48
- ExAbsArchiveDaysMC.directionType = UPLINK;
49
- ExAbsArchiveDaysMC.hasParameters = true;
50
- export default ExAbsArchiveDaysMC;
51
- //# sourceMappingURL=ExAbsArchiveDaysMC.js.map
91
+ GetExAbsArchiveDaysMCResponse.id = COMMAND_ID;
92
+ GetExAbsArchiveDaysMCResponse.directionType = UPLINK;
93
+ GetExAbsArchiveDaysMCResponse.examples = examples;
94
+ GetExAbsArchiveDaysMCResponse.hasParameters = true;
95
+ export default GetExAbsArchiveDaysMCResponse;
96
+ //# sourceMappingURL=GetExAbsArchiveDaysMCResponse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GetExAbsArchiveDaysMCResponse.js","sourceRoot":"","sources":["../../../src/commands/uplink/GetExAbsArchiveDaysMCResponse.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ import Command, { TCommandExampleList } from '../../Command.js';
2
+ import { TTime2000 } from '../../utils/time.js';
3
+ import { IChannelHours } from '../../CommandBinaryBuffer.js';
4
+ interface IGetExAbsArchiveHoursMCResponseParameters {
5
+ channelList: Array<IChannelHours>;
6
+ startTime: TTime2000;
7
+ hours: number;
8
+ }
9
+ /**
10
+ * Uplink command.
11
+ *
12
+ * @example create command instance from command body hex dump
13
+ * ```js
14
+ * import GetExAbsArchiveHoursMCResponse from 'jooby-codec/commands/uplink/GetExAbsArchiveHoursMCResponse';
15
+ *
16
+ * const commandBody = new Uint8Array([
17
+ * 0x2f, 0x97, 0x0c, 0x04, 0xea, 0x01, 0x02
18
+ * ]);
19
+ * const command = GetExAbsArchiveHoursMCResponse.fromBytes(commandBody);
20
+ *
21
+ * console.log(command.parameters);
22
+ * // output:
23
+ * {
24
+ * startTime: 756648000,
25
+ * hours: 1,
26
+ * channelList: [
27
+ * {value: 234, index: 2, diff: [2]}
28
+ * ]
29
+ * }
30
+ * ```
31
+ *
32
+ * [Command format documentation](https://github.com/jooby-dev/jooby-docs/blob/main/docs/commands/GetExAbsArchiveHoursMC.md#response)
33
+ */
34
+ declare class GetExAbsArchiveHoursMCResponse extends Command {
35
+ parameters: IGetExAbsArchiveHoursMCResponseParameters;
36
+ constructor(parameters: IGetExAbsArchiveHoursMCResponseParameters);
37
+ static readonly id = 3103;
38
+ static readonly directionType = 2;
39
+ static readonly examples: TCommandExampleList;
40
+ static readonly hasParameters = true;
41
+ static fromBytes(data: Uint8Array): GetExAbsArchiveHoursMCResponse;
42
+ toBytes(): Uint8Array;
43
+ }
44
+ export default GetExAbsArchiveHoursMCResponse;
@@ -7,7 +7,45 @@ const COMMAND_ID = 0x0c1f;
7
7
  // date 2 bytes, hour 1 byte (max hours: 7), channelList 1 byte (max channelList: 4)
8
8
  // 4 + (4 channelList * 1 byte pulse coefficient) + (4 channelList * 5 bytes of hour values) + (4 * 5 bytes of diff * 7 max hours diff)
9
9
  const COMMAND_BODY_MAX_SIZE = 168;
10
- class ExAbsArchiveHoursMC extends Command {
10
+ const examples = [
11
+ {
12
+ name: '1 channel at 2023.12.23 12:00:00 GMT',
13
+ parameters: {
14
+ startTime: 756648000,
15
+ hours: 1,
16
+ channelList: [
17
+ { value: 234, index: 2, diff: [2] }
18
+ ]
19
+ },
20
+ hex: { header: '1f 0c 07', body: '2f 97 0c 04 ea 01 02' }
21
+ }
22
+ ];
23
+ /**
24
+ * Uplink command.
25
+ *
26
+ * @example create command instance from command body hex dump
27
+ * ```js
28
+ * import GetExAbsArchiveHoursMCResponse from 'jooby-codec/commands/uplink/GetExAbsArchiveHoursMCResponse';
29
+ *
30
+ * const commandBody = new Uint8Array([
31
+ * 0x2f, 0x97, 0x0c, 0x04, 0xea, 0x01, 0x02
32
+ * ]);
33
+ * const command = GetExAbsArchiveHoursMCResponse.fromBytes(commandBody);
34
+ *
35
+ * console.log(command.parameters);
36
+ * // output:
37
+ * {
38
+ * startTime: 756648000,
39
+ * hours: 1,
40
+ * channelList: [
41
+ * {value: 234, index: 2, diff: [2]}
42
+ * ]
43
+ * }
44
+ * ```
45
+ *
46
+ * [Command format documentation](https://github.com/jooby-dev/jooby-docs/blob/main/docs/commands/GetExAbsArchiveHoursMC.md#response)
47
+ */
48
+ class GetExAbsArchiveHoursMCResponse extends Command {
11
49
  constructor(parameters) {
12
50
  super();
13
51
  this.parameters = parameters;
@@ -33,7 +71,7 @@ class ExAbsArchiveHoursMC extends Command {
33
71
  index: channelIndex
34
72
  });
35
73
  });
36
- return new ExAbsArchiveHoursMC({ channelList, hours, startTime: getSecondsFromDate(date) });
74
+ return new GetExAbsArchiveHoursMCResponse({ channelList, hours, startTime: getSecondsFromDate(date) });
37
75
  }
38
76
  // returns full message - header with body
39
77
  toBytes() {
@@ -51,8 +89,9 @@ class ExAbsArchiveHoursMC extends Command {
51
89
  return Command.toBytes(COMMAND_ID, buffer.getBytesToOffset());
52
90
  }
53
91
  }
54
- ExAbsArchiveHoursMC.id = COMMAND_ID;
55
- ExAbsArchiveHoursMC.directionType = UPLINK;
56
- ExAbsArchiveHoursMC.hasParameters = true;
57
- export default ExAbsArchiveHoursMC;
58
- //# sourceMappingURL=ExAbsArchiveHoursMC.js.map
92
+ GetExAbsArchiveHoursMCResponse.id = COMMAND_ID;
93
+ GetExAbsArchiveHoursMCResponse.directionType = UPLINK;
94
+ GetExAbsArchiveHoursMCResponse.examples = examples;
95
+ GetExAbsArchiveHoursMCResponse.hasParameters = true;
96
+ export default GetExAbsArchiveHoursMCResponse;
97
+ //# sourceMappingURL=GetExAbsArchiveHoursMCResponse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GetExAbsArchiveHoursMCResponse.js","sourceRoot":"","sources":["../../../src/commands/uplink/GetExAbsArchiveHoursMCResponse.ts"],"names":[],"mappings":"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"}