SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

286 Plugins, 197 contribs sur SPIP-Zone, 325 visiteurs en ce moment

Accueil > Géo, carto, météo > Informations météorologiques > Rainette > Rainette v2, une version multi-services

Rainette v2, une version multi-services

28 mai 2016 – par _Eric_ – commentaires

6 votes

Ce plugin est une évolution du plugin Rainette v1 et permet d’afficher les conditions et les prévisions météorologiques d’un lieu donné à partir d’un web service météorologique. Cette version supporte Weather.com® et 3 autres web services, à savoir, Wunderground, World Weather Online et Open Weather Map.

Les problèmes de la version v1

Depuis quelques années, Weather.com® - qui est le service unique utilisé par Rainette v1 - est toujours disponible mais a perdu en fiabilité, du moins pour les lieux à « faible popularité ».

Ceci étant, il m’a semblé nécessaire de faire évoluer Rainette pour pallier cette dérive et permettre à tous de disposer d’une météo locale.

Extension de la liste des services météo

La principale évolution a donc consisté à acquérir et restituer les données météo fournies par différents services et permettre ainsi à chaque utilisateur de choisir le meilleur flux correspondant à sa localisation.

Suite à une petite étude des flux disponibles, la liste des services proposant une API de récupération des données météo en XML et/ou JSON et retenus dans la version v2 de Rainette est la suivante :

Tous ces services restent gratuits en utilisation de base, mais les trois premiers mentionnés utilisent une clé d’inscription pour repérer les utilisations de leur flux. Certains proposent une API premium mais cette option n’est pas supportée par Rainette.
Il semble que Wunderground soit en fait la nouvelle API promue par Weather.com® mais l’ancienne interface étant toujours en service elle reste proposée par Rainette. Wunderground a d’ailleurs été racheté par Weather.com®.

Par souci de compatibilité avec la version v1, le service par défaut de Rainette reste Weather.com®. Néanmoins, il est conseillé d’utiliser l’un des trois services avec clé d’inscription, à savoir, World Weather Online, Wunderground et OpenWeatherMap.

Améliorations de Rainette v2 et incompatibilités avec la v1

Configuration

Contrairement à la version v1, chaque service de Rainette v2 possède une configuration qu’il est impératif de positionner avant utilisation. Cette configuration permet de définir la clé d’inscription pour tous les services sauf Weather.com®, le système d’unité, le type de résumé (natif du service ou converti vers Weather.com®) et le format d’échange XML ou JSON.

Données : unité et traduction

Quelque soit le service utilisé il est possible d’obtenir les données météorologiques dans le système métrique ou impérial US. La plupart du temps le service fournit la conversion mais quand ce n’est pas le cas, Rainette convertit de lui-même la donnée.

Certains services proposent une traduction du résumé météorologique dans une liste de langues. Dans ce cas, Rainette propose soit d’utiliser ce résumé (conseillé) soit d’utiliser une conversion vers le résumé de Weather.com® qui lui est traduit en quelques langues par le plugin.

Les modèles

Les modèles conditions, prévisions et informations n’ont pas été modifiés entre la v1 et cette v2. Les appels sont donc conservés tant dans les fichiers HTML que dans les articles SPIP.
Un modèle erreur permet d’afficher un problème de chargement des données.

Par contre, les sous-modèles ont eux été un peu modifiés comme expliqués ci-après.

Les sous-modèles

Les sous-modèles ont été quelque peu revus mais restent identiques en nom et en fonctionnalité. Un bloc de crédits a été inséré systématiquement pour chaque sous-modèle et chaque service. Il est important de respecter ces termes si vous devez définir vos propres sous-modèles.

Certains filtres utilisés dans les sous-modèles ont été renommés. Cela rend donc les modèles v2 incompatibles avec les modèles v1. néanmoins, si vous utilisez les sous-modèles Rainette de base vous ne verrez pas de différence. Par contre, si vous avez défini vos propres sous-modèles, il est très facile de les adapter en consultant le tableau de correspondance des fonctions de l’API Rainette au paragraphe suivant.

L’API fonctionnelle

L’API fonctionnelle a quelque peu évoluée entre la v1 et la v2. Pour que vous puissiez facilement adapter vos propres modèles voici le tableau de correspondance :

Filtre v1 Filtre v2 Utilisation
rainette_icone_meteo rainette_afficher_icone Affiche l’icone météo correspondant au résumé
rainette_resume_meteo rainette_afficher_resume Affiche le texte du résumé dans la langue choisie
rainette_afficher_tendance rainette_afficher_tendance Affiche la tendance de pression
rainette_afficher_direction rainette_afficher_direction Affiche la direction du vent
rainette_afficher_unite rainette_afficher_unite Affiche l’unité d’une donnée
rainette_croaaaaa_previsions rainette_coasser_previsions Appelle le sous-modèle de prévisions choisi
rainette_croaaaaa_conditions rainette_coasser_conditions Appelle le sous-modèle de conditions choisi
rainette_croaaaaa_infos rainette_coasser_infos Appelle le sous-modèle d’informations choisi

Les crédits

Il est important de respecter les crédits de chaque service lors de l’affichage de vos propres modèles comme cela est fait pour les modèles fournis par Rainette. Pour cela Rainette fournit un modèle de crédits nommé inc-credits.html que vous devez inclure dans vos modèles de la façon suivantes :

  1. #INCLURE{fond=modeles/inc-credits,
  2. classe_div=condtr,
  3. env}

Télécharger

Le parametre classe_div prend des valeurs différentes suivant le modèle Rainette utilisé et permet d’affecter une classe CSS au bloc englobant les crédits.

La gestion des icônes

Les services autres que Weather.com® offrent un jeu d’icônes adaptés à chaque résumé météo natif. Quand la configuration du service requiert l’utilisation du résumé natif du service l’icône météo affiché est aussi celui fourni par le service.

En outre, le service Wunderground propose une ensemble de thèmes d’icônes. le choix d’un thème est disponible dans la page de configuration du service.

Si le service est configuré pour utiliser la conversion vers les résumés Weather®, ce sont les icônes de Weather® embarqués dans Rainette dans le dossier img_meteo/ qui sont utilisés (ou leur surcharge éventuelle).

Indication du lieu pour chaque service

Chaque service possède sa propre liste de format pour indiquer le lieu. Rainette v2 ne retient pas toutes les possibilités mais uniquement celles indiquées dans le tableau suivant :

Weather.com® La seule possibilité est de fournir l’ID du lieu comme FRXX0076 pour Paris
Wunderground Rainette permet d’utiliser l’ID de Weather® ou le nom du lieu sous la forme ville,pays comme Paris,France
World Weather Online La seule possibilité est de fournir le nom du lieu sous la forme ville,pays comme Paris,France
Open Weather Map La seule possibilité est de fournir le nom du lieu sous la forme ville,pays comme Paris,France

Démo de Rainette

Une page de démo complète est disponible à l’adresse ?page=demo/rainette. N’hésitez pas à l’utiliser pour comparer les services sur votre lieu préféré.

Futur de Rainette v2

La branche v2 de Rainette n’est pas destinée à évoluer. Une branche v3 a été développée dans la foulée et propose une refonte totale du plugin et de ses modèles en conservant le mode multi-services.

En particulier, Rainette v3 devrait à terme proposer des prévisions horaires ce qui n’est pas possible aujourd’hui avec les versions v1 et v2.

Voir en ligne : http://plugins.spip.net/rainette

Dernière modification de cette page le 2 novembre 2016

Retour en haut de la page

Vos commentaires

  • Le 14 juin à 16:56, par Picachou En réponse à : Rainette v2, une version multi-services

    Bonjour,

    Avec le plugin sarkaspip 457 reloaded, je veux afficher la meteo, j’ai effectué les modifications dans le dossier modèles\mod_conditions_tempsreel.html comme ci-dessous :

    <div class="item active">
            <div class="entry meteo">
                    <strong class="h3-like entry-title">[(#ENV{code_icone}|{{rainette_afficher_icone}}{grand}|image_reduire{#EVAL{_SARKASPIP_CONFIG_LARGEUR_AFFICHER_ICONE}}|inserer_attribut{class,spip_logos})]
                            [(#ENV{code_icone}|{{rainette_afficher_resume}}|PtoBR)<br />][(#ENV{temperature_reelle}|rainette_afficher_unite{temperature})]</strong>
                    <p class="publication">[<time pubdate="pubdate" datetime="[(#ENV{derniere_maj}|date_iso)]"><i class="icon-calendar"></i> <:sarkaspip:meteo_titre_conditions:>&nbsp;(#ENV{derniere_maj}|heures)h[(#ENV{derniere_maj}|minutes)]</time>]<span class="authors muted"><span class="sep">, </span> <:sarkaspip:fourni_par_weather_com:></span></p>
                    <div class="entry-content">
                            <ul class="spip">
                                    <li>
                                            <span><:rainette:vent|ucfirst:></span>
                                            [ : (#ENV{vitesse_vent}|rainette_afficher_unite{vitesse})][ - (#ENV{direction_vent}|rainette_afficher_direction)]
                                    </li>
                                    <li>
                                            <span><:rainette:pression|ucfirst:></span>
                                            [ : (#ENV{pression}|rainette_afficher_unite{pression})][ (#ENV{tendance_pression}|rainette_afficher_tendance{symbole})]
                                    </li>
                            </ul>
                    </div>
            </div>
            <div class="control">
                    <a class="right pull-right" href="#slide_meteo" data-slide="next"><:sarkaspip:meteo_lien_previsions:> &rarr;</a>
            </div>
    </div>

    Tout fonctionne, sauf que j’ai l’icone avec NA au lieu d’un soleil.

    Meric d’avance pour votre aide

    • Le 15 juin à 14:28, par Picachou En réponse à : Rainette v2, une version multi-services

      Salut !

      Je me réponds : j’ai regardé rainette pour le plugin Escal ou il y a un modele escal_conditions_tempsreel2.html, j’ai piqué ce bout de code

                      <div class="rainette_conditions">
              <div class="statut">
                      <div class="cadre">
                                      <div class="maj">
                        <:sarkaspip:meteo_titre_conditions:>[&nbsp;(#ENV{derniere_maj}|heures)h][(#ENV{derniere_maj}|minutes)]<br />
                          </div>
                              <div class="icone">[(#ENV{icone}|rainette_afficher_icone{grand})]</div>
                              <div class="t_reelle"> [(#ENV{temperature_reelle}|rainette_afficher_unite{temperature})] </div>
                              <br />
                              <div class="resume">[(#ENV{resume}|rainette_afficher_resume)]</div>
                      </div>
              </div>

      ça fait ce que je veux, j’ai la temperature avec l’icone correspondante.

      Mais les div class n’ont pas les mêmes noms dans Escal et Sarka, donc l’affichage n’est pas encore top,
      Je retourne à mon tatonnement, mais si quelqu’un a le coup d’oeil rapide pour aider je lui dis merci d’avance.

    • Le 15 juin à 17:45, par Picachou En réponse à : Rainette v2, une version multi-services

      Rebonjour, ne cherchez plus,
      Plugin sarkaspi v4
      J’ai trouvé : dans squelette, j’ai crée un dossier modeles, avec le fichier mod_conditions_tempsreel.html avec ceci :

      [(#REM)<!--
              Ce sous-modele est celui utilise par la noisette Rainette du squelette
              pour presenter les conditions temps reel d'une ville
      -->
      ]
      <div class="item active">
              <div class="entry meteo">
                      <strong class="h3-like entry-title">[(#ENV{icone}|rainette_afficher_icone{grand}|image_reduire{#EVAL{_SARKASPIP_CONFIG_LARGEUR_ICONE_METEO}}|inserer_attribut{class,spip_logos})]
                              [(#ENV{code_icone}|rainette_resume_meteo|PtoBR)<br />][(#ENV{temperature_reelle}|rainette_afficher_unite{temperature})]</strong>
                      <p class="publication">[<time pubdate="pubdate" datetime="[(#ENV{derniere_maj}|date_iso)]"><i class="icon-calendar"></i> <:sarkaspip:meteo_titre_conditions:>&nbsp;(#ENV{derniere_maj}|heures)h[(#ENV{derniere_maj}|minutes)]</time>]<span class="authors muted"><span class="sep">, </span> <:sarkaspip:fourni_par_weather_com:></span></p>
                      <div class="entry-content">
                              <ul class="spip">
                                      <li>
                                              <span><:rainette:vent|ucfirst:></span>
                                              [ : (#ENV{vitesse_vent}|rainette_afficher_unite{vitesse})][ - (#ENV{direction_vent}|rainette_afficher_direction)]
                                      </li>
                                      <li>
                                              <span><:rainette:pression|ucfirst:></span>
                                              [ : (#ENV{pression}|rainette_afficher_unite{pression})][ (#ENV{tendance_pression}|rainette_afficher_tendance{symbole})]
                                      </li>
                              </ul>
                      </div>
              </div>
              <div class="control">
                      <a class="right pull-right" href="#slide_meteo" data-slide="next"><:sarkaspip:meteo_lien_previsions:> &rarr;</a>
              </div>
      </div>

      Le problème vient des filtres qui ont changé.
      Il me reste a afficher le slide prevision, pour le moment c’est vide mais ça c’est une autre histoire.

    • Le 18 juin à 18:21, par Picachou En réponse à : Rainette v2, une version multi-services

      Cherchez plus, probleme résolu.

      A bientôt

    • Le 21 juin à 10:53, par Picachou En réponse à : Rainette v2, une version multi-services

      Bonjour,

      J’obtiens la meteo comme ci-dessous (1re image) :

      Mais quand je clique sur previsions, j’obtiens ce qu’il y a sur la seconde image :

      Or dans le fichier sarkaspip v4 mod_previsions_24h.html, il est écrit :

      [(#REM)<!--
              Ce sous-modele est celui utilise par defaut par Rainette pour presenter les previsions d'un jour d'une ville
              Il est appelee par le filtre rainette_croaaaaa_previsions
              Cellule de gauche:
              - si aujourd'hui alors donnees du matin si l'heure est < 14:00 ou du soir sinon
              - si autre jour alors donnees du matin -->
      ]

      Or rainette_croaaaaa_conditions n’est pas le bon filtre, il est remplacé par rainette_coasser_conditions depuis la V2 de rainette
      Ma question est : ou se trouve ce filtre est ou est-il appelé (fichier, dossier)

      Parce que la je suis perdu.

      Merci de votre aide

      JPEG - 6.7 ko
    • Le 21 juin à 10:56, par Picachou En réponse à : Rainette v2, une version multi-services

      Argh, voici la premiere image, j’ai oublié qu’on ne pouvait ajouter plus d’une.

      JPEG - 8.2 ko

    Répondre à ce message

  • Le 2 juin à 08:07, par Said En réponse à : Rainette v2, une version multi-services

    Merci beaucoup pour tout le temps consacré à ce plugin. Il est vrai que ces derniers temps, le service Weather nous a fait quelques petites infidélités !

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?
  • [Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Mailsubscribers

    16 janvier 2013 – 274 commentaires

    Ce plugin permet de gérer les inscriptions (ou abonnements) à la diffusion de contenu par email. Mailsubscribers permet de gérer les inscriptions par Opt-in simple ou double et la désinscription par URL. Ce plugin gère également plusieurs listes (...)

  • noiZetier v2

    9 novembre 2012 – 36 commentaires

    Le noiZetier offre une interface d’administration permettant d’insérer au choix des éléments modulaires de squelettes (noisettes) et de les ajouter ainsi à ses squelettes. Compatibilité La version 2 du noizetier fonctionne sous SPIP 3. Elle est (...)

  • cirr : plugin « rédacteur restreint »

    29 octobre 2010 – 60 commentaires

    Ce plugin « cirr : rédacteur restreint » permet d’affecter des rubriques aux rédacteurs et modifie les droits afin qu’un rédacteur restreint (ou un administrateur restreint) voit dans l’espace privé uniquement les rubriques qui lui sont affectées (et leur (...)

  • Un retour d’expérience d’utilisation de Formidable

    26 octobre – commentaires

    Il s’agissait de créer un formulaire d’inscription à un évènement modérer les inscriptions dans le privé publier les inscriptions dans le public Nous avons discuté de cette présentation lors de l’apéro SPIP du 15 février 2016 à la Cantine (...)

  • Métas +

    3 décembre – 14 commentaires

    Améliorez l’indexation de vos articles dans les moteurs et leur affichage sur les réseaux sociaux grâce aux métadonnées Dublin Core, Open Graph et Twitter Card. Installation Activer le plugin dans le menu dédié. Dans le panel de configuration, (...)

Ça spipe par là