Hallo, ich suche eine Möglichkeit, ein Reading zu kopieren und dises gleichzeitig um 1 Wort zu kürzen.
In dem Reading 1 steht z.B. "Sprachausgabe Dies ist ein Test"
jetzt möchte ich das Wort "Sprachausgabe" abschneiden und in ein neues Reading nur "Dies ist ein Test" schreiben.
Wie stelle ich das am besten an, ich kann zwar schon Readings kopieren und ein Wort hinzufügen, aber nicht abschneiden.
Grüße Marcel
#### EDIT
Es soll bei jeder Änderung des Reading1, das erste Wort abgeschnitten werden und der Rest in Reading2 kopiert werden
zum beispiel so:attr <device> userReadings Reading2:Reading1 {(split(' ', ReadingsVal("$name","Reading1",""), 2))[1]}
gruss
andre
Danke !!!
Hab nochmal ne Frage dazu, was müsste ich eingeben, wenn ich nur das erste Wort haben will ?
Grüße Marcel
versuch zu verstehen was das bisschen code macht. dann hast du ganz alleine ein erfolgserlebnis wenn du es rausfindest.
gruss
andre
ps: wenn 1 das zweite wort ist ist 0 das erste...
Danke, hab es versucht, aber nicht bedacht, dass es mit 0 anfängt, dann ist es logisch...
Funktioniert jetzt auch...
Kannst du mir verraten wofür die 2 hinter dem Komma ist...?
http://perldoc.perl.org/functions/split.html (http://perldoc.perl.org/functions/split.html)
Hab da noch ein neues Problem, ich hab ein Reading das wie folgt aussieht
{"battery":"100.0","ip":"109.xx.x.xx"}
Wie bekomme ich es jetzt hin, es so zu splitten, dass ich 2 neue Readings erhalte, eins für Battery und eins für IP ?
Grüße Marcel
Sorry, dass ich wieder frage, aber seit meinem heutigen Update (habe schon lange keins mehr gemacht) funktioniert mein userReading nicht mehr.
Kann mir jemand weiterhelfen:
windrichtung:wind_dir {(split(' ', ReadingsVal("$name","wind_dir",""), 2))[1]},windrichtungsgrad:wind_dir {(split(' ', ReadingsVal("$name","wind_dir",0), 2))[0]},batterystate:battery {(split(' ', ReadingsVal("$name","battery",0), 2))[0]},wind_avspeedkmh { sprintf("%.0f",ReadingsVal("Windsensor","wind_avspeed",0)*3.6);; },wind_speedkmh { sprintf("%.0f",ReadingsVal("Windsensor","wind_speed",0)*3.6);; }
Die split Sachen funktionieren nicht mehr.
Die sprintf klappen weiterhin
Grüße Marcel
Gib mal userReadings oben in die Suche ein wenn du im Hauptforum bist.
Danke habs gefunden und funktioniert 8)