MAJ Tempo EDF

Forum pour tous les autres protocoles : Enocean, X10, les cartes piface.razberry ...
Pour les questions concernant le choix de protocoles, merci d'utiliser le forum Les autres objets.
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: MAJ Tempo EDF

Message par Keros »

@manuloup, il me semble avoir vu dans ce sujet des scripts LUA, DzVents et Python, mais pas bash.
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
marcus_54
Messages : 425
Inscription : 28 févr. 2018, 12:15

Re: MAJ Tempo EDF

Message par marcus_54 »

Alain78 a écrit : 14 nov. 2024, 21:18 Les icônes personnalisées sont visibles dans le menu "configuration" "Plus d'options" et "icônes personnalisées"
la première icône porte le nombre 101 et ensuite 102, 103 etc.
Merci Alain ;)
J'ai créé mes icones et modifié le script
Il y a plus qu'à attendre que ça se mette à jour...
Domoticz 2024.7
Domoticz sur RPI 4B+ : MQTT; MQTTMapper; Zigbee; RFlink DIY 433; Téléinfo; DS18B20; Capteur; compteur eau wmbusmeter, NanoLeaf...
salinois
Messages : 330
Inscription : 08 févr. 2024, 19:10

Re: MAJ Tempo EDF

Message par salinois »

bonsoir,

@alain78, pourrais-tu , si tu as le temps, de regarder mon tuto, que j'ai commencé, plus haut, " début page 5 de ce post ".
Pour me dire ce qui ne va pas chez moi, pour que ça fonctionne.

merci à toi

Salinois

je suis sur une machine de tests
Version: 2024.7
Build Hash: b317cfab1
Compile Date: 2024-07-13 16:59:31
dzVents Version: 3.1.8
Python Version: 3.9.2 (default, Feb 28 2021, 17:03:44) [GCC 10.2.1 20210110]
Active User: admin

sur RPi 4b
Alain78
Messages : 75
Inscription : 05 févr. 2022, 09:18

Re: MAJ Tempo EDF

Message par Alain78 »

Bonsoir,
@salinois,, si tu mets le niveau de log à DEBUG, as-tu des informations dans les logs?
Pour info j'ai mis une version 1.1 qui corrige un petit bug découvert hier lors du site RTE HS.
suppression des lignes en italiques à la fin du script:
-------
else
domoticz.openURL({
url = urlTempoJoursRTE,
method = 'GET',
headers = {["User-Agent"]= "Wget/1.20.3 (linux-gnu)",["Content-Type"]="application/json"},
callback = scriptName, -- see httpResponses above.
})
domoticz.log('Réponse KO : '..item.data, domoticz.LOG_DEBUG)
end
------
Est-ce que les variables se mettent à jours ?
As-tu intégrer la partie pour la mise à jours des widgets?

Pour info, voir le sujet mise à jours des widgets si c'est la le sujet :viewtopic.php?p=122486#p122486 avec les échanges qui suivent.

Cordialement

Alain
marcus_54
Messages : 425
Inscription : 28 févr. 2018, 12:15

Re: MAJ Tempo EDF

Message par marcus_54 »

Bonjour,
@Alain78, Les icônes des Wigets s'affichent sous la forme d'un texte comme à leur création, j'ai pas bien compris pourquoi il n'a pas voulu mettre mes icônes personnalisées cette fois :?

le widget du jour :
Capture d'écran 2024-11-16 084714.png
Capture d'écran 2024-11-16 084714.png (15 Kio) Consulté 666 fois
Mes icones personalisés :
Capture d'écran 2024-11-16 084803.png
Capture d'écran 2024-11-16 084803.png (102.35 Kio) Consulté 666 fois
Si j'ai compris ce que tu avais expliqué, les dernières icônes Tempo seraient censées être 115 116 117 et 118 non?

Ton script que j'ai peut être mal modifier :

Code : Tout sélectionner

