Guide: Intégrer son alarme Ajax à Home Assistant, c’est possible !

S'il n'est pas très conseillé d'utiliser un système domotique pour en faire un système d'alarme, il reste toutefois très pratique de pouvoir intégrer certaines informations de son système d'alarme indépendant, dans son système domotique. En effet, en ayant connaissance du mode actuel de l'alarme, le système domotique peut par exemple fermer les volets, désactiver certains scénarios, ou encore lancer le robot aspirateur par exemple. De plus, certains capteurs peuvent être réutilisés, notamment les détecteurs d'ouverture ou de mouvement, ce qui évite de devoir avoir des doublons en termes de capteurs (un capteur d'ouverture pour l'alarme, un autre pour le système domotique…). On peut en effet couper le chauffage si une fenêtre est ouverte, allumer une lampe quand quelqu'un entre dans la pièce, etc. Utilisant l'excellente alarme Ajax depuis pas mal de temps, j'ai donc cherché à l'intégrer dans Home Assistant. Chose pas si facile, mais ça fonctionne !

A lire également:
Test Alarme Ajax Hub 2: sécurité, domotique, vidéo, et compatibilité Jeedom !

Pour intégrer l'alarme Ajax dans Home Assistant, il existe actuellement deux méthodes: une facile, mais très loin d'être complète; et une méthode un peu plus laborieuse, mais beaucoup plus satisfaisante ! Nous allons découvrir les deux.

Méthode facile: plugin Ajax Home Assistant

Lorsqu'un plugin existe sous Home Assistant, cela facilite toujours beaucoup la vie. C'est le cas justement de l'alarme Ajax, qui utilise le protocole SIA de la télésurveillance. Cette méthode va en fait déclarer Home Assistant comme un centre de télésurveillance, ce qui va permettre à celui ci de communiquer avec l'alarme.

L'installation se fait en deux étapes. Tout d'abord sur l'application Ajax elle même. Il faudra se rendre dans les réglages de la centrale via la roue crantée en haut à droite, puis sur “Entreprises de sécurité” tout en bas dans le menu, puis “Centre de Télésurveillance”.

On sélectionne alors le protocole “SIA DC-09”. On coche “une adresse IP pour tous les réseaux”, et on renseigne l'adresse IP de son Home Assistant. En port il faut en revanche utiliser un port qui n'est pas utilisé par Home Assistant, comme par exemple 2410 (au hasard :p).

Dans intervalle ping, on indique 1min, et dans numéro du site “AAA” par exemple. C'est tout. On revient en arrière, les paramètres sont enregistrés.

Côté Home Assistant, il faut maintenant installer le plugin. On se rend dans la section Appareils, ajouter une intégration, et on recherche “SIA Alarm Systems”. Ce n'est pas un plugin dédié à Ajax, mais au protocole SIA, utilisé par de nombreux alarmes en télésurveillance, dont Ajax.

Dans la boite de dialogue de configuration, il suffit de saisir le port indiqué dans l'application Ajax (ici 2410), l'identifiant de compte AAA, et le nombre de zones existantes dans notre configuration Ajax (ici 2 puisque j'ai par exemple le rez de chaussée et l'étage).

On valide: la configuration est terminée !

On obtient alors une série de nouveaux appareils créés dans Home Assistant, selon le nombre de zones configurées:

Comme on le voit on récupère l'état de l'alarme, l'état de l'alerte inondation, et l'état de l'alerte incendie.

Si on sélectionne l'état de l'alarme, on peut voir ses changements d'états:

Ces états peuvent alors être utilisés pour divers scénarios, comme ceux évoqués en introduction: fermeture automatique des volets quand on active l'alarme, mise en route du robot aspirateur quand on passe en armement total, etc.

Malheureusement comme on le voit les données sont très succinctes, on n'obtient pas l'état des différents capteurs du système d'alarme, et il n'est pas non plus possible de piloter l'alarme depuis Home Assistant. L'intérêt reste donc assez limité sur cette première possibilité.

Méthode avancée: MQTT via Jeedom

Si côté Home Assistant les infos remontées sur l'alarme Ajax sont très succinctes, il n'en va pas de même du côté du plugin Jeedom, qui lui est très complet !

Jugez par vous même:

L'astuce va donc être d'utiliser le plugin Ajax sur Jeedom, puis d'envoyer toutes les informations à Home Assistant via MQTT. Ok, cela peut paraitre un peu usine à gaz, mais ce n'est pas si compliqué que cela au final !

