jooby-codec 3.11.0 → 3.12.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 (72) hide show
  1. package/dist/Command.d.ts +32 -0
  2. package/dist/Command.js +31 -0
  3. package/dist/Command.js.map +1 -0
  4. package/dist/analog/Command.d.ts +3 -25
  5. package/dist/analog/Command.js +3 -20
  6. package/dist/analog/Command.js.map +1 -1
  7. package/dist/analog/UnknownCommand.d.ts +2 -3
  8. package/dist/analog/UnknownCommand.js +3 -4
  9. package/dist/analog/UnknownCommand.js.map +1 -1
  10. package/dist/analog/commands/DataSegmentBase.d.ts +2 -3
  11. package/dist/analog/commands/DataSegmentBase.js +3 -4
  12. package/dist/analog/commands/DataSegmentBase.js.map +1 -1
  13. package/dist/analog/splitBytesToDataSegments.js +3 -0
  14. package/dist/analog/splitBytesToDataSegments.js.map +1 -1
  15. package/dist/mtx/Command.d.ts +3 -27
  16. package/dist/mtx/Command.js +3 -28
  17. package/dist/mtx/Command.js.map +1 -1
  18. package/dist/mtx/CommandBinaryBuffer.d.ts +28 -28
  19. package/dist/mtx/CommandBinaryBuffer.js +48 -71
  20. package/dist/mtx/CommandBinaryBuffer.js.map +1 -1
  21. package/dist/mtx/UnknownCommand.d.ts +2 -3
  22. package/dist/mtx/UnknownCommand.js +3 -4
  23. package/dist/mtx/UnknownCommand.js.map +1 -1
  24. package/dist/mtx/commands/downlink/SetCorrectDateTime.d.ts +1 -1
  25. package/dist/mtx/commands/downlink/SetCorrectDateTime.js +2 -2
  26. package/dist/mtx/commands/downlink/SetCorrectDateTime.js.map +1 -1
  27. package/dist/mtx/commands/downlink/SetDateTime.js +7 -7
  28. package/dist/mtx/commands/downlink/SetDateTime.js.map +1 -1
  29. package/dist/mtx/commands/uplink/GetDateTimeResponse.js +1 -1
  30. package/dist/mtx/commands/uplink/GetDateTimeResponse.js.map +1 -1
  31. package/dist/mtx/commands/uplink/SetCorrectDateTimeResponse.d.ts +1 -1
  32. package/dist/mtx/commands/uplink/SetCorrectDateTimeResponse.js +2 -2
  33. package/dist/mtx/commands/uplink/SetCorrectDateTimeResponse.js.map +1 -1
  34. package/dist/mtx/commands/uplink/SetDateTimeResponse.d.ts +1 -1
  35. package/dist/mtx/commands/uplink/SetDateTimeResponse.js +2 -2
  36. package/dist/mtx/commands/uplink/SetDateTimeResponse.js.map +1 -1
  37. package/dist/mtx/constants/screenIds.d.ts +29 -22
  38. package/dist/mtx/constants/screenIds.js +29 -22
  39. package/dist/mtx/constants/screenIds.js.map +1 -1
  40. package/dist/mtx/constants/screenSets.js +29 -21
  41. package/dist/mtx/constants/screenSets.js.map +1 -1
  42. package/dist/mtx/message.js +1 -1
  43. package/dist/mtx/message.js.map +1 -1
  44. package/dist/mtxLora/Command.d.ts +9 -1
  45. package/dist/mtxLora/Command.js +5 -1
  46. package/dist/mtxLora/Command.js.map +1 -1
  47. package/dist/mtxLora/CommandBinaryBuffer.d.ts +1 -0
  48. package/dist/mtxLora/CommandBinaryBuffer.js +1 -1
  49. package/dist/mtxLora/CommandBinaryBuffer.js.map +1 -1
  50. package/dist/mtxLora/commands/downlink/GetHalfhoursEnergies.d.ts +1 -1
  51. package/dist/mtxLora/commands/downlink/GetHalfhoursEnergies.js +2 -2
  52. package/dist/mtxLora/commands/uplink/GetDayEnergies.d.ts +2 -1
  53. package/dist/mtxLora/commands/uplink/GetDayEnergies.js +39 -2
  54. package/dist/mtxLora/commands/uplink/GetDayEnergies.js.map +1 -1
  55. package/dist/mtxLora/commands/uplink/GetDayMaxPower.d.ts +2 -1
  56. package/dist/mtxLora/commands/uplink/GetDayMaxPower.js +39 -2
  57. package/dist/mtxLora/commands/uplink/GetDayMaxPower.js.map +1 -1
  58. package/dist/mtxLora/commands/uplink/GetHalfhoursEnergies.d.ts +3 -2
  59. package/dist/mtxLora/commands/uplink/GetHalfhoursEnergies.js +41 -4
  60. package/dist/mtxLora/commands/uplink/GetHalfhoursEnergies.js.map +1 -1
  61. package/dist/mtxLora/message.js +1 -1
  62. package/dist/mtxLora/message.js.map +1 -1
  63. package/dist/obis-observer/Command.d.ts +3 -25
  64. package/dist/obis-observer/Command.js +3 -26
  65. package/dist/obis-observer/Command.js.map +1 -1
  66. package/dist/obis-observer/UnknownCommand.d.ts +2 -3
  67. package/dist/obis-observer/UnknownCommand.js +3 -4
  68. package/dist/obis-observer/UnknownCommand.js.map +1 -1
  69. package/dist/utils/bytesConversion.d.ts +6 -1
  70. package/dist/utils/bytesConversion.js +10 -3
  71. package/dist/utils/bytesConversion.js.map +1 -1
  72. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
