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.souliss.internal;
17 import org.eclipse.jdt.annotation.NonNullByDefault;
18 import org.openhab.core.thing.ThingTypeUID;
21 * The {@link SoulissBinding} class defines common constants, which are
22 * used across the whole binding.
24 * @author Tonino Fazio - Initial contribution
25 * @author Luca Calcaterra - Refactor for OH3
28 public final class SoulissBindingConstants {
30 public static final String BINDING_ID = "souliss";
32 public static final long DISCOVERY_RESEND_TIMEOUT_IN_SECONDS = 45;
33 public static final int DISCOVERY_TIMEOUT_IN_SECONDS = 120;
34 public static final long SEND_DISPATCHER_MIN_DELAY_CYCLE_IN_MILLIS = 500;
36 // List of all Thing Type UIDs
37 public static final ThingTypeUID GATEWAY_THING_TYPE = new ThingTypeUID(BINDING_ID, "gateway");
39 public static final String T11 = "t11";
40 public static final String T12 = "t12";
41 public static final String T13 = "t13";
42 public static final String T14 = "t14";
43 public static final String T16 = "t16";
44 public static final String T18 = "t18";
45 public static final String T19 = "t19";
46 public static final String T1A = "t1a";
47 public static final String T21 = "t21";
48 public static final String T22 = "t22";
49 public static final String T31 = "t31";
50 public static final String T41 = "t41";
51 public static final String T42 = "t42";
52 public static final String T51 = "t51";
53 public static final String T52 = "t52";
54 public static final String T53 = "t53";
55 public static final String T54 = "t54";
56 public static final String T55 = "t55";
57 public static final String T56 = "t56";
58 public static final String T57 = "t57";
59 public static final String T58 = "t58";
60 public static final String T61 = "t61";
61 public static final String T62 = "t62";
62 public static final String T63 = "t63";
63 public static final String T64 = "t64";
64 public static final String T65 = "t65";
65 public static final String T66 = "t66";
66 public static final String T67 = "t67";
67 public static final String T68 = "t68";
68 public static final String TOPICS = "topic";
70 public static final ThingTypeUID T11_THING_TYPE = new ThingTypeUID(BINDING_ID, T11);
71 public static final ThingTypeUID T12_THING_TYPE = new ThingTypeUID(BINDING_ID, T12);
72 public static final ThingTypeUID T13_THING_TYPE = new ThingTypeUID(BINDING_ID, T13);
73 public static final ThingTypeUID T14_THING_TYPE = new ThingTypeUID(BINDING_ID, T14);
74 public static final ThingTypeUID T16_THING_TYPE = new ThingTypeUID(BINDING_ID, T16);
75 public static final ThingTypeUID T18_THING_TYPE = new ThingTypeUID(BINDING_ID, T18);
76 public static final ThingTypeUID T19_THING_TYPE = new ThingTypeUID(BINDING_ID, T19);
77 public static final ThingTypeUID T1A_THING_TYPE = new ThingTypeUID(BINDING_ID, T1A);
78 public static final ThingTypeUID T21_THING_TYPE = new ThingTypeUID(BINDING_ID, T21);
79 public static final ThingTypeUID T22_THING_TYPE = new ThingTypeUID(BINDING_ID, T22);
80 public static final ThingTypeUID T31_THING_TYPE = new ThingTypeUID(BINDING_ID, T31);
81 public static final ThingTypeUID T41_THING_TYPE = new ThingTypeUID(BINDING_ID, T41);
82 public static final ThingTypeUID T42_THING_TYPE = new ThingTypeUID(BINDING_ID, T42);
83 public static final ThingTypeUID T51_THING_TYPE = new ThingTypeUID(BINDING_ID, T51);
84 public static final ThingTypeUID T52_THING_TYPE = new ThingTypeUID(BINDING_ID, T52);
85 public static final ThingTypeUID T53_THING_TYPE = new ThingTypeUID(BINDING_ID, T53);
86 public static final ThingTypeUID T54_THING_TYPE = new ThingTypeUID(BINDING_ID, T54);
87 public static final ThingTypeUID T55_THING_TYPE = new ThingTypeUID(BINDING_ID, T55);
88 public static final ThingTypeUID T56_THING_TYPE = new ThingTypeUID(BINDING_ID, T56);
89 public static final ThingTypeUID T57_THING_TYPE = new ThingTypeUID(BINDING_ID, T57);
90 public static final ThingTypeUID T58_THING_TYPE = new ThingTypeUID(BINDING_ID, T58);
91 public static final ThingTypeUID T61_THING_TYPE = new ThingTypeUID(BINDING_ID, T61);
92 public static final ThingTypeUID T62_THING_TYPE = new ThingTypeUID(BINDING_ID, T62);
93 public static final ThingTypeUID T63_THING_TYPE = new ThingTypeUID(BINDING_ID, T63);
94 public static final ThingTypeUID T64_THING_TYPE = new ThingTypeUID(BINDING_ID, T64);
95 public static final ThingTypeUID T65_THING_TYPE = new ThingTypeUID(BINDING_ID, T65);
96 public static final ThingTypeUID T66_THING_TYPE = new ThingTypeUID(BINDING_ID, T66);
97 public static final ThingTypeUID T67_THING_TYPE = new ThingTypeUID(BINDING_ID, T67);
98 public static final ThingTypeUID T68_THING_TYPE = new ThingTypeUID(BINDING_ID, T68);
99 public static final ThingTypeUID TOPICS_THING_TYPE = new ThingTypeUID(BINDING_ID, TOPICS);
101 public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(GATEWAY_THING_TYPE, T11_THING_TYPE,
102 T12_THING_TYPE, T13_THING_TYPE, T14_THING_TYPE, T16_THING_TYPE, T18_THING_TYPE, T19_THING_TYPE,
103 T1A_THING_TYPE, T21_THING_TYPE, T22_THING_TYPE, T31_THING_TYPE, T41_THING_TYPE, T42_THING_TYPE,
104 T51_THING_TYPE, T52_THING_TYPE, T53_THING_TYPE, T54_THING_TYPE, T55_THING_TYPE, T56_THING_TYPE,
105 T57_THING_TYPE, T58_THING_TYPE, T61_THING_TYPE, T62_THING_TYPE, T63_THING_TYPE, T64_THING_TYPE,
106 T65_THING_TYPE, T66_THING_TYPE, T67_THING_TYPE, T68_THING_TYPE, TOPICS_THING_TYPE);
108 // List of all Channel ids
109 public static final String ONOFF_CHANNEL = "onOff";
111 public static final String PULSE_CHANNEL = "pulse";
112 public static final String SLEEP_CHANNEL = "sleep";
113 public static final String AUTOMODE_CHANNEL = "autoMode";
114 public static final String STATEONOFF_CHANNEL = "stateOnOff";
115 public static final String STATEOPENCLOSE_CHANNEL = "stateOpenClose";
116 public static final String ROLLERSHUTTER_CHANNEL = "rollerShutter";
117 public static final String ROLLERSHUTTER_STATE_CHANNEL_CHANNEL = "rollerShutterState";
119 public static final String ROLLERSHUTTER_MESSAGE_OPENING_CHANNEL = "opening";
120 public static final String ROLLERSHUTTER_MESSAGE_CLOSING_CHANNEL = "closing";
121 public static final String ROLLERSHUTTER_MESSAGE_LIMITSWITCH_OPEN_CHANNEL = "limSwitchOpen";
122 public static final String ROLLERSHUTTER_MESSAGE_LIMITSWITCH_CLOSE_CHANNEL = "limSwitchClose";
123 public static final String ROLLERSHUTTER_MESSAGE_STATE_OPEN_CHANNEL = "stateOpen";
124 public static final String ROLLERSHUTTER_MESSAGE_STATE_CLOSE_CHANNEL = "stateClose";
125 public static final String ROLLERSHUTTER_MESSAGE_NO_LIMITSWITCH_CHANNEL = "NoLimSwitch";
126 public static final String ROLLERSHUTTER_MESSAGE_STOP_CHANNEL = "stop";
127 public static final String ROLLERSHUTTER_MESSAGE_TIMER_OFF = "timer off";
129 public static final String T1A_1_CHANNEL = "one";
130 public static final String T1A_2_CHANNEL = "two";
131 public static final String T1A_3_CHANNEL = "three";
132 public static final String T1A_4_CHANNEL = "four";
133 public static final String T1A_5_CHANNEL = "five";
134 public static final String T1A_6_CHANNEL = "six";
135 public static final String T1A_7_CHANNEL = "seven";
136 public static final String T1A_8_CHANNEL = "eight";
138 public static final String T31_MODE_CHANNEL = "mode";
139 public static final String T31_SYSTEM_CHANNEL = "system";
140 public static final String T31_FIRE_CHANNEL = "fire";
141 public static final String T31_FAN_CHANNEL = "fan";
142 public static final String T31_BUTTON_CHANNEL = "setAsMeasured";
143 public static final String T31_VALUE_CHANNEL = "measured";
144 public static final String T31_SETPOINT_CHANNEL = "setPoint";
146 public static final String T31_COOLINGMODE_MESSAGE_MODE_CHANNEL = "COOLING_MODE";
147 public static final String T31_HEATINGMODE_MESSAGE_MODE_CHANNEL = "HEATING_MODE";
148 public static final String T31_OFF_MESSAGE_SYSTEM_CHANNEL = "SYSTEM_OFF";
149 public static final String T31_ON_MESSAGE_SYSTEM_CHANNEL = "SYSTEM_ON";
150 public static final String T31_ON_MESSAGE_FIRE_CHANNEL = "FIRE_ON";
151 public static final String T31_OFF_MESSAGE_FIRE_CHANNEL = "FIRE_OFF";
153 public static final String T31_FANAUTO_MESSAGE_FAN_CHANNEL = "AUTO";
154 public static final String T31_FANOFF_MESSAGE_FAN_CHANNEL = "FANOFF";
155 public static final String T31_FANLOW_MESSAGE_FAN_CHANNEL = "LOW";
156 public static final String T31_FANMEDIUM_MESSAGE_FAN_CHANNEL = "MEDIUM";
157 public static final String T31_FANHIGH_MESSAGE_FAN_CHANNEL = "HIGH";
159 public static final String T4N_ONOFFALARM_CHANNEL = "onOffAlarm";
160 public static final String T4N_STATUSALARM_CHANNEL = "statusAlarm";
161 public static final String T4N_REARMALARM_CHANNEL = "rearmAlarm";
162 public static final String T41_RESETALARM_CHANNEL = "resetAlarm";
164 public static final String T4N_ALARMON_MESSAGE_CHANNEL = "ALARMON";
165 public static final String T4N_ALARMOFF_MESSAGE_CHANNEL = "ALARMOFF";
166 public static final String T4N_REARMOFF_MESSAGE_CHANNEL = "REARMOFF";
167 public static final String T4N_ARMED_MESSAGE_CHANNEL = "ARMED";
169 public static final String WHITE_MODE_CHANNEL = "whitemode";
170 public static final String ROLLER_BRIGHTNESS_CHANNEL = "rollerBrightness";
171 public static final String DIMMER_BRIGHTNESS_CHANNEL = "dimmerBrightness";
172 public static final String LED_COLOR_CHANNEL = "ledcolor";
174 public static final String LASTMESSAGE_CHANNEL = "lastMessage";
175 public static final String LASTSTATUSSTORED_CHANNEL = "lastStatusStored";
176 public static final String HEALTHY_CHANNEL = "healthy";
178 public static final String T5N_VALUE_CHANNEL = "value";
179 public static final String T6N_VALUE_CHANNEL = "value";
180 public static final String FLOATING_POINT_CHANNEL = "float";
181 public static final String HUMIDITY_CHANNEL = "humidity";
182 public static final String TEMPERATURE_CHANNEL = "temperature";
183 public static final String AMPERE_CHANNEL = "ampere";
184 public static final String VOLTAGE_CHANNEL = "voltage";
185 public static final String POWER_CHANNEL = "power";
187 public static final String CONFIG_ID = "ID";
188 public static final String CONFIG_IP_ADDRESS = "gatewayLanAddress";
190 public static final String UUID_NODE_SLOT_SEPARATOR = "-";
192 public static final String UUID_ELEMENTS_SEPARATOR = ":";
194 public static final String CONFIG_SLEEP = "sleep";
196 public static final String CONFIG_SECURE_SEND = "secureSend";
198 public static final String CONFIG_TIMEOUT_TO_REQUEUE = "timeoutToRequeue";
200 public static final String CONFIG_TIMEOUT_TO_REMOVE_PACKET = "timeoutToRemovePacket";
203 public static final String PROPERTY_NODE = "node";
204 public static final String PROPERTY_SLOT = "slot";
205 public static final String PROPERTY_UNIQUEID = "uniqueId";
207 // private constructor
208 private SoulissBindingConstants() {