Pour commencer il vous faudra bien sûr une instance de Jeedom qui tourne, et qui soit accessible de l'extérieur. Pas besoin d'acheter une box domotique Jeedom pour cela, rassurez vous. Vous pouvez très bien l'installer sous Proxmox comme nous l'avons déjà fait avec Home Assistant, ou encore dans une machine virtuelle sur un Nas Synology par exemple (levez la main s'il vous faut aussi un guide pour installer Jeedom sous Proxmox ?). Et un reverse proxy permettra d'y accéder depuis l'extérieur.

A lire également:
Tuto: installer Jeedom sur Synology avec Virtual Machine Manager sous DSM 7

Installation du plugin Ajax

Il faudra alors installer le plugin Ajax (payant, à 8€). On l'active, puis on clique sur le bouton “Se connecter”. Il faudra alors renseigner son nom d'utilisateur et son mot de passe de compte Ajax (vous pouvez créer un compte dédié à cela dans l'application Ajax).

Dans l'application Ajax, il faudra d'ailleurs déclarer l'utilisateur [email protected] dans les paramètres du Hub (l’invitation restera toujours en attente, c’est normal).

A partir de là on peut synchroniser les équipements: Jeedom va créer automatiquement tous les équipements présents sur notre système Ajax.

Installation du plugin MQTT

On installe maintenant le plugin MQTT Manager via le store Jeedom. Cette fois il est gratuit ;-)

Une fois installé, on l'active, et on le configure de cette façon:

Le mode doit bien être réglé sur Broker distant, puisqu'on va utiliser le broker MQTT de Home Assistant (qu'il faudra avoir configuré au préalable si vous ne l'avez pas déjà fait). Ainsi, juste en dessous, on indique le nom d'utilisateur configuré sur notre broker Home Assistant, ainsi que son mot de passe, les deux séparés par “:”. Enfin on coche bien “Transmettre tous les évènements”. Grâce à cela, tout ce qui se passe sur Jeedom va être communiqué sur le broker MQTT. Dont tous les évènements de notre alarme Ajax !

C'est fini pour la configuration Jeedom ! Vous pouvez maintenant si vous le souhaitez utiliser un client comme MQTT Explorer par exemple si vous souhaitez vérifier que les évènements en question transitent bien sur le broker MQTT. Mais aucune obligation.

Il ne nous reste plus qu'à déclarer nos périphériques du côté de Home Assistant.

Création des périphériques sur Home Assistant

C'est la partie la plus fastidieuse, car il va falloir créer nos périphériques un à un dans Home Assistant. Heureusement ce ne sera à faire qu'une seule fois, et je vais vous fournir le fichier de configuration ;-)

Pour ma part, histoire de ne pas surcharger mon fichier configuration.yaml, je l'ai découpé en plusieurs parties. Les capteurs MQTT sont donc dans un fichier mqtt.yaml. Si vous ne l'avez pas déjà chez vous, il faudra donc ajouter cette ligne dans votre fichier configuration.yaml:

Puis créer le fichier mqtt.yaml en question.

Pour commencer, je crée 3 boutons qui correspondent aux modes Armé, Nuit, et Désarmé de l'alarme Ajax:

Ici il n'y a que les chiffres /58, /59 et /60 à remplacer par les vôtres. Pour trouver les numéros correspondants chez vous, il faudra aller sur Jeedom, Plugins / Sécurité / Ajax System, et vous rendre sur la centrale créée dans Jeedom:

Là il faut aller sur l'onglet commandes, et chercher les commandes d'armement / désarmement:

Relevez les numéros devant chaque commande, et renseignez les dans le fichier mqtt.yaml. Le principe sera le même pour toutes les commandes suivantes.

On crée ensuite des “binary sensors” pour les détecteurs d'ouverture et d'inondation, puisqu'ils n'ont qu'un état ouvert ou fermé:

