

Модуль користувача
Node.js
ПРИМІТКА ДО ЗАЯВКИ

Використовувані символи
Небезпека – інформація щодо безпеки користувача або потенційного пошкодження маршрутизатора.
Увага – проблеми, які можуть виникнути в конкретних ситуаціях.
Інформація або повідомлення – корисні поради чи інформація, що представляє особливий інтерес.
Example – Впрampфайл функції, команди або сценарію.

Advantech Czech sro, Sokolska 71, 562 04 Usti nad Orlici, Czech Republic
Документ № APP-0080-EN був переглянутий 7 травня 2021 р. Випущено в Чеській Республіці.
Модуль користувача Node.js
Web Інтерфейс
Після завершення встановлення модуля графічний інтерфейс модуля можна викликати, клацнувши назву модуля на сторінці Модулі користувача маршрутизатора. web інтерфейс. Ліва частина цього графічного інтерфейсу містить меню з розділом Загальне меню. Розділ загального меню містить лише Ліцензії, що містять перелік усіх ліцензій для самого Node.js, а також пов’язаний із ним пункт Програма маршрутизатора та Повернення, який повертається з модуля web сторінку на маршрутизатор web сторінки конфігурації. Головне меню GUI модуля показано на малюнку 2.
вступ
Модуль користувача Node.js не є частиною мікропрограми маршрутизатора. Його можна завантажити з icr.advantech.cz/user-modules. Процес встановлення користувацьких модулів описаний у Посібнику з конфігурації (див. [1], [2], [3] та [4]). Цей модуль користувача сумісний лише з роутерами платформи v3 та v4!
Вузол Node.js — це власний вузол середовища виконання JavaScript на стороні сервера, доступний для стільникових маршрутизаторів Advantech. Цей вузол використовується модулями Advantech, написаними на JavaScript, але може використовуватися будь-якою іншою сторонньою програмою JavaScript для адміністрування та обслуговування маршрутизаторів.
Модуль маршрутизатора містить додавання цього вузла до вбудованих вузлів:
- node-authenticate-pam – асинхронна аутентифікація PAM для NodeJS,
- коли .js – Реалізація Promises/A+ і when(), включаючи повну прошивку ES6 Promise,
- вузол маршрутизатора - власний вузол для стільникових маршрутизаторів Advantech, детально описаний у цьому документі.
Створення користувацьких вузлів
Офіційним способом створення та встановлення вузла є використання команди npm. Однак його неможливо знайти на наших маршрутизаторах, оскільки маршрутизатор є вбудованим пристроєм з обмеженими ресурсами, а деякі вузли вимагають складного середовища побудови та високої продуктивності через інші мови, ніж JavaScript.
На щастя, легко підготувати вузол на ПК з Linux, а потім скопіювати його на маршрутизатор.
Для отримання додаткової інформації див https://icr.advantech.cz/support/faq/detail/building-the-custom-nodes-fornode-js-node-red.
Вузол маршрутизатора
Ця частина документа присвячена спеціально програмістам.
Вузол маршрутизатора (названий «маршрутизатором») надає доступ до функцій і апаратного забезпечення маршрутизатора.
Ви можете завантажити вузол Node.js у свій код за допомогою require(“router”), наприкладampле:
var r = require(“маршрутизатор”);
Ми будемо використовувати змінну r із цього прикладуample, щоб отримати доступ до всіх властивостей у наступному examples у цій примітці.
Простий прикладampрозділ використання вузла маршрутизатора
Наступна фігура – колишнійampле завантаження Node.js вузол.

