LUA and uniPi v1.1 and JSON

Moderator: leecollings

Post Reply
atagesson
Posts: 7
Joined: Wednesday 20 January 2016 15:41
Target OS: -
Domoticz version:
Contact:

LUA and uniPi v1.1 and JSON

Post by atagesson »

Hello

To be able to get notifications on a dummy device I want to change from simple deviceupdate to a JSON command in this script below, but I receive a error message; EventSystem: in /home/pi/domoticz/scripts/lua/script_device_uniPi.lua: /home/pi/domoticz/scripts/lua/script_device_uniPi.lua:509: table index is nil

I am no LUA expert, can somebody tell me how to put the bits and peices together with this script?
Please? :idea: :roll:

The reason I want to do this is discussed in this post:
viewtopic.php?f=6&t=24930

The original script (part):

-----------------------Digital Input One----------------------------
if digital1 == 1 then
if ((otherdevices[di1name] == 'Off') ) then commandArray[21] = {['UpdateDevice'] = idxdi1 .. '|1|On'} end
elseif digital1 == 0 then
if ((otherdevices[di1name] == 'On') ) then commandArray[21] = {['UpdateDevice'] = idxdi1 .. '|0|Off'} end
else
print("uniPi digital input one error")
end


I want to use JSON command instead with these lines:

if digital1 == 1 then
if ((otherdevices[di1name] == 'Off') ) then commandArray[OpenURL] = "//localhost:8080/json.htm?type=command&param=switchlight&idx=39&switchcmd=On" end
elseif digital1 == 0 then
if ((otherdevices[di1name] == 'On') ) then commandArray[OpenURL] = "//localhost:8080/json.htm?type=command&param=switchlight&idx=39&switchcmd=Off" end
else
print("uniPi digital input one error")
end


