Ich nehme wieder gerade ein paar Lacrosse Temp. Sensoren in Betrieb und frage mich gerade ob man nicht die Attribute inkl. dem Plot einfach von anderen Sensoren übernehmen kann?
Für sowas bastel ich momentan noch an einem Modul: archetype (https://forum.fhem.de/index.php/topic,53402.0.html)
Ist zwar kein Kopieren, aber Vorgaben vergeben. Auch Plots lassen sich automatisch anlegen.
Zitat von: Fredi69 am 22 September 2016, 21:34:17
frage mich gerade ob man nicht die Attribute inkl. dem Plot einfach von anderen Sensoren übernehmen kann?
den fhem Befehl "copy" kennst Du? Falls nicht, gib mal "help copy" in die fhem Befehlszeile ein.
Bei copy meckert Lacrosse, dass es das device schon gibt... schon oft genug darüber geflucht... Plots dagegen geht mit Platzhaltern dagegen ziemlich schnell (da geht auch copy ;-))
Zitat von: KernSani am 23 September 2016, 18:42:56
Bei copy meckert Lacrosse, dass es das device schon gibt
das sollte der Modulautor (von Lacrosse) fixen.
Zitat von: betateilchen am 23 September 2016, 19:47:43
das sollte der Modulautor (von Lacrosse) fixen.
Ist doch bei HomeMatic und FHEMWEB auch so, nur um mal zwei weitere zu nennen.
es gibt einige devices die sich aus gutem grund nur ein mal pro adresse anlegen lassen. bei denen geht copy grundsätzlich nicht.
es gab damals die diskussion ob man copy nicht um die möglichkeit erweitert nur attribute (und/oder readings) von einem device in ein anderes zu kopieren.
das ganze ist dann im sande verlaufen weil uns keine einfache syntax eingefallen ist um folgende fälle zu unterscheiden: copy der attribute von A nach B
- A überschreibt B
- A ergänzt B
- A ersetzt B
- ...
man könnte sich zwar an die 15 operationen zum grafiken verknüpfen halten aber intutiv ist das nicht unbedingt.
da es keinen besseren vorschlag gab und der bedarf nicht da war gab es kein ergebniss.
gruss
andre
Zitat von: justme1968 am 23 September 2016, 20:08:44
es gibt einige devices die sich aus gutem grund nur ein mal pro adresse anlegen lassen. bei denen geht copy grundsätzlich nicht.
hm... man müsste also in diesem Fall das device kopieren, ohne die DefFn und die AttrFn aufzurufen. Sprich, direkt in die hashes schreiben und das device direkt auf disabled setzen. Der Benutzer muss ja ohnehin manuell eingreifen, um die Adresse zu ändern.
das ginge im prinzip für die DefFn. das device ist zwar in keinem funktionalen zustand aber wenn es disabled ist macht das nichts. man müsste es dann manuell per modify ändern und dann enablen.
für die AttrFn geht das aber nicht weil es devices gibt die in der AttrFn direkt auf das setzen von attributen reagieren. z.b. werte cachen. wenn man %attr direkt setzt fällt das weg und das device verhält sich nicht so wie vorgesehen.
aber ich habe gerade eine andere idee:
wie wäre es wenn man die syntax von copy so werweitert: copy A B [params]
sobald params angegeben ist wird B nicht mit der DEF von A angelegt sondern mit params und danach wie gehabt die attribute kopiert.
dann ist weiterhin alles mit einem copy befehl erledigt.
Zitat von: justme1968 am 23 September 2016, 20:24:19
wie wäre es wenn man die syntax von copy so werweitert: copy A B [params]
guter Plan :)
grad getestet und schon eingecheckt.
ab morgen kann man dann z.b. die LaCrosse devices so kopieren: copy <alt> <neu> <neue adresse>
gruss
andre
Coole Sache... Hätte es das nur gegeben bevor ich meine 16 Temperatursensoren eingebunden hatte... 8)
du weißt aber schon das sich attribute auch per devspec für mehr als ein device auf einmal setzen lassen?