Page 2 sur 2

Re: Sonde de température pour composteur

Publié : 04 oct. 2018, 00:08
par Honrap
Bonne idée mais ça n'a l'air de venir de là. J'ai vidé le cache de FF 62.0.3, fermé FF, je me suis aussi déconnecté de Domoticz, mais idem.
J'ai essayé depuis ma tablette (avec FF pour Android), idem, le changement de délai n'est pas conservé.

Test avec IE , idem mais message d'erreur "Browser cache refresh failed" quand le cache se rafraichit.
2018-10-04 00_13_17-cache1.png
2018-10-04 00_13_17-cache1.png (4.42 Kio) Consulté 3468 fois
2018-10-04 00_12_42-cache2.png
2018-10-04 00_12_42-cache2.png (3.84 Kio) Consulté 3468 fois

Re: Sonde de température pour composteur

Publié : 04 oct. 2018, 08:59
par conurb
Bonjour,

Peut-être es-tu dans ce cas ?
https://www.domoticz.com/forum/viewtopic.php?t=20391

Si tu utilises un raspberry, pour t'en assurer, connecte-toi, puis :

Code : Tout sélectionner

$ sudo apt install sqlite3
$ cd domoticz
$ sudo service domoticz.sh stop
$ cp domoticz.db domoticz.save
$ sqlite3 domoticz.db
sqlite> select sValue from Preferences where Key='HTTPPostContentType';
sqlite> .exit
(edit: il vaut mieux arrêter Domoticz dans tous les cas, on ne sait jamais. Updated line : $ sudo service domoticz.sh stop)

Si ça te sort une ligne longue comme 2 bras, tu es bien dans ce cas, suivre le 1°.
Sinon, tu peux passer au 2° vu que tu as déjà les mains dans le cambouis ^

1°)
Remise en état (arrêt de domoticz et update db) :

Code : Tout sélectionner

$ sqlite3 domoticz.db
sqlite> update Preferences set sValue='YXBwbGljYXRpb24vanNvbg==' where Key='HTTPPostContentType';
sqlite> .exit
Tu peux ensuite essayer de démarrer Domoticz par :

Code : Tout sélectionner

$ sudo service domoticz.sh start
Mais le mieux reste de tout simplement redémarrer ton raspberry car suivant ce que tu utilises comme devices annexes, Domoticz n'est pas une perle en la matière (mais n'en voulons pas aux devs, la tâche n'est pas simple).


2°)
Si tu n'es pas dans ce cas et que tu en as assez de chercher, tu peux profiter de l'occasion pour directement mettre à jour la bdd avec le temps que tu veux.

Toujours penser à arrêter Domoticz si ce n'est pas déjà fait et modifier en mettant la valeur que tu souhaites (à la place du 240 ci-dessous):

Code : Tout sélectionner

$ sudo service domoticz.sh stop
$ sqlite3 domoticz.db
sqlite> update Preferences set nValue=240 where Key="SensorTimeout";
sqlite> .exit
Redémarrer ton raspberry.

Re: Sonde de température pour composteur

Publié : 15 oct. 2018, 00:50
par Honrap
La commande:

Code : Tout sélectionner

select sValue from Preferences where Key='HTTPPostContentType';
me sort:

Code : Tout sélectionner

YXBwbGljYXRpb24vanNvbg==
YXBwbGljYXRpb24vanNvbg==
YXBwbGljYXRpb24vanNvbg==
YXBwbGljYXRpb24vanNvbg==
YXBwbGljYXRpb24vanNvbg==
YXBwbGljYXRpb24vanNvbg==
YXBwbGljYXRpb24vanNvbg==
YXBwbGljYXRpb24vanNvbg==
YXBwbGljYXRpb24vanNvbg==
sqlite>
C'est pas long comme le bras... mais j'ai tenté quand même la méthode 1. Ca donne rien, la valeur reste bloquée à 60.

La méthode 2 fonctionne, puisqu'on écrit directement dans la base de données.
J'en ai profité pour modifier aussi la notification de batterie faible:

Code : Tout sélectionner

update Preferences set nValue=50 where Key="BatteryLowNotification";
Merci pour l'aide, j'ai encore appris quelque chose.

(je suis passé en bêta 4.10064, le problème est identique)

Re: Sonde de température pour composteur

Publié : 11 janv. 2019, 21:44
par Honrap
Salut,
Je déterre le sujet parce que j'ai trouvé la raison, et la solution, pour laquelle Domoticz ne prenait pas en compte mes modifications dans Réglages/Paramètres.
J'avais des multiples doublons (x9) dans la colonne key de la table preferences (ça faisait plus de 1200 lignes), et donc il est très probable que lorsque je mettais à jour un paramètre, c'était une des 9 valeurs qui était mise à jour mais Domoticz en chargeait une autre et l'appliquait.

Pour corriger, j'ai utilisé la méthode que j'avais déjà appliqué pour les doublons de températures.
Je l'ai juste adaptée à la table preferences.

Depuis l'interface web (Sauvegarde/Restauration), j'ai sauvegardé la base de données sur mon PC. J'ai ouvert la base avec DB Browser for SQLite puis exécuté les requêtes ci-dessous:

Requête pour savoir quelles sont les valeurs de key en doublon et combien de fois.
On cherche juste les key sans tenir compte des valeurs dans les colonnes nValue et sValue.

Code : Tout sélectionner

SELECT COUNT(*) AS nbr_doublon, key
FROM Preferences
GROUP BY key
HAVING COUNT(*) > 1

Requête pour supprimer les doublons (à priori c'est la première ligne de chaque doublon qui est conservée, en espérant qu'elle contient la bonne valeur, en particulier les mots de passe):

Code : Tout sélectionner

DELETE
FROM   Preferences
WHERE  Preferences.rowid > 
   (SELECT rowid
    FROM   Preferences T2
    WHERE  Preferences.rowid <> T2.rowid
      AND  Preferences.key    = T2.key);
 
select 'Doublons absolus apres suppression :';
SELECT COUNT(*) AS NBR_DOUBLES, key
FROM   Preferences
GROUP  BY key
HAVING COUNT(*) > 1;
 
select 'Lignes :' || count(*) from Preferences;
Une fois les requêtes exécutées, restauration depuis l'interface web Domoticz, puis nouveau test de modification de paramètre, cette fois ça marche.