Updating property using same header read function
Hello,
After following the IoT Connectivity with Thingworx course, I'd like to understand if is it possible to use on handler for more than one properties.
For Example:
I'd like to update signal1, signal2 and signal3 values 0 or 1, but it doesn't seem to work for me.
SolarCollector1.lua:
properties.Signal1 = { baseType=“NUMBER”, pushType=“NEVER”, value=1, handler=“signalhandler” }
properties.Signal2 = { baseType=“NUMBER”, pushType=“NEVER”, value=1, handler=“signalhandler” }
properties.Signal3 = { baseType=“NUMBER”, pushType=“NEVER”, value=1, handler=“signalhandler” }
signalhandler.lua:
function read(me, pt, headers, query)
log.info(p_data.name, “Entering Signal Read Handler Function”)
– use csvtools to get last line
csvtools = require(“csvtools”)
file = io.open(“c:\EMS\microsever\logs\signal_log.csv”)
local lastline = csvtools.getLastLine(file)
local signalName = pt.name --For example Signal1
local rightColumn = 0
csvtable = csvtools.csvfile2table(file)
for k,v in ipairs(csvtable) do
for k2,v2 in ipairs(v) do
if v == signalName then
rightColumn = k
end
end
end
local timestamp = tonumber(lastline[1])
pt.value = tonumber(lastline[rightcolumn]
pt.time = tostring(os.time())
pt.quality = “GOOD”
pt.next = nil
tw_mutex.unlock()
return 200
end

