Twilight - azimut und elevation ergänzt und diverse Verbesserungen.

Begonnen von Dietmar63, 24 Juli 2013, 22:11:35

Vorheriges Thema - Nächstes Thema

Markus Bloch

Hängt damit zusammen, dass FHEMWEB beim Aufruf der Detailseite ein "get <Twilight-Device> ?" macht um die Usage zu erhalten und diesen FHEMWEB entsprechend darzustellen. Und in Twilight_Get() wird Twilight_GetUpdate($hash); direkt am anfang ausgeführt. Diese Funktion existiert allerdings nicht mehr.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

Dietmar63

Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Markus Bloch

@Dietmar: hast du auch die aktuellste Version von FHEM im vollen Umfang im Einsatz?
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

Dietmar63

Nein 5.4 älterer Stand.
Ich habe keinen Bedarf immer gleich das Neueste zu haben.

Ich schließe aus deiner Frage, dass dort das Problem zu suchen ist.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Markus Bloch

Nicht direkt. Führ mal bei dir ein "get <Twilight Device> ?" aus. Dabei stürzt FHEM dann ab mit der Meldung:

Undefined subroutine &main::Twilight_GetUpdate called at ./FHEM/59_Twilight.pm line 90.

Und in der Tat gibt es die Funktion Twilight_GetUpdate in Twilight nicht.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

Dietmar63

Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Dietmar63

- bug in Twilight_Get repaired
- longitude and latitude now taken from TW definition
- $hash->{WEATHER_HORIZON} initialized

TW eingecheckt!
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

betateilchen

Zitat von: Dietmar63- longitude and latitude now taken from TW definition

Nur mal interessehalber: wo hast Du die Daten vorher hergenommen?
Diese Daten sind doch als globales Attribut in fhem vorhanden, von dort verwende ich sie z.B. in meinen Wettermodulen.

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Dietmar63

Heute morgen wurden die globalen Werte genutzt.

TW selbst wird mit latitude und longitude definiert.
Dann macht es, wie Markus bemerkt hat nicht unbedingt Sinn, die globalen Werte(wie sunrise_el) zu nutzen.

So kann man mehre TW mit unterschiedlichen latitude und longitude definieren - wenn es sein soll.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

betateilchen

ok, verstanden, macht Sinn.

Irgendwann sollte sich wirklich mal jemand hinsetzen und ein 01_GEO.pm schreiben, wo der ganze ortsbezogene Kram (Koordinaten, sunrise, twilight, isday, holiday  use) in einer einzigen Instanz abgefackelt wird. Der Vorschlag wurde ja schonmal irgendwo andiskutiert, aber leider nicht weiter verfolgt.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rudolfkoenig

>  So kann man mehre TW mit unterschiedlichen latitude und longitude definieren - wenn es sein soll.

Und SUNRISE_EL wird demnaechst auch diesen weg gehen (auch um "get sr sunrise" realisieren zu koennen), und die globale Variable kann dann entfernt werden. openweathermap muss dann nachziehen...

Was dagegen spricht ist die Moeglichkeit automatisch die Koordinaten anhand der IP-Addresse zu initialisieren. Aber vielleicht haben manche was gegen solche "Schnueffelei".

betateilchen

Zitat von: rudolfkoenig schrieb am Sa, 17 August 2013 08:00openweathermap muss dann nachziehen...

Als neulich die altitude als globales Attribut ergänzt wurde, habe ich openweathermap umgestrickt, um die Daten nicht mehr lokal pflegen zu müssen. Weißt Du eigentlich, was Du willst?
Ausserdem betrifft es nicht nur openweathermap, sondern zum Beispiel auch den I2C-Drucksensor.

Zitat von: rudolfkoenig schrieb am Sa, 17 August 2013 08:00und die globale Variable kann dann entfernt werden.

Es macht doch absolut keinen Sinn, in x-Modulen die identischen Parameter definieren zu müssen.

Alternativer Lösungsvorschlag: Die Attribute global existieren lassen und verwenden, solange das Attribut im definierten Device nicht existiert. Das wäre m.E. ein sehr viel flexiblerer Weg.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

wing350

Hallo Dietmar,

Zitat von: Dietmar63 am 06 August 2013, 19:28:00


Die Readings mit _el am Ende stammen aus einem Test meinerseits, bei dem ich feststellen wollte, ob die von TW ausgerechneten Werte sich von den Werten aus sunrise_el unterscheiden.

In der Version, die ich freigebe werden diese Readings nicht enthalten sein.

ich habe in meinem Twilight-Modul immer noch Readings vom August stehen, die die Endung "_el" haben.
Wie werde ich die wieder los, damit nur noch die aktuellen übrig bleiben?
Gruß
Reimer
FHEM auf Ubuntu VM/QNAP, FHEM-Native, CUL868, RFTRX433 und Jeelink auf RPi über ser2net an VM angebunden, PCA301/LaCrosse-Gateway (WLAN), FHTs, FS20-Aktoren, FBDECT, div. HM- und HMIP-Komponenten, Raspberrymatic VM auf QNAP, Signalduino für Somfy, optolink-WLAN für Viessmann, div. Shelly

ph1959de

Zitat von: wing350 am 31 Oktober 2013, 17:28:51
ich habe in meinem Twilight-Modul immer noch Readings vom August stehen, die die Endung "_el" haben.
Wie werde ich die wieder los, damit nur noch die aktuellen übrig bleiben?

Fhem ist ja sooo berechenbar  ;) ... schau mal hier: http://fhem.de/commandref.html#deletereading

Gruß, Peter
Aktives Mitglied des FHEM e.V. | Moderator im Forenbereich "Wiki"

Dietmar63

die neueste Modulversion herunterladen und fhem mal mit "shutdown restart" durchstarten.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm