[miio] backport recent changes from 3.0 (#8855)

* [miio] delay refresh to avoid devices not ready yet (#8838)

* [miio] delay refresh to avoid devices not ready yet

Delay refresh after command is send as some devices are not ready yet
with the execution and will report wrong status.
This is confusing to the users.

Related forum topic:
https://community.openhab.org/t/xiaomi-mi-air-purifier-xiaomi-mi-io/34840/300

* [miio] remove change from PR
* [miio] Add temperature value to chuangmi.plug.v1 (#8832)

Based on: https://github.com/marcelrv/openhab2/pull/12

* [miio] add new country server and improve readme (#8816)
* [miio] add new country server and improve readme
* [miio] apply spotless
* [miio] Allow for custom refresh commands (#8796)
* [miio] Allow for custom refresh commands

Signed-off-by: Marcel Verpaalen <marcel@verpaalen.com>
This commit is contained in:
Marcel 2020-10-24 19:05:29 +02:00 committed by GitHub
parent 4b22109820
commit f241c66de3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
53 changed files with 2593 additions and 1286 deletions

View File

@ -50,7 +50,8 @@ Note. The Xiaomi devices change the token when inclusion is done. Hence if you g
## Binding Configuration ## Binding Configuration
No binding configuration is required. However to enable cloud functionality enter your Xiaomi username, password and server(s). No binding configuration is required. However to enable cloud functionality enter your Xiaomi username, password and server(s).
After succesfull Xiaomi cloud login, the binding will use the connection to retrieve the required device tokens from the cloud. The list of the known countries and related severs is [here](#Country-Servers)
After successful Xiaomi cloud login, the binding will use the connection to retrieve the required device tokens from the cloud.
For Xiaomi vacuums the map can be visualized in openHAB using the cloud connection. For Xiaomi vacuums the map can be visualized in openHAB using the cloud connection.
![Binding Config](doc/miioBindingConfig.jpg) ![Binding Config](doc/miioBindingConfig.jpg)
@ -197,3 +198,258 @@ Additionally depending on the capabilities of your robot vacuum other channels m
!!!itemFileExamples !!!itemFileExamples
###(<a name="Country-Servers">Country Servers</a>)
Known country Servers: cn, de, i2, ru, sg, us
Mapping of countries in mihome app to server
| Country | Country Code | Server |
|--------------------------|--------------|--------|
| Afghanistan | AF | sg |
| Albania | AL | de |
| Algeria | DZ | sg |
| American Samoa | AS | sg |
| Andorra | AD | de |
| Angola | AO | sg |
| Anguilla | AI | us |
| Antarctica | AQ | sg |
| Antigua and Barbuda | AG | us |
| Argentina | AR | us |
| Armenia | AM | sg |
| Aruba | AW | us |
| Ascension Island | AC | sg |
| Australia | AU | sg |
| Austria | AT | de |
| Azerbaijan | AZ | sg |
| Bahamas | BS | us |
| Bahrain | BH | sg |
| Bangladesh | BD | sg |
| Barbados | BB | us |
| Belarus | BY | de |
| Belgium | BE | de |
| Belize | BZ | us |
| Benin | BJ | sg |
| Bermuda | BM | us |
| Bhutan | BT | sg |
| Bolivia | BO | us |
| Bosnia and Herzegovina | BA | de |
| Botswana | BW | sg |
| Bouvet Island | BV | sg |
| Brazil | BR | us |
| British Indian Ocean Territory | IO | sg |
| British Virgin Islands | VG | us |
| Brunei | BN | sg |
| Bulgaria | BG | de |
| Burkina Faso | BF | sg |
| Burundi | BI | sg |
| Cambodia | KH | sg |
| Cameroon | CM | sg |
| Canada | CA | us |
| Canary Islands | IC | sg |
| Cape Verde | CV | sg |
| Cayman Islands | KY | us |
| Central African Republic | CF | sg |
| Ceuta and Melilla | EA | de |
| Chad | TD | sg |
| Chile | CL | us |
| Chinese mainland | CN | cn |
| Christmas Island | CX | sg |
| Cocos Islands | CC | sg |
| Colombia | CO | us |
| Comoros | KM | sg |
| Congo - Brazzaville | CG | sg |
| Congo - Kinshasa | CD | sg |
| Cook Islands | CK | sg |
| Costa Rica | CR | us |
| Croatia | HR | de |
| Curaçao | CW | us |
| Cyprus | CY | de |
| Czechia | CZ | de |
| Côte d'Ivoire | CI | sg |
| Denmark | DK | de |
| Diego Garcia | DG | sg |
| Djibouti | DJ | sg |
| Dominica | DM | us |
| Dominican Republic | DO | us |
| Dutch Caribbean | BQ | us |
| Ecuador | EC | us |
| Egypt | EG | sg |
| El Salvador | SV | us |
| Equatorial Guinea | GQ | sg |
| Eritrea | ER | sg |
| Estonia | EE | de |
| Ethiopia | ET | sg |
| Falkland Islands | FK | us |
| Faroe Islands | FO | de |
| Fiji | FJ | sg |
| Finland | FI | de |
| France | FR | de |
| French Guiana | GF | de |
| French Southern Territories | TF | sg |
| French polynesia | PF | sg |
| Gabon | GA | sg |
| Gambia | GM | sg |
| Georgia | GE | sg |
| Germany | DE | de |
| Ghana | GH | sg |
| Gibraltar | GI | de |
| Greece | GR | de |
| Greenland | GL | us |
| Grenada | GD | us |
| Guadeloupe | GP | us |
| Guam | GU | sg |
| Guatemala | GT | us |
| Guernsey | GG | de |
| Guinea | GN | sg |
| Guinea-Bissau | GW | sg |
| Guyana | GY | us |
| Haiti | HT | us |
| Honduras | HN | us |
| Hong Kong | HK | sg |
| Hungary | HU | de |
| Iceland | IS | de |
| India | IN | i2 |
| Indonesia | ID | sg |
| Iraq | IQ | sg |
| Ireland | IE | de |
| Isle of Man | IM | de |
| Israel | IL | sg |
| Italy | IT | de |
| Jamaica | JM | us |
| Japan | JP | sg |
| Jersey | JE | de |
| Jordan | JO | sg |
| Kazakhstan | KZ | sg |
| Kenya | KE | sg |
| Kiribati | KI | sg |
| Kosovo | XK | de |
| Kuwait | KW | sg |
| Kyrgyzstan | KG | sg |
| Laos | LA | sg |
| Latvia | LV | de |
| Lebanon | LB | sg |
| Lesotho | LS | sg |
| Liberia | LR | sg |
| Libya | LY | sg |
| Liechtenstein | LI | de |
| Lithuania | LT | de |
| Luxembourg | LU | de |
| Macao | MO | sg |
| Macedonia | MK | de |
| Madagascar | MG | sg |
| Malawi | MW | sg |
| Malaysia | MY | sg |
| Maldives | MV | sg |
| Mali | ML | sg |
| Malta | MT | de |
| Marshall islands | MH | sg |
| Martinique | MQ | us |
| Mauritania | MR | sg |
| Mauritius | MU | sg |
| Mayotte | YT | sg |
| Mexico | MX | us |
| Micronesia | FM | sg |
| Moldova | MD | de |
| Monaco | MC | de |
| Mongolia | MN | sg |
| Montenegro | ME | de |
| Montserrat | MS | us |
| Morocco | MA | sg |
| Mozambique | MZ | sg |
| Myanmar (Burma) | MM | sg |
| Namibia | NA | sg |
| Nauru | NR | sg |
| Nepal | NP | sg |
| Netherlands | NL | de |
| New Caledonia | NC | sg |
| New Zealand | NZ | sg |
| Nicaragua | NI | us |
| Niger | NE | sg |
| Nigeria | NG | sg |
| Niue | NU | sg |
| Norfolk Island | NF | sg |
| Northern Mariana Islands | MP | sg |
| Norway | NO | de |
| Oman | OM | sg |
| Pakistan | PK | sg |
| Palau | PW | sg |
| Palestinian Territories | PS | sg |
| Panama | PA | us |
| Papua New Guinea | PG | sg |
| Paraguay | PY | us |
| Peru | PE | us |
| Philippines | PH | sg |
| Pitcairn Islands | PN | sg |
| Poland | PL | de |
| Portugal | PT | de |
| Puerto Rico | PR | us |
| Qatar | QA | sg |
| Romania | RO | de |
| Russia | RU | ru |
| Rwanda | RW | sg |
| Réunion | RE | sg |
| Saint Barthélemy | BL | us |
| Saint Helena | SH | sg |
| Saint Kitts and Nevis | KN | us |
| Saint Lucia | LC | us |
| Saint Martin | MF | de |
| Saint Pierre and Miquelon | PM | us |
| Saint Vincent and The Grenadines | VC | us |
| Samoa | WS | sg |
| San Marino | SM | de |
| Saudi Arabia | SA | sg |
| Senegal | SN | sg |
| Serbia | RS | de |
| Seychelles | SC | sg |
| Sierra Leone | SL | sg |
| Singapore | SG | sg |
| Slovakia | SK | de |
| Slovenia | SI | de |
| Solomon Islands | SB | sg |
| Somalia | SO | sg |
| South Africa | ZA | sg |
| South Georgia and South Sandwich Islands | GS | us |
| South Korea | KR | sg |
| South Sudan | SS | sg |
| Spain | ES | de |
| Sri Lanka | LK | sg |
| Suriname | SR | us |
| Svalbard and Jan Mayen | SJ | de |
| Swaziland | SZ | sg |
| Sweden | SE | de |
| Switzerland | CH | de |
| São Tomé and Príncipe | ST | sg |
| Taiwan | TW | sg |
| Tajikistan | TJ | sg |
| Tanzania | TZ | sg |
| Thailand | TH | sg |
| Timor-Leste | TL | sg |
| Togo | TG | sg |
| Tokelau | TK | sg |
| Tonga | TO | sg |
| Trinidad and Tobago | TT | us |
| Tristan da Cunha | TA | sg |
| Tunisia | TN | sg |
| Turkey | TR | sg |
| Turkmenistan | TM | sg |
| Turks and Caicos Islands | TC | us |
| Tuvalu | TV | sg |
| U.S. Virgin Islands | VI | us |
| Uganda | UG | sg |
| Ukraine | UA | de |
| United Arab Emirates | AE | sg |
| United Kingdom | GB | de |
| United States | US | us |
| United States Minor Outlying Islands | UM | us |
| Uruguay | UY | us |
| Uzbekistan | UZ | sg |
| Vanuatu | VU | sg |
| Vatican | VA | de |
| Vietnam | VN | sg |
| Wallis and Futuna | WF | sg |
| Western Sahara | EH | sg |
| Yemen | YE | sg |
| Zambia | ZM | sg |
| Zimbabwe | ZW | sg |
| Åland Islands | AX | de |

View File

@ -50,7 +50,8 @@ Note. The Xiaomi devices change the token when inclusion is done. Hence if you g
## Binding Configuration ## Binding Configuration
No binding configuration is required. However to enable cloud functionality enter your Xiaomi username, password and server(s). No binding configuration is required. However to enable cloud functionality enter your Xiaomi username, password and server(s).
After succesfull Xiaomi cloud login, the binding will use the connection to retrieve the required device tokens from the cloud. The list of the known countries and related severs is [here](#Country-Servers)
After successful Xiaomi cloud login, the binding will use the connection to retrieve the required device tokens from the cloud.
For Xiaomi vacuums the map can be visualized in openHAB using the cloud connection. For Xiaomi vacuums the map can be visualized in openHAB using the cloud connection.
![Binding Config](doc/miioBindingConfig.jpg) ![Binding Config](doc/miioBindingConfig.jpg)
@ -157,6 +158,13 @@ or in case of unknown models include the model information e.g.:
| Xiaomi Philips ZhiRui bedside lamp | miio:basic | [philips.light.moonlight](#philips-light-moonlight) | Yes | | | Xiaomi Philips ZhiRui bedside lamp | miio:basic | [philips.light.moonlight](#philips-light-moonlight) | Yes | |
| Philips Ceiling Light | miio:basic | [philips.light.bceiling1](#philips-light-bceiling1) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses | | Philips Ceiling Light | miio:basic | [philips.light.bceiling1](#philips-light-bceiling1) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
| Philips Ceiling Light | miio:basic | [philips.light.bceiling2](#philips-light-bceiling2) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses | | Philips Ceiling Light | miio:basic | [philips.light.bceiling2](#philips-light-bceiling2) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
<<<<<<< miio-backport
=======
| Philips Light | miio:basic | [philips.light.cbulb](#philips-light-cbulb) | Yes | |
| Philips Light | miio:basic | [philips.light.cbulbs](#philips-light-cbulbs) | Yes | |
| Philips Light | miio:basic | [philips.light.dcolor](#philips-light-dcolor) | Yes | |
| Philips Light | miio:basic | [philips.light.rwread](#philips-light-rwread) | Yes | |
>>>>>>> ed6d68f [miio] add new country server and improve readme (#8816)
| Philips Light | miio:basic | [philips.light.lnblight1](#philips-light-lnblight1) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses | | Philips Light | miio:basic | [philips.light.lnblight1](#philips-light-lnblight1) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
| Philips Light | miio:basic | [philips.light.lnblight2](#philips-light-lnblight2) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses | | Philips Light | miio:basic | [philips.light.lnblight2](#philips-light-lnblight2) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
| Philips Light | miio:basic | [philips.light.lnlrlight](#philips-light-lnlrlight) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses | | Philips Light | miio:basic | [philips.light.lnlrlight](#philips-light-lnlrlight) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
@ -1324,6 +1332,58 @@ e.g. `smarthome:send actionCommand 'upd_timer["1498595904821", "on"]'` would ena
| delayoff | Switch | Delay Off | | | delayoff | Switch | Delay Off | |
| mb | Switch | MiBand | | | mb | Switch | MiBand | |
<<<<<<< miio-backport
=======
### Philips Light (<a name="philips-light-cbulb">philips.light.cbulb</a>) Channels
| Channel | Type | Description | Comment |
|------------------|---------|-------------------------------------|------------|
| power | Switch | Power | |
| brightness | Dimmer | Brightness | |
| cct | Dimmer | Correlated Color Temperature | |
| scene | Number | Scene | |
| cid | Color | Color | |
| switchscene | Switch | Switch Scene | |
| switch_en | Switch | Switch Enabled | |
| delayoff | Switch | Delay Off | |
### Philips Light (<a name="philips-light-cbulbs">philips.light.cbulbs</a>) Channels
| Channel | Type | Description | Comment |
|------------------|---------|-------------------------------------|------------|
| power | Switch | Power | |
| brightness | Dimmer | Brightness | |
| cct | Dimmer | Correlated Color Temperature | |
| scene | Number | Scene | |
| cid | Color | Color | |
| switchscene | Switch | Switch Scene | |
| switch_en | Switch | Switch Enabled | |
| delayoff | Switch | Delay Off | |
### Philips Light (<a name="philips-light-dcolor">philips.light.dcolor</a>) Channels
| Channel | Type | Description | Comment |
|------------------|---------|-------------------------------------|------------|
| power | Switch | Power | |
| brightness | Dimmer | Brightness | |
| cct | Dimmer | Correlated Color Temperature | |
| scene | Number | Scene | |
| cid | Color | Color | |
| switchscene | Switch | Switch Scene | |
| switch_en | Switch | Switch Enabled | |
| delayoff | Switch | Delay Off | |
### Philips Light (<a name="philips-light-rwread">philips.light.rwread</a>) Channels
| Channel | Type | Description | Comment |
|------------------|---------|-------------------------------------|------------|
| power | Switch | Power | |
| brightness | Dimmer | Brightness | |
| scene | Number | Scene | |
| flm | Number | Follow Me | |
| dv | Number | DV | |
>>>>>>> ed6d68f [miio] add new country server and improve readme (#8816)
### Philips Light (<a name="philips-light-lnblight1">philips.light.lnblight1</a>) Channels ### Philips Light (<a name="philips-light-lnblight1">philips.light.lnblight1</a>) Channels
| Channel | Type | Description | Comment | | Channel | Type | Description | Comment |
@ -1652,6 +1712,7 @@ e.g. `smarthome:send actionCommand 'upd_timer["1498595904821", "on"]'` would ena
|------------------|---------|-------------------------------------|------------| |------------------|---------|-------------------------------------|------------|
| power | Switch | Power | | | power | Switch | Power | |
| usb | Switch | USB | | | usb | Switch | USB | |
| temperature | Number | Temperature | |
### Mi Power-plug v2 (<a name="chuangmi-plug-v2">chuangmi.plug.v2</a>) Channels ### Mi Power-plug v2 (<a name="chuangmi-plug-v2">chuangmi.plug.v2</a>) Channels
@ -4123,6 +4184,70 @@ Switch delayoff "Delay Off" (G_light) {channel="miio:basic:light:delayoff"}
Switch mb "MiBand" (G_light) {channel="miio:basic:light:mb"} Switch mb "MiBand" (G_light) {channel="miio:basic:light:mb"}
``` ```
<<<<<<< miio-backport
=======
### Philips Light (philips.light.cbulb) item file lines
note: Autogenerated example. Replace the id (light) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
```java
Group G_light "Philips Light" <status>
Switch power "Power" (G_light) {channel="miio:basic:light:power"}
Dimmer brightness "Brightness" (G_light) {channel="miio:basic:light:brightness"}
Dimmer cct "Correlated Color Temperature" (G_light) {channel="miio:basic:light:cct"}
Number scene "Scene" (G_light) {channel="miio:basic:light:scene"}
Color cid "Color" (G_light) {channel="miio:basic:light:cid"}
Switch switchscene "Switch Scene" (G_light) {channel="miio:basic:light:switchscene"}
Switch switch_en "Switch Enabled" (G_light) {channel="miio:basic:light:switch_en"}
Switch delayoff "Delay Off" (G_light) {channel="miio:basic:light:delayoff"}
```
### Philips Light (philips.light.cbulbs) item file lines
note: Autogenerated example. Replace the id (light) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
```java
Group G_light "Philips Light" <status>
Switch power "Power" (G_light) {channel="miio:basic:light:power"}
Dimmer brightness "Brightness" (G_light) {channel="miio:basic:light:brightness"}
Dimmer cct "Correlated Color Temperature" (G_light) {channel="miio:basic:light:cct"}
Number scene "Scene" (G_light) {channel="miio:basic:light:scene"}
Color cid "Color" (G_light) {channel="miio:basic:light:cid"}
Switch switchscene "Switch Scene" (G_light) {channel="miio:basic:light:switchscene"}
Switch switch_en "Switch Enabled" (G_light) {channel="miio:basic:light:switch_en"}
Switch delayoff "Delay Off" (G_light) {channel="miio:basic:light:delayoff"}
```
### Philips Light (philips.light.dcolor) item file lines
note: Autogenerated example. Replace the id (light) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
```java
Group G_light "Philips Light" <status>
Switch power "Power" (G_light) {channel="miio:basic:light:power"}
Dimmer brightness "Brightness" (G_light) {channel="miio:basic:light:brightness"}
Dimmer cct "Correlated Color Temperature" (G_light) {channel="miio:basic:light:cct"}
Number scene "Scene" (G_light) {channel="miio:basic:light:scene"}
Color cid "Color" (G_light) {channel="miio:basic:light:cid"}
Switch switchscene "Switch Scene" (G_light) {channel="miio:basic:light:switchscene"}
Switch switch_en "Switch Enabled" (G_light) {channel="miio:basic:light:switch_en"}
Switch delayoff "Delay Off" (G_light) {channel="miio:basic:light:delayoff"}
```
### Philips Light (philips.light.rwread) item file lines
note: Autogenerated example. Replace the id (light) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
```java
Group G_light "Philips Light" <status>
Switch power "Power" (G_light) {channel="miio:basic:light:power"}
Dimmer brightness "Brightness" (G_light) {channel="miio:basic:light:brightness"}
Number scene "Scene" (G_light) {channel="miio:basic:light:scene"}
Number flm "Follow Me" (G_light) {channel="miio:basic:light:flm"}
Number dv "DV" (G_light) {channel="miio:basic:light:dv"}
```
>>>>>>> ed6d68f [miio] add new country server and improve readme (#8816)
### Philips Light (philips.light.lnblight1) item file lines ### Philips Light (philips.light.lnblight1) item file lines
note: Autogenerated example. Replace the id (light) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered. note: Autogenerated example. Replace the id (light) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
@ -4522,6 +4647,7 @@ note: Autogenerated example. Replace the id (plug) in the channel with your own.
Group G_plug "Mi Power-plug v1" <status> Group G_plug "Mi Power-plug v1" <status>
Switch power "Power" (G_plug) {channel="miio:basic:plug:power"} Switch power "Power" (G_plug) {channel="miio:basic:plug:power"}
Switch usb "USB" (G_plug) {channel="miio:basic:plug:usb"} Switch usb "USB" (G_plug) {channel="miio:basic:plug:usb"}
Number temperature "Temperature" (G_plug) {channel="miio:basic:plug:temperature"}
``` ```
### Mi Power-plug v2 (chuangmi.plug.v2) item file lines ### Mi Power-plug v2 (chuangmi.plug.v2) item file lines
@ -6073,3 +6199,258 @@ Number nightlightBrightness "Nightlight Brightness" (G_light) {channel="miio:bas
``` ```
###(<a name="Country-Servers">Country Servers</a>)
Known country Servers: cn, de, i2, ru, sg, us
Mapping of countries in mihome app to server
| Country | Country Code | Server |
|--------------------------|--------------|--------|
| Afghanistan | AF | sg |
| Albania | AL | de |
| Algeria | DZ | sg |
| American Samoa | AS | sg |
| Andorra | AD | de |
| Angola | AO | sg |
| Anguilla | AI | us |
| Antarctica | AQ | sg |
| Antigua and Barbuda | AG | us |
| Argentina | AR | us |
| Armenia | AM | sg |
| Aruba | AW | us |
| Ascension Island | AC | sg |
| Australia | AU | sg |
| Austria | AT | de |
| Azerbaijan | AZ | sg |
| Bahamas | BS | us |
| Bahrain | BH | sg |
| Bangladesh | BD | sg |
| Barbados | BB | us |
| Belarus | BY | de |
| Belgium | BE | de |
| Belize | BZ | us |
| Benin | BJ | sg |
| Bermuda | BM | us |
| Bhutan | BT | sg |
| Bolivia | BO | us |
| Bosnia and Herzegovina | BA | de |
| Botswana | BW | sg |
| Bouvet Island | BV | sg |
| Brazil | BR | us |
| British Indian Ocean Territory | IO | sg |
| British Virgin Islands | VG | us |
| Brunei | BN | sg |
| Bulgaria | BG | de |
| Burkina Faso | BF | sg |
| Burundi | BI | sg |
| Cambodia | KH | sg |
| Cameroon | CM | sg |
| Canada | CA | us |
| Canary Islands | IC | sg |
| Cape Verde | CV | sg |
| Cayman Islands | KY | us |
| Central African Republic | CF | sg |
| Ceuta and Melilla | EA | de |
| Chad | TD | sg |
| Chile | CL | us |
| Chinese mainland | CN | cn |
| Christmas Island | CX | sg |
| Cocos Islands | CC | sg |
| Colombia | CO | us |
| Comoros | KM | sg |
| Congo - Brazzaville | CG | sg |
| Congo - Kinshasa | CD | sg |
| Cook Islands | CK | sg |
| Costa Rica | CR | us |
| Croatia | HR | de |
| Curaçao | CW | us |
| Cyprus | CY | de |
| Czechia | CZ | de |
| Côte d'Ivoire | CI | sg |
| Denmark | DK | de |
| Diego Garcia | DG | sg |
| Djibouti | DJ | sg |
| Dominica | DM | us |
| Dominican Republic | DO | us |
| Dutch Caribbean | BQ | us |
| Ecuador | EC | us |
| Egypt | EG | sg |
| El Salvador | SV | us |
| Equatorial Guinea | GQ | sg |
| Eritrea | ER | sg |
| Estonia | EE | de |
| Ethiopia | ET | sg |
| Falkland Islands | FK | us |
| Faroe Islands | FO | de |
| Fiji | FJ | sg |
| Finland | FI | de |
| France | FR | de |
| French Guiana | GF | de |
| French Southern Territories | TF | sg |
| French polynesia | PF | sg |
| Gabon | GA | sg |
| Gambia | GM | sg |
| Georgia | GE | sg |
| Germany | DE | de |
| Ghana | GH | sg |
| Gibraltar | GI | de |
| Greece | GR | de |
| Greenland | GL | us |
| Grenada | GD | us |
| Guadeloupe | GP | us |
| Guam | GU | sg |
| Guatemala | GT | us |
| Guernsey | GG | de |
| Guinea | GN | sg |
| Guinea-Bissau | GW | sg |
| Guyana | GY | us |
| Haiti | HT | us |
| Honduras | HN | us |
| Hong Kong | HK | sg |
| Hungary | HU | de |
| Iceland | IS | de |
| India | IN | i2 |
| Indonesia | ID | sg |
| Iraq | IQ | sg |
| Ireland | IE | de |
| Isle of Man | IM | de |
| Israel | IL | sg |
| Italy | IT | de |
| Jamaica | JM | us |
| Japan | JP | sg |
| Jersey | JE | de |
| Jordan | JO | sg |
| Kazakhstan | KZ | sg |
| Kenya | KE | sg |
| Kiribati | KI | sg |
| Kosovo | XK | de |
| Kuwait | KW | sg |
| Kyrgyzstan | KG | sg |
| Laos | LA | sg |
| Latvia | LV | de |
| Lebanon | LB | sg |
| Lesotho | LS | sg |
| Liberia | LR | sg |
| Libya | LY | sg |
| Liechtenstein | LI | de |
| Lithuania | LT | de |
| Luxembourg | LU | de |
| Macao | MO | sg |
| Macedonia | MK | de |
| Madagascar | MG | sg |
| Malawi | MW | sg |
| Malaysia | MY | sg |
| Maldives | MV | sg |
| Mali | ML | sg |
| Malta | MT | de |
| Marshall islands | MH | sg |
| Martinique | MQ | us |
| Mauritania | MR | sg |
| Mauritius | MU | sg |
| Mayotte | YT | sg |
| Mexico | MX | us |
| Micronesia | FM | sg |
| Moldova | MD | de |
| Monaco | MC | de |
| Mongolia | MN | sg |
| Montenegro | ME | de |
| Montserrat | MS | us |
| Morocco | MA | sg |
| Mozambique | MZ | sg |
| Myanmar (Burma) | MM | sg |
| Namibia | NA | sg |
| Nauru | NR | sg |
| Nepal | NP | sg |
| Netherlands | NL | de |
| New Caledonia | NC | sg |
| New Zealand | NZ | sg |
| Nicaragua | NI | us |
| Niger | NE | sg |
| Nigeria | NG | sg |
| Niue | NU | sg |
| Norfolk Island | NF | sg |
| Northern Mariana Islands | MP | sg |
| Norway | NO | de |
| Oman | OM | sg |
| Pakistan | PK | sg |
| Palau | PW | sg |
| Palestinian Territories | PS | sg |
| Panama | PA | us |
| Papua New Guinea | PG | sg |
| Paraguay | PY | us |
| Peru | PE | us |
| Philippines | PH | sg |
| Pitcairn Islands | PN | sg |
| Poland | PL | de |
| Portugal | PT | de |
| Puerto Rico | PR | us |
| Qatar | QA | sg |
| Romania | RO | de |
| Russia | RU | ru |
| Rwanda | RW | sg |
| Réunion | RE | sg |
| Saint Barthélemy | BL | us |
| Saint Helena | SH | sg |
| Saint Kitts and Nevis | KN | us |
| Saint Lucia | LC | us |
| Saint Martin | MF | de |
| Saint Pierre and Miquelon | PM | us |
| Saint Vincent and The Grenadines | VC | us |
| Samoa | WS | sg |
| San Marino | SM | de |
| Saudi Arabia | SA | sg |
| Senegal | SN | sg |
| Serbia | RS | de |
| Seychelles | SC | sg |
| Sierra Leone | SL | sg |
| Singapore | SG | sg |
| Slovakia | SK | de |
| Slovenia | SI | de |
| Solomon Islands | SB | sg |
| Somalia | SO | sg |
| South Africa | ZA | sg |
| South Georgia and South Sandwich Islands | GS | us |
| South Korea | KR | sg |
| South Sudan | SS | sg |
| Spain | ES | de |
| Sri Lanka | LK | sg |
| Suriname | SR | us |
| Svalbard and Jan Mayen | SJ | de |
| Swaziland | SZ | sg |
| Sweden | SE | de |
| Switzerland | CH | de |
| São Tomé and Príncipe | ST | sg |
| Taiwan | TW | sg |
| Tajikistan | TJ | sg |
| Tanzania | TZ | sg |
| Thailand | TH | sg |
| Timor-Leste | TL | sg |
| Togo | TG | sg |
| Tokelau | TK | sg |
| Tonga | TO | sg |
| Trinidad and Tobago | TT | us |
| Tristan da Cunha | TA | sg |
| Tunisia | TN | sg |
| Turkey | TR | sg |
| Turkmenistan | TM | sg |
| Turks and Caicos Islands | TC | us |
| Tuvalu | TV | sg |
| U.S. Virgin Islands | VI | us |
| Uganda | UG | sg |
| Ukraine | UA | de |
| United Arab Emirates | AE | sg |
| United Kingdom | GB | de |
| United States | US | us |
| United States Minor Outlying Islands | UM | us |
| Uruguay | UY | us |
| Uzbekistan | UZ | sg |
| Vanuatu | VU | sg |
| Vatican | VA | de |
| Vietnam | VN | sg |
| Wallis and Futuna | WF | sg |
| Western Sahara | EH | sg |
| Yemen | YE | sg |
| Zambia | ZM | sg |
| Zimbabwe | ZW | sg |
| Åland Islands | AX | de |

View File

@ -88,7 +88,11 @@ public enum MiIoDevices {
HUMIDIFIER("zhimi.humidifier.v1", "Mi Humdifier", THING_TYPE_BASIC), HUMIDIFIER("zhimi.humidifier.v1", "Mi Humdifier", THING_TYPE_BASIC),
LUMI_C11("lumi.ctrl_neutral1.v1", "Light Control (Wall Switch)", THING_TYPE_UNSUPPORTED), LUMI_C11("lumi.ctrl_neutral1.v1", "Light Control (Wall Switch)", THING_TYPE_UNSUPPORTED),
LUMI_C12("lumi.ctrl_neutral2.v1", "Light Control (Wall Switch)", THING_TYPE_UNSUPPORTED), LUMI_C12("lumi.ctrl_neutral2.v1", "Light Control (Wall Switch)", THING_TYPE_UNSUPPORTED),
PHILIPS_R1("philips.light.sread1", "Xiaomi Philips Eyecare Smart Lamp 2", THING_TYPE_BASIC), MRBOND_AIRER_M1PRO("mrbond.airer.m1pro", "Mr Bond M1 Pro Smart Clothes Dryer", THING_TYPE_BASIC),
MRBOND_AIRER_M1S("mrbond.airer.m1s", "Mr Bond M1 Smart Clothes Dryer", THING_TYPE_BASIC),
MRBOND_AIRER_M1SUPER("mrbond.airer.m1super", "Mr Bond M1 Super Smart Clothes Dryer", THING_TYPE_BASIC),
PHILIPS_SR1("philips.light.sread1", "Xiaomi Philips Eyecare Smart Lamp 2", THING_TYPE_BASIC),
PHILIPS_SR2("philips.light.sread2", "Xiaomi Philips Eyecare Smart Lamp 2", THING_TYPE_BASIC),
PHILIPS_C("philips.light.ceiling", "Xiaomi Philips LED Ceiling Lamp", THING_TYPE_BASIC), PHILIPS_C("philips.light.ceiling", "Xiaomi Philips LED Ceiling Lamp", THING_TYPE_BASIC),
PHILIPS_C2("philips.light.zyceiling", "Xiaomi Philips LED Ceiling Lamp", THING_TYPE_BASIC), PHILIPS_C2("philips.light.zyceiling", "Xiaomi Philips LED Ceiling Lamp", THING_TYPE_BASIC),
PHILIPS_BULB("philips.light.bulb", "Xiaomi Philips Bulb", THING_TYPE_BASIC), PHILIPS_BULB("philips.light.bulb", "Xiaomi Philips Bulb", THING_TYPE_BASIC),

View File

@ -82,7 +82,7 @@ public class MiIoHandlerFactory extends BaseThingHandlerFactory {
return new MiIoGenericHandler(thing, miIoDatabaseWatchService); return new MiIoGenericHandler(thing, miIoDatabaseWatchService);
} }
if (thingTypeUID.equals(THING_TYPE_BASIC)) { if (thingTypeUID.equals(THING_TYPE_BASIC)) {
return new MiIoBasicHandler(thing, miIoDatabaseWatchService); return new MiIoBasicHandler(thing, miIoDatabaseWatchService, channelTypeRegistry);
} }
if (thingTypeUID.equals(THING_TYPE_VACUUM)) { if (thingTypeUID.equals(THING_TYPE_VACUUM)) {
return new MiIoVacuumHandler(thing, miIoDatabaseWatchService, cloudConnector, channelTypeRegistry); return new MiIoVacuumHandler(thing, miIoDatabaseWatchService, cloudConnector, channelTypeRegistry);

View File

@ -15,6 +15,7 @@ package org.openhab.binding.miio.internal;
import org.eclipse.jdt.annotation.NonNullByDefault; import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable; import org.eclipse.jdt.annotation.Nullable;
import com.google.gson.JsonArray;
import com.google.gson.JsonElement; import com.google.gson.JsonElement;
import com.google.gson.JsonObject; import com.google.gson.JsonObject;
@ -28,17 +29,17 @@ public class MiIoSendCommand {
private final int id; private final int id;
private final MiIoCommand command; private final MiIoCommand command;
private final String commandString; private final JsonObject commandJson;
private @Nullable JsonObject response; private @Nullable JsonObject response;
public void setResponse(JsonObject response) { public void setResponse(JsonObject response) {
this.response = response; this.response = response;
} }
public MiIoSendCommand(int id, MiIoCommand command, String commandString) { public MiIoSendCommand(int id, MiIoCommand command, JsonObject fullCommand) {
this.id = id; this.id = id;
this.command = command; this.command = command;
this.commandString = commandString; this.commandJson = fullCommand;
} }
public int getId() { public int getId() {
@ -49,8 +50,20 @@ public class MiIoSendCommand {
return command; return command;
} }
public JsonObject getCommandJson() {
return commandJson;
}
public String getCommandString() { public String getCommandString() {
return commandString; return commandJson.toString();
}
public String getMethod() {
return commandJson.has("method") ? commandJson.get("method").getAsString() : "";
}
public JsonElement getParams() {
return commandJson.has("params") ? commandJson.get("params").getAsJsonArray() : new JsonArray();
} }
public JsonObject getResponse() { public JsonObject getResponse() {

View File

@ -56,6 +56,9 @@ public class MiIoBasicChannel {
@SerializedName("refresh") @SerializedName("refresh")
@Expose @Expose
private @Nullable Boolean refresh; private @Nullable Boolean refresh;
@SerializedName("customRefreshCommand")
@Expose
private @Nullable String channelCustomRefreshCommand;
@SerializedName("transformation") @SerializedName("transformation")
@Expose @Expose
private @Nullable String transfortmation; private @Nullable String transfortmation;
@ -133,7 +136,7 @@ public class MiIoBasicChannel {
public String getChannelType() { public String getChannelType() {
final @Nullable String ct = channelType; final @Nullable String ct = channelType;
if (ct == null || ct.isEmpty()) { if (ct == null || ct.isEmpty()) {
return BINDING_ID + ":" + getChannel(); return "";
} else { } else {
return (ct.startsWith("system") ? ct : BINDING_ID + ":" + ct); return (ct.startsWith("system") ? ct : BINDING_ID + ":" + ct);
} }
@ -161,6 +164,15 @@ public class MiIoBasicChannel {
this.refresh = refresh; this.refresh = refresh;
} }
public String getChannelCustomRefreshCommand() {
final @Nullable String channelCustomRefreshCommand = this.channelCustomRefreshCommand;
return channelCustomRefreshCommand != null ? channelCustomRefreshCommand : "";
}
public void setChannelCustomRefreshCommand(String channelCustomRefreshCommand) {
this.channelCustomRefreshCommand = channelCustomRefreshCommand;
}
public String getChannelGroup() { public String getChannelGroup() {
final @Nullable String channelGroup = this.channelGroup; final @Nullable String channelGroup = this.channelGroup;
return channelGroup != null ? channelGroup : ""; return channelGroup != null ? channelGroup : "";

View File

@ -56,7 +56,7 @@ public class CloudConnector {
private String username = ""; private String username = "";
private String password = ""; private String password = "";
private String country = "ru,us,tw,sg,cn,de"; private String country = "ru,us,tw,sg,cn,de,i2";
private List<CloudDeviceDTO> deviceList = new ArrayList<>(); private List<CloudDeviceDTO> deviceList = new ArrayList<>();
private boolean connected; private boolean connected;
private final HttpClient httpClient; private final HttpClient httpClient;

View File

@ -36,6 +36,7 @@ import org.eclipse.smarthome.core.thing.ChannelUID;
import org.eclipse.smarthome.core.thing.Thing; import org.eclipse.smarthome.core.thing.Thing;
import org.eclipse.smarthome.core.thing.binding.builder.ChannelBuilder; import org.eclipse.smarthome.core.thing.binding.builder.ChannelBuilder;
import org.eclipse.smarthome.core.thing.binding.builder.ThingBuilder; import org.eclipse.smarthome.core.thing.binding.builder.ThingBuilder;
import org.eclipse.smarthome.core.thing.type.ChannelTypeRegistry;
import org.eclipse.smarthome.core.thing.type.ChannelTypeUID; import org.eclipse.smarthome.core.thing.type.ChannelTypeUID;
import org.eclipse.smarthome.core.types.Command; import org.eclipse.smarthome.core.types.Command;
import org.eclipse.smarthome.core.types.RefreshType; import org.eclipse.smarthome.core.types.RefreshType;
@ -73,7 +74,6 @@ import com.google.gson.JsonSyntaxException;
*/ */
@NonNullByDefault @NonNullByDefault
public class MiIoBasicHandler extends MiIoAbstractHandler { public class MiIoBasicHandler extends MiIoAbstractHandler {
private final Logger logger = LoggerFactory.getLogger(MiIoBasicHandler.class); private final Logger logger = LoggerFactory.getLogger(MiIoBasicHandler.class);
private boolean hasChannelStructure; private boolean hasChannelStructure;
@ -83,12 +83,16 @@ public class MiIoBasicHandler extends MiIoAbstractHandler {
}); });
List<MiIoBasicChannel> refreshList = new ArrayList<>(); List<MiIoBasicChannel> refreshList = new ArrayList<>();
private Map<String, MiIoBasicChannel> refreshListCustomCommands = new HashMap<>();
private @Nullable MiIoBasicDevice miioDevice; private @Nullable MiIoBasicDevice miioDevice;
private Map<ChannelUID, MiIoBasicChannel> actions = new HashMap<>(); private Map<ChannelUID, MiIoBasicChannel> actions = new HashMap<>();
private ChannelTypeRegistry channelTypeRegistry;
public MiIoBasicHandler(Thing thing, MiIoDatabaseWatchService miIoDatabaseWatchService) { public MiIoBasicHandler(Thing thing, MiIoDatabaseWatchService miIoDatabaseWatchService,
ChannelTypeRegistry channelTypeRegistry) {
super(thing, miIoDatabaseWatchService); super(thing, miIoDatabaseWatchService);
this.channelTypeRegistry = channelTypeRegistry;
} }
@Override @Override
@ -97,6 +101,7 @@ public class MiIoBasicHandler extends MiIoAbstractHandler {
hasChannelStructure = false; hasChannelStructure = false;
isIdentified = false; isIdentified = false;
refreshList = new ArrayList<>(); refreshList = new ArrayList<>();
refreshListCustomCommands = new HashMap<>();
} }
@Override @Override
@ -217,7 +222,9 @@ public class MiIoBasicHandler extends MiIoAbstractHandler {
} }
} }
updateDataCache.invalidateValue(); updateDataCache.invalidateValue();
updateData(); scheduler.schedule(() -> {
updateData();
}, 3000, TimeUnit.MILLISECONDS);
} else { } else {
logger.debug("Actions not loaded yet"); logger.debug("Actions not loaded yet");
} }
@ -259,6 +266,7 @@ public class MiIoBasicHandler extends MiIoAbstractHandler {
final MiIoBasicDevice midevice = miioDevice; final MiIoBasicDevice midevice = miioDevice;
if (midevice != null) { if (midevice != null) {
refreshProperties(midevice); refreshProperties(midevice);
refreshCustomProperties(midevice);
refreshNetwork(); refreshNetwork();
} }
} catch (Exception e) { } catch (Exception e) {
@ -266,6 +274,12 @@ public class MiIoBasicHandler extends MiIoAbstractHandler {
} }
} }
private void refreshCustomProperties(MiIoBasicDevice midevice) {
for (MiIoBasicChannel miChannel : refreshListCustomCommands.values()) {
sendCommand(miChannel.getChannelCustomRefreshCommand());
}
}
private boolean refreshProperties(MiIoBasicDevice device) { private boolean refreshProperties(MiIoBasicDevice device) {
MiIoCommand command = MiIoCommand.getCommand(device.getDevice().getPropertyMethod()); MiIoCommand command = MiIoCommand.getCommand(device.getDevice().getPropertyMethod());
int maxProperties = device.getDevice().getMaxProperties(); int maxProperties = device.getDevice().getMaxProperties();
@ -326,7 +340,12 @@ public class MiIoBasicHandler extends MiIoAbstractHandler {
if (miioDevice != null) { if (miioDevice != null) {
for (MiIoBasicChannel miChannel : miioDevice.getDevice().getChannels()) { for (MiIoBasicChannel miChannel : miioDevice.getDevice().getChannels()) {
if (miChannel.getRefresh()) { if (miChannel.getRefresh()) {
refreshList.add(miChannel); if (miChannel.getChannelCustomRefreshCommand().isEmpty()) {
refreshList.add(miChannel);
} else {
String i = miChannel.getChannelCustomRefreshCommand().split("\\[")[0];
refreshListCustomCommands.put(i.trim(), miChannel);
}
} }
} }
} }
@ -398,7 +417,6 @@ public class MiIoBasicHandler extends MiIoAbstractHandler {
return null; return null;
} }
ChannelUID channelUID = new ChannelUID(getThing().getUID(), channel); ChannelUID channelUID = new ChannelUID(getThing().getUID(), channel);
ChannelTypeUID channelTypeUID = new ChannelTypeUID(channelType);
// TODO: Need to understand if this harms anything. If yes, channel only to be added when not there already. // TODO: Need to understand if this harms anything. If yes, channel only to be added when not there already.
// current way allows to have no issues when channels are changing. // current way allows to have no issues when channels are changing.
@ -406,9 +424,17 @@ public class MiIoBasicHandler extends MiIoAbstractHandler {
logger.info("Channel '{}' for thing {} already exist... removing", channel, getThing().getUID()); logger.info("Channel '{}' for thing {} already exist... removing", channel, getThing().getUID());
thingBuilder.withoutChannel(new ChannelUID(getThing().getUID(), channel)); thingBuilder.withoutChannel(new ChannelUID(getThing().getUID(), channel));
} }
Channel newChannel = ChannelBuilder.create(channelUID, datatype).withType(channelTypeUID) ChannelBuilder newChannel = ChannelBuilder.create(channelUID, datatype).withLabel(friendlyName);
.withLabel(friendlyName).build(); if (!channelType.isEmpty()) {
thingBuilder.withChannel(newChannel); ChannelTypeUID channelTypeUID = new ChannelTypeUID(channelType);
if (channelTypeRegistry.getChannelType(channelTypeUID) != null) {
newChannel = newChannel.withType(channelTypeUID);
} else {
logger.debug("ChannelType '{}' is not available. Check the Json file for {}", channelTypeUID,
getThing().getUID());
}
}
thingBuilder.withChannel(newChannel.build());
return channelUID; return channelUID;
} }
@ -528,6 +554,23 @@ public class MiIoBasicHandler extends MiIoAbstractHandler {
} }
break; break;
default: default:
if (refreshListCustomCommands.containsKey(response.getMethod())) {
logger.debug("Processing custom refresh command response for !{}", response.getMethod());
MiIoBasicChannel ch = refreshListCustomCommands.get(response.getMethod());
if (response.getResult().isJsonArray()) {
JsonArray cmdResponse = response.getResult().getAsJsonArray();
final String transformation = ch.getTransfortmation();
if (transformation == null || transformation.isEmpty()) {
updateChannel(ch, ch.getChannel(),
cmdResponse.get(0).isJsonPrimitive() ? cmdResponse.get(0)
: new JsonPrimitive(cmdResponse.get(0).toString()));
} else {
updateChannel(ch, ch.getChannel(), cmdResponse);
}
} else {
updateChannel(ch, ch.getChannel(), new JsonPrimitive(response.getResult().toString()));
}
}
break; break;
} }
} catch (Exception e) { } catch (Exception e) {

View File

@ -30,6 +30,7 @@ import java.util.List;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import org.eclipse.jdt.annotation.NonNullByDefault; import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
import org.eclipse.smarthome.core.cache.ExpiringCache; import org.eclipse.smarthome.core.cache.ExpiringCache;
import org.eclipse.smarthome.core.library.types.OnOffType; import org.eclipse.smarthome.core.library.types.OnOffType;
import org.eclipse.smarthome.core.thing.ChannelUID; import org.eclipse.smarthome.core.thing.ChannelUID;
@ -170,7 +171,9 @@ public class MiIoUnsupportedHandler extends MiIoAbstractHandler {
sb.append("Properties: "); sb.append("Properties: ");
int lastCommand = -1; int lastCommand = -1;
for (String c : channelList.keySet()) { for (String c : channelList.keySet()) {
String cmd = "get_prop[" + c + "]"; MiIoBasicChannel ch = channelList.get(c);
String cmd = ch.getChannelCustomRefreshCommand().isEmpty() ? ("get_prop[" + c + "]")
: ch.getChannelCustomRefreshCommand();
sb.append(c); sb.append(c);
sb.append(" -> "); sb.append(" -> ");
lastCommand = sendCommand(cmd); lastCommand = sendCommand(cmd);
@ -183,10 +186,13 @@ public class MiIoUnsupportedHandler extends MiIoAbstractHandler {
logger.info("{}", sb.toString()); logger.info("{}", sb.toString());
} }
private LinkedHashMap<String, MiIoBasicChannel> collectProperties(String model) { private LinkedHashMap<String, MiIoBasicChannel> collectProperties(@Nullable String model) {
LinkedHashMap<String, MiIoBasicChannel> testChannelsList = new LinkedHashMap<>(); LinkedHashMap<String, MiIoBasicChannel> testChannelsList = new LinkedHashMap<>();
LinkedHashSet<MiIoDevices> testDeviceList = new LinkedHashSet<>(); LinkedHashSet<MiIoDevices> testDeviceList = new LinkedHashSet<>();
if (model == null || model.length() < 2) {
logger.info("Wait until the model is determined, than try again");
return testChannelsList;
}
// first add similar devices to test those channels first, then test all others // first add similar devices to test those channels first, then test all others
int[] subset = { model.length() - 1, model.lastIndexOf("."), model.indexOf("."), 0 }; int[] subset = { model.length() - 1, model.lastIndexOf("."), model.indexOf("."), 0 };
for (int i : subset) { for (int i : subset) {
@ -203,9 +209,16 @@ public class MiIoUnsupportedHandler extends MiIoAbstractHandler {
} }
for (MiIoDevices dev : testDeviceList) { for (MiIoDevices dev : testDeviceList) {
for (MiIoBasicChannel ch : getBasicChannels(dev.getModel())) { for (MiIoBasicChannel ch : getBasicChannels(dev.getModel())) {
if (!ch.isMiOt() && !ch.getProperty().isEmpty() && !testChannelsList.containsKey(ch.getProperty())) { // Add all (unique) properties
if (!ch.isMiOt() && !ch.getProperty().isEmpty() && ch.getChannelCustomRefreshCommand().isEmpty()
&& !testChannelsList.containsKey(ch.getProperty())) {
testChannelsList.put(ch.getProperty(), ch); testChannelsList.put(ch.getProperty(), ch);
} }
// Add all (unique) custom refresh commands
if (!ch.isMiOt() && !ch.getChannelCustomRefreshCommand().isEmpty()
&& !testChannelsList.containsKey(ch.getChannelCustomRefreshCommand())) {
testChannelsList.put(ch.getChannelCustomRefreshCommand(), ch);
}
} }
} }
return testChannelsList; return testChannelsList;

View File

@ -143,8 +143,7 @@ public class MiIoAsyncCommunication {
fullCommand.addProperty("id", cmdId); fullCommand.addProperty("id", cmdId);
fullCommand.addProperty("method", command); fullCommand.addProperty("method", command);
fullCommand.add("params", parser.parse(params)); fullCommand.add("params", parser.parse(params));
MiIoSendCommand sendCmd = new MiIoSendCommand(cmdId, MiIoCommand.getCommand(command), MiIoSendCommand sendCmd = new MiIoSendCommand(cmdId, MiIoCommand.getCommand(command), fullCommand);
fullCommand.toString());
concurrentLinkedQueue.add(sendCmd); concurrentLinkedQueue.add(sendCmd);
if (logger.isDebugEnabled()) { if (logger.isDebugEnabled()) {
// Obfuscate part of the token to allow sharing of the logfiles // Obfuscate part of the token to allow sharing of the logfiles

View File

@ -20,6 +20,7 @@
"property": "pm25", "property": "pm25",
"friendlyName": "PM2.5", "friendlyName": "PM2.5",
"channel": "pm25", "channel": "pm25",
"channelType": "pm25",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -29,6 +30,7 @@
"property": "co2e", "property": "co2e",
"friendlyName": "CO2e", "friendlyName": "CO2e",
"channel": "co2", "channel": "co2",
"channelType": "co2",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -38,6 +40,7 @@
"property": "tvoc", "property": "tvoc",
"friendlyName": "tVOC", "friendlyName": "tVOC",
"channel": "tvoc", "channel": "tvoc",
"channelType": "tvoc",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -47,6 +50,7 @@
"property": "humidity", "property": "humidity",
"friendlyName": "Humidity", "friendlyName": "Humidity",
"channel": "humidity", "channel": "humidity",
"channelType": "humidity",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -56,6 +60,7 @@
"property": "temperature", "property": "temperature",
"friendlyName": "Temperature", "friendlyName": "Temperature",
"channel": "temperature", "channel": "temperature",
"channelType": "temperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",

View File

@ -20,6 +20,7 @@
"property": "pm25", "property": "pm25",
"friendlyName": "PM2.5", "friendlyName": "PM2.5",
"channel": "pm25", "channel": "pm25",
"channelType": "pm25",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -29,6 +30,7 @@
"property": "co2", "property": "co2",
"friendlyName": "CO2", "friendlyName": "CO2",
"channel": "co2", "channel": "co2",
"channelType": "co2",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -38,6 +40,7 @@
"property": "tvoc", "property": "tvoc",
"friendlyName": "tVOC", "friendlyName": "tVOC",
"channel": "tvoc", "channel": "tvoc",
"channelType": "tvoc",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -47,6 +50,7 @@
"property": "humidity", "property": "humidity",
"friendlyName": "Humidity", "friendlyName": "Humidity",
"channel": "humidity", "channel": "humidity",
"channelType": "humidity",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -56,6 +60,7 @@
"property": "temperature", "property": "temperature",
"friendlyName": "Temperature", "friendlyName": "Temperature",
"channel": "temperature", "channel": "temperature",
"channelType": "temperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",

View File

@ -10,6 +10,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -24,6 +25,7 @@
"property": "temperature", "property": "temperature",
"friendlyName": "Temperature", "friendlyName": "Temperature",
"channel": "temperature", "channel": "temperature",
"channelType": "temperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -33,6 +35,7 @@
"property": "wifi_led", "property": "wifi_led",
"friendlyName": "Indicator light", "friendlyName": "Indicator light",
"channel": "led", "channel": "led",
"channelType": "led",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",

View File

@ -8,6 +8,7 @@
"property": "on", "property": "on",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -21,6 +22,7 @@
"property": "usb_on", "property": "usb_on",
"friendlyName": "USB", "friendlyName": "USB",
"channel": "usb", "channel": "usb",
"channelType": "usb",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -30,6 +32,16 @@
"parameterType": "ONOFFPARA" "parameterType": "ONOFFPARA"
} }
] ]
},
{
"property": "temperature",
"friendlyName": "Temperature",
"channel": "temperature",
"channelType": "temperature",
"type": "Number",
"refresh": true,
"ChannelGroup": "",
"actions": []
} }
] ]
} }

View File

@ -8,6 +8,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -22,6 +23,7 @@
"property": "usb_on", "property": "usb_on",
"friendlyName": "USB", "friendlyName": "USB",
"channel": "usb", "channel": "usb",
"channelType": "usb",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",

View File

@ -8,6 +8,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -21,6 +22,7 @@
"property": "usb_on", "property": "usb_on",
"friendlyName": "USB", "friendlyName": "USB",
"channel": "usb", "channel": "usb",
"channelType": "usb",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -35,6 +37,7 @@
"property": "temperature", "property": "temperature",
"friendlyName": "Temperature", "friendlyName": "Temperature",
"channel": "temperature", "channel": "temperature",
"channelType": "temperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -44,6 +47,7 @@
"property": "wifi_led", "property": "wifi_led",
"friendlyName": "Wifi LED", "friendlyName": "Wifi LED",
"channel": "led", "channel": "led",
"channelType": "led",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",

View File

@ -9,21 +9,23 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
"readmeComment": "If this channel does not respond to on/off replace the model with chuangmi.plug.v3old in the config or upgrade firmware",
"actions": [ "actions": [
{ {
"command": "set_power", "command": "set_power",
"parameterType": "ONOFF" "parameterType": "ONOFF"
} }
] ],
"readmeComment": "If this channel does not respond to on/off replace the model with chuangmi.plug.v3old in the config or upgrade firmware"
}, },
{ {
"property": "usb_on", "property": "usb_on",
"friendlyName": "USB", "friendlyName": "USB",
"channel": "usb", "channel": "usb",
"channelType": "usb",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -38,6 +40,7 @@
"property": "temperature", "property": "temperature",
"friendlyName": "Temperature", "friendlyName": "Temperature",
"channel": "temperature", "channel": "temperature",
"channelType": "temperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -47,6 +50,7 @@
"property": "wifi_led", "property": "wifi_led",
"friendlyName": "Wifi LED", "friendlyName": "Wifi LED",
"channel": "led", "channel": "led",
"channelType": "led",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",

View File

@ -8,6 +8,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -21,6 +22,7 @@
"property": "mode", "property": "mode",
"friendlyName": "Mode", "friendlyName": "Mode",
"channel": "airFreshMode", "channel": "airFreshMode",
"channelType": "airFreshMode",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -34,6 +36,7 @@
"property": "ptc_on", "property": "ptc_on",
"friendlyName": "PTC", "friendlyName": "PTC",
"channel": "airFreshPTCPower", "channel": "airFreshPTCPower",
"channelType": "airFreshPTCPower",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -47,6 +50,7 @@
"property": "ptc_status", "property": "ptc_status",
"friendlyName": "PTC Status", "friendlyName": "PTC Status",
"channel": "airFreshPTCStatus", "channel": "airFreshPTCStatus",
"channelType": "airFreshPTCStatus",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -56,6 +60,7 @@
"property": "display", "property": "display",
"friendlyName": "Display", "friendlyName": "Display",
"channel": "airFreshDisplay", "channel": "airFreshDisplay",
"channelType": "airFreshDisplay",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -69,6 +74,7 @@
"property": "child_lock", "property": "child_lock",
"friendlyName": "Child Lock", "friendlyName": "Child Lock",
"channel": "airFreshChildLock", "channel": "airFreshChildLock",
"channelType": "airFreshChildLock",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -82,6 +88,7 @@
"property": "sound", "property": "sound",
"friendlyName": "Sound", "friendlyName": "Sound",
"channel": "airFreshSound", "channel": "airFreshSound",
"channelType": "airFreshSound",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -95,6 +102,7 @@
"property": "pm25", "property": "pm25",
"friendlyName": "PM2.5", "friendlyName": "PM2.5",
"channel": "airFreshPM25", "channel": "airFreshPM25",
"channelType": "airFreshPM25",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -104,6 +112,7 @@
"property": "co2", "property": "co2",
"friendlyName": "CO2", "friendlyName": "CO2",
"channel": "airFreshCO2", "channel": "airFreshCO2",
"channelType": "airFreshCO2",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -113,6 +122,7 @@
"property": "control_speed", "property": "control_speed",
"friendlyName": "Current Speed", "friendlyName": "Current Speed",
"channel": "airFreshCurrentSpeed", "channel": "airFreshCurrentSpeed",
"channelType": "airFreshCurrentSpeed",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -122,6 +132,7 @@
"property": "favourite_speed", "property": "favourite_speed",
"friendlyName": "Favorite Speed", "friendlyName": "Favorite Speed",
"channel": "airFreshFavoriteSpeed", "channel": "airFreshFavoriteSpeed",
"channelType": "airFreshFavoriteSpeed",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -135,6 +146,7 @@
"property": "temperature_outside", "property": "temperature_outside",
"friendlyName": "Temperature Outside", "friendlyName": "Temperature Outside",
"channel": "airFreshTemperature", "channel": "airFreshTemperature",
"channelType": "airFreshTemperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -144,6 +156,7 @@
"property": "filter_rate", "property": "filter_rate",
"friendlyName": "Filter Percents Remaining", "friendlyName": "Filter Percents Remaining",
"channel": "airFreshFilterPercents", "channel": "airFreshFilterPercents",
"channelType": "airFreshFilterPercents",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -153,6 +166,7 @@
"property": "filter_day", "property": "filter_day",
"friendlyName": "Filter Days Remaining", "friendlyName": "Filter Days Remaining",
"channel": "airFreshFilterDays", "channel": "airFreshFilterDays",
"channelType": "airFreshFilterDays",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -162,6 +176,7 @@
"property": "", "property": "",
"friendlyName": "Reset Filter", "friendlyName": "Reset Filter",
"channel": "airFreshResetFilterA1", "channel": "airFreshResetFilterA1",
"channelType": "airFreshResetFilterA1",
"type": "String", "type": "String",
"refresh": false, "refresh": false,
"ChannelGroup": "actions", "ChannelGroup": "actions",

View File

@ -8,6 +8,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -21,6 +22,7 @@
"property": "mode", "property": "mode",
"friendlyName": "Mode", "friendlyName": "Mode",
"channel": "airFreshMode", "channel": "airFreshMode",
"channelType": "airFreshMode",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -34,6 +36,7 @@
"property": "ptc_on", "property": "ptc_on",
"friendlyName": "PTC", "friendlyName": "PTC",
"channel": "airFreshPTCPower", "channel": "airFreshPTCPower",
"channelType": "airFreshPTCPower",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -47,6 +50,7 @@
"property": "ptc_level", "property": "ptc_level",
"friendlyName": "PTC Level", "friendlyName": "PTC Level",
"channel": "airFreshPtcLevel", "channel": "airFreshPtcLevel",
"channelType": "airFreshPtcLevel",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -60,6 +64,7 @@
"property": "ptc_status", "property": "ptc_status",
"friendlyName": "PTC Status", "friendlyName": "PTC Status",
"channel": "airFreshPTCStatus", "channel": "airFreshPTCStatus",
"channelType": "airFreshPTCStatus",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -69,6 +74,7 @@
"property": "screen_direction", "property": "screen_direction",
"friendlyName": "Screen direction", "friendlyName": "Screen direction",
"channel": "airFreshDisplayDirection", "channel": "airFreshDisplayDirection",
"channelType": "airFreshDisplayDirection",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -82,6 +88,7 @@
"property": "display", "property": "display",
"friendlyName": "Display", "friendlyName": "Display",
"channel": "airFreshDisplay", "channel": "airFreshDisplay",
"channelType": "airFreshDisplay",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -95,6 +102,7 @@
"property": "child_lock", "property": "child_lock",
"friendlyName": "Child Lock", "friendlyName": "Child Lock",
"channel": "airFreshChildLock", "channel": "airFreshChildLock",
"channelType": "airFreshChildLock",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -108,6 +116,7 @@
"property": "sound", "property": "sound",
"friendlyName": "Sound", "friendlyName": "Sound",
"channel": "airFreshSound", "channel": "airFreshSound",
"channelType": "airFreshSound",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -121,6 +130,7 @@
"property": "pm25", "property": "pm25",
"friendlyName": "PM2.5", "friendlyName": "PM2.5",
"channel": "airFreshPM25", "channel": "airFreshPM25",
"channelType": "airFreshPM25",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -130,6 +140,7 @@
"property": "co2", "property": "co2",
"friendlyName": "CO2", "friendlyName": "CO2",
"channel": "airFreshCO2", "channel": "airFreshCO2",
"channelType": "airFreshCO2",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -139,6 +150,7 @@
"property": "control_speed", "property": "control_speed",
"friendlyName": "Current Speed", "friendlyName": "Current Speed",
"channel": "airFreshCurrentSpeed", "channel": "airFreshCurrentSpeed",
"channelType": "airFreshCurrentSpeed",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -148,6 +160,7 @@
"property": "favourite_speed", "property": "favourite_speed",
"friendlyName": "Favorite Speed", "friendlyName": "Favorite Speed",
"channel": "airFreshFavoriteSpeed", "channel": "airFreshFavoriteSpeed",
"channelType": "airFreshFavoriteSpeed",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -161,6 +174,7 @@
"property": "temperature_outside", "property": "temperature_outside",
"friendlyName": "Temperature Outside", "friendlyName": "Temperature Outside",
"channel": "airFreshTemperature", "channel": "airFreshTemperature",
"channelType": "airFreshTemperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -170,6 +184,7 @@
"property": "filter_intermediate", "property": "filter_intermediate",
"friendlyName": "Filter Percents Remaining", "friendlyName": "Filter Percents Remaining",
"channel": "airFreshFilterPercents", "channel": "airFreshFilterPercents",
"channelType": "airFreshFilterPercents",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -179,6 +194,7 @@
"property": "filter_inter_day", "property": "filter_inter_day",
"friendlyName": "Filter Days Remaining", "friendlyName": "Filter Days Remaining",
"channel": "airFreshFilterDays", "channel": "airFreshFilterDays",
"channelType": "airFreshFilterDays",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -188,6 +204,7 @@
"property": "filter_efficient", "property": "filter_efficient",
"friendlyName": "Filter Pro Percents Remaining", "friendlyName": "Filter Pro Percents Remaining",
"channel": "airFreshFilterProPercents", "channel": "airFreshFilterProPercents",
"channelType": "airFreshFilterProPercents",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -197,6 +214,7 @@
"property": "filter_effi_day", "property": "filter_effi_day",
"friendlyName": "Filter Pro Days Remaining", "friendlyName": "Filter Pro Days Remaining",
"channel": "airFreshFilterProDays", "channel": "airFreshFilterProDays",
"channelType": "airFreshFilterProDays",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -206,6 +224,7 @@
"property": "", "property": "",
"friendlyName": "Reset Filter", "friendlyName": "Reset Filter",
"channel": "airFreshResetFilter", "channel": "airFreshResetFilter",
"channelType": "airFreshResetFilter",
"type": "String", "type": "String",
"refresh": false, "refresh": false,
"ChannelGroup": "actions", "ChannelGroup": "actions",

View File

@ -1,133 +1,137 @@
{ {
"deviceMapping": { "deviceMapping": {
"id": [ "id": [
"dmaker.fan.p5" "dmaker.fan.p5"
], ],
"channels": [ "channels": [
{ {
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"type": "Switch", "channelType": "power",
"refresh": true, "type": "Switch",
"actions": [ "refresh": true,
{ "actions": [
"command": "s_power", {
"parameterType": "ONOFF" "command": "s_power",
} "parameterType": "ONOFF"
] }
}, ]
{ },
"property": "roll", {
"friendlyName": "Rotation", "property": "roll",
"channel": "roll", "friendlyName": "Rotation",
"type": "Switch", "channel": "roll",
"refresh": true, "type": "Switch",
"actions": [ "refresh": true,
{ "actions": [
"command": "s_roll", {
"parameterType": "ONOFF" "command": "s_roll",
} "parameterType": "ONOFF"
] }
}, ]
{ },
"property": "mode", {
"friendlyName": "Mode", "property": "mode",
"channel": "mode", "friendlyName": "Mode",
"type": "Number", "channel": "mode",
"refresh": true, "channelType": "mode",
"ChannelGroup": "actions", "type": "Number",
"actions": [ "refresh": true,
{ "ChannelGroup": "actions",
"command": "s_mode", "actions": [
"parameterType": "STRING" {
} "command": "s_mode",
] "parameterType": "STRING"
}, }
{ ]
"property": "roll_angle", },
"friendlyName": "Angle", {
"channel": "angle", "property": "roll_angle",
"type": "Number", "friendlyName": "Angle",
"refresh": true, "channel": "angle",
"ChannelGroup": "actions", "channelType": "angle",
"actions": [ "type": "Number",
{ "refresh": true,
"command": "s_angle", "ChannelGroup": "actions",
"parameterType": "NUMBER" "actions": [
} {
] "command": "s_angle",
}, "parameterType": "NUMBER"
{ }
"property": "timer_off", ]
"friendlyName": "Timer", },
"channel": "timer", {
"type": "Number", "property": "timer_off",
"refresh": true, "friendlyName": "Timer",
"ChannelGroup": "actions", "channel": "timer",
"actions": [ "type": "Number",
{ "refresh": true,
"command": "s_t_off", "ChannelGroup": "actions",
"parameterType": "NUMBER" "actions": [
} {
] "command": "s_t_off",
}, "parameterType": "NUMBER"
{ }
"property": "beep_sound", ]
"friendlyName": "Beep Sound", },
"channel": "beep", {
"type": "Switch", "property": "beep_sound",
"refresh": true, "friendlyName": "Beep Sound",
"ChannelGroup": "actions", "channel": "beep",
"actions": [ "type": "Switch",
{ "refresh": true,
"command": "s_beep_sound", "ChannelGroup": "actions",
"parameterType": "ONOFF" "actions": [
} {
] "command": "s_beep_sound",
}, "parameterType": "ONOFF"
{ }
"property": "light", ]
"friendlyName": "Light", },
"channel": "light", {
"type": "Number", "property": "light",
"refresh": true, "friendlyName": "Light",
"ChannelGroup": "actions", "channel": "light",
"actions": [ "type": "Number",
{ "refresh": true,
"command": "s_light", "ChannelGroup": "actions",
"parameterType": "NUMBER" "actions": [
} {
] "command": "s_light",
}, "parameterType": "NUMBER"
{ }
"property": "child_lock", ]
"friendlyName": "Child Lock", },
"channel": "child_lock", {
"type": "Switch", "property": "child_lock",
"refresh": true, "friendlyName": "Child Lock",
"ChannelGroup": "actions", "channel": "child_lock",
"actions": [ "type": "Switch",
{ "refresh": true,
"command": "s_lock", "ChannelGroup": "actions",
"parameterType": "ONOFF" "actions": [
} {
] "command": "s_lock",
}, "parameterType": "ONOFF"
{ }
"property": "speed", ]
"friendlyName": "Speed", },
"channel": "speed", {
"type": "Number", "property": "speed",
"refresh": true, "friendlyName": "Speed",
"ChannelGroup": "actions", "channel": "speed",
"actions": [ "channelType": "speed",
{ "type": "Number",
"command": "s_speed", "refresh": true,
"parameterType": "NUMBER" "ChannelGroup": "actions",
} "actions": [
] {
} "command": "s_speed",
] "parameterType": "NUMBER"
} }
]
}
]
}
} }

View File

@ -1,188 +1,184 @@
{ {
"deviceMapping": { "deviceMapping": {
"id": [ "id": [
"dmaker.fan.p8", "dmaker.fan.p8",
"dmaker.fan.1c" "dmaker.fan.1c"
], ],
"propertyMethod": "get_properties", "propertyMethod": "get_properties",
"maxProperties": 2, "maxProperties": 2,
"channels": [ "channels": [
{ {
"property": "manufacturer", "property": "manufacturer",
"siid": 1, "siid": 1,
"piid": 1, "piid": 1,
"friendlyName": "Device Information-Device Manufacturer", "friendlyName": "Device Information-Device Manufacturer",
"channel": "Manufacturer", "channel": "Manufacturer",
"channelType": "miot_string", "channelType": "miot_string",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"actions": [ "actions": []
] },
}, {
{ "property": "model",
"property": "model", "siid": 1,
"siid": 1, "piid": 2,
"piid": 2, "friendlyName": "Device Information-Device Model",
"friendlyName": "Device Information-Device Model", "channel": "Model",
"channel": "Model", "channelType": "miot_string",
"channelType": "miot_string", "type": "String",
"type": "String", "refresh": true,
"refresh": true, "actions": []
"actions": [ },
] {
}, "property": "serial-number",
{ "siid": 1,
"property": "serial-number", "piid": 3,
"siid": 1, "friendlyName": "Device Information-Device Serial Number",
"piid": 3, "channel": "SerialNumber",
"friendlyName": "Device Information-Device Serial Number", "channelType": "miot_string",
"channel": "SerialNumber", "type": "String",
"channelType": "miot_string", "refresh": true,
"type": "String", "actions": []
"refresh": true, },
"actions": [ {
] "property": "firmware-revision",
}, "siid": 1,
{ "piid": 4,
"property": "firmware-revision", "friendlyName": "Device Information-Current Firmware Version",
"siid": 1, "channel": "FirmwareRevision",
"piid": 4, "channelType": "miot_string",
"friendlyName": "Device Information-Current Firmware Version", "type": "String",
"channel": "FirmwareRevision", "refresh": true,
"channelType": "miot_string", "actions": []
"type": "String", },
"refresh": true, {
"actions": [ "property": "on",
] "siid": 2,
}, "piid": 1,
{ "friendlyName": "Fan-Switch Status",
"property": "on", "channel": "On",
"siid": 2, "channelType": "miot_bool",
"piid": 1, "type": "Switch",
"friendlyName": "Fan-Switch Status", "refresh": true,
"channel": "On", "actions": [
"channelType": "miot_bool", {
"type": "Switch", "command": "set_properties",
"refresh": true, "parameterType": "ONOFFBOOL"
"actions": [ }
{ ]
"command": "set_properties", },
"parameterType": "ONOFFBOOL" {
} "property": "fan-level",
] "siid": 2,
}, "piid": 2,
{ "friendlyName": "Fan-Fan Level",
"property": "fan-level", "channel": "FanLevel",
"siid": 2, "channelType": "miot_uint8",
"piid": 2, "type": "Number",
"friendlyName": "Fan-Fan Level", "refresh": true,
"channel": "FanLevel", "actions": [
"channelType": "miot_uint8", {
"type": "Number", "command": "set_properties",
"refresh": true, "parameterType": "NUMBER"
"actions": [ }
{ ]
"command": "set_properties", },
"parameterType": "NUMBER" {
} "property": "horizontal-swing",
] "siid": 2,
}, "piid": 3,
{ "friendlyName": "Fan-Horizontal Swing",
"property": "horizontal-swing", "channel": "HorizontalSwing",
"siid": 2, "channelType": "miot_bool",
"piid": 3, "type": "Switch",
"friendlyName": "Fan-Horizontal Swing", "refresh": true,
"channel": "HorizontalSwing", "actions": [
"channelType": "miot_bool", {
"type": "Switch", "command": "set_properties",
"refresh": true, "parameterType": "ONOFFBOOL"
"actions": [ }
{ ]
"command": "set_properties", },
"parameterType": "ONOFFBOOL" {
} "property": "mode",
] "siid": 2,
}, "piid": 7,
{ "friendlyName": "Fan-Mode",
"property": "mode", "channel": "Mode",
"siid": 2, "channelType": "miot_uint8",
"piid": 7, "type": "Number",
"friendlyName": "Fan-Mode", "refresh": true,
"channel": "Mode", "actions": [
"channelType": "miot_uint8", {
"type": "Number", "command": "set_properties",
"refresh": true, "parameterType": "NUMBER"
"actions": [ }
{ ]
"command": "set_properties", },
"parameterType": "NUMBER" {
} "property": "off-delay-time",
] "siid": 2,
}, "piid": 10,
{ "friendlyName": "Fan-Power Off Delay Time",
"property": "off-delay-time", "channel": "OffDelayTime",
"siid": 2, "channelType": "miot_uint16",
"piid": 10, "type": "Number",
"friendlyName": "Fan-Power Off Delay Time", "refresh": true,
"channel": "OffDelayTime", "actions": [
"channelType": "miot_uint16", {
"type": "Number", "command": "set_properties",
"refresh": true, "parameterType": "NUMBER"
"actions": [ }
{ ]
"command": "set_properties", },
"parameterType": "NUMBER" {
} "property": "alarm",
] "siid": 2,
}, "piid": 11,
{ "friendlyName": "Fan-Alarm",
"property": "alarm", "channel": "Alarm",
"siid": 2, "channelType": "miot_bool",
"piid": 11, "type": "Switch",
"friendlyName": "Fan-Alarm", "refresh": true,
"channel": "Alarm", "actions": [
"channelType": "miot_bool", {
"type": "Switch", "command": "set_properties",
"refresh": true, "parameterType": "ONOFFBOOL"
"actions": [ }
{ ]
"command": "set_properties", },
"parameterType": "ONOFFBOOL" {
} "property": "brightness",
] "siid": 2,
}, "piid": 12,
{ "friendlyName": "Fan-Brightness",
"property": "brightness", "channel": "Brightness",
"siid": 2, "channelType": "miot_bool",
"piid": 12, "type": "Switch",
"friendlyName": "Fan-Brightness", "refresh": true,
"channel": "Brightness", "actions": [
"channelType": "miot_bool", {
"type": "Switch", "command": "set_properties",
"refresh": true, "parameterType": "ONOFFBOOL"
"actions": [ }
{ ]
"command": "set_properties", },
"parameterType": "ONOFFBOOL" {
} "property": "physical-controls-locked",
] "siid": 3,
}, "piid": 1,
{ "friendlyName": "Physical Control Locked-Physical Control Locked",
"property": "physical-controls-locked", "channel": "PhysicalControlsLocked",
"siid": 3, "channelType": "miot_bool",
"piid": 1, "type": "Switch",
"friendlyName": "Physical Control Locked-Physical Control Locked", "refresh": true,
"channel": "PhysicalControlsLocked", "actions": [
"channelType": "miot_bool", {
"type": "Switch", "command": "set_properties",
"refresh": true, "parameterType": "ONOFFBOOL"
"actions": [ }
{ ]
"command": "set_properties", }
"parameterType": "ONOFFBOOL" ]
} }
]
}
]
}
} }

View File

@ -1,236 +1,232 @@
{ {
"deviceMapping": { "deviceMapping": {
"id": [ "id": [
"dmaker.fan.p9", "dmaker.fan.p9",
"dmaker.fan.p10" "dmaker.fan.p10"
], ],
"propertyMethod": "get_properties", "propertyMethod": "get_properties",
"maxProperties": 2, "maxProperties": 2,
"channels": [ "channels": [
{ {
"property": "manufacturer", "property": "manufacturer",
"siid": 1, "siid": 1,
"piid": 1, "piid": 1,
"friendlyName": "Device Information-Device Manufacturer", "friendlyName": "Device Information-Device Manufacturer",
"channel": "Manufacturer", "channel": "Manufacturer",
"channelType": "miot_string", "channelType": "miot_string",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"actions": [ "actions": []
] },
}, {
{ "property": "model",
"property": "model", "siid": 1,
"siid": 1, "piid": 2,
"piid": 2, "friendlyName": "Device Information-Device Model",
"friendlyName": "Device Information-Device Model", "channel": "Model",
"channel": "Model", "channelType": "miot_string",
"channelType": "miot_string", "type": "String",
"type": "String", "refresh": true,
"refresh": true, "actions": []
"actions": [ },
] {
}, "property": "serial-number",
{ "siid": 1,
"property": "serial-number", "piid": 3,
"siid": 1, "friendlyName": "Device Information-Device Serial Number",
"piid": 3, "channel": "SerialNumber",
"friendlyName": "Device Information-Device Serial Number", "channelType": "miot_string",
"channel": "SerialNumber", "type": "String",
"channelType": "miot_string", "refresh": true,
"type": "String", "actions": []
"refresh": true, },
"actions": [ {
] "property": "firmware-revision",
}, "siid": 1,
{ "piid": 4,
"property": "firmware-revision", "friendlyName": "Device Information-Current Firmware Version",
"siid": 1, "channel": "FirmwareRevision",
"piid": 4, "channelType": "miot_string",
"friendlyName": "Device Information-Current Firmware Version", "type": "String",
"channel": "FirmwareRevision", "refresh": true,
"channelType": "miot_string", "actions": []
"type": "String", },
"refresh": true, {
"actions": [ "property": "on",
] "siid": 2,
}, "piid": 1,
{ "friendlyName": "Fan-Switch Status",
"property": "on", "channel": "On",
"siid": 2, "channelType": "miot_bool",
"piid": 1, "type": "Switch",
"friendlyName": "Fan-Switch Status", "refresh": true,
"channel": "On", "actions": [
"channelType": "miot_bool", {
"type": "Switch", "command": "set_properties",
"refresh": true, "parameterType": "ONOFFBOOL"
"actions": [ }
{ ]
"command": "set_properties", },
"parameterType": "ONOFFBOOL" {
} "property": "fan-level",
] "siid": 2,
}, "piid": 2,
{ "friendlyName": "Fan-Fan Level",
"property": "fan-level", "channel": "FanLevel",
"siid": 2, "channelType": "miot_uint8",
"piid": 2, "type": "Number",
"friendlyName": "Fan-Fan Level", "refresh": true,
"channel": "FanLevel", "actions": [
"channelType": "miot_uint8", {
"type": "Number", "command": "set_properties",
"refresh": true, "parameterType": "NUMBER"
"actions": [ }
{ ]
"command": "set_properties", },
"parameterType": "NUMBER" {
} "property": "mode",
] "siid": 2,
}, "piid": 4,
{ "friendlyName": "Fan-Mode",
"property": "mode", "channel": "Mode",
"siid": 2, "channelType": "miot_uint8",
"piid": 4, "type": "Number",
"friendlyName": "Fan-Mode", "refresh": true,
"channel": "Mode", "actions": [
"channelType": "miot_uint8", {
"type": "Number", "command": "set_properties",
"refresh": true, "parameterType": "NUMBER"
"actions": [ }
{ ]
"command": "set_properties", },
"parameterType": "NUMBER" {
} "property": "horizontal-swing",
] "siid": 2,
}, "piid": 5,
{ "friendlyName": "Fan-Horizontal Swing",
"property": "horizontal-swing", "channel": "HorizontalSwing",
"siid": 2, "channelType": "miot_bool",
"piid": 5, "type": "Switch",
"friendlyName": "Fan-Horizontal Swing", "refresh": true,
"channel": "HorizontalSwing", "actions": [
"channelType": "miot_bool", {
"type": "Switch", "command": "set_properties",
"refresh": true, "parameterType": "ONOFFBOOL"
"actions": [ }
{ ]
"command": "set_properties", },
"parameterType": "ONOFFBOOL" {
} "property": "horizontal-angle",
] "siid": 2,
}, "piid": 6,
{ "friendlyName": "Fan-Horizontal Angle",
"property": "horizontal-angle", "channel": "HorizontalAngle",
"siid": 2, "channelType": "miot_uint8",
"piid": 6, "type": "Number",
"friendlyName": "Fan-Horizontal Angle", "refresh": true,
"channel": "HorizontalAngle", "actions": [
"channelType": "miot_uint8", {
"type": "Number", "command": "set_properties",
"refresh": true, "parameterType": "NUMBER"
"actions": [ }
{ ]
"command": "set_properties", },
"parameterType": "NUMBER" {
} "property": "alarm",
] "siid": 2,
}, "piid": 7,
{ "friendlyName": "Fan-Alarm",
"property": "alarm", "channel": "Alarm",
"siid": 2, "channelType": "miot_bool",
"piid": 7, "type": "Switch",
"friendlyName": "Fan-Alarm", "refresh": true,
"channel": "Alarm", "actions": [
"channelType": "miot_bool", {
"type": "Switch", "command": "set_properties",
"refresh": true, "parameterType": "ONOFFBOOL"
"actions": [ }
{ ]
"command": "set_properties", },
"parameterType": "ONOFFBOOL" {
} "property": "off-delay-time",
] "siid": 2,
}, "piid": 8,
{ "friendlyName": "Fan-Power Off Delay Time",
"property": "off-delay-time", "channel": "OffDelayTime",
"siid": 2, "channelType": "miot_uint8",
"piid": 8, "type": "Number",
"friendlyName": "Fan-Power Off Delay Time", "refresh": true,
"channel": "OffDelayTime", "actions": [
"channelType": "miot_uint8", {
"type": "Number", "command": "set_properties",
"refresh": true, "parameterType": "NUMBER"
"actions": [ }
{ ]
"command": "set_properties", },
"parameterType": "NUMBER" {
} "property": "brightness",
] "siid": 2,
}, "piid": 9,
{ "friendlyName": "Fan-Brightness",
"property": "brightness", "channel": "Brightness",
"siid": 2, "channelType": "miot_bool",
"piid": 9, "type": "Switch",
"friendlyName": "Fan-Brightness", "refresh": true,
"channel": "Brightness", "actions": [
"channelType": "miot_bool", {
"type": "Switch", "command": "set_properties",
"refresh": true, "parameterType": "ONOFFBOOL"
"actions": [ }
{ ]
"command": "set_properties", },
"parameterType": "ONOFFBOOL" {
} "property": "motor-control",
] "siid": 2,
}, "piid": 10,
{ "friendlyName": "Fan-Motor Control",
"property": "motor-control", "channel": "MotorControl",
"siid": 2, "channelType": "miot_uint8",
"piid": 10, "type": "Number",
"friendlyName": "Fan-Motor Control", "refresh": true,
"channel": "MotorControl", "actions": [
"channelType": "miot_uint8", {
"type": "Number", "command": "set_properties",
"refresh": true, "parameterType": "NUMBER"
"actions": [ }
{ ]
"command": "set_properties", },
"parameterType": "NUMBER" {
} "property": "speed-level",
] "siid": 2,
}, "piid": 11,
{ "friendlyName": "Fan-Speed Level",
"property": "speed-level", "channel": "SpeedLevel",
"siid": 2, "channelType": "miot_uint8",
"piid": 11, "type": "Number",
"friendlyName": "Fan-Speed Level", "refresh": true,
"channel": "SpeedLevel", "actions": [
"channelType": "miot_uint8", {
"type": "Number", "command": "set_properties",
"refresh": true, "parameterType": "NUMBER"
"actions": [ }
{ ]
"command": "set_properties", },
"parameterType": "NUMBER" {
} "property": "physical-controls-locked",
] "siid": 3,
}, "piid": 1,
{ "friendlyName": "Physical Control Locked-Physical Control Locked",
"property": "physical-controls-locked", "channel": "PhysicalControlsLocked",
"siid": 3, "channelType": "miot_bool",
"piid": 1, "type": "Switch",
"friendlyName": "Physical Control Locked-Physical Control Locked", "refresh": true,
"channel": "PhysicalControlsLocked", "actions": [
"channelType": "miot_bool", {
"type": "Switch", "command": "set_properties",
"refresh": true, "parameterType": "ONOFFBOOL"
"actions": [ }
{ ]
"command": "set_properties", }
"parameterType": "ONOFFBOOL" ]
} }
]
}
]
}
} }

View File

@ -1,510 +1,491 @@
{ {
"deviceMapping": { "deviceMapping": {
"id": [ "id": [
"dreame.vacuum.mc1808" "dreame.vacuum.mc1808"
], ],
"propertyMethod": "get_properties", "propertyMethod": "get_properties",
"maxProperties": 2, "maxProperties": 2,
"channels": [ "channels": [
{ {
"property": "", "property": "",
"friendlyName": "Vacuum Action", "friendlyName": "Vacuum Action",
"channel": "vacuumaction", "channel": "vacuumaction",
"channelType": "dreameControl", "channelType": "dreameControl",
"type": "String", "type": "String",
"refresh": false, "refresh": false,
"actions": [ "actions": [
{ {
"command": "action", "command": "action",
"parameterType": "EMPTY", "parameterType": "EMPTY",
"siid": 18, "siid": 18,
"aiid": 1, "aiid": 1,
"condition": { "condition": {
"name": "matchValue", "name": "matchValue",
"parameters": [ "parameters": [
{ {
"matchValue": "vacuum", "matchValue": "vacuum",
"returnValue": [ "returnValue": [
{ {
"piid": 1, "piid": 1,
"value": 2 "value": 2
} }
] ]
}, },
{ {
"matchValue": "start", "matchValue": "start",
"returnValue": [ "returnValue": [
{ {
"piid": 1, "piid": 1,
"value": 2 "value": 2
} }
] ]
} }
] ]
} }
}, },
{ {
"command": "action", "command": "action",
"parameterType": "EMPTY", "parameterType": "EMPTY",
"siid": 18, "siid": 18,
"aiid": 2, "aiid": 2,
"condition": { "condition": {
"name": "matchValue", "name": "matchValue",
"parameters": [ "parameters": [
{ {
"matchValue": "stop" "matchValue": "stop"
} }
] ]
} }
}, },
{ {
"command": "action", "command": "action",
"parameterType": "EMPTY", "parameterType": "EMPTY",
"siid": 3, "siid": 3,
"aiid": 1, "aiid": 1,
"condition": { "condition": {
"name": "matchValue", "name": "matchValue",
"parameters": [ "parameters": [
{ {
"matchValue": "sweep" "matchValue": "sweep"
} }
] ]
} }
}, },
{ {
"command": "action", "command": "action",
"parameterType": "EMPTY", "parameterType": "EMPTY",
"siid": 3, "siid": 3,
"aiid": 2, "aiid": 2,
"condition": { "condition": {
"name": "matchValue", "name": "matchValue",
"parameters": [ "parameters": [
{ {
"matchValue": "stopsweep" "matchValue": "stopsweep"
} }
] ]
} }
}, },
{ {
"command": "action", "command": "action",
"parameterType": "EMPTY", "parameterType": "EMPTY",
"siid": 2, "siid": 2,
"aiid": 1, "aiid": 1,
"condition": { "condition": {
"name": "matchValue", "name": "matchValue",
"parameters": [ "parameters": [
{ {
"matchValue": "dock" "matchValue": "dock"
} }
] ]
} }
} }
] ]
}, },
{ {
"property": "battery-level", "property": "battery-level",
"siid": 2, "siid": 2,
"piid": 1, "piid": 1,
"friendlyName": "Battery-Battery Level", "friendlyName": "Battery-Battery Level",
"channel": "BatteryLevel", "channel": "BatteryLevel",
"channelType": "miot_uint8", "channelType": "miot_uint8",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"actions": [ "actions": []
] },
}, {
{ "property": "charging-state",
"property": "charging-state", "siid": 2,
"siid": 2, "piid": 2,
"piid": 2, "friendlyName": "Battery-Charging State",
"friendlyName": "Battery-Charging State", "channel": "ChargingState",
"channel": "ChargingState", "channelType": "miot_uint8",
"channelType": "miot_uint8", "type": "Number",
"type": "Number", "refresh": true,
"refresh": true, "actions": []
"actions": [ },
] {
}, "property": "fault",
{ "siid": 3,
"property": "fault", "piid": 1,
"siid": 3, "friendlyName": "Robot Cleaner-Device Fault",
"piid": 1, "channel": "Fault",
"friendlyName": "Robot Cleaner-Device Fault", "channelType": "miot_uint8",
"channel": "Fault", "type": "Number",
"channelType": "miot_uint8", "refresh": true,
"type": "Number", "actions": []
"refresh": true, },
"actions": [ {
] "property": "status",
}, "siid": 3,
{ "piid": 2,
"property": "status", "friendlyName": "Robot Cleaner-Status",
"siid": 3, "channel": "Status",
"piid": 2, "channelType": "miot_int8",
"friendlyName": "Robot Cleaner-Status", "type": "Number",
"channel": "Status", "refresh": true,
"channelType": "miot_int8", "actions": []
"type": "Number", },
"refresh": true, {
"actions": [ "property": "brush-left-time",
] "siid": 26,
}, "piid": 1,
{ "friendlyName": "Main Cleaning Brush-Brush Left Time",
"property": "brush-left-time", "channel": "BrushLeftTime",
"siid": 26, "channelType": "miot_uint16",
"piid": 1, "type": "String",
"friendlyName": "Main Cleaning Brush-Brush Left Time", "refresh": true,
"channel": "BrushLeftTime", "actions": []
"channelType": "miot_uint16", },
"type": "String", {
"refresh": true, "property": "brush-life-level",
"actions": [ "siid": 26,
] "piid": 2,
}, "friendlyName": "Main Cleaning Brush-Brush Life Level",
{ "channel": "BrushLifeLevel",
"property": "brush-life-level", "channelType": "miot_uint8",
"siid": 26, "type": "Number",
"piid": 2, "refresh": true,
"friendlyName": "Main Cleaning Brush-Brush Life Level", "actions": []
"channel": "BrushLifeLevel", },
"channelType": "miot_uint8", {
"type": "Number", "property": "filter-life-level",
"refresh": true, "siid": 27,
"actions": [ "piid": 1,
] "friendlyName": "Filter-Filter Life Level",
}, "channel": "FilterLifeLevel",
{ "channelType": "miot_uint8",
"property": "filter-life-level", "type": "Number",
"siid": 27, "refresh": true,
"piid": 1, "actions": []
"friendlyName": "Filter-Filter Life Level", },
"channel": "FilterLifeLevel", {
"channelType": "miot_uint8", "property": "filter-left-time",
"type": "Number", "siid": 27,
"refresh": true, "piid": 2,
"actions": [ "friendlyName": "Filter-Filter Left Time",
] "channel": "FilterLeftTime",
}, "channelType": "miot_uint16",
{ "type": "String",
"property": "filter-left-time", "refresh": true,
"siid": 27, "actions": []
"piid": 2, },
"friendlyName": "Filter-Filter Left Time", {
"channel": "FilterLeftTime", "property": "brush-left-time1",
"channelType": "miot_uint16", "siid": 28,
"type": "String", "piid": 1,
"refresh": true, "friendlyName": "Side Cleaning Brush-Brush Left Time",
"actions": [ "channel": "BrushLeftTime1",
] "channelType": "miot_uint16",
}, "type": "String",
{ "refresh": true,
"property": "brush-left-time1", "actions": []
"siid": 28, },
"piid": 1, {
"friendlyName": "Side Cleaning Brush-Brush Left Time", "property": "brush-life-level1",
"channel": "BrushLeftTime1", "siid": 28,
"channelType": "miot_uint16", "piid": 2,
"type": "String", "friendlyName": "Side Cleaning Brush-Brush Life Level",
"refresh": true, "channel": "BrushLifeLevel1",
"actions": [ "channelType": "miot_uint8",
] "type": "Number",
}, "refresh": true,
{ "actions": []
"property": "brush-life-level1", },
"siid": 28, {
"piid": 2, "property": "work-mode",
"friendlyName": "Side Cleaning Brush-Brush Life Level", "siid": 18,
"channel": "BrushLifeLevel1", "piid": 1,
"channelType": "miot_uint8", "friendlyName": "clean-workmode",
"type": "Number", "channel": "WorkMode",
"refresh": true, "channelType": "miot_int32",
"actions": [ "type": "Number",
] "refresh": true,
}, "actions": []
{ },
"property": "work-mode", {
"siid": 18, "property": "area",
"piid": 1, "siid": 18,
"friendlyName": "clean-workmode", "piid": 4,
"channel": "WorkMode", "friendlyName": "clean-area",
"channelType": "miot_int32", "channel": "Area",
"type": "Number", "channelType": "miot_string",
"refresh": true, "type": "String",
"actions": [ "refresh": true,
] "actions": [
}, {
{ "command": "set_properties",
"property": "area", "parameterType": "STRING"
"siid": 18, }
"piid": 4, ]
"friendlyName": "clean-area", },
"channel": "Area", {
"channelType": "miot_string", "property": "timer",
"type": "String", "siid": 18,
"refresh": true, "piid": 5,
"actions": [ "friendlyName": "clean-timer",
{ "channel": "Timer",
"command": "set_properties", "channelType": "miot_string",
"parameterType": "STRING" "type": "String",
} "refresh": true,
] "actions": [
}, {
{ "command": "set_properties",
"property": "timer", "parameterType": "STRING"
"siid": 18, }
"piid": 5, ]
"friendlyName": "clean-timer", },
"channel": "Timer", {
"channelType": "miot_string", "property": "mode",
"type": "String", "siid": 18,
"refresh": true, "piid": 6,
"actions": [ "friendlyName": "clean-mode",
{ "channel": "Mode",
"command": "set_properties", "channelType": "miot_int32",
"parameterType": "STRING" "type": "Number",
} "refresh": true,
] "actions": [
}, {
{ "command": "set_properties",
"property": "mode", "parameterType": "NUMBER"
"siid": 18, }
"piid": 6, ]
"friendlyName": "clean-mode", },
"channel": "Mode", {
"channelType": "miot_int32", "property": "total-clean-time",
"type": "Number", "siid": 18,
"refresh": true, "piid": 13,
"actions": [ "friendlyName": "clean-total time",
{ "channel": "TotalCleanTime",
"command": "set_properties", "channelType": "miot_uint32",
"parameterType": "NUMBER" "type": "String",
} "refresh": true,
] "actions": []
}, },
{ {
"property": "total-clean-time", "property": "total-clean-times",
"siid": 18, "siid": 18,
"piid": 13, "piid": 14,
"friendlyName": "clean-total time", "friendlyName": "clean-total times",
"channel": "TotalCleanTime", "channel": "TotalCleanTimes",
"channelType": "miot_uint32", "channelType": "miot_uint32",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"actions": [ "actions": []
] },
}, {
{ "property": "total-clean-area",
"property": "total-clean-times", "siid": 18,
"siid": 18, "piid": 15,
"piid": 14, "friendlyName": "clean-Total area",
"friendlyName": "clean-total times", "channel": "TotalCleanArea",
"channel": "TotalCleanTimes", "channelType": "miot_uint32",
"channelType": "miot_uint32", "type": "String",
"type": "String", "refresh": true,
"refresh": true, "actions": []
"actions": [ },
] {
}, "property": "clean-log-start-time",
{ "siid": 18,
"property": "total-clean-area", "piid": 16,
"siid": 18, "friendlyName": "clean-Start Time",
"piid": 15, "channel": "CleanLogStartTime",
"friendlyName": "clean-Total area", "channelType": "miot_uint32",
"channel": "TotalCleanArea", "type": "String",
"channelType": "miot_uint32", "refresh": true,
"type": "String", "actions": []
"refresh": true, },
"actions": [ {
] "property": "button-led",
}, "siid": 18,
{ "piid": 17,
"property": "clean-log-start-time", "friendlyName": "clean-led",
"siid": 18, "channel": "ButtonLed",
"piid": 16, "channelType": "miot_uint16",
"friendlyName": "clean-Start Time", "type": "String",
"channel": "CleanLogStartTime", "refresh": true,
"channelType": "miot_uint32", "actions": []
"type": "String", },
"refresh": true, {
"actions": [ "property": "task-done",
] "siid": 18,
}, "piid": 18,
{ "friendlyName": "clean-task done",
"property": "button-led", "channel": "TaskDone",
"siid": 18, "channelType": "miot_uint8",
"piid": 17, "type": "Number",
"friendlyName": "clean-led", "refresh": true,
"channel": "ButtonLed", "actions": []
"channelType": "miot_uint16", },
"type": "String", {
"refresh": true, "property": "life-sieve",
"actions": [ "siid": 19,
] "piid": 1,
}, "friendlyName": "consumable-life-sieve",
{ "channel": "LifeSieve",
"property": "task-done", "channelType": "miot_string",
"siid": 18, "type": "String",
"piid": 18, "refresh": true,
"friendlyName": "clean-task done", "actions": [
"channel": "TaskDone", {
"channelType": "miot_uint8", "command": "set_properties",
"type": "Number", "parameterType": "STRING"
"refresh": true, }
"actions": [ ]
] },
}, {
{ "property": "life-brush-side",
"property": "life-sieve", "siid": 19,
"siid": 19, "piid": 2,
"piid": 1, "friendlyName": "consumable-life-brush-side",
"friendlyName": "consumable-life-sieve", "channel": "LifeBrushSide",
"channel": "LifeSieve", "channelType": "miot_string",
"channelType": "miot_string", "type": "String",
"type": "String", "refresh": true,
"refresh": true, "actions": [
"actions": [ {
{ "command": "set_properties",
"command": "set_properties", "parameterType": "STRING"
"parameterType": "STRING" }
} ]
] },
}, {
{ "property": "life-brush-main",
"property": "life-brush-side", "siid": 19,
"siid": 19, "piid": 3,
"piid": 2, "friendlyName": "consumable-life-brush-main",
"friendlyName": "consumable-life-brush-side", "channel": "LifeBrushMain",
"channel": "LifeBrushSide", "channelType": "miot_string",
"channelType": "miot_string", "type": "String",
"type": "String", "refresh": true,
"refresh": true, "actions": [
"actions": [ {
{ "command": "set_properties",
"command": "set_properties", "parameterType": "STRING"
"parameterType": "STRING" }
} ]
] },
}, {
{ "property": "enable",
"property": "life-brush-main", "siid": 20,
"siid": 19, "piid": 1,
"piid": 3, "friendlyName": "annoy-enable",
"friendlyName": "consumable-life-brush-main", "channel": "Enable",
"channel": "LifeBrushMain", "channelType": "miot_bool",
"channelType": "miot_string", "type": "Switch",
"type": "String", "refresh": true,
"refresh": true, "actions": [
"actions": [ {
{ "command": "set_properties",
"command": "set_properties", "parameterType": "ONOFFBOOL"
"parameterType": "STRING" }
} ]
] },
}, {
{ "property": "start-time",
"property": "enable", "siid": 20,
"siid": 20, "piid": 2,
"piid": 1, "friendlyName": "annoy-start-time",
"friendlyName": "annoy-enable", "channel": "StartTime",
"channel": "Enable", "channelType": "miot_string",
"channelType": "miot_bool", "type": "String",
"type": "Switch", "refresh": true,
"refresh": true, "actions": [
"actions": [ {
{ "command": "set_properties",
"command": "set_properties", "parameterType": "STRING"
"parameterType": "ONOFFBOOL" }
} ]
] },
}, {
{ "property": "stop-time",
"property": "start-time", "siid": 20,
"siid": 20, "piid": 3,
"piid": 2, "friendlyName": "annoy-stop-time",
"friendlyName": "annoy-start-time", "channel": "StopTime",
"channel": "StartTime", "channelType": "miot_string",
"channelType": "miot_string", "type": "String",
"type": "String", "refresh": true,
"refresh": true, "actions": [
"actions": [ {
{ "command": "set_properties",
"command": "set_properties", "parameterType": "STRING"
"parameterType": "STRING" }
} ]
] },
}, {
{ "property": "map-view",
"property": "stop-time", "siid": 23,
"siid": 20, "piid": 1,
"piid": 3, "friendlyName": "map-map-view",
"friendlyName": "annoy-stop-time", "channel": "MapView",
"channel": "StopTime", "channelType": "miot_string",
"channelType": "miot_string", "type": "String",
"type": "String", "refresh": true,
"refresh": true, "actions": []
"actions": [ },
{ {
"command": "set_properties", "property": "volume",
"parameterType": "STRING" "siid": 24,
} "piid": 1,
] "friendlyName": "audio-volume",
}, "channel": "Volume",
{ "channelType": "miot_int32",
"property": "map-view", "type": "Number",
"siid": 23, "refresh": true,
"piid": 1, "actions": [
"friendlyName": "map-map-view", {
"channel": "MapView", "command": "set_properties",
"channelType": "miot_string", "parameterType": "NUMBER"
"type": "String", }
"refresh": true, ]
"actions": [ },
] {
}, "property": "voice-packets",
{ "siid": 24,
"property": "volume", "piid": 3,
"siid": 24, "friendlyName": "audio-voiceId",
"piid": 1, "channel": "VoicePackets",
"friendlyName": "audio-volume", "channelType": "miot_string",
"channel": "Volume", "type": "String",
"channelType": "miot_int32", "refresh": true,
"type": "Number", "actions": [
"refresh": true, {
"actions": [ "command": "set_properties",
{ "parameterType": "STRING"
"command": "set_properties", }
"parameterType": "NUMBER" ]
} },
] {
}, "property": "time-zone",
{ "siid": 25,
"property": "voice-packets", "piid": 1,
"siid": 24, "friendlyName": "timezone",
"piid": 3, "channel": "TimeZone",
"friendlyName": "audio-voiceId", "channelType": "miot_string",
"channel": "VoicePackets", "type": "String",
"channelType": "miot_string", "refresh": true,
"type": "String", "actions": []
"refresh": true, }
"actions": [ ]
{ }
"command": "set_properties",
"parameterType": "STRING"
}
]
},
{
"property": "time-zone",
"siid": 25,
"piid": 1,
"friendlyName": "timezone",
"channel": "TimeZone",
"channelType": "miot_string",
"type": "String",
"refresh": true,
"actions": [
]
}
]
}
} }

View File

@ -13,6 +13,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -26,6 +27,7 @@
"property": "bright", "property": "bright",
"friendlyName": "Brightness", "friendlyName": "Brightness",
"channel": "brightness", "channel": "brightness",
"channelType": "brightness",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -49,6 +51,7 @@
"property": "cct", "property": "cct",
"friendlyName": "Correlated Color Temperature", "friendlyName": "Correlated Color Temperature",
"channel": "cct", "channel": "cct",
"channelType": "cct",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -62,6 +65,7 @@
"property": "snm", "property": "snm",
"friendlyName": "Scene", "friendlyName": "Scene",
"channel": "scene", "channel": "scene",
"channelType": "scene",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -75,6 +79,7 @@
"property": "dv", "property": "dv",
"friendlyName": "DV", "friendlyName": "DV",
"channel": "dv", "channel": "dv",
"channelType": "dv",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -136,6 +141,7 @@
"property": "", "property": "",
"friendlyName": "Delay Off", "friendlyName": "Delay Off",
"channel": "delayoff", "channel": "delayoff",
"channelType": "delayoff",
"type": "Switch", "type": "Switch",
"refresh": false, "refresh": false,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -160,6 +166,6 @@
] ]
} }
], ],
"experimental":true "experimental": true
} }
} }

View File

@ -13,6 +13,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -27,6 +28,7 @@
"property": "bright", "property": "bright",
"friendlyName": "Brightness", "friendlyName": "Brightness",
"channel": "brightness", "channel": "brightness",
"channelType": "brightness",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -51,6 +53,7 @@
"property": "cct", "property": "cct",
"friendlyName": "Correlated Color Temperature", "friendlyName": "Correlated Color Temperature",
"channel": "cct", "channel": "cct",
"channelType": "cct",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -65,6 +68,7 @@
"property": "snm", "property": "snm",
"friendlyName": "Scene", "friendlyName": "Scene",
"channel": "scene", "channel": "scene",
"channelType": "scene",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -79,6 +83,7 @@
"property": "dv", "property": "dv",
"friendlyName": "DV", "friendlyName": "DV",
"channel": "dv", "channel": "dv",
"channelType": "dv",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -106,6 +111,7 @@
"property": "", "property": "",
"friendlyName": "Delay Off", "friendlyName": "Delay Off",
"channel": "delayoff", "channel": "delayoff",
"channelType": "delayoff",
"type": "Switch", "type": "Switch",
"refresh": false, "refresh": false,
"ChannelGroup": "actions", "ChannelGroup": "actions",

View File

@ -9,6 +9,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -23,6 +24,7 @@
"property": "bright", "property": "bright",
"friendlyName": "Brightness", "friendlyName": "Brightness",
"channel": "brightness", "channel": "brightness",
"channelType": "brightness",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -47,6 +49,7 @@
"property": "cct", "property": "cct",
"friendlyName": "Correlated Color Temperature", "friendlyName": "Correlated Color Temperature",
"channel": "cct", "channel": "cct",
"channelType": "cct",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -61,6 +64,7 @@
"property": "snm", "property": "snm",
"friendlyName": "Scene", "friendlyName": "Scene",
"channel": "scene", "channel": "scene",
"channelType": "scene",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -75,6 +79,7 @@
"property": "", "property": "",
"friendlyName": "Delay Off", "friendlyName": "Delay Off",
"channel": "delayoff", "channel": "delayoff",
"channelType": "delayoff",
"type": "Switch", "type": "Switch",
"refresh": false, "refresh": false,
"ChannelGroup": "actions", "ChannelGroup": "actions",

View File

@ -0,0 +1,138 @@
{
"deviceMapping": {
"id": [
"philips.light.cbulb",
"philips.light.cbulbs",
"philips.light.dcolor"
],
"channels": [
{
"property": "power",
"friendlyName": "Power",
"channel": "power",
"channelType": "power",
"type": "Switch",
"refresh": true,
"ChannelGroup": "",
"actions": [
{
"command": "set_power",
"parameterType": "ONOFF"
}
]
},
{
"property": "bright",
"friendlyName": "Brightness",
"channel": "brightness",
"channelType": "brightness",
"type": "Dimmer",
"refresh": true,
"ChannelGroup": "actions",
"actions": [
{
"command": "set_bright",
"parameterType": "NUMBER",
"condition": {
"name": "BrightnessExisting"
}
},
{
"command": "set_power",
"parameterType": "ONOFF",
"condition": {
"name": "BrightnessOnOff"
}
}
]
},
{
"property": "cct",
"friendlyName": "Correlated Color Temperature",
"channel": "cct",
"channelType": "cct",
"type": "Dimmer",
"refresh": true,
"ChannelGroup": "actions",
"actions": [
{
"command": "set_cct",
"parameterType": "NUMBER"
}
]
},
{
"property": "snm",
"friendlyName": "Scene",
"channel": "scene",
"channelType": "scene",
"type": "Number",
"refresh": true,
"ChannelGroup": "actions",
"actions": [
{
"command": "apply_scene",
"parameterType": "NUMBER"
}
]
},
{
"property": "cid",
"friendlyName": "Color",
"channel": "cid",
"type": "Color",
"refresh": true,
"ChannelGroup": "actions",
"actions": [
{
"command": "set_cid",
"parameterType": "COLOR"
}
]
},
{
"property": "",
"friendlyName": "Switch Scene",
"channel": "switchscene",
"type": "Switch",
"refresh": false,
"ChannelGroup": "actions",
"actions": [
{
"command": "switch_the_scene",
"parameterType": "EMPTY"
}
]
},
{
"property": "get_switch_en",
"friendlyName": "Switch Enabled",
"channel": "switch_en",
"type": "Switch",
"refresh": false,
"ChannelGroup": "actions",
"actions": [
{
"command": "set_switch_en",
"parameterType": "NUMBER"
}
]
},
{
"property": "",
"friendlyName": "Delay Off",
"channel": "delayoff",
"channelType": "delayoff",
"type": "Switch",
"refresh": false,
"ChannelGroup": "actions",
"actions": [
{
"command": "delay_off",
"parameterType": "NUMBER"
}
]
}
]
}
}

View File

@ -9,6 +9,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -23,6 +24,7 @@
"property": "bright", "property": "bright",
"friendlyName": "Brightness", "friendlyName": "Brightness",
"channel": "brightness", "channel": "brightness",
"channelType": "brightness",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -47,6 +49,7 @@
"property": "cct", "property": "cct",
"friendlyName": "Correlated Color Temperature", "friendlyName": "Correlated Color Temperature",
"channel": "cct", "channel": "cct",
"channelType": "cct",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -61,6 +64,7 @@
"property": "snm", "property": "snm",
"friendlyName": "Scene", "friendlyName": "Scene",
"channel": "scene", "channel": "scene",
"channelType": "scene",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",

View File

@ -8,6 +8,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -22,6 +23,7 @@
"property": "bright", "property": "bright",
"friendlyName": "Brightness", "friendlyName": "Brightness",
"channel": "brightness", "channel": "brightness",
"channelType": "brightness",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -46,6 +48,7 @@
"property": "scene_num", "property": "scene_num",
"friendlyName": "Scene", "friendlyName": "Scene",
"channel": "scene", "channel": "scene",
"channelType": "scene",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",

View File

@ -8,6 +8,7 @@
"property": "pow", "property": "pow",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -22,6 +23,7 @@
"property": "bright", "property": "bright",
"friendlyName": "Brightness", "friendlyName": "Brightness",
"channel": "brightness", "channel": "brightness",
"channelType": "brightness",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -46,6 +48,7 @@
"property": "cct", "property": "cct",
"friendlyName": "Correlated Color Temperature", "friendlyName": "Correlated Color Temperature",
"channel": "cct", "channel": "cct",
"channelType": "cct",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -60,6 +63,7 @@
"property": "snm", "property": "snm",
"friendlyName": "Scene", "friendlyName": "Scene",
"channel": "scene", "channel": "scene",
"channelType": "scene",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -74,6 +78,7 @@
"property": "dv", "property": "dv",
"friendlyName": "DV", "friendlyName": "DV",
"channel": "dv", "channel": "dv",
"channelType": "dv",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -87,6 +92,7 @@
"property": "", "property": "",
"friendlyName": "Go Night", "friendlyName": "Go Night",
"channel": "gonight", "channel": "gonight",
"channelType": "gonight",
"type": "Switch", "type": "Switch",
"refresh": false, "refresh": false,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -101,6 +107,7 @@
"property": "", "property": "",
"friendlyName": "Delay Off", "friendlyName": "Delay Off",
"channel": "delayoff", "channel": "delayoff",
"channelType": "delayoff",
"type": "Switch", "type": "Switch",
"refresh": false, "refresh": false,
"ChannelGroup": "actions", "ChannelGroup": "actions",

View File

@ -0,0 +1,91 @@
{
"deviceMapping": {
"id": [
"philips.light.rwread"
],
"channels": [
{
"property": "power",
"friendlyName": "Power",
"channel": "power",
"channelType": "power",
"type": "Switch",
"refresh": true,
"ChannelGroup": "",
"actions": [
{
"command": "set_power",
"parameterType": "ONOFF"
}
]
},
{
"property": "bright",
"friendlyName": "Brightness",
"channel": "brightness",
"channelType": "brightness",
"type": "Dimmer",
"refresh": true,
"ChannelGroup": "actions",
"actions": [
{
"command": "set_bright",
"parameterType": "NUMBER",
"condition": {
"name": "BrightnessExisting"
}
},
{
"command": "set_power",
"parameterType": "ONOFF",
"condition": {
"name": "BrightnessOnOff"
}
}
]
},
{
"property": "snm",
"friendlyName": "Scene",
"channel": "scene",
"channelType": "scene",
"type": "Number",
"refresh": true,
"ChannelGroup": "actions",
"actions": [
{
"command": "apply_scene",
"parameterType": "NUMBER"
}
]
},
{
"property": "flm",
"friendlyName": "Follow Me",
"channel": "flm",
"type": "Number",
"refresh": true,
"actions": [
{
"command": "set_flmvalue",
"parameterType": "NUMBER"
}
]
},
{
"property": "dv",
"friendlyName": "DV",
"channel": "dv",
"channelType": "dv",
"type": "Number",
"refresh": true,
"ChannelGroup": "actions",
"actions": [
{
"parameterType": "EMPTY"
}
]
}
]
}
}

View File

@ -8,6 +8,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -22,6 +23,7 @@
"property": "bright", "property": "bright",
"friendlyName": "Brightness", "friendlyName": "Brightness",
"channel": "brightness", "channel": "brightness",
"channelType": "brightness",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -46,6 +48,7 @@
"property": "ambstatus", "property": "ambstatus",
"friendlyName": "Ambient Power", "friendlyName": "Ambient Power",
"channel": "ambientPower", "channel": "ambientPower",
"channelType": "ambientPower",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -60,6 +63,7 @@
"property": "ambvalue", "property": "ambvalue",
"friendlyName": "Ambient Brightness", "friendlyName": "Ambient Brightness",
"channel": "ambientBrightness", "channel": "ambientBrightness",
"channelType": "ambientBrightness",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -74,6 +78,7 @@
"property": "dvalue", "property": "dvalue",
"friendlyName": "Ambient Illumination", "friendlyName": "Ambient Illumination",
"channel": "illumination", "channel": "illumination",
"channelType": "illumination",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -83,6 +88,7 @@
"property": "eyecare", "property": "eyecare",
"friendlyName": "Eyecare", "friendlyName": "Eyecare",
"channel": "eyecare", "channel": "eyecare",
"channelType": "eyecare",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",

View File

@ -1,182 +1,178 @@
{ {
"deviceMapping": { "deviceMapping": {
"id": [ "id": [
"viomi.vacuum.v6", "viomi.vacuum.v6",
"viomi.vacuum.v7", "viomi.vacuum.v7",
"viomi.vacuum.v8" "viomi.vacuum.v8"
], ],
"channels": [ "channels": [
{ {
"property": "", "property": "",
"friendlyName": "Vacuum Action", "friendlyName": "Vacuum Action",
"channel": "vacuumaction", "channel": "vacuumaction",
"channelType": "vacuumaction", "channelType": "vacuumaction",
"type": "Number", "type": "Number",
"refresh": false, "refresh": false,
"actions": [ "actions": [
{ {
"command": "set_mode_withroom", "command": "set_mode_withroom",
"parameterType": "NUMBER", "parameterType": "NUMBER",
"parameters": [ "parameters": [
0, 0,
"$value$", "$value$",
0 0
] ]
} }
] ]
}, },
{ {
"property": "run_state", "property": "run_state",
"friendlyName": "State", "friendlyName": "State",
"channel": "state", "channel": "state",
"type": "Number", "channelType": "state",
"refresh": true, "type": "Number",
"actions": [ "refresh": true,
] "actions": []
}, },
{ {
"property": "mode", "property": "mode",
"friendlyName": "Mode", "friendlyName": "Mode",
"channel": "mode", "channel": "mode",
"type": "Number", "channelType": "mode",
"refresh": true, "type": "Number",
"actions": [ "refresh": true,
{ "actions": [
"command": "set_mode", {
"parameterType": "NUMBER" "command": "set_mode",
} "parameterType": "NUMBER"
] }
}, ]
{ },
"property": "err_state", {
"friendlyName": "Error", "property": "err_state",
"channel": "err_state", "friendlyName": "Error",
"type": "Number", "channel": "err_state",
"refresh": true, "type": "Number",
"actions": [ "refresh": true,
] "actions": []
}, },
{ {
"property": "battery_life", "property": "battery_life",
"friendlyName": "Battery", "friendlyName": "Battery",
"channel": "battery_life", "channel": "battery_life",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"actions": [ "actions": []
] },
}, {
{ "property": "box_type",
"property": "box_type", "friendlyName": "Box type",
"friendlyName": "Box type", "channel": "box_type",
"channel": "box_type", "type": "Number",
"type": "Number", "refresh": true,
"refresh": true, "actions": [
"actions": [ {
{ "parameterType": "EMPTY"
} }
] ]
}, },
{ {
"property": "mop_type", "property": "mop_type",
"friendlyName": "mop_type", "friendlyName": "mop_type",
"channel": "mop_type", "channel": "mop_type",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"actions": [ "actions": [
{ {
"command": "set_mode", "command": "set_mode",
"parameterType": "NUMBER" "parameterType": "NUMBER"
} }
] ]
}, },
{ {
"property": "s_time", "property": "s_time",
"friendlyName": "Clean time", "friendlyName": "Clean time",
"channel": "s_time", "channel": "s_time",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"actions": [ "actions": [
{ {
"command": "set_mode", "command": "set_mode",
"parameterType": "NUMBER" "parameterType": "NUMBER"
} }
] ]
}, },
{ {
"property": "s_area", "property": "s_area",
"friendlyName": "Clean Area", "friendlyName": "Clean Area",
"channel": "s_area", "channel": "s_area",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"actions": [ "actions": [
{ {
"command": "set_mode", "command": "set_mode",
"parameterType": "NUMBER" "parameterType": "NUMBER"
} }
] ]
}, },
{ {
"property": "suction_grade", "property": "suction_grade",
"friendlyName": "suction_grade", "friendlyName": "suction_grade",
"channel": "suction_grade", "channel": "suction_grade",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"actions": [ "actions": [
{ {
"command": "set_suction", "command": "set_suction",
"parameterType": "NUMBER" "parameterType": "NUMBER"
} }
] ]
}, },
{ {
"property": "water_grade", "property": "water_grade",
"friendlyName": "water_grade", "friendlyName": "water_grade",
"channel": "water_grade", "channel": "water_grade",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"actions": [ "actions": [
{ {
"command": "set_suction", "command": "set_suction",
"parameterType": "NUMBER" "parameterType": "NUMBER"
} }
] ]
}, },
{ {
"property": "remember_map", "property": "remember_map",
"friendlyName": "remember_map", "friendlyName": "remember_map",
"channel": "remember_map", "channel": "remember_map",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"actions": [ "actions": []
] },
}, {
{ "property": "has_map",
"property": "has_map", "friendlyName": "has_map",
"friendlyName": "has_map", "channel": "has_map",
"channel": "has_map", "type": "Number",
"type": "Number", "refresh": true,
"refresh": true, "actions": []
"actions": [ },
] {
}, "property": "is_mop",
{ "friendlyName": "is_mop",
"property": "is_mop", "channel": "is_mop",
"friendlyName": "is_mop", "type": "Number",
"channel": "is_mop", "refresh": true,
"type": "Number", "actions": []
"refresh": true, },
"actions": [ {
] "property": "has_newmap",
}, "friendlyName": "has_newmap",
{ "channel": "has_newmap",
"property": "has_newmap", "type": "Number",
"friendlyName": "has_newmap", "refresh": true,
"channel": "has_newmap", "actions": []
"type": "Number", }
"refresh": true, ]
"actions": [ }
]
}
]
}
} }

View File

@ -55,19 +55,19 @@
} }
] ]
}, },
{ {
"property": "status_led", "property": "status_led",
"friendlyName": "Night Light", "friendlyName": "Night Light",
"channel": "status_led", "channel": "status_led",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"actions": [ "actions": [
{ {
"command": "work_night_led", "command": "work_night_led",
"parameterType": "NUMBER" "parameterType": "NUMBER"
} }
] ]
} }
], ],
"experimental": true "experimental": true
} }