Là il faudra également remplacer les numéros /239, /144 et /180 par les vôtres. Dans Jeedom, en allant sur l'onglet commandes du détecteur d'ouverture qui nous intéresse, il suffit de trouver la commande “Ouverture” (ou “Fuite détectée” pour les détecteurs d'inondation) et de relever le numéro en face:

On fait de même avec tous les capteurs d'ouvertures qu'on souhaite ajouter dans Home Assistant, en dupliquant le schéma. N'oubliez pas de modifier le “name” qui sera le nom affiché dans Home Assistant, et le “unique_id” qui comme son nom l'indique doit être unique. Vous pouvez également modifier le “device_class” pour afficher la bonne icône: window, door, etc. en fonction du type d'ouverture surveillée. Vous pouvez retrouver une liste des possibilités ici.

Enfin, on va créer des “sensors”, qui eux peuvent prendre une valeur, comme une température, notamment:

Le premier capteur déclaré ici va permettre de récupérer l'état de l'alarme. Son numéro sera retrouvé sur Jeedom, dans les commandes de la centrale, ligne “Etat”.

Les capteurs suivants permettent de récupérer la température suivie par les détecteurs d'ouverture. Là encore on récupérera le numéro dans Jeedom, dans les commandes du détecteur d'ouverture en question, ligne “Température” tout simplement.

On déclare ainsi tous les capteurs qu'on souhaite récupérer dans Home Assistant.

Faites bien attention à l'indentation du fichier yaml. Vous pouvez télécharger le mien ci dessous pour avoir un fichier correct en modèle:

Une fois le fichier terminé, enregistrez le, puis validez la configuration via le menu “Outils de Développement”, “Vérifier la configuration”. Si tout est ok (message vert) vous pouvez redémarrer Home Assistant pour qu'il prenne en compte ces nouveaux périphériques.

En allant dans Appareils, MQTT, et en recherchant “Ajax”, vous devriez avoir la liste des périphériques créés:

Attention, les états ne se mettent à jour que lorsqu'ils sont modifiés. Il faudra donc ouvrir ou fermer une porte ou une fenêtre pour que son statut remonte (la remontée dans Home Assistant est quasi instantanée dès que le statut change). Il faudra en revanche patienter pour avoir une remontée de la température, celle ci n'étant envoyée également que lors d'une modification.

Les détecteurs incendie ne semblent en revanche pas remonter dans Jeedom, donc pas non plus dans Home Assistant, bien sûr. Mais on récupère tout de même la plupart des informations, beaucoup plus en tout cas que le plugin SIA de Home Assistant vu plus haut.

On peut ensuite les mettre en forme comme on le souhaite, comme par exemple ici:

Et bien sûr il est tout à fait possible d'utiliser les états pour déclencher des scénarios, voir même activer / désactiver l'alarme pour ceux qui le souhaitent. Couper le chauffage si une fenêtre est ouverte, envoyer une alerte si une porte est restée ouverte trop longtemps, démarrer le robot aspirateur quand l'alarme est en mode total (et donc la maison vide), etc. Tout devient possible !

Conclusion

Alors c'est loin d'être aussi simple que certaines intégrations où en deux clics tout est récupéré au sein de Home Assistant. Les développeurs ont pourtant essayé de négocier avec Ajax, qui se refuse à toute ouverture pour préserver la sécurité, ce qui se comprend. Jeedom a pourtant réussi à avoir un accès et propose du coup un plugin très complet :( Tant pis, à défaut d'autre chose, pour le moment une instance de Jeedom avec MQTT fait le boulot pour nous permettre de récupérer les informations de l'alarme Ajax dans Home Assistant. Certains utilisateurs ont opté pour tout configurer du côté de Jeedom: en configurant correctement les commandes MQTT côté Jeedom, il est possible en effet de les créer automatiquement dans Home Assistant. Il faut du coup faire ce genre de paramétrage:

A vrai dire le boulot revient au même: dans les deux cas il faut faire toutes les déclarations de capteurs, si ce n'est dans Home Assistant, ce sera dans Jeedom. Chacun fait donc comme il préfère, il n'y a pas de bonne ou de mauvaise manière. Pour ma part je voulais avoir le moins de choses possibles à gérer dans Jeedom, et centraliser tous les paramétrages côté Home Assistant. L'important est que ça fonctionne, que ce soit rapide, et fiable.

On croise toujours les doigts pour qu'une intégration officielle voit le jour, mais pour le moment il faudra se contenter de cela, et il est tout à fait possible de cumuler cette intégration MQTT et SIA si on le souhaite.

Pour information, cet article peut contenir des liens affiliés, sans aucun impact sur ce que vous gagnez vous même ou le prix que vous pouvez payer pour le produit. Passer par ce lien vous permet de me remercier pour le travail effectué sur le blog chaque jour, et d'aider à couvrir les dépenses du site (hébergement, frais de port pour les concours, etc.). Ca ne vous coute rien, mais ca m'aide beaucoup ! Merci donc à ceux qui joueront le jeu !

Inscrivez vous à notre newsletter !

Ne ratez plus aucun article, test de produit ou guide, grâce à un mail dans votre boite chaque vendredi !

4 Commentaires
  1. Un plugin HA est en train d’être développé pour avoir les mêmes fonctionnalité sans passer par Jeedom.

  2. Bonjour pour vous remercier

  3. Merci
    J’ai teste ton tuto ca marche pas mal
    Par contre j’ai bien les event qui remonte dans HA mais les commandes que j’envoie ne fonctionne pas.
    On dirait que le chemin jeedom–>mqqt–>HA marche nickel
    mais HA–>mqqt oui mqqt–>jeedom NON

Laisser un commentaire

Maison et Domotique
Logo
Register New Account
Enregistrez vous, et stockez vos articles préférés sur votre compte pour les retrouver n'importe où, n'importe quand !
Compare items
  • Casques Audio (0)
  • Sondes de Piscine Connectées (0)
  • Smartphones (0)
Compare