Export historique (exportHistory)

Bonjour,
Je souhaite utiliser la fonction Export historique (exportHistory) du core de Jeedom depuis un scénario comme c’est indiqué dans la doc :

  • Export historique (exportHistory) : permet d’exporter l’historique en csv d’une commande sous forme d’un fichier (envoi par mail par exemple). Vous pouvez mettre plusieurs commandes (séparées par des &&). La selection de la période se fait sous la forme :
    • “-1 month” => -1 mois
    • “-1 day midnight” => -1 jour à minuit
    • “now” => maintenant
    • “monday this week midnight” => lundi de cette semaine à minuit
    • “last sunday 23:59” => dimanche précédent à 23h59
    • “last day of previous month 23:59” => dernier jour du mois précédent à 23h59
    • “first day of january this year midnight” => premier jour de janvier à minuit

Les explications n’étant pas très détaillées, j’ai voulu faire quelques tests avec envoi par mail.
Malheureusement le mail arrive, mais il est vide.

Voici la commande :
image

Dans les logs on voit bien qu’il prend en compte l’historique de la période :

------------------------------------
[2021-06-21 09:49:54][SCENARIO] Start : Scenario lance manuellement.
[2021-06-21 09:49:54][SCENARIO] Exécution du sous-élément de type [action] : action
[2021-06-21 09:49:54][SCENARIO] Export de l'historique du 2021-06-01 09:49:54 au 2021-06-21 09:49:54
[2021-06-21 09:49:54][SCENARIO] Envoi de l'export d'historique sur [Informations][XXXXXXXXXXX@XXXXXXXX.com][XXXXXXXXXXX@XXXXXXXX.com]
[2021-06-21 09:49:55][SCENARIO] Fin correcte du scénario
------------------------------------

Dans l’historique on voit bien qu’il y a des valeurs sur cette période :

J’ai essayé plusieurs type de commande mais le résultat est toujours le même.

Si quelqu’un utilise cette fonctionnalité et a plus d’informations sur la façon de l’utiliser, je suis intéressé.
Merci d’avance.
Bonne Journée.
Guillaume.

Hello,
même phénomène 4.1.23, plugin mail stable

pour moi le soucis est plus lié au plugin d’envoi de mail, il n’a pas de mode debug en plus pour essayer davoir des infos complémentaires

[2021-06-21 10:28:13][INFO] : Exécution de la commande [Communications][domotique@*****][Damien] avec les paramètres
{"files":"\/tmp\/jeedom\/history_export\/export_cpu_temp.csv","title":"export_cpu_temp","message":"export_cpu_temp"}

et en surveillant le fameux dossier /tmp/jeedom/history_export

-rw-r--r-- 1 www-data www-data 46K juin  21 10:39 export_cpu_temp.csv

puis il est supprimé après action, ce qui est normal.

évite juste les espaces et caractères spéciaux dans le nom du fichier, mais même moi jai reçu le message sans la pièce jointe

Je m’auto répond, problème trouvé c’est bien exportHistory

dans le plugin mail, on attend un array pour les pièces jointes
plugins/mail/mail.class.php:117
if (isset($_options['files']) && is_array($_options['files'])) {

mais exportHistory envoi un string, du coup l’attachment n’est pas pris en compte.

core/class/scenarioExpression.class.php:1581
$cmd_parameters = array('files' => $tmp_file,'title' => $options['name'],'message' => $options['name']);

correction
$cmd_parameters = array('files' => [$tmp_file],'title' => $options['name'],'message' => $options['name']);

je n’ai pas regardé toutes les branches mais je ne vois pas que ça soit corrigé.

4 « J'aime »

Bonjour,
Je ne comprends pas pourquoi le tag #plugin-mail est utilisé et encore moins pourquoi le tag #bug
Le problème, s’il y a problème, n’est pas dans le code du plug-in mail.

Bonjour,
Autant que je me souvienne j’ai créé le message dans Core Jeedom car pour moi le problème vient de la fonction exportHistory et non du plugin mail.
Le tag bug car pour moi une fonction d’export qui n’exporte pas c’est un bug. :slight_smile:

Merci je vais regarder ca.

Parfait ca fonctionne très bien, le seul problème, c’est qu’a la prochaine mise à jour la correction va sauter.

si le dev code passe par là please ^w^

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.