- import Command, { COMMAND_HEADER_SIZE } from '../../Command.js';
2
- import CommandBinaryBuffer from '../../CommandBinaryBuffer.js';
1
+ import Command, { COMMAND_HEADER_SIZE, defaultDlmsJsonOptions } from '../../Command.js';
2
+ import CommandBinaryBuffer, { TARIFF_NUMBER } from '../../CommandBinaryBuffer.js';
3
3
  import { UPLINK } from '../../../constants/directions.js';
4
4
  const COMMAND_ID = 0x78;
5
5
  const DATE_SIZE = 3;
@@ -27,6 +27,32 @@ const examples = [
27
27
  }
28
28
  }
29
29
  ];
30
+ const energiesToObis = {
31
+ 'A+': '1.8.x',
32
+ 'A+R+': '3.8.x',
33
+ 'A+R-': '4.8.x',
34
+ 'A-': '2.8.x',
35
+ 'A-R+': '7.8.x',
36
+ 'A-R-': '8.8.x'
37
+ };
38
+ const convertEnergyToObis = (energy, tariff = 0) => {
39
+ const obis = energiesToObis[energy];
40
+ return obis ? obis.replace('x', tariff.toString(10)) : '';
41
+ };
42
+ const convertTariffsEnergiesToDlms = (energies) => {
43
+ const dlms = {};
44
+ for (let tariff = 0; tariff < TARIFF_NUMBER; tariff++) {
45
+ const tariffEnergies = energies[tariff];
46
+ if (tariffEnergies) {
47
+ for (const [energy, value] of Object.entries(tariffEnergies)) {
48
+ if (value || value === 0) {
49
+ dlms[convertEnergyToObis(energy, tariff + 1)] = value;
50
+ }
51
+ }
52
+ }
53
+ }
54
+ return dlms;
55
+ };
30
56
  class GetDayEnergies extends Command {
31
57
  constructor(parameters) {
32
58
  super();
@@ -50,6 +76,17 @@ class GetDayEnergies extends Command {
50
76
  ...buffer.getBytesToOffset()
51
77
  ]);
52
78
  }
79
+ toJson({ dlms } = defaultDlmsJsonOptions) {
80
+ const { parameters } = this;
81
+ const { date, energies } = parameters;
82
+ const result = dlms
83
+ ? {
84
+ date,
85
+ ...convertTariffsEnergiesToDlms(energies)
86
+ }
87
+ : parameters;
88
+ return JSON.stringify(result);
89
+ }
53
90
  }
54
91
  GetDayEnergies.id = COMMAND_ID;
55
92
  GetDayEnergies.directionType = UPLINK;
