Czołem ekipo 😎
Potrzebuję zasięgnąć informacji jak skonfigurować następującą funkcjonalność Heatit Z-Temp2, a mianowicie:
Korzystam ze sceny sterującej kotłem CO, której konfigurację można znaleźć w filmach z serii 650 na powyższym portalu. Mam ustawione 4 głowice fibaro, które pracują wg. 4 oddzielnych harmonogramów. Wszystko działa fajnie lecz...
... posiadam również termostat Heatit Z-Temp-2, który chciałbym ustawić w taki sposób, żeby po ręcznej nastawie temperatury, zmieniał na określony czas (powiedzmy 2h) wartość na wszystkich głowicach fibaro i uruchamiał piec poprzez smart implant, po upływie tego czasu (2h), głowice powinny wrócić do swoich harmonogramów.
Czy ktoś z tu obecnych "przerabiał" taką funkcjonalność ?
Prosze zostawic scene wylaczajaca Kociol C.O. tak jak jest, a ponizszy kod zastosowac do czasowej zmiany harmonogramow dla wybranych stref. Kod ktory wklejam sprawdzil sie pod HC2. Nie testowalem go pod HC3.
Po zmianie nastawy temp przez tymczasowa zmiane temp sterfy w ktorej sa Heat Controller'y na 2h, scena odpowiedzialna za kociol sama zezwoli na jego prace.
Musi pan odczytac strefy zmienna harmongramID i odpowiednio utworzyc swoj zakodowany login dla kazdej ze stref wywolujac funkcje newScheduleTemp().
Jesli sie to panu nie uda, zapraszam do kupna konsultacji.
Lukasz
--[[
To jest scena napisana celem obnizenia nastawy temperatury dla konkretnego
harmonogramu po otwarciu okna wykrytego na podstawie Door/Window Sensor
Designed by Lukasz Gawryjolek
https://portal.zTechnikaZaPanBrat.pl
]]--
-- Wymagane ustawienia
-- panels -> /panels/heating -> GET try
local loginPasswordBase64 = "bHVrYXN6Lmdhd3J5am9sZWtAZ21haWwuY29tOlI0N3cvdURjdU1b" --tu wprowadz zakodowane wg notacji Base64 https://www.motobit.com/util/base64-decoder-encoder.asp
-- swoj login i haslo w formie przed zakodowaniem: login:password
local doorWindowSensorIDs = {308, 312, 531}
--------------------------------------------------------------------------------
------------------------------------- Kod sceny nie edytowac ------------------
function newScheduleTemp()
local harmongramID = 55 --znajdz nr harmogramu uruchamiajac w przeglodarce IP centrali/docs/
local newSetTemp = 10
local changeScheduleForMinutes = 120
local timestamp = os.time() + 60 * changeScheduleForMinutes
local url = "/panels/heating/" .. harmongramID
local schedule = "{\"properties\":{\"handTemperature\":" .. newSetTemp .. " ,\"handTimestamp\":" .. tostring(timestamp) .. "}}"
local http = net.HTTPClient()
http:request('http://127.0.0.1/api' .. url, {
options = {
method = 'PUT',
headers = {
['Cache-Control']='no-cache, no-store, must-revalidate, max-age=0, max-age:0',
['Connection']='Keep-Alive',
['Content-Type']='application/json;charset="UTF-8"',
['Authorization']= "Basic " .. loginPasswordBase64
},
data = schedule
},
success = function(response)
print("success.....", response.status)
end,
error = function(error)
print("Error: ", error)
end
})
end