Rutenbeck TCR IP 4 in HA einbinden

Hallo zusammen,

ich bin Matze(50) und komme aus Berlin.

Ich bin ziemlich neu im Thema Home Assistant und habe auch direkt ein Problem und hoffe auf Eure Hilfe.

Ich habe zwei Rutenbeck TCR IP 4 Schaltaktoren welche sich per HTTP steuern lassen. Mit einer GET-Abfrage bekomme ich eine kleine status.xml der vier Ausgänge. Mit einer anderen GET-Abfrage kann ich die einzelnen Ausgänge ein- oder ausschalten . In diesem Fall bekomme ich aber nur ein “Success” zurück.

Bis jetzt habe ich RESTful Sensoren in der configuration.yaml angelegt .
z.B.:

sensor:
  - platform: rest
    name: TCR-Port-4
    resource: http://192.168.10.3/status.xml
    method: GET
    value_template: "{{ value_json.response.led4 }}"
    scan_interval: 1

Diese funktionieren soweit auch.

Nur beim Schalten komme ich nicht klar:

mit folgenden URLs könnte ich:
http://192.168.10.3/impl.cgi?ausg400:00:00normal  #Port 4 einschalten
http://192.168.10.3/impl.cgi?ausg400:00:00reset #Port 4 ausschalten
http://192.168.10.3/leds.cgi?led=4 #Port 4 toggeln

Wie kann ich diesen Aktor in ein Dashboard einbauen, denn aktuellen Status anzeigen und passenden Schaltaktionen dazu ausführen.

Ich komme irgendwie nicht weiter weil ich das Grundkonzept scheinbar nicht verstehe.

Ich habe auch ein custom component dazu gefunden. Allerdings nicht im Hacs sondern in GitHub. Das ignoriert aber den aktuellen Status und schaltet die Ausgänge nur ein aber nicht mehr aus.

Vielleicht hat ja jemand so ein Ding am laufen und könnte mir helfen.

Hallo Matze,

sehr interessant, dass du den TCR IP 4 mit Home Assistant verwenden möchtest. Wir sind auf dein Hilfegesuch aufmerksam geworden und möchten dir einen Lösungsansatz vorschlagen.

Du kannst die RESTful Switch Integration verwenden, um die Schaltausgänge des IP 4 zu steuern und gleichzeitig über status.xml den aktuellen Zustand auszulesen.

In der configuration.yaml sieht das ganze dann, für alle Schaltausgänge, so aus.

switch:
  - platform: rest
    name: "Schaltausgang 1"
    resource: http://192.168.1.203/leds.cgi?led=1
    method: post
    is_on_template: "{{ '<led1>1</led1>' in value }}"
    headers:
      Content-Type: application/x-www-form-urlencoded
    body_on: ""
    body_off: ""
    state_resource: http://192.168.1.203/status.xml
    scan_interval: 5

  - platform: rest
    name: "Schaltausgang 2"
    resource: http://192.168.1.203/leds.cgi?led=2
    method: post
    is_on_template: "{{ '<led2>1</led2>' in value }}"
    headers:
      Content-Type: application/x-www-form-urlencoded
    body_on: ""
    body_off: ""
    state_resource: http://192.168.1.203/status.xml
    scan_interval: 5

  - platform: rest
    name: "Schaltausgang 3"
    resource: http://192.168.1.203/leds.cgi?led=3
    method: post
    is_on_template: "{{ '<led3>1</led3>' in value }}"
    headers:
      Content-Type: application/x-www-form-urlencoded
    body_on: ""
    body_off: ""
    state_resource: http://192.168.1.203/status.xml
    scan_interval: 5
    
  - platform: rest
    name: "Schaltausgang 4"
    resource: http://192.168.1.203/leds.cgi?led=4
    method: post
    is_on_template: "{{ '<led4>1</led4>' in value }}"
    headers:
      Content-Type: application/x-www-form-urlencoded
    body_on: ""
    body_off: ""
    state_resource: http://192.168.1.203/status.xml
    scan_interval: 5

Auf dem Dashboard werden dir dann alle Schaltausgänge als Schalter angezeigt.
Screenshot 2024-09-03 094005

Durch scan_interval wird der Zustand der Schalter auch aktualisiert wenn sich der Zustand am Gerät ändert. Durch das betätigen der Taster oder ähnlichem.

Bitte beachte, dass es sich hierbei nur um einen von vielen möglichen Lösungansätzen handelt.

Konfiguriere für jeden Schaltausgang die richtige IP-Adresse unter resource und state_resource, oder verwende eine Variable.
Alternative kannst du auch den Hostname TCRIP4.lan verwenden, falls das in deinem Netzwerk unterstütz wird.

http://TCRIP4.lan/leds.cgi?led=1

http://TCRIP4.lan/status.xml

Wir hoffen das wir dir weiterhelfen konnten.
Lass uns wissen ob es geklappt hat.

Mit freundlichen Grüßen
Das Rutenbeck Support Team

1 „Gefällt mir“

@Rutenbeck-Support auch wenn ich nicht im Thema bin, muss ich es wirklich mal loben, dass sich der Support eines Herstellers hier anmeldet und Unterstützung leistet. Wirklich Klasse, danke für das Engagement! :clap:t2:

1 „Gefällt mir“

Hi Rutenbeck Support Team,

vielen Dank für Eure Unterstützung. Leider habe ich mich nun doch von meinen TCR IP 4 getrennt. So kann ich Euer Script leider nicht mehr testen.

Ich denke aber es wird einigen anderen Usern helfen. Also trotzdem großes Lob an Euch, an dieser Stelle