--[[ gestion des Icons sur les Widgets en fonction de leurs status
Couleur pour tempo:   seconde valeur = mes icones perso (le premier icone =101)
    - GRIS ........... 110  115
    - Rouge .......... 107  118
    - Blanc .......... 101  117
    - Bleu  .......... 104  116
    - ROUGE HP ....... 109  118
    - Rouge HC ....... 108  118
    - Blanc HP ....... 103  117
    - Blanc HC ....... 102  117
    - Bleu HP  ....... 106  116
    - Bleu HC  ....... 105  116
    Tempo: 300 Jours Bleus (Tout au long de l’année) - 43 jours blancs (Tout au long de l’année, hors dimanche) - 22 jours rouges (Du 1er novembre au 31 mars, hors week-end et jours fériés).
--]]

local scriptName            = 'script_device_Change_Icone_Widget'
local scriptVersion         = ' 1.0'
local NbrJBleu              = 300 -- Tout au long de l’année
local NbrJBlanc             = 43  -- Tout au long de l’année, hors dimanche
local NbrJRouge             = 22  -- Du 1er novembre au 31 mars, hors week-end et jours fériés

return  {   
        on = {  
                variables = { 'TempoJ',             -- Couleur Tempo du jour.
                              'TempoJ1',            -- Couleurl Tempo du lendemain.
                              'Tempo_HP-HC' },
            },
        
            logging =   {   -- La section de journalisation facultative vous permet de remplacer le paramètre de journalisation globale de dzVents.
                    -- comme défini dans Configuration> Paramètres> Autre> Système d'événements> Niveau de journalisation dzVents. 
                    -- Cela peut être pratique lorsque vous voulez que ce script ait une journalisation de débogage étendue pendant que le reste de votre script s'exécute en mode silencieux. 
                    level = domoticz.LOG_ERROR, -- domoticz.LOG_INFO, domoticz.LOG_MODULE_EXEC_INFO, domoticz.LOG_DEBUG or domoticz.LOG_ERROR, domoticz.LOG_FORCE,
                    marker  = scriptName..' v'..scriptVersion
                    },

    execute = function(domoticz, item)

        local function logWrite(str,level)
            domoticz.log(tostring(str),level or domoticz.LOG_DEBUG)
        end
        
        local function text_color(text,color) -- Fonction pour écriture du texte en fonction de la couleur TEMPO.
            if color == "ROUGE"  then text = '<FONT COLOR=#FF0000>' .. text .. '</FONT>' end
            if color == "BLEU"   then text = '<FONT COLOR=#0000FF>' .. text .. '</FONT>' end
            if color == "GRIS"   then text = '<FONT COLOR=#708090>' .. text .. '</FONT>' end
            if color == "BLANC"  then text = '<FONT COLOR=#000000>' .. text .. '</FONT>' end
            return text
        end

        -- Variables et devices pour traitement des jours Tempo.
        local TEMPOJ  = domoticz.devices('Couleur Tempo Aujourd\'hui')
        local TEMPOJ1 = domoticz.devices('Couleur Tempo Demain')
        local TEMPOH  = domoticz.variables('Tempo_HP-HC') -- Variable HP-HC TEMPO.

	if item.isVariable then
            -------------------------
            -- Icones pour TEMPO J --        
            -------------------------
            if item.name == "TempoJ" then
                local icons = 115
                if item.value == "ROUGE" then
                    if TEMPOH.value == "HP" then
                        icons = 118
                    else
                        icons = 118
                    end
                    NbrJ = NbrJRouge
                    mode = item.value..'-'..TEMPOH.value
                    NbJours = domoticz.variables('Tempo_J_Rouge').value
                elseif item.value == "BLANC" then
                    if TEMPOH.value == "HP" then
                        icons = 117
                    else
                        icons = 117
                    end
                    NbrJ = NbrJBlanc
                    mode = item.value..'-'..TEMPOH.value
                    NbJours = domoticz.variables('Tempo_J_Blanc').value
                elseif item.value == "BLEU" then
                    if TEMPOH.value == "HP" then
                        icons = 116
                    else
                        icons = 116
                    end
                    NbrJ = NbrJBleu
                    mode = item.value..'-'..TEMPOH.value
                    NbJours = domoticz.variables('Tempo_J_Bleu').value
                else
                    icons = 115
                    mode = "GRIS"
                end
                if mode == "GRIS" then --- Couleur Indéfinie
                    texte = text_color('Pas de données communiquées. ',mode)
                else
                    texte = text_color('Nbr de jours restants: '..NbJours..'/'..NbrJ..'<br>'..'Couleur TEMPO Aujourd\'hui: '..item.value,item.value)
                end
                TEMPOJ.updateText(texte)
                TEMPOJ.setIcon(tonumber(icons))
            ----------------------
            -- Icones pour TEMPO J + 1 --        
            ----------------------
            elseif item.name == "TempoJ1" then
                
                local icons = 115
                if item.value == "ROUGE" then
                    icons = 118
                    NbrJ = NbrJRouge
                    mode = item.value
                    NbJours = domoticz.variables('Tempo_J_Rouge').value
                elseif item.value == "BLANC" then
                    icons = 117
                    NbrJ = NbrJBlanc
                    mode = item.value
                    NbJours = domoticz.variables('Tempo_J_Blanc').value
                elseif item.value == "BLEU" then
                    icons = 116
                    NbrJ = NbrJBleu
                    mode = item.value
                    NbJours = domoticz.variables('Tempo_J_Bleu').value
                else
                    icons = 115
                    mode = "GRIS"
                end
                if mode == "GRIS" then --- Couleur Indéfinie
                    texte = text_color('Pas de données communiquées. ',mode)
                else
                    texte = text_color('Nbr de jours restants: '..NbJours..'/'..NbrJ..'<br>'..'Couleur TEMPO demain: '..item.value,item.value)
                end
                TEMPOJ1.updateText(texte)
                TEMPOJ1.setIcon(tonumber(icons))
            end
        end
    end
}
Domoticz 2024.7
Domoticz sur RPI 4B+ : MQTT; MQTTMapper; Zigbee; RFlink DIY 433; Téléinfo; DS18B20; Capteur; compteur eau wmbusmeter, NanoLeaf...
Alain78
Messages : 75
Inscription : 05 févr. 2022, 09:18