@@ -1 +1 @@
1
- {"version":3,"file":"GetDayEnergies.js","sourceRoot":"","sources":["../../../../src/mtxLora/commands/uplink/GetDayEnergies.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,EAAE,EAAsB,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AACnF,OAAO,mBAA8C,MAAM,8BAA8B,CAAC;AAC1F,OAAO,EAAC,MAAM,EAAC,MAAM,kCAAkC,CAAC;AASxD,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,SAAS,GAAG,CAAC,CAAC;AACpB,MAAM,yBAAyB,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC5C,MAAM,gBAAgB,GAAG,SAAS,GAAG,yBAAyB,CAAC;AAE/D,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,kBAAkB;QACxB,UAAU,EAAE;YACR,IAAI,EAAE;gBACF,IAAI,EAAE,EAAE;gBACR,KAAK,EAAE,CAAC;gBACR,GAAG,EAAE,CAAC;aACT;YACD,QAAQ,EAAE;gBACN;oBACI,IAAI,EAAE,MAAM;oBACZ,MAAM,EAAE,MAAM;iBACjB;aACJ;SACJ;QACD,GAAG,EAAE;YACD,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,qCAAqC;SAC9C;KACJ;CACJ,CAAC;AA8BF,MAAM,cAAe,SAAQ,OAAO;IAChC,YAAqB,UAA2B;QAC5C,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAiB;IAEhD,CAAC;IAeD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,cAAc,CAAC;YACtB,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE;YACtB,QAAQ,EAAE,MAAM,CAAC,kBAAkB,EAAE;SACxC,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,UAAU,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAC,EAAC,GAAG,IAAI,CAAC;QAC5C,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;QAG/E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrB,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAEpC,OAAO,IAAI,UAAU,CAAC;YAClB,UAAU;YACV,MAAM,CAAC,QAAQ;YACf,GAAG,MAAM,CAAC,gBAAgB,EAAE;SAC/B,CAAC,CAAC;IACP,CAAC;;AAnCe,iBAAE,GAAG,UAAU,CAAC;AAEhB,4BAAa,GAAG,MAAM,CAAC;AAEvB,uBAAQ,GAAG,QAAQ,CAAC;AAEpB,4BAAa,GAAG,IAAI,CAAC;AAErB,sBAAO,GAAG,GAAG,CAAC;AA+BlC,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"GetDayEnergies.js","sourceRoot":"","sources":["../../../../src/mtxLora/commands/uplink/GetDayEnergies.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import Command, { TCommandExampleList } from '../../Command.js';
1
+ import Command, { TCommandExampleList, IDlmsJsonOptions } from '../../Command.js';
2
2
  import { IDate, TTariffsPowerMax } from '../../CommandBinaryBuffer.js';
3
3
  interface IGetDayMaxPower {
4
4
  date: IDate;
@@ -14,5 +14,6 @@ declare class GetDayMaxPower extends Command {
14
14
  static readonly maxSize = 148;
15
15
  static fromBytes(data: Uint8Array): GetDayMaxPower;
16
16
  toBytes(): Uint8Array;
17
+ toJson({ dlms }?: IDlmsJsonOptions): string;
17
18
  }
18
19
  export default GetDayMaxPower;
@@ -1,5 +1,5 @@
1
- import Command, { COMMAND_HEADER_SIZE } from '../../Command.js';
2
- import CommandBinaryBuffer from '../../CommandBinaryBuffer.js';
1
+ import Command, { COMMAND_HEADER_SIZE, defaultDlmsJsonOptions } from '../../Command.js';
2
+ import CommandBinaryBuffer, { TARIFF_NUMBER } from '../../CommandBinaryBuffer.js';
3
3
  import { UPLINK } from '../../../constants/directions.js';
4
4
  const COMMAND_ID = 0x79;
5
5
  const DATE_SIZE = 3;
@@ -35,6 +35,32 @@ const examples = [
35
35
  }
36
36
  }
37
37
  ];
38
+ const energiesToObis = {
39
+ 'A+': '1.6.x',
40
+ 'A+R+': '3.6.x',
41
+ 'A+R-': '4.6.x',
42
+ 'A-': '2.6.x',
43
+ 'A-R+': '7.6.x',
44
+ 'A-R-': '8.6.x'
45
+ };
46
+ const convertEnergyToObis = (energy, tariff = 0) => {
47
+ const obis = energiesToObis[energy];
48
+ return obis ? obis.replace('x', tariff.toString(10)) : '';
49
+ };
50
+ const convertTariffsPowerMaxToDlms = (energies) => {
51
+ const dlms = {};
52
+ for (let tariff = 0; tariff < TARIFF_NUMBER; tariff++) {
53
+ const tariffEnergies = energies[tariff];
54
+ if (tariffEnergies) {
55
+ for (const [energy, value] of Object.entries(tariffEnergies)) {
56
+ if (value || value === 0) {
57
+ dlms[convertEnergyToObis(energy, tariff + 1)] = value;
58
+ }
59
+ }
60
+ }
61
+ }
62
+ return dlms;
63
+ };
38
64
  class GetDayMaxPower extends Command {
39
65
  constructor(parameters) {
40
66
  super();
@@ -58,6 +84,17 @@ class GetDayMaxPower extends Command {
58
84
  ...buffer.getBytesToOffset()
59
85
  ]);
60
86
  }
87
+ toJson({ dlms } = defaultDlmsJsonOptions) {
88
+ const { parameters } = this;
89
+ const { date, tariffs } = parameters;
90
+ const result = dlms
91
+ ? {
92
+ date,
93
+ ...convertTariffsPowerMaxToDlms(tariffs)
94
+ }
95
+ : parameters;
96
+ return JSON.stringify(result);
97
+ }
61
98
  }
62
99
  GetDayMaxPower.id = COMMAND_ID;
63
100
  GetDayMaxPower.directionType = UPLINK;
