-
-
Notifications
You must be signed in to change notification settings - Fork 3.6k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* introduced device configuration automated determination * converted mode-based number items to string type with descriptive states * added number items uom support * added scenes and x10 device things * added distinct bridge things for supported hub/plm devices * added button event trigger channels * added device products configuration layer * added device link database support * added device cache storage * added device operating flags controls * added modem configuration flags controls * added related devices synchronization feature * added heartbeat timeout monitor * added ability to link/unlink a device to the modem * added ability to add missing default links * added link database & scene management support * added scene state support * added new i3 devices basic support * added ezrain sprinkler device support * revamped console commands with auto-completion support * improved discovery service * improved thing status Signed-off-by: jsetton <[email protected]>
- Loading branch information
Showing
144 changed files
with
31,515 additions
and
3,266 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
110 changes: 110 additions & 0 deletions
110
...g.insteon/src/main/java/org/openhab/binding/insteon/internal/InsteonBindingConstants.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,110 @@ | ||
/** | ||
* Copyright (c) 2010-2024 Contributors to the openHAB project | ||
* | ||
* See the NOTICE file(s) distributed with this work for additional | ||
* information. | ||
* | ||
* This program and the accompanying materials are made available under the | ||
* terms of the Eclipse Public License 2.0 which is available at | ||
* http://www.eclipse.org/legal/epl-2.0 | ||
* | ||
* SPDX-License-Identifier: EPL-2.0 | ||
*/ | ||
package org.openhab.binding.insteon.internal; | ||
|
||
import java.io.File; | ||
import java.util.Map; | ||
import java.util.Set; | ||
|
||
import org.eclipse.jdt.annotation.NonNullByDefault; | ||
import org.openhab.binding.insteon.internal.device.feature.FeatureEnums.VenstarSystemMode; | ||
import org.openhab.core.OpenHAB; | ||
import org.openhab.core.thing.ThingTypeUID; | ||
|
||
/** | ||
* The {@link InsteonBindingConstants} class defines common constants, which are | ||
* used across the whole binding. | ||
* | ||
* @author Rob Nielsen - Initial contribution | ||
* @author Jeremy Setton - Rewrite insteon binding | ||
*/ | ||
@NonNullByDefault | ||
public class InsteonBindingConstants { | ||
public static final String BINDING_ID = "insteon"; | ||
public static final String BINDING_DATA_DIR = OpenHAB.getUserDataFolder() + File.separator + BINDING_ID; | ||
|
||
// List of all thing type uids | ||
public static final ThingTypeUID THING_TYPE_DEVICE = new ThingTypeUID(BINDING_ID, "device"); | ||
public static final ThingTypeUID THING_TYPE_HUB1 = new ThingTypeUID(BINDING_ID, "hub1"); | ||
public static final ThingTypeUID THING_TYPE_HUB2 = new ThingTypeUID(BINDING_ID, "hub2"); | ||
public static final ThingTypeUID THING_TYPE_PLM = new ThingTypeUID(BINDING_ID, "plm"); | ||
public static final ThingTypeUID THING_TYPE_SCENE = new ThingTypeUID(BINDING_ID, "scene"); | ||
public static final ThingTypeUID THING_TYPE_X10 = new ThingTypeUID(BINDING_ID, "x10"); | ||
public static final ThingTypeUID THING_TYPE_LEGACY_DEVICE = new ThingTypeUID(BINDING_ID, "legacy-device"); | ||
public static final ThingTypeUID THING_TYPE_LEGACY_NETWORK = new ThingTypeUID(BINDING_ID, "network"); | ||
|
||
public static final Set<ThingTypeUID> DISCOVERABLE_THING_TYPES_UIDS = Set.of(THING_TYPE_DEVICE, THING_TYPE_SCENE); | ||
public static final Set<ThingTypeUID> DISCOVERABLE_LEGACY_THING_TYPES_UIDS = Set.of(THING_TYPE_LEGACY_DEVICE); | ||
|
||
public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_DEVICE, THING_TYPE_HUB1, | ||
THING_TYPE_HUB2, THING_TYPE_PLM, THING_TYPE_SCENE, THING_TYPE_X10, THING_TYPE_LEGACY_DEVICE, | ||
THING_TYPE_LEGACY_NETWORK); | ||
|
||
// List of all thing properties | ||
public static final String PROPERTY_DEVICE_ADDRESS = "address"; | ||
public static final String PROPERTY_DEVICE_TYPE = "deviceType"; | ||
public static final String PROPERTY_ENGINE_VERSION = "engineVersion"; | ||
public static final String PROPERTY_PRODUCT_ID = "productId"; | ||
public static final String PROPERTY_SCENE_GROUP = "group"; | ||
|
||
// List of all channel parameters | ||
public static final String PARAMETER_GROUP = "group"; | ||
public static final String PARAMETER_ON_LEVEL = "onLevel"; | ||
public static final String PARAMETER_RAMP_RATE = "rampRate"; | ||
|
||
// List of specific device feature names | ||
public static final String FEATURE_DATABASE_DELTA = "databaseDelta"; | ||
public static final String FEATURE_HEARTBEAT = "heartbeat"; | ||
public static final String FEATURE_HEARTBEAT_INTERVAL = "heartbeatInterval"; | ||
public static final String FEATURE_HEARTBEAT_ON_OFF = "heartbeatOnOff"; | ||
public static final String FEATURE_INSTEON_ENGINE = "insteonEngine"; | ||
public static final String FEATURE_LED_CONTROL = "ledControl"; | ||
public static final String FEATURE_LED_ON_OFF = "ledOnOff"; | ||
public static final String FEATURE_LINK_FF_GROUP = "linkFFGroup"; | ||
public static final String FEATURE_LOW_BATTERY_THRESHOLD = "lowBatteryThreshold"; | ||
public static final String FEATURE_ON_LEVEL = "onLevel"; | ||
public static final String FEATURE_PING = "ping"; | ||
public static final String FEATURE_RAMP_RATE = "rampRate"; | ||
public static final String FEATURE_SCENE_ON_OFF = "sceneOnOff"; | ||
public static final String FEATURE_STAY_AWAKE = "stayAwake"; | ||
public static final String FEATURE_SYSTEM_MODE = "systemMode"; | ||
public static final String FEATURE_TEMPERATURE_FORMAT = "temperatureFormat"; | ||
public static final String FEATURE_TWO_GROUPS = "2Groups"; | ||
|
||
// List of specific device feature types | ||
public static final String FEATURE_TYPE_FANLINC_FAN = "FanLincFan"; | ||
public static final String FEATURE_TYPE_GENERIC_DIMMER = "GenericDimmer"; | ||
public static final String FEATURE_TYPE_GENERIC_SWITCH = "GenericSwitch"; | ||
public static final String FEATURE_TYPE_KEYPAD_BUTTON = "KeypadButton"; | ||
public static final String FEATURE_TYPE_KEYPAD_BUTTON_OFF_MASK = "KeypadButtonOffMask"; | ||
public static final String FEATURE_TYPE_KEYPAD_BUTTON_ON_MASK = "KeypadButtonOnMask"; | ||
public static final String FEATURE_TYPE_KEYPAD_BUTTON_TOGGLE_MODE = "KeypadButtonToggleMode"; | ||
public static final String FEATURE_TYPE_OUTLET_SWITCH = "OutletSwitch"; | ||
public static final String FEATURE_TYPE_THERMOSTAT_FAN_MODE = "ThermostatFanMode"; | ||
public static final String FEATURE_TYPE_THERMOSTAT_SYSTEM_MODE = "ThermostatSystemMode"; | ||
public static final String FEATURE_TYPE_THERMOSTAT_COOL_SETPOINT = "ThermostatCoolSetPoint"; | ||
public static final String FEATURE_TYPE_THERMOSTAT_HEAT_SETPOINT = "ThermostatHeatSetPoint"; | ||
public static final String FEATURE_TYPE_VENSTAR_FAN_MODE = "VenstarFanMode"; | ||
public static final String FEATURE_TYPE_VENSTAR_SYSTEM_MODE = "VenstarSystemMode"; | ||
public static final String FEATURE_TYPE_VENSTAR_COOL_SETPOINT = "VenstarCoolSetPoint"; | ||
public static final String FEATURE_TYPE_VENSTAR_HEAT_SETPOINT = "VenstarHeatSetPoint"; | ||
|
||
// List of specific device types | ||
public static final String DEVICE_TYPE_CLIMATE_CONTROL_VENSTAR_THERMOSTAT = "ClimateControl_VenstarThermostat"; | ||
|
||
// Map of custom state description options | ||
public static final Map<String, String[]> CUSTOM_STATE_DESCRIPTION_OPTIONS = Map.ofEntries( | ||
// Venstar Thermostat System Mode | ||
Map.entry(DEVICE_TYPE_CLIMATE_CONTROL_VENSTAR_THERMOSTAT + ":" + FEATURE_SYSTEM_MODE, | ||
VenstarSystemMode.names().toArray(String[]::new))); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.