Skip to content

MBell fr

Networkbell edited this page Feb 21, 2022 · 58 revisions

mbell intro

Description

MBell est un système de gestion de contenu (CMS - content management system) pour propriétaire de stations météos disposant d'une API au format json, leur permettant de diffuser leurs données météorologiques en temps réel sur leur propre hébergement internet.

Exemple de station météo utilisant mbell à cette adresse : http://www.meteobell.com/mbell/index.php

Quel est l'intérêt de MBell ? Pourquoi l'utiliser ?

  1. Mbell vous permet de consulter les données météos en temps réel de votre station météo
  2. Contrairement à beaucoup d'autres services (et au site weatherlink.com lui-même), mbell s'installe directement sur votre propre site internet, donc à l'adresse web de votre choix. Ce sont vos données météos sur votre propre page web, pas celle d'un autre. Il n'y a aucun transit vers un site tierce extérieur, hormis le votre.
  3. Mbell est responsive, c'est-à-dire qu'il est totalement optimisé et orienté mobile. Idéal pour consulter rapidement ses données météos sur portable.
  4. En un simple clic, tout est traduit en anglais-français et toutes les unités sont convertis en km/h-mph °C/°F mm/in hPa/inHg. Vous pouvez même forcer l'affichage par défaut avec ces paramètres pour vos utilisateurs. A vous de décider.
  5. Mbell va plus loin que les données proposées par Weatherlink : phases de la lune / calcul de l'évapotranspiration même sans capteur solaire - détection réel de l'ensoleillement/nuageux en fonction de votre capteur et de la position du soleil calculé en direct - détection du brouillard, brume, risque de neige, verglas... en fonction des valeurs de station
  6. Toutes les données disponibles de votre station, même maximum/minimum journalier-mensuel-annuel sont visualisables en 1 seul affichage sans besoin de scroller : optimisation de l'affichage et un affichage couleur dynamique est possible pour visualiser les données en 1 coup d'oeil
  7. Des millions de possibilités de configurations différents rendant chaque mbell unique (2 langues, 4 designs, 3 couleurs, avec ou sans icônes, un affichage jour-nuit, affichage de 1 à 10 lignes et chaque case peut afficher une donnée différente)
  8. Mbell est un projet open source creative commons, avec un code source propre et clair, vous pouvez donc vous en servir comme brique de base pour coder votre propre affichage personnalisé sur votre site internet. Changez les couleurs, le design, tout ce que vous voulez.
  9. Vous pouvez installer plusieurs mbell avec chacun des paramètres et affichages différents, en ne vous servant que d'1 seul bdd. Un mbell tout en anglais avec unités anglaise et un autre mbell en français. Un mbell sur 1 ligne pour la page d'accueil et un autre ailleurs plus complet. Tout est possible.
  10. Nouveautée 2.1 : Mbell est maintenant compatible avec Weatherlink Live (version gratuite).
  11. Nouveauté 2.2 : Mbell vous permet de sauvegarder vos données météos dans votre propre bdd pour réaliser des données climatiques (système de cronjob)
  12. Nouveauté 2.3 : Mbell se met à jour automatiquement
  13. Nouveauté 2.4 : Mbell est maintenant compatible avec Weewx

Prérequis

  • Disposer d'une station météo de la marque Davis Instruments avec datalogger IP (weatherlink v1 et v2), connexion USB (weatherlink v2), Weatherlink Live (version gratuite) ou Weewx
  • Disposer d'un hébergement internet (en PHP 7 à 7.4)
  • Disposer d'1 base de données sur son hébergement internet

NOTE 1 : Si vous ne disposez ni d'hébergement internet et/ou ni de base de données, vous pouvez cependant installer Mbell sur votre ordinateur en local. Suivre dans ce cas la procédure d'installation avec localhost.

NOTE 2 : Une base de donnée est nécessaire depuis la version 2.0 de mbell, mais vous pouvez toutefois télécharger la version précédente, sans base de données, à cette adresse, avec mbell 1.6 : http://www.meteobell.com/mbell.php Attention cette version, bien que parfaitement opérationnelle, ne sera plus mis à jour et ne disposera donc pas des dernières évolutions depuis la version 2.0. Contrairement à la version 2.0, cette version 1.6, plus ancienne, nécessite une inscription obligatoire sur meteobell.com.

Installation

  1. Télécharger MBell sur Github (clic sur le bouton vert "Code" -> "Download ZIP")
  2. Dézipper le fichier mbell-main.zip

NOTE 1 : le dossier "mbell-main" obtenus peut être renommé comme bon vous semble.

