Anleitung / Hilfestellung Yahoo Weather

Begonnen von Mirko, 22 Februar 2013, 20:16:57

Vorheriges Thema - Nächstes Thema

Mirko

Hallo

Ich bin grad am verzweifeln und weiß net, wo der Fehler liegt, evtl kann mir ja jemand behilflich sein, ich seh grad den Wald vor lauter Bäumen nicht mehr ...

Ich habe mir von: https://github.com/mhop/fhem-mirror/blob/master/FHEM/59_Weather.pm die wohl aktuelle pm geholt und ins FHEM geladen.

Dann hab ich folgenden Code in die config geschrieben ...

define Wetter Weather 648916 30 DE
attr Wetter event-on-update-reading temperature,humidity,wind,wind_condition
attr Wetter room Wetter

und bekomme beim Speichern folgenden Fehler:

global: unknown attribute sendStatistics, choose one of room group comment alias eventMap archivecmd apiversion archivedir configfile lastinclude logfile modpath nrarchive pidfilename port statefile title userattr verbose:1,2,3,4,5 mseclog version nofork logdir holiday2we autoload_undefined_devices dupTimeout latitude longitude backupcmd backupdir backupsymlink backup_before_update exclude_from_update motd updatebranch devStateIcon or use attr global userattr sendStatistics Cannot load module Weather Please define Wetter first Please define Wetter first

Wenn ich ein reload der 59_weather.pm mache, kommt dann ebenfalls ein Fehler:

Global symbol "$readingFnAttributes" requires explicit package name at ./FHEM/59_Weather.pm line 132.
BEGIN not safe after errors--compilation aborted at ./FHEM/59_Weather.pm line 450.


MisterEltako

Zitatattr Wetter event-on-update-reading temperature,humidity,wind,wind_condition

Lass doch mal dieses Attribut weg. Braucht man doch eigentlich nicht.

Ich habe es mit:

define Local_Wetter Weather XXXXXXXX 3600 de
attr Local_Wetter localicons 1
define w_Wetter weblink htmlCode { WeatherAsHtml("Local_Wetter") }
attr w_Wetter htmlattr width_"220" height="330" top="50px" frameborder="0" marginheight="0" marginwidth="0"
attr w_Wetter room CUL_HM

....am Laufen und finde es Klasse und habe auf Empfehlung hier im Forum noch in die von dir genannte Datei nachfolgenden Code eingefügt um Sonnenauf- und Sonnenuntergangszeiten zu ergänzen:

          ### sunrise / sunset
          if ($tag eq "yweather:astronomy" ) {
            $value =~/sunrise="([0-9:.]*?) (..)" .*sunset="([0-9:.]*?) (..)".*/;

            if ($1) { readingsBulkUpdate($hash, "sunrise", h2hms_fmt(hms2h($1))); }
            if ($3) { readingsBulkUpdate($hash, "sunset", h2hms_fmt(hms2h($3)+12)); }
          }  


z.b. ab zeile 312 in 59_Weather.pm einbauen.

MfG, MisterEltako.


HMLAN-Konfigurations-Adapter, HM-Funkjalousieaktor/HM-Dimmaktor/HM-Schaltaktor f. Markenschalter, Jalousie-/Schaltaktor von Eltako, FT4 v. Eltako, TCM310

Dietmar63

Du musst fhem komplett updaten.
Es wurden neue Sachen eingeführt, die natürlich in neueren Versionen der Module angewendet werden: "$readingFnAttributes

Einfach" update" eingeben und eine Minute warten. Dann neu starten.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

stgeran

Wo bekommt ihr z.B. so etwas her?  "59_Weather.pm"
FHEM auf Raspberry
CSM 866MHz für EM1010 mit Strom und Gaszähler
CUL 866MHz für MAX! Radiator Thermostat 
CUL 433MHz für Innen und Aussen Temp
HMLAN für HM-LC-Sw1-PI-2

MisterEltako