View File

@ -9,6 +9,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -37,6 +38,7 @@
"property": "bright", "property": "bright",
"friendlyName": "Brightness", "friendlyName": "Brightness",
"channel": "brightness", "channel": "brightness",
"channelType": "brightness",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -61,6 +63,7 @@
"property": "delayoff", "property": "delayoff",
"friendlyName": "Shutdown Timer", "friendlyName": "Shutdown Timer",
"channel": "delayoff", "channel": "delayoff",
"channelType": "delayoff",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -79,6 +82,7 @@
"property": "temperature", "property": "temperature",
"friendlyName": "Temperature", "friendlyName": "Temperature",
"channel": "temperature", "channel": "temperature",
"channelType": "temperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -88,6 +92,7 @@
"property": "nl_br", "property": "nl_br",
"friendlyName": "Nightlight Brightness", "friendlyName": "Nightlight Brightness",
"channel": "nightlightBrightness", "channel": "nightlightBrightness",
"channelType": "nightlightBrightness",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",

View File

@ -34,6 +34,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -48,6 +49,7 @@
"property": "bright", "property": "bright",
"friendlyName": "Brightness", "friendlyName": "Brightness",
"channel": "brightness", "channel": "brightness",
"channelType": "brightness",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -72,6 +74,7 @@
"property": "delayoff", "property": "delayoff",
"friendlyName": "Shutdown Timer", "friendlyName": "Shutdown Timer",
"channel": "delayoff", "channel": "delayoff",
"channelType": "delayoff",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -90,6 +93,7 @@
"property": "ct", "property": "ct",
"friendlyName": "Color Temperature", "friendlyName": "Color Temperature",
"channel": "colorTemperature", "channel": "colorTemperature",
"channelType": "colorTemperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -109,6 +113,7 @@
"property": "color_mode", "property": "color_mode",
"friendlyName": "Color Mode", "friendlyName": "Color Mode",
"channel": "colorMode", "channel": "colorMode",
"channelType": "colorMode",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -132,6 +137,7 @@
"property": "", "property": "",
"friendlyName": "Set Scene", "friendlyName": "Set Scene",
"channel": "customScene", "channel": "customScene",
"channelType": "customScene",
"type": "String", "type": "String",
"refresh": false, "refresh": false,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -146,6 +152,7 @@
"property": "nl_br", "property": "nl_br",
"friendlyName": "Nightlight Brightness", "friendlyName": "Nightlight Brightness",
"channel": "nightlightBrightness", "channel": "nightlightBrightness",
"channelType": "nightlightBrightness",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",

