openhasp

Plugin Jeedom : openHASP

1. Description

Le plugin openHASP permet de connecter Jeedom à un écran sous openHASP.

Ce plugin nécessite que openHASP soit installé (non détaillé dans cette documentation) et configuré (voir ci-dessous)

2. Pré-requis

3. Installation plugin

Plugin dépendant installé automatiquement si non présent :

4. Désinstallation du plugin

Le plugin se désabonne de tous les sujets MQTT auxquels il est abonné.

5. Configuration

5.1 Plugin Jeedom MQTT Manager (mqtt2)

Le plugin Jeedom MQTT Manager (mqtt2) doit être installé et actif. Le plugin openHASP l'utilise directement. Il est nécessaire de configurer le broker MQTT dans le plugin Jeedom MQTT Manager (mqtt2).

5.2 Broker MQTT

Un broker MQTT est nécessaire : l'écran et Jeedom s'y connectent pour échanger des données MQTT. Vous pouvez utiliser le broker MQTT local disponible avec le plugin Jeedom MQTT Manager (mqtt2) ou autre (broker local docker ou broker distant)

Attention à la longeur du mot de passe

openHASP ne supporte pas un mot de passe trop long Celui de 64 caractères généré en installant le broker local n'est pas supporté

5.3 Ecran

MQTT doit être configuré dans l'écran : Rendez-vous à la page http://xx.xx.xx.xx/config/mqtt pour y configurer les champs utiles. Voir §5.2 Broker MQTT pour les champs 2, 3, 4 et 5.

  1. Hostname : Nom de l'écran utilisé pour s'identifier via MQTT
  2. Broker : Nom ou adresse IP du broker MQTT
    • Exemple avec le plugin Jeedom MQTT Manager (mqtt2) configuré pour utiliser le broker local : mettre le nom ou l'adresse IP de Jeedom
  3. Port : Port du broker MQTT
  4. Username : Nom d'utilisateur pour le broker MQTT
  5. Password : Mot de passse de l'utilisateur pour le broker MQTT
  6. Node Topic : Attention si vous voulez le modifier. Garder la syntaxe "XXXXX/%hostname%/%topic%" La valeur par défaut est "hasp/%hostname%/%topic%" : si vous avez un doute conservez cette valeur

6. Configuration du plugin

6.1 Dépendances

Permet de voir l'état d'installation des dépendances et de relancer leur installation. Seule dépendance de ce plugin : le plugin Jeedom MQTT Manager (mqtt2)

6.2 Configuration

6.3 Fonctionnalités

Voici la liste des cron utilisés et ce qu'ils font :

7. Page Gestion du plugin

7.1 Ajouter

Entrer le nom du nouvel équipement puis valider. La page de gestion du nouvel équipement s'ouvre, voir §8. Équipement

7.2 Configuration

Ouvre la page de configuration du plugin

7.3 Activer/désactiver l'inclusion automatique

L'inclusion automatique permet d'ajouter automatiquement tout nouvel écran découvert par MQTT. Cela correspond à la fonctionnalité "discovery" disponible sur les écrans openHASP avec une version $\geqslant$ v0.7. Cette fonctionnalité se déroule en 2 étapes :

  1. Plublication de la commande discovery sur un sujet racine MQTT
  2. Chaque écran qui communique sur ce sujet racine MQTT va envoyer une réponse pour s'identifier
    • Chaque écran répond en moins de 10s la première fois qu'il reçoit la requête discovery
    • Il attend environ 10min par défaut avant d'y répondre à nouveau

Activation de l'inclusion automatique

  1. Cliquer sur le bouton "Activer l'inclusion automatique"
  2. Choisir le sujet racine MQTT sur lequel publier la demande de découverte
  3. Valider
  4. Attendre

Un nouvel équipement est créé pour chaque nouvel écran : le sujet racine MQTT, le nom de l'écran (hostname) et l'adresse IP sont vérifiés.

Désactivation de l'inclusion automatique L'inclusion automatique s'arrête :

L'inclusion automatique créé un objet Cron qui est supprimé au plus tard 10 minutes après la désactivation de l'inclusion automatique (voir §6.3 Fonctionnalités)

7.4 Mes équipements

Cette zone permet d'afficher tous les équipements openHASP existants.

8. Équipement

8.1 Page Configuration Equipement

Paramèters généraux

Paramètres communs à tous les objets Jeedom :

Paramètre spécifique à un équipement openHASP :

Configuration de l'écran L'écran communique via MQTT avec le broker (configuration, commande et information) mais est également accessible en direct via HTTP (configuration uniquement).

Conseil Configurez l'écran avec son adresse IP pour profiter de toutes les fonctionnalitées

Informations

Section Information Description Configuration par adresse IP Configuration par MQTT
openHASP version Version de openHAPS dans l'écran oui :white_check_mark: non :x:
MQTT Addresse Broker Adresse IP du broker MQTT configuré dans l'écran oui :white_check_mark: non :x:
MQTT Sujet racine Sujet racine utilisé par l'écran oui :white_check_mark: oui :white_check_mark:
MQTT Nom d'hôte Nom de l'écran oui :white_check_mark: oui :white_check_mark:
WIFI SSID Nom du point d'accès WIFI oui :white_check_mark: non :x:
WIFI IP Adresse IP de l'écran sur le WIFI oui :white_check_mark: oui :white_check_mark:
Graphique Page JSONL Nom de la page utilisée par l'écran au démarrage oui :white_check_mark: non :x:

8.2 Page Commandes générales

Les commandes générales sont automatiquement créées à chaque enregistrement de l'équipement. Si une commande générale est supprimée, alors elle sera recréée. Vous pouvez également ajouter une commande personnalisée en cliquant sur le bouton "Ajouter une commande".

