[Résolu] ajouter du texte dans les log avec un Wemos D1

Posez ici vos questions d'utilisation, de configuration de DomoticZ, de bugs, de conseils sur le logiciel lui même dans son utilisation et son paramétrage.
Des forums spécifiques sont ouverts ci-dessous pour regrouper les différents sujets.
higgins91
Messages : 669
Inscription : 17 nov. 2016, 11:06

[Résolu] ajouter du texte dans les log avec un Wemos D1

Message par higgins91 »

Bonjour,
J'ai modernisé un vieux pluviomètre avec un wemos D1. Le pluviomètre fonctionne bien, j'ai la pluie qui remonte bien dans domoticz mais le lendemain d'un jour pluvieux je me retrouve avec la quantité tombée la veille.
En gros:
lundi 0mm (pas de pluie)
mardi 8mm (pluie)
mercredi 8mm (pas de pluie)
jeudi 0mm (pas de pluie)
...

Donc pour "débuguer" la chose je voudrais mettre dans les log de domoticz ce qui se passe dans mon wemos.
Pour ce faire, après enquête sur le wiki, j'ai mis cette commande dans mon code

Code : Tout sélectionner

    String urllog = "/json.htm?type=command&param=addlogmessage&message=";
    urllog += logdz;    //logdz contient le texte à afficher//
    urllog += "&level=2";
    Serial.println(urllog);
    sendDomoticz(urllog);
cela donne:

Code : Tout sélectionner

http://10.0.4.31:8080/json.htm?type=command&param=addlogmessage&message=increment time_pluie_48429 epoch_1683974986 jour_6 difference_43 timeClient.getDay_6&level=2
Si je laisse tel quel, j'ai ça dans les log:

2023-05-13 11:49:46.924 Error: Error parsing http request address: ::ffff:10.0.4.71

Précision 10.0.4.31:8080 c'est mon Pi et 10.0.4.71 c'est mon wemos. IP fixe et toutes les IP locales autorisées.
la fonction sendDomoticz(urllog); fonctionne bien car c'est la même qui m’envoie la pluie.

Si je prends la commande citée au dessus et que je la colle dans firefox cela fonctionne :?

Y a-t-il une commande particulière pour entrer du texte dans les LOG quand on est sous arduino ?
Dernière modification par higgins91 le 15 mai 2023, 21:19, modifié 1 fois.
Dz version : 2024.7
Rpi 4 avec dongle téléinfo, GPIO pour le moment !
pierrotori
Messages : 821
Inscription : 29 févr. 2016, 12:11

Re: ajouter du texte dans les log avec un Wemos D1

Message par pierrotori »

J'utilise MQTT pour ca, mais ta solution fonctionne aussi avec error level activé
je viens d'essayer ta commande et ca marche bien dans la log de domoticz avec level 2 ou 4, il faut peut-être entourer l'url de doubles côtes

Code : Tout sélectionner

curl -l "http://xxx.xxx.x.x:xxx/json.htm?type=command&param=addlogmessage&message=essai&level=2"
higgins91
Messages : 669
Inscription : 17 nov. 2016, 11:06

Re: ajouter du texte dans les log avec un Wemos D1

Message par higgins91 »

merci pour la piste du " mais je n'utilise pas curl mais un http.GET dans mon code :

Code : Tout sélectionner

void sendDomoticz(String urlA) {
  urlA = "http://10.0.4.31:8080" + urlA;
  http.begin(domoticz_client, urlA);
  int httpCode = http.GET();
  if (httpCode) {
    if (httpCode == 200) {
      String payload = http.getString();
    }
  }
  http.end();
}
je vais prendre un autre wemos et faire différents test de syntaxe... avec de la chance j'arriverais à trouver la bonne !
Dz version : 2024.7
Rpi 4 avec dongle téléinfo, GPIO pour le moment !
higgins91
Messages : 669
Inscription : 17 nov. 2016, 11:06

Re: ajouter du texte dans les log avec un Wemos D1

Message par higgins91 »

j'ai trouvé ! En fait il ne faut pas d'espace dans le texte envoyé et j'ai ajouté des " au cas ou...
la commande qui va bien est celle là:

Code : Tout sélectionner

    logdz = "increment quantite_";
    logdz += String(quantite);
    logdz += " totalh_";
    logdz += String(totalh);
    logdz += " jour_";
    logdz += String(jour);
    logdz += " heure_";
    logdz += String(heure);
    urllog = "/json.htm?type=command&param=addlogmessage&message=\"";
    urllog += logdz;
    urllog += "\"";
    Serial.println(urllog);
    sendDomoticz(urllog);
l'important c'est le \" qui permet de mettre les guillemets dans une variable texte :D
Dz version : 2024.7
Rpi 4 avec dongle téléinfo, GPIO pour le moment !
pierrotori
Messages : 821
Inscription : 29 févr. 2016, 12:11

Re: [Résolu] ajouter du texte dans les log avec un Wemos D1

Message par pierrotori »

Tu n’utilises pas mqtt ?
higgins91
Messages : 669
Inscription : 17 nov. 2016, 11:06

Re: [Résolu] ajouter du texte dans les log avec un Wemos D1

Message par higgins91 »

Non, j'ai plusieurs arduino et aucun ne l'utilise.
Dz version : 2024.7
Rpi 4 avec dongle téléinfo, GPIO pour le moment !
Flying Domotic
Messages : 772
Inscription : 10 mars 2020, 15:26

Re: ajouter du texte dans les log avec un Wemos D1

Message par Flying Domotic »

higgins91 a écrit : 15 mai 2023, 21:18 j'ai trouvé ! En fait il ne faut pas d'espace dans le texte envoyé et j'ai ajouté des " au cas ou...
la commande qui va bien est celle là:
Il est possible d'insérer des espaces en les remplaçant par un ou par
Répondre