Hallo,
ich bin gerade leicht verwirrt, über die Umwandlung der Codierung von Perls 'lc'. Kann mich da bitte jemand aufklären?
Ich habe Geräte mit einem Attribut "raum". Den Inhalt dieses Attribute sammle ich (in einem Modul), wandle es mit 'lc' in Kleinbuchstaben um, und erstelle dann ein Reading. Jetzt mal so grob erklärt. Aber viel mehr passiert wirklich nicht.
readingsSingleUpdate($hash, "test_" . lc($room), $room, 1);
Ist jetzt ein Attribut "raum" mit "Küche" befüllt, habe ich danach ein Reading, das test_k?che heißt.
Wenn ich das ganze aber umwandle
$room = encode('iso-8859-1', $room);
readingsSingleUpdate($hash, "test_" . lc($room), $room, 1);
bekomme ich ein Reading test_küche.
print setlocale(LC_CTYPE);
meint en_US.UTF-8, meine FHEM-Instanz ist auf englisch eingestellt.
Sollte UTF-8 nicht Umlaute können? Oder irre ich mich jetzt da?
Freue mich über jede Erklärung - und v.a. Vorschläge, wie man's eleganter löst.
Stefan