Notification personnalisée IOS Compagnon

Hello,

Donc ça fonctionne dans les notifications persistentes :

Et je n’ai plus aucune erreur dans les logs de HA
Mais je ne vois pas l’affichage du chiffre en mode random…

C’est quoi la prochaine étape ?

@Clemalex

Alors j’ai modifié l’automation comme ça et ça m’affiche bien une notification sur mon iphone avec le titre et le message. Mais pas de bouton actionnable pour l’instant

- id: '1608586806497'
  alias: Notification de définition de l'heure de chauffe de la sdb le matin
  trigger:
  - platform: time
    at: input_datetime.wake_time_2
  action:
  - service: notify.mobile_app_nikos_iphone
    data:
      title: Chauffage Salle de bain
      message: On chauffe à quelle heure demain ?
      data:
        push:
        category: Chauffage_Salle_de_bain_Matin
  mode: single


Tu as bien synchroniser dans la configuration de l’application ?
https://forum.hacf.fr/t/notification-personnalisee-ios-compagnon/2175/9?u=clemalex

@Clemalex

Bon visiblement c’était un problème d’écriture sur la catégorie !
Dans mon configuration.yaml j’ai mis un identifiant simple : chauffage (un seul mot et en minuscules)
Et dans l’automatisation pareil
Et ça fonctionne !!

Faut juste faire la suite maintenant pour pour le régler !

Sur l’identifier ?
Pour sûr ce qui est dit c’est que :

A unique identifier for the category. Must be lowercase and have no special characters or spaces (underscores are ok).

Que je traduis par :

Identifiant unique, doit être en minuscule sans caractère spécial ou espaces (underscores permis)

Peux tu partager celle qui fonctionne du coup pour les autres ?

Alors,
Voilà la configuration dans le configuration.yaml :

ios:
  push:
    categories:
      - name: Chauffauge_Salle_de_bain_Matin
        identifier: 'chauffage'
        actions:
          - identifier: 'NE_PAS_CHAUFFER_DEMAIN'
            title: 'Pas demain !'
            activationMode: 'background'
            authenticationRequired: false
            destructive: true
            behavior: 'default'
          - identifier: 'DEFINITION_DE_L_HEURE'
            title: 'Définir heure'
            activationMode: 'background'
            authenticationRequired: false
            destructive: true
            behavior: 'textInput'
            textInputButtonTitle: 'OK'
            textInputPlaceholder: '06:15'


Et l’automation dans le automations.yaml :

- id: '1608586806497'
  alias: Notification de définition de l'heure de chauffe de la sdb le matin
  trigger:
  - platform: time
    at: '20:00:00'
  action:
  - service: notify.mobile_app_nikos_iphone
    data:
      title: Chauffage Salle de bain
      message: On chauffe à quelle heure demain ?
      data:
        push:
          category: chauffage
  mode: single

Voilà ! Je posterai le reste quand ça sera prêt !

1 « J'aime »

Ok on est bon niveau du textInput aussi !!!

Voilà l’automatisation correspondante :

- id: '1610628830203'
  alias: 'Réponse notification : définition horaire'
  description: ''
  trigger:
  - platform: event
    event_type: ios.notification_action_fired
    event_data:
      actionName: DEFINITION_DE_L_HEURE
  condition: []
  action:
  - service: input_select.select_option
    data:
      option: '{{ trigger.event.data[''textInput''].split('':'')[0] }}'
    entity_id: input_select.wakehour_2
  - service: input_select.select_option
    data:
      option: '{{ trigger.event.data[''textInput''].split('':'')[1] }}'
    entity_id: input_select.wakeminutes_2
  mode: single

ATTENTION : il faut créer dans l’appli IOS une action qui s’appelle DEFINITION_DE_L_HEURE :

Ouvrir application IOS HA et cliquer sur le menu en haut à gauche :

Cliquer sur App Configuration :

Cliquer sur Actions

Puis sur créer :

Et dans le nom et le texte mettre DEFINITION_DE_L_HEURE

1 « J'aime »

Comment ça ?


