korken hat geschrieben: ↑Sa 6. Apr 2019, 16:59
Die Abfrage der API (Schnittstelle) muss aber durch Imperihome passieren. Der LM stellt diese zur Verfügung.
Auch eine API kann sich ändern, diese Änderungen muss dann derjenige bei sich implementieren der die API abfragt.
Vielleicht ein anderes Beispiel.
Eure Stadt baut neue Straßen (hinzufügen von neuen Temp.Sensoren), dann wird nicht die Stadt eure Navigationsgeräte auf den neuesten Stand bringen sondern die Hersteller der Navi Apps.
Wenn JBMedia die API zur Verfügung stellt, dann ist logischerweise JBMedia für die Programmierung und Korrektheit dieser verantwortlich. Da kannst Du nicht die 3rd party Firma haftbar für machen.... werden Dinge anders gehandhabt, dann sollte die API so angepasst werden, dass eine 3rd party SW Dinge als Aktoren / Sensoren z.B. problemlos erkennt. Das heisst, der Aktor muss als solches erkennbar sein und gekennzeichnet werden, der Sensor ebenso. IH wird sicherlich lediglich abfragen "Aktor" oder "Sensor" und bietet dann dazu entsprechende Widgets an... alles andere an Logik geht über die API direkt an den Anbieter der Aktoren / Sensoren.
Dein Strassenvergleich hinkt...
Weil dafür diverse Firmen miteinander kombiniert werden müssen....
Wenn der Apfel eine falsche Navi-SW baut, welche eine Strasse anstatt eine Klippe erkennt, dann ist da nicht die Stadt für verantwortlich sondern der Hersteller der dubiosen Navi-SW!
Ein schönes Beispiel ist Z-Wave. Dort wurden minimale Standards vereinbart, damit die devices generell funktionieren...
Eine Besonderheit von Z-Wave ist die Vereinheitlichung der Anwenderebene, um die Interoperabilität von Geräten unterschiedlicher Hersteller zu gewährleisten. Z-Wave-Geräte werden in verschiedene Geräteklassen eingeteilt, die wiederum bestimmte Pflichtkommandos und Pflichtfunktionen implementieren müssen.
Quelle: wiki
Heisst, habe ich ein Z-Wave device kann ich generell auf der untersten Ebene erwarten, dass das Ding auch als solches erkannt wird, da die Devices diese Infos bei haben... hat der LM nun ein Aktor als Aktor gekennzeichnet, sollte dieses ja irgendwo mitgegeben werden.... der interne Air-Sensor wurde offenbar als Sensor abgelegt / getagged, folgerichtig wird diese Info dann weitergegeben an die API und IH kann dieses auslesen um dann wiederrum die korrekten Widgets bereitzustellen. Habe ich diese Info nicht, dann weiss IH nicht, was es anbieten soll und folgerichtig habe ich eine leere Hülle.... der Air gibt immer noch ein device weiter, welches nun aber durch JBMedia mit der neuen FW offenbar anders gehändelt wird - vielleicht fehlt auch nur ein Tag / Flag, da der Sensor in der Zone ja auch selber nicht auftaucht....
Wenn dieses so ist, dann dürfte es kein Problem sein, alle anderen Sensoren ebenso zu flaggen / taggen, so dass die API diese Info an IH weitergeben kann....