72_FRITZBOX.pm ab Version 08.10.00

Begonnen von JoWiemann, 30 Juni 2025, 09:23:51

Vorheriges Thema - Nächstes Thema

JoWiemann

Zitat von: schwatter am 05 Juli 2025, 22:00:40Nabend,

ich habe eine 7590 mit 8.03 und jetzt nach dem Wiki installiert.
Bekomme mit den letzten beiden Versionen hier aus dem Thread nach reload.

Too many arguments for main::FRITZBOX_get_TR064_ServiceList at ./FHEM/72_FRITZBOX.pm line 3536, near ""desc.xml")"
Too many arguments for main::FRITZBOX_get_TR064_ServiceList at ./FHEM/72_FRITZBOX.pm line 8132, near ""wancommonifconfig1") "
BEGIN not safe after errors--compilation aborted at ./FHEM/72_FRITZBOX.pm line 13015.

Gruß schwatter

Starte bitte Fhem einmal neu.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

juemuc

Hallo Jörg,

ich hatte noch nicht Deine letzte Version eingespielt. Mit der letzten version werden auch die Readings wieder gelöscht.

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

juemuc

Zitat von: schwatter am 05 Juli 2025, 22:00:40Nabend,

ich habe eine 7590 mit 8.03 und jetzt nach dem Wiki installiert.
Bekomme mit den letzten beiden Versionen hier aus dem Thread nach reload.

Too many arguments for main::FRITZBOX_get_TR064_ServiceList at ./FHEM/72_FRITZBOX.pm line 3536, near ""desc.xml")"
Too many arguments for main::FRITZBOX_get_TR064_ServiceList at ./FHEM/72_FRITZBOX.pm line 8132, near ""wancommonifconfig1") "
BEGIN not safe after errors--compilation aborted at ./FHEM/72_FRITZBOX.pm line 13015.

Gruß schwatter

Hallo schwatter,

Du musst FHEM neu starten (shutdown restart).

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

schwatter

Danke euch, das war es. Jetzt schaue ich wegen den Arrays. "get <device> javaScript cpu" funktioniert.

Gruß schwatter

JoWiemann

Hallo,

anbei die Version 08.10.00. Sofern Euch nichts mehr auffällt würde ich diese Version dann ins SVN einchecken.

Ganz neu ist das:
get <name> callApifromList <data.lua|query.lua|tr064|javascript>

Es wird jeweils für data.lua, query.lua, tr064 oder javascript eine HTML-Tabelle mit den bekannten sinnvollen Parametern bereit gestellt.
In der Tabelle befinden sich in der ersten Spalte Links, mit denen der Aufruf sofort angestoßen werden kann. Das Ergebnis wird dann in einem PopUp-Fenster angezeigt.

Bitte vorher ein Fhem Update machen oder die aktuellste Version von 01_FHEMWEB.pm einspielen. Hier hat Rudi etwas angepasst, da sonst die Links nicht funktionieren. Bitte auch Fhem neu starten. Ein reload von 72_FRITZBOX.pm ist nicht ausreichend.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

juemuc

Hallo Jörg,

die neue Funktion

get <name> callApifromList <data.lua|query.lua|tr064|javascript>

finde ich gut. Leider bekomme ich mit dem Parameter "javascript" für alle Punkte "ERROR: Bad Request". Hier ein Beispiel:

Result of data = phonebook/books
----------------------------------------------------------------------
ERROR: Bad Request
oder

Result of data = generic?ui=cpu
----------------------------------------------------------------------
ERROR: Bad Request

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

juemuc

Hallo Jörg,

mir sind jetzt noch zwei Punkte aufgefallen:

1. Wenn ich den Rechner komplett neu starte, dann sind die Definitionen meiner beiden Fritzboxen weg. Im Logfile stehen folgende Infos:

2025.07.09 15:51:11.077 2: [Fritzbox6690 | 0000 | none | Define.929] - SIGNIFICANT:phost -> not defined
2025.07.09 15:51:11.077 1: define Fritzbox6690 FRITZBOX fritzbox6690: FRITZBOX-define: DNS name fritzbox6690 could not be resolved
und
2025.07.09 15:51:11.233 2: [Fritzbox7490 | 0000 | none | Define.929] - SIGNIFICANT:phost -> not defined
2025.07.09 15:51:11.233 1: define Fritzbox7490 FRITZBOX Fritzbox7490: FRITZBOX-define: DNS name Fritzbox7490 could not be resolved

