Pascal032 Posté(e) 1 janvier 2021 Partager Posté(e) 1 janvier 2021 (modifié) Bonjour à toutes et tous, Tout d'abord, espérons que l'on sorte de cette année de m.... pour avoir une année 2021 merveilleuse Je suis débutant WeeWX Avec weatherlink, il y a moyen, (via des fichiers ".htx"), de "sortir" quelques valeurs afin de fabriquer sa propre page. Par exmple, j'utilise <!--Date--> <!--Time--> <!--outsideTemp--> <!--outsideHumidity--> <!--barometer--> <!--BarTrend--> <!--windSpeed--> <!--windDirection--> <!--rainRate--> <!--ForecastStr--> <!--dailyRain--> <!--sunriseTime--> <!--sunsetTime--> qui m'aidaient à fabriquer mon entête de page WEB. Ceci pour une Vantage dont la console donne une chaine de prévision pas trop mal : <!--ForecastStr--> Ma question est : existe-t'il un équivalent avec WeeWX ? Merci et bien à vous, Pascal Modifié 1 janvier 2021 par Pascal032 Lien à poster Partager sur d’autres sites More sharing options...
Pascal032 Posté(e) 1 janvier 2021 Auteur Partager Posté(e) 1 janvier 2021 Bien, j'ai un peu approfondi, et je suis tombé là-dessus : http://www.weewx.com/docs/hardware.htm#vantage_data qui semble ne laisser aucun doute sur l'impossibilité de retrouver ces prévisions que j'aimais bien. (certes pas toujours exactes, +/- 70% de justesse, mais bon) Ai-je tort ? bàv Lien à poster Partager sur d’autres sites More sharing options...
jackT Posté(e) 2 janvier 2021 Sciez Partager Posté(e) 2 janvier 2021 Bonjour, Effectivement, les prévisions générées par la console ne sont pas récupérées par weewx. Il est possible de demander à weewx de générer un fichier personnalisé tel que tu le faisais avec Weatherlink, ceci en utilisant les tags disponibles ( voir http://www.weewx.com/docs/customizing.htm#Tags ). Ce fichier personnalisé pourrait contenir (sans les prévisions) : $current.dateTime.format("%d-%m-%Y") $current.dateTime.format("%H:%M:%S") $current.outTemp $current.outHumidity $current.barometer $trend($time_delta=10800).barometer $current.windSpeed $current.windDir $current.rainRate $day.rain.sum $almanac.sunrise $almanac.sunset On peut créer un nouveau "skin" pour cela, mais il est plus facile d'intégrer ce fichier personnalisé dans un skin existant, si tu en utilises au moins un. Lien à poster Partager sur d’autres sites More sharing options...
jackT Posté(e) 2 janvier 2021 Sciez Partager Posté(e) 2 janvier 2021 (modifié) Après vérification dans le code du driver weewx de la vantage, les prévisions sont bien reçues par weewx sous forme de code. Je ne retrouve pas actuellement de lien, mais je me souviens avoir vu quelque part une liste de textes correspondant à chacun des codes de prévision. Voici donc le fichier personnalisé avec le code de prévisions de la console : $current.dateTime.format("%d-%m-%Y") $current.dateTime.format("%H:%M:%S") $current.outTemp $current.outHumidity $current.barometer $trend($time_delta=10800).barometer $current.windSpeed $current.windDir $current.rainRate $current.forecastRule $day.rain.sum $almanac.sunrise $almanac.sunset EDIT : j'ai retrouvé la corresponde code - texte, mais en anglais : https://www.wxforum.net/index.php?topic=2158.msg15424#msg15424 Modifié 2 janvier 2021 par jackT 1 1 Lien à poster Partager sur d’autres sites More sharing options...
Pascal032 Posté(e) 5 janvier 2021 Auteur Partager Posté(e) 5 janvier 2021 Bonjour jackT Merci pour tes recherches, j'avais aussi continué les miennes pour trouver la même chose que toi, ou presque. J'avais vu dans le driver Vantage que forecastrule était dans le schéma, mais je n'avais pas capté que la variable $current.forecastRule existait. Quand le l'inclus dans un skin, c'est bien le bon numéro de règle. J'avais aussi trouvé cette liste en anglais. Je suis passé par https://translate.google.com pour la traduire, et une correction manuelle (vent possible vers l'ouest NO ou N.) et puis en faire un tableau texte que j'ai joins. Maintenant, comment introduire la règle dans la page ? Je sais faire cela en PHP. Mais dans un skin ?... Merci encore ! forecastrule.txt Lien à poster Partager sur d’autres sites More sharing options...
jackT Posté(e) 5 janvier 2021 Sciez Partager Posté(e) 5 janvier 2021 Il y a 3 heures, Pascal032 a dit : Maintenant, comment introduire la règle dans la page ? Je pense que le plus simple est de le faire en php. Un script php récupère le code de prévision et le convertit en texte. Il suffit de définir un "array" associant le code de prévision et le texte correspondant. Lien à poster Partager sur d’autres sites More sharing options...
Pascal032 Posté(e) 5 janvier 2021 Auteur Partager Posté(e) 5 janvier 2021 Il me semble aussi, mais peut-on mettre du code PHP dans un skin ? Lien à poster Partager sur d’autres sites More sharing options...
jackT Posté(e) 5 janvier 2021 Sciez Partager Posté(e) 5 janvier 2021 à l’instant, Pascal032 a dit : Il me semble aussi, mais peut-on mettre du code PHP dans un skin ? Non. Mais j'imagine que le fichier personnalisé généré par weewx avec les diverses valeurs, dont le code de prévision, sont utilisés par un script php ou javascript pour l'affichage sur ton site? Dans ce cas, il suffit d'intégrer dans le script en question un tableau qui convertit le code de prévision en texte Lien à poster Partager sur d’autres sites More sharing options...
Pascal032 Posté(e) 5 janvier 2021 Auteur Partager Posté(e) 5 janvier 2021 Oui, tu imagines bien. En fait, je fais abstraction de ce que je connais pour repartir de zéro, mais en essayant de laisser à weewx le maximum du travail. Question : (mais je vais essayer) est-ce que un « .inc » peut-être un classique php, ou tout ce bazar doit être écrit en Python ? Lien à poster Partager sur d’autres sites More sharing options...
Pascal032 Posté(e) 5 janvier 2021 Auteur Partager Posté(e) 5 janvier 2021 (modifié) Le système de skin est assez puisant ; peu de lignes pour un résultat époustouflant. Heureusement, le .css est classique et permet moult changements. Je suis francophone unilingue et il me faut passer par des traducteurs pas toujours au top. Ce n'est pas toujours évident Modifié 5 janvier 2021 par Pascal032 Lien à poster Partager sur d’autres sites More sharing options...
jackT Posté(e) 5 janvier 2021 Sciez Partager Posté(e) 5 janvier 2021 (modifié) Il y a 2 heures, Pascal032 a dit : ou tout ce bazar doit être écrit en Python ? Il est possible d'ajouter du code python dans les fichiers personnalisés de weewx, et ce serait la meilleure manière de faire. Voir par exemple au début du fichier celestial.inc du skin par défaut "Season". Toutes les lignes de code python commencent par "#', et les commentaires par "##' Sinon, un script php sur le serveur peut lire le code de prévision depuis le ficher personnalisé et y associer le texte correspondant. Tout dépend de l'organisation de son site meteo. Modifié 5 janvier 2021 par jackT Lien à poster Partager sur d’autres sites More sharing options...
jackT Posté(e) 6 janvier 2021 Sciez Partager Posté(e) 6 janvier 2021 @Pascal032 Voici un exemple de fichier personnalisé qui donne directement le texte des prévisions de la console : $current.dateTime.format("%d-%m-%Y") $current.dateTime.format("%H:%M:%S") $current.outTemp $current.outHumidity $current.barometer $trend($time_delta=10800).barometer $current.windSpeed $current.windDir $current.rainRate #set $forecast_list={'0':'Principalement clair et plus frais.'} #set $forecast_list['1']='Principalement clair avec peu de changement de température.' #set $forecast_list['2']='Principalement clair pendant 12 heures avec peu de changement de température.' #set $forecast_list['3']= .......... #set $vpforecast = $current.forecastRule.format(format_string="%.0f") $forecast_list[$vpforecast] $day.rain.sum $almanac.sunrise $almanac.sunset J'ai mis les 3 premiers codes de prévision, et il faudrait ajouter tous les autres. La variable $forecast_list[$vpforecast] donne directement la prévision sous forme de texte. 1 Lien à poster Partager sur d’autres sites More sharing options...
Pascal032 Posté(e) 8 janvier 2021 Auteur Partager Posté(e) 8 janvier 2021 Bonjour JackT & Cie J'ai donc essayé ton code dans le titlebar.inc du skin Seasons. J'ai d'abord eu des problèmes avec le « ' » de « vers l'ouest ... ». L'erreur était bien claire dans le syslog. J'ai essayé avec « \' », mais toujours des erreurs moins claires. Je l'ai carrément supprimé, et pas mieux. Je joins titlebar.inc et 2 syslog Un "syslog-ok" lors de la création de la page https://cambier.eu/meteo/ Je n'ai ai ajouté au titlebar.inc que « $current.forecastRule.format(format_string="%.0f") », qui donne pour le moment « 44 », et qui correspond à la console Un "syslog-bad" pour le titlebar.inc joint <div id="title_bar"> <div id="title"> <h1 class="page_title">$station.location</h1> <p class="lastupdate">$current.dateTime</p> $current.forecastRule.format(format_string="%.0f") </div> Bien à vous tous, Pascal syslog-ok titlebar.inc syslog-bad Lien à poster Partager sur d’autres sites More sharing options...
jackT Posté(e) 8 janvier 2021 Sciez Partager Posté(e) 8 janvier 2021 (modifié) @Pascal032, dans ton fichier titlebar.inc, il y a un "=" de trop pour chaque ligne : Les lignes devraient avoir ce format : #set $forecast_list['3']='Généralement clair pendant 12 à 24 heures et plus frais.' sans "=" entre $forecast_list et "[" Et le format du premier élément doit être différent des autres. Cela permet de créer la variable $forecast_list : #set $forecast_list={'0':'Principalement clair et plus frais.'} Modifié 8 janvier 2021 par jackT Lien à poster Partager sur d’autres sites More sharing options...
Pascal032 Posté(e) 9 janvier 2021 Auteur Partager Posté(e) 9 janvier 2021 Bonjour, Cela ne fonctionne toujours pas 😶 J'ai essayé une autre syntaxe #$forecast_list=[] #$forecast_list.append("Principalement clair et plus frais.") #$forecast_list.append("Principalement clair avec peu de changement de température.") #$forecast_list.append("Principalement clair pendant 12 heures avec peu de changement de température.") Et pas mieux titlebar.inc syslog Lien à poster Partager sur d’autres sites More sharing options...
jackT Posté(e) 9 janvier 2021 Sciez Partager Posté(e) 9 janvier 2021 (modifié) il y a une heure, Pascal032 a dit : Cela ne fonctionne toujours pas 😶 La ligne pour l'index '0' est bonne, mais la syntaxe n'est toujours pas la bonne pour les index de '1' à '200'. Le "=" est mal placé. Il faut mettre : #set $forecast_list['1']='Principalement clair avec peu de changement de température.' et ceci pour toutes les lignes suivantes. Avec cette syntaxe, cela fonctionne très bien, voir la dernière ligne de cette page de mon site : http://meteo-sciez.fr/site/previsions_autre.php Modifié 9 janvier 2021 par jackT Lien à poster Partager sur d’autres sites More sharing options...
Pascal032 Posté(e) 9 janvier 2021 Auteur Partager Posté(e) 9 janvier 2021 À que je suis con ! J’ânonne sans même vérifier. Désolé pour les dérangements Lien à poster Partager sur d’autres sites More sharing options...
Pascal032 Posté(e) 10 janvier 2021 Auteur Partager Posté(e) 10 janvier 2021 Bonjour, encore moi. J'ai essayé comme un grand de trouver les variables classiques et surtout celles spécifiques à Vantage. Pas de trace de forecastRule, et encore moins de l'équivalence de <!--BarTrend--> qui n'est pas un calcul comme $trend($time_delta=10800).barometer, mais un " truc " qui donne 5 indications de tendance, de hausse à baisse rapide, lente ou stable, transmises à l'offset 3 du paquet LOOP (doc jointe - page 22) Ce sont elles qui sont aussi représentées par les flèches sur les stations. Une piste pour m'aider ? Merci ! Pascal VantageSerialProtocolDocs_v261.pdf Lien à poster Partager sur d’autres sites More sharing options...
jackT Posté(e) 10 janvier 2021 Sciez Partager Posté(e) 10 janvier 2021 (modifié) @Pascal032 : D'après le manuel de la console VP2, la tendance barométrique (sur 3h) est : Hausse rapide : variation >= 2 hPa Hausse lente : variation >= 0.7 hPa Stable : variation < 0.7 hPa et > -0.7 hPa Baisse lente : variation <= -0.7 hPa Baisse rapide : variation <= -2 hPa Le tag weewx $trend($time_delta=10800).barometer.raw donne la valeur brute de la variation de pression sur les 3 dernières heures Il faut donc tester la valeur du tag pour associer le texte correspondant : #set $barotrend=float($trend($time_delta=10800).barometer.raw) #set $barotext="Stable" #if $barotrend >= 0.7 #set $barotext="Hausse lente" #end if #if $barotrend >= 2 #set $barotext="Hausse rapide" #end if #if $barotrend <= -0.7 #set $barotext="Baisse lente" #end if #if $barotrend <= -2 #set $barotext="Baisse rapide" #end if $barotext Le tag $barotext indiquera la tendance sur 3h sous forme de texte. Modifié 10 janvier 2021 par jackT Lien à poster Partager sur d’autres sites More sharing options...
Pascal032 Posté(e) 15 mars 2021 Auteur Partager Posté(e) 15 mars 2021 (modifié) Bonjour à toutes et tous, j'espère que vous allez bien. J'ai reçu ma 1ère dose de vaccin, l'Astra-Zeneca, ce matin et je croise les doigts Pour @jackT , j'ai vu dans dans current.inc (skin Seasons) que WeeWx possède un tag pour la tendance barométrique : $trend.barometer.formatted (donc un petit gain de temps) J'ai aussi vu que la traduction Google a bugué « Clearing cooler and windy. » en proposant « Effacement plus frais et venteux. » (règle 120 et d'autres). Je crois qu'il vaut mieux que ce soit « s'éclaircissant » ou « plus d’éclaircies » Edit, il y a cette foutue quote qui enquiquine le monde, on va dire « vers éclaircies » Qu'en pensez-vous ? Modifié 15 mars 2021 par Pascal032 Lien à poster Partager sur d’autres sites More sharing options...
ollpat Posté(e) 16 mars 2021 Paimpol Partager Posté(e) 16 mars 2021 Le 05/01/2021 à 16:23, Pascal032 a dit : Il me semble aussi, mais peut-on mettre du code PHP dans un skin ? Bonjour Avec Belchertown, on doit pouvoir le faire Lien à poster Partager sur d’autres sites More sharing options...
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant