Notification vigilancemétéo améliorée

Hello,

J’ai déjà mis en place une notification telegram quand le risque de pluie est positif ::

Tests sur #[Services][Pluie][Pluie prévue dans l heure]# >= 13 (puisqu’il y a 12 tronçons de 5min sur l’heure)

Par contre quelqu’un as-t-il réussi à avoir un truc plus ‹ visuel › ? Genre une image qui pourrait pas exemple reprendre le format du widget (avec ou sans texte) ?
image

j’ai un userTemplate avec ça mais je ne suis pas sur que c’est ce que tu cherche …
Capture d’écran du 2020-05-10 20-13-36

(sans la date)

Salut,
2 remarques :

  • à quoi servent les + ? L’échelle est forcément positive.
  • si tes caractères sont noirs, lorsqu’il n’y a pas de pluie, l’échelle de temps est invisible, non?

bonne remarque pour la 1
et oui pour la 2 et c’est tout l’intérêt

J’attends de voir s’il qu’un propose une solution sexy.
C’est vrai que c’est un peu tristouille comme visuel.

Oui l’idée principale c’est d’améliorer les infos de la notification. Cela dit, ta version est plus lisible que l’original, dans l’hypothèse ou il existe un truc pour transformer cet affichage en png par exempe, je suis preneur du fichier que tu utilises …
Perso le +, ça fait penser à H+15 etc…

tout est la :

previsionpluie_user.html.txt (3,8 Ko)

en gros c’est des tableaux …

1 « J'aime »

Bon j’ai googlé plein de trucs cette nuit et j’ai un début de solution : html2canvas

npm install --save html2canvas

Donc j’ai bricolé un truc tout pourri dans le template
previsionpluie_user.html.txt (5,3 Ko)

ça génère une image (zone jaune) téléchargeable
image

A faire :

  • corriger les erreurs JS
  • corriger les inclusions div etc pour ne pas prendre les boutons :ballot_box_with_check:
  • faire la génération automatique (onload ?)

Mais j’avoue JS/HTML je suis une quiche !

meteo

  • corriger les erreurs JS :ballot_box_with_check:
  • corriger les inclusions div etc pour ne pas prendre les boutons :ballot_box_with_check:
  • génération de l’image et stockage coté serveur :ballot_box_with_check:
  • changer l’emplacement de l’image générée : racine du serveur web c’est moyen :ballot_box_with_check:
  • corriger le fond blanc :ballot_box_with_check:
  • faire la génération à la demande lors de l’alerte … (emulation clic ??? curl ??)
  • rendre tout ça invisible
  • rendre renderimg.php uniquement accessible en local

Le template vigilancemeteo
previsionpluie_user.html.txt (4,9 Ko)
Le render pour upload image (à placer dans root et changer owner et droits)
renderimg.php.txt (448 Octets)

je vois pas trop ou tu veut en venir …

Quand je déclenche mon alerte « pluie » via télégramme, je veux y associer l’image des conditions météo,en plus du texte basique actuel…

Là pour l’instant il n’y a pas de risque de pluie mais tu vois l’idée ?
Il y avait sans doute moyen de faire en générant du texte/html… mais coté mise en place c’est vachement plus limité à travers telegram

bon je ne pourrait t’aider j’utilise pas télégramme (pas de https ici)

C’est pas le plus difficile ça

en faite j’utilise slack et je suis en train de basculer tout sur discord.

Bon j’ai quasiment tout qui fonctionne…
Enfin sauf qu’il doit y avoir un délai non pris en compte par sélénium et je génère pas toujours l’image…

Sujet clos pour ma part :
Les restrictions d’accès sont en place (authentification via login compte de service et page avec vérification d’une clé api)
La génération via sélénium fonctionne moyennant un peu de triche sur le script (cliquer 2 fois)…
Et le scénario de notification récupère bien l’image à date.

Pour ceux que ça branche (et qui maîtrisent un peu quand même), voilà mes sources (virez systématiquement l’extension .txt) :

  • En prérequis, il faut installer selenium sous rapsbian, c’est globalement un navigateur scriptable
apt-get install -y chromium-browser chromium-chromedriver
pip install selenium pip pyvirtualdisplay
  • La page PHP qui permet de générer l’image (à mettre dans /var/www/html/ …)
    renderimg.php.txt (661 Octets). Elle vérifiera que la clé api ‹ virtual › est fournie pour s’exécuter…

  • Le template vigilancemétéo pour avoir un bouton …il faudra que je songe à le cacher un jour. (à mettre dans /var/www/html/plugins/vigilancemeteo/core/template/dashboard/)
    previsionpluie_user.html.txt (5,0 Ko). Changez lavaleur de votre clé api dans la ligne var apikey = « xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx »; //ApiKey(‹ virtual ›)

  • Le point d’entrée sous forme d’un shell qui permet de définir le login d’un compte utilisé par le robot. meteo.sh.txt (327 Octets). Pensez à créer le compte (ici robot / thisismypassword) sous jeedom et/ou à modifier le nom et le mot de passe de ce fichier en conséquence. Il sera par exemple lancé par le plugin script.

  • Le script python qui permet d’exécuter les étapes de génération par le robot selenium. meteo.py.txt (3,8 Ko) (à placer à proximité du shell ci-dessus)
    Attention au lien: chez moi ça affiche la catégorie « Services » qui permet d’avoir moins de widget, donc pensez à modifier object_id=27 avec la correspondance chez vous .

    WIDGET_URL = "https://127.0.0.1/index.php?v=d&p=dashboard&object_id=27"
  • L’image finale meteo.png est générée dans le répertoire /var/www/html/data/img/meteo/ donc penser à créer l’arborescence

Reste à créer votre scénario, et par exemple avec télégram à renseigner dans le champ options : « file=/var/www/html/data/img/meteo/meteo.png »

Bon sur la dernière buster 64bits, chronium est tout cassé car pas encore à jour… du coup selenium aussi :face_with_head_bandage:

Alors, en réfléchissant un peu, la fonction rapport de jeedom semble corresponde à peu près à ce dont j’ai besoin… C’est pas interactif, mais dans ce cas précis, c’est pas grave…

Par contre, j’ai pas l’impression que ce soit un truc ultra exploité… Quelqu’un a un exemple de scénario avec la génération d’un png et un traitement mail/telegram associé ?

Première expérience un peu décevante avec le thème light et le nom du png qu’il semble falloir reconstruire si on veut en faire un truc

Retour de @Loic, les thèmes ne sont pas pris en compte : retour au point de départ