iobroker-community-adapters / ioBroker.sma-em

ioBroker Adapter for SMA Energy Meter & Sunny Home Manager 2
MIT License
25 stars 16 forks source link

Fehler Invalid own IP address 192.168.179.101, please try another one from the Multicast Settings configuration panel #722

Closed ZeroQool007 closed 1 month ago

ZeroQool007 commented 5 months ago

Hallo zusammen, ich habe seit kurzem folgende Fehlermeldung: Invalid own IP address 192.168.179.101, please try another one from the Multicast Settings configuration panel und ich kann mir nicht erklären warum. Der SMA HM2.0 ist online und auch unter der IP:

image

Hat jemand einen Tip? Danke

ZeroQool007 commented 4 months ago

Habe den Fehler gefunden. Bitte den Code fixen:

if (details.address === ownIP && !details.internal && (details.family === 'IPv4' || details.family === 4)) {

Family ist ein INTEGER und kein String mehr bzw "IPv4", sondern nur noch 4.

mcm1957 commented 4 months ago

According to node Dokumentation ist family ein string, der code sieht daher OK aus.

https://nodejs.org/api/os.html#osnetworkinterfaces

Please provide full version Information

Adapter Js-controller Node O/S

And please attach a debug log

pdbjjens commented 3 months ago

@mcm1957 Es gab offenbar eine Umstellung der family property in nodejs 18.0.0 von string auf number, die dann aber in nodejs 18.4.0 wieder rückgängig gemacht wurde. https://nodejs.org/api/os.html#osnetworkinterfaces (History aufklappen)

Aktuell (nodejs 18.4.0 und aufwärts) ist die family property ein String.

@ZeroQool007 Welche nodejs Version setzt Du momentan ein? Löst ein upgrade von nodejs auf >= 18.4.0 das Problem?

mcm1957 commented 3 months ago

Ok danke Node 18.0.0 hab ich nicht gechecked. 😀 Hab nur in 22 20 u 18 gesehen dass string passen sollte.

ZeroQool007 commented 3 months ago

@mcm1957 Es gab offenbar eine Umstellung der family property in nodejs 18.0.0 von string auf number, die dann aber in nodejs 18.4.0 wieder rückgängig gemacht wurde. https://nodejs.org/api/os.html#osnetworkinterfaces (History aufklappen)

Aktuell (nodejs 18.4.0 und aufwärts) ist die family property ein String.

@ZeroQool007 Welche nodejs Version setzt Du momentan ein? Löst ein upgrade von nodejs auf >= 18.4.0 das Problem?

Muss ich später gucken. Auf jeden Fall Mache ich die node Updates nur mit dem iobroker Befehl. Somit weiß ich das die Version auf jeden Fall Supportes wird. Nichts desto trotz ist mein Fix eine Erweiterung und es spielt deshalb dann keine Rolle mehr welche Version genutzt wird, weil beide Varianten unterstützt werden. Gruß

pdbjjens commented 2 months ago

@ZeroQool007 Mich interessiert immer noch die Frage, ob ein upgrade von nodejs auf >= 18.4.0 das Problem bei Dir löst. Ich würde mich über Dein Feedback zu dieser Frage freuen. @mcm1957 Wenn das der Fall ist, müssen wir überlegen, ob es wirklich notwendig ist, diesen fix noch zu machen, da ab nodejs >= 18.4.0 das Problem nicht mehr existiert und es offenbar kaum user gibt, die nodejs >= 18.0.0 <18.4.0 überhaupt noch einsetzen. Sonst hätten wir sicher mehr issues zu dem Thema. Auf jeden Fall hätte dieser Fix m.M.n Zeit bis zum nächsten maintenance release Anfang 2025.

mcm1957 commented 2 months ago

@pdbjjens Nein, der Fix - besser Workaround - macht m.E. wenig Sinn. Warum sollten wir Code einbauen der nur für eine spezielle - derzeit bereits angezählte - ältere Node Release relvant ist. Empfohlene Node Version ist mittlerweile Node 20. Es sollte daher vollkommen ausreichen in einer patch Version engines auf 18.4.0 anzuheben. Das könnte / sollte ev. auch kurzfristig passieren da außer einem Eintrag in packages.json dazu nichts notwendig ist und die Sideeffekts ohne Codeänderung minimalst sein sollten.

pdbjjens commented 1 month ago

Fixed with release v1.1.0