View File

@ -9,6 +9,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -23,6 +24,7 @@
"property": "bright", "property": "bright",
"friendlyName": "Brightness", "friendlyName": "Brightness",
"channel": "brightness", "channel": "brightness",
"channelType": "brightness",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -47,6 +49,7 @@
"property": "delayoff", "property": "delayoff",
"friendlyName": "Shutdown Timer", "friendlyName": "Shutdown Timer",
"channel": "delayoff", "channel": "delayoff",
"channelType": "delayoff",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -65,6 +68,7 @@
"property": "ct", "property": "ct",
"friendlyName": "Color Temperature", "friendlyName": "Color Temperature",
"channel": "colorTemperature", "channel": "colorTemperature",
"channelType": "colorTemperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -84,6 +88,7 @@
"property": "color_mode", "property": "color_mode",
"friendlyName": "Color Mode", "friendlyName": "Color Mode",
"channel": "colorMode", "channel": "colorMode",
"channelType": "colorMode",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -107,6 +112,7 @@
"property": "", "property": "",
"friendlyName": "Set Scene", "friendlyName": "Set Scene",
"channel": "customScene", "channel": "customScene",
"channelType": "customScene",
"type": "String", "type": "String",
"refresh": false, "refresh": false,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -121,6 +127,7 @@
"property": "nl_br", "property": "nl_br",
"friendlyName": "Nightlight Brightness", "friendlyName": "Nightlight Brightness",
"channel": "nightlightBrightness", "channel": "nightlightBrightness",
"channelType": "nightlightBrightness",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",

