Je pense que le sujet a déjà était traité mais je n’arrive pas trouver ma solution si elle existe, ou peut une solution de remplacement
J’ai un scenario qui s’exécute qui renseigne la date de lancement dans une variable, je souhaite dans un autre scénario tester la différence entre la date du moment « now » et la valeur de ma variable.
et voici le résultat des log
DateTime::__construct(): Failed to parse time string ( « 2020/11/9 17:00:19 ») at position 0 ("): Unexpected character [2020-11-09 19:03:51][SCENARIO] Exécution du sous-élément de type [action] :
Je pense que le " " sont a l’origine de mon soucis. S’il y a une solution pour faire fonctionner cette fonction, ou bien sûr, je suis preneur d’une autre idée pour faire fonctionner mon test autrement.
Bonjour,
Désolé de revenir sur ce post mais j’ai beau relire la documentation Jeedom et les différents échanges sur le sujet je n’arrive à comprendre comment lever l’anomalie suivante :
[2022-05-05 04:48:39][SCENARIO] - Exécution du sous-élément de type [condition] : if time_diff(valueDate(#[Jardin][Extérieur SOA][Température]#),Now, h) != 0
[2022-05-05 04:48:39][SCENARIO] DateTime::__construct(): Failed to parse time string ("2022-05-05 04:38:18") at position 0 ("): Unexpected character
La fonction attends une date au bon format comme indiqué dans la doc, ce que ne renvoi pas Now
Ex : time_diff(2019-02-02 14:55:00,2019-02-25 14:55:00,s)
Il faut donc avoir cette date au bon format c’est-à-dire : date('Y-m-d H:i:s', strtotime(now))
Mais ce n’est pas suffisant car les deux fonctions ensembles, comme ça arrive souvent, n’arrive pas à parser correctement. Du coup il faut y aller par étapes dans le scénario.
[2022-05-11 07:47:45][SCENARIO] -- Start : Scenario lance manuellement.
[2022-05-11 07:47:45][SCENARIO] - Exécution du sous-élément de type [action] : action
[2022-05-11 07:47:45][SCENARIO] Mise à jour du tag #VD# => 2022-05-11 07:45:03
[2022-05-11 07:47:45][SCENARIO] Mise à jour du tag #J# => 2022-05-11 07:47:45
[2022-05-11 07:47:45][SCENARIO] Mise à jour du tag #Diff_heures# => 0
[2022-05-11 07:47:45][SCENARIO] - Exécution du sous-élément de type [action] : action
[2022-05-11 07:47:45][SCENARIO] Mise à jour du tag #VD# => 2022-05-11 07:45:03
[2022-05-11 07:47:45][SCENARIO] Mise à jour du tag #J# => 2022-05-11 07:47:45
[2022-05-11 07:47:45][SCENARIO] Mise à jour du tag #Diff_secondes# => 162
[2022-05-11 07:47:45][SCENARIO] Fin correcte du scénario
Je me doutais bien qu’il y avait aussi un problème avec la fonction now.
J’avais essayé de passer avec des tags, mais je n’avais pas la bonne formule pour la fonction Now.
je rencontre également le problème lorsque je donne la date (contenue dans une variable #Connexion#) à time_diff au format suivant : 2023-03-19 22:14:41
time_diff(date(‹ Y-m-d H:i:s ›, strtotime(variable(#Connexion#))), date(‹ Y-m-d H:i:s ›, strtotime(now)))) me renvoie l’erreur mentionnée… à la fois sur la valeur de la variable et pour now…
je ne comprends pas pourquoi…