Wenn ich dann die beiden Definitionen aus dem Testsystem wieder ins Prod-System per "Raw definition" übernehme, erhalte ich die Fehlermeldung
box_dns not available for Fritz!OS: 0
Ich muss dann diese Zeile löschen und das Attribut nachträlich setzen.

Du kannst dies reproduzieren, wenn die eine Änderung per "Raw definion" durchführst.

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

JoWiemann

Zitat von: juemuc am 09 Juli 2025, 16:24:17Hallo Jörg,

mir sind jetzt noch zwei Punkte aufgefallen:

1. Wenn ich den Rechner komplett neu starte, dann sind die Definitionen meiner beiden Fritzboxen weg. Im Logfile stehen folgende Infos:

2025.07.09 15:51:11.077 2: [Fritzbox6690 | 0000 | none | Define.929] - SIGNIFICANT:phost -> not defined
2025.07.09 15:51:11.077 1: define Fritzbox6690 FRITZBOX fritzbox6690: FRITZBOX-define: DNS name fritzbox6690 could not be resolved
und
2025.07.09 15:51:11.233 2: [Fritzbox7490 | 0000 | none | Define.929] - SIGNIFICANT:phost -> not defined
2025.07.09 15:51:11.233 1: define Fritzbox7490 FRITZBOX Fritzbox7490: FRITZBOX-define: DNS name Fritzbox7490 could not be resolved

Wenn ich dann die beiden Definitionen aus dem Testsystem wieder ins Prod-System per "Raw definition" übernehme, erhalte ich die Fehlermeldung
box_dns not available for Fritz!OS: 0
Ich muss dann diese Zeile löschen und das Attribut nachträlich setzen.


Hallo Jürgen,

hm, wundert mich, dass das jetzt erst auftaucht. Die Prüfung auf DNS Auflösung ist schon sehr lange im Modul vorhanden.
Ich prüfe mit inet_aton(), ob der Host über DNS aufgelöst werden kann. Wie gesagt, schon sehr lange im Modul.box_dns not available for Fritz!OS: 0
Ist dann ein Folgefehler, weil die Fritz!OS Version nicht ermittelt werden konnte.
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

JoWiemann

Zitat von: juemuc am 09 Juli 2025, 15:48:23Hallo Jörg,

die neue Funktion

get <name> callApifromList <data.lua|query.lua|tr064|javascript>

finde ich gut. Leider bekomme ich mit dem Parameter "javascript" für alle Punkte "ERROR: Bad Request". Hier ein Beispiel:

Result of data = phonebook/books
----------------------------------------------------------------------
ERROR: Bad Request
oder

Result of data = generic?ui=cpu
----------------------------------------------------------------------
ERROR: Bad Request

Viele Grüße
Jürgen

Hallo Jürgen, bei welcher FritzBox bekommst Du die Meldung. Bei der 7490 sollte der Menüpunkt gar nicht erst erscheinen, da diese FB ja kein Fritz!OS 8.00 erhalten hat.

Bei Deiner 6690 kann ich leider nicht testen, da ich die nicht habe. Du kannst aber mit get <name> javaScript jeden der Parameter mal ohne generic?ui= testen. Die 6690 muss aber das Fritz!OS 8.02 oder die Fritz!Labor 8.10 haben.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

juemuc

Hallo Jörg,

ja das ist nur bei der FB6690. Hier müsste grundsätzlich "?ui=" durch "/" ersetzt werden. Dann gehen diese Befehle. Zum Beispiel:

Result of data = generic/aura
----------------------------------------------------------------------
{
  'data' => {
              'enabled' => '0',
              'aura4printer' => '0',
              'aura4other' => '0',
              'status' => '1',
              'aura4storage' => '0'
            },
  'sidNew' => 0,
  'sid' => 'ace79b41eb2a8e6a'
}

Dort wo schon ein "/" oder nur ein Wort steht, habe ich keine Idee. Diese funktionieren nicht.

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).