NEWS
[Neuer Adapter] SIA DC-09 Server für Alarmanlagen
-
Hallo,
ich stelle einen weiteren Adapter zur Verfügung um Nachrichten von/aus Alarmanlagen zu empfangen. Unterstützt wird das standardisiertes Protokoll SIA DC-09. Das Protokoll wird von vielen Alarmanlagenherstellern wie ABUS, Lupusec, usw. unterstützt.
Mehr Infos zu SIA DC-09 findet ihr https://www.yumpu.com/en/document/view/47594214/dc-09-preparing-for-ansi-public-review-security-industry-/. Wie die SIA Nachrichten aussehen, könnt ihr mit dem http://s545463982.onlinehome.us/DC09Gen/ testen.
Ich selber habe den Adapter mit der Alarmanlage Lupusec XT2 getestet. Es wäre toll, wenn jemand den SIA Adapter mit einem anderen Hersteller als Lupusec testen könnte!
Folgende Felder werden im Adapter angezeigt:
Entscheidend ist das "msgdata" Feld. Dort wird der Zustand verschlüsselt wie z.B. Einbruch, Feueralarm, … Die Beschreibung der verschiedenen Events findet Ihr http://alarmsbc.com/tech/pdf/sia.pdf
ioBroker SIA Adapter : https://github.com/schmupu/ioBroker.sia
Über Feedback freue ich mich!
-
Hier ein bisschen Entwickler-Feedback:
-
Du hast in lib/test nochmal die Test Files. Doppelt … Denke können da weg
-
Bitte auch in io-package ein common.license einfügen mit der Lizenz
-
Wenn du on(objectchange) oder on(stateChange) nicht brauchst mach es raus.
-
Du solltes deleteObjects und createObjects nacheinander ausführen. Parallel kann komische Effekte haben! AM besten das zweite per callback nach dem ersten aufrufen.
Sonst ggf ein Reconnect falls die Verbindung mal abgebrochen wird?
Ingo
-
-
Hier ein bisschen Entwickler-Feedback:
-
Du hast in lib/test nochmal die Test Files. Doppelt … Denke können da weg
-
Bitte auch in io-package ein common.license einfügen mit der Lizenz
-
Wenn du on(objectchange) oder on(stateChange) nicht brauchst mach es raus.
-
Du solltes deleteObjects und createObjects nacheinander ausführen. Parallel kann komische Effekte haben! AM besten das zweite per callback nach dem ersten aufrufen.
Sonst ggf ein Reconnect falls die Verbindung mal abgebrochen wird?
Ingo `
Guten Morgen,
die Punkte 1. und 3. habe ich umgesetzt und kommen mit der nächsten Version.
Ist Punkt 4. (deleteObjects und createObjects) relevant, obwohl es sich um komplett unterschiedliche IDs handelt. DeleteObject wird nur ausgeführt wenn ein channel + states gelöscht wird, CreateObject wenn ein neuer noch nicht vorhandener Channel + States dazu kommt (es kann dabi nicht der zu löschende channel + state sein)?
Kannst Du mir mit dem Reconnect weiterhelfen? Meinst Du damit die serverStart() Funktion? Und wie setzte ich das am besten um?
function serverStart() { server = net.createServer(onClientConnected); server.listen(adapter.config.port, adapter.config.bind, function() { var text = 'SIA Server listening on IP-Adress: ' + server.address().address + ':' + server.address().port; adapter.log.info(text); }); }
-
-
@tstueben:Ist Punkt 4. (deleteObjects und createObjects) relevant, obwohl es sich um komplett unterschiedliche IDs handelt. DeleteObject wird nur ausgeführt wenn ein channel + states gelöscht wird, CreateObject wenn ein neuer noch nicht vorhandener Channel + States dazu kommt (es kann dabi nicht der zu löschende channel + state sein)? `
Hm, wenn das so ist dann sollte es egal sein.
@tstueben:Kannst Du mir mit dem Reconnect weiterhelfen? Meinst Du damit die serverStart() Funktion? Und wie setzte ich das am besten um?
function serverStart() { server = net.createServer(onClientConnected); server.listen(adapter.config.port, adapter.config.bind, function() { var text = 'SIA Server listening on IP-Adress: ' + server.address().address + ':' + server.address().port; adapter.log.info(text); }); } ```` `
ICh würde hier den Connect Vorgang in eine Funktion packen und nach einem Close des Servers (wo Du glaube schon loggst) einfach mit "setTimeout(serverStart, 2000)" nach 2s später einfach neu verbinden
-
Hallo,
ich hoffe Ihr könnt mir helfen. Ich suche Tester für den SIA Adapter. Voraussetzung ist eine Alarmanlage die das SIA Protokoll (SIA DC-09) unterstützt. Momentan wurde und wird der Adapter mit der Lupusec XT2 Plus und INIM Electronics Alarmanlage getestet. Ich habe jetzt eine AES Verschlüsselung eingebaut. Leider unterstützt die Lupusec keine encrypted SIA Nachrichten. Daher suche ich jemanden, der die Funktionalität testen könnte.
Dafür bitte die Version 0.1.6 unter Adapter / Installieren aus eigener URL https://api.github.com/repos/schmupu/io … evelopment installieren.
Das standardisierte SIA Protokoll nutzen Notrufzentralen / Sicherheitszentralen um Ereignisse (Einbruch, Brand, …) von Alarmanlagen zu empfangen und auszuwerten.
Ein SIA Satz sieht z.B. wie folgt aus:
��004D"SIA-DCS"1716L0#alarmanlage[alarmanlage|Nri2OP0001user]_10:51:26,10-25-2018
OP steht z.B. für opening / alarm disarm
VG
Stübi
-
cool, werde ich testen mit abus.
wäre auch umgekehrt möglich?
Also IOB sendet an SIA Server
-
cool, werde ich testen mit abus.
wäre auch umgekehrt möglich?
Also IOB sendet an SIA Server `
Super, dass Du testest! Ich bin gespannt. Momentan ist der SIA Adapter ein SIA Server und empfängt nur Nachrichten von Alarmanlagen wie z.B. ABUS, Lupusec, … Die SIA Nachrichten werden von ioBroker mit einem ACK oder NACK bestätigt.
-
cool, werde ich testen mit abus.
wäre auch umgekehrt möglich?
Also IOB sendet an SIA Server `
Und? Mal mit Abus getestet? -
bin leider noch nicht dazu gekommen (berufliche veränderung), werde aber dran bleiben und es testen
-
Hallo, ich nutze den Adapter mit Telenot Complex 200 + comXline 3516-2 IP ISDN Firmw. 19.53 Übertragungsgerät.
Funktioniert soweit gut, ich steuere über ioBroker eine WebCam bzw. WLAN Steckdose. Bei Scharf / Unscharf Stellung wird die WebCam an und ausgeschaltet. Das Übertragungsgerät sendet per Netzwerk Nachrichten an ioBroker, als Protokoll habe ich dort SIA DC-09 Contact-ID eingestellt.
VG
Dimi -
@Amid , klasse freue mich über Feedback!
-
Ab Morgen gibt es den Adapter in Version 1.0.1 im Latest Repository. Wer nicht warten möchte, kann die Version jetzt schon unter https://github.com/schmupu/ioBroker.sia beziehen.
Es gibt eine Reihe von Änderungen (auch Fehlerbehebungen).- Passwörter werden verschlüsselt gespeichert. Unter Umständen müsst Ihr Euer Kennwort nochmals eingeben in ioBroker eingeben (nur der Fall wenn Ihr AES Verschlüsselung nutzt).
- ACK (SIA Meldung wurde erfolgreich verarbeitet) wurde und NAK (SIA Meldung konnte nicht verarbeitet werden) wurden überarbeitet. Da war vorher ein Fehler drin.
- Die CRC Erkennung kann nun mit folgenden Formaten umgehen: 0xABCD (2 Byte) oder ABCD (4 Byte, ASCII). Leider ist die CRC Implementierung bei den Herstellern unterschiedlich. Das richtige Format wird automatisch erkannt.
- AES Passwort Unterstützung (AES-128-CBC, AES-192-CBC oder AES-256-CBC). Verschlüsselte SIA Meldungen bietet nicht jeder Hersteller an.
- AES Passwort kann in Byte (= 1 Zeichen) oder in Hex angegeben werden. Das Passwort muss genau 16, 24 oder 32 Zeichen lang sein. Bei Eingabe im Hex Format genau 32, 48 oder 64 Zeichen lang. AES Verschlüsselung bieten nicht alle Hersteller an.
- Festlegung wie alte eine Nachricht sein darf. Ist die Nachricht älter las n Sekunden (Timeout) wird statt ACK (Bestätigung) ein NAK (Nachricht nicht bestätigt) geschickt. Ein Timeout von 0 bedeutet keine Prüfung (Default Wert).
- Bei verschlüsseltem ACK war ein Fehler im Padding drin. Wurde jetzt behoben.
- Nur wenn die Nachricht ein ACK (Bestätigt wird), wird auch der ioBroker Status gefüllt. Im anderen Fall wird die SIA Nachricht verworfen.
Wir Ihr seht, gibt es viele kleine Anpassungen. Über Feedback würde ich mich sehr freuen.
VG
Stübi -
Hallo, ich habe es jetzt endlich geschafft und wollte den Adapter testen, leider funktioniert dies mit dem ABUS AZWG10200 (welches ich nur verbaue) nicht, da ich nach der IP Adresse keinen Ordner mit angeben kann.
Kann man da evtl was machen?
Danke
-
@butsch, was meinst Du mit Ordner? Ich habe mal in das Handbuch von ABUS geschaut. Du musst die ABUS Alarmanlage wie auf S.21 beschrieben konfigurieren:
D.h. SIA-DC09 auswählen, Idennr. festlegen (ist die Account Number im Adapter) und AES Key festlegen (muss bei AES128 genau 16 Hex Zeichen lang sein). Den musst Du auch im Adapter hinterlegen
-
Ich kann im AZWG nicht Ip Adresse/sia angeben, nur die IP Adresse:
192.168.168.1 = ok
192.168.168.1/sia = nicht ok -
@butsch sagte in [Neuer Adapter] SIA DC-09 Server für Alarmanlagen:
ht Ip Adresse/sia a
Die Notation IP://<ip-adresse>/SIA gilt nur für die Lupusec Alarmanlage. Die Notation ist dem SIA Adapter egal. Du musst wie in dem ABUS Handbuch beschrieben vorgehen. Ich bin ganz sicher, dass der Adapter auch mit ABUS funktioniert, da das SIA Protokoll Hersteller unabhängig ist. Ich habe Kontakt zu unterschiedlichen Alarmanlagenfirmen, die den Adapter für Ihre Entwicklung zum Testen nutzen. Funktioniert bei allen problemlos.
Also weiter versuchen!VG
-
@Amid Hallo ,
Was hast du denn im Wählgerät eingestellt. -
@Stuebi hallo.
Ich versuche Derzeit die neue Gira Connect Alarmanlage auf den Adapter zu bekommen.
Leider zeigt die Zentrale mir immer an das keine Verbindung besteht. Die Konfiguration lässt nichts anderes zu: -
@Lexren , ich kenne die Alarmanlage nicht. Hast Du den Port am ioBroker SIA Adapter auch auf 8085 gestellt wie in Deiner Alarmanlagen Konfiguration? Und ioBroker läuft auf der IP Adresse 192.168.178.134?
Was steht denn im ioBroker Logfile zum SIA Adapter? Unter Umständen musst Du einmal die Alarmanlage aktivieren/deaktivieren damit eine SIA Nachricht an den ioBroker SIA Adapter geschickt wird. Wenn Du keine Nachrichten siehst, stimmt etwas an Deiner Verbindung nicht.VG
Stübi -
@Stuebi danke für deine schnelle Reaktion und frohe Weihnachten.
Ich habe mehrere Ports probiert. Natürlich immer auf beiden Seiten.
Ja darunter findet sich der iobroker.
Leider findet sich im log nichts, die Alarmanlage sagt auch das es Probleme bei der Verbindung gibt, leider lässt sich hier aber nichts weiter einstellen.
Ich versuche es mal weiter.