

Módulo de Usuário
Node.js
NOTA DE APLICAÇÃO

Símbolos usados
Perigo - Informações relacionadas à segurança do usuário ou possíveis danos ao roteador.
Atenção - Problemas que podem surgir em situações específicas.
Informações ou avisos - Dicas úteis ou informações de interesse especial.
Example - Examparquivo de função, comando ou script.

Advantech Czech sro, Sokolska 71, 562 04 Usti nad Orlici, República Tcheca
O documento nº APP-0080-EN foi revisado em 7 de maio de 2021. Lançado na República Tcheca.
Módulo de usuário Node.js
Web Interface
Assim que a instalação do módulo for concluída, a GUI do módulo pode ser chamada clicando no nome do módulo na página Módulos do usuário do roteador web interface. A parte esquerda desta GUI contém um menu com uma seção de menu Geral. A seção do menu geral contém apenas as licenças contendo a lista de todas as licenças para o próprio Node.js e também o aplicativo de roteador relacionado e o item de retorno, que alterna do módulo web página para o roteador web páginas de configuração. O menu principal da GUI do módulo é mostrado na Figura 2.
Introdução
O módulo de usuário Node.js não faz parte do fi rmware do roteador. Ele pode ser baixado de icr.advantech.cz/módulos-de-usuário. O processo de instalação dos módulos de usuário está descrito no Manual de Configuração (ver [1], [2], [3] e [4]). Este módulo de usuário é compatível apenas com roteadores de plataforma v3 e v4!
O nó Node.js é um nó de ambiente de tempo de execução JavaScript do lado do servidor proprietário disponível para roteadores celulares Advantech. Este nó é usado por módulos Advantech escritos em JavaScript, mas pode ser usado por qualquer outro aplicativo JavaScript de terceiros para administração e manutenção de roteadores.
O módulo do roteador contém a adição deste nó aos nós integrados:
- nó-autenticar-pam - autenticação PAM assíncrona para NodeJS,
- quando.js - Implementação de Promises / A + e when (), incluindo um shim de Promessa ES6 completo,
- nó do roteador - um nó proprietário para os roteadores celulares da Advantech descritos neste documento em detalhes.
Construindo os nós personalizados
Uma maneira oficial de construir e instalar um nó é usando o comando npm. No entanto, não é possível encontrá-lo em nossos roteadores, pois o roteador é um dispositivo embutido com recursos limitados e alguns nós requerem um ambiente de construção complexo e alto desempenho por causa de outras linguagens além do JavaScript.
Felizmente, é fácil preparar um nó em um PC com Linux e depois copiá-lo para o roteador.
Para mais detalhes veja https://icr.advantech.cz/support/faq/detail/building-the-custom-nodes-fornode-js-node-red.
Nó Roteador
Esta parte do documento é dedicada especialmente a programadores.
O nó do roteador (denominado “roteador”) fornece acesso às funções e hardware específicos do roteador.
Você pode carregar o nó Node.js em seu código por require (“roteador”), por exampem:
var r = requer (“roteador”);
Usaremos a variável r deste example para acessar todas as propriedades no próximo examples nesta nota.
Ex Simplesample de uso do nó do roteador
A próxima figura é um example de carregar o Node.js nó.

