homebridge-melcloud-control 2.5.0-beta.68 → 2.5.0-beta.69

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -720,524 +720,311 @@
720
720
  ],
721
721
  "description": "Select device control mode displayed in HomeKit app.",
722
722
  "required": true
723
- }
724
- }
725
- },
726
- "required": false
727
- },
728
- "ervDevices": {
729
- "title": "Devices ERV",
730
- "type": "array",
731
- "items": {
732
- "type": "object",
733
- "properties": {
734
- "name": {
735
- "title": "Name",
736
- "type": "string",
723
+ },
724
+ "temperatureSensorFlow": {
725
+ "title": "Temperature Sensor Flow",
726
+ "type": "boolean",
727
+ "default": false,
728
+ "description": "This enable extra Flow temperature sensor to use with automations in HomeKit app.",
737
729
  "required": false
738
730
  },
739
- "id": {
740
- "title": "Mode",
741
- "type": "integer",
731
+ "temperatureSensorReturn": {
732
+ "title": "Temperature Sensor Return",
733
+ "type": "boolean",
734
+ "default": false,
735
+ "description": "This enable extra Return temperature sensor to use with automations in HomeKit app.",
742
736
  "required": false
743
737
  },
744
- "type": {
745
- "title": "Type",
746
- "type": "integer",
738
+ "temperatureSensorFlowZone1": {
739
+ "title": "Temperature Sensor Flow Zone 1",
740
+ "type": "boolean",
741
+ "default": false,
742
+ "description": "This enable extra Flow Zone 1 temperature sensor to use with automations in HomeKit app.",
747
743
  "required": false
748
744
  },
749
- "displayMode": {
750
- "title": "Control",
751
- "type": "integer",
752
- "minimum": 0,
753
- "maximum": 2,
754
- "oneOf": [
755
- {
756
- "title": "None/Disabled",
757
- "enum": [
758
- 0
759
- ]
760
- },
761
- {
762
- "title": "Heater/Cooler",
763
- "enum": [
764
- 0
765
- ]
766
- },
767
- {
768
- "title": "Thermostat",
769
- "enum": [
770
- 1
771
- ]
772
- }
773
- ],
774
- "description": "Select device control mode displayed in HomeKit app.",
775
- "required": true
776
- }
777
- }
778
- },
779
- "required": false
780
- },
781
- "atwTemperatureSensorFlow": {
782
- "title": "Temperature Sensor Flow",
783
- "type": "boolean",
784
- "default": false,
785
- "description": "This enable extra Flow temperature sensor to use with automations in HomeKit app.",
786
- "required": false
787
- },
788
- "atwTemperatureSensorReturn": {
789
- "title": "Temperature Sensor Return",
790
- "type": "boolean",
791
- "default": false,
792
- "description": "This enable extra Return temperature sensor to use with automations in HomeKit app.",
793
- "required": false
794
- },
795
- "atwTemperatureSensorFlowZone1": {
796
- "title": "Temperature Sensor Flow Zone 1",
797
- "type": "boolean",
798
- "default": false,
799
- "description": "This enable extra Flow Zone 1 temperature sensor to use with automations in HomeKit app.",
800
- "required": false
801
- },
802
- "atwTemperatureSensorReturnZone1": {
803
- "title": "Temperature Sensor Return Zone 1",
804
- "type": "boolean",
805
- "default": false,
806
- "description": "This enable extra Return Zone 1 temperature sensor to use with automations in HomeKit app.",
807
- "required": false
808
- },
809
- "atwTemperatureSensorFlowWaterTank": {
810
- "title": "Temperature Sensor Flow Water Tank",
811
- "type": "boolean",
812
- "default": false,
813
- "description": "This enable extra Flow Water Tank temperature sensor to use with automations in HomeKit app.",
814
- "required": false
815
- },
816
- "atwTemperatureSensorReturnWaterTank": {
817
- "title": "Temperature Sensor Return Water Tank",
818
- "type": "boolean",
819
- "default": false,
820
- "description": "This enable extra Return Water Tank temperature sensor to use with automations in HomeKit app.",
821
- "required": false
822
- },
823
- "atwTemperatureSensorFlowZone2": {
824
- "title": "Temperature Sensor Flow Zone 2",
825
- "type": "boolean",
826
- "default": false,
827
- "description": "This enable extra Flow Zone 2 temperature sensor to use with automations in HomeKit app.",
828
- "required": false
829
- },
830
- "atwTemperatureSensorReturnZone2": {
831
- "title": "Temperature Sensor Return Zone 2",
832
- "type": "boolean",
833
- "default": false,
834
- "description": "This enable extra Return Zone 2 temperature sensor to use with automations in HomeKit app.",
835
- "required": false
836
- },
837
- "atwPresets": {
838
- "title": "Presets",
839
- "type": "boolean",
840
- "default": false,
841
- "description": "This enable extra buttons for configured presets and display it in HomeKit app.",
842
- "required": false
843
- },
844
- "atwButtons": {
845
- "title": "Button",
846
- "type": "array",
847
- "items": {
848
- "type": "object",
849
- "properties": {
850
- "name": {
851
- "title": "Name",
852
- "type": "string",
853
- "placeholder": "Button name",
854
- "description": "Your own name displayed in Homebridge/HomeKit app.",
855
- "required": true
745
+ "temperatureSensorReturnZone1": {
746
+ "title": "Temperature Sensor Return Zone 1",
747
+ "type": "boolean",
748
+ "default": false,
749
+ "description": "This enable extra Return Zone 1 temperature sensor to use with automations in HomeKit app.",
750
+ "required": false
856
751
  },
857
- "mode": {
858
- "title": "Mode",
859
- "type": "integer",
860
- "minimum": 0,
861
- "maximum": 70,
862
- "description": "Select the function.",
863
- "oneOf": [
864
- {
865
- "title": "POWER ON/OFF",
866
- "enum": [
867
- 0
868
- ]
869
- },
870
- {
871
- "title": "MODE HEAT",
872
- "enum": [
873
- 1
874
- ]
875
- },
876
- {
877
- "title": "MODE COOL",
878
- "enum": [
879
- 2
880
- ]
881
- },
882
- {
883
- "title": "MODE HOLIDAY",
884
- "enum": [
885
- 3
886
- ]
887
- },
888
- {
889
- "title": "LOCK CONTROL ALL",
890
- "enum": [
891
- 10
892
- ]
893
- },
894
- {
895
- "title": "Z1 MODE HEAT THERMOSTAT",
896
- "enum": [
897
- 20
898
- ]
899
- },
900
- {
901
- "title": "Z1 MODE HEAT FLOW",
902
- "enum": [
903
- 21
904
- ]
905
- },
906
- {
907
- "title": "Z1 MODE HEAT CURVE",
908
- "enum": [
909
- 22
910
- ]
911
- },
912
- {
913
- "title": "Z1 MODE COOL THERMOSTAT",
914
- "enum": [
915
- 23
916
- ]
917
- },
918
- {
919
- "title": "Z1 MODE COOL FLOW",
920
- "enum": [
921
- 24
922
- ]
923
- },
924
- {
925
- "title": "Z1 MODE FLOOR DRY UP",
926
- "enum": [
927
- 25
928
- ]
929
- },
930
- {
931
- "title": "Z1 LOCK CONTROL",
932
- "enum": [
933
- 30
934
- ]
935
- },
936
- {
937
- "title": "HW MODE FORCE",
938
- "enum": [
939
- 40
940
- ]
941
- },
942
- {
943
- "title": "HW MODE ECO",
944
- "enum": [
945
- 41
946
- ]
947
- },
948
- {
949
- "title": "HW LOCK CONTROL",
950
- "enum": [
951
- 50
952
- ]
953
- },
954
- {
955
- "title": "Z2 MODE HEAT THERMOSTAT",
956
- "enum": [
957
- 60
958
- ]
959
- },
960
- {
961
- "title": "Z2 MODE HEAT FLOW",
962
- "enum": [
963
- 61
964
- ]
965
- },
966
- {
967
- "title": "Z2 MODE HEAT CURVE",
968
- "enum": [
969
- 62
970
- ]
971
- },
972
- {
973
- "title": "Z2 MODE COOL THERMOSTAT",
974
- "enum": [
975
- 63
976
- ]
977
- },
978
- {
979
- "title": "Z2 MODE COOL FLOW",
980
- "enum": [
981
- 64
982
- ]
983
- },
984
- {
985
- "title": "Z2 MODE FLOOR DRY UP",
986
- "enum": [
987
- 65
988
- ]
989
- },
990
- {
991
- "title": "Z2 LOCK CONTROL",
992
- "enum": [
993
- 70
994
- ]
995
- }
996
- ],
997
- "required": true
752
+ "temperatureSensorFlowWaterTank": {
753
+ "title": "Temperature Sensor Flow Water Tank",
754
+ "type": "boolean",
755
+ "default": false,
756
+ "description": "This enable extra Flow Water Tank temperature sensor to use with automations in HomeKit app.",
757
+ "required": false
998
758
  },
999
- "displayType": {
1000
- "title": "Type",
1001
- "type": "integer",
1002
- "minimum": 0,
1003
- "maximum": 5,
1004
- "oneOf": [
1005
- {
1006
- "title": "None/Disabled",
1007
- "enum": [
1008
- 0
1009
- ]
1010
- },
1011
- {
1012
- "title": "Outlet",
1013
- "enum": [
1014
- 1
1015
- ]
1016
- },
1017
- {
1018
- "title": "Switch",
1019
- "enum": [
1020
- 2
1021
- ]
1022
- },
1023
- {
1024
- "title": "Motion Sensor",
1025
- "enum": [
1026
- 3
1027
- ]
1028
- },
1029
- {
1030
- "title": "Occupancy Sensor",
1031
- "enum": [
1032
- 4
1033
- ]
1034
- },
1035
- {
1036
- "title": "Contact Sensor",
1037
- "enum": [
1038
- 5
1039
- ]
1040
- }
1041
- ],
1042
- "description": "Select the characteristic type to be displayed in HomeKit app.",
1043
- "required": true
759
+ "temperatureSensorReturnWaterTank": {
760
+ "title": "Temperature Sensor Return Water Tank",
761
+ "type": "boolean",
762
+ "default": false,
763
+ "description": "This enable extra Return Water Tank temperature sensor to use with automations in HomeKit app.",
764
+ "required": false
1044
765
  },
1045
- "namePrefix": {
1046
- "title": "Prefix",
766
+ "temperatureSensorFlowZone2": {
767
+ "title": "Temperature Sensor Flow Zone 2",
1047
768
  "type": "boolean",
1048
- "description": "Enable/disable the accessory name as a prefix for button/sensor name.",
769
+ "default": false,
770
+ "description": "This enable extra Flow Zone 2 temperature sensor to use with automations in HomeKit app.",
1049
771
  "required": false
1050
- }
1051
- }
1052
- },
1053
- "required": false
1054
- },
1055
- "atwHideDeviceById": {
1056
- "title": "Hide Device By Id",
1057
- "type": "array",
1058
- "items": {
1059
- "type": "object",
1060
- "properties": {
1061
- "name": {
1062
- "title": "Name",
1063
- "type": "string",
1064
- "placeholder": "Device name",
1065
- "description": "Your own name.",
772
+ },
773
+ "temperatureSensorReturnZone2": {
774
+ "title": "Temperature Sensor Return Zone 2",
775
+ "type": "boolean",
776
+ "default": false,
777
+ "description": "This enable extra Return Zone 2 temperature sensor to use with automations in HomeKit app.",
1066
778
  "required": false
1067
779
  },
1068
- "id": {
1069
- "title": "Id",
1070
- "type": "string",
1071
- "description": "Set device Id to be hidden and not exposed to the Homebridge/Homekit.",
780
+ "presets": {
781
+ "title": "Presets",
782
+ "type": "boolean",
783
+ "default": false,
784
+ "description": "This enable extra buttons for configured presets and display it in HomeKit app.",
785
+ "required": false
786
+ },
787
+ "buttonsSensors": {
788
+ "title": "Button",
789
+ "type": "array",
790
+ "items": {
791
+ "type": "object",
792
+ "properties": {
793
+ "name": {
794
+ "title": "Name",
795
+ "type": "string",
796
+ "placeholder": "Button name",
797
+ "description": "Your own name displayed in Homebridge/HomeKit app.",
798
+ "required": true
799
+ },
800
+ "mode": {
801
+ "title": "Mode",
802
+ "type": "integer",
803
+ "minimum": 0,
804
+ "maximum": 70,
805
+ "description": "Select the function.",
806
+ "oneOf": [
807
+ {
808
+ "title": "POWER ON/OFF",
809
+ "enum": [
810
+ 0
811
+ ]
812
+ },
813
+ {
814
+ "title": "MODE HEAT",
815
+ "enum": [
816
+ 1
817
+ ]
818
+ },
819
+ {
820
+ "title": "MODE COOL",
821
+ "enum": [
822
+ 2
823
+ ]
824
+ },
825
+ {
826
+ "title": "MODE HOLIDAY",
827
+ "enum": [
828
+ 3
829
+ ]
830
+ },
831
+ {
832
+ "title": "LOCK CONTROL ALL",
833
+ "enum": [
834
+ 10
835
+ ]
836
+ },
837
+ {
838
+ "title": "Z1 MODE HEAT THERMOSTAT",
839
+ "enum": [
840
+ 20
841
+ ]
842
+ },
843
+ {
844
+ "title": "Z1 MODE HEAT FLOW",
845
+ "enum": [
846
+ 21
847
+ ]
848
+ },
849
+ {
850
+ "title": "Z1 MODE HEAT CURVE",
851
+ "enum": [
852
+ 22
853
+ ]
854
+ },
855
+ {
856
+ "title": "Z1 MODE COOL THERMOSTAT",
857
+ "enum": [
858
+ 23
859
+ ]
860
+ },
861
+ {
862
+ "title": "Z1 MODE COOL FLOW",
863
+ "enum": [
864
+ 24
865
+ ]
866
+ },
867
+ {
868
+ "title": "Z1 MODE FLOOR DRY UP",
869
+ "enum": [
870
+ 25
871
+ ]
872
+ },
873
+ {
874
+ "title": "Z1 LOCK CONTROL",
875
+ "enum": [
876
+ 30
877
+ ]
878
+ },
879
+ {
880
+ "title": "HW MODE FORCE",
881
+ "enum": [
882
+ 40
883
+ ]
884
+ },
885
+ {
886
+ "title": "HW MODE ECO",
887
+ "enum": [
888
+ 41
889
+ ]
890
+ },
891
+ {
892
+ "title": "HW LOCK CONTROL",
893
+ "enum": [
894
+ 50
895
+ ]
896
+ },
897
+ {
898
+ "title": "Z2 MODE HEAT THERMOSTAT",
899
+ "enum": [
900
+ 60
901
+ ]
902
+ },
903
+ {
904
+ "title": "Z2 MODE HEAT FLOW",
905
+ "enum": [
906
+ 61
907
+ ]
908
+ },
909
+ {
910
+ "title": "Z2 MODE HEAT CURVE",
911
+ "enum": [
912
+ 62
913
+ ]
914
+ },
915
+ {
916
+ "title": "Z2 MODE COOL THERMOSTAT",
917
+ "enum": [
918
+ 63
919
+ ]
920
+ },
921
+ {
922
+ "title": "Z2 MODE COOL FLOW",
923
+ "enum": [
924
+ 64
925
+ ]
926
+ },
927
+ {
928
+ "title": "Z2 MODE FLOOR DRY UP",
929
+ "enum": [
930
+ 65
931
+ ]
932
+ },
933
+ {
934
+ "title": "Z2 LOCK CONTROL",
935
+ "enum": [
936
+ 70
937
+ ]
938
+ }
939
+ ],
940
+ "required": true
941
+ },
942
+ "displayType": {
943
+ "title": "Type",
944
+ "type": "integer",
945
+ "minimum": 0,
946
+ "maximum": 5,
947
+ "oneOf": [
948
+ {
949
+ "title": "None/Disabled",
950
+ "enum": [
951
+ 0
952
+ ]
953
+ },
954
+ {
955
+ "title": "Outlet",
956
+ "enum": [
957
+ 1
958
+ ]
959
+ },
960
+ {
961
+ "title": "Switch",
962
+ "enum": [
963
+ 2
964
+ ]
965
+ },
966
+ {
967
+ "title": "Motion Sensor",
968
+ "enum": [
969
+ 3
970
+ ]
971
+ },
972
+ {
973
+ "title": "Occupancy Sensor",
974
+ "enum": [
975
+ 4
976
+ ]
977
+ },
978
+ {
979
+ "title": "Contact Sensor",
980
+ "enum": [
981
+ 5
982
+ ]
983
+ }
984
+ ],
985
+ "description": "Select the characteristic type to be displayed in HomeKit app.",
986
+ "required": true
987
+ },
988
+ "namePrefix": {
989
+ "title": "Prefix",
990
+ "type": "boolean",
991
+ "description": "Enable/disable the accessory name as a prefix for button/sensor name.",
992
+ "required": false
993
+ }
994
+ }
995
+ },
1072
996
  "required": false
1073
997
  }
1074
998
  }
1075
999
  },
1076
- "required": false
1077
- },
1078
- "ervDisplayMode": {
1079
- "title": "Control Mode",
1080
- "type": "integer",
1081
- "minimum": 0,
1082
- "maximum": 1,
1083
- "default": 0,
1084
- "oneOf": [
1085
- {
1086
- "title": "Heater/Cooler",
1087
- "enum": [
1088
- 0
1089
- ]
1090
- },
1091
- {
1092
- "title": "Thermostat",
1093
- "enum": [
1094
- 1
1095
- ]
1096
- }
1097
- ],
1098
- "description": "Select main control mode.",
1099
1000
  "required": true
1100
1001
  },
1101
- "ervTemperatureSensor": {
1102
- "title": "Temperature Sensor Room",
1103
- "type": "boolean",
1104
- "default": false,
1105
- "description": "This enable extra temperature sensor to use with automations in HomeKit app.",
1106
- "required": false
1107
- },
1108
- "ervTemperatureSensorOutdoor": {
1109
- "title": "Temperature Sensor Outdoor",
1110
- "type": "boolean",
1111
- "default": false,
1112
- "description": "This enable extra outdoor temperature sensor to use with automations in HomeKit app.",
1113
- "required": false
1114
- },
1115
- "ervTemperatureSensorSupply": {
1116
- "title": "Temperature Sensor Supply",
1117
- "type": "boolean",
1118
- "default": false,
1119
- "description": "This enable extra supply temperature sensor to use with automations in HomeKit app.",
1120
- "required": false
1121
- },
1122
- "ervPresets": {
1123
- "title": "Presets",
1124
- "type": "boolean",
1125
- "default": false,
1126
- "description": "This enable extra buttons for configured presets and display it in HomeKit app.",
1127
- "required": false
1128
- },
1129
- "ervButtons": {
1130
- "title": "Button",
1131
- "type": "array",
1132
- "items": {
1133
- "type": "object",
1134
- "properties": {
1135
- "name": {
1136
- "title": "Name",
1137
- "type": "string",
1138
- "placeholder": "Button name",
1139
- "description": "Your own name displayed in Homebridge/HomeKit app.",
1140
- "required": true
1141
- },
1142
- "mode": {
1143
- "title": "Mode",
1144
- "type": "integer",
1145
- "minimum": 0,
1146
- "maximum": 18,
1147
- "description": "Select the function.",
1148
- "oneOf": [
1149
- {
1150
- "title": "POWER ON/OFF",
1151
- "enum": [
1152
- 0
1153
- ]
1154
- },
1155
- {
1156
- "title": "MODE LOSSNAY",
1157
- "enum": [
1158
- 1
1159
- ]
1160
- },
1161
- {
1162
- "title": "MODE BYPASS",
1163
- "enum": [
1164
- 2
1165
- ]
1166
- },
1167
- {
1168
- "title": "MODE AUTO",
1169
- "enum": [
1170
- 3
1171
- ]
1172
- },
1173
- {
1174
- "title": "MODE NIGHT PURGE",
1175
- "enum": [
1176
- 4
1177
- ]
1178
- },
1179
- {
1180
- "title": "FAN MODE AUTO",
1181
- "enum": [
1182
- 10
1183
- ]
1184
- },
1185
- {
1186
- "title": "FAN MODE 1",
1187
- "enum": [
1188
- 11
1189
- ]
1190
- },
1191
- {
1192
- "title": "FAN MODE 2",
1193
- "enum": [
1194
- 12
1195
- ]
1196
- },
1197
- {
1198
- "title": "FAN MODE 3",
1199
- "enum": [
1200
- 13
1201
- ]
1202
- },
1203
- {
1204
- "title": "FAN MODE 4",
1205
- "enum": [
1206
- 14
1207
- ]
1208
- },
1209
- {
1210
- "title": "LOCK CONTROL",
1211
- "enum": [
1212
- 15
1213
- ]
1214
- },
1215
- {
1216
- "title": "ROOM TEMP HIDE",
1217
- "enum": [
1218
- 16
1219
- ]
1220
- },
1221
- {
1222
- "title": "SUPPLY TEMP HIDE",
1223
- "enum": [
1224
- 17
1225
- ]
1226
- },
1227
- {
1228
- "title": "OUTDOOR TEMP HIDE",
1229
- "enum": [
1230
- 18
1231
- ]
1232
- }
1233
- ],
1234
- "required": true
1002
+ "ervDevices": {
1003
+ "title": "Devices ERV",
1004
+ "type": "array",
1005
+ "items": {
1006
+ "type": "object",
1007
+ "properties": {
1008
+ "name": {
1009
+ "title": "Name",
1010
+ "type": "string",
1011
+ "required": false
1012
+ },
1013
+ "id": {
1014
+ "title": "Mode",
1015
+ "type": "integer",
1016
+ "required": false
1235
1017
  },
1236
- "displayType": {
1018
+ "type": {
1237
1019
  "title": "Type",
1238
1020
  "type": "integer",
1021
+ "required": false
1022
+ },
1023
+ "displayMode": {
1024
+ "title": "Control",
1025
+ "type": "integer",
1239
1026
  "minimum": 0,
1240
- "maximum": 5,
1027
+ "maximum": 2,
1241
1028
  "oneOf": [
1242
1029
  {
1243
1030
  "title": "None/Disabled",
@@ -1246,71 +1033,215 @@
1246
1033
  ]
1247
1034
  },
1248
1035
  {
1249
- "title": "Outlet",
1250
- "enum": [
1251
- 1
1252
- ]
1253
- },
1254
- {
1255
- "title": "Switch",
1256
- "enum": [
1257
- 2
1258
- ]
1259
- },
1260
- {
1261
- "title": "Motion Sensor",
1262
- "enum": [
1263
- 3
1264
- ]
1265
- },
1266
- {
1267
- "title": "Occupancy Sensor",
1036
+ "title": "Heater/Cooler",
1268
1037
  "enum": [
1269
- 4
1038
+ 0
1270
1039
  ]
1271
1040
  },
1272
1041
  {
1273
- "title": "Contact Sensor",
1042
+ "title": "Thermostat",
1274
1043
  "enum": [
1275
- 5
1044
+ 1
1276
1045
  ]
1277
1046
  }
1278
1047
  ],
1279
- "description": "Select the characteristic type to be displayed in HomeKit app.",
1048
+ "description": "Select device control mode displayed in HomeKit app.",
1049
+ "required": true
1050
+ },
1051
+ "temperatureSensor": {
1052
+ "title": "Temperature Sensor Room",
1053
+ "type": "boolean",
1054
+ "default": false,
1055
+ "description": "This enable extra temperature sensor to use with automations in HomeKit app.",
1280
1056
  "required": false
1281
1057
  },
1282
- "namePrefix": {
1283
- "title": "Prefix",
1058
+ "temperatureSensorOutdoor": {
1059
+ "title": "Temperature Sensor Outdoor",
1284
1060
  "type": "boolean",
1285
- "description": "Enable/disable the accessory name as a prefix for button/sensor name.",
1061
+ "default": false,
1062
+ "description": "This enable extra outdoor temperature sensor to use with automations in HomeKit app.",
1286
1063
  "required": false
1287
- }
1288
- }
1289
- },
1290
- "required": false
1291
- },
1292
- "ervHideDeviceById": {
1293
- "title": "Hide Device By Id",
1294
- "type": "array",
1295
- "items": {
1296
- "type": "object",
1297
- "properties": {
1298
- "name": {
1299
- "title": "Name",
1300
- "type": "string",
1301
- "placeholder": "Device name",
1302
- "description": "Your own name.",
1064
+ },
1065
+ "temperatureSensorSupply": {
1066
+ "title": "Temperature Sensor Supply",
1067
+ "type": "boolean",
1068
+ "default": false,
1069
+ "description": "This enable extra supply temperature sensor to use with automations in HomeKit app.",
1303
1070
  "required": false
1304
1071
  },
1305
- "id": {
1306
- "title": "Id",
1307
- "type": "string",
1308
- "description": "Set device Id to be hidden and not exposed to the Homebridge/Homekit.",
1072
+ "presets": {
1073
+ "title": "Presets",
1074
+ "type": "boolean",
1075
+ "default": false,
1076
+ "description": "This enable extra buttons for configured presets and display it in HomeKit app.",
1077
+ "required": false
1078
+ },
1079
+ "buttonsSensors": {
1080
+ "title": "Button",
1081
+ "type": "array",
1082
+ "items": {
1083
+ "type": "object",
1084
+ "properties": {
1085
+ "name": {
1086
+ "title": "Name",
1087
+ "type": "string",
1088
+ "placeholder": "Button name",
1089
+ "description": "Your own name displayed in Homebridge/HomeKit app.",
1090
+ "required": true
1091
+ },
1092
+ "mode": {
1093
+ "title": "Mode",
1094
+ "type": "integer",
1095
+ "minimum": 0,
1096
+ "maximum": 18,
1097
+ "description": "Select the function.",
1098
+ "oneOf": [
1099
+ {
1100
+ "title": "POWER ON/OFF",
1101
+ "enum": [
1102
+ 0
1103
+ ]
1104
+ },
1105
+ {
1106
+ "title": "MODE LOSSNAY",
1107
+ "enum": [
1108
+ 1
1109
+ ]
1110
+ },
1111
+ {
1112
+ "title": "MODE BYPASS",
1113
+ "enum": [
1114
+ 2
1115
+ ]
1116
+ },
1117
+ {
1118
+ "title": "MODE AUTO",
1119
+ "enum": [
1120
+ 3
1121
+ ]
1122
+ },
1123
+ {
1124
+ "title": "MODE NIGHT PURGE",
1125
+ "enum": [
1126
+ 4
1127
+ ]
1128
+ },
1129
+ {
1130
+ "title": "FAN MODE AUTO",
1131
+ "enum": [
1132
+ 10
1133
+ ]
1134
+ },
1135
+ {
1136
+ "title": "FAN MODE 1",
1137
+ "enum": [
1138
+ 11
1139
+ ]
1140
+ },
1141
+ {
1142
+ "title": "FAN MODE 2",
1143
+ "enum": [
1144
+ 12
1145
+ ]
1146
+ },
1147
+ {
1148
+ "title": "FAN MODE 3",
1149
+ "enum": [
1150
+ 13
1151
+ ]
1152
+ },
1153
+ {
1154
+ "title": "FAN MODE 4",
1155
+ "enum": [
1156
+ 14
1157
+ ]
1158
+ },
1159
+ {
1160
+ "title": "LOCK CONTROL",
1161
+ "enum": [
1162
+ 15
1163
+ ]
1164
+ },
1165
+ {
1166
+ "title": "ROOM TEMP HIDE",
1167
+ "enum": [
1168
+ 16
1169
+ ]
1170
+ },
1171
+ {
1172
+ "title": "SUPPLY TEMP HIDE",
1173
+ "enum": [
1174
+ 17
1175
+ ]
1176
+ },
1177
+ {
1178
+ "title": "OUTDOOR TEMP HIDE",
1179
+ "enum": [
1180
+ 18
1181
+ ]
1182
+ }
1183
+ ],
1184
+ "required": true
1185
+ },
1186
+ "displayType": {
1187
+ "title": "Type",
1188
+ "type": "integer",
1189
+ "minimum": 0,
1190
+ "maximum": 5,
1191
+ "oneOf": [
1192
+ {
1193
+ "title": "None/Disabled",
1194
+ "enum": [
1195
+ 0
1196
+ ]
1197
+ },
1198
+ {
1199
+ "title": "Outlet",
1200
+ "enum": [
1201
+ 1
1202
+ ]
1203
+ },
1204
+ {
1205
+ "title": "Switch",
1206
+ "enum": [
1207
+ 2
1208
+ ]
1209
+ },
1210
+ {
1211
+ "title": "Motion Sensor",
1212
+ "enum": [
1213
+ 3
1214
+ ]
1215
+ },
1216
+ {
1217
+ "title": "Occupancy Sensor",
1218
+ "enum": [
1219
+ 4
1220
+ ]
1221
+ },
1222
+ {
1223
+ "title": "Contact Sensor",
1224
+ "enum": [
1225
+ 5
1226
+ ]
1227
+ }
1228
+ ],
1229
+ "description": "Select the characteristic type to be displayed in HomeKit app.",
1230
+ "required": false
1231
+ },
1232
+ "namePrefix": {
1233
+ "title": "Prefix",
1234
+ "type": "boolean",
1235
+ "description": "Enable/disable the accessory name as a prefix for button/sensor name.",
1236
+ "required": false
1237
+ }
1238
+ }
1239
+ },
1309
1240
  "required": false
1310
1241
  }
1311
1242
  }
1312
1243
  },
1313
- "required": false
1244
+ "required": true
1314
1245
  },
1315
1246
  "refreshInterval": {
1316
1247
  "title": "Account Refresh Interval",
@@ -1586,60 +1517,42 @@
1586
1517
  "accounts[].atwDevices[].displayMode"
1587
1518
  ]
1588
1519
  },
1589
- "accounts[].atwDisplayMode",
1590
- "accounts[].atwPresets",
1520
+ "accounts[].atwDevices[].displayMode",
1521
+ "accounts[].atwDevices[].presets",
1591
1522
  {
1592
- "key": "accounts[]",
1523
+ "key": "accounts[].atwDevices[]",
1593
1524
  "type": "section",
1594
1525
  "title": "Temperature Sensors",
1595
1526
  "expandable": true,
1596
1527
  "expanded": false,
1597
1528
  "items": [
1598
- "accounts[].atwTemperatureSensor",
1599
- "accounts[].atwTemperatureSensorFlow",
1600
- "accounts[].atwTemperatureSensorReturn",
1601
- "accounts[].atwTemperatureSensorFlowZone1",
1602
- "accounts[].atwTemperatureSensorReturnZone1",
1603
- "accounts[].atwTemperatureSensorFlowWaterTank",
1604
- "accounts[].atwTemperatureSensorReturnWaterTank",
1605
- "accounts[].atwTemperatureSensorFlowZone2",
1606
- "accounts[].atwTemperatureSensorReturnZone2"
1529
+ "accounts[].atwDevices[].temperatureSensor",
1530
+ "accounts[].atwDevices[].temperatureSensorFlow",
1531
+ "accounts[].atwDevices[].temperatureSensorReturn",
1532
+ "accounts[].atwDevices[].temperatureSensorFlowZone1",
1533
+ "accounts[].atwDevices[].temperatureSensorReturnZone1",
1534
+ "accounts[].atwDevices[].temperatureSensorFlowWaterTank",
1535
+ "accounts[].atwDevices[].temperatureSensorReturnWaterTank",
1536
+ "accounts[].atwDevices[].temperatureSensorFlowZone2",
1537
+ "accounts[].atwDevices[].temperatureSensorReturnZone2"
1607
1538
  ]
1608
1539
  },
1609
1540
  {
1610
- "key": "accounts[]",
1541
+ "key": "accounts[].atwDevices[]",
1611
1542
  "type": "section",
1612
1543
  "title": "Buttons / Sensors",
1613
1544
  "expandable": true,
1614
1545
  "expanded": false,
1615
1546
  "items": [
1616
1547
  {
1617
- "key": "accounts[].atwButtons",
1548
+ "key": "accounts[].atwDevices[].buttonsSensors",
1618
1549
  "type": "tabarray",
1619
1550
  "title": "{{ value.name || 'button/sensor' }}",
1620
1551
  "items": [
1621
- "accounts[].atwButtons[].name",
1622
- "accounts[].atwButtons[].mode",
1623
- "accounts[].atwButtons[].displayType",
1624
- "accounts[].atwButtons[].namePrefix"
1625
- ]
1626
- }
1627
- ]
1628
- },
1629
- {
1630
- "key": "accounts[]",
1631
- "type": "section",
1632
- "title": "Hide Device By Id",
1633
- "expandable": true,
1634
- "expanded": false,
1635
- "items": [
1636
- {
1637
- "key": "accounts[].atwHideDeviceById",
1638
- "type": "tabarray",
1639
- "title": "{{ value.name || 'device' }}",
1640
- "items": [
1641
- "accounts[].atwHideDeviceById[].name",
1642
- "accounts[].atwHideDeviceById[].id"
1552
+ "accounts[].atwDevices[].buttonsSensors[].name",
1553
+ "accounts[].atwDevices[].buttonsSensors[].mode",
1554
+ "accounts[].atwDevices[].buttonsSensors[].displayType",
1555
+ "accounts[].atwDevices[].buttonsSensors[].namePrefix"
1643
1556
  ]
1644
1557
  }
1645
1558
  ]
@@ -1671,54 +1584,36 @@
1671
1584
  "accounts[].ervDevices[].displayMode"
1672
1585
  ]
1673
1586
  },
1674
- "accounts[].ervDisplayMode",
1675
- "accounts[].ervPresets",
1587
+ "accounts[].ervDevices[].displayMode",
1588
+ "accounts[].ervDevices[].presets",
1676
1589
  {
1677
- "key": "accounts[]",
1590
+ "key": "accounts[].ervDevices[]",
1678
1591
  "type": "section",
1679
1592
  "title": "Temperature Sensors",
1680
1593
  "expandable": true,
1681
1594
  "expanded": false,
1682
1595
  "items": [
1683
- "accounts[].ervTemperatureSensor",
1684
- "accounts[].ervTemperatureSensorOutdoor",
1685
- "accounts[].ervTemperatureSensorSupply"
1596
+ "accounts[].ervDevices[].temperatureSensor",
1597
+ "accounts[].ervDevices[].temperatureSensorOutdoor",
1598
+ "accounts[].ervDevices[].temperatureSensorSupply"
1686
1599
  ]
1687
1600
  },
1688
1601
  {
1689
- "key": "accounts[]",
1602
+ "key": "accounts[].ervDevices[]",
1690
1603
  "type": "section",
1691
1604
  "title": "Buttons / Sensors",
1692
1605
  "expandable": true,
1693
1606
  "expanded": false,
1694
1607
  "items": [
1695
1608
  {
1696
- "key": "accounts[].ervButtons",
1609
+ "key": "accounts[].ervDevices[].buttonsSensors",
1697
1610
  "type": "tabarray",
1698
1611
  "title": "{{ value.name || 'button/sensor' }}",
1699
1612
  "items": [
1700
- "accounts[].ervButtons[].name",
1701
- "accounts[].ervButtons[].mode",
1702
- "accounts[].ervButtons[].displayType",
1703
- "accounts[].ervButtons[].namePrefix"
1704
- ]
1705
- }
1706
- ]
1707
- },
1708
- {
1709
- "key": "accounts[]",
1710
- "type": "section",
1711
- "title": "Hide Device By Id",
1712
- "expandable": true,
1713
- "expanded": false,
1714
- "items": [
1715
- {
1716
- "key": "accounts[].ervHideDeviceById",
1717
- "type": "tabarray",
1718
- "title": "{{ value.name || 'device' }}",
1719
- "items": [
1720
- "accounts[].ervHideDeviceById[].name",
1721
- "accounts[].ervHideDeviceById[].id"
1613
+ "accounts[].ervDevices[].buttonsSensors[].name",
1614
+ "accounts[].ervDevices[].buttonsSensors[].mode",
1615
+ "accounts[].ervDevices[].buttonsSensors[].displayType",
1616
+ "accounts[].ervDevices[].buttonsSensors[].namePrefix"
1722
1617
  ]
1723
1618
  }
1724
1619
  ]
@@ -156,7 +156,12 @@
156
156
  const deviceType = deviceInfo.Type;
157
157
  const deviceId = deviceInfo.DeviceID;
158
158
  const deviceName = deviceInfo.DeviceName;
159
- const device = {
159
+
160
+ //config account keys
161
+ const accountKeys = Object.keys(pluginConfig[0].accounts[this.deviceIndex]);
162
+
163
+ //devices ata
164
+ const deviceAta = {
160
165
  name: deviceName,
161
166
  id: deviceId,
162
167
  type: deviceType,
@@ -169,24 +174,51 @@
169
174
  temperatureSensorOutdoor: false,
170
175
  buttonsSensors: []
171
176
  };
172
-
173
- //config account keys
174
- const accountKeys = Object.keys(pluginConfig[0].accounts[this.deviceIndex]);
175
-
176
- //devices ata
177
177
  const ataDevices = accountKeys.includes('ataDevices') ? pluginConfig[0].accounts[this.deviceIndex].ataDevices : pluginConfig[0].accounts[this.deviceIndex].ataDevices = [];
178
178
  const ataDeviceIdExist = ataDevices.some(device => device.id === deviceId)
179
- const pushTypeAta = deviceType === 0 && !ataDeviceIdExist ? ataDevices.push(device) : false;
179
+ const pushTypeAta = deviceType === 0 && !ataDeviceIdExist ? ataDevices.push(deviceAta) : false;
180
180
 
181
181
  //devices atw
182
+ const deviceAtw = {
183
+ name: deviceName,
184
+ id: deviceId,
185
+ type: deviceType,
186
+ displayMode: 0,
187
+ temperatureSensorFlow: false,
188
+ temperatureSensorFlow: false,
189
+ temperatureSensorFlow: false,
190
+ temperatureSensorFlowZone1: false,
191
+ temperatureSensorReturnZone1: false,
192
+ temperatureSensorFlowWaterTank: false,
193
+ temperatureSensorReturnWaterTank: false,
194
+ atemperatureSensorFlowZone2: false,
195
+ temperatureSensorReturnZone2: false,
196
+ presets: false,
197
+ temperatureSensor: false,
198
+ temperatureSensorOutdoor: false,
199
+ buttonsSensors: []
200
+ };
182
201
  const atwDevices = accountKeys.includes('atwDevices') ? pluginConfig[0].accounts[this.deviceIndex].atwDevices : pluginConfig[0].accounts[this.deviceIndex].atwDevices = [];
183
202
  const atwDeviceIdExist = atwDevices.some(device => device.id === deviceId)
184
- const pushTypeAtw = deviceType === 1 && !atwDeviceIdExist ? atwDevices.push(device) : false;
203
+ const pushTypeAtw = deviceType === 1 && !atwDeviceIdExist ? atwDevices.push(deviceAtw) : false;
185
204
 
186
205
  //devices erv
206
+ const deviceErv = {
207
+ name: deviceName,
208
+ id: deviceId,
209
+ type: deviceType,
210
+ displayMode: 0,
211
+ temperatureSensor: false,
212
+ temperatureSensorOutdoor: false,
213
+ temperatureSensorSupply: false,
214
+ presets: false,
215
+ temperatureSensor: false,
216
+ temperatureSensorOutdoor: false,
217
+ buttonsSensors: []
218
+ };
187
219
  const ervDevices = accountKeys.includes('ervDevices') ? pluginConfig[0].accounts[this.deviceIndex].ervDevices : pluginConfig[0].accounts[this.deviceIndex].ervDevices = [];
188
220
  const ervDeviceIdExist = ervDevices.some(device => device.id === deviceId)
189
- const pushTypeErv = deviceType === 3 && !ervDeviceIdExist ? ervDevices.push(device) : false;
221
+ const pushTypeErv = deviceType === 3 && !ervDeviceIdExist ? ervDevices.push(deviceErv) : false;
190
222
 
191
223
  //push new devices to array
192
224
  const pushNewDevice = ataDeviceIdExist || atwDeviceIdExist || ervDeviceIdExist ? false : newDevices.push(deviceId);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "displayName": "MELCloud Control",
3
3
  "name": "homebridge-melcloud-control",
4
- "version": "2.5.0-beta.68",
4
+ "version": "2.5.0-beta.69",
5
5
  "description": "Homebridge plugin to control Mitsubishi Air Conditioner, Heat Pump and Energy Recovery Ventilation.",
6
6
  "license": "MIT",
7
7
  "author": "grzegorz914",