Inoltro eventi KNX da NVR e VMS: Milestone, Genetec e Synology Surveillance Station
Le piattaforme NVR e VMS aziendali eseguono già sofisticate rilevazioni di movimento e analisi di eventi a livello software. Inoltrare questi eventi generati dal software a KNX — tramite webhook HTTP, integrazione SDK o middleware — crea una fonte di trigger molto più ricca delle uscite relè delle telecamere, con eventi per telecamera, per zona e filtrati nel tempo.
Approcci di inoltro eventi NVR/VMS
Tre distinti modelli di integrazione coprono la gamma di piattaforme NVR/VMS incontrate nelle installazioni commerciali e residenziali. L'approccio giusto dipende dalla piattaforma installata e dall'infrastruttura KNX disponibile per ricevere gli eventi.
| Approccio | Piattaforme | Metodo di scrittura KNX | Complessità |
|---|---|---|---|
| Webhook HTTP → ARISTO BewO | Synology Surveillance, piccoli NVR | BewO riceve HTTP POST → scrive su KNX GA | Basso |
| Azione HTTP → middleware | Milestone XProtect | Notifica HTTP XProtect → Home Assistant → KNX | Medio |
| Regola evento SDK → HTTP POST | Genetec Security Center | Evento SDK Genetec → servizio personalizzato → KNX IP | Alto |
| Sottoscrizione eventi ONVIF | Qualsiasi NVR/videocamera compatibile ONVIF | Nodo Node-RED ONVIF → scrittura KNX | Medio |
Integrazione notifiche HTTP Milestone XProtect
Le edizioni Milestone XProtect Corporate ed Expert includono un'azione di notifica HTTP nel loro motore di regole eventi. Ciò consente a qualsiasi evento VMS – movimento, segnalibri, analisi, accesso porta – di attivare un HTTP POST verso un ricevitore esterno, che può quindi scrivere su indirizzi di gruppo KNX.
Configurazione regola evento Milestone XProtect
XProtect Management Client → Rules and Events → Rules → New Rule
Rule name: CAM-01 Motion → KNX Alarm
Trigger: Event → Devices → Camera → Motion Started
Camera: [CAM-01 Entrance]
Schedule: Always (or restricted hours for arming logic)
Actions:
Action type: Send HTTP notification
URL: http://<ARISTO-BewO-IP>:8080/knx/write
Method: POST
Content-Type: application/json
Body:
{
"groupAddress": "8/0/1",
"value": 1,
"dpt": "1.001"
}
Second rule for Motion Stopped:
Trigger: Motion Stopped → same camera
Body: { "groupAddress": "8/0/1", "value": 0, "dpt": "1.001" }
Note: XProtect Express does not include HTTP notification actions
— requires at least XProtect Professional for HTTP action typeAlternativa a Home Assistant: se ARISTO BewO non è disponibile, configurare la notifica HTTP di XProtect per puntare a un webhook di Home Assistant. Un'automazione di Home Assistant chiama quindi il knx.send servizio per scrivere sull'indirizzo di gruppo KNX. Ciò richiede HA con integrazione KNX e tunneling KNXnet/IP.
Integrazione eventi SDK Genetec Security Center
Genetec Security Center utilizza un SDK proprietario (Security Center SDK) per le integrazioni esterne. L'approccio consigliato per l'integrazione KNX è un servizio Windows leggero o uno script Python che si sottoscrive agli eventi Genetec tramite SDK e li traduce in scritture di indirizzi di gruppo KNXnet/IP.
Scheletro middleware Python Genetec → KNX
# Genetec SDK events → KNX via knx-stack (xknx Python library)
# Requires: Genetec Security Center SDK licence + xknx
from xknx import XKNX
from xknx.core import XknxConnectionState
import Genetec.Sdk # Genetec SDK .NET assembly via pythonnet
GA_MOTION_CAM01 = "8/0/1"
async def on_genetec_event(event):
if event.EntityType == "Camera" and event.EventType == "MotionDetected":
camera_name = event.Entity.Name
if camera_name == "CAM-01 Entrance":
async with XKNX() as xknx:
await xknx.core.start()
from xknx.remote_value import RemoteValueSwitch
await xknx.telegrams.put(
Telegram(
destination_address=GroupAddress(GA_MOTION_CAM01),
payload=GroupValueWrite(DPTBinary(1))
)
)
# Alternatively: Genetec → HTTP POST → ARISTO BewO
# Using Genetec Event-to-Action: HTTP action on motion event
# POST to BewO endpoint with JSON body (same as Milestone approach)
# Requires Genetec Config Tool → System → General Settings → ActionsWebhook Synology Surveillance Station a Home Assistant KNX
Synology DSM Surveillance Station supporta webhook in uscita per eventi di rilevamento movimento – rendendola la piattaforma NVR più semplice da integrare con KNX per siti residenziali o commerciali di piccole e medie dimensioni. Il webhook punta a un trigger webhook di Home Assistant, che poi scrive su KNX tramite l'integrazione HA KNX.
Configurazione Synology → Home Assistant → KNX
Step 1: Synology Surveillance Station
Notification > Push Service > Webhook
URL: http://<HA-IP>:8123/api/webhook/synology_motion_cam01
Method: POST
Trigger: Motion Detected — Camera: CAM-01 Entrance
Step 2: Home Assistant automation (automations.yaml)
trigger:
- platform: webhook
webhook_id: synology_motion_cam01
local_only: true
action:
- service: knx.send
data:
address: "8/0/1"
payload: 1
type: "1byte_unsigned"
# Clear alarm after 30 seconds:
- delay: "00:00:30"
- service: knx.send
data:
address: "8/0/1"
payload: 0
type: "1byte_unsigned"
Step 3: KNX integration (configuration.yaml)
knx:
tunneling:
host: <KNX-IP-router-address>
port: 3671
local_ip: <HA-machine-IP>Limitazione Synology: I webhook di Surveillance Station non includono eventi di fine movimento – solo inizio movimento. L'automazione di Home Assistant deve implementare un timer a durata fissa (30–60 secondi) per cancellare il GA di allarme KNX, invece di attendere un webhook di movimento fermato.
ARISTO BewO riceve HTTP POST e scrive su GA KNX
ARISTO BewO è un server di gestione degli edifici nativo KNX che include un server HTTP integrato per ricevere richieste POST esterne e convertirle direttamente in scritture di indirizzi di gruppo KNX. Ciò lo rende il percorso di integrazione più diretto quando BewO fa già parte dell'installazione KNX.
Configurazione ARISTO BewO HTTP → KNX
BewO web interface → Interfaces → HTTP Listener
Endpoint definition:
Path: /knx/write
Method: POST
Authentication: Basic auth (configure username/password)
JSON body mapping:
{ "groupAddress": "8/0/1", "value": 1, "dpt": "1.001" }
→ BewO parses groupAddress and value
→ Writes DPT 1.001 value 1 to GA 8/0/1 on KNX bus
Test with curl:
curl -X POST http://<BewO-IP>:8080/knx/write -H "Content-Type: application/json" -u admin:password -d '{"groupAddress":"8/0/1","value":1,"dpt":"1.001"}'
Expected: HTTP 200 OK
ETS6 Group Monitor: GA 8/0/1 telegram appears within 200ms
Reverse direction — KNX-driven recording trigger:
BewO monitors GA 8/3/0 (Alarm Armed = 1)
→ BewO HTTP client POSTs to NVR API:
Milestone: XProtect REST API /recording/start
Synology: http://<NAS>/webapi/entry.cgi (surveillance API)
→ Camera starts continuous recording on alarm armPattern di integrazione comuni e topologia
La scelta del pattern di integrazione dovrebbe essere guidata dall'infrastruttura esistente piuttosto che dall'aggiunta di nuovo hardware. La seguente logica decisionale copre le configurazioni di sito più comuni.
Synology NAS + HA già in loco
Webhook Synology → HA → KNX. Nessun hardware aggiuntivo. Integrazione KNX già configurata.
Sforzo di integrazione: 30 minutiMilestone XProtect + ARISTO BewO
Notifica HTTP XProtect → listener HTTP BewO → scrittura GA KNX. Diretto e affidabile.
Sforzo di integrazione: 1 oraGenetec + KNX standalone (senza HA/BewO)
Evento Genetec → HTTP POST → nodo KNX Node-RED. Node-RED funziona su qualsiasi host Docker.
Sforzo di integrazione: 3–4 oreQualsiasi NVR + nessun middleware esistente
Distribuisci ARISTO BewO o HA. BewO preferito per siti KNX puri – HA preferito quando l'home automation è già pianificata.
Sforzo di integrazione: Giornata interaHai bisogno di un inoltro eventi NVR–KNX integrato in un quadro costruito su specifica?
Progettiamo installazioni KNX con integrazione eventi Milestone, Genetec e Synology, configurazione ARISTO BewO e documentazione di commissioning completa — consegnate testate presso il vostro sito.
Richiedi un preventivo →