smartVISU - allgemeine Fragen

Begonnen von Jojo11, 02 Februar 2015, 18:57:43

Vorheriges Thema - Nächstes Thema

fhainz

Zitat von: bgewehr am 07 Februar 2015, 12:18:43
ich glaube, ich habe immer setreading <device> uzsu {} genommen, damit das ein gültiges, leeres OBJEKT ist.
Damit werden die {} als value in reading geschrieben.
uzsu {} 2015-02-07 12:22:00

Zitat von: bgewehr am 07 Februar 2015, 12:22:09
Nein, davon steht im Wiki nix... Macht das Modul von selber! Lies nochmal durch!
Sry, das hab ich dann falsch verstanden. Ich probiert das jetzt nochmals von vorne durch.

fhainz

Zitat von: bgewehr am 07 Februar 2015, 12:22:09
Macht das Modul von selber!

Asche über mein Haupt... das war es! Ich hab wiedermal viiieel zu kompliziert gedacht. Jetzt klappt es problemlos :)
Danke für deine Hilfe!

Grüß

karl0123

@fhainz: Was war denn nun dein Fehler? Doch sicher nicht, dass es schon einen wdt gab?!

fhainz

Was jetzt genau schuld war weiß ich nicht. Ich hab alles von vorne gemacht. wdt, uzsu Reading, gad, html einträge gelöscht und fhem neugestartet dann uzsu reading mit {} neu angelegt, html angelegt, gad angelegt und dann hats geklappt.

cruser1800

Zitat von: herrmannj am 06 Februar 2015, 23:17:43
verstehe. Ich hatte das so als generisches "mach-aus-einem-GAD-ein-Icon" - widget gesehen, dafür würde ich das auch nehmen. In Deinem Fall ist es natürlich speziell. Wenn ich darf würde ich das trotzdem, dann generisch, mit in die fhem-widget.js ins git nehmen. Den style würde ich dann ebenfalls ins css nehmen.

vg
jörg

Klar gern! Ich bin nur Hobbyprogrammierer der sich freut, wenn er eine Lösung für sein Problem hat!  ;)


Gerd.Ternes

Homematic Temperatursensor
Ich habe den HM-CC-TC Sensor bei mir eingesetzt. Mittlerweile habe ich den Sensor und auch die Zeitsteuerung soweit integriert.
Mir fehlt jedoch noch der Zugang zu den Variablen "gad_prog, gad_init, gad_save und  gad_restore".
Kann mir jemand sagen wozu die gut sind und wie sie benutzt/belegt werden?
Ebenfalls weiss ich noch nicht, wie ich evlt. 2 oder 3 unterschiedliche Programme abspeichere.
Danke

bgewehr

Zitat von: Gerd.Ternes am 07 Februar 2015, 16:57:10
1) Mir fehlt jedoch noch der Zugang zu den Variablen "gad_prog, gad_init, gad_save und  gad_restore".

2) Ebenfalls weiss ich noch nicht, wie ich evlt. 2 oder 3 unterschiedliche Programme abspeichere.

zu 1): schau Dir bitte mal die timer-widgets aus meinem widget_homematic an. (->git) Dort werden diese Dinge benutzt, um über ein hminfo-fhem-device Temperaturlisten zu lesen und zu schreiben. Ich bin aber irgendwie nicht schlau genug, zu verstehen,w as sich der Modulautor dabei gedacht hat, sorry, klappt nur manchmal!

zu 2): rtfm zu hminfo, da ist das recht gut beschrieben, wie man templates erzeugen und wiedereinlesen kann.
FritzBox 7590, Synology DS216+II mit Docker
Docker: FHEM mit hmlan, Homebridge, node-red, mosquitto, ems-collector für Buderus EMS mit AVR Net-IO
Gartenwasser über MQTT auf R/Pi A+
Volkszaehler.org auf R/Pi 2B mit Pi_Erweiterung
Raspberrymatic auf R/Pi 4B mit RPI-RF-MOD u. CUL868

Gerd.Ternes