Re: MAJ Tempo EDF

Message par Alain78 »

Bonjour,

@marcus_54, Effectivement cela aurait du fonctionner, tu as essayé un "clear" du cache du navigateur et un "refresh" ?

Bonne journée.
marcus_54
Messages : 425
Inscription : 28 févr. 2018, 12:15

Re: MAJ Tempo EDF

Message par marcus_54 »

l'effacement du cache est sans effet...
après ce n'est pas bien grave, l'essentiel est que l'information soit juste.
Bonne journée
Domoticz 2024.7
Domoticz sur RPI 4B+ : MQTT; MQTTMapper; Zigbee; RFlink DIY 433; Téléinfo; DS18B20; Capteur; compteur eau wmbusmeter, NanoLeaf...
salinois
Messages : 330
Inscription : 08 févr. 2024, 19:10

Re: MAJ Tempo EDF

Message par salinois »

Alain78 a écrit : 15 nov. 2024, 23:21 Bonsoir,
@salinois,, si tu mets le niveau de log à DEBUG, as-tu des informations dans les logs?
Pour info j'ai mis une version 1.1 qui corrige un petit bug découvert hier lors du site RTE HS.
suppression des lignes en italiques à la fin du script:
-------
else
domoticz.openURL({
url = urlTempoJoursRTE,
method = 'GET',
headers = {["User-Agent"]= "Wget/1.20.3 (linux-gnu)",["Content-Type"]="application/json"},
callback = scriptName, -- see httpResponses above.
})
domoticz.log('Réponse KO : '..item.data, domoticz.LOG_DEBUG)
end
------
Est-ce que les variables se mettent à jours ?
As-tu intégrer la partie pour la mise à jours des widgets?

