mirror of
https://github.com/HASwitchPlate/openHASP.git
synced 2025-07-24 11:46:34 +00:00
Remove literal strings
This commit is contained in:
parent
8e150fca3a
commit
e39a688fe0
@ -123,10 +123,16 @@ static lv_color_t haspPayloadToColor(const char * payload)
|
||||
}
|
||||
|
||||
/* HEX format #rrggbb or #rrggbbaa */
|
||||
char pattern[4];
|
||||
snprintf_P(pattern, sizeof(pattern), PSTR(" 2x")); // % cannot be escaped, so we build our own pattern
|
||||
pattern[0]='%';
|
||||
char buffer[13];
|
||||
snprintf_P(buffer, sizeof(buffer), PSTR("%s%s%s%s"), pattern, pattern, pattern, pattern);
|
||||
int r, g, b, a;
|
||||
if(*payload == '#' && sscanf(payload + 1, "%2x%2x%2x%2x", &r, &g, &b, &a) == 4) {
|
||||
|
||||
if(*payload == '#' && sscanf(payload + 1, buffer, &r, &g, &b, &a) == 4) {
|
||||
return haspLogColor(LV_COLOR_MAKE(r, g, b));
|
||||
} else if(*payload == '#' && sscanf(payload + 1, "%2x%2x%2x", &r, &g, &b) == 3) {
|
||||
} else if(*payload == '#' && sscanf(payload + 1, buffer, &r, &g, &b) == 3) {
|
||||
return haspLogColor(LV_COLOR_MAKE(r, g, b));
|
||||
}
|
||||
|
||||
|
@ -216,7 +216,8 @@ void dispatchTextLine(const char * cmnd)
|
||||
dispatchTopicPayload(strTopic.c_str(),
|
||||
cmnd + pos + 1); // topic is before '=', payload is after '=' position
|
||||
} else {
|
||||
dispatchTopicPayload(cmnd, "");
|
||||
char buf[1] = {0};
|
||||
dispatchTopicPayload(cmnd, buf);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -253,7 +254,7 @@ void dispatchReboot(bool saveConfig)
|
||||
Log.verbose(TAG_MSGR, F("-------------------------------------"));
|
||||
Log.notice(TAG_MSGR, F("HALT: Properly Rebooting the MCU now!"));
|
||||
Serial.flush();
|
||||
halRestart();
|
||||
halRestartMcu();
|
||||
}
|
||||
|
||||
void dispatch_button(uint8_t id, const char * event)
|
||||
@ -360,9 +361,11 @@ void IRAM_ATTR dispatch_send_obj_attribute_str(uint8_t pageid, uint8_t btnid, co
|
||||
void dispatch_send_object_event(uint8_t pageid, uint8_t objid, uint8_t eventid)
|
||||
{
|
||||
if(objid < 100) {
|
||||
char eventname[16];
|
||||
dispatch_get_event_name(eventid, eventname, sizeof(eventname));
|
||||
dispatch_send_obj_attribute_str(pageid, objid, "event", eventname); /* Literal String */
|
||||
char topic[8];
|
||||
char payload[8];
|
||||
snprintf_P(topic, sizeof(topic), PSTR("event"));
|
||||
dispatch_get_event_name(eventid, payload, sizeof(payload));
|
||||
dispatch_send_obj_attribute_str(pageid, objid, topic, payload);
|
||||
} else {
|
||||
uint8_t groupid = (objid - 100) / 10;
|
||||
dispatch_send_group_event(groupid, eventid, true);
|
||||
|
Loading…
x
Reference in New Issue
Block a user