Hello,
Pour créer un FakeDevice et utiliser une Zibase ( ça fonctionne ss doute avec d'autres box):
Associer un module à votre HC2 qui vous intéresse ( détecteurs, sondes...) quelque soit la marque tant que le template fonctionne avec la HC2.
Dissocier avec votre Zibase ou reseter le module si il vous le permet pour pourvoir le réutiliser ou en créer plusieurs
Décocher non mort sur le VD qui sera notre FakeD
Pour l'alimenter deux méthodes en fonction de vos besoins :
Avec une variable
--[[
%% globals
OS4196965633_V2 --Votre variable de sonde
--]]
local fakedevice = 139 --Votre ID de FakeD
local humidite = fibaro:getGlobalValue("OS4196965633_V2")
api.put(payload, device)
Ou avec une requête HTTP :
1. Importer le VD External.vfib (c'est juste un VD avec un seul label) ... noter son ID
2. Créer une scène et copier le code :
--[[
%% properties
180 ui.Json.value --remplacer par ID de votre VD External
--]]
actions = {
["ui.Json.value"] = function(values)
setValues(values)
end,
}
-- -----------------------------------------------------
-- set la ou lesvaleurs d'un module
-- Ex : [{'id':123, 'value':100}, {'id':234, 'value':'Message'}]
-- -----------------------------------------------------
function setValues(values)
fibaro:debug(values)
local tablejson = json.decode(values)
if (#tablejson > 0) then
for k,v in pairs(tablejson) do
setValue(v)
end
else
setValue(tablejson)
end
end
-- -----------------------------------------------------
-- set la valeur d'un module
-- Ex : {'id':123, 'value':100}
-- -----------------------------------------------------
function setValue(v)
fibaro:debug(json.encode(v))
local valeur = v.value
local prop = {properties = { value = valeur }}
--print(valeur .. " .. " .. VAR_FAKE[declencheur.name])
api.put("/devices/"..v.id, prop)
end
-- ===============================
-- DÈmarrage du script
-- ===============================
local trigger = fibaro:getSourceTrigger()
if (trigger.type == "property") then
property = trigger.propertyName
device = trigger.deviceID
value = fibaro:getValue(device, property)
actions[property](value)
end
A présent vous pouvez faire des requêtes HTTP pour un module d'ouverture par exemple (Remplacer 180 part ID de votre VD external et 160 part ID de votre FakeD):
http://"VOTRE IP HC2"/api/callAction?deviceID=180&name=setProperty&arg1=ui.Json.value&arg2="{'id':160,'value':true}"
ou
http://XXX.XXX.XX.XX/api/callAction?deviceID=180&name=setProperty&arg1=ui.Json.value&arg2="{'id':160,'value':false}"
Si vous avez des questions hésitez pas c'est ma moindre des choses et un GRAND merci a maitre @Steven qui faut le dire à tout fait pour moi quasiment.
External.vfib