homebridge-econet-rheem 1.4.2 → 1.4.4
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.
- package/README.md +0 -1
- package/config.schema.json +1 -1
- package/dist/model/recoverySimulator.d.ts +1 -1
- package/dist/model/recoverySimulator.js +21 -12
- package/dist/model/recoverySimulator.js.map +1 -1
- package/dist/model/waterHeater.js +1 -1
- package/dist/model/waterHeater.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -11,7 +11,6 @@ This Homebridge plugin integrates Rheem EcoNet devices into Apple HomeKit.
|
|
|
11
11
|
|
|
12
12
|
## Limitations
|
|
13
13
|
|
|
14
|
-
* TODO Update this to discuss current water temp estimation
|
|
15
14
|
* Due to limitations in HomeKit, it is not possible to switch water heater modes, only enable/disable and adjust the desired temperature.
|
|
16
15
|
* Celcius should work but is untested
|
|
17
16
|
* *Let me know if you have successfully used ºC so I can remove this*
|
package/config.schema.json
CHANGED
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"description": "Rheem/Econet account password"
|
|
25
25
|
},
|
|
26
26
|
"wh_estimate": {
|
|
27
|
-
"title": "Estimate
|
|
27
|
+
"title": "Estimate Water Heater Temp (Beta)",
|
|
28
28
|
"type": "boolean",
|
|
29
29
|
"required": false,
|
|
30
30
|
"description": "Predict the current temp based on the set point, availability, and past recovery rates"
|
|
@@ -7,8 +7,8 @@ export declare class RecoverySimulator {
|
|
|
7
7
|
private recoveryRates;
|
|
8
8
|
private recoveryTimer;
|
|
9
9
|
private readonly serialNumber;
|
|
10
|
-
private setPoint;
|
|
11
10
|
private availability;
|
|
11
|
+
private setPoint;
|
|
12
12
|
private previousSetPoint;
|
|
13
13
|
private simulatedTemp;
|
|
14
14
|
private recoveryStartTime;
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import path from 'path';
|
|
2
2
|
import { fromCelsius, ONE_HOUR, safeGetItem, safeSetItem } from './utils.js';
|
|
3
|
-
const
|
|
4
|
-
const
|
|
3
|
+
const RECOVERY_FILE_PREFIX = 'whRecoveryRates_';
|
|
4
|
+
const DEFAULT_RECOVERY_RATE = 20; // in degrees Celsius per hour
|
|
5
|
+
const MINIMUM_RECOVERY_RATE = 5;
|
|
6
|
+
const RECOVERY_TIMER_INTERVAL = 120000; // 2 minutes
|
|
5
7
|
export class RecoverySimulator {
|
|
6
8
|
api;
|
|
7
9
|
onUpdate;
|
|
@@ -9,8 +11,8 @@ export class RecoverySimulator {
|
|
|
9
11
|
recoveryRates;
|
|
10
12
|
recoveryTimer = null;
|
|
11
13
|
serialNumber;
|
|
12
|
-
setPoint;
|
|
13
14
|
availability;
|
|
15
|
+
setPoint;
|
|
14
16
|
previousSetPoint;
|
|
15
17
|
simulatedTemp;
|
|
16
18
|
recoveryStartTime = null;
|
|
@@ -24,7 +26,9 @@ export class RecoverySimulator {
|
|
|
24
26
|
this.previousSetPoint = this.setPoint;
|
|
25
27
|
this.simulatedTemp = this.setPoint;
|
|
26
28
|
this.recoveryRatesFilePath = path.join(api.storagePath, 'recoveryRates.json');
|
|
27
|
-
|
|
29
|
+
const minRecoveryRate = fromCelsius(MINIMUM_RECOVERY_RATE, waterHeater.units);
|
|
30
|
+
const defaultRecoveryRate = fromCelsius(DEFAULT_RECOVERY_RATE, waterHeater.units);
|
|
31
|
+
this.recoveryRates = this._loadRecoveryRates()?.filter(x => x > minRecoveryRate) ?? [defaultRecoveryRate];
|
|
28
32
|
}
|
|
29
33
|
currentTemp(inputTemp) {
|
|
30
34
|
if (this.availability === 0 && !this.isRecovering) {
|
|
@@ -36,16 +40,17 @@ export class RecoverySimulator {
|
|
|
36
40
|
return this.recoveryTimer !== null;
|
|
37
41
|
}
|
|
38
42
|
handleUpdate(waterHeater) {
|
|
39
|
-
|
|
40
|
-
|
|
43
|
+
if (this.setPoint !== waterHeater.setPoint) {
|
|
44
|
+
this.previousSetPoint = this.setPoint;
|
|
45
|
+
this.setPoint = waterHeater.setPoint;
|
|
46
|
+
}
|
|
41
47
|
this.availability = waterHeater.availability;
|
|
42
|
-
this.previousSetPoint = waterHeater.setPoint;
|
|
43
48
|
if (this.availability === 0 && !waterHeater.isRunning) {
|
|
44
49
|
this._stopRecoveryTimer();
|
|
45
50
|
return;
|
|
46
51
|
}
|
|
47
52
|
if (waterHeater.isRunning && !this.isRecovering) {
|
|
48
|
-
if (this.availability === 0 || this.setPoint > previousSetPoint) {
|
|
53
|
+
if (this.availability === 0 || this.setPoint > this.previousSetPoint) {
|
|
49
54
|
this._startRecoveryTimer();
|
|
50
55
|
}
|
|
51
56
|
return;
|
|
@@ -83,8 +88,7 @@ export class RecoverySimulator {
|
|
|
83
88
|
const tempIncrease = this.recoveryRate * (RECOVERY_TIMER_INTERVAL / ONE_HOUR);
|
|
84
89
|
this.simulatedTemp = Math.min(this.simulatedTemp + tempIncrease, this.setPoint);
|
|
85
90
|
if (this.simulatedTemp === this.setPoint) {
|
|
86
|
-
this.
|
|
87
|
-
this._stopRecoveryTimer();
|
|
91
|
+
this._endRecovery();
|
|
88
92
|
}
|
|
89
93
|
this.onUpdate();
|
|
90
94
|
}
|
|
@@ -98,10 +102,15 @@ export class RecoverySimulator {
|
|
|
98
102
|
}
|
|
99
103
|
const timeElapsed = (Date.now() - this.recoveryStartTime) / ONE_HOUR;
|
|
100
104
|
const tempDifference = this.setPoint - this.recoveryStartTemp;
|
|
105
|
+
this.recoveryStartTime = null;
|
|
106
|
+
this.recoveryStartTemp = null;
|
|
101
107
|
if (timeElapsed <= 0) {
|
|
102
108
|
return;
|
|
103
109
|
}
|
|
104
110
|
const rate = tempDifference / timeElapsed;
|
|
111
|
+
if (rate < MINIMUM_RECOVERY_RATE) {
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
105
114
|
this.recoveryRates.push(rate);
|
|
106
115
|
if (this.recoveryRates.length > 3) {
|
|
107
116
|
this.recoveryRates.shift();
|
|
@@ -109,12 +118,12 @@ export class RecoverySimulator {
|
|
|
109
118
|
this._saveRecoveryRates();
|
|
110
119
|
}
|
|
111
120
|
_loadRecoveryRates() {
|
|
112
|
-
const key =
|
|
121
|
+
const key = `${RECOVERY_FILE_PREFIX}${this.serialNumber}`;
|
|
113
122
|
const stored = safeGetItem(this.recoveryRatesFilePath, key);
|
|
114
123
|
return stored ? JSON.parse(stored) : null;
|
|
115
124
|
}
|
|
116
125
|
_saveRecoveryRates() {
|
|
117
|
-
const key =
|
|
126
|
+
const key = `${RECOVERY_FILE_PREFIX}${this.serialNumber}`;
|
|
118
127
|
safeSetItem(this.recoveryRatesFilePath, key, JSON.stringify(this.recoveryRates));
|
|
119
128
|
}
|
|
120
129
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recoverySimulator.js","sourceRoot":"","sources":["../../src/model/recoverySimulator.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAG7E,MAAM,qBAAqB,GAAG,EAAE,CAAC,CAAC,8BAA8B;AAChE,MAAM,uBAAuB,GAAG,MAAM,CAAC,CAAC,YAAY;AAEpD,MAAM,OAAO,iBAAiB;IAoBT;IAEA;IApBF,qBAAqB,CAAS;IACvC,aAAa,CAAW;IAExB,aAAa,GAA0B,IAAI,CAAC;IAEnC,YAAY,CAAS;IAE9B,
|
|
1
|
+
{"version":3,"file":"recoverySimulator.js","sourceRoot":"","sources":["../../src/model/recoverySimulator.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAG7E,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;AAChD,MAAM,qBAAqB,GAAG,EAAE,CAAC,CAAC,8BAA8B;AAChE,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAChC,MAAM,uBAAuB,GAAG,MAAM,CAAC,CAAC,YAAY;AAEpD,MAAM,OAAO,iBAAiB;IAoBT;IAEA;IApBF,qBAAqB,CAAS;IACvC,aAAa,CAAW;IAExB,aAAa,GAA0B,IAAI,CAAC;IAEnC,YAAY,CAAS;IAE9B,YAAY,CAAS;IACrB,QAAQ,CAAS;IAEjB,gBAAgB,CAAS;IAEzB,aAAa,CAAS;IAEtB,iBAAiB,GAAkB,IAAI,CAAC;IACxC,iBAAiB,GAAkB,IAAI,CAAC;IAEhD,YACmB,GAAc,EAC/B,WAAwB,EACP,QAAoB;QAFpB,QAAG,GAAH,GAAG,CAAW;QAEd,aAAQ,GAAR,QAAQ,CAAY;QAGrC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,YAAY,CAAC;QAE7C,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,YAAY,CAAC;QAC7C,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC;QACrC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC;QAEtC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC;QAEnC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC;QAE9E,MAAM,eAAe,GAAG,WAAW,CAAC,qBAAqB,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;QAC9E,MAAM,mBAAmB,GAAG,WAAW,CAAC,qBAAqB,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;QAClF,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,kBAAkB,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,eAAe,CAAC,IAAK,CAAC,mBAAmB,CAAC,CAAC;IAC7G,CAAC;IAED,WAAW,CAAC,SAAiB;QAE3B,IAAI,IAAI,CAAC,YAAY,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YAClD,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QACjC,CAAC;QAED,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,IAAY,YAAY;QACtB,OAAO,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC;IACrC,CAAC;IAED,YAAY,CAAC,WAAwB;QAEnC,IAAI,IAAI,CAAC,QAAQ,KAAK,WAAW,CAAC,QAAQ,EAAE,CAAC;YAC3C,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC;YACtC,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC;QACvC,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,YAAY,CAAC;QAE7C,IAAI,IAAI,CAAC,YAAY,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;YACtD,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,OAAO;QACT,CAAC;QAED,IAAI,WAAW,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YAChD,IAAI,IAAI,CAAC,YAAY,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACrE,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC7B,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC7D,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC;YACnC,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;IACH,CAAC;IAED,IAAY,YAAY;QACtB,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;IACnF,CAAC;IAEO,mBAAmB;QAEzB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACpC,CAAC;QAED,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACpC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,aAAa,CAAC;QAE5C,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;YACpC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC9B,CAAC,EAAE,uBAAuB,CAAC,CAAC;IAC9B,CAAC;IAEO,kBAAkB;QACxB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAClC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;IACH,CAAC;IAEO,oBAAoB;QAE1B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,uBAAuB,GAAG,QAAQ,CAAC,CAAC;QAC9E,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEhF,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;YACzC,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,CAAC;QAED,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;IAEO,YAAY;QAClB,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAEO,mBAAmB;QAEzB,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvD,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,QAAQ,CAAC;QACrE,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAE9D,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAE9B,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;YACrB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,cAAc,GAAG,WAAW,CAAC;QAC1C,IAAI,IAAI,GAAG,qBAAqB,EAAE,CAAC;YACjC,OAAO;QACT,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE9B,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC7B,CAAC;QAED,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAEO,kBAAkB;QACxB,MAAM,GAAG,GAAG,GAAG,oBAAoB,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1D,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC;QAC5D,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5C,CAAC;IAEO,kBAAkB;QACxB,MAAM,GAAG,GAAG,GAAG,oBAAoB,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1D,WAAW,CAAC,IAAI,CAAC,qBAAqB,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IACnF,CAAC;CACF"}
|
|
@@ -50,7 +50,7 @@ export class WaterHeater extends Equipment {
|
|
|
50
50
|
if (!inputTemp) {
|
|
51
51
|
return this.set_point;
|
|
52
52
|
}
|
|
53
|
-
return this.recoverySimulator
|
|
53
|
+
return this.recoverySimulator?.currentTemp(inputTemp) || this.set_point;
|
|
54
54
|
}
|
|
55
55
|
get setPoint() {
|
|
56
56
|
return this.set_point;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"waterHeater.js","sourceRoot":"","sources":["../../src/model/waterHeater.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,MAAM,OAAO,WAAY,SAAQ,SAAS;IAEhC,OAAO,GAAY,KAAK,CAAC;IACzB,OAAO,GAAY,KAAK,CAAC;IAEzB,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAEtC,WAAW,GAAG,GAAG,CAAC;IAClB,WAAW,GAAG,GAAG,CAAC;IAClB,SAAS,GAAG,CAAC,CAAC;IAEd,iBAAiB,GAAkB,IAAI,CAAC;IAExC,iBAAiB,GAA6B,IAAI,CAAC;IAE3D,8DAA8D;IAC9D,YAAY,GAAc,EAAE,UAAe;QACzC,KAAK,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,YAAY;QAEd,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAEpC,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACjB,OAAO,GAAG,CAAC;QACb,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACpD,OAAO,CAAC,CAAC;QACX,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC1D,OAAO,GAAG,CAAC;QACb,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAED,WAAW,CAAC,SAAyB;QAEnC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;QAED,OAAO,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"waterHeater.js","sourceRoot":"","sources":["../../src/model/waterHeater.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"displayName": "Homebridge Econet Rheem",
|
|
5
5
|
"description": "Homebridge plugin based on pyeconet for control of Rheem water heaters",
|
|
6
6
|
"type": "module",
|
|
7
|
-
"version": "1.4.
|
|
7
|
+
"version": "1.4.4",
|
|
8
8
|
"homepage": "https://github.com/mpatfield/homebridge-econet-rheem#readme",
|
|
9
9
|
"repository": {
|
|
10
10
|
"type": "git",
|