Liste des commandes générales

Commande Type Description Valeur possible /
Exemple valeur
Documentation openHASP
Rafraîchir Action Demander à l'écran une mise à jour pour toutes commandes info disponibles Command statusupdate
Vu pour la dernière fois Info Horodatage de la dernière fois qu'une information de l'écran a été reçue
IP Info Adresse IP de l'écran 192.168.1.1 Command statusupdate
Largeur écran Info Largeur de l'écran en pixel, unité px 300 px Command statusupdate
Hauteur écran Info Hauteur de l'écran en pixel, unité px 300 px Command statusupdate
Page courante info Numéro de la page affichée à l'écran 1 Command page
Page courante Commande Action Changer la page affichée à l'écran 1 Command page
Veille de l'écran info Etat de veille de l'écran
  • off : écran allumé
  • short : veille niveau 1, luminosité réduite
  • long : veille niveau 2, écran éteint
  • Command idle
    Veille de l'écran Commande Action Changer l'état de veille de l'écran
  • off : écran allumé
  • short : veille niveau 1, luminosité réduite
  • long : veille niveau 2, écran éteint
  • Command idle
    Etat de l'écran info Etat de l'écran
  • on : écran allumé
  • off : écran éteint
  • Command backlight
    Luminosité de l'écran Info Niveau de luminosité de l'écran 1 à 255 Command backlight

    8.3 Page Commandes spécifiques

    La page des commandes spécifiques sert à afficher les commandes créées automatiquement à partir des objets de l'écran. Cette fonction est disponible si l'écran a été configuré avec son adresse ip, voir §8.1 Page Configuration Equipement Vous pouvez également ajouter une commande personnalisée en cliquant sur le bouton "Ajouter une commande".

    Pour créer automatiquement les commandes à partir des objets de l'écran, cliquer sur le bouton "Importer les objets de l'écran"

    1. Le plugin openHASP va télécharger la page JSONL utilisée par l'écran au démarrage
    2. Des commandes info / actions vont être créées pour tous les objets supportés
      • Nom de la commande info au format : "Page X - TYPE_OBJET TEXT_OBJET" Exemple : "Page 1 - Checkbox Douche"
      • Nom de la commande info au format : "Page X - TYPE_OBJET TEXT_OBJET Commande" Exemple : "Page 1 - Checkbox Douche Commande"

    TYPE_OBJET : voir le tableau ci-dessous

    TEXT_OBJET : Utilisation de la propiété 'text' de l'objet Si la propriété 'text' n'est pas définie ou si elle est vide, alors la propriété 'id' sera utilisée à la place

    Liste des objets openHASP (version 0.7.0)

    Objet Propriété Supporté par le
    plugin openHASP*
    Documentation Commande info Commande action Valeur possible
    btn toggle = false oui :white_check_mark: Button Page x - Bouton TEXT - down
    up
    long
    hold
    release
    btn toggle = true oui :white_check_mark: Button Page x - Bouton Toggle TEXT Page x - Bouton Toggle TEXT Commande 0
    1
    switch oui :white_check_mark: Switch Page x - Bouton Checkbox TEXT Page x - Bouton Checkbox TEXT Commande 0
    1
    checkbox oui :white_check_mark: Checkbox Page x - Bouton Switch TEXT Page x - Bouton Switch TEXT Commande 0
    1
    label Label
    led oui :white_check_mark: LED Page x - Bouton LED TEXT Page x - Bouton LED TEXT Commande 0 à 255
    spinner non :x: Spinner
    obj non :x: Base Object
    line non :x: Line
    img non :x: Image
    cpicker oui :white_check_mark: Color picker Page x - Bouton Sélecteur de couleurs TEXT Page x - Bouton Sélecteur de couleurs TEXT Commande #RRGGBB
    roller oui :white_check_mark: Roller - Page x - Bouton Liste tournante ID Valeur
    - Page x - Bouton Liste tournante ID Texte
    Page x - Bouton Liste tournate ID Commande Liste avec les valeurs de la propriété "option" de l'objet
    dropdown oui :white_check_mark: Dropdown List - Page x - Bouton Liste déroulante ID Valeur
    - Page x - Bouton Liste déroulante ID Texte
    Page x - Bouton Liste déroulante ID Commande Liste avec les valeurs de la propriété "option" de l'objet
    btnmatrix non :x: Button Matrix
    msgbox non :x: Messagebox
    tabview non :x: Tabview
    tab non :x: Tab
    bar oui :white_check_mark: Progress Bar Page x - Bouton Barre de progression TEXT Page x - Bouton Barre de progression TEXT Commande 0 à 100
    slider oui :white_check_mark: Slider Page x - Bouton Curseur TEXT Page x - Bouton Curseur TEXT Commande 0 à 100
    arc oui :white_check_mark: Arc Page x - Bouton Arc TEXT Page x - Bouton Arc TEXT Commande 0 à 100
    linemeter oui :white_check_mark: Line Meter Page x - Bouton Line meter TEXT Page x - Bouton Line meter TEXT Commande 0 à 100
    gauge oui :white_check_mark: Gauge Page x - Bouton Jauge TEXT Page x - Bouton Jauge TEXT Commande 0 à 100
    qrcode oui :white_check_mark: Qrcode Page x - Qrcode ID Page x - Qrcode ID Commande Texte de 122 caractères maximum

    * non supporté = l'objet sera ignoré par le plugin openHASP lors de l'import des objets de l'écran et aucune commande ne lui sera créé automatiquement L'objet reste utilisable avec une commande ajoutée manuellement

    Page x : remplace x par le numéro de la page TEXT : remplace TEXT par la propriété "text" de l'objet, correspond souvent au texte affiché ID : remplace ID par la propriété "id" de l'objet

    9. Liens utiles