]> git.basschouten.com Git - openhab-addons.git/blob
3a2cc09e25cf64c8ffe8676aeee858133ad4a223
[openhab-addons.git] /
1 /**
2  * Copyright (c) 2010-2020 Contributors to the openHAB project
3  *
4  * See the NOTICE file(s) distributed with this work for additional
5  * information.
6  *
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
10  *
11  * SPDX-License-Identifier: EPL-2.0
12  */
13 package org.openhab.binding.tado.internal;
14
15 import org.eclipse.jdt.annotation.NonNullByDefault;
16 import org.openhab.core.thing.ThingTypeUID;
17
18 /**
19  * The {@link TadoBinding} class defines common constants, which are
20  * used across the whole binding.
21  *
22  * @author Dennis Frommknecht - Initial contribution
23  * @author Andrew Fiddian-Green - Added Low Battery Alarm, A/C Power and Open Window channels
24  *
25  */
26 @NonNullByDefault
27 public class TadoBindingConstants {
28
29     public static final String BINDING_ID = "tado";
30
31     // List of all Thing Type UIDs
32     public static final ThingTypeUID THING_TYPE_HOME = new ThingTypeUID(BINDING_ID, "home");
33     public static final ThingTypeUID THING_TYPE_ZONE = new ThingTypeUID(BINDING_ID, "zone");
34     public static final ThingTypeUID THING_TYPE_MOBILE_DEVICE = new ThingTypeUID(BINDING_ID, "mobiledevice");
35
36     // List of all Channel IDs
37     public static final String PROPERTY_HOME_TEMPERATURE_UNIT = "temperatureUnit";
38
39     public static enum TemperatureUnit {
40         CELSIUS,
41         FAHRENHEIT
42     }
43
44     public static final String CHANNEL_ZONE_CURRENT_TEMPERATURE = "currentTemperature";
45     public static final String CHANNEL_ZONE_HUMIDITY = "humidity";
46
47     public static final String CHANNEL_ZONE_HEATING_POWER = "heatingPower";
48     // air conditioning power
49     public static final String CHANNEL_ZONE_AC_POWER = "acPower";
50
51     public static final String CHANNEL_ZONE_HVAC_MODE = "hvacMode";
52
53     public static enum HvacMode {
54         OFF,
55         HEAT,
56         COOL,
57         DRY,
58         FAN,
59         AUTO
60     }
61
62     public static final String CHANNEL_ZONE_TARGET_TEMPERATURE = "targetTemperature";
63
64     public static final String CHANNEL_ZONE_SWING = "swing";
65
66     public static final String CHANNEL_ZONE_FAN_SPEED = "fanspeed";
67
68     public static enum FanSpeed {
69         LOW,
70         MIDDLE,
71         HIGH,
72         AUTO
73     }
74
75     public static final String CHANNEL_ZONE_OPERATION_MODE = "operationMode";
76
77     public static enum OperationMode {
78         SCHEDULE,
79         TIMER,
80         MANUAL,
81         UNTIL_CHANGE
82     }
83
84     public static final String CHANNEL_ZONE_TIMER_DURATION = "timerDuration";
85     public static final String CHANNEL_ZONE_OVERLAY_EXPIRY = "overlayExpiry";
86
87     // battery low alarm channel
88     public static final String CHANNEL_ZONE_BATTERY_LOW_ALARM = "batteryLowAlarm";
89     // open window detected channel
90     public static final String CHANNEL_ZONE_OPEN_WINDOW_DETECTED = "openWindowDetected";
91
92     public static final String CHANNEL_MOBILE_DEVICE_AT_HOME = "atHome";
93
94     // Configuration
95     public static final String CONFIG_ZONE_ID = "id";
96     public static final String CONFIG_MOBILE_DEVICE_ID = "id";
97
98     // Properties
99     public static final String PROPERTY_ZONE_NAME = "name";
100     public static final String PROPERTY_ZONE_TYPE = "type";
101
102     public static enum ZoneType {
103         HEATING,
104         AIR_CONDITIONING,
105         HOT_WATER
106     }
107
108     public static final String PROPERTY_MOBILE_DEVICE_NAME = "name";
109 }