Installation sur Internet

  1. Avec un logiciel FTP (exemple FileZilla), installer le dossier "mbell-main" sur votre site internet
  2. Aller à l'adresse url de votre site à l'emplacement de mbell : http://www.votre-site.com/mbell-main/
  3. La procédure d'installation se lance automatiquement en vous guidant pas à pas

NOTE 1 : vous pouvez placer le dossier "mbell-main" à n'importe quel endroit de votre site.

NOTE 2 : les informations de connexions à votre base de données vous sont fournis par votre hébergeur. Il vous sera peut-être nécessaire de créer la base de données (avec PHPMyAdmin) si elle n'existe pas encore (clic sur "Nouvelle base de données"). Dans ce cas vous n'avez qu'à donner un nom de base de donnée et choisissez l'encodage "utf8_general_ci". Enfin préférez MariaDB que MySQL si possible.

Installation en localhost

  1. Avec un logiciel de serveur virtuel (Wamp ou EasyPHP) aller à l'emplacement du dossier "mbell-main" sur votre disque dur
  2. La procédure d'installation se lance automatiquement en vous guidant pas à pas

NOTE 1 : La base de données en local doit avoir comme propriétés : Adresse = localhost / Utilisateur = root / Pas besoin de mot de passe / Comme pour l'installation Internet, le nom de la base de données doit être créé au préalable avec PHPMyAdmin (même procédure)

Mis à Jour - Version Plus Récente (nouveauté 2.3)

Si vous souhaitez mettre à jour Mbell dans une version plus récente, plus besoin de réinstaller (depuis version 2.3), il vous suffit d'écraser les nouveaux fichiers dans les anciens. Mbell détectera alors automatiquement qu'il doit être mis à jour et lancera une procédure d'installation simplifié sans toucher à votre bdd. Vos tables ne seront pas supprimés, mais seront mises à jour selon les besoins de la version que vous installez. Vous ne perdez donc aucune info.

A partir de la version 2.3 installée, vous n'aurez pour les prochaines mises à jours, quand elles seront prêtes, plus besoin de le faire manuellement comme avant via Github. Mbell détecte maintenant automatiquement s'il a besoin d'être mis à jour et vous n'avez qu'à appuyer sur le bouton de Mis à Jour alors disponible pour patcher automatiquement mbell dans la dernière version disponible.

NOTE 1 : Si un problème quelconque arrive, ou que vous rencontrez un message d'erreur suite à une mise à jour ou installation, il est parfois préférable cependant de faire une ré-installation complète (un fichier mal copié ou une écriture serveur qui s'est mal effectué pendant l'installation, ça peut arriver). Mbell détectera également si vous vous trompez en faisant une mise à jour avec une version plus ancienne, auquel cas il faudra faire une réinstallation complète.

Re-Installation

Si vous souhaitez réinstaller Mbell (dans la même version), il faut, dans le fichier admin.php du dossier config, changer $installed = 'yes'; par 'no'. Cela relancera la procédure d'installation depuis le début de manière propre. Attention, cela supprimera avant de les recréer aussi vos tables dans votre base de données (sauf mb_data). La table de vos données météos (créés avec le cronjob) n'est en revanche pas touché. La seule façon de supprimer mb_data est de le faire manuellement avec PhpMyAdmin, ceci afin de ne pas perdre vos données météos-climatos.

Vous pouvez aussi simplement supprimer ce fichier admin.php (ce qui revient aussi à supprimer tout mbell et réinstaller mbell derrière). Cela relancera également la procédure d'installation. En revanche, dans ce cas, vous devrez supprimer manuellement aussi votre bdd avec PHPMyAdmin, car lors de la réinstallation, mbell ne sera plus capable de détecter le chemin à votre bdd (puisque vous aurez supprimer le fichier admin.php qui le permet). Si vous restez alors bloqué à la phase du choix de station, lors de la phase d'installation, c'est dans ce cas normal. Vous devez dans ce cas, soit mettre $installed sur 'no', soit revenir en arrière à la phase 1 ou 2 d'installation (avec le lien URL), soit supprimer manuellement votre bdd avec PHPMyAdmin.

Présentation Détaillée

PDF - Présentation de Mbell

mbell description

mbell technique

mbell cas utilisation

mbell mld

mbell zone publique

mbell menu

mbell zone administration

mbell zone options

mbell zone défauts

mbell zone configuration

Installation Simplifiée Pas à Pas

