mirror of
https://github.com/HASwitchPlate/openHASP.git
synced 2025-07-25 20:26:41 +00:00
Add ssid and ip dynamic text parameters
This commit is contained in:
parent
62540e8443
commit
952ab55b98
@ -456,5 +456,6 @@ _HASP_ATTRIBUTE(SCALE_END_LINE_WIDTH, scale_end_line_width, lv_style_int_t)
|
|||||||
#define ATTR_TEXT_HOSTNAME 10125
|
#define ATTR_TEXT_HOSTNAME 10125
|
||||||
#define ATTR_TEXT_MODEL 54561
|
#define ATTR_TEXT_MODEL 54561
|
||||||
#define ATTR_TEXT_VERSION 60178
|
#define ATTR_TEXT_VERSION 60178
|
||||||
|
#define ATTR_TEXT_SSID 62981
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -120,15 +120,6 @@ lv_obj_t* FindButtonLabel(lv_obj_t* btn)
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
// OK
|
|
||||||
static inline void my_btn_set_text(lv_obj_t* obj, const char* value)
|
|
||||||
{
|
|
||||||
lv_obj_t* label = FindButtonLabel(obj);
|
|
||||||
if(label) {
|
|
||||||
lv_label_set_text(label, value);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// OK - lvgl does not return a const char *
|
// OK - lvgl does not return a const char *
|
||||||
static const char* my_label_get_text(const lv_obj_t* label)
|
static const char* my_label_get_text(const lv_obj_t* label)
|
||||||
{
|
{
|
||||||
@ -144,10 +135,18 @@ static void my_label_set_text(lv_obj_t* label, const char* text)
|
|||||||
|
|
||||||
switch(hash) {
|
switch(hash) {
|
||||||
case ATTR_TEXT_MAC:
|
case ATTR_TEXT_MAC:
|
||||||
case ATTR_TEXT_IP:
|
|
||||||
if(len == 4) break;
|
if(len == 4) break;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
#if HASP_USE_WIFI > 0
|
||||||
|
case ATTR_TEXT_SSID:
|
||||||
|
if(len == 6) static_text = wifi_get_ssid();
|
||||||
|
break;
|
||||||
|
|
||||||
|
case ATTR_TEXT_IP:
|
||||||
|
if(len == 4) static_text = wifi_get_ip_address();
|
||||||
|
break;
|
||||||
|
#endif
|
||||||
case ATTR_TEXT_HOSTNAME:
|
case ATTR_TEXT_HOSTNAME:
|
||||||
if(len == 10) static_text = haspDevice.get_hostname();
|
if(len == 10) static_text = haspDevice.get_hostname();
|
||||||
break;
|
break;
|
||||||
@ -200,6 +199,15 @@ static const char* my_btn_get_text(const lv_obj_t* obj)
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// OK
|
||||||
|
static inline void my_btn_set_text(lv_obj_t* obj, const char* value)
|
||||||
|
{
|
||||||
|
lv_obj_t* label = FindButtonLabel(obj);
|
||||||
|
if(label) {
|
||||||
|
my_label_set_text(label, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set a new value_str for an object. Memory will be allocated to store the text by the object.
|
* Set a new value_str for an object. Memory will be allocated to store the text by the object.
|
||||||
* @param obj pointer to a object
|
* @param obj pointer to a object
|
||||||
|
@ -48,6 +48,7 @@ char wifiPassword[64] = WIFI_PASSW;
|
|||||||
#else
|
#else
|
||||||
char wifiPassword[64] = "";
|
char wifiPassword[64] = "";
|
||||||
#endif
|
#endif
|
||||||
|
char wifiIpAddress[16] = "";
|
||||||
uint8_t wifiReconnectCounter = 0;
|
uint8_t wifiReconnectCounter = 0;
|
||||||
|
|
||||||
// const byte DNS_PORT = 53;
|
// const byte DNS_PORT = 53;
|
||||||
@ -60,10 +61,11 @@ static void wifiConnected(IPAddress ipaddress)
|
|||||||
#if defined(STM32F4xx)
|
#if defined(STM32F4xx)
|
||||||
IPAddress ip;
|
IPAddress ip;
|
||||||
ip = WiFi.localIP();
|
ip = WiFi.localIP();
|
||||||
LOG_TRACE(TAG_WIFI, F("Received IP address %d.%d.%d.%d"), ip[0], ip[1], ip[2], ip[3]);
|
snprintf_P(wifiIpAddress, sizeof(wifiIpAddress), PSTR("%d.%d.%d.%d"), ip[0], ip[1], ip[2], ip[3]);
|
||||||
#else
|
#else
|
||||||
LOG_TRACE(TAG_WIFI, F(D_NETWORK_IP_ADDRESS_RECEIVED), ipaddress.toString().c_str());
|
strncpy(wifiIpAddress, ipaddress.toString().c_str(), sizeof(wifiIpAddress));
|
||||||
#endif
|
#endif
|
||||||
|
LOG_TRACE(TAG_WIFI, F(D_NETWORK_IP_ADDRESS_RECEIVED), wifiIpAddress);
|
||||||
|
|
||||||
LOG_VERBOSE(TAG_WIFI, F("Connected = %s"),
|
LOG_VERBOSE(TAG_WIFI, F("Connected = %s"),
|
||||||
WiFi.status() == WL_CONNECTED ? PSTR(D_NETWORK_ONLINE) : PSTR(D_NETWORK_OFFLINE));
|
WiFi.status() == WL_CONNECTED ? PSTR(D_NETWORK_ONLINE) : PSTR(D_NETWORK_OFFLINE));
|
||||||
@ -73,8 +75,9 @@ static void wifiConnected(IPAddress ipaddress)
|
|||||||
static void wifiDisconnected(const char* ssid, uint8_t reason)
|
static void wifiDisconnected(const char* ssid, uint8_t reason)
|
||||||
{
|
{
|
||||||
wifiReconnectCounter++;
|
wifiReconnectCounter++;
|
||||||
|
char buffer[64];
|
||||||
|
|
||||||
haspProgressVal(wifiReconnectCounter * 3);
|
// haspProgressVal(wifiReconnectCounter * 3);
|
||||||
// networkStop();
|
// networkStop();
|
||||||
|
|
||||||
if(wifiReconnectCounter > 33) {
|
if(wifiReconnectCounter > 33) {
|
||||||
@ -82,8 +85,6 @@ static void wifiDisconnected(const char* ssid, uint8_t reason)
|
|||||||
dispatch_reboot(false);
|
dispatch_reboot(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
char buffer[64];
|
|
||||||
|
|
||||||
switch(reason) {
|
switch(reason) {
|
||||||
#if defined(ARDUINO_ARCH_ESP8266)
|
#if defined(ARDUINO_ARCH_ESP8266)
|
||||||
case REASON_UNSPECIFIED:
|
case REASON_UNSPECIFIED:
|
||||||
@ -514,11 +515,22 @@ void wifi_get_statusupdate(char* buffer, size_t len)
|
|||||||
snprintf_P(buffer, len, PSTR("\"ssid\":\"%s\",\"rssi\":%i,\"ip\":\"%d.%d.%d.%d\","), WiFi.SSID(), WiFi.RSSI(),
|
snprintf_P(buffer, len, PSTR("\"ssid\":\"%s\",\"rssi\":%i,\"ip\":\"%d.%d.%d.%d\","), WiFi.SSID(), WiFi.RSSI(),
|
||||||
ip[0], ip[1], ip[2], ip[3]);
|
ip[0], ip[1], ip[2], ip[3]);
|
||||||
#else
|
#else
|
||||||
|
strncpy(wifiIpAddress, WiFi.localIP().toString().c_str(), sizeof(wifiIpAddress));
|
||||||
snprintf_P(buffer, len, PSTR("\"ssid\":\"%s\",\"rssi\":%i,\"ip\":\"%s\","), WiFi.SSID().c_str(), WiFi.RSSI(),
|
snprintf_P(buffer, len, PSTR("\"ssid\":\"%s\",\"rssi\":%i,\"ip\":\"%s\","), WiFi.SSID().c_str(), WiFi.RSSI(),
|
||||||
WiFi.localIP().toString().c_str());
|
wifiIpAddress);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const char* wifi_get_ssid()
|
||||||
|
{
|
||||||
|
return wifiSsid;
|
||||||
|
}
|
||||||
|
|
||||||
|
const char* wifi_get_ip_address()
|
||||||
|
{
|
||||||
|
return wifiIpAddress;
|
||||||
|
}
|
||||||
|
|
||||||
void wifi_get_info(JsonDocument& doc)
|
void wifi_get_info(JsonDocument& doc)
|
||||||
{
|
{
|
||||||
String buffer((char*)0);
|
String buffer((char*)0);
|
||||||
|
@ -16,6 +16,8 @@ bool wifiValidateSsid(const char* ssid, const char* pass);
|
|||||||
void wifi_get_statusupdate(char* buffer, size_t len);
|
void wifi_get_statusupdate(char* buffer, size_t len);
|
||||||
|
|
||||||
void wifi_get_info(JsonDocument& doc);
|
void wifi_get_info(JsonDocument& doc);
|
||||||
|
const char* wifi_get_ssid();
|
||||||
|
const char* wifi_get_ip_address();
|
||||||
|
|
||||||
#if HASP_USE_CONFIG > 0
|
#if HASP_USE_CONFIG > 0
|
||||||
bool wifiGetConfig(const JsonObject& settings);
|
bool wifiGetConfig(const JsonObject& settings);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user