2 * Copyright (c) 2010-2023 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.venstarthermostat.internal;
17 import org.eclipse.jdt.annotation.NonNullByDefault;
18 import org.openhab.core.thing.ThingTypeUID;
21 * The {@link VenstarThermostatBinding} class defines common constants, which are
22 * used across the whole binding.
24 * @author William Welliver - Initial contribution
25 * @author Matthew Davies - added awayMode and awayModeRaw to include thermostat away mode in binding
26 * @author Matthew Davies - added more binding functionality to get close to the API functionality
29 public class VenstarThermostatBindingConstants {
31 public static final String BINDING_ID = "venstarthermostat";
33 // List of all Thing Type UIDs
34 public static final ThingTypeUID THING_TYPE_COLOR_TOUCH = new ThingTypeUID(BINDING_ID, "colorTouchThermostat");
36 public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES = Set.of(THING_TYPE_COLOR_TOUCH);
37 // List of all Channel ids
38 public static final String CHANNEL_TEMPERATURE = "temperature";
39 public static final String CHANNEL_HUMIDITY = "humidity";
40 public static final String CHANNEL_EXTERNAL_TEMPERATURE = "outdoorTemperature";
42 public static final String CHANNEL_HEATING_SETPOINT = "heatingSetpoint";
43 public static final String CHANNEL_COOLING_SETPOINT = "coolingSetpoint";
44 public static final String CHANNEL_SYSTEM_STATE = "systemState";
45 public static final String CHANNEL_SYSTEM_MODE = "systemMode";
46 public static final String CHANNEL_SYSTEM_STATE_RAW = "systemStateRaw";
47 public static final String CHANNEL_SYSTEM_MODE_RAW = "systemModeRaw";
48 public static final String CHANNEL_AWAY_MODE = "awayMode";
49 public static final String CHANNEL_AWAY_MODE_RAW = "awayModeRaw";
50 public static final String CHANNEL_FAN_MODE = "fanMode";
51 public static final String CHANNEL_FAN_MODE_RAW = "fanModeRaw";
52 public static final String CHANNEL_FAN_STATE = "fanState";
53 public static final String CHANNEL_FAN_STATE_RAW = "fanStateRaw";
54 public static final String CHANNEL_SCHEDULE_MODE = "scheduleMode";
55 public static final String CHANNEL_SCHEDULE_MODE_RAW = "scheduleModeRaw";
56 public static final String CHANNEL_SCHEDULE_PART = "schedulePart";
57 public static final String CHANNEL_SCHEDULE_PART_RAW = "schedulePartRaw";
58 public static final String CHANNEL_TIMESTAMP_RUNTIME_DAY = "timestampDay";
59 public static final String CHANNEL_HEAT1_RUNTIME_DAY = "heat1RuntimeDay";
60 public static final String CHANNEL_HEAT2_RUNTIME_DAY = "heat2RuntimeDay";
61 public static final String CHANNEL_COOL1_RUNTIME_DAY = "cool1RuntimeDay";
62 public static final String CHANNEL_COOL2_RUNTIME_DAY = "cool2RuntimeDay";
63 public static final String CHANNEL_AUX1_RUNTIME_DAY = "aux1RuntimeDay";
64 public static final String CHANNEL_AUX2_RUNTIME_DAY = "aux2RuntimeDay";
65 public static final String CHANNEL_FC_RUNTIME_DAY = "freeCoolRuntimeDay";
66 // add query/runtimes and query/alerts - these will need an additional class similar to Venstar.infodata - more work
68 public static final String CONFIG_USERNAME = "username";
69 public static final String CONFIG_PASSWORD = "password";
70 public static final String CONFIG_REFRESH = "refresh";
72 public static final String PROPERTY_URL = "url";
73 public static final String PROPERTY_UUID = "uuid";
75 public static final String REFRESH_INVALID = "refresh-invalid";
76 public static final String EMPTY_INVALID = "empty-invalid";