voila maintenant plusieurs mois de passés, mon installation HA a désormais remplacée mon ancienne solution (jeedom)
Il me reste encore beaucoup de choses à ajouter dans le futur, mais c’est subordonné à des achats de matériaux et de matériels mais il faut des pour cela
Cependant, il me manque deux fonctionnalités que je trouvais bien pratique dans mon installation jeedom:
C’était les horaires de bus, en fonction de l’arrêt de bus choisi.
(plugin localisation et trajets sur jeedom)
C’est basé sur l’api navitia. La compagnie de bus de ma ville met à jour cette base de données.
La seconde fonctionnalité que je n’arrive pas à reproduire dans HA, c’est le programme TV:
(plugin telejjee sur jeedom)
Merci, je ne connaissais pas la carte iframe
A défaut d’intégration, je vais utiliser cette méthode.
Je vais également me servir d’iframe pour afficher d’autres pages web comme celle de l’ecocompteur
Pour les horaires de bus, je me souviens que quand je l’avais configuré j’avais utilisé http://canaltp.github.io/navitia-playground/play pour trouver les bonnes options d’arrêts, de source …
j’ai un token navitia.io pour pouvoir l’utiliser
Je met quelque ligne ici (a adapter selon vos besoins, au cas ou cela peu aidé quelque personne. Ca permet de ce passer du top menu du site en question.
Bonjour à tous,
des news sur ses deux fonctionnalités.
Je n’ai pas encore regardé pour le programme tv.
Par contre cet après-midi, j’ai travaillé sur la fonctionnalité Navitia
Via Node-red, j’arrive à alimenter MQTT. Il me reste à faire des sensors dans home assistant et une carte markdown.
J’ai exactement le même besoin. J’arrive de Jeedom où je récupérais facilement les horaires de bus de plusieurs lignes.
Par contre, je suis complètement débutant sur Node-Red.
J’ai pu reproduire le schéma que tu as partagé, mais j’ai aucune idée de comment paramétrer les différents composants.
Pourrais-tu me guider plus en détail ?
le inject: Attention à la limitation du nombre de requêtes autorisées par mois (5 000), je l’ai réglé à 8 minutes pour une seule requête, entre 5h30 et 22h30. Il n’y a pas de bus sur ma ligne entre ces horaires, inutile que je rafraichisse les horaires.
Dans recherche horaires navitia, il faut que tu indiques ta requête Navitia qui correspond à ton besoin.
La fonction Départs c’est simplement:(a adapter si tu veux les arrivées, car tu as un horaire d’arrivée et un horaire de départ de l’arrêt concerné.
msg.payload = msg.payload.departures;
return msg;
Le reste, c’est de la mise en forme avant de publier dans MQTT
Ensuite, dans homeassistant, j’ai même réussi à utiliser un code couleur, écriture verte si je suis dans les temps pour le prendre, rouge s’il est en approche ou horaire dépassé (car tu as 8 minutes avant la prochaine mise à jour)
Merci beaucoup @Vince60 pour ces indications.
Je vais voir comment je m’en sors et apprendre un peu par moi meme aussi.
Tu utilises bien le playground de navitia pour trouver l’url à envoyer ?
canaltp github io | navitia-playground
Une petite idée mais je ne sais pas si c’est faisable. Ajouter un compteur pour savoir combien de re^quetes ont été exécutées sur le mois. Pour être sûr de ne pas dépasser le quota.
Pour le compteur, oui, cela doit être faisable facilement, tu rajoutes une seconde branche derrière le filtre horaire.
Il faudra que tu rajoutes une initialisation du compteur le 1er jour du mois.
Sinon, 5000 / 31 (nb jours max) = nb de requêtes max par jour
Ce résultat / nb d’heures que tu utilises le service = nb de requêtes par heure.
Enfin, 60 / par ce résultat = ton interval pour inject
Sous Jeedom, on ne pouvait pas régler finement, et le rafraichissement n’était pas si bas que 8 minutes, si je me rappelle bien, c’était 15 minutes.
J’'avance petit à petit.
Pour le moment je me contente d’écrire dans un fichier les horaires que je récupère.
J’ai pas encore trop compris comment fonctionnait lesobjets ‹ split › et ‹ route ›.
Je vais voir ensuite pour mettre mes valeurs dans des sensors.
Est-ce qu’il y a une technique pour débugger dans NodeRed ? Genre voir le payload à chaque étape ?
Sur Jeedom, si je me souviens bien je lançais un refresh à chaque fois que #time# == départ du 1er horaire de bus. Comme ca mon widget se rafraichissement régulièrement et le prochain bus était toujours en première ligne.
Je n’avais de soucis de dépassement de quota car finalement, quand il n’y a pas de bus, il n’y avait pas de refresh.
Est-ce que pour le programme TV tu as testé quelque chose de ton côté ?
Du mien, j’ai commencé à scraper le site tv-programme. Avec 3 html nodes différents, j’arrive à récupérer les logo des chaines, les 2 programmes de la soirée, et les horaires dé début des 2 programmes.
J’ai réussi à mettre à jour un sensor mqtt qui récupère le logo de TF1.
Je me demande si c’est possible de faciliter l’affectation des logos (je commence pour cela au début) dans les différents sensor mqtt. Ou bien faut-il avoir autant de nodes mqtt que j’aurais de sensor.
Je sais pas si ca t’intéresse de bosser dessus avec moi.
La fréquence de variations des logos des chaines n’est pas si courante, personnellement je mettrai ça en dur dans une banque d’image pour l’exploiter dans les cartes lovelace, plutôt que de les scrapper tous les jours et de passer par mqtt.
Le code node-red n’est pas du tout optimisé mais ca fait le taff.
Il me reste à comprendre comment lancer le flow au redémarrage de HA et à une certaine heure de la journée.
L’objectif final est également de pouvoir envoyer un message à Telegram et de recevoir en retour la liste des programmes.