diff --git a/build-flags/build_flags_esp8266-wifi b/build-flags/build_flags_esp8266-wifi index ca0d4d5..2201bbf 100644 --- a/build-flags/build_flags_esp8266-wifi +++ b/build-flags/build_flags_esp8266-wifi @@ -1,3 +1,3 @@ -DMODBUS_DISABLE #-DCOUNTER_DISABLE --DOTA +#-DOTA diff --git a/lighthub/item.cpp b/lighthub/item.cpp index a11bee9..254f611 100644 --- a/lighthub/item.cpp +++ b/lighthub/item.cpp @@ -89,6 +89,26 @@ int txt2cmd(char *payload) { return cmd; } +int subitem2cmd(char *payload) { + int cmd = 0; + + // Check for command + if (payload) + if (strcmp_P(payload, ON_P) == 0) cmd = CMD_ON; + else if (strcmp_P(payload, OFF_P) == 0) cmd = CMD_OFF; + //else if (strcmp_P(payload, REST_P) == 0) cmd = CMD_RESTORE; + //else if (strcmp_P(payload, TOGGLE_P) == 0) cmd = CMD_TOGGLE; + else if (strcmp_P(payload, HALT_P) == 0) cmd = CMD_HALT; + else if (strcmp_P(payload, XON_P) == 0) cmd = CMD_XON; + //else if (strcmp_P(payload, XOFF_P) == 0) cmd = CMD_XOFF; + else if (strcmp_P(payload, HEAT_P) == 0) cmd = CMD_HEAT; + else if (strcmp_P(payload, COOL_P) == 0) cmd = CMD_COOL; + else if (strcmp_P(payload, AUTO_P) == 0) cmd = CMD_AUTO; + else if (strcmp_P(payload, FAN_ONLY_P) == 0) cmd = CMD_FAN; + else if (strcmp_P(payload, DRY_P) == 0) cmd = CMD_DRY; + + return cmd; +} int txt2subItem(char *payload) { int cmd = S_NOTFOUND; @@ -501,6 +521,18 @@ int Item::Ctrl(short cmd, short n, int *Parameters, boolean send, int suffixCode debugSerial<