Du coup avec tout ça, je vois pas ce qui diffère de mon post…
A part le nom de la catégorie en un mot unique…
J’ai loupé quelque chose ?

Ben je sais pas trop, je vois juste la catégorie en mot unique mais s’il est dit que les underscore fonctionnent…

Du coup faut que je règle un deuxième chauffage le même jour mais pas à la même heure car il met plus longtemps à chauffer.
Tu crois que je peux l’intégrer dans l’automation avec un deuxième textinput ?

Je pense pas car t’aura qu’un seul evenement… Sauf si tu garde 1 bouton pour la définition de l’heure et tu y mets 2 heures ou alors 1 seule heure et après dans l’automatisation tu soustrait/ajoute un delta pour l’autre chauffage…

Je partirai plus sur un calcul de delta… (fait une recherche de timedelta sur le forum)

Oui c’est une très bonne idée…
Malheureusement je ne comprends pas tout sur le timedelta… Il faudrait que le deuxième chauffage se déclenche 25 min avant… celui là…

Fait pour mini-tuto IOS ! :smile:

Bonjour,

Je suis curieux, je comprends pas non plus, peut-etre un bug, peux tu reessayer, maintenant que cela fonctionne en remettant un « identifier » avec underscores comme l’a fait @Clemalex au début stp ?
Et regarder si tu as des erreurs ?

Merci

En tout cas well done messieurs !!

1 « J'aime »

Hello @pepite alors j’ai essayé avec un nouvel identifier avec underscore en minuscule et ça fonctionne… WTF…

Et @Clemalex J’ai essayé ça mais le comportement attendu est bizarre. Je peux régler l’heure du premier chauffage et quand j’ai la notif pour régler le deuxième ça rerègle le premier et j’ai la notification qui revient sans fin sauf si je lui dis de ne pas régler l’heure… Comprends pas…

ios:
  push:
    categories:
      - name: Chauffauge_Salle_de_bain_Matin
        identifier: 'chauffage'
        actions:
          - identifier: 'NE_PAS_CHAUFFER_DEMAIN'
            title: 'Pas demain !'
            activationMode: 'background'
            authenticationRequired: false
            destructive: true
            behavior: 'default'
          - identifier: 'DEFINITION_DE_L_HEURE'
            title: 'Définir heure'
            activationMode: 'background'
            authenticationRequired: false
            destructive: false
            behavior: 'textInput'
            textInputButtonTitle: 'OK'
            textInputPlaceholder: '06:15'
 - name: Seche_Serviette_Matin
        identifier: 'seche_serviette'
        actions:
          - identifier: 'NE_PAS_CHAUFFER_DEMAIN'
            title: 'Pas demain !'
            activationMode: 'background'
            authenticationRequired: true
            destructive: true
            behavior: 'default'
          - identifier: 'DEFINITION_DE_L_HEURE'
            title: 'Définir heure'
            activationMode: 'background'
            authenticationRequired: false
            destructive: true
            behavior: 'textInput'
            textInputButtonTitle: 'OK'
            textInputPlaceholder: '06:15'

et pour les automations j’ai fait ça :

- id: '1610628830203'
  alias: 'Réponse notification : définition horaire'
  description: ''
  trigger:
  - platform: event
    event_type: ios.notification_action_fired
    event_data:
      actionName: DEFINITION_DE_L_HEURE
  condition: []
  action:
  - service: input_select.select_option
    data:
      option: '{{ trigger.event.data[''textInput''].split('':'')[0] }}'
    entity_id: input_select.wakehour_2
  - service: input_select.select_option
    data:
      option: '{{ trigger.event.data[''textInput''].split('':'')[1] }}'
    entity_id: input_select.wakeminutes_2
  - service: notify.mobile_app_nikos_iphone
    data:
      title: Seche Serviette
      message: On chauffe à quelle heure demain le sèche serviette ?
      data:
        push:
          category: seche_serviette
  mode: single
