Acces public à une automation HA

Example:

Automatisation avec une action qui notifie HA sur mon mobile:

alias: Test Webhoook
description: ""
trigger:
  - platform: webhook
    webhook_id: test_webhook
condition: []
action:
  - service: notify.mobile_app_sm_a125f
    data:
      message: Test Webhook réussi
mode: single

Fichier test_webhook.html, à placer dans le répertoire www sous config:

<!doctype html>
<!-- Fichier /config/www/test_webhook.html
     à ouvrir avec
     http(s)://VOTREINSTANCEETPORT/local/test_webhook.html -->
<html>
    <head>
        <title>Test Webhook</title>
    </head>
    <body>
        <button onclick="fetch('/api/webhook/test_webhook',{method:'post'});">
            Actionner l'automatisation Test Webhook
        </button><br />
        <button onclick="var w=location.href.substring(location.href.lastIndexOf('/') + 1);w=w.substring(0,w.lastIndexOf('.'));fetch('/api/webhook/' + w, {method:'post'});">
            Actionner l'automatisation Test Webhook generique.
        </button>
    </body>
</html>

Ouvrir la page comme indiqué: http(s)://VOTREINSTANCEETPORT/local/test_webhook.html

Cliquer sur le bouton.

Il est possible de passer des paramètres et donc d’y inclure par exemple un mdp.

Ou bien, changer l’id du webhook à chaque fois, et utiliser le nom du fichier pour le webhook. (Le 2ième bouton de l’exemple).

Exemple: fichier ‹ location234234ABC.html ›, webhook id: « location234234ABC » permettant de faire un lien relativement complexe qui sert de mot de passe le temps d’une location.
Il suffit alors de changer le nom du fichier et l’id du webhook pour changer de mot de passe.
On peut éviter de changer le nom du fichier en y ajoutant un paramètre get et de récupérer ce paramètre pour le nom du webhook.