oups me suis tromper dans le nom du fichier python ca marche mieux maintenant, merci encore pour ton temps
Allez, puisque c’est Noël, voici un cadeau :
shopping_list.py
#!/usr/local/bin/python
# coding: utf8
import json
with open('/config/.shopping_list.json') as data_file:
shoppingListData = json.load(data_file)
class listeDeCourses:
Liste = ""
nb_article = 0
statut = ""
myList = listeDeCourses()
for entry in shoppingListData:
if not entry['complete']:
myList.Liste += f"- {entry['name']}<br>"
myList.nb_article += 1
else:
myList.Liste = "Euh...il n'y a pas d'article dans la liste de courses, boloss...'"
if myList.nb_article == 0:
myList.statut = "Pas d'article"
elif myList.nb_article == 1:
myList.statut = f"{myList.nb_article} article"
else:
myList.statut = f"{myList.nb_article} articles"
print(json.dumps(myList.__dict__))
Sensor
- sensor:
name: Liste de Courses
command: python3 /config/shopping_list.py
json_attributes:
- Liste
- nb_article
value_template: '{{ value_json.statut }}'
Script
alias: "[Liste de Courses] Envoyer Liste à Quintus"
sequence:
- data: {}
entity_id: sensor.liste_de_courses
service: homeassistant.update_entity
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- service: notify.mobile_app_quintus_s21
data_template:
data:
channel: Alarme
importance: max
priority: high
ttl: 0
sticky: "true"
subject: <b>Liste de Courses </b> ({{ states('sensor.liste_de_courses') }})
message: "{{ state_attr('sensor.liste_de_courses', 'Liste') }}"
title: Home Assistant
mode: single
Mais alors, qu’est-ce que tout cela?
Juste une astuce pour ne plus être limité par les 255 caractères d’un state. Je passe par la partie attribute pour feinter.
Le state devient un : « Pas d’article », « 1 article », « 2 articles », etc…
Et en attributes, on récupère la liste de courses, formatée en lignes grâce à des « br », ainsi que le nombre d’articles.
Voici le résultat :
En vous souhaitant à tous de très joyeuses fêtes ![]()
![]()
Bonjour @Quintus ,
J’ai bien suivit les differents scripts et sensor et j’ai bien le resultat demander.
Sauf que mon fichier « shopping_list.json » ne change pas.
Je ne sais pas comment, mais j’ai un article dans ce fichier, qui ne se trouve pas dans ma liste de course dans grocy.
Mais dans grocy, j’ai 12 article dans ma liste de course, qui ne se rajoute pas dans le fichier « shopping_list.json »
Une idee du probleme ?
j’ai vu aussi dans une derniere mise a jour de grocy, qu’il parlait de mettre la liste de course dans le « todo » mais moi, il reste vide.
une info la dessus ?
Merci a toi.
Argh je n’utilise malheureusement pas l’intégration Grocy.
Je suppose donc que c’est de là que vient le souci…?
Grocy est censé prendre la main sur l’intégration intégrée de HA « Shopping List » ?
Non, mais je pensais que tu utilisais justement l’integration Grocy.
Désolé.



