LibTeleinfo
LibTeleinfo copied to clipboard
Update LibTeleinfo.cpp
Repair valueget function, add String handle to work easyly with ESP32
dans mon code qui complète une page html enregistrée sur le système de fichier de l'esp j'ai des étiquettes notammment pour l'affichage du compteur notés par exemple dans le code entre deux symboles ^
<tr><td>Rouge<td>^C1_EASF06^ Wh<td>^C1_EASF05^ Wh
<tr><td>Puiss.Act.<td colspan=2>^C1_SINSTS^ VA
ainsi je peux facilement mettre à jour l'affichage désiré
et dans mon sketch ça ressemble à ça : (fonction appelée pour remplacer les étiquettes par une valeur String)
if (Etiq.startsWith("C1_")) { //étiquettes C1_
if (Etiq == "C1_RELAIS") { //affichage personnalisé pour la valeur de relais en binaire
return String(strtol(tinfo.valueGet((char *)"RELAIS"), NULL, 16), BIN);
}
if (Etiq == "C1_HPBLEU") { //pour exemple
return tinfo.valueGet("EASF02") ;
}
return tinfo.valueGet(Etiq.substring(3)); //recherche et affichage des autres étiquettes compteur en enlevant "C1_" en début de chaine
}
n'ayant pas réussi à faire fonctionner la fonction TInfo::valueGet(), je l'ai modifiée car de plus elle provoquait de plantages comme j'ai tenté de m'en servir. Ayant retiré un memcopy et trois variables, je pense que c'est une amélioration si tant est qu'elle fonctionnait.