Aller au contenu

Recommended Posts

Intercom Manager

 

1138330054_IntercomManager.thumb.png.d4ac10e7295d1ec5cf96c855b475c91c.png

 

 

Préambule :

 

N'ayant rien trouvé sur le site sur l'intégration de l'Intercom Fibaro, j'ai pris l'initiative de créer un Intercom Manager dont l'objectif consiste à :

  • Regrouper dans une seule scène la détection de l'ensemble des événements et actions pouvant ayant pour origine :
    • l'intercom lui-même
    • l'application Intercom Fibaro pour smartphone (iOS et Androïd)
    • le plugin Intercom disponible pour nos Box Home Center
    • le site internet dédié à l'Intercom
    • l'application développée par @Krikroff pour l'Intercom 
  • Déclencher des scenarios en fonction des événements et actions
  • Disposer d'un Virtual Device pour visualiser les informations liées aux événements et actions

 

Le Projet :

 

Création d'une scène dédiée :

  • à la détection de l'ensemble des événements et actions
  • à l'exécution des scénarios conditionnés selon les événements et actions
  • à la mise à jour d'un Virtual Device pour visualiser les informations liées aux événements et actions 
  • à tracer dans sa log les informations collectées et traitées

Création d'un Virtual Device pour :

  • visualiser les informations liées aux événements et actions
  • éventuellement servir de source de données à GEA afin exécuter des scénarios complémentaires en les combinant aux autres données et conditions disponibles sous GEA.

 

Pré-requis :

  1. disposer d'un Intercom Fibaro ;)
  2. installer le plugin Intercom Fibaro

 

Installation :

  1. Télécharger et installer le Virtual Device ci-dessous (dans sa dernière version)
  2. Télécharger et installer la Scène ci-dessous (dans sa dernière version)
  3. Télécharger l'icône ci-dessous ou fabriquer la votre

 

Configuration :

 

De la scène :

1) Modifier les variables utilisateurs ci-dessous :

2) Associer au VD l'icône ci-dessous ou la votre

3) Programmer la scène avec un Run Scene = Automatic avec un Max. running instances = 10

4) Modifier éventuellement les variables contenant les Smileys & textes qui sont remontés dans les labels du Virtual Device

-- 464 is Device ID of the Intercom Plugin
local Intercom_Device_ID = 464
-- 468 is the number of the Intercom Manager Virtual Device
local VD_ID = 468
-- List of users (email and name)
local UsersList = { {email= "xxxx.yyyy@zzzz.com", name = "Xxxx"},
                    {email= "aaaa.bbbb@cccc.com", name = "Aaaa"}
                  }

-- Number of seconds of the recording
local NbRecordSec = 30
-- Debug mode
local debug = false

Du Virtual Device :

1) Personnaliser éventuellement les labels (Smileys & désignation)

2) Associer au VD l'icône ci-dessous ou la votre

 

Programmer des scénarios dans la Scène :

1) Dans les parties réservées à cet effet :

--[[
-- insert your code to execute
--]]

 

Programmer des scénarios dans GEA (optionnel) :

1) En utilisant les labels du VD comme déclencheur et/ou en les intégrant dans vos options GEA, comme par exemple :

 

  • Détection de mouvement par l'intercom. Exemple lancer l'enregistrement de toutes les caméras y compris l'intercom sur Surveillance Station
  • Détection de l'appui sur le bouton de sonnerie. Exemple faire sonner ma Sonos au cas ou mon téléphone est en mode avion ou mute.
  • Déclenchement d'une action suite à la saisie d'un code valide. Exemple faire clignoter mes lampes extérieur Philipps Hue en vert 
  • Déclenchement d'une action suite à la saisie d'un code en erreur. Exemple faire clignoter mes lampes extérieur Philipps Hue en rouge et lancer l'enregistrement de toutes les caméras 
  • Détection d'une activation par bluetooth. Pour identifier l'arrivée ou le départ d'un membre de la famille.

 

2) Vloici quelques exemples que j'ai intégrés dans mon GEA :

-- Déclaration des changements de valeurs des labals du VD Intercom Manager dans la partie %% properties
468 ui.lblLastPinError.value
468 ui.lblOpenRelay1.value
468 ui.lblMove.value

-- Contrôle de la saisie des codes PIN sur l'Intercom -------------------------------------------------------
-- Eclairage de la terrasse pendant 15 secondes en rouge clignotant si erreur de saisie du code PIN
GEA.add({{"!Label", id["VD_INTERCOM_MANAGER"],  "lblLastPinError", ""}, {"Trigger", "lblLastPinError"}}, -1, "", {{"Label", id["VD_HUE_MANAGER_TERRASSE"], "lblTimer", "00:15"}, {"VirtualDevice", id["VD_HUE_MANAGER_TERRASSE"], 25}}, "Erreur saisie code Intercom, activation lumières terrasse en rouge clignotant")

