myenergi-api 2.6.0 → 2.7.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.
@@ -1,6 +1,7 @@
1
1
  import { AppKeyValues } from './models/AppKeyValues';
2
2
  import { Eddi } from "./models/Eddi";
3
3
  import { Harvi } from "./models/Harvi";
4
+ import { HistoryRecord } from './models/HistoryRecord';
4
5
  import { KeyValue } from './models/KeyValue';
5
6
  import { EddiBoost, EddiMode, ZappiBoostMode, ZappiChargeMode, ZappiPhaseSetting } from "./models/Types";
6
7
  import { Zappi } from "./models/Zappi";
@@ -15,6 +16,7 @@ export declare class MyEnergi {
15
16
  setZappiBoostMode(serialNo: string, boostMode: ZappiBoostMode, kwh?: number, completeTime?: string): Promise<any>;
16
17
  setZappiGreenLevel(serialNo: string, percentage: number): Promise<any>;
17
18
  setZappiPhaseSetting(serialNo: string, phaseSetting: ZappiPhaseSetting): Promise<any>;
19
+ getDayHourHistory(id: string, year: number, month: number, day: number, startHour?: number, noHours?: number): Promise<HistoryRecord[]>;
18
20
  getZappiBoostTimes(serialNo: string): Promise<any>;
19
21
  setZappiBoostTime(serialNo: string, slot: number, startHour: number, startMinute: number, durationHour: number, durationMinute: number, daySpec: string): Promise<any>;
20
22
  getStatusEddiAll(): Promise<Eddi[]>;
@@ -143,6 +143,28 @@ class MyEnergi {
143
143
  }
144
144
  });
145
145
  }
146
+ getDayHourHistory(id, year, month, day, startHour, noHours) {
147
+ return __awaiter(this, void 0, void 0, function* () {
148
+ try {
149
+ let path = `${this._config.dayhour_url}${id}-${year}-${month}-${day}`;
150
+ if (startHour !== undefined) {
151
+ path += `-${startHour}`;
152
+ if (noHours !== undefined) {
153
+ path += `-${noHours}`;
154
+ }
155
+ }
156
+ const url = new URL(path, this._config.base_url);
157
+ const data = yield this._digest.get(url);
158
+ const jsonData = JSON.parse(data);
159
+ const key = Object.keys(jsonData)[0];
160
+ const records = key ? jsonData[key] : undefined;
161
+ return Array.isArray(records) ? records : [];
162
+ }
163
+ catch (error) {
164
+ return [];
165
+ }
166
+ });
167
+ }
146
168
  getZappiBoostTimes(serialNo) {
147
169
  return __awaiter(this, void 0, void 0, function* () {
148
170
  try {
@@ -1,6 +1,7 @@
1
1
  import { Eddi } from "./models/Eddi";
2
2
  import { Harvi } from "./models/Harvi";
3
+ import { HistoryRecord } from "./models/HistoryRecord";
3
4
  import { EddiBoost, EddiHeaterStatus, EddiMode, ZappiBoostMode, ZappiChargeMode, ZappiPhaseSetting, ZappiStatus } from "./models/Types";
4
5
  import { Zappi } from "./models/Zappi";
5
6
  import { MyEnergi } from "./MyEnergi";
6
- export { MyEnergi, Eddi, Zappi, Harvi, EddiBoost, EddiMode, EddiHeaterStatus, ZappiBoostMode, ZappiChargeMode, ZappiPhaseSetting, ZappiStatus };
7
+ export { MyEnergi, Eddi, Zappi, Harvi, HistoryRecord, EddiBoost, EddiMode, EddiHeaterStatus, ZappiBoostMode, ZappiChargeMode, ZappiPhaseSetting, ZappiStatus };
@@ -0,0 +1,27 @@
1
+ export interface HistoryRecord {
2
+ min?: number;
3
+ hr?: number;
4
+ dow?: string;
5
+ dom?: number;
6
+ mon?: number;
7
+ yr?: number;
8
+ imp?: number;
9
+ exp?: number;
10
+ gep?: number;
11
+ gen?: number;
12
+ h1d?: number;
13
+ h1b?: number;
14
+ h2d?: number;
15
+ h2b?: number;
16
+ h3d?: number;
17
+ h3b?: number;
18
+ pect1?: number;
19
+ nect1?: number;
20
+ pect2?: number;
21
+ nect2?: number;
22
+ pect3?: number;
23
+ nect3?: number;
24
+ v1?: number;
25
+ frq?: number;
26
+ pst?: string;
27
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "myenergi-api",
3
- "version": "2.6.0",
3
+ "version": "2.7.0",
4
4
  "description": "NodeJS implementation of MyEnergi API for controlling Zappi, Eddi and other MyEnergi products",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "dist/src/index.d.ts",