[Intégrer à la Stable 3.8153] Smart Home Security de Xiaomi [ZigBee]

Forum dédié au ZigBee : objets, interfaces ...
Plugins DeConz et ZigBee2MQTT
Pour les questions concernant le plugin ZigBeeForDomoticZ, merci d'utiliser le forum spécifique en dessous.
chamy
Messages : 10
Inscription : 26 nov. 2016, 09:36

Re: Smart Home Security de Xiaomi [ZigBee]

Message par chamy »

Merci du retour. Donc je considère que je n'ai pas de variation quasiment chez moi ;-)
Je voulais être certain du bon fonctionnement car dans le temps ces sondes me permettrons de créer m'a régulation de plancher chauffant hydraulique

Envoyé de mon A0001 en utilisant Tapatalk
Dernière modification par chamy le 19 mars 2017, 10:51, modifié 1 fois.
chamy
Messages : 10
Inscription : 26 nov. 2016, 09:36

Re: RE: Re: Smart Home Security de Xiaomi [ZigBee]

Message par chamy »

chamy a écrit :Merci du retour. Donc je considère que je n'ai pas de variation quasiment chez moi ;-)
Je voulais être certain du bon fonctionnement car dans le temps ces sondes me permettrons de créer m'a régulation de plancher chauffant hydrolique

Envoyé de mon A0001 en utilisant Tapatalk
Hydraulique*

Envoyé de mon A0001 en utilisant Tapatalk
kiquof
Messages : 13
Inscription : 15 mars 2017, 01:05

Re: Smart Home Security de Xiaomi [ZigBee]

Message par kiquof »

chamy a écrit :Merci du retour. Donc je considère que je n'ai pas de variation quasiment chez moi ;-)
Je voulais être certain du bon fonctionnement car dans le temps ces sondes me permettrons de créer m'a régulation de plancher chauffant hydraulique

Envoyé de mon A0001 en utilisant Tapatalk
La sonde fonctionne correctement, pour voir un changement souffle dessus de très près (là ou c'est ajouré) quelques secondes, tu verras un pique vers 30°c ;-)
Bonne jourée, et bravo pour ton acquisition ;-)
DZ Beta V3.6953 / Aeotec Z-Stick S2 / Aeotec Multi Sensor / Xiaomi Gateway /
chamy
Messages : 10
Inscription : 26 nov. 2016, 09:36

Re: Smart Home Security de Xiaomi [ZigBee]

Message par chamy »

Testé et approuvé merci kiquof !

Envoyé de mon A0001 en utilisant Tapatalk
lamouette
Messages : 150
Inscription : 07 déc. 2016, 16:10

Re: Smart Home Security de Xiaomi [ZigBee]

Message par lamouette »

Benj29 a écrit :
lamouette a écrit :Les codes renvoyés par le bouton Xiaomi sont :
Off
Click
Long Click
Long Click Release
Double Click


Ta ligne "if (devicechanged['Interrupteur Alarme Garage'] == 'Click') then" est du coup à modifier.

Tu peux virer toute la première partie du code, vu que tu n'utilises pas de groupe !
Le script s'appelle :
script_device_BoutonGarage.lua

J'ai modifié comme ça.

Code : Tout sélectionner

commandArray = {}

function GroupState(sArray)
        -- https://www.domoticz.com/forum/viewtopic.php?p=102783#p102783
        -- v1.0. 2016-01-18
        -- Checks the state of a group of swithces.
        -- USAGE   : GroupState({'Switch1','Switch2','Switch3','Switch4','Switch5',more switches})
        -- RETURNS : 'On'       if all switches are on.
        --         : 'Off'      if all switches are off.
        --         : 'Mixed"    if one or more, but not all switches are on.
        --
        local iState = 0
        local iCount = 0
        local sState = ''
        for i,portail in pairs(sArray) do
                if (otherdevices[portail] == 'On') then
                        iState = iState + 1
                end
        iCount = iCount + 1
        end
        if(iState == 0) then sState = "Off" end
        if(iState > 0) then sState = 'Mixed' end
        if(iState == iCount) then sState = 'On' end
--      print("iCount   : " .. iCount)
--      print("iState   : " .. iState)
--      print("sState   : " .. sState)
        return sState
end

--PortesVoiture = {'Porte Garage (voiture)','Portail Maison (voiture)'}
PortesVoiture = {'Porte Garage (voiture)'}

