]> git.basschouten.com Git - openhab-addons.git/blob
7646e87fc96a8ee909d8ac7c8e98b97f244beff3
[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
14 package org.openhab.binding.haywardomnilogic.internal;
15
16 import java.util.Set;
17
18 import org.eclipse.jdt.annotation.NonNullByDefault;
19 import org.openhab.core.thing.ThingTypeUID;
20
21 /**
22  * The {@link HaywardBindingConstants} class defines common constants, which are
23  * used across the whole binding.
24  *
25  * @author Matt Myers - Initial contribution
26  */
27 @NonNullByDefault
28 public class HaywardBindingConstants {
29
30     private static final String BINDING_ID = "haywardomnilogic";
31
32     // List of all Thing Type UIDs
33     public static final ThingTypeUID THING_TYPE_BACKYARD = new ThingTypeUID(BINDING_ID, "backyard");
34     public static final ThingTypeUID THING_TYPE_BOW = new ThingTypeUID(BINDING_ID, "bow");
35     public static final ThingTypeUID THING_TYPE_BRIDGE = new ThingTypeUID(BINDING_ID, "bridge");
36     public static final ThingTypeUID THING_TYPE_CHLORINATOR = new ThingTypeUID(BINDING_ID, "chlorinator");
37     public static final ThingTypeUID THING_TYPE_COLORLOGIC = new ThingTypeUID(BINDING_ID, "colorlogic");
38     public static final ThingTypeUID THING_TYPE_FILTER = new ThingTypeUID(BINDING_ID, "filter");
39     public static final ThingTypeUID THING_TYPE_HEATER = new ThingTypeUID(BINDING_ID, "heater");
40     public static final ThingTypeUID THING_TYPE_PUMP = new ThingTypeUID(BINDING_ID, "pump");
41     public static final ThingTypeUID THING_TYPE_RELAY = new ThingTypeUID(BINDING_ID, "relay");
42     public static final ThingTypeUID THING_TYPE_SENSOR = new ThingTypeUID(BINDING_ID, "sensor");
43     public static final ThingTypeUID THING_TYPE_VIRTUALHEATER = new ThingTypeUID(BINDING_ID, "virtualHeater");
44
45     public static final Set<ThingTypeUID> BRIDGE_THING_TYPES_UIDS = Set.of(THING_TYPE_BRIDGE);
46
47     public static final Set<ThingTypeUID> THING_TYPES_UIDS = Set.of(HaywardBindingConstants.THING_TYPE_BACKYARD,
48             HaywardBindingConstants.THING_TYPE_BOW, HaywardBindingConstants.THING_TYPE_BRIDGE,
49             HaywardBindingConstants.THING_TYPE_CHLORINATOR, HaywardBindingConstants.THING_TYPE_COLORLOGIC,
50             HaywardBindingConstants.THING_TYPE_FILTER, HaywardBindingConstants.THING_TYPE_HEATER,
51             HaywardBindingConstants.THING_TYPE_PUMP, HaywardBindingConstants.THING_TYPE_RELAY,
52             HaywardBindingConstants.THING_TYPE_SENSOR, HaywardBindingConstants.THING_TYPE_VIRTUALHEATER);
53
54     // List of all Channel ids (bridge)
55     // No Channels
56
57     // List of all Channel ids (backyard)
58     public static final String CHANNEL_BACKYARD_AIRTEMP = "backyardAirTemp";
59     public static final String CHANNEL_BACKYARD_STATUS = "backyardStatus";
60     public static final String CHANNEL_BACKYARD_STATE = "backyardState";
61
62     // List of all Channel ids (bow)
63     public static final String CHANNEL_BOW_WATERTEMP = "bowWaterTemp";
64     public static final String CHANNEL_BOW_FLOW = "bowFlow";
65
66     public static final String PROPERTY_BOW_TYPE = "type";
67     public static final String PROPERTY_BOW_SHAREDTYPE = "sharedType";
68     public static final String PROPERTY_BOW_SHAREDPRIORITY = "sharedPriority";
69     public static final String PROPERTY_BOW_SHAREDEQUIPID = "sharedEquipmentSystemID";
70     public static final String PROPERTY_BOW_SUPPORTSSPILLOVER = "supportsSpillover";
71     public static final String PROPERTY_BOW_SIZEINGALLONS = "sizeInGallons";
72
73     // List of all Channel ids (chlorinator)
74     public static final String CHANNEL_CHLORINATOR_ENABLE = "chlorEnable";
75     public static final String CHANNEL_CHLORINATOR_OPERATINGMODE = "chlorOperatingMode";
76     public static final String CHANNEL_CHLORINATOR_TIMEDPERCENT = "chlorTimedPercent";
77     public static final String CHANNEL_CHLORINATOR_SCMODE = "chlorScMode";
78     public static final String CHANNEL_CHLORINATOR_ERROR = "chlorError";
79     public static final String CHANNEL_CHLORINATOR_ALERT = "chlorAlert";
80     public static final String CHANNEL_CHLORINATOR_AVGSALTLEVEL = "chlorAvgSaltLevel";
81     public static final String CHANNEL_CHLORINATOR_INSTANTSALTLEVEL = "chlorInstantSaltLevel";
82     public static final String CHANNEL_CHLORINATOR_STATUS = "chlorStatus";
83
84     public static final String PROPERTY_CHLORINATOR_SHAREDTYPE = "chlorSharedType";
85     public static final String PROPERTY_CHLORINATOR_MODE = "chlorMode";
86     public static final String PROPERTY_CHLORINATOR_CELLTYPE = "cellType";
87     public static final String PROPERTY_CHLORINATOR_DISPENSERTYPE = "dispenserType";
88
89     // List of all Channel ids (colorlogic)
90     public static final String CHANNEL_COLORLOGIC_ENABLE = "colorLogicLightEnable";
91     public static final String CHANNEL_COLORLOGIC_LIGHTSTATE = "colorLogicLightState";
92     public static final String CHANNEL_COLORLOGIC_CURRENTSHOW = "colorLogicLightCurrentShow";
93
94     public static final String PROPERTY_COLORLOGIC_TYPE = "colorlogicType";
95
96     // List of all Channel ids (filter)
97     public static final String CHANNEL_FILTER_ENABLE = "filterEnable";
98     public static final String CHANNEL_FILTER_VALVEPOSITION = "filterValvePosition";
99     public static final String CHANNEL_FILTER_SPEEDPERCENT = "filterSpeedPercent";
100     public static final String CHANNEL_FILTER_SPEEDRPM = "filterSpeedRpm";
101     public static final String CHANNEL_FILTER_SPEEDSELECT = "filterSpeedSelect";
102     public static final String CHANNEL_FILTER_STATE = "filterState";
103     public static final String CHANNEL_FILTER_LASTSPEED = "filterLastSpeed";
104
105     public static final String PROPERTY_FILTER_SHAREDTYPE = "filterSharedType";
106     public static final String PROPERTY_FILTER_FILTERTYPE = "filterType";
107     public static final String PROPERTY_FILTER_PRIMINGENABLED = "primingEnabled";
108     public static final String PROPERTY_FILTER_MINSPEED = "minFilterPercent";
109     public static final String PROPERTY_FILTER_MAXSPEED = "maxFilterPercent";
110     public static final String PROPERTY_FILTER_MINRPM = "minFilterRPM";
111     public static final String PROPERTY_FILTER_MAXRPM = "maxFilterRPM";
112     public static final String PROPERTY_FILTER_LOWSPEED = "lowFilterSpeed";
113     public static final String PROPERTY_FILTER_MEDSPEED = "mediumFilterSpeed";
114     public static final String PROPERTY_FILTER_HIGHSPEED = "highFilterSpeed";
115     public static final String PROPERTY_FILTER_CUSTOMSPEED = "customFilterSpeed";
116     public static final String PROPERTY_FILTER_FREEZEPROTECTOVERRIDEINTERVAL = "freezeProtectOverrideInterval";
117
118     // List of all Channel ids (heater)
119     public static final String CHANNEL_HEATER_STATE = "heaterState";
120     public static final String CHANNEL_HEATER_TEMP = "heaterTemp";
121     public static final String CHANNEL_HEATER_ENABLE = "heaterEnable";
122
123     public static final String PROPERTY_HEATER_TYPE = "type";
124     public static final String PROPERTY_HEATER_HEATERTYPE = "heaterType";
125     public static final String PROPERTY_HEATER_SHAREDEQUIPID = "sharedEquipmentSystemID";
126
127     // List of all Channel ids (pump)
128     public static final String CHANNEL_PUMP_ENABLE = "pumpEnable";
129     public static final String CHANNEL_PUMP_SPEEDPERCENT = "pumpSpeedPercent";
130     public static final String CHANNEL_PUMP_SPEEDRPM = "pumpSpeedRpm";
131     public static final String CHANNEL_PUMP_SPEEDSELECT = "pumpSpeedSelect";
132     public static final String CHANNEL_PUMP_STATE = "pumpState";
133     public static final String CHANNEL_PUMP_LASTSPEED = "pumpLastSpeed";
134
135     public static final String PROPERTY_PUMP_TYPE = "pumpType";
136     public static final String PROPERTY_PUMP_FUNCTION = "pumpFunction";
137     public static final String PROPERTY_PUMP_PRIMINGENABLED = "pumpPrimingEnabled";
138     public static final String PROPERTY_PUMP_MINSPEED = "minPumpPercent";
139     public static final String PROPERTY_PUMP_MAXSPEED = "maxPumpPercent";
140     public static final String PROPERTY_PUMP_MINRPM = "minPumpRPM";
141     public static final String PROPERTY_PUMP_MAXRPM = "maxPumpRPM";
142     public static final String PROPERTY_PUMP_LOWSPEED = "lowPumpSpeed";
143     public static final String PROPERTY_PUMP_MEDSPEED = "mediumPumpSpeed";
144     public static final String PROPERTY_PUMP_HIGHSPEED = "highPumpSpeed";
145     public static final String PROPERTY_PUMP_CUSTOMSPEED = "customPumpSpeed";
146
147     // List of all Channel ids (relay)
148     public static final String CHANNEL_RELAY_STATE = "relayState";
149
150     public static final String PROPERTY_RELAY_TYPE = "relayType";
151     public static final String PROPERTY_RELAY_FUNCTION = "relayFunction";
152
153     // List of all Channel ids (sensor)
154     public static final String CHANNEL_SENSOR_DATA = "sensorData";
155
156     public static final String PROPERTY_SENSOR_TYPE = "sensorType";
157     public static final String PROPERTY_SENSOR_UNITS = "sensorUnits";
158
159     // List of all Channel ids (virtualHeater)
160     public static final String CHANNEL_VIRTUALHEATER_CURRENTSETPOINT = "virtualHeaterCurrentSetpoint";
161     public static final String CHANNEL_VIRTUALHEATER_ENABLE = "virtualHeaterEnable";
162
163     public static final String PROPERTY_VIRTUALHEATER_SHAREDTYPE = "sharedType";
164     public static final String PROPERTY_VIRTUALHEATER_MINSETTABLEWATERTEMP = "minSettableWaterTemp";
165     public static final String PROPERTY_VIRTUALHEATER_MAXSETTABLEWATERTEMP = "maxSettableWaterTemp";
166     public static final String PROPERTY_VIRTUALHEATER_MAXWATERTEMP = "maxWaterTemp";
167
168     // The properties associated with all things
169     public static final String PROPERTY_SYSTEM_ID = "systemID";
170     public static final String PROPERTY_TYPE = "thingType";
171     public static final String PROPERTY_BOWNAME = "bowName";
172     public static final String PROPERTY_BOWID = "bowID";
173
174     // Hayward Command html
175     public static final String COMMAND_PARAMETERS = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Request>";
176
177     public static final String COMMAND_SCHEDULE = "<Parameter name=\"IsCountDownTimer\" dataType=\"bool\">false</Parameter>"
178             + "<Parameter name=\"StartTimeHours\" dataType=\"int\">0</Parameter>"
179             + "<Parameter name=\"StartTimeMinutes\" dataType=\"int\">0</Parameter>"
180             + "<Parameter name=\"EndTimeHours\" dataType=\"int\">0</Parameter>"
181             + "<Parameter name=\"EndTimeMinutes\" dataType=\"int\">0</Parameter>"
182             + "<Parameter name=\"DaysActive\" dataType=\"int\">0</Parameter>"
183             + "<Parameter name=\"Recurring\" dataType=\"bool\">false</Parameter>";
184 }