Hallo Forum,
ich verwende eine virtuelles Keypad im Tablet-UI für die Eingabe eines Zahlencodes.
Dabei werden Push-Widgets benutzt, um Ziffern an al_digit (ein Dummy) zu übergeben.
Mein Problem beginnt, wenn ich die nach und nach eintreffenden Ziffern zu einem Code zusammensetzen möchte, welcher in al_code abgelegt werden soll.
define al_digit dummy
define al_code dummy
define n_al_code notify al_keypad {my $newDigit = Value("al_digit");; my $oldCode = Value("al_code");; my $newCode = $oldCode.$newCode;; fhem("set al_code $newCode")}
Im Grunde eine sehr einfache Sache nach dem Muster:
code = code + ziffer
Leider bekomme ich das mit FHEM bzw Perl nicht hin. :-[
In diesem Zusammenhang eine weitere Frage:
Wie kann ich einen Dummy mit einem Leerstring initialisieren?
Alles, was ich mit z.B. set al_code eingebe, wird genau so als Wert (STATE) dargestellt... :'(
Vielen Dank für eure Hilfe.
Wahrscheinlich hast Du es schon gelöst, aber da ich selbst an so etwas bastele... Bei mir funktioniert es so:
define code_n notify Sender.*:(1.*|2.*|3.*|4.*|5.*|6.*|7.*|8.*|9.*|0.*) {\
my $new_digit = $EVENT;;\
my $bisherige_digits = ReadingsVal("code_d", "state", "");;\
my $new_code = $bisherige_digits.$new_digit;;\
fhem("set code_d $new_code");;\
}