if (devicechanged['Interrupteur Alarme Entrée'] == 'Click') then
    PortesVoiture = 'On'
end
Mais ça marche toujours pas lol :)

Domoticz détecte l'appui mais rien ne se lance ...

J'ai cette erreur :

Code : Tout sélectionner

2017-03-18 08:06:00.242 Error: EventSystem: in script_device_BoutonGarage.lua: [string "--..."]:60: attempt to index global 'devicechanged' (a nil value)
Mais du coup, si je veux mettre un timer pour une action de nouveau, je peux faire ça comment ?
Du genre

PorteVoiture = 'On'
PorteGarage= 'On'
Wait 1 min ?
Porte Garage='On'

(le portail voiture se ferme tout seul sur capteur de franchissement).

Merci pour ton aide !
Désolé, occupé ce weekend.

Dans l'éditeur DZ, tu mets bien le script lua en device ? et pas en all ?
Benj29
Messages : 71
Inscription : 20 janv. 2017, 18:54

Re: Smart Home Security de Xiaomi [ZigBee]

Message par Benj29 »

Salut, je regarde ce soir merci !
Benj29
Messages : 71
Inscription : 20 janv. 2017, 18:54

Re: Smart Home Security de Xiaomi [ZigBee]

Message par Benj29 »

Petite question, y a t'il possibilité de mettre une notification (email ou autre) pour si la gateway ou les capteurs au bout de X min (ou heures) ne reçoit pas de données (ou du moins ne peuple pas la BDD), ça génère une alerte ?

(d'ailleurs ça doit être généralisable, la même alerte du genre la box du capteur en rouge quand il n'y a plus de données).

Merci !
Benj29
Messages : 71
Inscription : 20 janv. 2017, 18:54

Re: Smart Home Security de Xiaomi [ZigBee]

Message par Benj29 »

lamouette a écrit :
Benj29 a écrit :
lamouette a écrit :Les codes renvoyés par le bouton Xiaomi sont :
Off
Click
Long Click
Long Click Release
Double Click


Ta ligne "if (devicechanged['Interrupteur Alarme Garage'] == 'Click') then" est du coup à modifier.

Tu peux virer toute la première partie du code, vu que tu n'utilises pas de groupe !
Le script s'appelle :
script_device_BoutonGarage.lua

J'ai modifié comme ça.

Code : Tout sélectionner

commandArray = {}

function GroupState(sArray)
        -- https://www.domoticz.com/forum/viewtopic.php?p=102783#p102783
        -- v1.0. 2016-01-18
        -- Checks the state of a group of swithces.
        -- USAGE   : GroupState({'Switch1','Switch2','Switch3','Switch4','Switch5',more switches})
        -- RETURNS : 'On'       if all switches are on.
        --         : 'Off'      if all switches are off.
        --         : 'Mixed"    if one or more, but not all switches are on.
        --
        local iState = 0
        local iCount = 0
        local sState = ''
        for i,portail in pairs(sArray) do
                if (otherdevices[portail] == 'On') then
                        iState = iState + 1
                end
        iCount = iCount + 1
        end
        if(iState == 0) then sState = "Off" end
        if(iState > 0) then sState = 'Mixed' end
        if(iState == iCount) then sState = 'On' end
--      print("iCount   : " .. iCount)
--      print("iState   : " .. iState)
--      print("sState   : " .. sState)
        return sState
end

--PortesVoiture = {'Porte Garage (voiture)','Portail Maison (voiture)'}
PortesVoiture = {'Porte Garage (voiture)'}

if (devicechanged['Interrupteur Alarme Entrée'] == 'Click') then
    PortesVoiture = 'On'
end
Mais ça marche toujours pas lol :)

Domoticz détecte l'appui mais rien ne se lance ...

J'ai cette erreur :

Code : Tout sélectionner

2017-03-18 08:06:00.242 Error: EventSystem: in script_device_BoutonGarage.lua: [string "--..."]:60: attempt to index global 'devicechanged' (a nil value)
Mais du coup, si je veux mettre un timer pour une action de nouveau, je peux faire ça comment ?
Du genre

PorteVoiture = 'On'
PorteGarage= 'On'
Wait 1 min ?
Porte Garage='On'

(le portail voiture se ferme tout seul sur capteur de franchissement).

Merci pour ton aide !
Désolé, occupé ce weekend.

Dans l'éditeur DZ, tu mets bien le script lua en device ? et pas en all ?
Oui, device, pas all.
Toujours la même erreur dans les logs :

