2 * Copyright (c) 2010-2024 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.pentair.internal;
15 import java.util.Collections;
17 import java.util.stream.Collectors;
18 import java.util.stream.Stream;
20 import org.eclipse.jdt.annotation.NonNullByDefault;
21 import org.openhab.core.thing.ThingTypeUID;
24 * The {@link PentairBindingConstants} class defines common constants, which are
25 * used across the whole binding.
27 * @author Jeff James - Initial contribution
30 public class PentairBindingConstants {
32 public static final String BINDING_ID = "pentair";
34 // List of Bridge Types
35 public static final String IP_BRIDGE = "ip_bridge";
36 public static final String SERIAL_BRIDGE = "serial_bridge";
38 // List of all Device Types
39 public static final String EASYTOUCH = "easytouch";
40 public static final String INTELLIFLO = "intelliflo";
41 public static final String INTELLICHLOR = "intellichlor";
43 // List of all Bridge Thing Type UIDs
44 public static final ThingTypeUID IP_BRIDGE_THING_TYPE = new ThingTypeUID(BINDING_ID, IP_BRIDGE);
45 public static final ThingTypeUID SERIAL_BRIDGE_THING_TYPE = new ThingTypeUID(BINDING_ID, SERIAL_BRIDGE);
47 // List of all Thing Type UIDs
48 public static final ThingTypeUID INTELLIFLO_THING_TYPE = new ThingTypeUID(BINDING_ID, INTELLIFLO);
49 public static final ThingTypeUID EASYTOUCH_THING_TYPE = new ThingTypeUID(BINDING_ID, EASYTOUCH);
50 public static final ThingTypeUID INTELLICHLOR_THING_TYPE = new ThingTypeUID(BINDING_ID, INTELLICHLOR);
52 // List of all Channel ids
53 public static final String EASYTOUCH_POOLTEMP = "pooltemp";
54 public static final String EASYTOUCH_SPATEMP = "spatemp";
55 public static final String EASYTOUCH_AIRTEMP = "airtemp";
56 public static final String EASYTOUCH_SOLARTEMP = "solartemp";
58 public static final String EASYTOUCH_SPAHEATMODE = "spaheatmode";
59 public static final String EASYTOUCH_SPAHEATMODESTR = "spaheatmodestr";
60 public static final String EASYTOUCH_POOLHEATMODE = "poolheatmode";
61 public static final String EASYTOUCH_POOLHEATMODESTR = "poolheatmodestr";
62 public static final String EASYTOUCH_HEATACTIVE = "heatactive";
64 public static final String EASYTOUCH_POOLSETPOINT = "poolsetpoint";
65 public static final String EASYTOUCH_SPASETPOINT = "spasetpoint";
67 public static final String EASYTOUCH_POOL = "pool";
68 public static final String EASYTOUCH_SPA = "spa";
69 public static final String EASYTOUCH_AUX1 = "aux1";
70 public static final String EASYTOUCH_AUX2 = "aux2";
71 public static final String EASYTOUCH_AUX3 = "aux3";
72 public static final String EASYTOUCH_AUX4 = "aux4";
73 public static final String EASYTOUCH_AUX5 = "aux5";
74 public static final String EASYTOUCH_AUX6 = "aux6";
75 public static final String EASYTOUCH_AUX7 = "aux7";
77 public static final String EASYTOUCH_FEATURE1 = "feature1";
78 public static final String EASYTOUCH_FEATURE2 = "feature2";
79 public static final String EASYTOUCH_FEATURE3 = "feature3";
80 public static final String EASYTOUCH_FEATURE4 = "feature4";
81 public static final String EASYTOUCH_FEATURE5 = "feature5";
82 public static final String EASYTOUCH_FEATURE6 = "feature6";
83 public static final String EASYTOUCH_FEATURE7 = "feature7";
84 public static final String EASYTOUCH_FEATURE8 = "feature8";
86 public static final String INTELLICHLOR_SALTOUTPUT = "saltoutput";
87 public static final String INTELLICHLOR_SALINITY = "salinity";
89 public static final String INTELLIFLO_RUN = "run";
90 public static final String INTELLIFLO_MODE = "mode";
91 public static final String INTELLIFLO_DRIVESTATE = "drivestate";
92 public static final String INTELLIFLO_POWER = "power";
93 public static final String INTELLIFLO_RPM = "rpm";
94 public static final String INTELLIFLO_PPC = "ppc";
95 public static final String INTELLIFLO_ERROR = "error";
96 public static final String INTELLIFLO_TIMER = "timer";
98 public static final String DIAG = "diag";
101 public static final String PROPERTY_ADDRESS = "localhost";
102 public static final Integer PROPERTY_PORT = 10000;
104 // Set of all supported Thing Type UIDs
105 public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections
106 .unmodifiableSet(Stream.of(IP_BRIDGE_THING_TYPE, SERIAL_BRIDGE_THING_TYPE, EASYTOUCH_THING_TYPE,
107 INTELLIFLO_THING_TYPE, INTELLICHLOR_THING_TYPE).collect(Collectors.toSet()));