]> git.basschouten.com Git - openhab-addons.git/blob
33f5972f77239c33c58346e83bf1f759e006dd13
[openhab-addons.git] /
1 /**
2  * Copyright (c) 2010-2023 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.vesync.internal;
14
15 import org.eclipse.jdt.annotation.NonNullByDefault;
16 import org.openhab.core.thing.ThingTypeUID;
17
18 import com.google.gson.FieldNamingPolicy;
19 import com.google.gson.Gson;
20 import com.google.gson.GsonBuilder;
21
22 /**
23  * The {@link VeSyncConstants} class defines common constants, which are
24  * used across the whole binding.
25  *
26  * @author David Goodyear - Initial contribution
27  */
28 @NonNullByDefault
29 public class VeSyncConstants {
30
31     public static final Gson GSON = new GsonBuilder()
32             .setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES).setPrettyPrinting()
33             .disableHtmlEscaping().serializeNulls().create();
34
35     private static final String BINDING_ID = "vesync";
36
37     public static final long DEFAULT_REFRESH_INTERVAL_DISCOVERED_DEVICES = 3600;
38     public static final long DEFAULT_POLL_INTERVAL_AIR_FILTERS_DEVICES = 10;
39
40     // List of all Thing Type UIDs
41     public static final ThingTypeUID THING_TYPE_BRIDGE = new ThingTypeUID(BINDING_ID, "bridge");
42     public static final ThingTypeUID THING_TYPE_AIR_PURIFIER = new ThingTypeUID(BINDING_ID, "airPurifier");
43     public static final ThingTypeUID THING_TYPE_AIR_HUMIDIFIER = new ThingTypeUID(BINDING_ID, "airHumidifier");
44
45     // Thing configuration properties
46     public static final String DEVICE_MAC_ID = "macAddress";
47
48     public static final String EMPTY_STRING = "";
49
50     // Base Device Channel Names
51     public static final String DEVICE_CHANNEL_ENABLED = "enabled";
52     public static final String DEVICE_CHANNEL_DISPLAY_ENABLED = "display";
53     public static final String DEVICE_CHANNEL_CHILD_LOCK_ENABLED = "childLock";
54     public static final String DEVICE_CHANNEL_AIR_FILTER_LIFE_PERCENTAGE_REMAINING = "filterLifePercentage";
55     public static final String DEVICE_CHANNEL_FAN_MODE_ENABLED = "fanMode";
56     public static final String DEVICE_CHANNEL_FAN_SPEED_ENABLED = "manualFanSpeed";
57     public static final String DEVICE_CHANNEL_ERROR_CODE = "errorCode";
58     public static final String DEVICE_CHANNEL_AIRQUALITY_BASIC = "airQuality";
59     public static final String DEVICE_CHANNEL_AIRQUALITY_PM25 = "airQualityPM25";
60
61     public static final String DEVICE_CHANNEL_AF_CONFIG_DISPLAY_FOREVER = "configDisplayForever";
62     public static final String DEVICE_CHANNEL_AF_CONFIG_AUTO_MODE_PREF = "configAutoMode";
63
64     public static final String DEVICE_CHANNEL_AF_AUTO_OFF_CALC_TIME = "timerExpiry";
65     public static final String DEVICE_CHANNEL_AF_CONFIG_AUTO_ROOM_SIZE = "configAutoRoomSize";
66     public static final String DEVICE_CHANNEL_AF_SCHEDULES_COUNT = "schedulesCount";
67     public static final String DEVICE_CHANNEL_AF_NIGHT_LIGHT = "nightLightMode";
68
69     // Humidity related channels
70     public static final String DEVICE_CHANNEL_WATER_LACKS = "waterLacking";
71     public static final String DEVICE_CHANNEL_HUMIDITY_HIGH = "humidityHigh";
72     public static final String DEVICE_CHANNEL_WATER_TANK_LIFTED = "waterTankLifted";
73     public static final String DEVICE_CHANNEL_STOP_AT_TARGET = "stopAtHumiditySetpoint";
74     public static final String DEVICE_CHANNEL_HUMIDITY = "humidity";
75     public static final String DEVICE_CHANNEL_MIST_LEVEL = "mistLevel";
76     public static final String DEVICE_CHANNEL_HUMIDIFIER_MODE = "humidifierMode";
77     public static final String DEVICE_CHANNEL_WARM_ENABLED = "warmEnabled";
78     public static final String DEVICE_CHANNEL_WARM_LEVEL = "warmLevel";
79
80     public static final String DEVICE_CHANNEL_CONFIG_TARGET_HUMIDITY = "humiditySetpoint";
81
82     // Property name constants
83     public static final String DEVICE_PROP_DEVICE_NAME = "Device Name";
84     public static final String DEVICE_PROP_DEVICE_TYPE = "Device Type";
85     public static final String DEVICE_PROP_DEVICE_MAC_ID = "MAC Id";
86     public static final String DEVICE_PROP_DEVICE_FAMILY = "Device Family";
87     public static final String DEVICE_PROP_DEVICE_UUID = "UUID";
88
89     // Property name for config constants
90     public static final String DEVICE_PROP_CONFIG_DEVICE_NAME = "deviceName";
91     public static final String DEVICE_PROP_CONFIG_DEVICE_MAC = "macId";
92
93     // Bridge name constants
94     public static final String DEVICE_PROP_BRIDGE_REG_TS = "Registration Time";
95     public static final String DEVICE_PROP_BRIDGE_COUNTRY_CODE = "Country Code";
96     public static final String DEVICE_PROP_BRIDGE_ACCEPT_LANG = "Accept Language";
97 }