Skip to content

Commit edb3d7d

Browse files
committed
1.0.9 new settings page, device fixes, minor fixes
1 parent 24914c8 commit edb3d7d

22 files changed

+1021
-1857
lines changed

README.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
Added support for Mi Gateways child devices.
44

5-
## Version 1.0.8 - Supported devices:
5+
## Version 1.0.9 - Supported devices:
66

77
### Zigbee subdevices Xiaomi Gateway
88

@@ -124,6 +124,12 @@ Added support for Mi Gateways child devices.
124124

125125
## Version logs
126126

127+
### 1.0.9 (26.12.2019)
128+
129+
1. new settings page.
130+
2. fixed Mi Air Purifier (MJXFJ-300-G1) set sleep mode.
131+
3. minor fixes.
132+
127133
### 1.0.8 (1.12.2019)
128134

129135
1. minor fixes.

api.js

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,5 +15,19 @@ module.exports = [
1515
callback(error, null);
1616
});
1717
}
18+
},
19+
{
20+
method: "POST",
21+
path: "/testConnection",
22+
fn: async (args, callback) => {
23+
await Homey.app
24+
.testConnection(args)
25+
.then(res => {
26+
callback(null, res);
27+
})
28+
.catch(error => {
29+
callback(error, null);
30+
});
31+
}
1832
}
1933
];

app.js

Lines changed: 26 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ class MiHomey extends Homey.App {
3535
}
3636

3737
async generate(args) {
38-
return new Promise(function(resolve, reject) {
38+
return new Promise((resolve, reject) => {
3939
let key = generateKey();
4040

4141
miio
@@ -47,18 +47,38 @@ class MiHomey extends Homey.App {
4747
device
4848
.call("set_lumi_dpf_aes_key", [key])
4949
.then(result => {
50-
resolve({ status: "OK", key: key, mac: value.mac.replace(/\:/g, "").toLowerCase() });
50+
resolve({ status: "OK", mac: value.mac.replace(/\:/g, "").toLowerCase(), password: key });
5151
})
5252
.catch(error => {
53-
reject(new Error({ status: "ERROR", error: error }));
53+
reject(error);
5454
});
5555
})
5656
.catch(error => {
57-
reject(new Error({ status: "ERROR", error: error }));
57+
reject(error);
5858
});
5959
})
60-
.catch(err => {
61-
reject(new Error({ status: "ERROR", error: err }));
60+
.catch(error => {
61+
reject(error);
62+
});
63+
});
64+
}
65+
66+
async testConnection(args) {
67+
return new Promise((resolve, reject) => {
68+
miio
69+
.device({ address: args.body.ip, token: args.body.token })
70+
.then(device => {
71+
device
72+
.call("miIO.info", [])
73+
.then(result => {
74+
resolve({ status: "OK", result });
75+
})
76+
.catch(error => {
77+
reject(error);
78+
});
79+
})
80+
.catch(error => {
81+
reject(error);
6282
});
6383
});
6484
}

app.json

Lines changed: 36 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"id": "com.maxmudjon.mihomey",
3-
"version": "1.0.8",
3+
"version": "1.0.9",
44
"compatibility": ">=2.0.0",
55
"sdk": 2,
66
"name": {
@@ -2206,6 +2206,37 @@
22062206
"getable": true,
22072207
"setable": true
22082208
},
2209+
"air_purifier_t2017_mode": {
2210+
"type": "enum",
2211+
"title": {
2212+
"en": "Air Purifier Mode"
2213+
},
2214+
"desc": {
2215+
"en": "Air Purifier Mode"
2216+
},
2217+
"values": [
2218+
{
2219+
"id": "auto",
2220+
"title": {
2221+
"en": "Auto"
2222+
}
2223+
},
2224+
{
2225+
"id": "sleep",
2226+
"title": {
2227+
"en": "Sleep"
2228+
}
2229+
},
2230+
{
2231+
"id": "favorite",
2232+
"title": {
2233+
"en": "Favorite"
2234+
}
2235+
}
2236+
],
2237+
"getable": true,
2238+
"setable": true
2239+
},
22092240
"air_heater_mode": {
22102241
"type": "enum",
22112242
"title": {
@@ -4410,7 +4441,7 @@
44104441
{
44114442
"id": "reverted",
44124443
"type": "checkbox",
4413-
"value": true,
4444+
"value": false,
44144445
"label": {
44154446
"en": "Reverted"
44164447
}
@@ -8709,7 +8740,7 @@
87098740
"en": "Mi Air Purifier (MJXFJ-300-G1)"
87108741
},
87118742
"class": "sensor",
8712-
"capabilities": ["onoff", "dim", "air_purifier_mode", "onoff.ptc", "air_heater_mode", "measure_temperature", "measure_pm25"],
8743+
"capabilities": ["onoff", "dim", "air_purifier_t2017_mode", "onoff.ptc", "air_heater_mode", "measure_temperature", "measure_pm25", "measure_co2"],
87138744
"capabilitiesOptions": {
87148745
"onoff": {
87158746
"title": {
@@ -8737,11 +8768,11 @@
87378768
},
87388769
{
87398770
"id": "picker",
8740-
"capabilities": ["air_purifier_mode"]
8771+
"capabilities": ["air_purifier_t2017_mode"]
87418772
},
87428773
{
87438774
"id": "sensor",
8744-
"capabilities": ["measure_temperature", "measure_pm25"]
8775+
"capabilities": ["measure_temperature", "measure_pm25", "measure_co2"]
87458776
}
87468777
]
87478778
},

assets/bootstrap-vue.min.css

Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

assets/bootstrap-vue.min.js

Lines changed: 11 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

assets/bootstrap.min.css

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

assets/bulma.min.css

Lines changed: 0 additions & 1 deletion
This file was deleted.

assets/portal-vue.umd.min.js

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

assets/vue.min.js

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)