#52
Ja, die Bezeichnung habe ich aus dem widget
Ich habe diese dann(.._Sa usw dann mit fhem (...climate) readings verknüpft. Die Daten werden dann auch in das device geschrieben. Ich denke aber, das sich unterschiedlichetimer Programme (Urlaub, zu hause usw.) speichern lassen müssten. Ich habe auch gesehen, dass du dies in deinem script wohzimmer_bcup benutzt hast. Muss dann wohl noch ein wenig weiter probieren
Danke

Gerd.Ternes

Danke für die Antwort.

zu 2): rtfm zu hminfo, da ist das recht gut beschrieben, wie man templates erzeugen und wiedereinlesen kann.
wo finde ich die rtfm zu hminfo?

Gerd

bgewehr

Oh, sorry, das habe ich als bekannt angenommen: rtfm=read the fucking manual, schau mal in der Fhem commandref und im fhem Wiki!
FritzBox 7590, Synology DS216+II mit Docker
Docker: FHEM mit hmlan, Homebridge, node-red, mosquitto, ems-collector für Buderus EMS mit AVR Net-IO
Gartenwasser über MQTT auf R/Pi A+
Volkszaehler.org auf R/Pi 2B mit Pi_Erweiterung
Raspberrymatic auf R/Pi 4B mit RPI-RF-MOD u. CUL868

fhainz

Hallo Bernd,

mir ist aufgefallen, dass durch das löschen eines uzsu eintrages das zugehörte wdt device in fhem nicht gelöscht wird. Ich hab bei mir den Löschungs aufruf vor die Schleife geschoben und geändert.
fhem('delete wdt_'.$device.'_uzsu.*');

Damit werden zuerst alle wdt's gelöscht und anschließend die benötigten wieder angelegt.

Grüße

bgewehr

FritzBox 7590, Synology DS216+II mit Docker
Docker: FHEM mit hmlan, Homebridge, node-red, mosquitto, ems-collector für Buderus EMS mit AVR Net-IO
Gartenwasser über MQTT auf R/Pi A+
Volkszaehler.org auf R/Pi 2B mit Pi_Erweiterung
Raspberrymatic auf R/Pi 4B mit RPI-RF-MOD u. CUL868

fhainz

#57
Dann pack ich das gleich in Wiki.

Ich hab bei mir auch ein mapping 0/off 1/on gemacht. Damit kann ich bool verwenden und es wird der toggle switch angezeigt, 0,1 können dann aber nicht mehr gesetzt werden.

sub UZSU_execute($$)
{
  my ($device, $uzsu) = @_;
  $uzsu = decode_json($uzsu);
 
  my %map = ( "1" => "on",
              "0" => "off" );
 
  fhem('delete wdt_'.$device.'_uzsu.*');
 
  for(my $i=0; $i < @{$uzsu->{list}}; $i++) {
  my $weekdays = $uzsu->{list}[$i]->{rrule};
  $weekdays = substr($weekdays,18,50);
 
  my $value = $uzsu->{list}[$i]->{value};
          $value = $map{$value} if( $value =~ /0|1/ );           
   
  fhem('define wdt_'.$device.'_uzsu'.$i.' WeekdayTimer '.$device.' en '.$weekdays.'|'.$uzsu->{list}[$i]->{time}.'|'.$value);
  fhem('attr wdt_'.$device.'_uzsu'.$i.' room Timer');
  fhem('attr wdt_'.$device.'_uzsu'.$i.' group UZSU');
 
  if (($uzsu->{active}) && ($uzsu->{list}[$i]->{active})) {
  fhem('attr wdt_'.$device.'_uzsu'.$i.' disable 0');
  }
  else {
  fhem('attr wdt_'.$device.'_uzsu'.$i.' disable 1');
  }
  }   
}

bgewehr

FritzBox 7590, Synology DS216+II mit Docker
Docker: FHEM mit hmlan, Homebridge, node-red, mosquitto, ems-collector für Buderus EMS mit AVR Net-IO
Gartenwasser über MQTT auf R/Pi A+
Volkszaehler.org auf R/Pi 2B mit Pi_Erweiterung
Raspberrymatic auf R/Pi 4B mit RPI-RF-MOD u. CUL868

fhainz