Aller au contenu

Messages recommandés

Posté(e)

Désolé, c'est encore moi, des soucis avec l'encodage d'une table json dans une variable globale. (au départ d'une VD, PAS d'une scène)

 

Lorsque je crée la variable Tmp_Salon, j'obtiens ceci via l'api (http://192.168.2.96/api/globalVariables?name=Tmp_Salon)

{"name":"Tmp_Salon","value":"0","readOnly":false,"isEnum":false,"created":1423779706,"modified":1423779706}

jusqu'ici, tout va bien  :)

 

Ensuite je la remplis avec le code suivant depuis un bouton d'une VD :

local Var = 'Tmp_Salon'

local TmpVar = {}
TmpVar.Min = 200
TmpVar.Max = -200
TmpVar.Date = os.time()
fibaro:debug('TmpVar.Min = '..TmpVar.Min)
--fibaro.debug('TmpVar.Max = '..TmpVar.Max)
fibaro:debug("TmpVar.Date = "..TmpVar.Date)
-- Sauvegarde TmpVar dans la variable globale
fibaro:setGlobal(Var,json.encode(TmpVar))
 

Le debug me donne l'erreur suivante :

[DEBUG] 23:27:21: TmpVar.Min = 200
[ERROR] 23:27:21: line :debug expected 2..2 args, got 1

(c'est pour cela que j'ai mis "--fibaro.debug('TmpVar.Max = '..TmpVar.Max)" en commentaire

 

J'ai alors l'erreur suivante dans le debug : (erreur lors du décodage de la table)

[DEBUG] 23:30:52: TmpVar.Min = 200
[DEBUG] 23:30:52: TmpVar.Date = 1423780252
[ERROR] 23:30:52: line 13: Expected value but found invalid token at character 1

et ma variable affiche ceci par l'api :

{"name":"Tmp_Salon","value":"{\"Max\":-200,\"Date\":1423780252,\"Min\":200}","readOnly":false,"isEnum":false,"created":1423779706,"modified":1423780252}

Ce qui me semble très bizarre, ce sont les \. Serait-ce la cause des erreurs ?

 

Quelqu'un peut-il me donner une bonne raison pour que je me flagelle ? J'ai sà»rement fait une bêtise, mais j'ai beau retourner le problème dans tous les sens, je n'arrive pas à  comprendre.

 

Merci de votre aide.

Posté(e)

Tu n'utiliserais pas ça dans une scène ?

Je crois me souvenir que json et scène ne font pas bon ménage.

Si c'est le cas, passe par un virtual divice.

Envoyé de mon iPhone àl'aide de Tapatalk

Posté(e)

Merci Joss Alf,

Malheureusement, j'utilise déjàcela dans un VD.

Donc àpriori tu ne vois pas d'erreur dans le code ?

Le \ est-ce cela qui est la cause du problème json ?

Ceci dit, j'ai déjàune erreur en ligne 9, AVANT l'encodage json ...

×
×
  • Créer...