La grande nouveauté de la version 2 de mbell est sa facilité d'installation pour un très grand nombre de configurations et hébergements différents. Terminé par exemple les problèmes des versions 1.0 à 1.6 avec le fichier "htaccess" qui dépendaient de chaque hébergement internet où mbell était installé. À la première utilisation, mbell détecte automatiquement s'il n'est pas installé. Dans ce cas, il lance la phase d'installation. Elle se déroule en différentes étapes et est très similaire à un CMS très connu : Wordpress.

  1. D'abord on choisit la langue : français ou anglais (vous pourrez rechanger cela par la suite)
  2. On installe ensuite la base de données (bdd) sur votre hébergement (ou en localhost). Vous devrez connaitre l'adresse de connexion de votre bdd, le nom d'utilisateur et le mot de passe utilisé pour se connecter à la bdd et enfin le nom de la bdd où mbell sera installé (vous devrez peut-être au préalable créer la bdd avec PHPMyAdmin si elle n'existe pas encore). Notez que si votre bdd est déjà utilisé, vous pouvez ajouter mbell dessus sans crainte. Ajoutez alors un prefixe de table. Vous pouvez même installer plusieurs mbell sur la même bdd, en changeant simplement le préfixe de table. Par défaut le préfixe de table utilisé est "mb_"
  3. Différents tests ont lieu à cette étape pour créer les 4 tables nécessaires au fonctionnement de mbell sur votre hébergement internet et détecter les erreurs les plus courantes, en vous aidant à les réparer (problème de Chmod par ex). Si tout se passe bien, alors la bdd est installé, vous n'avez alors qu'à valider.
  4. L'étape d'enregistrement de login - mot de passe - adresse mail. Elle sera nécessaire pour vous connecter à la zone d'administration de mbell
  5. Une simple étape de vérification de connexion avec le login - mot de passe que vous venez d'inscrire.
  6. Choisissez maintenant votre type de station. Différentes informations pour vous aider, vous sont alors données en fonction de votre type de station (Weatherlink V1, V2 ou Live)
  7. Inscription des informations de votre station météos (DID/KEY = Weatherlink V1 | DID/Password/Token = Weatherlink V2 | API_V2_KEY/API_SECRET = Weatherlink Live | URL_API/ID_USER/KEY/SIGNATURE = Weewx)
  8. Si Mbell parvient à se connecter à votre station, alors vous avez un résumé des infos de votre station.

Mbell est installé. Vous arrivez alors dans la Zone Administration

Installation Avancée

La phase d'installation va créer un fichier "admin.php" dans le dossier config. Pour relancer la phase d'installation, il suffit alors de supprimer ce fichier "admin.php". Notez que si vous utilisez les mêmes préfixes de tables, lors de cette nouvelle installation, toute la bdd sera écrasé (détruite puis recréé pour être exact).

Ne supprimez ou ne modifiez jamais le fichier "admin-backup.php". Vous pouvez par contre installer manuellement mbell en copiant ce fichier "admin-backup.php" et en renommant cette nouvelle copie "admin.php" puis en remplissant manuellement les informations demandées à l'intérieur de ce nouveau fichier. Tout est expliqué à l'intérieur du fichier pour vous aider à installer manuellement mbell.

Plusieurs Stations Météos / Mbell

Si vous disposez de plusieurs stations météos, avec pour chacune une API différente et voulez avoir un mbell pour chacun d'eux sur le même hébegerment internet c'est tout à fait possible. Vous n'avez même pas besoin d'avoir plusieurs base de données pour cela.

Il vous suffit d'installer plusieurs mbell avec des préfixes de tables différents. Exemple :

  1. un mbell à l'adresse suivante http://www.votre-nom-de-domaine/station-1/mbell/ avec comme préfixe de table mb1_
  2. un autre mbell à l'adresse suivante http://www.votre-nom-de-domaine/station-2/mbell/ avec comme préfixe de table mb2_ etc...

NOTE 1 : Vous pouvez aussi faire cela avec une seule station météo et des mbell avec plusieurs configurations, langues, design etc différentes.

NOTE 2 : Ajout version 2.5 pour Weatherlink Live : A l'installation, vous pouvez choisir une station en particulier (Numéro de Station - Optionnel). De même, si vous disposez d'une multitude de capteurs intégrés à votre station Weatherlink Live (exemple : 2 stations ISS + 2 déports anémomètres), vous pouvez choisir dans la zone de Configuration, maintenant, à quel capteur vous voulez affilier telle case.

Debug

Si vous rencontrez un problème avec MBell, avant de m'en informer, allez dans le fichier "admin.php" du dossier "config" et activez la fonction de débogage en mettant "true" à la place de "false" à la ligne : $debug = false;

Versions

  • 2.0 (-0.55) - Initial Release
  • 2.1 (-0.58) - Addon : Weatherlink Live
  • 2.2 (-0.63) - Addon : Cron Weather Backup
  • 2.3 (-0.65) - Addon : Auto Update System
  • 2.4 (-0.71) - Addon : Weewx / Update : Cronjob System
  • 2.41 (-0.72) - Correctif : Optimisation Code + Addon Wind Direction Box
  • 2.42 (-0.73) - Correctif : Cron Bug + Addon Cron Direct
  • 2.5 (-0.80) - Update Weatherlink Live Multi-Sensors

Version actuelle = Publique 2.5 (Développement -0.80)

Problèmes connus

Avec Weatherlink Live et Weewx :

  • L'API Weatherlink Live (version gratuite) et Weewx sont encore en phase d'expérimentation et nécéssitent un cronjob pour fonctionner aussi bien que les API précédentes. Elles possèdent donc beaucoup moins d'informations et le template de Mbell a été donc allégé en conséquence. La case "Plus Forte Rafale" par exemple ne peut pas fonctionner pour l'instant.

Avec Weewx (seul)

  • Toutes les infos de stations ne sont pas proposés, les sondes auxiliaires Température Air-Eau-Sol (6372), Température & Humidité de l'Air (6382), Humectation du Feuillage / Température & Humidité du Sol (6345), Evapotranspiration ne sont pas encore prise en compte

Anciens Bugs réparés :

  • bug introduit en 2.1 : si vous ajoutez une station dans "Changer Station" un message d'erreur PHP a lieu, mais la station est bien ajouté : réparé en 2.2
  • Un bug provenant de weatherlink lui-même rend aléatoire la génération de leur API et provoque alors des bugs sur certaines stations : réparé en 2.2
  • une maj de mbell sans supprimer le fichier admin.php (écrasement des anciens fichiers) rend la nouvelle installation impossible : réparé en 2.3
  • bug introduit en 2.1 : ni la zone Configuration, ni l'affiche de la zone Home ne fonctionne, dès lors que la case "Cumul de Pluie" est choisi en même temps que la zone Précipitation Mensuelle ou Annuelle et provoque une Erreur PHP Fatal = bug sur le switch Cumul de Pluie <-> Précipitation du Jour : réparé en 2.4
  • bug introduit en 2.1 : impossible de choisir l'Option : Sonde d'Indice UV (6490) seul, sans cocher en même temps le capteur de rayonnement solaire (6450) car provoque une Erreur Fatal PHP : réparé en 2.4
  • bug introduit en 2.2 : le système de cronjob est très/trop sensible aux désactivations serveurs, il se désactive donc souvent si votre hébergement est un peu trop instable et doit être relancé manuellement : réparé en 2.4
  • bug introduit en 2.3 : une fois coché, la Sonde d'Indice UV (6490) et/ou le Capteur de Rayonnement Solaire (6450) étaient impossible à décocher (la nouvelle configuration ne se mettant pas à jour une fois validé) : réparé en 2.4
  • bug introduit en 2.3 : si vous ne disposez pas de l'extension CURL sur votre hébergement, il est possible que vous ne puissez pas patcher automatiquement Mbell dans la version suivante. Vous devez alors passer par Github pour patcher mbell : réparé en patchant la version 2.4 à 2.41
  • bug introduit en 2.4 : Impossible de modifier les cases dans la zone Configuration (sauf si vous avez choisi le maximum de lignes à 10) : réparé en 2.41
  • bug introduit en 2.41 : Le cronjob n'enregistre plus les données météos : réparé en 2.42
  • bug introduit en 2.1 : Si vous disposez de plusieurs stations sur un même compte WL (api-key et api-signature identiques), seul la première station de votre compte WL peut être installé avec mbell : réparé en 2.5
  • bug introduit en 2.41 : L'icône Direction du Vent fonctionne avec un gradient de couleur dynamique faussé corespondant à la 'Vitesse du Vent' en degré : réparé en 2.5
  • Toutes les infos de stations ne sont pas proposés, les sondes auxiliaires Température Air-Eau-Sol (6372), Température & Humidité de l'Air (6382), Humectation du Feuillage / Température & Humidité du Sol (6345), ne sont pas encore prise en compte : corrigé en 2.5 pour Weatherlink Live

Remerciement :

Merci à Bug-Storm (alias 970hPa) pour son API Weewx : https://github.com/Bug-Storm/API_Weewx_Mbell

Clone this wiki locally