View File

@ -10,6 +10,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -24,6 +25,7 @@
"property": "bright", "property": "bright",
"friendlyName": "Brightness", "friendlyName": "Brightness",
"channel": "brightness", "channel": "brightness",
"channelType": "brightness",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -48,6 +50,7 @@
"property": "bg_bright", "property": "bg_bright",
"friendlyName": "Ambient Brightness", "friendlyName": "Ambient Brightness",
"channel": "ambientBrightness", "channel": "ambientBrightness",
"channelType": "ambientBrightness",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -62,6 +65,7 @@
"property": "delayoff", "property": "delayoff",
"friendlyName": "Shutdown Timer", "friendlyName": "Shutdown Timer",
"channel": "delayoff", "channel": "delayoff",
"channelType": "delayoff",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -80,6 +84,7 @@
"property": "ct", "property": "ct",
"friendlyName": "Color Temperature", "friendlyName": "Color Temperature",
"channel": "colorTemperature", "channel": "colorTemperature",
"channelType": "colorTemperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -99,6 +104,7 @@
"property": "color_mode", "property": "color_mode",
"friendlyName": "Color Mode", "friendlyName": "Color Mode",
"channel": "colorMode", "channel": "colorMode",
"channelType": "colorMode",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -122,6 +128,7 @@
"property": "bg_power", "property": "bg_power",
"friendlyName": "Ambient Power", "friendlyName": "Ambient Power",
"channel": "ambientPower", "channel": "ambientPower",
"channelType": "ambientPower",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -136,6 +143,7 @@
"property": "bg_rgb", "property": "bg_rgb",
"friendlyName": "Ambient Color", "friendlyName": "Ambient Color",
"channel": "ambientColor", "channel": "ambientColor",
"channelType": "ambientColor",
"type": "Color", "type": "Color",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -150,6 +158,7 @@
"property": "bg_ct", "property": "bg_ct",
"friendlyName": "Ambient Color Temperature", "friendlyName": "Ambient Color Temperature",
"channel": "ambientColorTemperature", "channel": "ambientColorTemperature",
"channelType": "ambientColorTemperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -157,8 +166,6 @@
{ {
"command": "bg_set_ct_abx", "command": "bg_set_ct_abx",
"parameterType": "NUMBER", "parameterType": "NUMBER",
"parameter1": "\"smooth\"",
"parameter2": "500",
"parameters": [ "parameters": [
"$value$", "$value$",
"smooth", "smooth",
@ -171,6 +178,7 @@
"property": "", "property": "",
"friendlyName": "Set Scene", "friendlyName": "Set Scene",
"channel": "customScene", "channel": "customScene",
"channelType": "customScene",
"type": "String", "type": "String",
"refresh": false, "refresh": false,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -185,6 +193,7 @@
"property": "bg_lmode", "property": "bg_lmode",
"friendlyName": "Ambient Color Mode", "friendlyName": "Ambient Color Mode",
"channel": "ambientColorMode", "channel": "ambientColorMode",
"channelType": "ambientColorMode",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -194,6 +203,7 @@
"property": "nl_br", "property": "nl_br",
"friendlyName": "Nightlight Brightness", "friendlyName": "Nightlight Brightness",
"channel": "nightlightBrightness", "channel": "nightlightBrightness",
"channelType": "nightlightBrightness",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",

View File

@ -17,6 +17,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -31,6 +32,7 @@
"property": "bright", "property": "bright",
"friendlyName": "Brightness", "friendlyName": "Brightness",
"channel": "brightness", "channel": "brightness",
"channelType": "brightness",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -55,6 +57,7 @@
"property": "delayoff", "property": "delayoff",
"friendlyName": "Shutdown Timer", "friendlyName": "Shutdown Timer",
"channel": "delayoff", "channel": "delayoff",
"channelType": "delayoff",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -73,6 +76,7 @@
"property": "ct", "property": "ct",
"friendlyName": "Color Temperature", "friendlyName": "Color Temperature",
"channel": "colorTemperature", "channel": "colorTemperature",
"channelType": "colorTemperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -92,6 +96,7 @@
"property": "color_mode", "property": "color_mode",
"friendlyName": "Color Mode", "friendlyName": "Color Mode",
"channel": "colorMode", "channel": "colorMode",
"channelType": "colorMode",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -122,14 +127,14 @@
{ {
"command": "set_rgb", "command": "set_rgb",
"parameterType": "COLOR", "parameterType": "COLOR",
"condition": {
"name": "HSBOnly"
},
"parameters": [ "parameters": [
"$value$", "$value$",
"smooth", "smooth",
500 500
] ],
"condition": {
"name": "HSBOnly"
}
}, },
{ {
"command": "set_bright", "command": "set_bright",

View File

@ -22,6 +22,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -36,6 +37,7 @@
"property": "bright", "property": "bright",
"friendlyName": "Brightness", "friendlyName": "Brightness",
"channel": "brightness", "channel": "brightness",
"channelType": "brightness",
"type": "Dimmer", "type": "Dimmer",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -60,6 +62,7 @@
"property": "delayoff", "property": "delayoff",
"friendlyName": "Shutdown Timer", "friendlyName": "Shutdown Timer",
"channel": "delayoff", "channel": "delayoff",
"channelType": "delayoff",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -78,6 +81,7 @@
"property": "ct", "property": "ct",
"friendlyName": "Color Temperature", "friendlyName": "Color Temperature",
"channel": "colorTemperature", "channel": "colorTemperature",
"channelType": "colorTemperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -97,6 +101,7 @@
"property": "color_mode", "property": "color_mode",
"friendlyName": "Color Mode", "friendlyName": "Color Mode",
"channel": "colorMode", "channel": "colorMode",
"channelType": "colorMode",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",

View File

@ -22,6 +22,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -43,6 +44,7 @@
"property": "temperature", "property": "temperature",
"friendlyName": "Temperature", "friendlyName": "Temperature",
"channel": "temperature", "channel": "temperature",
"channelType": "temperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"actions": [] "actions": []

View File

@ -8,6 +8,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -22,6 +23,7 @@
"property": "aqi", "property": "aqi",
"friendlyName": "Air Quality Index", "friendlyName": "Air Quality Index",
"channel": "aqi", "channel": "aqi",
"channelType": "aqi",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",

View File

@ -19,6 +19,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -32,6 +33,7 @@
"property": "mode", "property": "mode",
"friendlyName": "Mode", "friendlyName": "Mode",
"channel": "mode", "channel": "mode",
"channelType": "mode",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -46,6 +48,7 @@
"property": "humidity", "property": "humidity",
"friendlyName": "Humidity", "friendlyName": "Humidity",
"channel": "humidity", "channel": "humidity",
"channelType": "humidity",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -55,6 +58,7 @@
"property": "aqi", "property": "aqi",
"friendlyName": "Air Quality Index", "friendlyName": "Air Quality Index",
"channel": "aqi", "channel": "aqi",
"channelType": "aqi",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -64,6 +68,7 @@
"property": "average_aqi", "property": "average_aqi",
"friendlyName": "Average Air Quality Index", "friendlyName": "Average Air Quality Index",
"channel": "averageaqi", "channel": "averageaqi",
"channelType": "averageaqi",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -73,6 +78,7 @@
"property": "led", "property": "led",
"friendlyName": "LED Status", "friendlyName": "LED Status",
"channel": "led", "channel": "led",
"channelType": "led",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -87,6 +93,7 @@
"property": "buzzer", "property": "buzzer",
"friendlyName": "Buzzer Status", "friendlyName": "Buzzer Status",
"channel": "buzzer", "channel": "buzzer",
"channelType": "buzzer",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -101,6 +108,7 @@
"property": "f1_hour", "property": "f1_hour",
"friendlyName": "Filter Max Life", "friendlyName": "Filter Max Life",
"channel": "filtermaxlife", "channel": "filtermaxlife",
"channelType": "filtermaxlife",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -110,6 +118,7 @@
"property": "f1_hour_used", "property": "f1_hour_used",
"friendlyName": "Filter Hours used", "friendlyName": "Filter Hours used",
"channel": "filterhours", "channel": "filterhours",
"channelType": "filterhours",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"transformation": "SecondsToHours", "transformation": "SecondsToHours",
@ -120,6 +129,7 @@
"property": "use_time", "property": "use_time",
"friendlyName": "Run Time", "friendlyName": "Run Time",
"channel": "usedhours", "channel": "usedhours",
"channelType": "usedhours",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"transformation": "SecondsToHours", "transformation": "SecondsToHours",
@ -130,6 +140,7 @@
"property": "motor1_speed", "property": "motor1_speed",
"friendlyName": "Motor Speed", "friendlyName": "Motor Speed",
"channel": "motorspeed", "channel": "motorspeed",
"channelType": "motorspeed",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -148,6 +159,7 @@
"property": "favorite_level", "property": "favorite_level",
"friendlyName": "Favorite Level", "friendlyName": "Favorite Level",
"channel": "favoritelevel", "channel": "favoritelevel",
"channelType": "favoritelevel",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -162,6 +174,7 @@
"property": "temp_dec", "property": "temp_dec",
"friendlyName": "Temperature", "friendlyName": "Temperature",
"channel": "temperature", "channel": "temperature",
"channelType": "temperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"transformation": "/10", "transformation": "/10",
@ -172,6 +185,7 @@
"property": "purify_volume", "property": "purify_volume",
"friendlyName": "Purivied Volume", "friendlyName": "Purivied Volume",
"channel": "purifyvolume", "channel": "purifyvolume",
"channelType": "purifyvolume",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -181,6 +195,7 @@
"property": "child_lock", "property": "child_lock",
"friendlyName": "Child Lock", "friendlyName": "Child Lock",
"channel": "childlock", "channel": "childlock",
"channelType": "childlock",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",

View File

@ -8,6 +8,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -21,6 +22,7 @@
"property": "mode", "property": "mode",
"friendlyName": "Mode", "friendlyName": "Mode",
"channel": "mode", "channel": "mode",
"channelType": "mode",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -35,6 +37,7 @@
"property": "humidity", "property": "humidity",
"friendlyName": "Humidity", "friendlyName": "Humidity",
"channel": "humidity", "channel": "humidity",
"channelType": "humidity",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -44,6 +47,7 @@
"property": "aqi", "property": "aqi",
"friendlyName": "Air Quality Index", "friendlyName": "Air Quality Index",
"channel": "aqi", "channel": "aqi",
"channelType": "aqi",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -53,6 +57,7 @@
"property": "bright", "property": "bright",
"friendlyName": "Brightness", "friendlyName": "Brightness",
"channel": "brightness", "channel": "brightness",
"channelType": "brightness",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -67,6 +72,7 @@
"property": "led", "property": "led",
"friendlyName": "LED Status", "friendlyName": "LED Status",
"channel": "led", "channel": "led",
"channelType": "led",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -81,6 +87,7 @@
"property": "act_det", "property": "act_det",
"friendlyName": "Air AutoDetect", "friendlyName": "Air AutoDetect",
"channel": "act_det", "channel": "act_det",
"channelType": "act_det",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -90,6 +97,7 @@
"property": "buzzer", "property": "buzzer",
"friendlyName": "Buzzer Status", "friendlyName": "Buzzer Status",
"channel": "buzzer", "channel": "buzzer",
"channelType": "buzzer",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -104,6 +112,7 @@
"property": "f1_hour", "property": "f1_hour",
"friendlyName": "Filter Max Life", "friendlyName": "Filter Max Life",
"channel": "filtermaxlife", "channel": "filtermaxlife",
"channelType": "filtermaxlife",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -113,6 +122,7 @@
"property": "filter1_life", "property": "filter1_life",
"friendlyName": "Filter Life", "friendlyName": "Filter Life",
"channel": "filterlive", "channel": "filterlive",
"channelType": "filterlive",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",

View File

@ -9,6 +9,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -22,6 +23,7 @@
"property": "mode", "property": "mode",
"friendlyName": "Mode", "friendlyName": "Mode",
"channel": "mode", "channel": "mode",
"channelType": "mode",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -36,6 +38,7 @@
"property": "humidity", "property": "humidity",
"friendlyName": "Humidity", "friendlyName": "Humidity",
"channel": "humidity", "channel": "humidity",
"channelType": "humidity",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -45,6 +48,7 @@
"property": "aqi", "property": "aqi",
"friendlyName": "Air Quality Index", "friendlyName": "Air Quality Index",
"channel": "aqi", "channel": "aqi",
"channelType": "aqi",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -54,6 +58,7 @@
"property": "average_aqi", "property": "average_aqi",
"friendlyName": "Average Air Quality Index", "friendlyName": "Average Air Quality Index",
"channel": "averageaqi", "channel": "averageaqi",
"channelType": "averageaqi",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -63,6 +68,7 @@
"property": "led", "property": "led",
"friendlyName": "LED Status", "friendlyName": "LED Status",
"channel": "led", "channel": "led",
"channelType": "led",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -91,6 +97,7 @@
"property": "f1_hour", "property": "f1_hour",
"friendlyName": "Filter Max Life", "friendlyName": "Filter Max Life",
"channel": "filtermaxlife", "channel": "filtermaxlife",
"channelType": "filtermaxlife",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -100,6 +107,7 @@
"property": "f1_hour_used", "property": "f1_hour_used",
"friendlyName": "Filter Hours used", "friendlyName": "Filter Hours used",
"channel": "filterhours", "channel": "filterhours",
"channelType": "filterhours",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"transformation": "SecondsToHours", "transformation": "SecondsToHours",
@ -110,6 +118,7 @@
"property": "use_time", "property": "use_time",
"friendlyName": "Run Time", "friendlyName": "Run Time",
"channel": "usedhours", "channel": "usedhours",
"channelType": "usedhours",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"transformation": "SecondsToHours", "transformation": "SecondsToHours",
@ -120,6 +129,7 @@
"property": "motor1_speed", "property": "motor1_speed",
"friendlyName": "Motor Speed", "friendlyName": "Motor Speed",
"channel": "motorspeed", "channel": "motorspeed",
"channelType": "motorspeed",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -138,6 +148,7 @@
"property": "favorite_level", "property": "favorite_level",
"friendlyName": "Favorite Level", "friendlyName": "Favorite Level",
"channel": "favoritelevel", "channel": "favoritelevel",
"channelType": "favoritelevel",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -152,6 +163,7 @@
"property": "temp_dec", "property": "temp_dec",
"friendlyName": "Temperature", "friendlyName": "Temperature",
"channel": "temperature", "channel": "temperature",
"channelType": "temperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"transformation": "/10", "transformation": "/10",
@ -162,6 +174,7 @@
"property": "purify_volume", "property": "purify_volume",
"friendlyName": "Purivied Volume", "friendlyName": "Purivied Volume",
"channel": "purifyvolume", "channel": "purifyvolume",
"channelType": "purifyvolume",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -171,6 +184,7 @@
"property": "child_lock", "property": "child_lock",
"friendlyName": "Child Lock", "friendlyName": "Child Lock",
"channel": "childlock", "channel": "childlock",
"channelType": "childlock",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",

View File

@ -8,6 +8,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -21,6 +22,7 @@
"property": "mode", "property": "mode",
"friendlyName": "Mode", "friendlyName": "Mode",
"channel": "mode", "channel": "mode",
"channelType": "mode",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -35,6 +37,7 @@
"property": "humidity", "property": "humidity",
"friendlyName": "Humidity", "friendlyName": "Humidity",
"channel": "humidity", "channel": "humidity",
"channelType": "humidity",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -44,6 +47,7 @@
"property": "aqi", "property": "aqi",
"friendlyName": "Air Quality Index", "friendlyName": "Air Quality Index",
"channel": "aqi", "channel": "aqi",
"channelType": "aqi",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -53,6 +57,7 @@
"property": "average_aqi", "property": "average_aqi",
"friendlyName": "Average Air Quality Index", "friendlyName": "Average Air Quality Index",
"channel": "averageaqi", "channel": "averageaqi",
"channelType": "averageaqi",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -71,6 +76,7 @@
"property": "led", "property": "led",
"friendlyName": "LED Status", "friendlyName": "LED Status",
"channel": "led", "channel": "led",
"channelType": "led",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -94,6 +100,7 @@
"property": "f1_hour", "property": "f1_hour",
"friendlyName": "Filter Max Life", "friendlyName": "Filter Max Life",
"channel": "filtermaxlife", "channel": "filtermaxlife",
"channelType": "filtermaxlife",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -103,6 +110,7 @@
"property": "f1_hour_used", "property": "f1_hour_used",
"friendlyName": "Filter Hours used", "friendlyName": "Filter Hours used",
"channel": "filterhours", "channel": "filterhours",
"channelType": "filterhours",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"transformation": "SecondsToHours", "transformation": "SecondsToHours",
@ -113,6 +121,7 @@
"property": "motor1_speed", "property": "motor1_speed",
"friendlyName": "Motor Speed", "friendlyName": "Motor Speed",
"channel": "motorspeed", "channel": "motorspeed",
"channelType": "motorspeed",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -140,6 +149,7 @@
"property": "favorite_level", "property": "favorite_level",
"friendlyName": "Favorite Level", "friendlyName": "Favorite Level",
"channel": "favoritelevel", "channel": "favoritelevel",
"channelType": "favoritelevel",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -154,6 +164,7 @@
"property": "temp_dec", "property": "temp_dec",
"friendlyName": "Temperature", "friendlyName": "Temperature",
"channel": "temperature", "channel": "temperature",
"channelType": "temperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"transformation": "/10", "transformation": "/10",
@ -164,6 +175,7 @@
"property": "child_lock", "property": "child_lock",
"friendlyName": "Child Lock", "friendlyName": "Child Lock",
"channel": "childlock", "channel": "childlock",
"channelType": "childlock",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",

View File

@ -9,6 +9,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -22,6 +23,7 @@
"property": "angle_enable", "property": "angle_enable",
"friendlyName": "Rotation", "friendlyName": "Rotation",
"channel": "angleEnable", "channel": "angleEnable",
"channelType": "angleEnable",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -35,6 +37,7 @@
"property": "use_time", "property": "use_time",
"friendlyName": "Run Time", "friendlyName": "Run Time",
"channel": "usedhours", "channel": "usedhours",
"channelType": "usedhours",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"transformation": "SecondsToHours", "transformation": "SecondsToHours",
@ -45,6 +48,7 @@
"property": "angle", "property": "angle",
"friendlyName": "Angle", "friendlyName": "Angle",
"channel": "angle", "channel": "angle",
"channelType": "angle",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -59,6 +63,7 @@
"property": "poweroff_time", "property": "poweroff_time",
"friendlyName": "Timer", "friendlyName": "Timer",
"channel": "poweroffTime", "channel": "poweroffTime",
"channelType": "poweroffTime",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -73,6 +78,7 @@
"property": "buzzer", "property": "buzzer",
"friendlyName": "Buzzer", "friendlyName": "Buzzer",
"channel": "buzzer", "channel": "buzzer",
"channelType": "buzzer",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -115,6 +121,7 @@
"property": "speed_level", "property": "speed_level",
"friendlyName": "Speed Level", "friendlyName": "Speed Level",
"channel": "speedLevel", "channel": "speedLevel",
"channelType": "speedLevel",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -129,6 +136,7 @@
"property": "speed", "property": "speed",
"friendlyName": "Speed", "friendlyName": "Speed",
"channel": "speed", "channel": "speed",
"channelType": "speed",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -143,6 +151,7 @@
"property": "natural_level", "property": "natural_level",
"friendlyName": "Natural Level", "friendlyName": "Natural Level",
"channel": "naturalLevel", "channel": "naturalLevel",
"channelType": "naturalLevel",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -157,6 +166,7 @@
"property": "ac_power", "property": "ac_power",
"friendlyName": "AC Power", "friendlyName": "AC Power",
"channel": "acPower", "channel": "acPower",
"channelType": "acPower",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -166,6 +176,7 @@
"property": "", "property": "",
"friendlyName": "Move Direction", "friendlyName": "Move Direction",
"channel": "move", "channel": "move",
"channelType": "move",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",

View File

@ -10,6 +10,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -23,6 +24,7 @@
"property": "angle_enable", "property": "angle_enable",
"friendlyName": "Rotation", "friendlyName": "Rotation",
"channel": "angleEnable", "channel": "angleEnable",
"channelType": "angleEnable",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -36,6 +38,7 @@
"property": "use_time", "property": "use_time",
"friendlyName": "Run Time", "friendlyName": "Run Time",
"channel": "usedhours", "channel": "usedhours",
"channelType": "usedhours",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"transformation": "SecondsToHours", "transformation": "SecondsToHours",
@ -46,6 +49,7 @@
"property": "angle", "property": "angle",
"friendlyName": "Angle", "friendlyName": "Angle",
"channel": "angle", "channel": "angle",
"channelType": "angle",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -60,6 +64,7 @@
"property": "poweroff_time", "property": "poweroff_time",
"friendlyName": "Timer", "friendlyName": "Timer",
"channel": "poweroffTime", "channel": "poweroffTime",
"channelType": "poweroffTime",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -74,6 +79,7 @@
"property": "buzzer", "property": "buzzer",
"friendlyName": "Buzzer", "friendlyName": "Buzzer",
"channel": "buzzer", "channel": "buzzer",
"channelType": "buzzer",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -116,6 +122,7 @@
"property": "speed_level", "property": "speed_level",
"friendlyName": "Speed Level", "friendlyName": "Speed Level",
"channel": "speedLevel", "channel": "speedLevel",
"channelType": "speedLevel",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -130,6 +137,7 @@
"property": "speed", "property": "speed",
"friendlyName": "Speed", "friendlyName": "Speed",
"channel": "speed", "channel": "speed",
"channelType": "speed",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -144,6 +152,7 @@
"property": "natural_level", "property": "natural_level",
"friendlyName": "Natural Level", "friendlyName": "Natural Level",
"channel": "naturalLevel", "channel": "naturalLevel",
"channelType": "naturalLevel",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -168,6 +177,7 @@
"property": "humidity", "property": "humidity",
"friendlyName": "Humidity", "friendlyName": "Humidity",
"channel": "humidity", "channel": "humidity",
"channelType": "humidity",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -177,6 +187,7 @@
"property": "ac_power", "property": "ac_power",
"friendlyName": "AC Power", "friendlyName": "AC Power",
"channel": "acPower", "channel": "acPower",
"channelType": "acPower",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -186,6 +197,7 @@
"property": "bat_charge", "property": "bat_charge",
"friendlyName": "Battery Charge", "friendlyName": "Battery Charge",
"channel": "mode", "channel": "mode",
"channelType": "mode",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -205,6 +217,7 @@
"property": "", "property": "",
"friendlyName": "Move Direction", "friendlyName": "Move Direction",
"channel": "move", "channel": "move",
"channelType": "move",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",

View File

@ -8,6 +8,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -21,6 +22,7 @@
"property": "angle_enable", "property": "angle_enable",
"friendlyName": "Rotation", "friendlyName": "Rotation",
"channel": "angleEnable", "channel": "angleEnable",
"channelType": "angleEnable",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -34,6 +36,7 @@
"property": "use_time", "property": "use_time",
"friendlyName": "Run Time", "friendlyName": "Run Time",
"channel": "usedhours", "channel": "usedhours",
"channelType": "usedhours",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"transformation": "SecondsToHours", "transformation": "SecondsToHours",
@ -44,6 +47,7 @@
"property": "angle", "property": "angle",
"friendlyName": "Angle", "friendlyName": "Angle",
"channel": "angle", "channel": "angle",
"channelType": "angle",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -58,6 +62,7 @@
"property": "poweroff_time", "property": "poweroff_time",
"friendlyName": "Timer", "friendlyName": "Timer",
"channel": "poweroffTime", "channel": "poweroffTime",
"channelType": "poweroffTime",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -72,6 +77,7 @@
"property": "buzzer", "property": "buzzer",
"friendlyName": "Buzzer", "friendlyName": "Buzzer",
"channel": "buzzer", "channel": "buzzer",
"channelType": "buzzer",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -114,6 +120,7 @@
"property": "speed_level", "property": "speed_level",
"friendlyName": "Speed Level", "friendlyName": "Speed Level",
"channel": "speedLevel", "channel": "speedLevel",
"channelType": "speedLevel",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -128,6 +135,7 @@
"property": "speed", "property": "speed",
"friendlyName": "Speed", "friendlyName": "Speed",
"channel": "speed", "channel": "speed",
"channelType": "speed",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -142,6 +150,7 @@
"property": "natural_level", "property": "natural_level",
"friendlyName": "Natural Level", "friendlyName": "Natural Level",
"channel": "naturalLevel", "channel": "naturalLevel",
"channelType": "naturalLevel",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -156,6 +165,7 @@
"property": "", "property": "",
"friendlyName": "Move Direction", "friendlyName": "Move Direction",
"channel": "move", "channel": "move",
"channelType": "move",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",

View File

@ -0,0 +1,121 @@
{
"deviceMapping": {
"id": [
"zhimi.heater.za1"
],
"propertyMethod": "get_prop",
"maxProperties": 2,
"channels": [
{
"property": "power",
"friendlyName": "Power",
"channel": "power",
"channelType": "power",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_power",
"parameterType": "ONOFF"
}
]
},
{
"property": "target_temperature",
"friendlyName": "Target Temperature",
"channel": "target_temperature",
"type": "Number",
"refresh": true,
"actions": [
{
"command": "set_target_temperature",
"parameterType": "NUMBER"
}
]
},
{
"property": "brightness",
"friendlyName": "Brightness",
"channel": "brightness",
"channelType": "brightness",
"type": "Number",
"refresh": true,
"actions": [
{
"command": "set_brightness",
"parameterType": "NUMBER"
}
]
},
{
"property": "buzzer",
"friendlyName": "Buzzer Status",
"channel": "buzzer",
"channelType": "buzzer",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_buzzer",
"parameterType": "ONOFF"
}
]
},
{
"property": "relative_humidity",
"friendlyName": "Relative Humidity",
"channel": "relative_humidity",
"type": "Number",
"refresh": true,
"actions": []
},
{
"property": "child_lock",
"friendlyName": "Child Lock",
"channel": "childlock",
"channelType": "childlock",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_child_lock",
"parameterType": "ONOFF"
}
]
},
{
"property": "theqmostat",
"friendlyName": "HW Switch",
"channel": "HWSwitch",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_theqmostat",
"parameterType": "ONOFF"
}
]
},
{
"property": "temperature",
"friendlyName": "Temperature",
"channel": "temperature",
"channelType": "temperature",
"type": "Number",
"refresh": true,
"actions": []
},
{
"property": "use_time",
"friendlyName": "Run Time",
"channel": "usedhours",
"channelType": "usedhours",
"type": "Number",
"refresh": true,
"transformation": "SecondsToHours",
"actions": []
}
],
"experimental": true
}
}

