Logger
Il nodo Logger registra tutti i telegrammi e produce un file compatibile con lâXML del bus monitor ETS.
Puoi salvarlo su disco (nodo file) oppure inviarlo, ad esempio, a un server FTP. Il file può essere letto in ETS per diagnosi o per il replay dei telegrammi. Il nodo può anche contare i telegrammi al secondo (o con lâintervallo che preferisci). Esempi qui.
Impostazioni
| ProprietĂ | Descrizione |
|---|---|
| Gateway | Gateway KNX. |
| Topic | Topic del nodo. |
| Nome | Nome del nodo. |
File diagnostico BUS compatibile ETS
| ProprietĂ | Descrizione |
|---|---|
| Auto start timer | Avvia automaticamente il timer al deploy o allâavvio di NodeâRED. |
| Output new XML every (in minutes) | Ogni quanti minuti emettere il file XML compatibile con ETS. |
| Max number of rows in XML (0 = no limit) | Numero massimo di righe contenute nellâXML nellâintervallo indicato; 0 per nessun limite. |
Contatore telegrammi KNX
| ProprietĂ | Descrizione |
|---|---|
| Auto start timer | Avvia automaticamente il timer al deploy o allâavvio di NodeâRED. |
| Count interval (in seconds) | Ogni quanti secondi emettere nel flow il conteggio dei telegrammi. |
Uscite del Logger
PIN 1: file XML compatibile ETS bus monitor
Usa un nodo file per salvare msg.payload su filesystem, o invialo ad esempio a un server FTP.
msg = {
topic: "MyLogger",
payload: "CommunicationLog xmlns=http://knx.org/xml/telegrams/01 Telegram Timestamp=2020-03-27T07:32:39.470Z Service=L_Data.ind...." // stringa XML
}
PIN 2: contatore telegrammi KNX
Ad ogni conteggio, il nodo emette un messaggio come questo:
msg = {
topic: "",
payload: 10,
countIntervalInSeconds: 5,
currentTime: "25/10/2021, 11:11:44"
}
Messaggi di ingresso (INPUT)
Controllo del file XML ETS compatibile
Avvio timer
msg.etsstarttimer = true;
return msg;
Stop timer
msg.etsstarttimer = false;
return msg;
Output immediato del file ETS
// Emette subito l'XML; se il timer era attivo, lo riavvia
msg.etsoutputnow = true;
return msg;
Contatore telegrammi KNX
Avvio timer
msg.telegramcounterstarttimer = true;
return msg;
Stop timer
msg.telegramcounterstarttimer = false;
return msg;
Output immediato del conteggio
msg.telegramcounteroutputnow = true;
return msg;