Aller au contenu

modifier un paramètre en mode Json


Messages recommandés

Posté(e)

 le Id 1  correspond bien au DeviceParID  1

et

par contre le Id 16  correspond bien au DeviceParID 2

 

"properties": {
    "parameters": [
      {
        "id": 1,
        "lastReportedValue": 0,
        "lastSetValue": 0,
        "size": 1,
        "value": 0
      },
      {
        "id": 16,
        "lastReportedValue": 1,
        "lastSetValue": 1,
        "size": 1,
        "value": 1
      },

 

Posté(e) (modifié)

oui mais avec les essais d'avant, on a modifié avec DeviceParID = 16 ? nan ?

tu avais essayé ?

 

du coup c'est le paramètre portant le numéro 61 !

 

faut pas se mélanger entre le numéro de l'ID et sa position dans la table json !!

 

la position 16 correspond à l'id 61.

Modifié par jjacques68
Posté(e)

j'ai tester comme ça est ça fonctionne tres bien

 


local DeviceID = 14 -- id du module àparamétrer
local DeviceParID = 1 -- # du paramètre
local DeviceParID2 = 2
local DeviceParID3 = 3
---local DeviceParSize = 0


MonDevice = api.get ("/devices/"..DeviceID)
print(json.encode(MonDevice))
----MonDevice.properties.parameters[DeviceParID].value = 0
MonDevice.properties.parameters[DeviceParID].value = 1
MonDevice.properties.parameters[DeviceParID2].value = 0
MonDevice.properties.parameters[DeviceParID3].value = 1
api.put("/devices/"..DeviceID, MonDevice)

Capture.JPG.f403f7ef3910be0d6e985a66da304774.JPG

  • Like 1
Posté(e)

effectivement le 61 est en 14eme position  et ça fonctionne comme ça 

 

mai c dommage qu'il n'est pas possible de suive les ID paramètre  

Posté(e)

on peut en passant par une boucle...

 

pour chaque paramètre, si l'id = celui que tu veux, alors tu change la valeur...

 

c'est un peu plus long à coder... mais au moins tu travailles avec l'id du paramètre et non sa position.

Posté(e) (modifié)

salut @jjacques68

 

toujours confinée chez moi, je profite pour éprendre le LUA 

 

j'ai appris quel truc et la je suis la function 

 

 

 

Modifié par 971jmd
×
×
  • Créer...