node-red-contrib-knx-ultimate
Version:
Control your KNX and KNX Secure intallation via Node-Red! A bunch of KNX nodes, with integrated Philips HUE control, ETS group address importer, and KNX routing between interfaces. Easy to use and highly configurable.
32 lines (25 loc) • 1.81 kB
HTML
<script type="text/markdown" data-help-name="knxUltimateAI">
Este nodo escucha **todos los telegramas KNX** del gateway KNX Ultimate seleccionado, genera estadísticas, detecta anomalías simples y (opcionalmente) puede consultar a un LLM para producir un análisis en lenguaje natural.
## Qué hace
- Mantiene un historial deslizante de telegramas KNX (ya decodificados por KNX Ultimate) en RAM.
- Emite **resúmenes de tráfico** de forma periódica o bajo demanda (Top GA, tipos de evento, tasa).
- Emite **eventos de anomalía** (tasa del bus demasiado alta, spam en GA, “flapping”).
- Opcional: consulta a un LLM usando el comando `ask`.
## Salidas
1. **Resumen/Estadísticas** (`msg.payload` es JSON)
2. **Anomalías** (`msg.payload` es JSON con detalles)
3. **Asistente IA** (`msg.payload` es texto; incluye `msg.summary`)
## Comandos (pin de entrada)
Envía un mensaje con `msg.topic`:
- `summary` (o vacío): emite un resumen inmediatamente
- `reset`: limpia historial y contadores
- `ask`: pregunta al LLM usando resumen + tráfico reciente
Para `ask`, escribe la pregunta en `msg.prompt` (recomendado) o en `msg.payload` (string).
## Contexto del LLM (mejores respuestas)
Con el comando `ask`, el nodo puede enviar contexto adicional al LLM:
- **Inventario del flow**: lista de nodos KNX Ultimate presentes en tus flows de Node-RED (ayuda a relacionar telegramas con la lógica).
- **Fragmentos de documentación**: extractos relevantes de help/README/ejemplos (y `docs/wiki` si está disponible).
## Notas
- Si habilitas el LLM, la información del bus se enviará al endpoint configurado. Usa un proveedor local si quieres mantener los datos on‑premise.
- Para OpenAI, pega **solo** la API key (empieza por `sk-`). No pegues `Bearer ...` ni toda la cabecera `Authorization: ...`.
</script>