UNPKG

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
<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>