Notification personnalisée IOS Compagnon

Je viens de mettre à jour mon post plus haut.

Regarde et tiens nous au courant :+1:

pour les choix il me semble que c’est la partie que j’ai lu sur le forum…

il faut dire à l’application Compagnon de se synchroniser pour récupérer les catégories…
source

Je te remercie ! Je vais tenter ça ! Et si j’y arrive, je te ferai la conversion en nod-red :yum: !

Hello @Clemalex

Alors j’ai testé ce que tu m’as proposé mais j’ai une erreur quand je check la config (de syntaxe probablement) mais je ne vois pas où…

Error loading /config/configuration.yaml: mapping values are not allowed here
  in "/config/configuration.yaml", line 96, column 17

La ligne 96 est : :

          option: "{{ trigger.event.data["textInput"].split(':')[0] }}"

Concernant ceci :

    action:
        <logique pour désactiver le booléen>

Je dois mettre quoi ?

Merci d’avance pour ton aide !

Pour l’instant rien… :innocent:

Tu mets une notification persistente (fait une recherche ici sur le mot clé persistent_notification).

Si c’est moi qui suis allé trop vite. Le problème est dans la délimitation.

Remplace :

option: "{{ trigger.event.data["textInput"].split(':')[0] }}"

Par

option: "{{ trigger.event.data['textInput'].split(':')[0] }}"

Un message a été scindé en un nouveau sujet : Prochaine alarme depuis l’application

Hello,

Toutes tes automations sont dans le configuration.yaml ou tu les as mises dans automation.yaml ?

Ça dépend de ta configuration. Dans ton fichier configuration.yaml tu as quoi en face de la ligne automation: ?

Le !include automations.yaml

Donc tu les mets dans ce fichier :+1: automations.yaml

Mais dans un premier temps simplifie ou vérifie seulement le déclenchement des automatisations. Car ton code n’est peut être pas en face du code que j’ai mis (et que je n’ai pas testé !)

Le problème c’est que mon configuration.yaml est valide d’après HA mais je me prends une erreur

Je pense qu’il y a un problème à la base dans mes fichiers .yaml mais je ne sais pas lequel…
En plus je suis souvent parti dans l’optique de faire mes automatisations via node red…

Qu’est-ce que je peux t’envoyer pour partager mes config ?

Déjà, voilà mon configuration.yaml :



# Configure a default setup of Home Assistant (frontend, api, etc)
# Example configuration.yaml entry
default_config:

# Text to speech sensor:
tts:
  - platform: google_translate

group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
sensor: !include sensor.yaml

discovery:

mqtt:
  discovery: true
  discovery_prefix: homeassistant
mqtt_statestream:
  base_topic: homeassistant
  publish_attributes: true
  publish_timestamps: true
mqtt_eventstream:
  publish_topic: localhost

ffmpeg:

# Example configuration.yaml entry
alarm_control_panel:
  - platform: manual
    name: Home Alarm
#    code: '3296'
    arming_time: 0
    delay_time: 0
    trigger_time: 0
    disarmed:
      trigger_time: 0
    armed_home:
      arming_time: 0
      delay_time: 0

owntracks:
  max_gps_accuracy: 200
  waypoints: true
  mqtt_topic: "owntracks/#"

ios:
  push:
    categories:
      - name: Chauffauge_Salle_de_bain_Matin
        identifier: 'chauffage_salle_de_bain_matin'
        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: 'Heure :'
            textInputPlaceholder: '06:15'

Y’a-t-il qqch qui ne va pas ?

Merkiii

Non le problème indiquer est dans les actions définie.

C’est pour ça que pour commencer il faut mettre un truc basique car les actions c’est secondaire.

Par exemple, remplace les actions par :

   - service: persistent_notification.create
      data:
        message: "Toast"
        title: "Titre Toast"
        notification_id: "{{ (range(1, 9999)|random) }}"

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 »