View File

@ -8,6 +8,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -21,6 +22,7 @@
"property": "mode", "property": "mode",
"friendlyName": "Humidifier Mode", "friendlyName": "Humidifier Mode",
"channel": "humidifierMode", "channel": "humidifierMode",
"channelType": "humidifierMode",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -35,6 +37,7 @@
"property": "humidity", "property": "humidity",
"friendlyName": "Humidity", "friendlyName": "Humidity",
"channel": "humidity", "channel": "humidity",
"channelType": "humidity",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -44,6 +47,7 @@
"property": "limit_hum", "property": "limit_hum",
"friendlyName": "Humidity Set", "friendlyName": "Humidity Set",
"channel": "setHumidity", "channel": "setHumidity",
"channelType": "setHumidity",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -72,6 +76,7 @@
"property": "buzzer", "property": "buzzer",
"friendlyName": "Buzzer Status", "friendlyName": "Buzzer Status",
"channel": "buzzer", "channel": "buzzer",
"channelType": "buzzer",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -86,6 +91,7 @@
"property": "depth", "property": "depth",
"friendlyName": "Depth", "friendlyName": "Depth",
"channel": "depth", "channel": "depth",
"channelType": "depth",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -95,6 +101,7 @@
"property": "dry", "property": "dry",
"friendlyName": "Dry", "friendlyName": "Dry",
"channel": "dry", "channel": "dry",
"channelType": "dry",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -109,6 +116,7 @@
"property": "use_time", "property": "use_time",
"friendlyName": "Run Time", "friendlyName": "Run Time",
"channel": "usedhours", "channel": "usedhours",
"channelType": "usedhours",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"transformation": "SecondsToHours", "transformation": "SecondsToHours",
@ -119,6 +127,7 @@
"property": "speed", "property": "speed",
"friendlyName": "Motor Speed", "friendlyName": "Motor Speed",
"channel": "motorspeed", "channel": "motorspeed",
"channelType": "motorspeed",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -128,6 +137,7 @@
"property": "temperature", "property": "temperature",
"friendlyName": "Temperature", "friendlyName": "Temperature",
"channel": "temperature", "channel": "temperature",
"channelType": "temperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -137,6 +147,7 @@
"property": "child_lock", "property": "child_lock",
"friendlyName": "Child Lock", "friendlyName": "Child Lock",
"channel": "childlock", "channel": "childlock",
"channelType": "childlock",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",

