Witam,
dzięki pomocy pana Łukasza i kilku wymienionych mailach udało mi się uruchomić sterowanie urządzeniami opartymi o mikrokontroler EPS 8266 i soft ESPEasy za pomocą HC3.
Niestety scena która miała wykonać HTTP request nie przekazywała prawidłowo komendy jednak już QA działa bez zarzutu dzięki czemu bez problemu mogę sterować własnej roboty przekaźniczkami :)
Dziękuję panie Łukaszu!
Przemek
Witam, zgodnie z prośbą zamieszczam kod całej QA.
jak widać kod pana Łukasza powieliłem i wrzuciłem w metody TurnOn() i TurnOff() utworzonego QA typu binary switch
Dzięki temu mam tylko ikonkę włącznika w urządzaniach a włącz/wyłącz i mogę to obsługiwać 1 sceną wybierając jej akcję "Przełącz stan" np. tak jak to zrobiłem u mnie przypisując zmianę stanu do kliknięcia w "The Button". Oczywiście dałem przykładowe adresy IP.
--[[
Znasz url i wpisujesz go w przeglądarce, to z powodzeniem przeniesiesz to do sceny lub Quick App wykorzystując REST API metodę GET.
np. do otwarcia drzwi wideodomofonu Akuvox R20A.
Designed by Lukasz Gawryjolek 2020
https://www.portal.ztechnikazapanbrat.pl/
Pierwsza platforma DIY na rynku dla Inteligentnego Domu
email: lukasz@ztechnikazapanbrat.pl
]]
function QuickApp:turnOn()
self:debug("binary switch turned on")
self:updateProperty("value", true)
local url = "http://10.10.10.10/control?cmd=GPIO,12,0"
self.http:request(url , {
options={
headers = {
Accept = "application/json"
},
checkCertificate = true,
method = "GET"
},
success = function(response)
print(response.status)
print(response.data)
end,
error = function(error)
print('error: ' .. json.encode(error))
end
})
end
function QuickApp:turnOff()
self:debug("binary switch turned off")
self:updateProperty("value", false)
local url = "http://10.10.10.10/control?cmd=GPIO,12,1"
self.http:request(url , {
options={
headers = {
Accept = "application/json"
},
checkCertificate = true,
method = "GET"
},
success = function(response)
print(response.status)
print(response.data)
end,
error = function(error)
print('error: ' .. json.encode(error))
end
})
end
function QuickApp:onInit()
self:debug("onInit")
self.http = net.HTTPClient({timeout = 5000})
end