[SYS] Externalize utils functions (#2046)

To declutter main.ino code

Co-authored-by: Florian <1technophile@users.noreply.github.com>
This commit is contained in:
FlorianandFlorian authored and GitHub committed 2024-09-04 10:31:51 -05:00
1 parent 0999563095
commit 5e65e807b7
23 files changed
+295 -231

No files matched your search

+9 -9
View File
@@ -54,7 +54,7 @@ void _rfbSend(byte* message) {
void _rfbSend(byte* message, int times) {
char buffer[RF_MESSAGE_SIZE];
_rawToHex(message, buffer, RF_MESSAGE_SIZE);
TheengsUtils::_rawToHex(message, buffer, RF_MESSAGE_SIZE);
Log.notice(F("[RFBRIDGE] Sending MESSAGE" CR));
for (int i = 0; i < times; i++) {
@@ -99,23 +99,23 @@ void _rfbDecode() {
char buffer[RF_MESSAGE_SIZE * 2 + 1] = {0};
if (action == RF_CODE_RFIN) {
_rawToHex(&_uartbuf[1], buffer, RF_MESSAGE_SIZE);
TheengsUtils::_rawToHex(&_uartbuf[1], buffer, RF_MESSAGE_SIZE);
Log.trace(F("Creating SRFB buffer" CR));
StaticJsonDocument<JSON_MSG_BUFFER> SRFBdataBuffer;
JsonObject SRFBdata = SRFBdataBuffer.to<JsonObject>();
SRFBdata["raw"] = String(buffer).substring(0, 18);
int val_Tsyn = (int)(int)value_from_hex_data(buffer, 0, 4, false, false);
int val_Tsyn = (int)(int)TheengsUtils::value_from_hex_data(buffer, 0, 4, false, false);
SRFBdata["delay"] = (int)val_Tsyn;
int val_Tlow = (int)value_from_hex_data(buffer, 4, 4, false, false);
int val_Tlow = (int)TheengsUtils::value_from_hex_data(buffer, 4, 4, false, false);
SRFBdata["val_Tlow"] = (int)val_Tlow;
int val_Thigh = (int)value_from_hex_data(buffer, 8, 4, false, false);
int val_Thigh = (int)TheengsUtils::value_from_hex_data(buffer, 8, 4, false, false);
SRFBdata["val_Thigh"] = (int)val_Thigh;
unsigned long MQTTvalue = (unsigned long)value_from_hex_data(buffer, 12, 8, false, false);
unsigned long MQTTvalue = (unsigned long)TheengsUtils::value_from_hex_data(buffer, 12, 8, false, false);
SRFBdata["value"] = (unsigned long)MQTTvalue;
if (!isAduplicateSignal(MQTTvalue) && MQTTvalue != 0) { // conditions to avoid duplications of RF -->MQTT
@@ -233,7 +233,7 @@ void MQTTtoSRFB(char* topicOri, char* datacallback) {
valueRPT = 1;
byte message_b[RF_MESSAGE_SIZE];
_hexToRaw(datacallback, message_b, RF_MESSAGE_SIZE);
TheengsUtils::_hexToRaw(datacallback, message_b, RF_MESSAGE_SIZE);
_rfbSend(message_b, valueRPT);
// Acknowledgement to the GTWRF topic
pub(subjectGTWSRFBtoMQTT, datacallback); // we acknowledge the sending by publishing the value to an acknowledgement topic, for the moment even if it is a signal repetition we acknowledge also
@@ -245,12 +245,12 @@ void MQTTtoSRFB(char* topicOri, JsonObject& SRFBdata) {
// RF DATA ANALYSIS
const char* raw = SRFBdata["raw"];
int valueRPT = SRFBdata["repeat"] | 1;
if (cmpToMainTopic(topicOri, subjectMQTTtoSRFB)) {
if (TheengsUtils::cmpToMainTopic(topicOri, subjectMQTTtoSRFB)) {
Log.trace(F("MQTTtoSRFB json" CR));
if (raw) { // send raw in priority when defined in the json
Log.trace(F("MQTTtoSRFB raw ok" CR));
byte message_b[RF_MESSAGE_SIZE];
_hexToRaw(raw, message_b, RF_MESSAGE_SIZE);
TheengsUtils::_hexToRaw(raw, message_b, RF_MESSAGE_SIZE);
_rfbSend(message_b, valueRPT);
} else {
unsigned long data = SRFBdata["value"];