View File

@ -9,6 +9,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"actions": [ "actions": [
@ -22,6 +23,7 @@
"property": "mode", "property": "mode",
"friendlyName": "Mode", "friendlyName": "Mode",
"channel": "mode", "channel": "mode",
"channelType": "mode",
"type": "String", "type": "String",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -36,6 +38,7 @@
"property": "humidity", "property": "humidity",
"friendlyName": "Humidity", "friendlyName": "Humidity",
"channel": "humidity", "channel": "humidity",
"channelType": "humidity",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -45,6 +48,7 @@
"property": "limit_hum", "property": "limit_hum",
"friendlyName": "Humidity Set", "friendlyName": "Humidity Set",
"channel": "setHumidity", "channel": "setHumidity",
"channelType": "setHumidity",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -59,6 +63,7 @@
"property": "aqi", "property": "aqi",
"friendlyName": "Air Quality Index", "friendlyName": "Air Quality Index",
"channel": "aqi", "channel": "aqi",
"channelType": "aqi",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -68,6 +73,7 @@
"property": "trans_level", "property": "trans_level",
"friendlyName": "Trans_level", "friendlyName": "Trans_level",
"channel": "translevel", "channel": "translevel",
"channelType": "translevel",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -91,6 +97,7 @@
"property": "buzzer", "property": "buzzer",
"friendlyName": "Buzzer Status", "friendlyName": "Buzzer Status",
"channel": "buzzer", "channel": "buzzer",
"channelType": "buzzer",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "actions", "ChannelGroup": "actions",
@ -105,6 +112,7 @@
"property": "depth", "property": "depth",
"friendlyName": "Depth", "friendlyName": "Depth",
"channel": "depth", "channel": "depth",
"channelType": "depth",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -114,6 +122,7 @@
"property": "dry", "property": "dry",
"friendlyName": "Dry", "friendlyName": "Dry",
"channel": "dry", "channel": "dry",
"channelType": "dry",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -128,6 +137,7 @@
"property": "use_time", "property": "use_time",
"friendlyName": "Run Time", "friendlyName": "Run Time",
"channel": "usedhours", "channel": "usedhours",
"channelType": "usedhours",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"transformation": "SecondsToHours", "transformation": "SecondsToHours",
@ -138,6 +148,7 @@
"property": "speed", "property": "speed",
"friendlyName": "Motor Speed", "friendlyName": "Motor Speed",
"channel": "motorspeed", "channel": "motorspeed",
"channelType": "motorspeed",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",
@ -147,6 +158,7 @@
"property": "temp_dec", "property": "temp_dec",
"friendlyName": "Temperature", "friendlyName": "Temperature",
"channel": "temperature", "channel": "temperature",
"channelType": "temperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"transformation": "/10", "transformation": "/10",
@ -157,6 +169,7 @@
"property": "child_lock", "property": "child_lock",
"friendlyName": "Child Lock", "friendlyName": "Child Lock",
"channel": "childlock", "channel": "childlock",
"channelType": "childlock",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "Status", "ChannelGroup": "Status",

View File

@ -9,6 +9,7 @@
"property": "power", "property": "power",
"friendlyName": "Power", "friendlyName": "Power",
"channel": "power", "channel": "power",
"channelType": "power",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -23,6 +24,7 @@
"property": "power_consume_rate", "property": "power_consume_rate",
"friendlyName": "Power Consumption", "friendlyName": "Power Consumption",
"channel": "powerUsage", "channel": "powerUsage",
"channelType": "powerUsage",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -36,6 +38,7 @@
"property": "wifi_led", "property": "wifi_led",
"friendlyName": "wifi LED", "friendlyName": "wifi LED",
"channel": "led", "channel": "led",
"channelType": "led",
"type": "Switch", "type": "Switch",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -64,6 +67,7 @@
"property": "current", "property": "current",
"friendlyName": "Current", "friendlyName": "Current",
"channel": "current", "channel": "current",
"channelType": "current",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",
@ -73,6 +77,7 @@
"property": "temperature", "property": "temperature",
"friendlyName": "Temperature", "friendlyName": "Temperature",
"channel": "temperature", "channel": "temperature",
"channelType": "temperature",
"type": "Number", "type": "Number",
"refresh": true, "refresh": true,
"ChannelGroup": "", "ChannelGroup": "",