Властивості вузла
2.1.1 назва продукту
Рядкова змінна лише для читання, завантажена з назвою продукту маршрутизатора. Напрampсфера використання:
console.log(r.productName);
Вихід: SPECTRE-v3T-LTE
2.1.2 код платформи
Рядкова змінна, доступна лише для читання, завантажена з кодом платформи маршрутизатора. Він підтримується маршрутизаторами
виробничі платформи v3 і v4. Напрampсфера використання:
console.log(r.platformCode);
Вихід: V3
2.1.3 серійний номер
Рядкова змінна, доступна лише для читання, завантажена з серійним номером маршрутизатора. Напрampсфера використання:
console.log(r.serialNumber);
Вихід: ACZ1100000322054
2.1.4 Версія прошивки
Рядкова змінна лише для читання, завантажена з версією мікропрограми маршрутизатора. Напрampсфера використання:
console.log(r.firmwareVersion);
Вихід: 6.2.1 (2019-10-16)
2.1.5 RTCBBatteryOK
Логічна змінна, доступна лише для читання, завантажена із станом батареї RTC маршрутизатора. Правда означає добре, неправда означає погано. Напрampсфера використання:
console.log(r.RTCBatteryOK);
Вихід: істина
2.1.6 блок живлення
Змінна десяткового числа лише для читання, завантажена блоком живлення маршрутизатора voltage. Напрampсфера використання:
console.log(r.powerSupply + 'V');
Вихід: 11.701 В
2.1.7 температура
Змінна цілого числа лише для читання, завантажена з внутрішньою температурою маршрутизатора в градусах Цельсія. Напрampсфера використання:
console.log(r.temperature + '◦ C');
Вихід: 39 ◦ C
2.1.8 usrLED
Логічна змінна лише для запису для індикатора «USR» керуючого маршрутизатора. Напрampсфера використання:
r.usrLED = правда;
Встановлює світлодіод USR на ON (освітлення).
2.1.9 bIn
Масив лише для читання зі значеннями на двійкових входах маршрутизатора. У масиві є елементи, пов’язані з низкою двійкових входів. Наприклад, маршрутизатор має BIN0 і BIN1, тому масив має дійсні індекси 0 і 1. Елементи масиву можуть мати значення 0 або 1. Наприкладampсфера використання:
console.log(“Вторинний двійковий вхід: ” + r.bIn[1]);
Вихід: вторинний двійковий вхід: 0
2.1.10 bout
Масив, пов'язаний з двійковими виходами маршрутизатора. Він схожий на B_IN, але ви також можете записувати значення.
Записове значення змінює вихідний стан. Напрampсфера використання:
console.log(r.bOut[0]);
Вихід: 1
r.bOut[0] = 0;
Встановлює перший двійковий вихід на 0.
2.1.11 XBus
Об'єкт для роботи з X Bus. X Bus — це власна шина для зв'язку між процесами.
Наприклад, ви можете підписатися на інформацію про те, який мережевий інтерфейс піднімається/вниз, або SMS від демона man. Ви також можете надсилати/підписуватися на власні теми між додатками.
XBus.publish(тема, корисне навантаження, store=false)
Надсилає повідомлення з темою рядок і корисне навантаження рядок на шину X. Напрampсфера використання:
r.xBus.publish(“watchdog/proc/myapp”, “Час очікування: 300”);
Надсилає запит на перегляд системи, щоб переглянути вашу програму «myapp». Програма повинна регулярно надсилати це повідомлення не пізніше періоду, визначеного в попередньому повідомленні (300 с у цьомуample). Тайм-аут 0 припиняє перегляд.
XBus.subscribe(тема, зворотний дзвінок)
Підписується, щоб отримувати повідомлення з темою. Напрampсфера використання:
функція:
xbus.subscribe(“status/mobile/mwan0”, (msg) => {console.log(msg.payload);});
Асинхронний вихід:
Реєстрація: домашня мережа
Технологія: LTE
Потужність сигналу: -88 дБм
Якість сигналу: -8 дБ
XBus.unsubscribe(тема)
Відписатися від теми. Напрampсфера використання:
r.XBus.unsubscribe(id);
Припиняє отримувати інформацію про реєстрацію в мережі від попереднього example.
XBus.list()
Перелік збережених повідомлень. Напрampсфера використання:
r.XBus.list();
Вихід:
[ 'iface/ipv4/mwan0/config',
'iface/ipv4/mwan0/running',
'iface/ipv4/mwan1/config',
'iface/ipv4/mwan1/running',
"status/mobile/mwan0",
"status/mobile/mwan1",
'watchdog/proc/bard',
'watchdog/proc/bard6',
'watchdog/proc/mwan1d',
'watchdog/proc/mwan2d',
'watchdog/proc/mwanxd' ]
XBus.read(тема)
Читання збережених повідомлень із XBus. Напрampсфера використання:
r.XBus.read('face/ipv4/mwan0/config');
Вихід:
Вгору: 1
Лице: usb0
Адреса: 10.184.131.221
Шлюз: 192.168.253.254
DNS1: 217.77.165.211
DNS2: 217.77.165.81
[1] Advantech Czech: Посібник із налаштування SmartStart (MAN-0022-EN)
[2] Advantech Czech: Посібник із налаштування SmartFlex (MAN-0023-EN)
[3] Advantech Czech: Посібник із налаштування SmartMotion (MAN-0024-EN)
[4] Advantech Czech: Посібник з конфігурації ICR-3200 (MAN-0042-EN)
[5] Модулі користувача: icr.advantech.cz/user-modules
[6] JS Foundation: https://nodered.org/
[EP] Документи та програми, пов’язані з продуктом, можна отримати на Інженерному порталі за адресою icr.advantech.cz адресу.
Документи / Ресурси
![]() |
ADVANTECH RouterApp Node.js [pdfПосібник користувача ADVANTECH, RouterApp, Node.js |




