2 * Copyright (c) 2010-2022 Contributors to the openHAB project
4 * See the NOTICE file(s) distributed with this work for additional
7 * This program and the accompanying materials are made available under the
8 * terms of the Eclipse Public License 2.0 which is available at
9 * http://www.eclipse.org/legal/epl-2.0
11 * SPDX-License-Identifier: EPL-2.0
13 package org.openhab.binding.somfytahoma.internal;
15 import java.util.Arrays;
16 import java.util.HashMap;
17 import java.util.HashSet;
21 import org.eclipse.jdt.annotation.NonNullByDefault;
22 import org.openhab.core.thing.ThingTypeUID;
25 * The {@link SomfyTahomaBindingConstants} class defines common constants, which are
26 * used across the whole binding.
28 * @author Ondrej Pecta - Initial contribution
29 * @author Laurent Garnier - Other portals integration
32 public class SomfyTahomaBindingConstants {
34 public static final String BINDING_ID = "somfytahoma";
38 public static final ThingTypeUID THING_TYPE_BRIDGE = new ThingTypeUID(BINDING_ID, "bridge");
41 public static final ThingTypeUID THING_TYPE_GATEWAY = new ThingTypeUID(BINDING_ID, "gateway");
44 public static final ThingTypeUID THING_TYPE_ROLLERSHUTTER = new ThingTypeUID(BINDING_ID, "rollershutter");
46 // Silent Roller Shutter
47 public static final ThingTypeUID THING_TYPE_ROLLERSHUTTER_SILENT = new ThingTypeUID(BINDING_ID,
48 "rollershutter_silent");
51 public static final ThingTypeUID THING_TYPE_ROLLERSHUTTER_UNO = new ThingTypeUID(BINDING_ID, "rollershutter_uno");
54 public static final ThingTypeUID THING_TYPE_SCREEN = new ThingTypeUID(BINDING_ID, "screen");
57 public static final ThingTypeUID THING_TYPE_VENETIANBLIND = new ThingTypeUID(BINDING_ID, "venetianblind");
60 public static final ThingTypeUID THING_TYPE_EXTERIORSCREEN = new ThingTypeUID(BINDING_ID, "exteriorscreen");
62 // Exterior Venetian Blind
63 public static final ThingTypeUID THING_TYPE_EXTERIORVENETIANBLIND = new ThingTypeUID(BINDING_ID,
64 "exteriorvenetianblind");
67 public static final ThingTypeUID THING_TYPE_GARAGEDOOR = new ThingTypeUID(BINDING_ID, "garagedoor");
70 public static final ThingTypeUID THING_TYPE_AWNING = new ThingTypeUID(BINDING_ID, "awning");
73 public static final ThingTypeUID THING_TYPE_ACTIONGROUP = new ThingTypeUID(BINDING_ID, "actiongroup");
76 public static final ThingTypeUID THING_TYPE_ONOFF = new ThingTypeUID(BINDING_ID, "onoff");
79 public static final ThingTypeUID THING_TYPE_LIGHT = new ThingTypeUID(BINDING_ID, "light");
82 public static final ThingTypeUID THING_TYPE_DIMMER_LIGHT = new ThingTypeUID(BINDING_ID, "dimmerlight");
85 public static final ThingTypeUID THING_TYPE_LIGHTSENSOR = new ThingTypeUID(BINDING_ID, "lightsensor");
88 public static final ThingTypeUID THING_TYPE_SMOKESENSOR = new ThingTypeUID(BINDING_ID, "smokesensor");
91 public static final ThingTypeUID THING_TYPE_CONTACTSENSOR = new ThingTypeUID(BINDING_ID, "contactsensor");
94 public static final ThingTypeUID THING_TYPE_OCCUPANCYSENSOR = new ThingTypeUID(BINDING_ID, "occupancysensor");
97 public static final ThingTypeUID THING_TYPE_WATERSENSOR = new ThingTypeUID(BINDING_ID, "watersensor");
100 public static final ThingTypeUID THING_TYPE_HUMIDITYSENSOR = new ThingTypeUID(BINDING_ID, "humiditysensor");
103 public static final ThingTypeUID THING_TYPE_WINDOW = new ThingTypeUID(BINDING_ID, "window");
106 public static final ThingTypeUID THING_TYPE_INTERNAL_ALARM = new ThingTypeUID(BINDING_ID, "internalalarm");
107 public static final ThingTypeUID THING_TYPE_EXTERNAL_ALARM = new ThingTypeUID(BINDING_ID, "externalalarm");
108 public static final ThingTypeUID THING_TYPE_MYFOX_ALARM = new ThingTypeUID(BINDING_ID, "myfoxalarm");
111 public static final ThingTypeUID THING_TYPE_POD = new ThingTypeUID(BINDING_ID, "pod");
114 public static final ThingTypeUID THING_TYPE_VALVE_HEATING_SYSTEM = new ThingTypeUID(BINDING_ID,
115 "valveheatingsystem");
116 public static final ThingTypeUID THING_TYPE_ZWAVE_HEATING_SYSTEM = new ThingTypeUID(BINDING_ID, "heatingsystem");
117 public static final ThingTypeUID THING_TYPE_ONOFF_HEATING_SYSTEM = new ThingTypeUID(BINDING_ID,
118 "onoffheatingsystem");
119 public static final ThingTypeUID THING_TYPE_EXTERIOR_HEATING_SYSTEM = new ThingTypeUID(BINDING_ID,
120 "exteriorheatingsystem");
123 public static final ThingTypeUID THING_TYPE_DOOR_LOCK = new ThingTypeUID(BINDING_ID, "doorlock");
126 public static final ThingTypeUID THING_TYPE_PERGOLA = new ThingTypeUID(BINDING_ID, "pergola");
128 // Bioclimatic Pergola
129 public static final ThingTypeUID THING_TYPE_BIOCLIMATIC_PERGOLA = new ThingTypeUID(BINDING_ID,
130 "bioclimaticpergola");
133 public static final ThingTypeUID THING_TYPE_WINDOW_HANDLE = new ThingTypeUID(BINDING_ID, "windowhandle");
135 // Temperature sensor
136 public static final ThingTypeUID THING_TYPE_TEMPERATURESENSOR = new ThingTypeUID(BINDING_ID, "temperaturesensor");
139 public static final ThingTypeUID THING_TYPE_GATE = new ThingTypeUID(BINDING_ID, "gate");
142 public static final ThingTypeUID THING_TYPE_CURTAIN = new ThingTypeUID(BINDING_ID, "curtain");
144 // Electricity sensor
145 public static final ThingTypeUID THING_TYPE_ELECTRICITYSENSOR = new ThingTypeUID(BINDING_ID, "electricitysensor");
147 // Water Heating System
148 public static final ThingTypeUID THING_TYPE_WATERHEATINGSYSTEM = new ThingTypeUID(BINDING_ID, "waterheatingsystem");
151 public static final ThingTypeUID THING_TYPE_DOCK = new ThingTypeUID(BINDING_ID, "dock");
154 public static final ThingTypeUID THING_TYPE_SIREN = new ThingTypeUID(BINDING_ID, "siren");
156 // Adjustable slats roller shutter
157 public static final ThingTypeUID THING_TYPE_ADJUSTABLE_SLATS_ROLLERSHUTTER = new ThingTypeUID(BINDING_ID,
158 "adjustableslatsrollershutter");
161 public static final ThingTypeUID THING_TYPE_MYFOX_CAMERA = new ThingTypeUID(BINDING_ID, "myfoxcamera");
164 public static final ThingTypeUID THING_TYPE_THERMOSTAT = new ThingTypeUID(BINDING_ID, "thermostat");
166 // HitachiAirToWaterHeatingZone
167 public static final ThingTypeUID THING_TYPE_HITACHI_ATWHZ = new ThingTypeUID(BINDING_ID, "hitachiatwhz");
170 public static final ThingTypeUID THING_TYPE_HITACHI_DHW = new ThingTypeUID(BINDING_ID, "hitachidhw");
172 // HitachiAirToWaterMainComponent
173 public static final ThingTypeUID THING_TYPE_HITACHI_ATWMC = new ThingTypeUID(BINDING_ID, "hitachiatwmc");
176 public static final ThingTypeUID THING_TYPE_RAINSENSOR = new ThingTypeUID(BINDING_ID, "rainsensor");
178 // List of all Channel ids
179 public static final String RSSI = "rssi";
182 public static final String STATUS = "status";
183 public static final String SCENARIOS = "scenarios";
185 // Roller shutter, Awning, Screen, Blind, Garage door, Window, Curtain
186 public static final String CONTROL = "control";
188 // Adjustable slats roller shutter
189 public static final String ROCKER = "rocker";
191 // Silent roller shutter
192 public static final String CONTROL_SILENT = "control_silent";
194 // Bioclimatic Pergola
195 public static final String SLATS = "slats";
196 public static final String PERGOLA_COMMAND = "pergola_command";
198 // Blind, Bioclimatic Pergola
199 public static final String ORIENTATION = "orientation";
202 public static final String CLOSURE_AND_ORIENTATION = "closure_orientation";
205 public static final String EXECUTE_ACTION = "execute_action";
208 public static final String SWITCH = "switch";
211 public static final String LIGHT_INTENSITY = "light_intensity";
214 public static final String LOCK = "lock";
215 public static final String OPEN = "open";
217 // Smoke sensor, Occupancy sensor, Contact sensor, Water sensor, Rain sensor
218 public static final String CONTACT = "contact";
220 // Smoke sensor, Occupancy sensor, Contact sensor, Water sensor
221 public static final String SENSOR_DEFECT = "sensor_defect";
224 public static final String HUMIDITY = "humidity";
227 public static final String ALARM_CHECK = "alarm_check";
228 public static final String RADIO_BATTERY = "radio_battery";
229 public static final String SENSOR_BATTERY = "sensor_battery";
232 public static final String LUMINANCE = "luminance";
234 // Temperature sensor
235 public static final String TEMPERATURE = "temperature";
238 public static final String ALARM_COMMAND = "alarm_command";
239 public static final String ALARM_STATE = "alarm_state";
240 public static final String TARGET_ALARM_STATE = "target_alarm_state";
241 public static final String INTRUSION_CONTROL = "intrusion_control";
242 public static final String INTRUSION_STATE = "intrusion_state";
245 public static final String CYCLIC_BUTTON = "cyclic_button";
246 public static final String LIGHTING_LED_POD_MODE = "lighting_led_pod_mode";
249 public static final String TARGET_TEMPERATURE = "target_temperature";
250 public static final String CURRENT_TEMPERATURE = "current_temperature";
251 public static final String CURRENT_STATE = "current_state";
252 public static final String BATTERY_LEVEL = "battery_level";
253 public static final String TARGET_HEATING_LEVEL = "target_heating_level";
254 public static final String HEATING_LEVEL = "heating_level";
257 public static final String HEATING_MODE = "heating_mode";
258 public static final String DEROGATION_ACTIVATION = "derogation_activation";
260 // Thermostat & Valve Heating system
261 public static final String DEROGATED_TARGET_TEMPERATURE = "derogated_target_temperature";
262 public static final String DEROGATION_HEATING_MODE = "derogation_heating_mode";
264 // Valve heating system
265 public static final String CURRENT_HEATING_MODE = "current_heating_mode";
266 public static final String OPEN_CLOSED_VALVE = "open_closed_valve";
267 public static final String OPERATING_MODE = "operating_mode";
270 public static final String HANDLE_STATE = "handle_state";
273 public static final String GATE_STATE = "gate_state";
274 public static final String GATE_COMMAND = "gate_command";
275 public static final String GATE_POSITION = "gate_position";
278 public static final String ENERGY_CONSUMPTION = "energy_consumption";
281 public static final String MIDDLEWATER_TEMPERATURE = "middlewater_temperature";
282 public static final String BOOST_MODE = "boost_mode";
283 public static final String AWAY_MODE = "away_mode";
284 public static final String BOOST_MODE_DURATION = "boost_mode_duration";
285 public static final String AWAY_MODE_DURATION = "away_mode_duration";
286 public static final String HEAT_PUMP_OPERATING_TIME = "heat_pump_operating_time";
287 public static final String POWER_HEAT_PUMP = "power_heatpump";
288 public static final String POWER_HEAT_ELEC = "power_heatelec";
289 public static final String WATER_HEATER_MODE = "mode";
290 public static final String WATER_TEMPERATURE = "water_temperature";
291 public static final String ELECTRIC_BOOSTER_OPERATING_TIME = "electric_booster_operating_time";
292 public static final String SHOWERS = "showers";
295 public static final String BATTERY_STATUS = "battery_status";
296 public static final String SIREN_STATUS = "siren_status";
297 public static final String SHORT_BIP = "short_beep";
298 public static final String LONG_BIP = "long_beep";
301 public static final String MEMORIZED_VOLUME = "memorized_volume";
302 public static final String ONOFF_STATE = "onoff";
303 public static final String BATTERY = "battery";
306 public static final String MYFOX_ALARM_COMMAND = "myfox_alarm_command";
308 // Myfox Alarm & Camera
309 public static final String CLOUD_STATUS = "cloud_status";
312 public static final String SHUTTER = "shutter";
314 // Hitachi Air To Water Heating Zone
315 public static final String ZONE_MODE = "zone_mode";
316 public static final String CIRCUIT_CONTROL = "circuit_control";
317 public static final String CIRCUIT_STATUS = "circuit_status";
318 public static final String YUTAKI_TARGET_MODE = "yutaki_target_mode";
319 public static final String YUTAKI_MODE = "yutaki_mode";
320 public static final String HOLIDAY_MODE = "holiday_mode";
322 // Hitachi Air To Water Main Component
323 public static final String AUTO_MANU_MODE = "auto_manu_mode";
324 public static final String UNIT_CONTROL = "unit_control";
325 public static final String UNIT_MODE_STATUS = "unit_mode_status";
326 public static final String UNIT_MODE_CONTROL = "unit_mode_control";
327 public static final String BLOCK_MENU_CONTROL = "block_menu_control";
328 public static final String SPACE_MODE = "space_mode";
329 public static final String ECO_MODE_TARGET_OFFSET = "eco_mode_target_offset";
330 public static final String COMM_ALARM_BIT_STATUS = "comm_alarm_bit_status";
331 public static final String OPERATION = "operation";
332 public static final String OUTDOOR_TEMP = "outdoor_temp";
333 public static final String WATER_INLET_TEMP = "water_inlet_temp";
334 public static final String WATER_OUTLET_TEMP = "water_outlet_temp";
335 public static final String ECO_MODE_OFFSET = "eco_mode_offset";
336 public static final String WATER_OUTLET_HP_TEMP = "water_outlet_hp_temp";
337 public static final String LIQUID_TEMP = "liquid_temp";
338 public static final String LIQUID_TEMP_THMI = "liquid_temp_thmi";
339 public static final String COMPRESSOR_RUNNING_CURRENT = "compressor_running_current";
340 public static final String WATER_TEMP_SETTING = "water_temp_setting";
341 public static final String YUTAKI_OPERATING_MODE = "yutaki_operating_mode";
344 public static final String DHW_MODE = "dhw_mode";
345 public static final String ANTI_LEGIONELLA_TEMP = "anti_legionella_temp";
346 public static final String DHW = "dhw";
347 public static final String ANTI_LEGIONELLA = "anti_legionella";
348 public static final String DHW_SETTING_TEMP = "dhw_setting_temp";
349 public static final String DHW_TEMP = "dhw_temp";
350 public static final String TARGET_BOOST_MODE = "target_boost_mode";
351 public static final String ALARM_NUMBER = "alarm_number";
354 public static final String COZYTOUCH_PORTAL = "ha110-1.overkiz.com";
355 public static final String TAHOMA_PORTAL = "www.tahomalink.com";
356 public static final String COZYTOUCH_OAUTH2_URL = "api.groupe-atlantic.com";
357 public static final String COZYTOUCH_OAUTH2_BASICAUTH = "czduc0RZZXdWbjVGbVV4UmlYN1pVSUM3ZFI4YTphSDEzOXZmbzA1ZGdqeDJkSFVSQkFTbmhCRW9h";
358 public static final String COZYTOUCH_OAUTH2_TOKEN_URL = "/token";
359 public static final String COZYTOUCH_OAUTH2_JWT_URL = "/gacoma/gacomawcfservice/accounts/jwt";
360 public static final String API_BASE_URL = "/enduser-mobile-web/enduserAPI/";
361 public static final String EVENTS_URL = "events/";
362 public static final String SETUP_URL = "setup/";
363 public static final String GATEWAYS_URL = SETUP_URL + "gateways/";
364 public static final String DEVICES_URL = SETUP_URL + "devices/";
365 public static final String REFRESH_URL = DEVICES_URL + "states/refresh";
366 public static final String EXEC_URL = "exec/";
367 public static final String DELETE_URL = EXEC_URL + "current/setup/";
368 public static final String TAHOMA_AGENT = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36";
369 public static final int TAHOMA_TIMEOUT = 5;
370 public static final String UNAUTHORIZED = "Not logged in";
371 public static final int TYPE_NONE = 0;
372 public static final int TYPE_PERCENT = 1;
373 public static final int TYPE_DECIMAL = 2;
374 public static final int TYPE_STRING = 3;
375 public static final int TYPE_BOOLEAN = 6;
376 public static final String UNAVAILABLE = "unavailable";
377 public static final String AUTHENTICATION_CHALLENGE = "HTTP protocol violation: Authentication challenge without WWW-Authenticate header";
378 public static final String AUTHENTICATION_OAUTH_GRANT_ERROR = "Provided Authorization Grant is invalid.";
379 public static final String TOO_MANY_REQUESTS = "Too many requests, try again later";
380 public static final int SUSPEND_TIME = 120;
381 public static final int RECONCILIATION_TIME = 600;
384 public static final String COMMAND_MY = "my";
385 public static final String COMMAND_SET_CLOSURE = "setClosure";
386 public static final String COMMAND_SET_CLOSURE_ORIENTATION = "setClosureAndOrientation";
387 public static final String COMMAND_SET_DEPLOYMENT = "setDeployment";
388 public static final String COMMAND_SET_ORIENTATION = "setOrientation";
389 public static final String COMMAND_SET_CLOSURESPEED = "setClosureAndLinearSpeed";
390 public static final String COMMAND_SET_HEATINGLEVEL = "setHeatingLevel";
391 public static final String COMMAND_SET_PEDESTRIANPOSITION = "setPedestrianPosition";
392 public static final String COMMAND_SET_ROCKERPOSITION = "setRockerPosition";
393 public static final String COMMAND_SET_DEROGATION = "setDerogation";
394 public static final String COMMAND_UP = "up";
395 public static final String COMMAND_DOWN = "down";
396 public static final String COMMAND_OPEN = "open";
397 public static final String COMMAND_CLOSE = "close";
398 public static final String COMMAND_DEPLOY = "deploy";
399 public static final String COMMAND_UNDEPLOY = "undeploy";
400 public static final String COMMAND_OPEN_SLATS = "openSlats";
401 public static final String COMMAND_CLOSE_SLATS = "closeSlats";
402 public static final String COMMAND_STOP = "stop";
403 public static final String COMMAND_OFF = "off";
404 public static final String COMMAND_CHECK_TRIGGER = "checkEventTrigger";
405 public static final String COMMAND_SET_BOOST_MODE_DURATION = "setBoostModeDuration";
406 public static final String COMMAND_SET_WATER_HEATER_MODE = "setDHWMode";
407 public static final String COMMAND_SET_AWAY_MODE_DURATION = "setAwayModeDuration";
408 public static final String COMMAND_SET_CURRENT_OPERATING_MODE = "setCurrentOperatingMode";
409 public static final String COMMAND_SET_TARGET_TEMPERATURE = "setTargetTemperature";
410 public static final String COMMAND_REFRESH_DHWMODE = "refreshDHWMode";
411 public static final String COMMAND_REFRESH_BOOST_MODE_DURATION = "refreshBoostModeDuration";
414 public static final String OPERATING_MODE_STATE = "core:OperatingModeState";
415 public static final String ELECTRIC_BOOSTER_OPERATING_TIME_STATE = "io:ElectricBoosterOperatingTimeState";
416 public static final String WATER_HEATER_MODE_STATE = "io:DHWModeState";
417 public static final String POWER_HEAT_ELEC_STATE = "io:PowerHeatElectricalState";
418 public static final String POWER_HEAT_PUMP_STATE = "io:PowerHeatPumpState";
419 public static final String HEAT_PUMP_OPERATING_TIME_STATE = "io:HeatPumpOperatingTimeState";
420 public static final String BOOST_MODE_DURATION_STATE = "core:BoostModeDurationState";
421 public static final String AWAY_MODE_DURATION_STATE = "io:AwayModeDurationState";
422 public static final String MIDDLE_WATER_TEMPERATURE_STATE = "io:MiddleWaterTemperatureState";
423 public static final String NAME_STATE = "core:NameState";
424 public static final String RSSI_LEVEL_STATE = "core:RSSILevelState";
425 public static final String STATUS_STATE = "core:StatusState";
426 public static final String ENERGY_CONSUMPTION_STATE = "core:ElectricEnergyConsumptionState";
427 public static final String CYCLIC_BUTTON_STATE = "core:CyclicButtonState";
428 public static final String BATTERY_STATUS_STATE = "internal:BatteryStatusState";
429 public static final String SLATE_ORIENTATION_STATE = "core:SlateOrientationState";
430 public static final String CLOSURE_OR_ROCKER_STATE = "core:ClosureOrRockerPositionState";
431 public static final String MYFOX_SHUTTER_STATUS_STATE = "myfox:ShutterStatusState";
432 public static final String TARGET_CLOSURE_STATE = "core:TargetClosureState";
433 public static final String WATER_DETECTION_STATE = "core:WaterDetectionState";
434 public static final String CLOUD_DEVICE_STATUS_STATE = "core:CloudDeviceStatusState";
435 public static final String BATTERY_LEVEL_STATE = "core:BatteryLevelState";
436 public static final String SIREN_STATUS_STATE = "internal:SirenStatusState";
437 public static final String TARGET_TEMPERATURE_STATE = "core:TargetTemperatureState";
438 public static final String TEMPERATURE_STATE = "core:TemperatureState";
439 public static final String TARGET_ROOM_TEMPERATURE_STATE = "core:TargetRoomTemperatureState";
440 public static final String SMOKE_STATE = "core:SmokeState";
441 public static final String SENSOR_DEFECT_STATE = "core:SensorDefectState";
442 public static final String RADIO_PART_BATTERY_STATE = "io:MaintenanceRadioPartBatteryState";
443 public static final String SENSOR_PART_BATTERY_STATE = "io:MaintenanceSensorPartBatteryState";
444 public static final String ZWAVE_SET_POINT_TYPE_STATE = "zwave:SetPointTypeState";
446 // supported uiClasses
447 public static final String CLASS_ROLLER_SHUTTER = "RollerShutter";
448 public static final String CLASS_SCREEN = "Screen";
449 public static final String CLASS_VENETIAN_BLIND = "VenetianBlind";
450 public static final String CLASS_EXTERIOR_SCREEN = "ExteriorScreen";
451 public static final String CLASS_EXTERIOR_VENETIAN_BLIND = "ExteriorVenetianBlind";
452 public static final String CLASS_GARAGE_DOOR = "GarageDoor";
453 public static final String CLASS_AWNING = "Awning";
454 public static final String CLASS_ON_OFF = "OnOff";
455 public static final String CLASS_LIGHT = "Light";
456 public static final String CLASS_LIGHT_SENSOR = "LightSensor";
457 public static final String CLASS_SMOKE_SENSOR = "SmokeSensor";
458 public static final String CLASS_CONTACT_SENSOR = "ContactSensor";
459 public static final String CLASS_OCCUPANCY_SENSOR = "OccupancySensor";
460 public static final String CLASS_HUMIDITY_SENSOR = "HumiditySensor";
461 public static final String CLASS_WINDOW = "Window";
462 public static final String CLASS_ALARM = "Alarm";
463 public static final String CLASS_POD = "Pod";
464 public static final String CLASS_HEATING_SYSTEM = "HeatingSystem";
465 public static final String CLASS_EXTERIOR_HEATING_SYSTEM = "ExteriorHeatingSystem";
466 public static final String CLASS_DOOR_LOCK = "DoorLock";
467 public static final String CLASS_PERGOLA = "Pergola";
468 public static final String CLASS_WINDOW_HANDLE = "WindowHandle";
469 public static final String CLASS_TEMPERATURE_SENSOR = "TemperatureSensor";
470 public static final String CLASS_GATE = "Gate";
471 public static final String CLASS_CURTAIN = "Curtain";
472 public static final String CLASS_ELECTRICITY_SENSOR = "ElectricitySensor";
473 public static final String CLASS_DOCK = "Dock";
474 public static final String CLASS_SIREN = "Siren";
475 public static final String CLASS_ADJUSTABLE_SLATS_ROLLER_SHUTTER = "AdjustableSlatsRollerShutter";
476 public static final String CLASS_CAMERA = "Camera";
477 public static final String CLASS_WATER_HEATING_SYSTEM = "WaterHeatingSystem";
478 public static final String CLASS_HITACHI_HEATING_SYSTEM = "HitachiHeatingSystem";
479 public static final String CLASS_RAIN_SENSOR = "RainSensor";
481 // unsupported uiClasses
482 public static final String THING_PROTOCOL_GATEWAY = "ProtocolGateway";
483 public static final String THING_REMOTE_CONTROLLER = "RemoteController";
484 public static final String THING_NETWORK_COMPONENT = "NetworkComponent";
485 public static final String THING_GENERIC = "Generic";
488 public static final String FAILED_EVENT = "FAILED";
489 public static final String COMPLETED_EVENT = "COMPLETED";
491 // supported thing types for discovery
492 public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = new HashSet<>(Arrays.asList(THING_TYPE_GATEWAY,
493 THING_TYPE_ROLLERSHUTTER, THING_TYPE_ROLLERSHUTTER_SILENT, THING_TYPE_SCREEN, THING_TYPE_VENETIANBLIND,
494 THING_TYPE_EXTERIORSCREEN, THING_TYPE_EXTERIORVENETIANBLIND, THING_TYPE_GARAGEDOOR, THING_TYPE_AWNING,
495 THING_TYPE_ACTIONGROUP, THING_TYPE_ONOFF, THING_TYPE_LIGHT, THING_TYPE_LIGHTSENSOR, THING_TYPE_SMOKESENSOR,
496 THING_TYPE_CONTACTSENSOR, THING_TYPE_OCCUPANCYSENSOR, THING_TYPE_WINDOW, THING_TYPE_INTERNAL_ALARM,
497 THING_TYPE_EXTERNAL_ALARM, THING_TYPE_POD, THING_TYPE_ZWAVE_HEATING_SYSTEM, THING_TYPE_ONOFF_HEATING_SYSTEM,
498 THING_TYPE_DOOR_LOCK, THING_TYPE_PERGOLA, THING_TYPE_WINDOW_HANDLE, THING_TYPE_TEMPERATURESENSOR,
499 THING_TYPE_GATE, THING_TYPE_CURTAIN, THING_TYPE_ELECTRICITYSENSOR, THING_TYPE_DOCK, THING_TYPE_SIREN,
500 THING_TYPE_ADJUSTABLE_SLATS_ROLLERSHUTTER, THING_TYPE_MYFOX_CAMERA, THING_TYPE_ROLLERSHUTTER_UNO,
501 THING_TYPE_WATERSENSOR, THING_TYPE_HUMIDITYSENSOR, THING_TYPE_MYFOX_ALARM, THING_TYPE_THERMOSTAT,
502 THING_TYPE_DIMMER_LIGHT, THING_TYPE_EXTERIOR_HEATING_SYSTEM, THING_TYPE_VALVE_HEATING_SYSTEM,
503 THING_TYPE_BIOCLIMATIC_PERGOLA, THING_TYPE_WATERHEATINGSYSTEM, THING_TYPE_HITACHI_ATWHZ,
504 THING_TYPE_HITACHI_DHW, THING_TYPE_HITACHI_ATWMC, THING_TYPE_RAINSENSOR));
507 public static Map<Integer, String> gatewayTypes = new HashMap<Integer, String>() {
509 put(0, "VIRTUAL_KIZBOX");
512 put(20, "VERISURE_ALARM_SYSTEM");
513 put(21, "KIZBOX_MINI");
514 put(24, "KIZBOX_V2");
515 put(25, "MYFOX_ALARM_SYSTEM");
516 put(27, "KIZBOX_MINI_VMBUS");
517 put(28, "KIZBOX_MINI_IO");
518 put(29, "TAHOMA_V2");
519 put(30, "KIZBOX_V2_3H");
520 put(31, "KIZBOX_V2_2H");
521 put(32, "COZYTOUCH");
522 put(34, "CONNEXOON");
523 put(35, "JSW_CAMERA");
524 put(37, "KIZBOX_MINI_DAUGHTERBOARD");
525 put(38, "KIZBOX_MINI_DAUGHTERBOARD_ZWAVE");
526 put(39, "KIZBOX_MINI_DAUGHTERBOARD_ENOCEAN");
527 put(40, "KIZBOX_MINI_RAILDIN");
528 put(41, "TAHOMA_V2_RTS");
529 put(42, "KIZBOX_MINI_MODBUS");
530 put(43, "KIZBOX_MINI_OVP");
531 put(53, "CONNEXOON_RTS");
532 put(54, "OPENDOORS_LOCK_SYSTEM");
533 put(56, "CONNEXOON_RTS_JAPAN");
534 put(58, "HOME_PROTECT_SYSTEM");
535 put(62, "CONNEXOON_RTS_AUSTRALIA");
536 put(63, "THERMOSTAT_SOMFY_SYSTEM");
537 put(64, "BOX_ULTRA_LOW_COST_RTS");
538 put(65, "SMARTLY_MINI_DAUGHTERBOARD_ZWAVE");
539 put(66, "SMARTLY_MINIBOX_RAILDIN");
540 put(67, "TAHOMA_BEE");
541 put(72, "TAHOMA_RAIL_DIN");
544 put(99, "CONNECTIVITY KIT");