MS Parameter auslesen

Hallo Leute,

ich würde gerne gezielt den Parameter 6 eines Motion Sensors auslesen. Leider habe ich bislang nur
das hier gefunden:

fibaro:getValue(18, ‘parameters’)

Hier werden alle Parameter aufgelistet. Auch der Artikel wie ich diesen Wert schreiben kann von Boomx half mir hier nicht weiter.

Hat hier vielleicht jemand eine Idee

Danke & Gruß
ChrisBeat

Hi ChrisBeat,

meines Wissen nach gibt es keine Möglichkeit einzelne Parameter über getValue abzufragen. Einzige Möglichkeit die mir einfällt: Das JSON aus der API holen und auseinander nehmen.

Was hast Du denn damit vor? Vielleicht geht es auch anders.

Hallo Bastian,

eigentlich brauche ich es nur um es im Debuglog anzuzeigen.

Werde mal versuchen ob ich mit string.find(s,pattern[,init[,plain]]) oder so weiterkomme.

Gruß
ChrisBeat

Hi,

da kommt eine json-Response zurück. Warum nutzt du dann nicht die json.decode-Funktion. Dies ist zum einen deutlich ressourcenschonender und zum anderen einfacher anzuwenden.

Gruß

Hallo Boomx,

leider sind meine Programmierkenntnisse sehr rudimentär. Es reicht aus um bestehende Scripte meinen Wünschen anzupassen.
Mit einen json-Response und deren weitere Verarbeitung hatte ich noch nichts zu tun.

Was ich gefunden habe ist, wie ich es sinnvoll erstelle. Nicht aber wie ich es hinterher wieder auseinandernehme.

Hättest Du ggf. eine weitere Hilfestellung für mich. Vielen Dank.

local json = require( "json" )  -- Include the Corona JSON library

local superHeroes = {
    { name="Clark Kent", nickname="Superman", address="Metropolis", age=32 },
    { name="Bruce Wayne", nickname="Batman", address="Gotham", age=36 },
    { name="Diana Prince", nickname="Wonder Woman", address="New York", age=28 }
}
local serializedString = json.encode( superHeroes )
print( serializedString )

-- prints: [{"name":"Clark Kent", "nickname":"Superman", "address":"Metropolis", "age":32}, {"name":"Bruce Wayne", "nickname":"Batman", "address":"Gotham", "age":36}, {"name":"Diana Prince", "nickname":"Wonder Woman", "address":"New York", "age":28},]
--
-- Note that it's one long string to save space


local newSuperHeroes = json.decode( serializedString )

Heute hab ich nen guten Tag :smiley:

--[[
%% properties
%% events
%% globals
--]]

function getParameter(deviceId)
  local dev = api.get('/devices/' .. deviceId)
  print('deviceID ' ..deviceId.. ': Parameter ' ..dev.properties.parameters[5].id.. ' = ' ..dev.properties.parameters[5].value.. ' Sekunden.')
end
 
getParameter(9)

Hi Boomx,

Fleißbienchen für heute verdient. Vielen Dank.

Gruß
ChrisBeat