Then whole script below:
Spoiler: show
--uniPi Domoticz LUA Script b0.98
------------------------------------------------------------------------------------
-- Setup Instructions
--
-- Required that to use this script you have Domoticz fully working on a raspberryPi
-- Additionally you will need the uniPi hardware module installed and the evok uniPI API working
-- you can use the installer or my manual tutorial here http://unipi.technology/forum/viewtopic.php?f=6&t=95
-- it is mandatory that evok API/website is working correctly before this script will function!
--
-- This script also requires json for lua http://regex.info/blog/lua/json
-- rough install guide create the required directory 'sudo mkdir /usr/local/share/lua/5.2/'
-- put the json script in the directory 'sudo cp json.lua /usr/local/share/lua/5.2/'
--
-- In Domoticz you will need to create virtual hardware device and name it something like uniPi
-- In the Domoticz hardware tab click setup for uniPi and add 8 virtual 'switch' devices for the relays
-- name the switch devices whatever you want this script assumes the name "uniPi Relay1","uniPi Relay2" etc
-- Go to the device tab in Domoticz and make note of the idX number (the far left column near the icons)
-- Now update the user settings below for virtual device names and IDx values to match your config in domoticz
--
-- Do the same for the remaining devices (for analog input use voltage devices, for digital inputs use switches
-- for analog output use a slider/dimmer switch
--
-- beta not working for one wire therm via this script yet either in beta yet
--
--
--

-------------------------------------
-- Evok API hostname and port --
-- normally just need port changed --
-------------------------------------

evokurl = "localhost:8445"

-------------------------------------
-- Domoticz JSON hostname:port --
-------------------------------------

domoticzjson = "localhost:8080"

----------------------------------------------------------------
-- User Settings Below for Virtual Device Names and IDx values--
----------------------------------------------------------------

--the following is the IDx for the relay switches with uniPi there are 8 relays create as normal switches
idxr1 = 28
relay1name = "uniPi Relay 1"
idxr2 = 29
relay2name = "uniPi Relay 2"
idxr3 = 30
relay3name = "uniPi Relay 3"
idxr4 = 31
relay4name = "uniPi Relay 4"
idxr5 = 32
relay5name = "uniPi Relay 5"
idxr6 = 33
relay6name = "uniPi Relay 6"
idxr7 = 34
relay7name = "uniPi Relay 7"
idxr8 = 35
relay8name = "uniPi Relay 8"

--the following is the IDx for the analog inputs with uniPi there are 2 inputs you should create them as virtual voltage meters
--to use these you also need to create a user variable as a floating variable and name it 'ai1_value' assign a default level of zero
--and respectivly 'ai2_value' for the 2nd sensor also floating and also starting with zero

idxai1 = 36
ai1name = "uniPi Analog in 1"
idxai2 = 37
ai2name = "uniPi Analog in 2"

--the following is the IDx for the analog outputs with uniPi there is 1 output create as a normal switch

idxao1 = 38
ao1name = "uniPi Analog out 1"

--the following is the IDx for the digital inputs with uniPi there are 12 inputs create as normal switches

idxdi1 = 39
di1name = "uniPi Digital in 1"
idxdi2 = 40
di2name = "uniPi Digital in 2"
idxdi3 = 41
di3name = "uniPi Digital in 3"
idxdi4 = 42
di4name = "uniPi Digital in 4"
idxdi5 = 43
di5name = "uniPi Digital in 5"
idxdi6 = 44
di6name = "uniPi Digital in 6"
idxdi7 = 45
di7name = "uniPi Digital in 7"
idxdi8 = 46
di8name = "uniPi Digital in 8"
idxdi9 = 47
di9name = "uniPi Digital in 9"
idxdi10 = 48
di10name = "uniPi Digital in 10"
idxdi11 = 49
di11name = "uniPi Digital in 11"
idxdi12 = 50
di12name = "uniPi Digital in 12"

------------------------------------------------------------------------------
--the following is the one wire tempature sensors, required that you update
--with your SN unique to your one wire device, this can be obtained by issuing
--the following to the uniPI API http://your.system.ip:PORT/rest/all
--then figure out which devices in the dev.temp you want to monitor.
--there is no limit to the devices here
------------------------------------------------------------------------------

OWSN1 = "2814228A060000F1"
OWSN2 = "updateMe"
OWSN3 = "updateMe"
OWSN4 = "updateMe"

------------------------------------------------------------------------------------------
-- uniPi Domoticz Lua Script
------------------------------------------------------------------------------------------
local n=0
json = require("json")

--reads all the data from the uniPi API System for parsing (this could be moved to a time script)
local unipi_json_data = io.popen("wget -qO- 'http://".. evokurl .. "/rest/all'")
raw_unipi_data = unipi_json_data:read("*a")
unipiRead = json:decode(raw_unipi_data)
unipi_json_data:close()

for key,value in pairs(unipiRead) do
n=n+1

-----------input device types----------------------
if unipiRead[n].dev == "input" then

if unipiRead[n].circuit == "1" then
digital1 =unipiRead[n].value
end

if unipiRead[n].circuit == "2" then
digital2 =unipiRead[n].value
end

if unipiRead[n].circuit == "3" then
digital3 =unipiRead[n].value
end

if unipiRead[n].circuit == "4" then
digital4 =unipiRead[n].value
end

if unipiRead[n].circuit == "5" then
digital5 =unipiRead[n].value
end

if unipiRead[n].circuit == "6" then
digital6 =unipiRead[n].value
end

if unipiRead[n].circuit == "7" then
digital7 =unipiRead[n].value
end

if unipiRead[n].circuit == "8" then
digital8 =unipiRead[n].value
end

if unipiRead[n].circuit == "9" then
digital9 =unipiRead[n].value
end

if unipiRead[n].circuit == "10" then
digital10 =unipiRead[n].value
end

if unipiRead[n].circuit == "11" then
digital11 =unipiRead[n].value
end

if unipiRead[n].circuit == "12" then
digital12 =unipiRead[n].value
end

end

-----------temp device types-----------------------
if unipiRead[n].dev == "temp" then

if unipiRead[n].circuit == OWSN1 then
temp1 = unipiRead[n].value
end

if unipiRead[n].circuit == OWSN2 then
temp2 = unipiRead[n].value
end

if unipiRead[n].circuit == OWSN3 then
temp3 = unipiRead[n].value
end

if unipiRead[n].circuit == OWSN4 then
temp4 = unipiRead[n].value
end

end

-----------analog output device types---------------
if unipiRead[n].dev == "ao" then

if unipiRead[n].circuit == "1" then
ao1 = unipiRead[n].value
end

end

-----------analog input device types---------------
if unipiRead[n].dev == "ai" then

if unipiRead[n].circuit == "1" then
ai1 = unipiRead[n].value
end

if unipiRead[n].circuit == "2" then
ai2 = unipiRead[n].value
end

end

-----------relay device types-----------------------
if unipiRead[n].dev == "relay" then

if unipiRead[n].circuit == "1" then
relay1 = unipiRead[n].value
end

if unipiRead[n].circuit == "2" then
relay2 = unipiRead[n].value
end

if unipiRead[n].circuit == "3" then
relay3 = unipiRead[n].value
end

if unipiRead[n].circuit == "4" then
relay4 = unipiRead[n].value
end

if unipiRead[n].circuit == "5" then
relay5 = unipiRead[n].value
end

if unipiRead[n].circuit == "6" then
relay6 = unipiRead[n].value
end

if unipiRead[n].circuit == "7" then
relay7 = unipiRead[n].value
end

if unipiRead[n].circuit == "8" then
relay8 = unipiRead[n].value
end

end
-----------------------------
end --ends the read main loop

-----------------------------
commandArray = {}
-----------------------Relay One----------------------------
if devicechanged[relay1name] then

if ((otherdevices[relay1name] == 'Off') ) then
print("Sending Power OFF to uniPi relay one")
io.popen("wget -qO- http://".. evokurl .. "/rest/relay/1 --post-data='value=0'")
end

if ((otherdevices[relay1name] == 'On') ) then
io.popen("wget -qO- http://".. evokurl .. "/rest/relay/1 --post-data='value=1'")
print("uniPi: Sending Power ON to uniPi relay one")
end

else

if relay1 == 1 then
if ((otherdevices[relay1name] == 'Off') ) then commandArray[1] = {['UpdateDevice'] = idxr1 .. '|1|On'} end
elseif relay1 == 0 then
if ((otherdevices[relay1name] == 'On') ) then commandArray[1] = {['UpdateDevice'] = idxr1 .. '|0|Off'} end
else
print("uniPi relay one error")
end

end
-----------------------Relay Two----------------------------
if devicechanged[relay2name] then

if ((otherdevices[relay2name] == 'Off') ) then
print("Sending Power OFF to uniPi relay two")
io.popen("wget -qO- http://".. evokurl .. "/rest/relay/2 --post-data='value=0'")
end

if ((otherdevices[relay2name] == 'On') ) then
io.popen("wget -qO- http://".. evokurl .. "/rest/relay/2 --post-data='value=1'")
print("uniPi: Sending Power ON to uniPi relay two")
end

else

if relay2 == 1 then
if ((otherdevices[relay2name] == 'Off') ) then commandArray[2] = {['UpdateDevice'] = idxr2 .. '|1|On'} end
elseif relay2 == 0 then
if ((otherdevices[relay2name] == 'On') ) then commandArray[2] = {['UpdateDevice'] = idxr2 .. '|0|Off'} end
else
print("uniPi relay two error")
end

end
-----------------------Relay Three----------------------------
if devicechanged[relay3name] then

if ((otherdevices[relay3name] == 'Off') ) then
print("Sending Power OFF to uniPi relay three")
io.popen("wget -qO- http://".. evokurl .. "/rest/relay/3 --post-data='value=0'")
end

if ((otherdevices[relay3name] == 'On') ) then
io.popen("wget -qO- http://".. evokurl .. "/rest/relay/3 --post-data='value=1'")
print("uniPi: Sending Power ON to uniPi relay three")
end

else

if relay3 == 1 then
if ((otherdevices[relay3name] == 'Off') ) then commandArray[3] = {['UpdateDevice'] = idxr3 .. '|1|On'} end
elseif relay3 == 0 then
if ((otherdevices[relay3name] == 'On') ) then commandArray[3] = {['UpdateDevice'] = idxr3 .. '|0|Off'} end
else
print("uniPi relay three error")
end

end
-----------------------Relay Four----------------------------
if devicechanged[relay4name] then

if ((otherdevices[relay4name] == 'Off') ) then
print("Sending Power OFF to uniPi relay four")
io.popen("wget -qO- http://".. evokurl .. "/rest/relay/4 --post-data='value=0'")
end

if ((otherdevices[relay4name] == 'On') ) then
io.popen("wget -qO- http://".. evokurl .. "/rest/relay/4 --post-data='value=1'")
print("uniPi: Sending Power ON to uniPi relay four")
end

else

if relay4 == 1 then
if ((otherdevices[relay4name] == 'Off') ) then commandArray[4] = {['UpdateDevice'] = idxr4 .. '|1|On'} end
elseif relay4 == 0 then
if ((otherdevices[relay4name] == 'On') ) then commandArray[4] = {['UpdateDevice'] = idxr4 .. '|0|Off'} end
else
print("uniPi relay four error")
end

end
-----------------------Relay Five----------------------------
if devicechanged[relay5name] then

if ((otherdevices[relay5name] == 'Off') ) then
print("Sending Power OFF to uniPi relay five")
io.popen("wget -qO- http://".. evokurl .. "/rest/relay/5 --post-data='value=0'")
end

if ((otherdevices[relay5name] == 'On') ) then
io.popen("wget -qO- http://".. evokurl .. "/rest/relay/5 --post-data='value=1'")
print("uniPi: Sending Power ON to uniPi relay five")
end

else

if relay5 == 1 then
if ((otherdevices[relay5name] == 'Off') ) then commandArray[5] = {['UpdateDevice'] = idxr5 .. '|1|On'} end
elseif relay5 == 0 then
if ((otherdevices[relay5name] == 'On') ) then commandArray[5] = {['UpdateDevice'] = idxr5 .. '|0|Off'} end
else
print("uniPi relay five error")
end

end
-----------------------Relay Six----------------------------
if devicechanged[relay6name] then

if ((otherdevices[relay6name] == 'Off') ) then
print("Sending Power OFF to uniPi relay six")
io.popen("wget -qO- http://".. evokurl .. "/rest/relay/6 --post-data='value=0'")
end

if ((otherdevices[relay6name] == 'On') ) then
io.popen("wget -qO- http://".. evokurl .. "/rest/relay/6 --post-data='value=1'")
print("uniPi: Sending Power ON to uniPi relay six")
end

else

if relay6 == 1 then
if ((otherdevices[relay6name] == 'Off') ) then commandArray[6] = {['UpdateDevice'] = idxr6 .. '|1|On'} end
elseif relay6 == 0 then
if ((otherdevices[relay6name] == 'On') ) then commandArray[6] = {['UpdateDevice'] = idxr6 .. '|0|Off'} end
else
print("uniPi relay six error")
end

end
-----------------------Relay Seven----------------------------
if devicechanged[relay7name] then

if ((otherdevices[relay7name] == 'Off') ) then
print("Sending Power OFF to uniPi relay seven")
io.popen("wget -qO- http://".. evokurl .. "/rest/relay/7 --post-data='value=0'")
end

if ((otherdevices[relay7name] == 'On') ) then
io.popen("wget -qO- http://".. evokurl .. "/rest/relay/7 --post-data='value=1'")
print("uniPi: Sending Power ON to uniPi relay seven")
end

else

if relay7 == 1 then
if ((otherdevices[relay7name] == 'Off') ) then commandArray[7] = {['UpdateDevice'] = idxr7 .. '|1|On'} end
elseif relay7 == 0 then
if ((otherdevices[relay7name] == 'On') ) then commandArray[7] = {['UpdateDevice'] = idxr7 .. '|0|Off'} end
else
print("uniPi relay seven error")
end

end
-----------------------Relay Eight----------------------------
if devicechanged[relay8name] then

if ((otherdevices[relay8name] == 'Off') ) then
print("uniPi: Sending Power OFF to uniPi relay eight")
io.popen("wget -qO- http://".. evokurl .. "/rest/relay/8 --post-data='value=0'")
end

if ((otherdevices[relay8name] == 'On') ) then
io.popen("wget -qO- http://".. evokurl .. "/rest/relay/8 --post-data='value=1'")
print("uniPi: Sending Power ON to uniPi relay eight")
end

else

if relay8 == 1 then
if ((otherdevices[relay8name] == 'Off') ) then commandArray[8] = {['UpdateDevice'] = idxr8 .. '|1|On'} end
elseif relay8 == 0 then
if ((otherdevices[relay8name] == 'On') ) then commandArray[8] = {['UpdateDevice'] = idxr8 .. '|0|Off'} end
else
print("uniPi relay eight error")
end

end

-----------------------Analog Output One----------------------------
--this is currently only one way value settings, also no adjustment for the 11-15 range on the domoticz slider its all considered 100%

if devicechanged[ao1name] then
ao1_current_slider = tonumber(otherdevices_svalues[ao1name])
print("uniPi: Sending value " .. ao1_current_slider .. " to Analog Out")
io.popen("wget -qO- http://".. evokurl .. "/rest/ao/1 --post-data='value=" .. ao1_current_slider .. "'")
end

-----------------------Analog Input One-----------------------------
ai1data = "http://" .. domoticzjson .. "/json.htm?type=command&param=udevice&idx=" .. idxai1 .. "&nvalue=0&svalue=" .. string.format("%.3f", ai1)
ai1_last_value = uservariables["ai1_value"]
ai1_current_value = string.format("%.1f", ai1)
if ai1_current_value == "0.0" then ai1_current_value = tonumber(ai1_current_value) end

if ai1_last_value == nil then
print("uniPi Error: User variable not set for : Analog Input One 'ai1_value'")
end

if tostring(ai1_current_value) == tostring(ai1_last_value) then
--nothing changed
else
commandArray['OpenURL'] = ai1data
commandArray['Variable:ai1_value'] = ai1_current_value
end

-----------------------Analog Input Two----------------------------
local ai2data = "http://" .. domoticzjson .. "/json.htm?type=command&ampparam=udevice&idx=" .. idxai2 .. "&nvalue=0&svalue=" .. string.format("%.3f", ai2)
ai2_last_value = uservariables["ai2_value"]
ai2_current_value = string.format("%.1f", ai2)
if ai2_current_value == "0.0" then ai2_current_value = tonumber(ai2_current_value) end

if ai2_last_value == nil then
print("uniPi Error: User variable not set for : Analog Input Two 'ai2_value'")
end

if tostring(ai2_current_value) == tostring(ai2_last_value) then
--nothing changed
else
commandArray['OpenURL'] = ai2data
commandArray['Variable:ai2_value'] = ai2_current_value
end

-----------------------Digital Input One----------------------------
if digital1 == 1 then
if ((otherdevices[di1name] == 'Off') ) then commandArray[OpenURL] = "//localhost:8080/json.htm?type=command&param=switchlight&idx=39&switchcmd=On" end
elseif digital1 == 0 then
if ((otherdevices[di1name] == 'On') ) then commandArray[OpenURL] = "//localhost:8080/json.htm?type=command&param=switchlight&idx=39&switchcmd=On" end
else
print("uniPi digital input one error")
end

-----------------------Digital Input Two----------------------------
if digital2 == 1 then
if ((otherdevices[di2name] == 'Off') ) then commandArray[22] = {['UpdateDevice'] = idxdi2 .. '|1|On'} end
elseif digital2 == 0 then
if ((otherdevices[di2name] == 'On') ) then commandArray[22] = {['UpdateDevice'] = idxdi2 .. '|0|Off'} end
else
print("uniPi digital input two error")
end

-----------------------Digital Input Three----------------------------
if digital3 == 1 then
if ((otherdevices[di3name] == 'Off') ) then commandArray[23] = {['UpdateDevice'] = idxdi3 .. '|1|On'} end
elseif digital3 == 0 then
if ((otherdevices[di3name] == 'On') ) then commandArray[23] = {['UpdateDevice'] = idxdi3 .. '|0|Off'} end
else
print("uniPi digital input three error")
end

-----------------------Digital Input Four----------------------------
if digital4 == 1 then
if ((otherdevices[di4name] == 'Off') ) then commandArray[24] = {['UpdateDevice'] = idxdi4 .. '|1|On'} end
elseif digital4 == 0 then
if ((otherdevices[di4name] == 'On') ) then commandArray[24] = {['UpdateDevice'] = idxdi4 .. '|0|Off'} end
else
print("uniPi digital input four error")
end

-----------------------Digital Input Five----------------------------
if digital5 == 1 then
if ((otherdevices[di5name] == 'Off') ) then commandArray[24] = {['UpdateDevice'] = idxdi5 .. '|1|On'} end
elseif digital5 == 0 then
if ((otherdevices[di5name] == 'On') ) then commandArray[24] = {['UpdateDevice'] = idxdi5 .. '|0|Off'} end
else
print("uniPi digital input Five error")
end

-----------------------Digital Input Six----------------------------
if digital6 == 1 then
if ((otherdevices[di6name] == 'Off') ) then commandArray[24] = {['UpdateDevice'] = idxdi6 .. '|1|On'} end
elseif digital6 == 0 then
if ((otherdevices[di6name] == 'On') ) then commandArray[24] = {['UpdateDevice'] = idxdi6 .. '|0|Off'} end
else
print("uniPi digital input Six error")
end

-----------------------Digital Input Seven----------------------------
if digital7 == 1 then
if ((otherdevices[di7name] == 'Off') ) then commandArray[24] = {['UpdateDevice'] = idxdi7 .. '|1|On'} end
elseif digital7 == 0 then
if ((otherdevices[di7name] == 'On') ) then commandArray[24] = {['UpdateDevice'] = idxdi7 .. '|0|Off'} end
else
print("uniPi digital input Seven error")
end

-----------------------Digital Input Eight----------------------------
if digital8 == 1 then
if ((otherdevices[di8name] == 'Off') ) then commandArray[24] = {['UpdateDevice'] = idxdi8 .. '|1|On'} end
elseif digital8 == 0 then
if ((otherdevices[di8name] == 'On') ) then commandArray[24] = {['UpdateDevice'] = idxdi8 .. '|0|Off'} end
else
print("uniPi digital input Eight error")
end

-----------------------Digital Input Nine----------------------------
if digital9 == 1 then
if ((otherdevices[di9name] == 'Off') ) then commandArray[24] = {['UpdateDevice'] = idxdi9 .. '|1|On'} end
elseif digital9 == 0 then
if ((otherdevices[di9name] == 'On') ) then commandArray[24] = {['UpdateDevice'] = idxdi9 .. '|0|Off'} end
else
print("uniPi digital input Nine error")
end

-----------------------Digital Input Ten----------------------------
if digital10 == 1 then
if ((otherdevices[di10name] == 'Off') ) then commandArray[24] = {['UpdateDevice'] = idxdi10 .. '|1|On'} end
elseif digital10 == 0 then
if ((otherdevices[di10name] == 'On') ) then commandArray[24] = {['UpdateDevice'] = idxdi10 .. '|0|Off'} end
else
print("uniPi digital input Ten error")
end

-----------------------Digital Input Eleven----------------------------
if digital11 == 1 then
if ((otherdevices[di11name] == 'Off') ) then commandArray[24] = {['UpdateDevice'] = idxdi11 .. '|1|On'} end
elseif digital11 == 0 then
if ((otherdevices[di11name] == 'On') ) then commandArray[24] = {['UpdateDevice'] = idxdi11 .. '|0|Off'} end
else
print("uniPi digital input Eleven error")
end

-----------------------Digital Input Twelve----------------------------
if digital12 == 1 then
if ((otherdevices[di12name] == 'Off') ) then commandArray[24] = {['UpdateDevice'] = idxdi12 .. '|1|On'} end
elseif digital12 == 0 then
if ((otherdevices[di12name] == 'On') ) then commandArray[24] = {['UpdateDevice'] = idxdi12 .. '|0|Off'} end
else
print("uniPi digital input Twelve error")
end

return commandArray
atagesson
Posts: 7
Joined: Wednesday 20 January 2016 15:41
Target OS: -
Domoticz version:
Contact:

Re: LUA and uniPi v1.1 and JSON

Post by atagesson »

Anybody? :geek:
User avatar
waaren
Posts: 6028
Joined: Tuesday 03 January 2017 14:18
Target OS: Linux
Domoticz version: Beta
Location: Netherlands
Contact:

Re: LUA and uniPi v1.1 and JSON

Post by waaren »

atagesson wrote: Saturday 22 September 2018 8:09 To be able to get notifications on a dummy device I want to change from simple deviceupdate to a JSON command in this script below, but I receive a error message; EventSystem: in /home/pi/domoticz/scripts/lua/script_device_uniPi.lua: /home/pi/domoticz/scripts/lua/script_device_uniPi.lua:509: table index is nil
in commandArray[OpenURL] , Lua interprets OpenURL as a var. Since it is not assigned any value, it is still nil. Try with surrounding quotes like
commandArray['OpenURL' ] then Lua will interpret it as a string.
Debian buster, bullseye on RPI-4, Intel NUC.
dz Beta, Z-Wave, RFLink, RFXtrx433e, P1, Youless, Hue, Yeelight, Xiaomi, MQTT
==>> dzVents wiki
atagesson
Posts: 7
Joined: Wednesday 20 January 2016 15:41
Target OS: -
Domoticz version:
Contact:

Re: LUA and uniPi v1.1 and JSON

Post by atagesson »

Thanks man, that worked! :D
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest