NEWS
RIKA Firenet Adapter bringt Fehler nach Update auf JS 5.0.12
-
@mcm57
ja genau, diese Abhängigkeiten passen anscheinend nicht mehr und ich hab auch keine Lust, diese im axios package.json selber reinzuschreiben, da es nach einem Update ja wieder das gleiche Problem gäbe. -
@xawa
Request ist seit langem DEPRECATED und request hatte mit node 20 auch Probleme. Wie kanfe Request noch funktioniert ist ungwiss.Etwas von axios auf Request umzustellen ist sicher der dslsche Weg.
-
@xawa
Du brauchst nichts ins axios package zu schreiben,das wäre falsch.AktUSisieRE DEINE packages mal,dann wird das alles bereinigt. Ein ' npm i' sollte da reichen - oder lass den dependabot seine Arbeit tun.
-
@mcm57
vielen Dank für deine Ratschläge Den Adapter habe ich für meinen Pelletsofen anfangs mit request entwickelt und danach gleich auf axios umgestellt wegen "request depricated" und das ganze Thema mit Adapterpflege und ofiziellen Repositories war mir einfach zu viel Aufwand. Danach verlor ich mehr und mehr das Interesse und jetzt müsste ich mich in die ganze Thematik mehr einarbeiten, wofür mir Zeit und immer noch das Interesse fehlt. Hab ja probiert, das Ganze mit axios wieder hinzukriegen, aber hab es nicht geschafft. Wäre schön, wenn sich der Sache ev. jemand anderer annehmen könnte. -
@xawa
Wenn sich hier wer angesprochen fühlt was zu tun kann ich sicher bei Fragen helfen.Mangels passendercHardwsre kann ich jaum was entwickel / testen.
Sollte NUR ein Aktuslisierung der Dependencies notwenfig sein,kann ich das getne versuchenbun. Müsste halt dann wer von einem Fork testen. Kann sein das alles ok ist, kann sein dass das nichts nutzt.
Im Prinzip kann der Adspter auch in den Community Bereich verschoben werdrn. Macht aber auch nur dann sinn wenn ihn wer prinzipiell betreuen kann / will.
Ich schau ev mal am Abend bezügluch reinem Deps Updste
-
@mcm57
falls du Zeit und Lust hast, wäre das eine coole Sache. für div. Tests stehe ich gerne zur Verfügung
Was die Abhängigkeiten betrifft, so habe ich auch schon einen neuen Adapter lokal erzeugt und nach Anleitung unter https://github.com/3846masa/axios-cookiejar-support/blob/main/README.md folgende pakete installiert.npm install axios tough-cookie axios-cookiejar-support
Mit den neuesten paketen gab es aber den gleichen Fehler.
Die Aufgabe meines Adapters besteht darin:
- Anmeldung bei folgender Seite: https://www.rika-firenet.com/web/login und abspeichern des cookies damit folgende Aktion durchgeführt werden kann:
- Json mit aktuellen Einstellungen des Ofens von folgender Seite holen: https://www.rika-firenet.com/api/client/[MeineOfenID]/status
- Nach Änderung von Datenpunkten muss geändertes Json wieder an https://www.rika-firenet.com/api/client/[MeineOfenID]/controls gesendet werden
-
@xawa
Oje
Das klingt weniger gut.
Werd mal trotzdem mal schaun -
@mcm57 sagte in RIKA Firenet Adapter bringt Fehler nach Update auf JS 5.0.12:
@xawa
Oje
Das klingt weniger gut.
Werd mal trotzdem mal schaunJa, schau mal drüber, wenn du magst (nur nicht zu viel Aufwand betreiben). Mit request und der Adapter-Version 0.0.8 klappt es nun ja wieder, und vielleicht packt mich das "Adapterfieber" ja bald wieder mal und ich versuch es mit axios oder einem anderen http-Client nochmal
-
Hab jetzt die neue Version 0.0.8 installiert, funktioniert perfekt. Adapter ist wieder grün und überträgt die Werte. DANKE an alle für die schnelle Hilfe
-
Auch wenn der Adapter u nter js-controlle 5 und ev. höher funktioniert ist dieser als ALPHA TEST-VERSION zu klassifizieren da er (zumindest bisher) nicht in den ioBroker repositories registriert wurde.
Von direkten Installation von GitHub - insbesondere auf produktiven Systemen - wird explizit abgeraten.
GitHub Versionen können sich jederzeit (auch kurzfristig) ändern und durchaus auch in sich inkonsistent und fehlerhaft sein. Versionsangaben von GitHub Installationen sind Schall und Rauch da die Versionsnummer zumindest bei Verwendung der standardmäßigen Umgebung erst im Zuge der Releaseerstellung geändert wird.
Auf explizite Aufforderung durch den Entwickler kann eine GitHub Installation zur Fehlereingrenzung oder zum Test neuer Funktionalität - unter Inkaufnahme des erhöhten Risikos - natürlich erfolgen.
Adapter die nur via GitHub oder npm (also NICHT aus einem der beiden Repositories) installierbar sind sind mit erhöhter Vorsicht zu betrachten. Hier sollte der Entwickler drum ersucht werden eine Aufnahme in die Repositories zu veranlassen indem z.B. ein Issue im Adapterrepository erstellt wird.
Und falls es irgendwie unklar ist:
ioBroker unterstützt folgende Arten von Installation:
-
aus dem STABLE Repository
Das sind Adapter Releases die keine groben Fehler aufweisen (sollten). Natürlich kann es auch dort Fehler geben, die Behebung davon obliegt dem jeweiligen Dev und kann ggF auch dauern.
-
aus dem LATEST Repository
Das sind Adapter Releases die neu erstellt wurden und nur rudimentär getestet sind - oft auch als BETA Releases bezeichnet. Releases aus dem LATEST sind primär für unsere zahlreichen freiwilligen Tester gedacht. BETA / LATEST Releases können durchaus Fehler aufweisen - auch wenn ich davon ausgehe dass jeder aintainer dies zu vermeiden versucht. Vom Einsatz auf produktiven Systemen wird abgeraten außer man braucht irgenein neues Feature (z.B. neues Gerät) unbedingt. Hier muss dann jeder Entscheiden was ihm wichtig ist.
-
direkt von GITHUB
Von Installationen direkt aus Giuthub wird definitiv abgeraten außer auf Anweisung des Maintainers und für den Fall dass man gemeinsam mit diesem etwas testen will. Details siehe oben.
-
direkt von npm
Diese Installation kann erforderlich sein, wenn man eine bestimmte Version installieren möchte / muss. Im Normalfall sollte man direkte npm Installationen ebenso meiden wie direkte GitHub Installationen - ausgenommen um z.B. zu einer bekannten Version downzugraden - obwohl hier wenigstens ein definierter Stand garantiert ist.
Adapter die NUR via npm und/oder nur via GitHub installierbar sind sollte man meiden - diese wurden nicht mal einem rudimentären Review unterzogen und sollten mit dem Attribut "vollständig auf eigenes Risiko verwenden" installiert werden. Hier empfiehlt es sich den Developer zu ersuchen eine Aufnahme in die Repos zu veranlassen. Wenn dieser darauf nicht reagiert sollte man von einer eher kurzen und unklaren Lebensdauer des Adapters ausgehen. Support meiner-/unsererseits für solche Adapter ist mit Sicherheit minimalistisch.
-
-
@xawa sagte in RIKA Firenet Adapter bringt Fehler nach Update auf JS 5.0.12:
axios-cookiejar-support
Ich habe damit auch schon mal experimentiert.
Allerdings muss man nicht unbedingt die Erweiterung verwenden.
Meist erwarten die Seiten ein sogenanntes SessionCookie, so das sie einen einmal authorisierten Benutzer von Anfrage zu Anfrage wiedererkennen.
Dieses Sessioncookie kann man aus der response-Antowort der Authorisierungsanfrage auslesen und dann bei jeder weiterer Anfrage als Cookie mitgeben. Dann ist man nicht unbedingt auf die Funktionsweise einer zusätzlichen Bibliothek angewiesen.
Aber ja, das muss man analysieren und durch reengineeren ausprobieren. Das kostet Zeitich habe letztens beim recherchieren aber noch folgende Möglichkeit gefunden. Ob die funktioniert weiß ich nicht
Hier ist die Openapi definition für rika
https://github.com/jeremiehuchet/rika-firenet-api-rs/blob/b201d614a2e2ad34df6acaa6d3e564a88c635cc7/rika-firenet-openapi/rika-firenet-openapi.yml#L4Theoretisch kann man sich mit dem openapi framework daraus eine zugriffsapi für rika in javascript bauen lassen, die man dann im adapter verwendet.
aber auch da muss man sich im Detail mit beschäftigender api definitionsdate nach müsste ein cookie zurückkommen namens conncect.sid, welches dann bei den weiteren zugriffen verwendet wird.
-
@oliverio sagte in RIKA Firenet Adapter bringt Fehler nach Update auf JS 5.0.12:
müsste ein cookie zurückkommen namens conncect.sid, welches dann bei den weiteren zugriffen verwendet wird.
Tut es
Ich habe den Adapter mal geforked: https://github.com/DEV2DEV-DE/ioBroker.rika-firenet
Contributions welcome! Damit der dann auch mal ins Repo kommtJetzt muss ich mir noch mal wieder ins Gedächtnis rufen, wie ich mit axios das Cookie bei einer erneuten Anfrage mitgebe.
-
Bitte mit dem originalen Dev Kontakt aufnehmen. Ohne seine Zustimmung kann der Adapter schon rein technisch nicht als rika-firenet in ein Repository kommen.
Daher:
- aus Gründen der guten Umgangsform bitte mal den Dev kontaktieren.
- Wenn er zustimmt kannst du den Adapter gerne persönluch übernehmen oder wir schieben ihn in den community Bereich
Wenn er nicht zustimmt oder nicht antwortet dann musst du den Adapter jedenfalls umbenennen.
- aus Gründen der guten Umgangsform bitte mal den Dev kontaktieren.
-
@mcm1957 sagte in RIKA Firenet Adapter bringt Fehler nach Update auf JS 5.0.12:
Wenn er nicht zustimmt oder nicht antwortet dann musst du den Adapter jedenfalls umbenennen.
Erledigt. Der Adapter scheint mir verwaist.
Mal sehen ob der Dev sich meldet. -
@codierknecht
Er hat schon geantwortet und er benutzt ioBroker nicht mehr.ERGO
Bitte lass mich wissen ob du den Adapoter privat übernehmen willst oder ob ich ihn in den iobroker-community-bereich schieben soll und du ihn dort als (primärer) Maintainer betreuen / anpassen willst. -
@mcm1957 sagte in RIKA Firenet Adapter bringt Fehler nach Update auf JS 5.0.12:
Er hat schon geantwortet und er benutzt ioBroker nicht mehr.
Gerade gesehen.
Das ging schneller als erwartet.Bitte lass mich wissen ob du den Adapoter privat übernehmen willst oder ob ich ihn in den iobroker-community-bereich schieben soll und du ihn dort als (primärer) Maintainer betreuen / anpassen willst.
Dann schieb ihn bitte in die Community-Adapter. Da ist er meiner Meinung nach besser aufgehoben.
-
OK DANKE
Ich schau dass das zügig erfolgt, -
@codierknecht sagte in RIKA Firenet Adapter bringt Fehler nach Update auf JS 5.0.12:
Jetzt muss ich mir noch mal wieder ins Gedächtnis rufen, wie ich mit axios das Cookie bei einer erneuten Anfrage mitgebe.
OK - hab's gefunden.
Wird einfach im Header mitgegeben.@HAL
Sobald der Adapter im community-repo ist, werde ich meine lokal gemachten Änderungen dort einbauen.
Im ersten Schritt sollte der Adapter dann erstmal grundsätzlich funktionieren und Werte liefern.
In einem zweiten Schritt schreibt er geänderte Werte auch wieder zurück, damit man den Ofen auch steuern kann.Da wir (ich) aber nicht selbst über einen solchen Ofen verfügen, ist dazu die Mithilfe eines Besitzers nötig.
Ich bitte da aber um etwas Geduld ...
-
@codierknecht wenn du es für sinnvoll hältst kannst du dann im Tester - Bereich einen Thread eröffnen
-
@homoran sagte in RIKA Firenet Adapter bringt Fehler nach Update auf JS 5.0.12:
wenn du es für sinnvoll hältst kannst du dann im Tester - Bereich einen Thread eröffnen
Werde ich dann ... zu gegebener Zeit.