- id: '1610653219573'
  alias: 'Réponse notification : définition horaire sècche serviette'
  description: ''
  trigger:
  - platform: event
    event_type: ios.notification_action_fired
    event_data:
      actionName: SDB_SERVIETTE
  condition: []
  action:
  - service: input_select.select_option
    data:
      option: '{{ trigger.event.data[''textInput''].split('':'')[0] }}'
    entity_id: input_select.wakehour_1
  - service: input_select.select_option
    data:
      option: '{{ trigger.event.data[''textInput''].split('':'')[1] }}'
    entity_id: input_select.wakeminutes_1
  - service: notify.mobile_app_nikos_iphone
    data:
      message: Merci  et bonne soirée !
  mode: single


tu as mis le nom de la categorie et non l’identifer

vu la définition de tes categories qui ont toutes les deux le même non d’identifier, l’evenement se fait sur l’une ou l’autre.
Du coup, avec ton appel de la categorie seche_serviette, tu as crée une boucle infinie tant que tu appuie sur définir l’heure…

change les noms des identifier pour en mettre des uniques, c’est plus simple… sinon faut vérifier si l’évènement contient dans ses données le nom de la catégorie et conditionner les actions dessus avec un choose

@Clemalex : J’ai fait l’update dans mon automation mais ça marche pas… Ca fait la boucle encore…

Le code stp…


Désolé j’ai oublié de précisé que je l’ai mis à jour plus haut…

ios:
  push:
    categories:
      - name: Chauffauge_Salle_de_bain_Matin
        identifier: 'chauffage'
        actions:
          - identifier: 'NE_PAS_CHAUFFER_DEMAIN'
            title: 'Pas demain !'
            activationMode: 'background'
            authenticationRequired: false
            destructive: true
            behavior: 'default'
          - identifier: 'DEFINITION_DE_L_HEURE'
            title: 'Définir heure'
            activationMode: 'background'
            authenticationRequired: false
            destructive: false
            behavior: 'textInput'
            textInputButtonTitle: 'OK'
            textInputPlaceholder: '06:15'
 - name: Seche_Serviette_Matin
        identifier: 'seche_serviette'
        actions:
          - identifier: 'NE_PAS_CHAUFFER_DEMAIN'
            title: 'Pas demain !'
            activationMode: 'background'
            authenticationRequired: true
            destructive: true
            behavior: 'default'
          - identifier: 'DEFINITION_DE_L_HEURE'
            title: 'Définir heure'
            activationMode: 'background'
            authenticationRequired: false
            destructive: false
            behavior: 'textInput'
            textInputButtonTitle: 'OK'
            textInputPlaceholder: '06:00'

Automation :

- id: '1610628830203'
  alias: 'Réponse notification : définition horaire'
  description: ''
  trigger:
  - platform: event
    event_type: ios.notification_action_fired
    event_data:
      actionName: DEFINITION_DE_L_HEURE
  condition: []
  action:
  - service: input_select.select_option
    data:
      option: '{{ trigger.event.data[''textInput''].split('':'')[0] }}'
    entity_id: input_select.wakehour_2
  - service: input_select.select_option
    data:
      option: '{{ trigger.event.data[''textInput''].split('':'')[1] }}'
    entity_id: input_select.wakeminutes_2
  - service: notify.mobile_app_nikos_iphone
    data:
      title: Seche Serviette
      message: On chauffe à quelle heure demain le sèche serviette ?
      data:
        push:
          category: seche_serviette
  mode: single
- id: '1610653219573'
  alias: 'Réponse notification : définition horaire sècche serviette'
  description: ''
  trigger:
  - platform: event
    event_type: ios.notification_action_fired
    event_data:
      actionName: SDB_SERVIETTE
  condition: []
  action:
  - service: input_select.select_option
    data:
      option: '{{ trigger.event.data[''textInput''].split('':'')[0] }}'
    entity_id: input_select.wakehour_1
  - service: input_select.select_option
    data:
      option: '{{ trigger.event.data[''textInput''].split('':'')[1] }}'
    entity_id: input_select.wakeminutes_1
  - service: notify.mobile_app_nikos_iphone
    data:
      message: Merci  et bonne soirée !
  mode: single

Tu ne l’as pas fait ça si ? Je vois toujours les même non…

C’est cette modification que tu dois répercuter dans la définition des categorie