Pour info, voir le sujet mise à jours des widgets si c'est la le sujet :viewtopic.php?p=122486#p122486 avec les échanges qui suivent.

Cordialement

Alain
merci Alain78 pour ta réponse;
1 - j'ai mis à jour le script ( mise en commentaire les lignes); sauvegarde du script et voici les logs et puis plus rien !!!
024-11-16 20:10:32.166 Status: EventSystem: reset all events...
2024-11-16 20:10:32.168 Status: dzVents: Write file: /home/patrick/domoticz/scripts/dzVents/generated_scripts/script_time_Tempo_Couleur_RTE.lua
2 - j'ai mis debug pour les logs , mais rien du tout !!! : tu parles bien "debug dans le script " ? ligne28

donc, en vérifiant, je me suis aperçu que dans domoticz.sh, les logs n'étaient pas validées , c'est fait et voilà ce que j'ai
2024-11-16 20:46:31.003 Status: dzVents: Write file: /home/patrick/domoticz/scripts/dzVents/generated_scripts/script_time_Tempo_Couleur_RTE.lua
2024-11-16 20:46:31.003 Status: EventSystem: reset all device statuses...
2024-11-16 20:46:31.077 Status: Python EventSystem: Initializing event module.
2024-11-16 20:46:31.077 Status: EventSystem: Started
2024-11-16 20:46:31.077 Status: EventSystem: Queue thread started...
2024-11-16 20:46:31.134 dzVents: Handling system event for: "start"
2024-11-16 20:46:31.134 dzVents: script_time_Tempo_Couleur_RTE v1.0: ------ Start internal script: script_time_Tempo_Couleur_RTE: Domoticz event: "start"
2024-11-16 20:46:31.135 dzVents: script_time_Tempo_Couleur_RTE v1.0: ------ Finished script_time_Tempo_Couleur_RTE
2024-11-16 20:47:14.945 Status: [web:443] Incoming connection from: 192.168.0.6
3 - les variables sont comme je les ai créées au début, pas de mise à jour.

4 - Donc, pour les widgets, c'est là que je pèche; pour l'instant, je n'ai pas intégré cette partie.
est-ce que c'est un script en plus , ou faut-il le mettre dans le script principal ? sans le modifier pour l'instant et je créerai les widgets
aujourd'hui et demain "texte".

a+ de te lire

Salinois

PS: pour info , j'ai le script livebox5 qui tourne bien sur la même machine.
Alain78
Messages : 75
Inscription : 05 févr. 2022, 09:18

Re: MAJ Tempo EDF

Message par Alain78 »

marcus_54 a écrit : 16 nov. 2024, 10:30 l'effacement du cache est sans effet...
après ce n'est pas bien grave, l'essentiel est que l'information soit juste.
Bonne journée
Bonjour

Je pense avoir trouvé pourquoi la mise à jours des icônes ne fonctionne pas. Le script qui gère les widgets utilise une variable "Tempo_HP-HC" qui contient soit HP ou HC. Il doit être en erreur lors de l’exécution.

Soit tu modifies le script pour ne pas l'utiliser ou tu génères cette variable et tu mets HP ou HC à l’intérieur.

Cordialement

Alain
marcus_54
Messages : 425
Inscription : 28 févr. 2018, 12:15

Re: MAJ Tempo EDF

Message par marcus_54 »

Bonjour Alain,

Je ne pense pas que ce soit ça...

Toutes les variables ce matin semblent OK le widget a toujours l'icône texte
Les heures de mise à jour semblent cohérentes.

Capture d'écran 2024-11-17 083649.png
Capture d'écran 2024-11-17 083649.png (16.31 Kio) Consulté 602 fois
Domoticz 2024.7
Domoticz sur RPI 4B+ : MQTT; MQTTMapper; Zigbee; RFlink DIY 433; Téléinfo; DS18B20; Capteur; compteur eau wmbusmeter, NanoLeaf...
Répondre