da ich kürzlich meine Mobotix T25 Gegensprechanlage samt Kamera und RFID in Betrieb genommen habe und dafür einzelne Skripte geschrieben habe, dachte ich mit eine Konsolidierung innerhalb eines Moduls wäre Sinnvoll.
Das Modul möchte ich an dieser Stelle nun mit euch teilen:
https://github.com/daschaefer/SymconT25.git
In dieser ersten Version ist der Funktionsumfang noch recht überschaubar.
Die Doku findet ihr auf Github.
Dennoch viel Spaß damit.
Bei Fragen oder Funktionswünschen, bitte her damit.
Derzeit noch nicht, du müsstest für den Öffentlichen Zugang das Live Preview freischalten.
Das geht unter Admin Menu -> Gruppen-Zugriffskontrolle (ACL) in der T25:
Ich habe mir die Sache mit dem Login einmal angesehen, scheint nicht so einfach zu lösen zu sein.
Mittels http://username:password@restlicheurl kommt man da leider nicht weiter.
soweit so gut, Hook wird ausgeführt wenn ich zB den Klingelknopf der T25 betätige, allerdings kommt danach keine weitere Aktion. Keine letzte Aktion, keine Meldung im Meldungsfenster, nichts …
Eigentlich ganz einfach:
Es wird automatisch eine Variable für jedes Ereignis angelegt/aktualisiert (sobald eine Aktion an der Klingel durchgeführt wird) beispielsweise:
Ring = Klingeln
Granted RFID Access = RFID Zugang
etc.
Nun baust du dir ein Skript was das tut was du möchtest, und dieses Skript versiehst du dann mit einem Ereignis basierend auf einer dieser Variablen - fertig.
Mein Modul ist nur die Middleware zwischen Hardware und deinem Skript, denn ich weiß ja nicht was du alles machen willst
Habt ihr das bei eurer T25 auch, dass manchmal das Klingeln verschluckt wird ?
Es wird weder an Symcon gemeldet noch auf den internen Telefonen angerufen. Ist nicht reproduzierbar und absolut sporadisch, hab schon überlegt ob ich den Mobotix Support dazu mal befragen sollte.
ich glaube das liegt an der Mobotix, da ich dieses schon öfter an anderen Systemen gehabt hatte. (DOMIQ Base, myGekko)
Ab und an scheint mal so ein „Event“ nicht versendet zu werden, war echt sporadisch und nicht nachvollziehbar.
Ist aber schon 2 Jahre her, als ich die Kopplungen gemacht habe, war mal mein Job.
Wir konnten den Fehler nie finden. Ich frage aber mal meinen ehemaligen Arbeitgeber, der war Heute auf einer Mobotix Schulung.
Mal sehen …
ich hab mir mal 2 Interne Ereignisse bei der Mobotix angelegt:
einmal „RFID ok“ und einmal „RDIF falsch“:
Ereignissensor-Typ „Türstation“ und Vorfall „Tür: Korrekte RFID“ bzw. „Tür: Falsche RFID“
je nach Karte kommt dann das Event im IPS an und triggert bei mir auf Variablenänderung folgendes Script:
<?
if($_IPS['EVENT'] == 37858 /*[Allgemein\Stiegenhaus\Mobotix\RFID User\]*/) {
$url = "http://USER:PASSWORD@MOBO-IP/admin/concierge/doplog?format=csv";
$row = 0; // Anzahl der Arrays
$handle = fopen ($url,"r"); // Datei zum Lesen öffnen
while ( ($data = fgetcsv ($handle, 1000, ",")) !== FALSE ) { // Daten werden aus der Datei
// in ein Array $data gelesen
$num = count ($data); // Felder im Array $data
// werden gezählt
#print "<p> $num fields in line $row: <br>
";
$row++; // Anzahl der Arrays wird
$textline[$row] = $data[2];
}
fclose ($handle);
$name = explode(" ", $textline[$row]);
SetValueString(57184 /*[Allgemein\Stiegenhaus\Mobotix\letzte RFID-Karte]*/, trim($name[0]));
}
if($_IPS['EVENT'] == 59434 /*[Allgemein\Stiegenhaus\Mobotix\RFID User\]*/) {
SetValueString(57184 /*[Allgemein\Stiegenhaus\Mobotix\letzte RFID-Karte]*/, "Zugriff verweigert!");
}
?>
noch eine String-Variable anlegen, die ID’s, Username, Passwort, IP anpassen und freuen g
Wenn du mir sagen kannst wie man beim Parameter Aufruf vom Hook die Daten übermittelt sollte das kein Problem sein. Ich habe dafür keine Variable auf Mobotix Seite gefunden. Die einzige Variable die ich gefunden habe, bei der Implementierung des Moduls damals, ist die das eigentliche Event mitzugeben.
Falls ihr da mehr Infos habt, immer her damit!