[
ZitatWenn ich ein reload der 59_weather.pm mache, kommt dann ebenfalls ein Fehler:
Global symbol "$readingFnAttributes" requires explicit package name at ./FHEM/59_Weather.pm line 132.
BEGIN not safe after errors--compilation aborted at ./FHEM/59_Weather.pm line 450.

Habe gerade im Forum gelesen, das diese Fehlermeldung durch ein "update" in der Kommandozeile behoben wird. Da einiges an Fhemweb geändert und neue Dinge hinzugefügt wurden.
Die 59_Weather.pm wird automatisch mit dem update geladen.

PS: anschließend Neustart und dann 1x save-Button anklicken.

MfG, MisterEltako.
HMLAN-Konfigurations-Adapter, HM-Funkjalousieaktor/HM-Dimmaktor/HM-Schaltaktor f. Markenschalter, Jalousie-/Schaltaktor von Eltako, FT4 v. Eltako, TCM310

Mirko

Zitat von: stgeran schrieb am Fr, 22 Februar 2013 23:06Wo bekommt ihr z.B. so etwas her?  "59_Weather.pm"

der Link steht oben im ersten Post ...

Mirko

Update hab ich gemacht, CUL und FritzBox neu gestartet ebenfalls ...
Wenn ich im linken Menü den Raum Local_Wetter aufrufe, steht dann folgender Fehler:
Local_Wetter is not a Weather instance

UPDATE: hat sich erledigt ... in der fhem.cfg wurde aus welchem Grund auch immer die Zeile define Local_Wetter Weather 648916 3600 de gelöscht oder nicht gespeichert ... jetz is alles schön

Mirko

Zitat von: MisterEltako schrieb am Fr, 22 Februar 2013 22:00....am Laufen und finde es Klasse und habe auf Empfehlung hier im Forum noch in die von dir genannte Datei nachfolgenden Code eingefügt um Sonnenauf- und Sonnenuntergangszeiten zu ergänzen:

          ### sunrise / sunset
          if ($tag eq "yweather:astronomy" ) {
            $value =~/sunrise="([0-9:.]*?) (..)" .*sunset="([0-9:.]*?) (..)".*/;

            if ($1) { readingsBulkUpdate($hash, "sunrise", h2hms_fmt(hms2h($1))); }
            if ($3) { readingsBulkUpdate($hash, "sunset", h2hms_fmt(hms2h($3)+12)); }
          }  


z.b. ab zeile 312 in 59_Weather.pm einbauen.

MfG, MisterEltako.


hab ich getan, leider werden die Daten für Sonnenauf- und untergang nicht angezeigt :(
und anstatt C° kommt ein ? ... siehe Bild

(siehe Anhang / see attachement)

oniT

Hallo Mirko,

das sollte jetzt aber nur noch an der Zeichenkodierung von dem Browser liegen. Stell diese mal richtig ein, dann werden auch die °C angezeigt.

Gruß
TinoB
BBB - debian weezy - FHEM 5.7
HMLAN - HM-LC-Bl1-FM, HM-ES-PMSw1-PI, HM-LC-Sw1-FM, HM-TC-IT-WM-W-EU, HM-WDS40-TH-I, HM-Sen-Wa-Od, HM-Sec-RHS
Dimplex Wärmepumpe / Dimplex ZL 300 - Modbus TCP
SDM630M - Modbus TCP
SolarLog 200 / SMA SonnyBoy 1.5/2.5 - Modbus TCP

Mirko

Perfekt, hätte ich auch selbst drauf kommen können ...
Dankeschön

aber schon taucht das nächste Problem auf :(
Wenn ich den Weblink im Floorplan einfüge kommt nur dieses dabei raus ...

(siehe Anhang / see attachement)

und die Sonnenauf- bzw -untergangszeiten werden auch noch nicht angezeigt
Auszug aus der 59_weather.pm

(siehe Anhang / see attachement)


oniT

Hallo Mirko,

ob man es einfach so anzeigen lassen kann weiß ich nicht. Ich habe den Auf- und Untergang mit den Rollos verknüpft.

Schau mal hier:

http://www.fhemwiki.de/wiki/Sunset_Sunrise

Vom Gefühl würde ich meinen das es so für den Sonnenaufgang gehen könnte:


define Sonnen_dummy dummy
attr Sonnen_dummy webCmd on:off

define Sonnenaufgang at *{sunrise('REAL','0','3:00',9:00')} set Sonnen_dummy on
attr Sonnenaufgang alias Sonnenaufgang
attr Sonnenaufgang room !Experiment


Mal ungetestet, würde ich sagen wird die Uhrzeit angezeigt.

Ach ja, und es müssen auf alle Fälle noch die Koordinaten


attr global latitude 5X.XYZ
attr global longitude 6.XYZ


von deinem Standort eingetragen werden.

Gruß
TinoB
BBB - debian weezy - FHEM 5.7
HMLAN - HM-LC-Bl1-FM, HM-ES-PMSw1-PI, HM-LC-Sw1-FM, HM-TC-IT-WM-W-EU, HM-WDS40-TH-I, HM-Sen-Wa-Od, HM-Sec-RHS
Dimplex Wärmepumpe / Dimplex ZL 300 - Modbus TCP
SDM630M - Modbus TCP
SolarLog 200 / SMA SonnyBoy 1.5/2.5 - Modbus TCP

stgeran

@mirko: Heist das, Du hast den kompletten link in die fhem.cfg eingefügt?
FHEM auf Raspberry
CSM 866MHz für EM1010 mit Strom und Gaszähler
CUL 866MHz für MAX! Radiator Thermostat 
CUL 433MHz für Innen und Aussen Temp
HMLAN für HM-LC-Sw1-PI-2

Mirko

Zitat von: stgeran schrieb am Sa, 23 Februar 2013 15:24@mirko: Heist das, Du hast den kompletten link in die fhem.cfg eingefügt?

ich meinte natürlich den weblink ... attr Local_Wetter fp_Dachgeschoss 379,210,1,

oniT

Hallo Mirko,

ich habe es so:


define Local_Wetter weblink htmlCode {WeatherAsHtml("Wetter")}
attr Local_Wetter fp_Dachgeschoss 379,210,1,
attr Local_Wetter room !Experiment


Versuch dies mal.

Gruß
TinoB
BBB - debian weezy - FHEM 5.7
HMLAN - HM-LC-Bl1-FM, HM-ES-PMSw1-PI, HM-LC-Sw1-FM, HM-TC-IT-WM-W-EU, HM-WDS40-TH-I, HM-Sen-Wa-Od, HM-Sec-RHS
Dimplex Wärmepumpe / Dimplex ZL 300 - Modbus TCP
SDM630M - Modbus TCP
SolarLog 200 / SMA SonnyBoy 1.5/2.5 - Modbus TCP

MisterEltako

Hi!
define Grundriss FLOORPLAN
Anzeige des Yahoowetters im Floorplan:
define Local_Wetter Weather XXXXXXXX 3600 de
attr Local_Wetter localicons 1
define w_Wetter weblink htmlCode { WeatherAsHtml("Local_Wetter") }
attr w_Wetter htmlattr width_"220" height="330" top="50px" frameborder="0" marginheight="0" marginwidth="0"
attr w_Wetter room CUL_HM
attr w_Wetter fp_Grundriss 100,200


dann kann man Sonnenaufgang verwenden z.B.:
define Sonnenaufgang at *(ReadingsVal('Local_Wetter', 'sunrise', '')) set Sonnen_dummy on

denn mit dem genannten:
define Sonnenaufgang at *{sunrise('REAL','0','3:00',9:00')} set Sonnen_dummy on ... fragt man ja nicht den Sunrise-Wert des Yahoo-Wetters ab!

MfG, MisterEltako.
HMLAN-Konfigurations-Adapter, HM-Funkjalousieaktor/HM-Dimmaktor/HM-Schaltaktor f. Markenschalter, Jalousie-/Schaltaktor von Eltako, FT4 v. Eltako, TCM310

Mirko

Zitat von: MisterEltako schrieb am Sa, 23 Februar 2013 18:10dann kann man Sonnenaufgang verwenden z.B.:
define Sonnenaufgang at *(ReadingsVal('Local_Wetter', 'sunrise', '')) set Sonnen_dummy on

MfG, MisterEltako.

Wenn ich oben genannte Zeile in fhem.cfg einfüge, kommt folgender Fehler:
Wrong timespec (ReadingsVal('Local_Wetter',: either HH:MM:SS or {perlcode}

MisterEltako

Hi!

Also dieser Test funktioniert bei mir:

define Sonne notify Test {\
my $Zeitstring = ReadingsVal('Local_Wetter', 'sunrise', '');;\
fhem ("define Sonnenaufgang at *$Zeitstring set Sonnen on");;\
Log 3,"$Zeitstring";;\
}


unter "Everything" wird bei Aufruf des Wetterdevice unter Readings der selbe Wert angezeigt wie im o.g angelegten at-define.
Prüfe bitte, ob im Weatherdevice auch wirklich die sunset und sunrise Einträge da sind...

MfG, MisterEltako.
HMLAN-Konfigurations-Adapter, HM-Funkjalousieaktor/HM-Dimmaktor/HM-Schaltaktor f. Markenschalter, Jalousie-/Schaltaktor von Eltako, FT4 v. Eltako, TCM310

Mirko

Danke für Deine Antwort,
ja die sunset und sunrise werte sind unter "Everything" korrekt da

d.h. unter Everything -> Notify "Sonne" -> Local_Wetter -> Readings

allerdings hat er diese Daten entgegen der anderen vor einigen Stunden aktualisiert ...

state
T: -2 H: 99 W: 11
2013-02-24 21:25:36
sunrise
07:13:00
2013-02-24 12:34:52
sunset
17:46:59
2013-02-24 12:34:52
temp_c
-2
2013-02-24 21:25:36

MisterEltako

Hi!

Schau mal hier:

http://forum.fhem.de/index.php?t=msg&goto=65932&rid=95#msg_65932

Dort habe ich die geänderten/eingefügten Codezeile gepostet. Jetzt wird Sonnenauf- und Sonnenuntergang auch im Floorplan dargestellt.
Aufpassen, beim Update wird zum Teil auch die 59_Weather.pm aktualisiert, dann ist der geänderte Code wieder pfutsch und das könnte auch eine Fehlerquelle bei nicht funktionierendem ReadingsVal sein...

MfG, MisterEltako.
HMLAN-Konfigurations-Adapter, HM-Funkjalousieaktor/HM-Dimmaktor/HM-Schaltaktor f. Markenschalter, Jalousie-/Schaltaktor von Eltako, FT4 v. Eltako, TCM310

MaMü

Hi,

auf der Suche nach einer Möglichkeit, einfach den Sonnenaufgang und Sonnenuntergang auf der FHEM-Weboberfläche anzuzeigen, bin ich auf diesen Thread gestossen. Ich brauche das nicht für einen Floorplan, nur eine einfache Anzeige in einem Raum. Allerdings möchte ich die Sonnenauf- und Untergangszeiten nicht aus Yahoo nehmen, sondern aus einer exakteren Grundlage. Da die Schnipsel aber (so noch) nicht funktionieren, hier meine 2 cent:

1. Möglichkeit: Nutzung der sunset- und sunrise-Funktion von FHEM (siehe http://www.fhemwiki.de/wiki/Sunset_Sunrise). Das ist besonders flexibel, weil man diverse Einstellmöglichkeiten hat (insbes. auch die nautischen Zeiten, oder eben REAL).

Hier ist der Tipp von oniT (fast) prima, es fehlt nur ein Anführungszeichen, um die Fehlermeldungen zu beseitigen. Ich habe zu oniTs Sonnenaufgang noch einen Sonnenuntergang hinzugefügt. Wie folgt:

define Sonnen_dummy dummy
attr Sonnen_dummy webCmd on:off

define sonnenaufgang at *{sunrise('REAL','0','03:00','09:00')} set Sonnen_dummy on
attr sonnenaufgang alias sonnenaufgang
attr sonnenaufgang room !Experiment

define sonnenuntergang at *{sunset('REAL','0','16:00','23:00')} set Sonnen_dummy off
attr sonnenuntergang alias sonnenuntergang
attr sonnenuntergang room !Experiment


2. Möglichkeit, auf die ich bei der Suche im Web gestossen bin, und die ich Euch nicht vorenthalten möchte: Es gibt einen webservice für die Anzeige von sonnenaufgang-sonnenuntergang, der recht gut konfigurierbar ist und einen iframe-Link zur Verfügung stellt. Die Adresse lautet http://www.sonnenaufgang-sonnenuntergang.de/

Die Einbindung dieses Services per iframe sieht dann so aus (Ergebnis siehe jpg-Anlage):
define sonnenzeiten2 weblink iframe http://www.sonnenaufgang-sonnenuntergang.de/custom_1.php?latitude=50.105758&longitude=8.677867&timezone=0&zenith=90.833333333333&b=1&ff=2&color=FFD239&fsize=80&fsizeh=90&w=400&h=300
attr sonnenzeiten2 htmlattr width="620" height="660" frameborder="0" marginheight="0" marginwidth="0"
attr sonnenzeiten2 room !Experiment


Sieht dann so aus:


(siehe Anhang / see attachement)


Vielleicht nutzen diese Hinweise ja dem einen oder anderen.

Grüße,
Markus

Edit: Die Codezeilen stehen einfach nur in der fhem.cfg - kein Perlcode notwendig

TeeVau

Mal eine Frage ganz außerhalb des eigentlichen Threats:
Worin liegt der Unterschied zwischen den ganzen Möglichkeiten für Sonnenauf- und Untergang?
Es gibt Twilight, einen Patch für weather der die Zeiten von google nimmt, die fhem Funktionen sunset und sunrise.

Eigentlich sollten alle Funktionen doch immer die selben Uhrzeiten liefern, oder nicht (was dann die vielen Möglichkeiten erklären würde)?!
FHEM 5.8 dev (virtualisiert) / FBF 7390 (CUL 868MHz V 1.51 / panStick (AVR1))
FS20: fs20di,fs20pira,fs20sm8,fs20st2,fs20tfk,fs20ue1,fs20ws1
panStamp (AVR1): RGB Multi von ext23, 1W-DSxxxx, I/O Sketch, Spritzpumpe
Multimedia: Panasonic TV (VIERA), Kodi, Yamaha RX-V781, LMS
Sonstiges: XiaomiFlowerSen

MaMü

Für mich stellt sich der Unterschied so dar, dass
- die FHEM-Funktionen sunset/sunrise am flexibelsten sind, wenn man z.B. Licht oder Rolläden abhängig von Sonnenauf- und Untergang schalten will
- der patch für weather ist vor allem für alle Arten von Wetterdarstellungen,
- und twilight - so wie ich's verstehe - ist eine Art Simulation für einen Dämmerungssensor ("wieviel Licht ist gerade").

Die Funktionen haben (alle) mehrere Parameter:
- Datum sowie Sommerzeitregeln
- Längen- und Breitengrad des bezogenen Ortes (auf mehrer Nachkommastellen genau!)
- Zenithdefinition ("Wann ist die Sonne 'untergegangen'? Was ist Dämmerung?" - Hier gibt es die gängigen Bezeichnungen "nautisch", "zivil", "astronomische" Dämmerung sowie behördliche Definitionen. Aus den Begriffen ergeben sich Gradzahlen für die Zenith- bzw. Dämmerungsdefinition

Wenn Du wirklich ALLE Parameter identisch setzt, müssen alle drei Funktionen (sunset, twilight, weatherpatch) die identische Uhrzeit liefern.

Ich habe das allerdings noch nicht hinbekommen, 5 Minuten Unterschied scheren mich aber auch nicht ;-).


Puschel74

Hallo,

anbei sieht man schön wie Twilight


(siehe Anhang / see attachement)


sunset/sunrise durchfährt.


(siehe Anhang / see attachement)


Mann hat damit, finde ich, recht flexibel die Möglichkeit einen Dummy zu setzen/rücksetzen welchen man nur Abfragen
bzw. auf den man per notify 2-mal am Tag reagieren kann (auf den Dummy - auf light kann man natürlich den ganzen Tag zugreifen).
Zusätzlich kann man noch zwischen Sonnenauf- und -untergang unterscheiden, wenn man möchte.
Per light braucht man auch nicht grossartig mit sunset/sunrise-Konstrukte "rumkämpfen".

Ich habs mir mal visualisiert weil ich neugierig war und mir so besser meine Schaltzeiten anschauen konnte.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

MisterEltako

Hi!


Also, ich habe mich für Yahoo-Wetter entschieden, da es eine wunderschöne grafische Darstellung hat.

Ich habe alle 3 o.g. Varianten durchprobiert. Keine dieser 3 hat auch nur annähernd den korrekten Sonnenuntergang ergeben.


Ich habe mir deswegen die Variante Yahoo-Wetter ergänzt zum Anzeigen von Sonnenaufgang und Untergang und die Datei unter 59_Wetter.pm gespeichert, so dass sie nicht bei jedem Update überschrieben wird.


Zusätzlich habe ich mir eine Routine zusammengestellt, die auch wolkig oder klarer Himmel berücksichtigt, sowie Mindest- und Maximalschaltzeiten ermöglicht sowie auch eine Individuelle Offsetangabe ermöglicht.

Funktioniert für mich perfekt!

MfG, MisterEltako

HMLAN-Konfigurations-Adapter, HM-Funkjalousieaktor/HM-Dimmaktor/HM-Schaltaktor f. Markenschalter, Jalousie-/Schaltaktor von Eltako, FT4 v. Eltako, TCM310

MaMü

Hi MisterEltako,

Hört sich gut an... magst Du Deine 59_Wetter.pm mit kurzer Erklärung noch posten?

Grüße,
Markus