Étendre les possibilités d’eedomus grâce à Jeedom

Jeedom & eedomus
Box eedomus étendue avec une box Jeedom

Cet article a pour but de vous montrer comment étendre les capacités de votre domotique quand votre box eedomus n’est pas encore compatible avec certains matériels.

Donc notre cas ici, en la couplant avec un box Jeedom pour lui ajouter des possibilités Bluetooth, une compatibilité Milight, ou bien encore, pourvoir piloter un Harmony Hub de Logitech et bien d’autres !

(Cet article ne détaille pas comment mettre en place une box Jeedom, seulement comment exploiter une box déjà en fonction)

Recevoir des données de Jeedom

La solution consiste à utiliser un capteur virtuel coté eedomus pour contenir les données qui seront émises pas Jeedom via des appels de l’API eedomus.

Nous allons voir comment stocker des données d’un capteur Jeedom par exemple un Broadlink A1 E-Air, dans le but de remonter les différentes valeurs d’humidité, de température, de bruit….

Côté eedomus

On commence du côté eedomus par créer un nouveau périphérique d’état

eedomus générique

Création périphérique eedomus générique

 

On lui donne un nom et un usage donc là ça dépend de ce que vous aurez besoin, si vous ne trouvez pas votre bonheur utilisez Autre indicateur (Capteur)

Caractéristiques générique

Caractéristiques du capteur générique

 

Capteur usage

Choix d’un Usage pertinent

 

Ensuite en type de données il faut choisir décimal si c’est des chiffres, ou Texte si c’est autre chose.

Choix du type de données contenues dans le capteur virtuel

 

Si vous avez choisi Nombre décimal, on doit indiquer une unité, donc pour le cas actuel °C pour la température. Ensuite, dans la partie paramètres experts cliquez sur la petite clé afin d’accéder à l’API et surtout à l’adresse du conteneur que vous venez de créer.

URL générée pour un appel API vers le capteur


Dans destination je vous conseille d’utiliser le mode local, car si vos deux box sont sur un même réseau local, vous aurez moins de latence en ne passant pas par le cloud.
  • Destination : Local
  • Direction : SET
  • Action : periph.value

Avec cette configuration vous obtenez en dessous une adresse du type

http://[IP.EEDOMUS]/api/set?api_user=.........&api_secret=.........&action=periph.value&periph_id=939201&value=

Il faut garder dans un coin cette adresse, par un copier/coller, car elle sera à utilisée côté Jeedom. Il faut également la compléter avec un value=#value# (une syntaxe de Jeedom) ce qui va donner

http://[IP.EEDOMUS]/api/set?api_user=.........&api_secret=.........&action=periph.value&periph_id=939201&value=#value#

La suite côté Jeedom

Cliquez sur le périphérique dont vous avez besoin de récupérer les infos

Composant jeedom

Un composant côté Jeedom

 

Cliquez sur l’onglet commande

Détail composant

Détail d’un composant côté Jeedom

 

Cliquez sur la petite roue crantée, ici la température du broadlink A1 E-Air

Canaux

Les canaux d’un périphérique

 

Et au fond de la page, dans Autres, il ne reste plus qu’à coller l’adresse générée et sauvegardée à l’étape précédente côté eedomus.

URL de push

Renseigner une URL de push à destination de la box eedomus

 

Vous n’avez plus qu’à aller voir sur votre interface eedomus et constater la remontée d’informations.

 

Constat final : mise à jour d’information côté eedomus, remontée par l’appel push de Jeedom

 


Piloter un périphérique Jeedom

La solution consiste à utiliser un actionneur HTTP coté eedomus pour envoyer des demandes d’action vers la box Jeedom via des appels de l’API Jeedom.

Dans Jeedom

On commence du coté Jeedom à récupérer les adresses des futurs actionneurs dans le cas présenté : l’allumage et l’extinction d’une lampe Milight.

Ensuite, on rentre dans le périphérique concerné sur Jeedom, onglet commande, on recherche les commandes que l’on a besoin d’appeler, ici le On et le Off.

Enfin, on clique ensuite sur les roues crantées.

Commandes périphériques

Les commandes d’un périphérique Jeedom

 

Il suffit maintenant de récupérer et garder dans un coin ces URL, qui seront à utiliser côté eedomus : clic droit sur URL puis sur Copier l’URL.

URL direct

Récupération de l’URL directe

La suite côté eedomus

Il faut créer ici un nouveau périphérique HTTP – actionneur.

Actionneur HTTP

Composant eedomus de type Actionneur HTTP

 

  • On choisit ensuite un Nom et un Usage
  • On peut saisir dans [VAR1] l’adresse IP de la box Jeedom
  • On peut saisir dans [VAR2] l’APIkey de votre Jeedom 
  • Puis on bascule sur l’onglet Valeurs

 

Ajouter et renseigner les valeurs brutes et leurs descriptions, par convention 0 pour Off et 100 pour On.

Il suffit ensuite de venir coller dans la colonne URL les URL précédemment récupérées coté Jeedom.

 

La bonne pratique consiste à séparer toutes les URL récupérées de Jeedom en 2 morceaux brisés au niveau du ?

  • Dans la colonne URL, on va alors mettre le début de l’URL : tout ce qu’il y a avant le ?
  • Et dans la colonne paramètre, la fin de l’URL : le ? et tout ce qui suit

Exemple :

  • URL : http://[VAR1]/core/api/jeeApi.php
  • Paramètres : ?apikey=VOTRE_API_KEY&type=cmd&id=...

Il est probable qu’il faille retirer le S de https si vous utiliser les box dans un même réseau local suivant votre configuration.

