Keymatic und XML-API

Da die Homematic Keymatic drei Zustände (LOCK / UNLOCK / OPEN) kennt und alle Beispiele für die XML-API nur für normale Aktoren mit zwei Zuständen (AN/AUS) oder analoge Aktoren gepasst haben, musste ich selber etwas probieren. Anfangs dachte ich Keymatic und XML-API funktionieren nicht zusammen aber so schwer war es dann doch nicht.

Anfangs habe ich versucht die Keymatic über die XML-API den Datenpunkt über z. B. 0 / 1 / 2 anzusteuern. Bewegt hat sich die Keymatic auch, aber nie so wie gewünscht. Die Lösung: Es werden zwei Datenpunkte bzw. deren ISE-ID benötigt. Die ISE-ID der Datenpunkte kann man sich über die Webseite http://<IP-Adresse CCU>/config/xmlapi/statelist.cgi anzeigen lassen.

Ein Datenpunkt für Lock / Unlock => BidCos-RF.<Seriennummer>:1.STATE
und einer für Open => BidCos-RF.<Seriennummer>:1.OPEN

Wäre die ISE_ID von STATE 1111 und die von OPEN 2222 würden die entsprechenden Befehle wie folgt aussehen.

Tür aufschließen
http://<IP-Adresse CCU>/config/xmlapi/statechange.cgi?ise_id=1111&new_value=1

Tür abschließen
http://<IP-Adresse CCU>/config/xmlapi/statechange.cgi?ise_id=1111&new_value=0

Tür öffnen
http://<IP-Adresse CCU>/config/xmlapi/statechange.cgi?ise_id=2222&new_value=1

Warnung! Ohne weitere Sicherheitsvorkehrungen kann damit fast jeder im eigenen Netz (also auch per WLAN) die Haustür öffnen ohne dafür ein Kennwort zu benötigen! Es ist also schon ein wenig riskant Keymatic und XML-API ohne zusätzlichen Schutz zu betreiben. Ein sicheres WLAN ist somit wie so oft einer der wichtigsten Punkte, je nach Smart Home sollten natürlich noch weitere Sicherheitsvorkehrungen getroffen werden.

Wenn dies jemand liest der mir sagen kann wie man die Keymatic mit Authentifizierung ansteuern kann, würde ich mich sehr über ein Kommentar oder Nachricht freuen! Die Keymatic direkt an einen Handsender anlernen und Kontakte abgreifen oder zusätzliche Lösung wie FHEM fallen für mich raus.

7 Gedanken zu „Keymatic und XML-API“

  1. Hallo Stefan

    Danke für die supper Aleitung , hat bestens funktioniert.
    Die value gehen übrigens auch mit new_value=true oder new_value=false

    Gruss
    D

  2. Hallo Stefan

    Durch zufall habe ich deine Webseite gefunden.
    Ich weiss, der Inhalt ist schon recht alt, aber möglicherweise siehst du ja meinen Post und würdest mir helfen.

    Ich möchte den Zustand der KeyMatic bei mir nicht ändern, sondern auslesen.
    Das Ergebis möchte ich in Tasker weiterverarbeiten

    Wenn ich http://192.168.177.100/config/xmlapi/state.cgi?ise_id=1111 im Browser öffne ist das xml allerdings leer. Die 1111 habe ich durch meine ID aus dem Channel ersetzt.

    Ich denke der Befehl ist nicht fertig, hast du mir bitte einen Tipp wie ich an die Zustände komme?

    Ich habe eine CCU2 und XML-API am laufen.

    Herzlchen Dank vorab

    Hans

    1. Hallo Hans,

      ich habe aktuell keinen Zugriff mehr auf eine CCU. Versuche mal wie in der XML-API (Externer Link) Dokumentation beschrieben zuerst mit dem Skript devicelist.cgi die device_id auszulesen und diese dann in der state.cgi zu verwenden.

      Viele Grüße
      Stefan

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert