habe die Tage auf IPS 5 umgestellt und bekomme jetzt folgende Fehlermeldung:
02.04.2018 14:30:17 | 56968 | ERROR | InstanceManager | Could not create instance interface: <br />
<b>Warning</b>: InstanceInterface is not available in <b>D:\IP-Symcon\modules\IPSymconAstronomy\Astronomy\module.php</b> on line <b>1712</b><br />
<br />
<b>Notice</b>: Trying to get property 'latitude' of non-object in <b>D:\IP-Symcon\modules\IPSymconAstronomy\Astronomy\module.php</b> on line <b>1713</b><br />
<br />
<b>Notice</b>: Trying to get property 'longitude' of non-object in <b>D:\IP-Symcon\modules\IPSymconAstronomy\Astronomy\module.php</b> on line <b>1714</b><br />
Ist mir aber aufgefallen als sich die Position von Sonne und Mond in „Mondansicht“ nicht mehr verändert hat.
Sonnenhöhe steht z.B. seit Tagen auf -33,75
Aber wo ist denn jetzt genau der Fehler mit IPS 5? L1706 ist doch genau die Methode, die ja anscheinend bei ihm funktioniert, s.o. Also wo fehlt da denn jetzt was bzw. was muss da Eurer Meinung noch ausgebessert werden für IPS5?
Ich wüste jetzt nicht was der Unterschied von dem Skript zu dem im Modul wäre, aber wenn jemand eine Idee hat für den Fehler bzw. irgendwo fündig wird würde ich mich freuen.
Hab auch auf IPS5 umgestellt - habe keine Fehler, aber falsche Werte. Elevation ist jetzt -30, obwohl die Sonne noch scheint. Die Werte im Location Modul habe ich angepasst, (Lat/Lon) in einem Feld)
ich habe etwas gefunden, passt aber noch nicht ganz
public function CDJD(int $day, int $month, int $year)
es werden aber (lt. eingestreuten Debugs) für ‚day‘ in Realität Nachkommstellen übergeben - in PHP 7 wird das (im Gegensatz zu früher) aber in der Funktion als int weiterverarbeitet.
public function CDJD(float $day, int $month, int $year)
hat etwas geändert
in IPS 4.4 ist das zur Zeit -18.80°
in IPS 5 ist ohne den Fix -32.72°
in IPS 5 ist das mit diesem Fix -8.65°
… vielleicht hilft das etwas als Idee. Morgen werde ich nochmal etwas weiter versuchen …
Ich habe auch schon die Nachkommastellen der Longitude/Latitude angepasst (war ja in IPS 4.4. nur 2 Stellen), hat aber keine (sichtbare). Auswirkung.
ich habe nun identische Werte. es waren folgende Funktionen die Parameter-Deklaration anzupassen:
public function CDJD(float $day, int $month, int $year)
public function HMSDH(float $Hour, int $Minute, int $Second)
public function GSTUT(float $GSH, int $GSM, int $GSS, int $GD, int $GM, int $GY)
public function GSTLST(float $GH, int $GM, int $GS, float $L)
public function LSTGST(float $LH, int $LM, int $LS, float $L)
public function DMSDD(float $D, int $M, int $S)
Alle Wert, die das Modul errechnet sind nun gleich zu IPS 4.4.
Ich verstehe allerdings von den Berechnungen nicht so viel, das ich beurteilen könnte, ob nicht zu anderen Zeitpunkten auch an anderen Stellen der Berechnungen eine float entsteht, die als int behandelt wird.
Vielen Dank, hatte nicht die Zeit mir das im Detail anzuschauen, ich habe den Request mal so übernommen. Würde mich über Rückmeldung freuen, ob dies das Problem jetzt grundsätzlich bei allen, die Probleme hatten, beseitigt.
Danke nochmals fürs suchen und beheben.