N’oubliez pas de remplacer l’IP dans l’URL par un [VAR1] et l’apikey jeedom en [VAR2].

 

Conclusion

Il ne vous reste plus qu’à renouveler toutes ces opérations pour chacun des périphériques côté jeedom que vous voulez exploiter avec votre eedomus.

Vous pouvez découvrir les possibilités de Jeedom qui seraient alors transmissible à votre box eedomus !

12 réponses

  1. florian dit :

    Enorme merci ! Ca faisait plusieurs mois que j’essayais sans succès, je n’avais pas réussi à trouver de tuto clair à ce sujet. Désormais tout est intégré sous Eedomus ! ça marche super bien, temps de réponse excellent !

  2. Appt Le Hameau dit :

    Bonsoir Technoman et merci pour ce tuto qui fonctionne parfaitement ( mise en place de présence avec Nuts et remontée de valeur d’une balance Xiaomi )
    Je voudrai aller plus loin maintenant avec la balance en déclenchant une règle sous Eedomus à la pesée le matin dans la salle de bains pour déclencher allumage/lecture Sonos en fonction de la personne. Par quoi dois-je commencer ? Que dois-je mettre en place ?
    Merci d’avance.
    Serge

    • Technoman dit :

      Bonjour,
      Pour votre cas il suffira simplement de créer une règle qui dis que « Balance poids – change de valeur » alors je fais mes actions donc pour vous « allumage/lecture Sonos » et je peux rajouter d’autres actions par exemple « j’allume les lampes du salon ».

  3. Jean dit :

    Bonjour
    Votre tuto fonctionne très bien lorsque les 2 box sont sur le même réseau local. Est-il possible d’envisager les mêmes échanges bi-directionnels via le WAN. Pouvez-vous, svp, nous donner quelques exemples en complément de ce tuto.
    Merci d’avance
    Jean

    • Technoman dit :

      Bonjour,
      Merci pour votre commentaire. Il suffit simplement d’utiliser l’URL de jeedom en accès externe. Normalement vous avez l’ip local et l’ip externe fourni par Jeedom.

  4. Jean dit :

    Bonjour,
    J’ai progressé avec votre tuto en ayant à distance un jeedom sur rpi3 et une eedomus+. Je reçois bien sur la eedomus la T° d’un détecteur connecté au jeedom distant. Cela fonctionne bien même s’il a fallu quelques heures pour récupérer l’info mais maintenant c’est régulier. En revanche j’ai un petit souci pour actionner un plug connecté à jeedom depuis l’eedomus. J’ai bien récupéré les URL des commande ON et OFF du plug sur le jeedom et créé un actionneur http sur l’eedomus avec l’url externe de la jeedom http://IP_JEEDOM_DISTANT/core/api/jeeApi.php?apikey=xxxxxxxxxxx&type=cmd&id=ID_COMMANDE_ON (ou OFF). Exactement (apriori) comme dans le tuto. Lorsque je teste les 2 URLs depuis la fenêtre des valeurs sur eedomus cela fonctionne, j’allume et j’éteins bien la lampe distante de jeedon. En revanche lorsque je clique sur On ou OFF depuis l’actionneur cela ne fonctionne pas. Je ne comprends pas pourquoi. Une piste ?
    Merci

  5. Jean dit :

    Bonjour,
    Suite de mon précédent message. Après plusieurs essais, j’ai constaté que si je mets l’URL complète (http://VAR1?apikey=VAR2&type=cmd&id=435) dans le champ URL l’actionneur HTTP fonctionne alors que si je le scinde entre les champs URL et Paramètres comme dans votre tuto cela ne fonctionne pas. Je n’ai pas d’explication

  6. Jean dit :

    Bonjour,
    Depuis mes 2 derniers messages, j’ai ré-installé Raspian (dernière version) et Jeedom) sur un ssd imap afin d’éviter les soucis liés à la micro SD. Tout fonctionne bien et j’ai retrouvé ma config Jeedom telle que je l’avais sur la micro SD. SAUF que maintenant je n’arrive plus du tout à récupérer les infos de mes capteurs du RPI 3 sur ma Eedomus. Pourtant lorsque je lance manuellement la commande http://api.eedomus.com/set?api_user=xxxx&api_secret=yyyyyyyy&action=periph.value&periph_id=zzzzzz&value=#valeur# (remplacé par une valeur quelconque) depuis mon navigateur la valeur est bien mise à jour sur mon capteur Eedomus. Tout se passe comme si le Push placé dans la Configuration commande +Autres ne s’exécutait jamais. J’ai le même problème sur 3 capteurs de T° et 2 capteurs d’ouverture.
    Y aurait-il un raison particulière pour que le Push ne s’exécute pas ?
    Merci

  7. Salut ! Ne voulant pas envoyer mes données Eedomus sur le cloud, est il possible de les envoyer sur un Jeedom local histoire d’avoir une retention des datas?
    Si oui comment?
    Merci à toi !

    • Technoman dit :

      Le problème c’est que tu ne peux pas être dépendant du Cloud avec eedomus, tes données remontent obligatoirement. Pourquoi ne pas utiliser directement Jeedom pour gérer ta domotique en local uniquement?

  8. La latence voilà ma crainte. J’avais testé il y a 4 ans (avant de passer sous Eedomus) avec une clé usb Zwave. C’était horriblement lent (bon j’etais aussi sur un Raspberry).
    Là je viens de remonter un Jeedom mais sur un container Proxmox (histoire que ca percute derriere) et j’ai une clé USB Z-Stick Gen5. Pas encore testé par contre 🙂

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.