Node.js
Guide de l'utilisateur
Application de routeur Node.js
Application de routeur Node.js
© 2023 Advantech Czech sro Aucune partie de cette publication ne peut être reproduite ou transmise sous quelque forme ou par quelque moyen que ce soit, électronique ou mécanique, y compris la photographie, l'enregistrement ou tout système de stockage et de récupération d'informations sans consentement écrit.
Les informations contenues dans ce manuel sont sujettes à modification sans préavis et ne représentent pas un engagement de la part d'Advantech.
Advantech Czech sro ne sera pas responsable des dommages accessoires ou consécutifs résultant de la fourniture, de l'exécution ou de l'utilisation de ce manuel.
Tous les noms de marques utilisés dans ce manuel sont des marques déposées de leurs propriétaires respectifs. L'utilisation de marques commerciales ou d'autres désignations dans cette publication est uniquement à des fins de référence et ne constitue pas une approbation par le détenteur de la marque.
Symboles utilisés
![]() |
Danger – Informations concernant la sécurité de l'utilisateur ou des dommages potentiels au routeur. |
![]() |
Attention – Problèmes pouvant survenir dans des situations spécifiques. |
![]() |
Informations – Conseils utiles ou informations particulièrement intéressantes. |
![]() |
Example – Exampfichier de fonction, de commande ou de script. |
Journal des modifications
1.1 Journal des modifications de Node.js
v1.0.0 (2017/10/02)
- Première sortie.
v1.1.0 (2017/11/08) - Mise à jour vers Node.js 8.9.1.
v1.2.0 (2018/02/18) - Ajout de la prise en charge de la connexion à file avec rotation.
v1.2.1 (2018/08/10) - Mise à jour vers Node.js 8.11.1.
v2.0.0 (2020/02/21) - Mise à jour vers Node.js 10.15.3 et ffi 2.3.0.
- Nœuds d'installation optimisés files pour réduire la taille.
- Préparé pour le nouveau GCC 7.4.
- Préparé pour le nouveau noyau 4.14.
- Préparé pour la plateforme V4.
- Ajout du nœud personnalisé « routeur ».
- Définissez un chemin par défaut pour rechercher les nœuds sur /usr/lib/node_modules.
v2.1.0 (2021/05/06) - Mise à jour vers Node.js 10.23.1.
- Informations de licence déplacées du module Node-RED.
v16.14.2 (2022/03/18) - Mise à jour vers Node.js 16.14.2 avec npm 8.5.0.
v16.15.0 (2022/05/10) - Ajout d'un objet permettant de travailler avec la configuration du routeur sur le nœud du routeur.
- Mise à jour vers Node.js 16.15.0 avec npm 8.5.5.
- Connexion fixe sur FW 6.3.5.
v16.17.0 (2022/08/25) - Mise à jour vers Node.js 16.17.0 avec npm 8.15.0.
- Ajout de la propriété productModel au nœud du routeur.
v18.15.0 (2023/04/06) - Mise à jour vers Node.js 18.15.0 avec npm 9.5.0.
- Suppression du nœud obsolète et inutile « quand ».
Application de routeur Node.js
L'application de routeur Node.js n'est pas contenue dans le micrologiciel standard du routeur. Le téléchargement de cette application de routeur est décrit dans le manuel de configuration (voir le chapitre Documents associés). Cette application de routeur est uniquement compatible avec les routeurs des plateformes v3 et v4 !
2.1 Introduction
Le nœud Node.js est un nœud d'environnement d'exécution JavaScript côté serveur propriétaire disponible pour les routeurs cellulaires Advantech. Ce nœud est utilisé par les modules Advantech écrits en JavaScript, mais peut être utilisé par toute autre application JavaScript tierce pour l'administration et la maintenance des routeurs.
Le module routeur contient cet ajout de nœuds aux nœuds intégrés :
- node-authenticate-pam – authentification PAM asynchrone pour NodeJS,
- nœud de routeur – un nœud propriétaire pour les routeurs cellulaires d'Advantech décrits en détail dans ce document.
2.2Création des nœuds personnalisés
Une manière officielle de créer et d'installer un nœud consiste à utiliser la commande nmp. Cependant, il existe certaines limites, car les routeurs Advantech sont des appareils intégrés sans système d'exploitation Linux complet et dotés d'un matériel spécialisé. Vous pouvez installer l'application nmp Router sur le routeur et l'utiliser de la manière habituelle, ou préparer des nœuds avec l'outil npm sur votre PC, puis les copier sur le routeur. Mais il n'est pas possible d'installer tous les nœuds que vous pouvez trouver dans le référentiel npm.
Pour plus de détails, voir : Applications de routeur – Portail d'ingénierie des routeurs cellulaires (advantech.cz)dans le chapitre 4.5 de la note d’application Node-RED.
Nœud de routeur
Cette partie du document est spécialement dédiée aux programmeurs.
Le nœud du routeur (appelé « routeur ») permet d'accéder aux fonctions et au matériel spécifiques du routeur. Vous pouvez charger le nœud Node.js dans votre code en require("router"), par exempleample:![]()
Nous utiliserons la variable r de cet example pour accéder à toutes les propriétés dans l'ex suivantamples dans ces notes.
Ex simpleampfichier d'utilisation du nœud de routeur
Dans la figure suivante est un exampchier de chargement du nœud Node.js.
3.1 Propriétés du nœud
3.1.1 nom du produit
Variable de chaîne en lecture seule chargée avec le nom de produit du routeur. Exampfichier d'utilisation :
3.1.2 Modèle de produit
Variable de chaîne en lecture seule chargée avec l'indication du modèle du routeur. Exampfichier d'utilisation :
3.1.3 Révision du produit
Variable de chaîne en lecture seule chargée avec le numéro de révision du produit du routeur. Exampfichier d'utilisation :
Sortie : 1.0
3.1.4 code de la plate-forme
Variable de chaîne en lecture seule chargée avec le code de plate-forme du routeur. Il est pris en charge par les routeurs des modèles de production v3 et v4. Exampfichier d'utilisation :
Sortie : V3
3.1.5 numéro de série
Variable de chaîne en lecture seule chargée avec le numéro de série du routeur. Exampfichier d'utilisation :
Sortie : ACZ1100000322054
3.1.6 Version du firmware
Variable de chaîne en lecture seule chargée avec la version du micrologiciel du routeur. Exampfichier d'utilisation :
Sortie : 6.2.1 (2019-10-16)
3.1.7 RTCBatterieOK
Variable booléenne en lecture seule chargée avec l'état de la batterie RTC du routeur. Vrai signifie OK, faux signifie mauvais.
Exampfichier d'utilisation :
Sortie : vrai
3.1.8 Alimentation
Variable de nombre décimal en lecture seule chargée avec le volume d'alimentation du routeurtage. Exampfichier d'utilisation :
Sortie: 11.701 V
3.1.9 températures
Variable de nombre entier en lecture seule chargée avec la température interne du routeur en degrés Celsius. Exampfichier d'utilisation :
Sortie : 39 °C
3.1.1 0usrLED
Variable booléenne en écriture seule pour la LED « USR » du routeur de contrôle. Exampfichier d'utilisation :
Règle la LED USR sur ON (éclairage).
3.1.11 milliards
Tableau en lecture seule avec des valeurs sur les entrées binaires du routeur. Le tableau contient les éléments liés au nombre d'entrées binaires. Par exemple, le routeur a BIN0 et BIN1 donc le tableau a des index valides 0 et 1. Les éléments du tableau peuvent avoir les valeurs 0 ou 1. Exampfichier d'utilisation :
Sortie : L'entrée binaire secondaire : 0
3.1.12 BOUT
Tableau lié aux sorties binaires du routeur. C'est similaire à B_IN mais vous pouvez également écrire des valeurs. La valeur écrite change l'état de la sortie. Exampfichier d'utilisation :
3.1.13 XBus
Objet pour travailler avec X Bus. X Bus est un bus propriétaire pour la communication entre les processus. Par exemple
vous pouvez vous abonner aux informations sur l'interface réseau montante/descendante ou aux SMS provenant d'un démon mwan. Vous pouvez également envoyer/abonner vos propres sujets entre vos candidatures.
Envoie au système une demande de surveillance pour surveiller votre application « myapp ». L'application doit envoyer ce message régulièrement au plus tard pendant la durée définie dans le message précédent (300 s dans cet exemple).ample). Timeout 0 arrête de regarder.
Sortir:
XBus.read(sujet)
Lire le message stocké de XBus. Exampfichier d'utilisation :
3.1.1 4configuration
Objet contenant la configuration du routeur. L'utilisateur peut lire un élément de configuration en obtenant une propriété d'objet et écrire un élément de configuration en définissant une propriété d'objet. Les clés d'objet sont les mêmes que les clés de configuration comme dans le paramètre files. Il est possible de rechercher un nom de clé demandé dans les paramètres associés file. Les configurations du micrologiciel sont placées dans le fichier /etc/settings.* files. La configuration de l'application Router est placée dans /opt/*/etc/settings files. Le rapport du routeur (Web UI : Statut / Journal système / Rapport de sauvegarde) contient une liste complète de la configuration actuelle et constitue peut-être le moyen le plus simple de trouver la clé de configuration demandée.
Si une clé donnée n'existe pas, une valeur lue n'est pas définie et une valeur écrite provoque une exception (en mode strict). Il n'est pas possible d'ajouter un nouvel élément de configuration non existant, mais uniquement d'en modifier un existant. Toutes les valeurs de configuration sont traitées comme des chaînes. Si l'utilisateur doit travailler avec un type différent, il doit le convertir lui-même. Le nœud n'effectue aucune validation de valeur. L'utilisateur est responsable de l'envoi des valeurs correctes. Examples:
Pour WIFI_AP_SSID=ROUTER_AP dans /etc/settings.wifi_ap (ou plutôt dans le champ SSID du formulaire WiFi • Access Point 1), la sortie sera :
Un exampvoici comment définir une valeur de configuration :
Modifie les adresses IP sur l'interface eth0
NOTE: Une nouvelle configuration est seulement écrite. Si l'utilisateur souhaite que cela s'applique à l'environnement en cours d'exécution, il est nécessaire de redémarrer le routeur ou le service associé. Par exempleampci-dessus, il est possible d'utiliser la commande shell suivante :
- Applications de routeur : icr.advantech.cz/user-modules
- Fondation JS : https://nodered.org/
Vous pouvez obtenir des documents relatifs aux produits sur Engineering Portal à l'adresse icr.advantech.cz adresse.
Pour obtenir le guide de démarrage rapide, le manuel d'utilisation, le manuel de configuration ou le micrologiciel de votre routeur, accédez au Modèles de routeur , recherchez le modèle requis et passez respectivement à l'onglet Manuels ou Micrologiciel.
Les packages d'installation et les manuels de Router Apps sont disponibles sur le Applications de routeur page.
Pour les documents de développement, rendez-vous sur Zone de développement page.
Advantech Czech sro, Sokolska 71, 562 04 Usti nad Orlici, République tchèque
Document n° APP-0080-EN, révision du 12 octobre 2023.
Documents / Ressources
![]() |
Application de routeur ADVANTECH Node.js [pdf] Guide de l'utilisateur Application de routeur Node.js, Node.js, application de routeur, application |








