it Logger Configuration - Supergiovane/node-red-contrib-knx-ultimate GitHub Wiki
A cosa serve?
Il nodo logger registra tutti i telegrammi, crea un file compatibile con la diagnostica ETS e lo rende disponibile sul payload ad intervalli regolari.
Puoi salvare il file usando un nodo "file", oppure per esempio inviarlo via FTP. Puoi aprire il file direttamente dal menu diagnostico di ETS ed analizzare o fare il replay dei telegrammi.
Inoltre, conta i telegrammi in un periodo di tempo prestabilito.
Esempi qui.
- Gateway
Seleziona il gateway.
- Topic
Topic del nodo.
- Name
Nome del nodo
- Avvia il timer automaticamente
Avvia automaticamente il timer per la creazione deil file ETS, all'avvio di node-red ed al deploy.
- Nuovo file XML ogni (in minuti)
Il nuovo file ETS verrà creato alla scadenza di questo intervallo ed inviato in uscita come payload.
- Numero massimo di righe nel file (0 = nessun limite)
Puoi limitare il numero di righe nel file. Se, durante l'intervallo specificato sopra, le righe sono maggiori del valore che hai scelto, le più vecchie vengono via via eliminate.
- Avvia il timer automaticamente
Avvia automaticamente il timer per la creazione deil file ETS, all'avvio di node-red ed al deploy.
- Intervallo conteggio (in secondi)
Indica ogni quanto emettere un messaggio sul flow, contenente il conteggio dei telegrammi. Espresso in secondi.
PIN 1: File compatibile con diagnostica ETS
Puoi salvare il payload sul filesystem o, per esempio, puoi inviarlo ad un server FTP. Successivamente lo puoi leggere con la diagnostica di ETS.
msg = {
topic:"MyLogger"
payload: "CommunicationLog xmlns=http://knx.org/xml/telegrams/01 Telegram Timestamp=2020-03-27T07:32:39.470Z Service=L_Data.ind...." (Rappresenta la stringa contenente tutto il file XML di ETS)
}
PIN 2: Contatore telegrammi KNX
Messaggio emesso dal nodo ad ogni conteggio:
msg = {
topic:"",
payload:10,
countIntervalInSeconds:5,
currentTime:"25/10/2021, 11:11:44"
}
Puoi controllare il logger attraverso dei messaggi in ingresso.
AVVIA TIMER
// Avvia il timer
msg.etsstarttimer = true;
return msg;
FERMA IL TIMER ETS
// Ferma il timer
msg.etsstarttimer = false;
return msg;
INVIA SUBITO IL PAYLOAD
// Invia subito il payload con l'XML, poi riattiva il timer (nel caso il timer fosse attivo)
msg.etsoutputnow = true;
return msg;
AVVIA TIMER
// Avvia il timer
msg.telegramcounterstarttimer = true;
return msg;
FERMA IL TIMER
// Ferma il timer
msg.telegramcounterstarttimer = false;
return msg;
INVIA SUBITO IL PAYLOAD
// Invia subito il payload con in conteggio dei telegrammi
msg.telegramcounteroutputnow = true;
return msg;
- ESEMPI