Diskussion neuer Ordner lib/FHEM/APIs/Weather

Begonnen von CoolTux, 21 Dezember 2022, 09:51:16

Vorheriges Thema - Nächstes Thema

CoolTux

Hallo,

Ich habe mir überlegt ob man die Wetter API Module nicht unter lib/FHEM/APIs/Weather verschieben könnte. Ich finde einen generellen API Ordner eine gut Idee. So können hier auch andere API Module untergebracht werden. Tesla wäre zum Beispiel auch so ein Kandidat. Es gibt ein Modul für die Powerwall und eines für die E-Fahrzeuge. Da könnte man ein Frontendmodul machen welches die Readings setzt und die Timer aus löst und dann halt aktuell zwei Backend (API) Module. Nur so als Idee.

Wie denkt Ihr über die Idee eines API Ordners?



Grüße
Marko
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

betateilchen

Technisch gesehen, mag die Idee nachvollziehbar sein.

Meine Befürchtung ist allerdings, dass sich FHEM organisatorisch in der Dateistruktur immer weiter verzettelt und es mittelfristig dadurch schwieriger werden könnte, bei einer Fehlersuche an der richtigen Stelle anzufangen.

Nach dem Schema: wo liegt jetzt die gesuchte Datei und welche Dateien gehören bei einem problembehafteten device eigentlich alle zusammen?


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

CoolTux

Eigentlich sollte das Auffinden nicht das Problem sein solange man sich an die Perl Richtlinien hält.
Also Package Name gleich Pfad im Dateisystem.

lib/FHEM/APIs/Weather/OpenWeatherMapAPI als Pfad.

FHEM::APIs::Weather::OpenWeatherMapAPI

Es gibt aber auch Perl Mechanismen um raus zu finden wer von wo was auf ruft.
caller zum Beispiel.

Ich habe jetzt alles soweit fertig und die Wetter Module alle entsprechend umgestellt. Habe auch gleich große Codebereinigung gemacht.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

betateilchen

Das ist alles richtig, was Du schreibst, aber ich meine was anderes.

Stell Dir vor, hier im Forum taucht ein Problem-Thread auf. Dann muss man sich als Helfender erstmal einen Überblick darüber verschaffen, welche Struktur ein bestimmtes Modul verwendet und wo es seine Dateien hat.

Meiner Meinung nach schaffen wir mit dieser Aufteilung vermeidbare Probleme.

Grundsätzlich bin ich nicht dagegen, sich an bestimmte "übliche" Strukturen zu halten. Aber das wurde halt bisher bei FHEM nicht so gemacht und man hat sich daran gewöhnt, zu wissen, wo man was in FHEM finden kann.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

CoolTux

Ja das ist stimmt. Gewöhnung durch "das haben wir immer schon so gemacht". Aber es wäre schön wenn wir uns die Zeit nehmen und anfangen es richtig zu machen. Irgendwann haben wir uns auch an das richtig machen gewöhnt  ;D


Frohe Weihnachten


Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

betateilchen

"Anfangen, es richtig zu machen" klingt gut. Aber da wir wissen, dass es nicht in dem hehren Ziel enden wird , dass alle es richtig machen, stehe ich dem Vorhaben eher skeptisch gegenüber.

Vergleich: es gibt auch heute noch "offizielle" Module, die den readings-hash direkt beschreiben...
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

CoolTux

Zitat von: betateilchen am 24 Dezember 2022, 10:57:00
Vergleich: es gibt auch heute noch "offizielle" Module, die den readings-hash direkt beschreiben...

An einem sitze ich gerade dran und überarbeite es. Der Modulauthor bekommt dann ein Patch von mir.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net