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.shelly.internal.manager;
15 import static org.openhab.binding.shelly.internal.ShellyBindingConstants.CONFIG_DEVICEIP;
17 import java.nio.charset.StandardCharsets;
19 import org.eclipse.jdt.annotation.NonNullByDefault;
22 * {@link ShellyManagerConstants} defines the constants for Shelly Manager
24 * @author Markus Michels - Initial contribution
27 public class ShellyManagerConstants {
28 public static final String LOG_PREFIX = "ShellyManager";
29 public static final String UTF_8 = StandardCharsets.UTF_8.toString();
31 public static final String SHELLY_MANAGER_URI = "/shelly/manager";
32 public static final String SHELLY_MGR_OVERVIEW_URI = SHELLY_MANAGER_URI + "/ovierview";
33 public static final String SHELLY_MGR_FWUPDATE_URI = SHELLY_MANAGER_URI + "/fwupdate";
34 public static final String SHELLY_MGR_IMAGES_URI = SHELLY_MANAGER_URI + "/images";
35 public static final String SHELLY_MGR_ACTION_URI = SHELLY_MANAGER_URI + "/action";
36 public static final String SHELLY_MGR_OTA_URI = SHELLY_MANAGER_URI + "/ota";
38 public static final String ACTION_REFRESH = "refresh";
39 public static final String ACTION_RESTART = "restart";
40 public static final String ACTION_PROTECT = "protect";
41 public static final String ACTION_SETCOIOT_PEER = "setcoiotpeer";
42 public static final String ACTION_SETCOIOT_MCAST = "setcoiotmcast";
43 public static final String ACTION_SETTZ = "settz";
44 public static final String ACTION_ENCLOUD = "encloud";
45 public static final String ACTION_DISCLOUD = "discloud";
46 public static final String ACTION_RES_STATS = "reset_stat";
47 public static final String ACTION_RESET = "reset";
48 public static final String ACTION_RESSTA = "resetsta";
49 public static final String ACTION_ENWIFIREC = "enwifirec";
50 public static final String ACTION_DISWIFIREC = "diswifirec";
51 public static final String ACTION_ENAPROAMING = "enaproaming";
52 public static final String ACTION_DISAPROAMING = "disaproaming";
53 public static final String ACTION_ENRANGEEXT = "enrangeext";
54 public static final String ACTION_ENETHERNET = "enethernet";
55 public static final String ACTION_DISETHERNET = "disethernet";
56 public static final String ACTION_ENBLUETOOTH = "enbluetooth";
57 public static final String ACTION_DISBLUETOOTH = "disbluetooth";
58 public static final String ACTION_DISRANGEEXT = "disrangeext";
59 public static final String ACTION_OTACHECK = "otacheck";
60 public static final String ACTION_ENDEBUG = "endebug";
61 public static final String ACTION_DISDEBUG = "disdebug";
62 public static final String ACTION_GETDEB = "getdebug";
63 public static final String ACTION_GETDEB1 = "getdebug1";
64 public static final String ACTION_NONE = "-";
66 public static final String HEADER_HTML = "header.html";
67 public static final String OVERVIEW_HTML = "overview.html";
68 public static final String OVERVIEW_HEADER = "ov_header.html";
69 public static final String OVERVIEW_DEVICE = "ov_device.html";
70 public static final String OVERVIEW_FOOTER = "ov_footer.html";
71 public static final String FWUPDATE1_HTML = "fw_update1.html";
72 public static final String FWUPDATE2_HTML = "fw_update2.html";
73 public static final String ACTION_HTML = "action.html";
74 public static final String FOOTER_HTML = "footer.html";
75 public static final String IMAGE_PATH = "images/";
76 public static final String FORWARD_SCRIPT = "forward.script";
78 public static final String ATTRIBUTE_METATAG = "metaTag";
79 public static final String ATTRIBUTE_CSS_HEADER = "cssHeader";
80 public static final String ATTRIBUTE_CSS_FOOTER = "cssFooter";
81 public static final String ATTRIBUTE_URI = "uri";
82 public static final String ATTRIBUTE_UID = "uid";
83 public static final String ATTRIBUTE_REFRESH = "refreshTimer";
84 public static final String ATTRIBUTE_MESSAGE = "message";
85 public static final String ATTRIBUTE_TOTAL_DEV = "totalDevices";
86 public static final String ATTRIBUTE_STATUS_ICON = "iconStatus";
87 public static final String ATTRIBUTE_DEVICEIP = CONFIG_DEVICEIP;
88 public static final String ATTRIBUTE_DISPLAY_NAME = "displayName";
89 public static final String ATTRIBUTE_DEV_STATUS = "deviceStatus";
90 public static final String ATTRIBUTE_DEBUG_MODE = "debugMode";
91 public static final String ATTRIBUTE_FIRMWARE_SEL = "firmwareSelection";
92 public static final String ATTRIBUTE_ACTION_LIST = "actionList";
93 public static final String ATTRIBUTE_VERSION = "version";
94 public static final String ATTRIBUTE_FW_URL = "firmwareUrl";
95 public static final String ATTRIBUTE_UPDATE_URL = "updateUrl";
96 public static final String ATTRIBUTE_LAST_ALARM = "lastAlarmTs";
97 public static final String ATTRIBUTE_ACTION = "action";
98 public static final String ATTRIBUTE_ACTION_BUTTON = "actionButtonLabel";
99 public static final String ATTRIBUTE_ACTION_URL = "actionUrl";
100 public static final String ATTRIBUTE_SNTP_SERVER = "sntpServer";
101 public static final String ATTRIBUTE_COIOT_STATUS = "coiotStatus";
102 public static final String ATTRIBUTE_COIOT_PEER = "coiotDestination";
103 public static final String ATTRIBUTE_CLOUD_STATUS = "cloudStatus";
104 public static final String ATTRIBUTE_MQTT_STATUS = "mqttStatus";
105 public static final String ATTRIBUTE_ACTIONS_SKIPPED = "actionsSkipped";
106 public static final String ATTRIBUTE_DISCOVERABLE = "discoverable";
107 public static final String ATTRIBUTE_WIFI_RECOVERY = "wifiAutoRecovery";
108 public static final String ATTRIBUTE_APR_MODE = "apRoamingMode";
109 public static final String ATTRIBUTE_APR_TRESHOLD = "apRoamingThreshold";
110 public static final String ATTRIBUTE_MAX_ITEMP = "maxInternalTemp";
111 public static final String ATTRIBUTE_TIMEZONE = "deviceTimezone";
112 public static final String ATTRIBUTE_PWD_PROTECT = "passwordProtected";
114 public static final String URLPARM_UID = "uid";
115 public static final String URLPARM_DEVTYPE = "deviceType";
116 public static final String URLPARM_DEVMODE = "deviceMode";
117 public static final String URLPARM_ACTION = "action";
118 public static final String URLPARM_FILTER = "filter";
119 public static final String URLPARM_TYPE = "type";
120 public static final String URLPARM_VERSION = "version";
121 public static final String URLPARM_UPDATE = "update";
122 public static final String URLPARM_CONNECTION = "connection";
123 public static final String URLPARM_URL = "url";
125 public static final String FILTER_ONLINE = "online";
126 public static final String FILTER_INACTIVE = "inactive";
127 public static final String FILTER_ATTENTION = "attention";
128 public static final String FILTER_UPDATE = "update";
129 public static final String FILTER_UNPROTECTED = "unprotected";
131 // Message classes for visual style
132 public static final String MCMESSAGE = "message";
133 public static final String MCINFO = "info";
134 public static final String MCWARNING = "warning";
136 public static final String ICON_ONLINE = "online";
137 public static final String ICON_OFFLINE = "offline";
138 public static final String ICON_UNINITIALIZED = "uninitialized";
139 public static final String ICON_CONFIG = "config";
140 public static final String ICON_ATTENTION = "attention";
142 public static final String CONNECTION_TYPE_LOCAL = "local";
143 public static final String CONNECTION_TYPE_INTERNET = "internet";
144 public static final String CONNECTION_TYPE_CUSTOM = "custom";
146 public static final String FWPROD = "prod";
147 public static final String FWBETA = "beta";
149 public static final String FWREPO_PROD_URL = "https://api.shelly.cloud/files/firmware/";
150 public static final String FWREPO_TEST_URL = "https://repo.shelly.cloud/files/firmware/";
151 public static final String FWREPO_ARCH_URL = "http://archive.shelly-tools.de/archive.php";
152 public static final String FWREPO_ARCFILE_URL = "http://archive.shelly-tools.de/version/";
154 public static final int CACHE_TIMEOUT_DEF_MIN = 60; // Default timeout for cache entries
155 public static final int CACHE_TIMEOUT_FW_MIN = 15; // Cache entries for the firmware list 15min