Code : Tout sélectionner

2017-03-20 10:29:00.042 Error: EventSystem: in script_device_BoutonGarage.lua: [string "--..."]:60: attempt to index global 'devicechanged' (a nil value)
2017-03-20 10:30:02.474 Error: EventSystem: in script_device_BoutonGarage.lua: [string "--..."]:60: attempt to index global 'devicechanged' (a nil value)
2017-03-20 10:31:00.492 Error: EventSystem: in script_device_BoutonGarage.lua: [string "--..."]:60: attempt to index global 'devicechanged' (a nil value)
2017-03-20 10:32:00.010 Error: EventSystem: in script_device_BoutonGarage.lua: [string "--..."]:60: attempt to index global 'devicechanged' (a nil value)
2017-03-20 10:33:00.028 Error: EventSystem: in script_device_BoutonGarage.lua: [string "--..."]:60: attempt to index global 'devicechanged' (a nil value)
2017-03-20 10:34:00.046 Error: EventSystem: in script_device_BoutonGarage.lua: [string "--..."]:60: attempt to index global 'devicechanged' (a nil value)
2017-03-20 10:35:00.069 Error: EventSystem: in script_device_BoutonGarage.lua: [string "--..."]:60: attempt to index global 'devicechanged' (a nil value)
Pour ce code :

Code : Tout sélectionner

commandArray = {}

function GroupState(sArray)
        -- https://www.domoticz.com/forum/viewtopic.php?p=102783#p102783
        -- v1.0. 2016-01-18
        -- Checks the state of a group of swithces.
        -- USAGE   : GroupState({'Switch1','Switch2','Switch3','Switch4','Switch5',more switches})
        -- RETURNS : 'On'       if all switches are on.
        --         : 'Off'      if all switches are off.
        --         : 'Mixed"    if one or more, but not all switches are on.
        --
        local iState = 0
        local iCount = 0
        local sState = ''
        for i,portail in pairs(sArray) do
                if (otherdevices[portail] == 'On') then
                        iState = iState + 1
                end
        iCount = iCount + 1
        end
        if(iState == 0) then sState = "Off" end
        if(iState > 0) then sState = 'Mixed' end
        if(iState == iCount) then sState = 'On' end
--      print("iCount   : " .. iCount)
--      print("iState   : " .. iState)
--      print("sState   : " .. sState)
        return sState
end

--PortesVoiture = {'Porte Garage (voiture)','Portail Maison (voiture)'}
PortesVoiture = {'Porte Garage (voiture)'}

if (devicechanged['Interrupteur Alarme Entrée'] == 'Click') then
    PortesVoiture = 'On'
end
lamouette
Messages : 150
Inscription : 07 déc. 2016, 16:10

Re: Smart Home Security de Xiaomi [ZigBee]

Message par lamouette »

Bon, va falloir bosser un peu le lua :mrgreen:

Essaie ca :

Code : Tout sélectionner

commandArray = {}

function GroupState(sArray)
        -- https://www.domoticz.com/forum/viewtopic.php?p=102783#p102783
        -- v1.0. 2016-01-18
        -- Checks the state of a group of swithces.
        -- USAGE   : GroupState({'Switch1','Switch2','Switch3','Switch4','Switch5',more switches})
        -- RETURNS : 'On'       if all switches are on.
        --         : 'Off'      if all switches are off.
        --         : 'Mixed"    if one or more, but not all switches are on.
        --
        local iState = 0
        local iCount = 0
        local sState = ''
        for i,portail in pairs(sArray) do
                if (otherdevices[portail] == 'On') then
                        iState = iState + 1
                end
        iCount = iCount + 1
        end
        if(iState == 0) then sState = "Off" end
        if(iState > 0) then sState = 'Mixed' end
        if(iState == iCount) then sState = 'On' end
--      print("iCount   : " .. iCount)
--      print("iState   : " .. iState)
--      print("sState   : " .. sState)
        return sState
end

PortesVoiture = {'Porte Garage (voiture)'}

if (devicechanged['Interrupteur Alarme Entrée'] == 'Click') then commandArray['Group:PortesVoiture']='On' 
end
return commandArray
Benj29
Messages : 71
Inscription : 20 janv. 2017, 18:54

Re: Smart Home Security de Xiaomi [ZigBee]

Message par Benj29 »

Je te valide ça ce soir ! Merci :).
Par contre si je veux faire un timer pour lancer des actions, je fais ça comment ?
Répondre