Propriedades do Nó
2.1.1 Nome do produto
Variável de string somente leitura carregada com o nome do produto do roteador. Example de uso:
console.log (r.productName);
Saída: SPECTER-v3T-LTE
2.1.2 código da plataforma
Variável de string somente leitura carregada com o código de plataforma do roteador. É suportado por roteadores de
plataformas de produção v3 e v4. Example de uso:
console.log (r.platformCode);
Saída: V3
2.1.3 número de série
Variável de string somente leitura carregada com o número de série do roteador. Example de uso:
console.log (r.serialNumber);
Saída: ACZ1100000322054
2.1.4 FirmwareVersion
Variável de string somente leitura carregada com a versão do firmware do roteador. Example de uso:
console.log (r.firmwareVersion);
Resultado: 6.2.1 (2019/10/16)
2.1.5 RTCBateriaOK
Variável booleana somente leitura carregada com o estado da bateria RTC do roteador. Verdadeiro significa OK, falso significa ruim. Example de uso:
console.log (r.RTCBatteryOK);
Saída: verdadeiro
2.1.6 fonte de energia
Variável de número decimal somente leitura carregada com a fonte de alimentação do roteador voltage. Example de uso:
console.log (r.powerSupply + 'V');
Saída: 11.701 V
2.1.7 temperatura
Variável de número inteiro somente leitura carregada com a temperatura interna do roteador em graus Celsius. Example de uso:
console.log (r.temperatura + '◦ C');
Saída: 39 ◦ C
2.1.8 LED usr
Variável booleana somente gravação para o LED “USR” do roteador de controle. Example de uso:
r.usrLED = verdadeiro;
Define o LED USR para ON (iluminação).
2.1.9 bEm
Array somente leitura com valores nas entradas binárias do roteador. A matriz possui itens relacionados a várias entradas binárias. Por exemplo, o roteador tem BIN0 e BIN1, então a matriz tem índices válidos 0 e 1. Os itens da matriz podem ter valores 0 ou 1. Example de uso:
console.log (“A entrada binária secundária:” + r.bIn [1]);
Saída: A entrada binária secundária: 0
2.1.10 ataque
Matriz relacionada às saídas binárias do roteador. É semelhante a B_IN, mas você também pode escrever valores.
O valor escrito altera o estado de saída. Example de uso:
console.log (r.bOut [0]);
Saída: 1
r.bOut [0] = 0;
Define a primeira saída binária para 0.
2.1.11 XBus
O objeto para trabalhar com o X Bus. X Bus é um barramento proprietário para comunicação entre processos.
Por exemplo, você pode assinar informações sobre a interface de rede que sobe / desce ou SMS de um man daemon. Você também pode enviar / inscrever seus próprios tópicos entre seus aplicativos.
XBus.publish (tópico, carga útil, armazenamento = falso)
Envia mensagem com String de tópico e String de carga útil para X Bus. Example de uso:
r.xBus.publish (“watchdog / proc / myapp”, “Timeout: 300”);
Envia para a solicitação de monitoramento do sistema para monitorar seu aplicativo “myapp”. O aplicativo deve enviar esta mensagem regularmente, o mais tardar no período de fi nido na mensagem anterior (300 s neste example). O tempo limite 0 para de assistir.
XBus.subscribe (tópico, retorno de chamada)
Inscreve-se para receber mensagens com tópico. Example de uso:
Função:
xbus.subscribe (“status / mobile / mwan0”, (msg) => {console.log (msg.payload);});
Saída assíncrona:
Registro: Rede Doméstica
Tecnologia: LTE
Força do sinal: -88 dBm
Qualidade do sinal: -8 dB
XBus.unsubscribe (tópico)
Cancele a assinatura do tópico. Example de uso:
r.XBus.unsubscribe (id);
Pára de receber informações sobre o registro para a rede do ex anteriorampeu.
XBus.list ()
Lista as mensagens armazenadas. Example de uso:
r.XBus.list ();
Saída:
['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 (tópico)
Leia as mensagens armazenadas do XBus. Example de uso:
r.XBus.read ('face / ipv4 / mwan0 / config');
Saída:
Para cima: 1
Iface: usb0
Endereço: 10.184.131.221
Gateway: 192.168.253.254
DNS1: 217.77.165.211
DNS2: 217.77.165.81
[1] Advantech Czech: Manual de configuração SmartStart (MAN-0022-EN)
[2] Advantech Checo: Manual de Configuração SmartFlex (MAN-0023-EN)
[3] Advantech Czech: Manual de configuração SmartMotion (MAN-0024-EN)
[4] Advantech Checo: Manual de configuração ICR-3200 (MAN-0042-EN)
[5] Módulos de usuário: icr.advantech.cz/módulos-de-usuário
[6] Fundação JS: https://nodered.org/
[EP] Documentos e aplicativos relacionados ao produto podem ser obtidos no Portal da Engenharia em icr.advantech.cz endereço.
Documentos / Recursos
![]() |
Aplicativo de roteador ADVANTECH Node.js [pdf] Guia do Usuário Advantech, Routerapp, Node.js |




