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