5.2.1.2 Exemple
Partons du script suivant pour illustrer l'invocation de fonction :
header = {
version = 1.1,
label = "Test",
name = "test"
}
--[[
Test function
]]
function testFunction(parameters)
wd.log("question is " .. parameters.text)
local result = {
value = 42 = 42
}
return result
end
Fichier de commande permettant d'invoquer la fonction :
[{
"rpcName":"test.testFunction",
"parameters": {
"text":"what is the answer ?"is the answer ?"
},
"callerId":"3d9311ed-0076-4f28-ac59-a2debfa35b86"
}]
Fichier de résultat obtenu :
[{
"result": {
"value":42
},
"callerId":"3d9311ed-0076-4f28-ac59-a2debfa35b86"
}]
5.2.2 Message de commande MQTT
La WebdynSun PM peut recevoir des messages de commande en MQTT. Bien entendu, pour cela il
faut qu'un serveur MQTT soit configuré (Voir chapitre 3.2.2.5.4 : « MQTT »). En particulier les topics de
commandes et de résultats doivent être renseignés. La WebdynSun PM s'inscrit au topic de commande
de sorte que tout message envoyé sur celui-ci est reçu et exécuté. Le résultat d'une commande ou d'une
invocation de fonction est publié sur le topic de résultat.
Le format JSON utilisé pour ces messages est le format JSON décrit au chapitre 5.2.1.1 : « Format JSON
du fichier de commande ».
Un message MQTT ne peut contenir qu'une seule commande ou résultat. En conséquence, les
crochets ouvrant et fermant ne sont pas autorisés.
178
V2.05 sous réserve de modifications | Webdyn © par Flexitron Group
contact@webdyn.com |
webdyn.com