Aller au contenu

Modules

Les modules sont des extensions du plugin IOT qui permettent de communiquer avec des équipements spécifiques. Chaque module est un package Lua qui implémente les fonctions nécessaires pour communiquer avec un équipement.

Liste des Modules

  • alemca : Module principal pour la communication avec les services Alemca.
  • config : Module pour la gestion de la configuration de l'agent.
  • modbus : Module pour la communication avec des équipements Modbus.
  • serial : Module pour la communication série avec des équipements.
  • socket : Module pour la communication réseau via des sockets.
  • http : Module pour la communication HTTP.
  • addon : Module pour la communication avec un logiciel externe via gRPC (addon-can).
  • at : Module pour la communication avec des équipements via AT commands.
  • ping : Module pour la vérification de la connectivité réseau.

Pour chaque modules vous aurez un example de lua pour l'utiliser dans le plugin IOT.

Liste des librairies par défaut

  • json : Module pour la manipulation de données JSON.
  • lfs : Module pour la gestion des fichiers locaux.

Il existe aussi des librairies standards Lua qui sont disponibles par défaut dans l'agent Alemca. Ces librairies sont fournies avec Lua et peuvent être utilisées directement dans vos scripts Lua. Voir la documentation Lua pour plus d'informations sur ces librairies.

Fonctions Lua supplémentaires

  • print(string) : Fonction pour afficher des messages de débogage dans la console en mode Debug.
  • printDebug(string) : Fonction pour afficher des messages de débogage dans la console en mode Debug.
  • printInfo(string) : Fonction pour afficher des messages d'information dans la console en mode Info.
  • printError(string) : Fonction pour afficher des messages d'erreur dans la console en mode Error.
  • sleep(int) : Fonction pour mettre en pause l'exécution du script pendant un certain temps (en millisecondes).

Fonctions Lua supplémentaires pour les commandes

  • entity_ident : Variable contenant l'identifiant de l'entité.
  • entity_token : Variable contenant le token de l'entité.
  • task_ident : Variable contenant l'identifiant de la tâche.
  • job_ident : Variable contenant l'identifiant du job.
  • job_script : Variable contenant le script du job.
  • job_timestamp : Variable contenant le timestamp du job.
  • job_scheduled_time : Variable contenant le temps prévu pour le job.
  • job_expire_time : Variable contenant le temps d'expiration du job.
  • job_target : Variable contenant la cible du job.
  • job_response(jobIdent, message, [status, taskIdent]) : Fonction pour envoyer une réponse au job.
  • job_error(jobIdent, message) : Fonction pour envoyer une réponse au job avec un status d'erreur.
  • variable : Variable contenant les variables de la commande.
  • constants : Variable contenant les constantes de la commande.
  • attributes : Variable contenant les attributs de la device.