[DzVents] Données Météo Weather Visual Crossing
Re: [DzVents] Données Météo Weather Visual Crossing
Ce n'est pas ça qu'il faut enlver mais les --[[ jusqu'au ]]-- qui englobe la partie, ce qui désactive tous le code qu'il y a entre les deux balises.
Et concernant ta question de départ, il me semble que le script n'affiche rien dans le log hormis la ligne 'Réception de WeatherVisualCrossing'
Et concernant ta question de départ, il me semble que le script n'affiche rien dans le log hormis la ligne 'Réception de WeatherVisualCrossing'
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
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
Re: [DzVents] Données Météo Weather Visual Crossing
Il me semble que c'est ce que j'ai testé après avoir envoyé mon message précédent. J'ai enlevé les --[[ et les ]]-- afin d'activer les IDX 700, 701 et 702Keros a écrit : 25 août 2023, 17:19 Ce n'est pas ça qu'il faut enlver mais les --[[ jusqu'au ]]-- qui englobe la partie, ce qui désactive tous le code qu'il y a entre les deux balises.
Code : Tout sélectionner
-- Meteo
{idx = 700, cde = function (dz, idx, v)
local txt = v.current.weather[1].description..' ('..v.current.weather[1].main..' - '..v.current.weather[1].id..')'
dz.devices(idx).updateText(txt)
end },
-- Moon
{idx = 701, cde = function (dz, idx, v)
-- local dt = os.date("%a %d %b à %X", v.daily[1].dt) -- UTC
local moonrise = os.date("%Hh%M", v.daily[1].moonrise) -- UTC
local moonset = os.date("%Hh%M", v.daily[1].moonset) -- UTC
local p = v.daily[1].moon_phase*100 -- 0 and 1 are 'new moon', 0.25 is 'first quarter moon', 0.5 is 'full moon' and 0.75 is 'last quarter moon'.
if p==0 or p==100 then phase = "Nouvelle Lune ?"
elseif p<25 then phase = "Premier Croissant ?"
elseif p==25 then phase = "Premier Quartier ?"
elseif p<50 then phase = "Gibeuse Croissante ?"
elseif p==50 then phase = "Pleine Lune ?"
elseif p<75 then phase = "Gibeuse Décroissante ?"
elseif p==75 then phase = "Dernier Quartier ?"
elseif p<100 then phase = "Dernier Croissant ?"
end
-- luminosity
p = 2*p
if p>100 then p = 200-p end
local txt = "Lever à "..moonrise.."\nCoucher à "..moonset.."\nPhase : "..phase.." ("..p.."%)"
dz.devices(idx).updateText(txt)
end },
-- Moon Phase (%)
{idx = 702, cde = function (dz, idx, v)
dz.devices(idx).updatePercentage(v.daily[1].moon_phase*100)
end },
Pour IDX 700 :
Code : Tout sélectionner
2023-08-25 13:36:11.642 Error: dzVents: Error: (3.1.8) -- weather.visualcrossing v1.21: An error occurred when calling event handler WeatherVirtualCrossing
2023-08-25 13:36:11.642 Error: dzVents: Error: (3.1.8) -- weather.visualcrossing v1.21: ...oticz/scripts/dzVents/scripts/WeatherVirtualCrossing.lua:186: attempt to index a nil value (field 'current') Code : Tout sélectionner
2023-08-25 13:38:12.619 Error: dzVents: Error: (3.1.8) -- weather.visualcrossing v1.21: An error occurred when calling event handler WeatherVirtualCrossing
2023-08-25 13:38:12.620 Error: dzVents: Error: (3.1.8) -- weather.visualcrossing v1.21: ...oticz/scripts/dzVents/scripts/WeatherVirtualCrossing.lua:193: attempt to index a nil value (field 'daily') Code : Tout sélectionner
2023-08-25 13:39:12.244 Error: dzVents: Error: (3.1.8) -- weather.visualcrossing v1.21: An error occurred when calling event handler WeatherVirtualCrossing
2023-08-25 13:39:12.244 Error: dzVents: Error: (3.1.8) -- weather.visualcrossing v1.21: ...oticz/scripts/dzVents/scripts/WeatherVirtualCrossing.lua:215: attempt to index a nil value (field 'daily') Il me semble que dans le log après 'Réception de WeatherVisualCrossing' il doit y avoir les valeurs de "Alerts" (chez moi IDX 703) Mais je ne vois pas où et comment il va chercher les données !Keros a écrit : 25 août 2023, 17:19 Et concernant ta question de départ, il me semble que le script n'affiche rien dans le log hormis la ligne 'Réception de WeatherVisualCrossing'
Dernière modification par Keros le 27 août 2023, 16:22, modifié 1 fois.
Raison : Merci de grouper les réponses dans un message
Raison : Merci de grouper les réponses dans un message
RaspberryPi - RFLink - Zwave - WH2600
Domoticz : 2020.2 | Dashticz : V3.12 Master | dzvents : 3.0.2 | Python : 3.7.3
Domoticz : 2020.2 | Dashticz : V3.12 Master | dzvents : 3.0.2 | Python : 3.7.3
Re: [DzVents] Données Météo Weather Visual Crossing
Si tu désactives des portions de code par ce que tu as des erreurs, c'est normal qui les widgets ne soient pas mis à jour
Les erreurs indiquent que le script n'arrive pas à trouver les infos "field" dans les données Json qu'il récupère. Ouvre le Json dans un navigateur et essaye de retrouver les infos. Si tu as besoin de comprendre comment récupérer les données dans un Json, tu peux regarder mon Tuto sur OpenWeatherMap (lien dans ma signature) : le principe est le même.
En comprenant le principe, tu pourras même te faire tes propres widgets avec les infos que tu souhaites.
Concernant les alertes, c'est pour remplir un widget de type Alerte ; pas pour être mis dans les logs de DomoticZ.
Maintenant, tu peux très bien customizer le code pour mettre des infos dans les logs.
Les erreurs indiquent que le script n'arrive pas à trouver les infos "field" dans les données Json qu'il récupère. Ouvre le Json dans un navigateur et essaye de retrouver les infos. Si tu as besoin de comprendre comment récupérer les données dans un Json, tu peux regarder mon Tuto sur OpenWeatherMap (lien dans ma signature) : le principe est le même.
En comprenant le principe, tu pourras même te faire tes propres widgets avec les infos que tu souhaites.
Concernant les alertes, c'est pour remplir un widget de type Alerte ; pas pour être mis dans les logs de DomoticZ.
Maintenant, tu peux très bien customizer le code pour mettre des infos dans les logs.
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
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
Re: [DzVents] Données Météo Weather Visual Crossing
Il me semble avoir trouvé :Keros a écrit : 27 août 2023, 16:31 Les erreurs indiquent que le script n'arrive pas à trouver les infos "field" dans les données Json qu'il récupère. Ouvre le Json dans un navigateur et essaye de retrouver les infos.
Code : Tout sélectionner
-- Meteo
{idx = 700, cde = function (dz, idx, v)
local txt = v.currentConditions.conditions
dz.devices(idx).updateText(txt)
end },
Je regarde pour mon 701 et 702
RaspberryPi - RFLink - Zwave - WH2600
Domoticz : 2020.2 | Dashticz : V3.12 Master | dzvents : 3.0.2 | Python : 3.7.3
Domoticz : 2020.2 | Dashticz : V3.12 Master | dzvents : 3.0.2 | Python : 3.7.3
Re: [DzVents] Données Météo Weather Visual Crossing
Malheureusement, c'est le risque en récupérant des scripts complets
C'est la raison pour laquelle j'ai limité mon tuto sur OpenWeatherMap a expliqué comment récupérer les infos. Je savais que si je mettais un script complet, il aurait fallu faire ce type de SAD (Service Après Diffusion).
C'est la raison pour laquelle j'ai limité mon tuto sur OpenWeatherMap a expliqué comment récupérer les infos. Je savais que si je mettais un script complet, il aurait fallu faire ce type de SAD (Service Après Diffusion).
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
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
Re: [DzVents] Données Météo Weather Visual Crossing
Salut,
Pour DOUdy et Maiden91
Pour info avec ma version domoticz 4.97, les capteurs ne se mettaient pas à jour.
J'ai remplacé les dz par domoticz. Et pour le capteur Baromètre, la parametre domoticz.HUM_COMPUTE n'est pas reconnu. Je l'ai forcé à dry et depuis le capteur se met à jour.
domoticz.devices(idx).updateTempHumBaro(v.currentConditions.temp, v.currentConditions.humidity, domoticz.HUM_DRY, v.currentConditions.pressure, baro)
me reste encore le vent la pluie et la lune non fonctionnel.
Pour DOUdy et Maiden91
Pour info avec ma version domoticz 4.97, les capteurs ne se mettaient pas à jour.
J'ai remplacé les dz par domoticz. Et pour le capteur Baromètre, la parametre domoticz.HUM_COMPUTE n'est pas reconnu. Je l'ai forcé à dry et depuis le capteur se met à jour.
domoticz.devices(idx).updateTempHumBaro(v.currentConditions.temp, v.currentConditions.humidity, domoticz.HUM_DRY, v.currentConditions.pressure, baro)
me reste encore le vent la pluie et la lune non fonctionnel.
RPI2 OSMC + domoticz + Rfx 433e + chacon dio, teleinfo 433 via arduino nano, sonde T° innovaley et TFA 303139, sonde T° piscine DIY 433 oregon, OWL 180, RPI zero W + camera
Re: [DzVents] Données Météo Weather Visual Crossing
RaspberryPi - RFLink - Zwave - WH2600
Domoticz : 2020.2 | Dashticz : V3.12 Master | dzvents : 3.0.2 | Python : 3.7.3
Domoticz : 2020.2 | Dashticz : V3.12 Master | dzvents : 3.0.2 | Python : 3.7.3
Re: [DzVents] Données Météo Weather Visual Crossing
Bonjour
Pour la Lune j'ai du remplacer Vdaily par Vdays et remplacer moon_phase par moonphase pour la mise à jour des 2 capteurs. Par contre je suis un peu sceptique sur les valeurs retournées
Pour la Lune j'ai du remplacer Vdaily par Vdays et remplacer moon_phase par moonphase pour la mise à jour des 2 capteurs. Par contre je suis un peu sceptique sur les valeurs retournées
Code : Tout sélectionner
-- Moon
{idx = 'Phase Lune', cde = function (domoticz, idx, v)
-- local dt = os.date("%a %d %b à %X", v.daily[1].dt) -- UTC
local moonrise = os.date("%Hh%M", v.days[1].moonrise) -- UTC
local moonset = os.date("%Hh%M", v.days[1].moonset) -- UTC
local p = v.days[1].moonphase*100 -- 0 and 1 are 'new moon', 0.25 is 'first quarter moon', 0.5 is 'full moon' and 0.75 is 'last quarter moon'.
--local p = 0
if p==0 or p==100 then phase = "Nouvelle Lune ?"
elseif p<25 then phase = "Premier Croissant ?"
elseif p==25 then phase = "Premier Quartier ?"
elseif p<50 then phase = "Gibeuse Croissante ?"
elseif p==50 then phase = "Pleine Lune ?"
elseif p<75 then phase = "Gibeuse Décroissante ?"
elseif p==75 then phase = "Dernier Quartier ?"
elseif p<100 then phase = "Dernier Croissant ?"
end
-- luminosity
p = 2*p
if p>100 then p = 200-p end
local txt = "Lever à "..moonrise.."\nCoucher à "..moonset.."\nPhase : "..phase.." ("..p.."%)"
domoticz.devices(idx).updateText(txt)
end },
-- Moon Phase (%)
{idx = 'Lune', cde = function (domoticz, idx, v)
domoticz.devices(idx).updatePercentage(v.days[1].moonphase*100)
end },
Dernière modification par patoche le 10 nov. 2023, 15:51, modifié 2 fois.
RPI2 OSMC + domoticz + Rfx 433e + chacon dio, teleinfo 433 via arduino nano, sonde T° innovaley et TFA 303139, sonde T° piscine DIY 433 oregon, OWL 180, RPI zero W + camera
Re: [DzVents] Données Météo Weather Visual Crossing
Pour la pluie j'ai cette ligne qui bloque
023-11-08 18:20:03.944 Status: dzVents: Error (2.4.6): -- weather.visualcrossing v1.21: ...oticz/scripts/dzVents/scripts/weathervisualcrossing2.lua:172: attempt to index global 'domoticz' (a nil value)
Code : Tout sélectionner
172 local f_rainValTable = domoticz.utils.stringSplit(domoticz.devices(idx).sValue,';')
Dernière modification par Keros le 08 nov. 2023, 20:10, modifié 1 fois.
Raison : Ajout des balises
Raison : Ajout des balises
RPI2 OSMC + domoticz + Rfx 433e + chacon dio, teleinfo 433 via arduino nano, sonde T° innovaley et TFA 303139, sonde T° piscine DIY 433 oregon, OWL 180, RPI zero W + camera
Re: [DzVents] Données Météo Weather Visual Crossing
J'ai le même genre de soucis avec :

Code : Tout sélectionner
2023-11-08 22:45:07.147 Error: dzVents: Error: (3.1.8) -- WeatherVisualCrossing.lua v1.21: ...oticz/scripts/dzVents/scripts/WeatherVirtualCrossing.lua:54: attempt to index a nil value (field '?')
2023-11-08 23:00:27.718 Error: dzVents: Error: (3.1.8) -- WeatherVisualCrossing.lua v1.21: An error occurred when calling event handler WeatherVirtualCrossing
2023-11-08 23:00:27.718 Error: dzVents: Error: (3.1.8) -- WeatherVisualCrossing.lua v1.21: ...oticz/scripts/dzVents/scripts/WeatherVirtualCrossing.lua:72: attempt to index a nil value (field '?')
2023-11-08 23:15:04.691 Error: dzVents: Error: (3.1.8) -- WeatherVisualCrossing.lua v1.21: An error occurred when calling event handler WeatherVirtualCrossing
Dernière modification par Keros le 09 nov. 2023, 12:27, modifié 1 fois.
Raison : Citation supprimée. Merci de ne pas citer le message précédent lors d'une réponse directe.
Raison : Citation supprimée. Merci de ne pas citer le message précédent lors d'une réponse directe.
RaspberryPi - RFLink - Zwave - WH2600
Domoticz : 2020.2 | Dashticz : V3.12 Master | dzvents : 3.0.2 | Python : 3.7.3
Domoticz : 2020.2 | Dashticz : V3.12 Master | dzvents : 3.0.2 | Python : 3.7.3