Liste de courses facilement accessible au bon moment ;)

c’est un peu bizar mais cause le sensor format (comma + newline)

{{ (states.sensor.shopping_list.state[:-1]).split(',\n')|last }}

ça ne marche pas…
j’ai encore la liste entière mais avec seulement 1 caractère en moins à la fin.

copiez ton liste stp

ou essaie ça

{{ (states.sensor.shopping_list.state[:-1]).split(',')|last }}

J’ai essayé ça, ça fait la même chose

J’ai ma liste qui contient :

  • Item 01
  • Item 02
  • Item 03

Je reçois comme notif :
Shopping list:

  • Item 01
  • Item 02
  • Item 0

stp copier entre ```

image

autre solution via rest

rest:
  - resource: http://192.1.x.y:8123/api/shopping_list  # replace with your HA IP address
    headers:
      authorization: !secret shopping_list
      content-type: 'application/json'
    method: GET
    scan_interval: 60
    binary_sensor:
      - name: Shopping List Empty
        value_template: >
          {% if value_json is defined %}
            {{ value_json|selectattr('complete', 'false')|map(attribute='name')|list|length == 0 }}
          {% else %}
            false
          {% endif %}
    sensor:
      - name: Shopping List Items
        value_template: >
          {% if value_json is defined %}
            {{ value_json|selectattr('complete', 'false')|map(attribute='name')|list|join(', ') }}
          {% else %}
            false
          {% endif %}

le !secret shopping_list est un long loved token a génerer dans HA

ce code est à mettre où ?

vingerha, tout te parait évident pour toi, mais ce n’est toujours facile de te suivre :disappointed_relieved:

compris…pour le moment on ne change pas…
copie/colle ça dans developer tools / template et m’envoie ton screenshot

{{ states.sensor.shopping_list.state[:-1] }}

{{ (states.sensor.shopping_list.state[:-1]).split(',') }}

{{ (states.sensor.shopping_list.state[:-1]).split(',')|last }}

{{ states.sensor.shopping_list.state[:-1] }}

{{ (states.sensor.shopping_list.state[:-1]).split(',') }}

{{ (states.sensor.shopping_list.state[:-1]).split(',')|last }}

=

Liste de courses :
- Item 01
- Item 02
- Item 0

['Liste de courses :\n- Item 01\n- Item 02\n- Item 0']

Liste de courses :
- Item 01
- Item 02
- Item 0

=

voilà le contenu de shipping_list.json :

[
  {
    "name": "Item 01",
    "id": "cce66f40475140119a4cee075669da02",
    "complete": false
  },
  {
    "name": "Item 02",
    "id": "f07e76e7762b4f30a8795d2179e880c3",
    "complete": false
  },
  {
    "name": "Item 03",
    "id": "9808889ec2964ee6a5c1baeb07749219",
    "complete": false
  }
]

OK, j’ai maintenant vu que j’avais changé mon script depuis qq temps, donc ça explique beaucoup :slight_smile:
stp changer le script vers ci-dessous, ça va enlever le texte « Liste de courses : » et rend une list plus propre…et mieux a gérer

#--------------------------------------------------------------------------------------------------
# Creates sensor with shopping list items
#--------------------------------------------------------------------------------------------------

#!/usr/local/bin/python
# coding: utf8
import json

with open('/config/.shopping_list.json') as data_file:
    shoppingListData = json.load(data_file)

content = ""
for entry in shoppingListData:
    if not entry['complete']:
        content += "%s,\n" % entry['name']

content += "\n"

print(content)
1 « J'aime »

c’est parfait :ok_hand:
ça marche en changeant le script, j’ai bien le dernier ajout seulement en notification !
You’re a king @vingerha :grin: :v:

salut, moi j ai du louper qqch car j ai rien

Cet post a tants des choses…commencer à expliquer ce que t’as fait

j ai rajouter :

command_line:
  - sensor:
        name: shopping_list
        command: python3 /config/custom_components/custom_sensor/shopping_list_open_items.py

dans configurtation.yaml ensuite j ai creer le script python.et fait l automatisation suivantes :

alias: test
description: ""
trigger:
  - platform: state
    entity_id:
      - sensor.shopping_list
    enabled: false
condition: []
action:
  - service: notify.mobile_app_pixel_7_pro
    data:
      message: "{{states.sensor.shopping_list.state}}"
      title: UPDATE
mode: single

Il y avait 2 scrips plus haut, t’as utilisé lequel?

EDIT: et t’as aussi le command line?

j ai mis le dernier. command_line dans configuration yaml

Et reboot-er après le command_line?
Erreurs dans le log?

rebooter pareil unknow
et quoi apres le command_line, fallais faire un truc?