-- Eclairage de la terrasse pendant 15 secondes en vert clignotant si bonne de saisie du code PIN
GEA.add({{"Label", id["VD_INTERCOM_MANAGER"],  "lblOpenRelay1", "#r#Ouvert"}, {"Trigger", "lblOpenRelay1"}}, -1, "", {{"Label", id["VD_HUE_MANAGER_TERRASSE"], "lblTimer", "00:15"}, {"VirtualDevice", id["VD_HUE_MANAGER_TERRASSE"], 24}}, "Bonne saisie code Intercom, activation lumières terrasse en vert clignotant")

-- Activation sur mon Synology (Serveillance Station) de l'enregistrement du flux vidéo de l'intercom  ----------------------------------------
--  si détection devant la porte le portail
GEA.add({{"Label", id["VD_INTERCOM_MANAGER"], "lblMove", "#r#Alerte"}
        ,{"Label", id["VD_CAM_GLOBAL"], "lblPresence", "#r#Absence"}
        ,{"Or", {"Label", id["VD_CAM_EXT_PORTAIL"], "lblCamState", "#r#Marche"}, {"Label", id["VD_CAM_EXT_PORTAIL"], "lblCamState", "#r#Partiel"} } 
        ,{"Or", {"Label", id["VD_CAM_EXT_PORTAIL"], "lblCamRecord", "#r#Arrêt"}, {"Label", id["VD_CAM_EXT_PORTAIL"], "lblCamRecord", "#r#Partiel"} } 
        }, -1, "Mouvement devant la caméra du portail le #date# à #time# enregistrement caméra",
        {{"VirtualDevice", id["VD_CAM_GLOBAL"], 10}, {"VirtualDevice", id["VD_CAM_GLOBAL"], 13}
        }, "Mouvement devant la caméra du portail le #date# à #time# enregistrement caméra")

 

Pour la partie clignotement des lumières de la terrasse, j'utilise mon mes VD Philipps Hue Manager

Pour la partie enregistrement du flux vidéo de l'intercom sur mon NAS Synology, j'utilise mon VD Surveillance Station Manager qui elle-même utilise mon VD HomeMode (GeoFence)

 

Si vous souhaitez également les utiliser, vous les trouverez mes VD dans ma signature de Post. Sinon à vous d'adapter ces scénarios.

 

Attention la fonction "Trigger" que j'utilise est une version améliorée de celle de base de GEA afin de bien vérifier quel est le label qui a provoqué le déclenchement de GEA. Vous trouverez ci-dessous le code correspondant à intégrer dans votre partie function config() de GEA.

J'ai pas vérifié si dans la dernière version de GEA cette demande de correction avait été prise en compte. Je vous laisse regarder.

GEA.options.trigger = { name = "Trigger",
                      getValue=function(value)
                        if (not value)then
                          if (GEA.source.type == "autostart") then
                            return "autostart"
                          elseif (GEA.source.type == "global") then
                            return "Global["..GEA.source.name.."]"
                          elseif (GEA.source.type == "property") then
                            return "Property[" ..GEA.source.deviceID .."]"
                          elseif (GEA.source.type == "event") then
                            return "Event["..GEA.source.event.data.deviceId.."]"
                          end
                        elseif (value) then
                          if (GEA.source.type == "property") then
                            return GEA.source.propertyName:gsub("ui.", ""):gsub(".value", "") == value
                          end
                        end
                        return "other"
                      end
                    }

 

Versions :

  • V1.0 : du 16/10/2019 -> Intialisation du projet

 

Evolutions à venir :

  • Fournir quelques exemples de Lignes GEA utilisant le VD comme source de déclenchement des options
  • A voir selon vos suggestions :huh:

 

Dernière version du VD :

 

VD :     V1.0 Intercom_Manager.vfib V1.0.json

Scène : V1.0 : Intercom Manager V1.0.lua

 

Icône :

 

Intercom_Fibaro_On.png.53e39fbdbe80f73951818c781973ab27.png

 

 

Modifié par MAM78
  • Like 3
  • Thanks 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Super,
Du beau boulot. Merci

Envoyé de mon BND-L21 en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

Punaise, top !

Partager ce message


Lien à poster
Partager sur d’autres sites

Comme promis, j'ai ajouté au TUTO, mes exemples d'intégrations dans GEA.

 

Je vous laisse regarder la mise à jour du premier Post.

 

Modifié par MAM78

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour MAM78,

 

Cet intercom manager me semble formidable. Néanmoins étant totalement novice dans le domaine j'ai peur de me lancer dans son installation car la plus part des termes me sont inconnu et je n'y connais rien en programmation.

Ma configuration est la suivante:

Box FIBARO lite plus intercom FIBARO en filaire sur un switch POE

C'est facile à installer?

Les lignes de codes sont à copier coller?

Bref puis-je me lancer dans ce projet

Merci d'avance

David

Partager ce message


Lien à poster
Partager sur d’autres sites

Désolé pour toi, mais ma solution nécessite de disposer d’une HC2 afin de pouvoir intégrer des devices virtuels et des scènes.
Je vais le préciser dans les prérequis.

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

×