FritzBox INFO Led als Status Anzeige nutzen (gelöst)

Begonnen von dogexan, 21 Mai 2014, 21:21:30

Vorheriges Thema - Nächstes Thema

dogexan

Hallo FHEM Forum,

da es ja möglich ist mit FHEM SHELL Scripts auszuführen müsste es ja theoretisch möglich, Leds an einer FritzBox zusteuern.
Als Anhaltspunkt diente für mich bis jetzt diese Seite:http://wiki.ip-phone-forum.de/gateways:avm:howtos:mods:leds und auch die:http://www.ip-phone-forum.de/showthread.php?t=185747&page=2&p=1316971#post1316971

Wobei es sich auf der 2ten Seiten um das Ansteuern von den FritzBox Leds via TelNet handelt.

Per TelNet funktioniert das ganze auch, allerdings habe ich es nicht geschafft einen SHELL Script zuschreiben und mit FHEM auszuführen.

Hoffentlich kann jemand helfen, verzweifel langsam daran :-\

Gruß Alex

Gerhard

FB6890LTE, cubietruck, orangePi, raspberry 2/3/4, HM/HMIP, shelly > 50, etc.

dogexan

Genau sowas hab ich gesucht (nur nicht gefunden)

Vielen Dank :D

dogexan

#3
Hallo nochmal,

hab dann doch noch ein kleines Problem. :-\

Wenn ich diesen Code in die Kommandoeingabezeile eingebe geht die INFO LED an:
{system("/bin/led-ctrl update_led1")}
und mit diesem wieder aus:
{system("/bin/led-ctrl update_led1=0")}
So weit, so gut.

Jetzt möchte ich gerne diese 2 Befehle in ein notify packen.
Der Code kam bis jetzt bei raus:
define nLED notify Boden { if(Value("Boden") eq "trocken") system("/bin/led-ctrl update_led1") else system("/bin/led-ctrl update_led1=0")}
Also wenn der Bodenfeuchte Sensor sagt trocken dann soll die INFO LED angehen, ansonsten bleibt sie aus.
(Das Gerät "Boden" ist ein dummy)

Leider klappt es so nicht, kann mir jemand einen Tipp geben?

Puschel74

Hallo,

Zitateider klappt es so nicht, kann mir jemand einen Tipp geben?

Klar.
Schau mal ins Logfile und lass uns daran teilhaben  ;)

Systembefehle setze ich in einer sub in der 99_myUtils.pm ab.
Nicht schön aber klappt:
my ($befehl) = "sudo i2cget -y 1 ".$sensor." 0x00 w &";
my ($result) = `$befehl`;

Damit will ich aber auch den Rückgabewert auswerten - das brauchst du ja nicht und kannst das ja mal entsprechend anpassen.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

dogexan

Danke für die Antwort,

also das Logfile schweigt schon mal :-\

Ich habe aber mal mein myUtils Datei ein wenig angepasst.
Der Tipp von Gerhard hat da schon mal sehr geholfen, dabei rausgekommen ist das:

################################################################
# Funktion zum on/off der INFO LED auf der Fritz Box
#
#    Erstellt 21.05.2014
#
#    INFO LED
#    on        - update_led1
#    off       - update_led1=0
my $led_state=1;
sub led_on () {
   if ($led_state == 0 ) {
      system ("/bin/led-ctrl update_led1");
      $led_state = 1;
   }

}
my $led_state=0;
sub led_off () {
   if ($led_state == 1 ) {
      system ("/bin/led-ctrl update_led1=0");
      $led_state = 0;
   }
}
1

mit {led_on} in der Kommandozeile funktionierts, allerdings nur einmal danach nicht mehr.
dasselbe mit {led_off}

Wundert mich auch nicht wirklich, da das mein erst Versuch mit der myUtils.pm Datei ist. ;D

Jetzt versuche ich deine Tipp zu interpretieren, komme aber grade gar nicht damit zurecht.

Kannst du mir noch was helfen? :D

Gruß Alex

Puschel74

Hallo,

ZitatJetzt versuche ich deine Tipp zu interpretieren, komme aber grade gar nicht damit zurecht.
Ist klar - sorry, Fehler von mir.

Meinen Befehl setze ich auf einem RasPi ab.
Du willst das auf einer FritzBox machen.
Da habe ich leider zu kurz gedacht  :-[

Schau evtl. mal im FB-Unterforum nach - ich vermute das es dort schon ein paar Ansätze (wenn nicht auch Lösungen) geben dürfte.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

dogexan

Ok, dann probier ichs mal da.

Dank dir!

PS: Kann man die Frage dahin verschieben? Sonst muss ich alles wieder neu "durchkauen"?

Gruß Alex

Puschel74

Hallo,

ich war so frei und habs mal verschoben  ;)

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.


dogexan

Mit diesem Code geht's:
define nLED notify BoFeuSe { if (Value("BoFeuSe") eq "open") {system("/bin/led-ctrl update_led1")} else {system("/bin/led-ctrl update_led1=0") } }

Gruß Alex