@@ -1 +1 @@
1
- {"version":3,"file":"GetDayMaxPower.js","sourceRoot":"","sources":["../../../../src/mtxLora/commands/uplink/GetDayMaxPower.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,EAAE,EAAsB,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AACnF,OAAO,mBAA8C,MAAM,8BAA8B,CAAC;AAC1F,OAAO,EAAC,MAAM,EAAC,MAAM,kCAAkC,CAAC;AASxD,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,SAAS,GAAG,CAAC,CAAC;AACpB,MAAM,yBAAyB,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AACtD,MAAM,gBAAgB,GAAG,SAAS,GAAG,yBAAyB,CAAC;AAE/D,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,mBAAmB;QACzB,UAAU,EAAE;YACR,IAAI,EAAE;gBACF,IAAI,EAAE,EAAE;gBACR,KAAK,EAAE,CAAC;gBACR,GAAG,EAAE,CAAC;aACT;YACD,OAAO,EAAE;gBACL;oBACI,IAAI,EAAE;wBACF,KAAK,EAAE,CAAC;wBACR,OAAO,EAAE,CAAC;wBACV,KAAK,EAAE,MAAM;qBAChB;oBACD,MAAM,EAAE;wBACJ,KAAK,EAAE,CAAC;wBACR,OAAO,EAAE,CAAC;wBACV,KAAK,EAAE,MAAM;qBAChB;iBACJ;aACJ;SACJ;QACD,GAAG,EAAE;YACD,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,iDAAiD;SAC1D;KACJ;CACJ,CAAC;AA8BF,MAAM,cAAe,SAAQ,OAAO;IAChC,YAAqB,UAA2B;QAC5C,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAiB;IAEhD,CAAC;IAeD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,IAAI,cAAc,CAAC;YACtB,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE;YACtB,OAAO,EAAE,MAAM,CAAC,kBAAkB,EAAE;SACvC,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,UAAU,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAC,EAAC,GAAG,IAAI,CAAC;QACnD,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;QAG/E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrB,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAElC,OAAO,IAAI,UAAU,CAAC;YAClB,UAAU;YACV,MAAM,CAAC,QAAQ;YACf,GAAG,MAAM,CAAC,gBAAgB,EAAE;SAC/B,CAAC,CAAC;IACP,CAAC;;AAnCe,iBAAE,GAAG,UAAU,CAAC;AAEhB,4BAAa,GAAG,MAAM,CAAC;AAEvB,uBAAQ,GAAG,QAAQ,CAAC;AAEpB,4BAAa,GAAG,IAAI,CAAC;AAErB,sBAAO,GAAG,GAAG,CAAC;AA8BlC,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"GetDayMaxPower.js","sourceRoot":"","sources":["../../../../src/mtxLora/commands/uplink/GetDayMaxPower.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import Command, { TCommandExampleList } from '../../Command.js';
1
+ import Command, { TCommandExampleList, IDlmsJsonOptions } from '../../Command.js';
2
2
  import { IDate, THalfhoursEnergies } from '../../CommandBinaryBuffer.js';
3
3
  interface IGetHalfhoursEnergies {
4
4
  date: IDate;
@@ -9,12 +9,13 @@ interface IGetHalfhoursEnergies {
9
9
  declare class GetHalfhoursEnergies extends Command {
10
10
  parameters: IGetHalfhoursEnergies;
11
11
  constructor(parameters: IGetHalfhoursEnergies);
12
- static readonly id = 105;
12
+ static readonly id = 111;
13
13
  static readonly directionType = 2;
14
14
  static readonly examples: TCommandExampleList;
15
15
  static readonly hasParameters = true;
16
16
  static readonly maxSize = 256;
17
17
  static fromBytes(data: Uint8Array): GetHalfhoursEnergies;
18
18
  toBytes(): Uint8Array;
19
+ toJson({ dlms }?: IDlmsJsonOptions): string;
19
20
  }
20
21
  export default GetHalfhoursEnergies;
@@ -1,7 +1,7 @@
1
- import Command, { COMMAND_HEADER_SIZE } from '../../Command.js';
2
- import CommandBinaryBuffer from '../../CommandBinaryBuffer.js';
1
+ import Command, { COMMAND_HEADER_SIZE, defaultDlmsJsonOptions } from '../../Command.js';
2
+ import CommandBinaryBuffer, { TARIFF_NUMBER } from '../../CommandBinaryBuffer.js';
3
3
  import { UPLINK } from '../../../constants/directions.js';
4
- const COMMAND_ID = 0x69;
4
+ const COMMAND_ID = 0x6f;
5
5
  const DATE_SIZE = 3;
6
6
  const MAX_HALFHOURS_ENERGY_SIZE = 5 * 3 * 4;
7
7
  const COMMAND_MAX_SIZE = DATE_SIZE + MAX_HALFHOURS_ENERGY_SIZE;
@@ -22,11 +22,35 @@ const examples = [
22
22
  }
23
23
  },
24
24
  hex: {
25
- header: '69 15',
25
+ header: '6f 15',
26
26
  body: '2a 43 11 01 02 00 00 10 00 00 00 20 00 00 00 30 00 00 00 40 00'
27
27
  }
28
28
  }
29
29
  ];
30
+ const energiesToObis = {
31
+ 'A+': '1.5.x',
32
+ 'A+R+': '3.5.x',
33
+ 'A+R-': '4.5.x',
34
+ 'A-': '2.5.x',
35
+ 'A-R+': '6.5.x',
36
+ 'A-R-': '7.5.x'
37
+ };
38
+ const convertEnergyToObis = (energy, tariff = 0) => {
39
+ const obis = energiesToObis[energy];
40
+ return obis ? obis.replace('x', tariff.toString(10)) : '';
41
+ };
42
+ const convertHalfhoursEnergiesToDlms = (energies) => {
43
+ const dlms = {};
44
+ for (const [energy, values] of Object.entries(energies)) {
45
+ for (let tariff = 0; tariff < TARIFF_NUMBER; tariff++) {
46
+ const value = values[tariff];
47
+ if (value || value === 0) {
48
+ dlms[convertEnergyToObis(energy, tariff + 1)] = value;
49
+ }
50
+ }
51
+ }
52
+ return dlms;
53
+ };
30
54
  class GetHalfhoursEnergies extends Command {
31
55
  constructor(parameters) {
32
56
  super();
@@ -59,6 +83,19 @@ class GetHalfhoursEnergies extends Command {
59
83
  ...buffer.getBytesToOffset()
60
84
  ]);
61
85
  }
86
+ toJson({ dlms } = defaultDlmsJsonOptions) {
87
+ const { parameters } = this;
88
+ const { date, firstHalfhour, halfhoursNumber, energies } = parameters;
89
+ const result = dlms
90
+ ? {
91
+ date,
92
+ firstHalfhour,
93
+ halfhoursNumber,
94
+ ...convertHalfhoursEnergiesToDlms(energies)
95
+ }
96
+ : parameters;
97
+ return JSON.stringify(result);
98
+ }
62
99
  }
63
100
  GetHalfhoursEnergies.id = COMMAND_ID;
64
101
  GetHalfhoursEnergies.directionType = UPLINK;
@@ -1 +1 @@
1
- {"version":3,"file":"GetHalfhoursEnergies.js","sourceRoot":"","sources":["../../../../src/mtxLora/commands/uplink/GetHalfhoursEnergies.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,EAAE,EAAsB,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AACnF,OAAO,mBAAgD,MAAM,8BAA8B,CAAC;AAC5F,OAAO,EAAC,MAAM,EAAC,MAAM,kCAAkC,CAAC;AAWxD,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,SAAS,GAAG,CAAC,CAAC;AACpB,MAAM,yBAAyB,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC5C,MAAM,gBAAgB,GAAG,SAAS,GAAG,yBAAyB,CAAC;AAE/D,MAAM,QAAQ,GAAwB;IAClC;QACI,IAAI,EAAE,wBAAwB;QAC9B,UAAU,EAAE;YACR,IAAI,EAAE;gBACF,IAAI,EAAE,EAAE;gBACR,KAAK,EAAE,CAAC;gBACR,GAAG,EAAE,CAAC;aACT;YACD,aAAa,EAAE,CAAC;YAChB,eAAe,EAAE,CAAC;YAClB,QAAQ,EAAE;gBACN,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;gBACtB,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;aAC3B;SACJ;QACD,GAAG,EAAE;YACD,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,gEAAgE;SACzE;KACJ;CACJ,CAAC;AA8BF,MAAM,oBAAqB,SAAQ,OAAO;IACtC,YAAqB,UAAiC;QAClD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAuB;IAEtD,CAAC;IAeD,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,aAAa,GAAG,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAChD,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QACxC,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAE1C,OAAO,IAAI,oBAAoB,CAAC;YAC5B,IAAI;YACJ,aAAa;YACb,eAAe;YACf,QAAQ,EAAE,MAAM,CAAC,oBAAoB,CAAC,aAAa,EAAE,eAAe,CAAC;SACxE,CAAC,CAAC;IACP,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,UAAU,EAAE,EAAC,IAAI,EAAE,aAAa,EAAE,eAAe,EAAE,QAAQ,EAAC,EAAC,GAAG,IAAI,CAAC;QAC5E,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;QAG/E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrB,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAClC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC/B,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QACjC,MAAM,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAEtC,OAAO,IAAI,UAAU,CAAC;YAClB,UAAU;YACV,MAAM,CAAC,QAAQ;YACf,GAAG,MAAM,CAAC,gBAAgB,EAAE;SAC/B,CAAC,CAAC;IACP,CAAC;;AA5Ce,uBAAE,GAAG,UAAU,CAAC;AAEhB,kCAAa,GAAG,MAAM,CAAC;AAEvB,6BAAQ,GAAG,QAAQ,CAAC;AAEpB,kCAAa,GAAG,IAAI,CAAC;AAErB,4BAAO,GAAG,GAAG,CAAC;AAwClC,eAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"GetHalfhoursEnergies.js","sourceRoot":"","sources":["../../../../src/mtxLora/commands/uplink/GetHalfhoursEnergies.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { COMMAND_HEADER_SIZE } from './Command.js';
1
2
  import UnknownCommand from './UnknownCommand.js';
2
3
  import { requestById as mtxLoraRequestById, responseById as mtxLoraResponseById } from './constants/commandRelations.js';
3
4
  import { requestById as mtxRequestById, responseById as mtxResponseById } from '../mtx/constants/commandRelations.js';
@@ -12,7 +13,6 @@ import * as directionTypes from '../constants/directions.js';
12
13
  import { AUTO, DOWNLINK, UPLINK } from '../constants/directions.js';
13
14
  import { UNENCRYPTED } from '../mtx/constants/accessLevels.js';
14
15
  const ACCESS_LEVEL_MASK = 0x03;
15
- const COMMAND_HEADER_SIZE = 2;
16
16
  const PROTOCOL_VERSION = 0x10;
17
17
  const BLOCK_SIZE = 16;
18
18
  const directionTypeIds = new Set(Object.values(directionTypes));
@@ -1 +1 @@
1
- {"version":3,"file":"message.js","sourceRoot":"","sources":["../../src/mtxLora/message.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message.js","sourceRoot":"","sources":["../../src/mtxLora/message.ts"],"names":[],"mappings":"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"}
@@ -1,28 +1,6 @@
1
- import { IHexFormatOptions } from '../config.js';
2
- export interface ICommandExample {
3
- name: string;
4
- parameters?: object;
5
- hardwareType?: number;
6
- hex: {
7
- header: string;
8
- body: string;
9
- };
10
- }
11
- export type TCommandExampleList = Array<ICommandExample>;
12
- declare abstract class Command {
13
- static id: number;
14
- static directionType: unknown;
15
- static title: string;
16
- static examples: TCommandExampleList;
17
- static hasParameters: boolean;
18
- parameters: unknown;
19
- size: number;
20
- static getId(): string;
1
+ import BaseCommand from '../Command.js';
2
+ export { ICommandExample, TCommandExampleList, TJsonOptions, defaultJsonOptions } from '../Command.js';
3
+ declare abstract class Command extends BaseCommand {
21
4
  static toBytes(id: number, commandData?: Uint8Array): Uint8Array;
22
- getParameters(): unknown;
23
- toBytes(): Uint8Array;
24
- toHex(options?: IHexFormatOptions): string;
25
- toBase64(): string;
26
- toJson(): string;
27
5
  }
28
6
  export default Command;
@@ -1,14 +1,7 @@
1
- import getHexFromBytes from '../utils/getHexFromBytes.js';
2
- import getHexFromNumber from '../utils/getHexFromNumber.js';
3
- import getBase64FromBytes from '../utils/getBase64FromBytes.js';
1
+ import BaseCommand from '../Command.js';
4
2
  import mergeUint8Arrays from '../utils/mergeUint8Arrays.js';
5
- class Command {
6
- constructor() {
7
- this.size = 0;
8
- }
9
- static getId() {
10
- return getHexFromNumber(this.id);
11
- }
3
+ export { defaultJsonOptions } from '../Command.js';
4
+ class Command extends BaseCommand {
12
5
  static toBytes(id, commandData) {
13
6
  const commandLength = commandData?.length ?? 0;
14
7
  const headerData = new Uint8Array([id, commandLength]);
@@ -17,22 +10,6 @@ class Command {
17
10
  }
18
11
  return headerData;
19
12
  }
20
- getParameters() {
21
- return this.parameters;
22
- }
23
- toBytes() {
24
- throw new Error('not implemented!');
25
- }
26
- toHex(options = {}) {
27
- return getHexFromBytes(this.toBytes(), options);
28
- }
29
- toBase64() {
30
- return getBase64FromBytes(this.toBytes());
31
- }
32
- toJson() {
33
- return JSON.stringify(this.getParameters());
34
- }
35
13
  }
36
- Command.hasParameters = false;
37
14
  export default Command;
38
15
  //# sourceMappingURL=Command.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Command.js","sourceRoot":"","sources":["../../src/obis-observer/Command.ts"],"names":[],"mappings":"AACA,OAAO,eAAe,MAAM,6BAA6B,CAAC;AAC1D,OAAO,gBAAgB,MAAM,8BAA8B,CAAC;AAC5D,OAAO,kBAAkB,MAAM,gCAAgC,CAAC;AAChE,OAAO,gBAAgB,MAAM,8BAA8B,CAAC;AAmB5D,MAAe,OAAO;IAAtB;QAeI,SAAI,GAAW,CAAC,CAAC;IA2FrB,CAAC;IAvFG,MAAM,CAAC,KAAK;QACR,OAAO,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC;IA+CD,MAAM,CAAC,OAAO,CAAG,EAAU,EAAE,WAAwB;QACjD,MAAM,aAAa,GAAG,WAAW,EAAE,MAAM,IAAI,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC;QAEvD,IAAK,WAAW,IAAI,aAAa,EAAG,CAAC;YACjC,OAAO,gBAAgB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QACrD,CAAC;QAGD,OAAO,UAAU,CAAC;IACtB,CAAC;IAGD,aAAa;QACT,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAGD,OAAO;QACH,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAG,UAA6B,EAAE;QACnC,OAAO,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAED,QAAQ;QACJ,OAAO,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IAC9C,CAAC;IAOD,MAAM;QACF,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IAChD,CAAC;;AAhGM,qBAAa,GAAG,KAAK,AAAR,CAAS;AAoGjC,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"Command.js","sourceRoot":"","sources":["../../src/obis-observer/Command.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,gBAAgB,MAAM,8BAA8B,CAAC;AAG5D,OAAO,EAAqD,kBAAkB,EAAC,MAAM,eAAe,CAAC;AAMrG,MAAe,OAAQ,SAAQ,WAAW;IAQtC,MAAM,CAAC,OAAO,CAAG,EAAU,EAAE,WAAwB;QACjD,MAAM,aAAa,GAAG,WAAW,EAAE,MAAM,IAAI,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC;QAEvD,IAAK,WAAW,IAAI,aAAa,EAAG,CAAC;YACjC,OAAO,gBAAgB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QACrD,CAAC;QAGD,OAAO,UAAU,CAAC;IACtB,CAAC;CACJ;AAGD,eAAe,OAAO,CAAC"}
@@ -1,5 +1,4 @@
1
- import Command from './Command.js';
2
- import { TBytesConversionFormatOptions } from '../utils/bytesConversion.js';
1
+ import Command, { TJsonOptions } from './Command.js';
3
2
  interface IUnknownCommandParameters {
4
3
  id: number;
5
4
  data: Uint8Array;
@@ -9,6 +8,6 @@ declare class UnknownCommand extends Command {
9
8
  constructor(parameters: IUnknownCommandParameters);
10
9
  static fromBytes(data: Uint8Array, id: number): UnknownCommand;
11
10
  toBytes(): Uint8Array;
12
- toJson(bytesConversionFormat?: number, bytesConversionFormatOptions?: TBytesConversionFormatOptions): string;
11
+ toJson(options?: TJsonOptions): string;
13
12
  }
14
13
  export default UnknownCommand;
@@ -1,5 +1,4 @@
1
- import Command from './Command.js';
2
- import { HEX } from '../constants/bytesConversionFormats.js';
1
+ import Command, { defaultJsonOptions } from './Command.js';
3
2
  import { getStringFromBytes } from '../utils/bytesConversion.js';
4
3
  class UnknownCommand extends Command {
5
4
  constructor(parameters) {
@@ -14,11 +13,11 @@ class UnknownCommand extends Command {
14
13
  const { id, data } = this.parameters;
15
14
  return Command.toBytes(id, data);
16
15
  }
17
- toJson(bytesConversionFormat = HEX, bytesConversionFormatOptions = {}) {
16
+ toJson(options = defaultJsonOptions) {
18
17
  const { id, data } = this.parameters;
19
18
  return JSON.stringify({
20
19
  id,
21
- data: getStringFromBytes(data, bytesConversionFormat, bytesConversionFormatOptions)
20
+ data: getStringFromBytes(data, options)
22
21
  });
23
22
  }
24
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"UnknownCommand.js","sourceRoot":"","sources":["../../src/obis-observer/UnknownCommand.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,EAAC,GAAG,EAAC,MAAM,wCAAwC,CAAC;AAC3D,OAAO,EAAgC,kBAAkB,EAAC,MAAM,6BAA6B,CAAC;AAiB9F,MAAM,cAAe,SAAQ,OAAO;IAChC,YAAqB,UAAqC;QACtD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAA2B;IAE1D,CAAC;IAGD,MAAM,CAAC,SAAS,CAAG,IAAgB,EAAE,EAAU;QAC3C,MAAM,UAAU,GAA8B,EAAC,EAAE,EAAE,IAAI,EAAC,CAAC;QAEzD,OAAO,IAAI,cAAc,CAAC,UAAU,CAAC,CAAC;IAC1C,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,EAAE,EAAE,IAAI,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAEnC,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,CAAG,wBAAgC,GAAG,EAAE,+BAA8D,EAAE;QAC1G,MAAM,EAAC,EAAE,EAAE,IAAI,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAEnC,OAAO,IAAI,CAAC,SAAS,CAAC;YAClB,EAAE;YACF,IAAI,EAAE,kBAAkB,CAAC,IAAI,EAAE,qBAAqB,EAAE,4BAA4B,CAAC;SACtF,CAAC,CAAC;IACP,CAAC;CACJ;AAGD,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"UnknownCommand.js","sourceRoot":"","sources":["../../src/obis-observer/UnknownCommand.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,EAAE,EAAe,kBAAkB,EAAC,MAAM,cAAc,CAAC;AACvE,OAAO,EAAC,kBAAkB,EAAC,MAAM,6BAA6B,CAAC;AAiB/D,MAAM,cAAe,SAAQ,OAAO;IAChC,YAAqB,UAAqC;QACtD,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAA2B;IAE1D,CAAC;IAGD,MAAM,CAAC,SAAS,CAAG,IAAgB,EAAE,EAAU;QAC3C,MAAM,UAAU,GAA8B,EAAC,EAAE,EAAE,IAAI,EAAC,CAAC;QAEzD,OAAO,IAAI,cAAc,CAAC,UAAU,CAAC,CAAC;IAC1C,CAAC;IAGD,OAAO;QACH,MAAM,EAAC,EAAE,EAAE,IAAI,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAEnC,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,CAAG,UAAwB,kBAAkB;QAC/C,MAAM,EAAC,EAAE,EAAE,IAAI,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAEnC,OAAO,IAAI,CAAC,SAAS,CAAC;YAClB,EAAE;YACF,IAAI,EAAE,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC;SAC1C,CAAC,CAAC;IACP,CAAC;CACJ;AAGD,eAAe,cAAc,CAAC"}
@@ -2,6 +2,11 @@ import { IHexFormatOptions } from '../config.js';
2
2
  interface IBase64FormatOptions {
3
3
  }
4
4
  export type TBytesConversionFormatOptions = IHexFormatOptions | IBase64FormatOptions;
5
- export declare const getStringFromBytes: (bytes: Uint8Array, bytesConversionFormat?: number, bytesConversionFormatOptions?: TBytesConversionFormatOptions) => string;
5
+ export interface IBytesConversionFormatOptions {
6
+ bytesConversionFormat: number;
7
+ bytesConversionFormatOptions: TBytesConversionFormatOptions;
8
+ }
9
+ export declare const defaultFormatOptions: IBytesConversionFormatOptions;
10
+ export declare const getStringFromBytes: (bytes: Uint8Array, options?: IBytesConversionFormatOptions) => string;
6
11
  export declare const getBytesFromString: (data: string, bytesConversionFormat?: number) => Uint8Array;
7
12
  export {};
@@ -3,8 +3,15 @@ import getBase64FromBytes from './getBase64FromBytes.js';
3
3
  import getBytesFromBase64 from './getBytesFromBase64.js';
4
4
  import getBytesFromHex from './getBytesFromHex.js';
5
5
  import getHexFromBytes from './getHexFromBytes.js';
6
- export const getStringFromBytes = (bytes, bytesConversionFormat = HEX, bytesConversionFormatOptions = {}) => (bytesConversionFormat === HEX
7
- ? getHexFromBytes(bytes, bytesConversionFormatOptions)
8
- : getBase64FromBytes(bytes));
6
+ export const defaultFormatOptions = {
7
+ bytesConversionFormat: HEX,
8
+ bytesConversionFormatOptions: {}
9
+ };
10
+ export const getStringFromBytes = (bytes, options = defaultFormatOptions) => {
11
+ const { bytesConversionFormat = defaultFormatOptions.bytesConversionFormat, bytesConversionFormatOptions = defaultFormatOptions.bytesConversionFormatOptions } = options;
12
+ return bytesConversionFormat === HEX
13
+ ? getHexFromBytes(bytes, bytesConversionFormatOptions)
14
+ : getBase64FromBytes(bytes);
15
+ };
9
16
  export const getBytesFromString = (data, bytesConversionFormat = HEX) => (bytesConversionFormat === HEX ? getBytesFromHex(data) : getBytesFromBase64(data));
10
17
  //# sourceMappingURL=bytesConversion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bytesConversion.js","sourceRoot":"","sources":["../../src/utils/bytesConversion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,wCAAwC,CAAC;AAC3D,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AACzD,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AACzD,OAAO,eAAe,MAAM,sBAAsB,CAAC;AACnD,OAAO,eAAe,MAAM,sBAAsB,CAAC;AASnD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAC9B,KAAiB,EACjB,wBAAgC,GAAG,EACnC,+BAA8D,EAAE,EAClE,EAAE,CAAC,CACD,qBAAqB,KAAK,GAAG;IACzB,CAAC,CAAC,eAAe,CAAC,KAAK,EAAE,4BAA4B,CAAC;IACtD,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAClC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAE,IAAY,EAAE,wBAAgC,GAAG,EAAG,EAAE,CAAC,CACvF,qBAAqB,KAAK,GAAG,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,CACnF,CAAC"}
1
+ {"version":3,"file":"bytesConversion.js","sourceRoot":"","sources":["../../src/utils/bytesConversion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,wCAAwC,CAAC;AAC3D,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AACzD,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AACzD,OAAO,eAAe,MAAM,sBAAsB,CAAC;AACnD,OAAO,eAAe,MAAM,sBAAsB,CAAC;AAcnD,MAAM,CAAC,MAAM,oBAAoB,GAAkC;IAC/D,qBAAqB,EAAE,GAAG;IAC1B,4BAA4B,EAAE,EAAE;CACnC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAC9B,KAAiB,EACjB,UAAyC,oBAAoB,EAC/D,EAAE;IACA,MAAM,EACF,qBAAqB,GAAG,oBAAoB,CAAC,qBAAqB,EAClE,4BAA4B,GAAG,oBAAoB,CAAC,4BAA4B,EACnF,GAAG,OAAO,CAAC;IAEZ,OAAO,qBAAqB,KAAK,GAAG;QAChC,CAAC,CAAC,eAAe,CAAC,KAAK,EAAE,4BAA4B,CAAC;QACtD,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAE,IAAY,EAAE,wBAAgC,GAAG,EAAG,EAAE,CAAC,CACvF,qBAAqB,KAAK,GAAG,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,CACnF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jooby-codec",
3
- "version": "3.11.0",
3
+ "version": "3.12.0",
4
4
  "description": "Jooby message encoders/decoders",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",