If-Bedingung in 99_myFloorplan

Begonnen von Guest, 09 April 2012, 16:50:41

Vorheriges Thema - Nächstes Thema

Guest

Originally posted by: <email address deleted>

Hallo liebe FHEM-Gemeinde,

zunächst vielen Dank, dass ich mir hier schon so viele Anregungen
besorgen konnte, die mein FHEM-Projekt erheblich bereichert
haben :-)).

Momentan versuche ich mich gerade an der Einbindung des
99_myFloorplan, um ein paar Infos speziell einzubauen.

Das funktioniert auch gut. Habe Temperatur und WLAN-Status der
Fritzbox mit aufgenommen. Da der Status mit 0 oder 1 zurückgemeldet
wird, wollte ich eigentlich für den Output eine If-Bedingung einbauen,
was aber scheitert :-((. Da ich in Pearl nicht die helle Leuchte bin,
wollte ich mal fragen, ob das überhaupt so geht, wie ich das dachte.

Ausschnitt 99_myFloorplan.pm:

sub
doWertListe1() {
   my $FritzTemp = `ctlmgr_ctl r power status/
act_temperature` ;           # read temperature
        my $FritzWLAN = `ctlmgr_ctl r wlan settings/
ap_enabled` ;              # read  WLAN status

   $wert[0] = "FRITZ!Box Temp.:"   .','.   $FritzTemp . "°";      # print
temp
   $wert[1] = "FRITZ!Box WLAN.:"   .','.   if ($FritzWLAN = 1) {print
"Ein"} ;     #print WLAN

Ist an der Stelle eine if-Bedingung überhaupt möglich ? Wenn ich nur
die Variable belasse, bekomme ich 0 oder 1. Wenn ich das so wie oben
mache, dann kriege ich im Floorplan
"Undefined subroutine &main::doWertListe1"

Sorry für so eine Anfängerfrage. Freu mich über Rückmeldung.

Vielen Dank und viele Grüße
Benjamin

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hi,
da wird ein string zusammengebaut (Teile werden append-ed durch . ) und Du
hängst ein print dran. Dat geht nich :)

  $wert[1] = "FRITZ!Box WLAN.:"        .','.        ($FritzWLAN = 1 ? "Ein"
: "Aus");          #print WLAN

könnte gehen (ungetestet).

Lange Version:
if ($FritzWLAN = 1) {
  $wert[1] = "FRITZ!Box WLAN.:,Ein";
} else {
  $wert[1] = "FRITZ!Box WLAN.:,Aus";
}
(ebenfalls ungetestet).

Gruß, Uli

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Am Montag, 9. April 2012 16:50:41 UTC+2 schrieb Benji:
>
> dann kriege ich im Floorplan
> "Undefined subroutine &main::doWertListe1"
>
> Ganz generell zur Fehlersuche beim Basteln:
reload 99_myFloorplan.pm
und dann ins log schauen - da steht ggf eine Fehlermeldung, meist recht
brauchbar incl. Zeilennummer.
Darüber, wie der Fehler dann genau zu beheben ist, steht da allerdings nur
sehr sehr selten was ;-)

Gruß, Uli

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hi Uli,

tausend Dank, ich habe es noch auf if >0 abgeändert und dann
hat das so hingehauen.

Vielleicht noch eine kleine andere Frage :-).

Ich habe ein Bild eingebunden:

   $wert[0] = ""   .','.   "\"39\">";

Damit ist quasi oberhalb der Werteliste-Tabelle eine Fritzbox
abgebildet, das sieht ganz
nett aus.

Wenn ich nun allerdings eine Schaltung durchführe, bspw. einer FS20
Steckdose, wird der
Floorplan neu geladen, die "Lampe" auf dem Floorplan des FS20 Gerätes
ist an, aber dann
wird in der Werteliste das Bild nicht mehr geladen :-). Die Geräte,
deren Zustand gesaved war,
behalten auch ihre Icons. Nur die, für die auch kein Schaltzustand in
fhem.save gespeichert war,
laden mit ???

Vielleicht gibt es da einen Anhaltspunkt, nach dem ich suchen kann?

Viele Grüße und vielen Dank für die Geduld
Benjamin

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hi,
das statische Bild würd ich anders einfügen.
Letztendlich wird ja in der Routine doMakeHtml die Variable $html mit dem
gesamten html-code befüllt.
Wenn Du nicht mehrere Wertelisten bauen willst, ist's wohl am Einfachsten
den image-html-code direkt in die Variable $html zu schreiben, statt den
Umweg über $wert
  • zu machen. Ist aber nur ne Variante.

Warum das Bild nicht mehr geladen wird ist mir unklar.
Wenn Du den Floorplan anzeigst - zeig im Browser mal den html-Quellcode an
und schau was da drinsteht (bei Firefox CTRL+U), das sollte nen Hinweis
geben.
Ggf die beiden html-Codes vergleichen - mit angezeigtem Bild, mit nicht
angezeigtem Bild.

Genauer hab ich's leider nicht ;-)

Gruß, Uli






Am Montag, 9. April 2012 17:44:27 UTC+2 schrieb Benji:
>
> Hi Uli,
>
> tausend Dank, ich habe es noch auf if >0 abgeändert und dann
> hat das so hingehauen.
>
> Vielleicht noch eine kleine andere Frage :-).
>
> Ich habe ein Bild eingebunden:
>
>         $wert[0] = ""        .','.        "> width=\"56\" height=
> \"39\">";
>
> Damit ist quasi oberhalb der Werteliste-Tabelle eine Fritzbox
> abgebildet, das sieht ganz
> nett aus.
>
> Wenn ich nun allerdings eine Schaltung durchführe, bspw. einer FS20
> Steckdose, wird der
> Floorplan neu geladen, die "Lampe" auf dem Floorplan des FS20 Gerätes
> ist an, aber dann
> wird in der Werteliste das Bild nicht mehr geladen :-). Die Geräte,
> deren Zustand gesaved war,
> behalten auch ihre Icons. Nur die, für die auch kein Schaltzustand in
> fhem.save gespeichert war,
> laden mit ???
>
> Vielleicht gibt es da einen Anhaltspunkt, nach dem ich suchen kann?
>
> Viele Grüße und vielen Dank für die Geduld
> Benjamin
>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hallo Uli,

vielen Dank noch mal für den Tipp.
Das werde ich noch umarbeiten.

Die Lösung für das Verschwinden des Bildes hab ich auch.

Ich rufe den Standard Floorplan "Erdgeschoss" auf. Beim Aufruf aus
dem Floorplan-Link in FHEM löst der Link dann direkt nach
http://192.168.178.27:8083/fhem/floorplan
auf. Klicke ich einen Schaltzustand an, so löst er nach
http://192.168.178.27:8083/fhem/floorplan/Erdgeschoss
auf.

Ich tippe mal darauf, dass das statishe fritzbox.png in diesem
Verzeichniszusammenhang nicht gefunden wird.
Ich habe den Verweis nun auf auf

http://192.168.178.27:8083/fhem/fritzbox.png\" width=\"56\"
height=\"39\">"

geändert und alles klappt prima. Vielen Dank !

Viele Grüße
Benjamin


--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com