72_FRITZBOX: Sperren/Entsperren von Netzwerkgeräten / DECT Telefonen u weiteres

Begonnen von JoWiemann, 25 Januar 2021, 10:30:32

Vorheriges Thema - Nächstes Thema

JoWiemann

Hallo,

noch einmal die Fehlerbehandlung verstärkt.

FB-Fork 0.2.11b

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

RalfRog

Schnelltest: kein Restart  ;D
set fritzbox lockLandevice F4_BF_80_11_22_33 on  (ist landevice443370)
im Log steht die nach landevice443370 "übersetzte" MAC


Scheint zu funktionieren.
get fritzbox lanDeviceInfo F4_BF_80_11_22_22     --> Fenster mit den Infos poppt auf
Im Log steht die nach landevice169953 "übersetzte" MAC.


LOG
2022.12.16 00:34:31.856 4: FRITZBOX [fritzbox: Proof_Params.1633] - INFO: set fritzbox lanDeviceInfo f�r Version: 07.29
2022.12.16 00:34:31.858 4: FRITZBOX [fritzbox: Proof_Params.1679] - INFO: fritzbox lanDeviceInfo landevice169953
2022.12.16 00:34:31.859 4: FRITZBOX [fritzbox: Lan_Device_Info.6370] - INFO: LanDevice to proof: landevice169953 for: info
2022.12.16 00:34:31.861 3: FRITZBOX: set fritzbox info
2022.12.16 00:34:31.862 4: FRITZBOX [fritzbox: Lan_Device_Info.6400] - INFO: FRITZBOX_Lan_Device_Info f�r Version: 07.29
2022.12.16 00:34:31.864 4: FRITZBOX [fritzbox: Lan_Device_Info.6408] - INFO: set fritzbox info xhr 1 xhrId all backToPage netDev dev landevice169953 initalRefreshParamsSaved true lang de page edit_device
2022.12.16 00:34:31.870 4: FRITZBOX [fritzbox: Web_OpenCon.5761] - INFO: Open Web connection to 10.x.y.z
2022.12.16 00:34:31.872 4: FRITZBOX [fritzbox: Web_OpenCon.5762] - INFO: getting new SID
2022.12.16 00:34:32.580 4: FRITZBOX [fritzbox: Web_OpenCon.5766] - INFO: Web session opened with sid 6f49468724eb4fbc
2022.12.16 00:34:32.581 4: FRITZBOX [fritzbox: Lua_Data.5958] - INFO: Request data via API dataQuery.
...
...
2022.12.16 00:34:34.730 4: FRITZBOX [fritzbox: Lan_Device_Info.6434] - INFO: landevice: landevice169953landevice: landevice169953

FHEM auf Raspi 2B mit nanoCUL, HM-MOD-RPI-PCB und über LAN MAX!Cube mit a-culFW (Stack 868 + 433)
HM- Fensterkontakte, UP-Schalter, Bewegungsmelder und ein Rauchmelder

RalfRog

Funktion bei korrekter Eingabe klappt jetzt mit FB-Fork 0.2.11b.

Test inkorreter Eingabe

1. Test von get lanDeviceInfo mit inkorrekten MAC Adressen
   get fritzbox lanDeviceInfo F4_BF_80_11_22_33           ok -> korrekte Adresse
   get fritzbox lanDeviceInfo F4_BF_80_99_88_77           ok -> ERROR: non existing landevice: F4_BF_80_99_88_77
   get fritzbox lanDeviceInfo F4-BF-80-11-22-33             ok -> ERROR: no valid lanDeviceInfo parameter: F4-BF-80-11-22-33 given
   get fritzbox lanDeviceInfo mac_F4_BF_80_11_22_33  ok -> ERROR: no valid lanDeviceInfo parameter: mac_F4_BF_80_11_22_33 given
   get fritzbox lanDeviceInfo <ein Text>                           ok -> ERROR: no valid lanDeviceInfo parameter: <ein Text>

2. Test von set lockLandevice mit inkorrekten MAC Adressen
    Ergebnisse wie oben


Auch mögliche Fehleingaben sind abgefangen   :)

Gruß Ralf

Edit Nachtrag:
Meine 7490 läuft auch wieder.
Gleiche Tests ohne Probleme.
FHEM auf Raspi 2B mit nanoCUL, HM-MOD-RPI-PCB und über LAN MAX!Cube mit a-culFW (Stack 868 + 433)
HM- Fensterkontakte, UP-Schalter, Bewegungsmelder und ein Rauchmelder

JoWiemann

Hallo Ralf,

vielen Dank für die ausgiebigen Test. Echt Super.

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

RalfRog

Hallo Jo
Da ist ein Rechenfehler im Reading box_uptime

Zitat
box_uptime        12514 sec = 1T 00:75:14                          2022-12-22 10:02:38
box_uptime_hw     272T 19:38:48s seit Thu Mar 24 14:23:51 2022     2022-12-22 10:02:38
box_wlanCount   6                                                  2022-12-22 10:02:38

Der Rechenfehler im Code fällt nur auf, wenn die Fritzbox nicht alle 24h eine neue IP bekommt.
12514 sec sind 1T 07:15:14. Bin drauf gekommen weil ich mir ein userReading für die Uptime der Box selber bauen wollte und im Code abgeguckt hatte.

2804      my $Sek = $1;
2805      my $Std = int($Sek / 3600);
2806      my $Tag = int($Std / 24 );
2807         $Std = $Std - $Std * $Tag; ==> für die Stunden müssen von den Gesamtstunden (Zeile 2805) 24 * $Tag abgezogen werden; so kommt immer 0 raus
2808      my $Min = int(($Sek - $Std * 3600) / 60); ==> dann sind die Minuten auch falsch, da 0 abgezogen wird
2809         $Sek = $Sek - $Std * 3600 - $Min * 60;


Ich habe es dann so gemacht (ein paar Klammern könnten noch weg)
my $Sek = $1;
my $Tag  = int($Sek/86400);
my $Std  = int(($Sek/3600)-(24*$Tag));
my $Mins = int(($Sek/60)-($Std*60)-(1440*$Tag));
$Sek -= (($Mins*60)+($Std*3600)+(86400*$Tag));


Gruß Ralf

P.S.
Es gibt das Reading box_stdDialPort. Die Auswahlliste zum Attribut disableBoxReadings enthält die Parameter box_std & box_DialPort. Ist das eventuell noch ein"Schreibfehler" aus der Entwicklungsphase? Diese Readings gibt es ja nicht.
[Edit] Bzw. sind entstanden als ich sie einmal im Atrribut an- und wieder abgehakt hatte; sie enthalten 0[/Edit]

Auch der Parameter dect1 sieht wie ein Überbleibsel aus. Obwohl ich es nicht schlecht finde im Bedarfsfall die dect* auch aus der Anzeige herauszunehmen.

FHEM auf Raspi 2B mit nanoCUL, HM-MOD-RPI-PCB und über LAN MAX!Cube mit a-culFW (Stack 868 + 433)
HM- Fensterkontakte, UP-Schalter, Bewegungsmelder und ein Rauchmelder

JoWiemann

Hallo Ralf,

danke für die Information. Vielleicht brauche ich ja mal eine Weihnachtspause und widme mich dem.

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

RalfRog

Hi Jörg
Schön. Ist ja nicht "lebenswichtig".
Schöne Auszeit - egal ob von FHEM oder Weihnachtsstress  ;D

Für Interessierte:
Die Uptime der Box (statt nur der IP-Verbindung) gibts über TR064:
get <NameFritz> tr064Command DeviceInfo:1 deviceinfo GetInfo als Parameter NewUpTime

Gruß Ralf

P.S.
Weiss jemand wie man an die DSL-Uptime kommt. Die Box schreibt es ja in der Übersicht der DSL-Informationen.
FHEM auf Raspi 2B mit nanoCUL, HM-MOD-RPI-PCB und über LAN MAX!Cube mit a-culFW (Stack 868 + 433)
HM- Fensterkontakte, UP-Schalter, Bewegungsmelder und ein Rauchmelder

JoWiemann

Zitat von: RalfRog am 22 Dezember 2022, 15:00:56
Hi Jörg
Weiss jemand wie man an die DSL-Uptime kommt. Die Box schreibt es ja in der Übersicht der DSL-Informationen.

Hallo Ralf,

mit:

get <FritzBoy> luaData xhr 1 lang de page dslOv xhrId all

bekommst Du ein JSON zurück, dass Du entsprechend auswerten kannst.

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

RalfRog

Zitat von: JoWiemann am 27 Dezember 2022, 10:07:15
..
get <FritzBoy> luaData xhr 1 lang de page dslOv xhrId all
..

trau mich fast nicht zu antworten. Mein FHEM macht nen Restart  ???

Letzter Eintrag im Log:
Can't call method "Dumper" on unblessed reference at ./FHEM/72_FRITZBOX.pm line 6097.

Gruß Ralf
FHEM auf Raspi 2B mit nanoCUL, HM-MOD-RPI-PCB und über LAN MAX!Cube mit a-culFW (Stack 868 + 433)
HM- Fensterkontakte, UP-Schalter, Bewegungsmelder und ein Rauchmelder

JoWiemann

Hallo Ralf,

hast Du Dir schon die neue Version installiert? Sollte dort nicht vorkommen.

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

RalfRog

Hallo Jörg
Ja: my $ModulVersion = "FB-Fork 0.2.11b";

Damit waren die Restarts bei den Abfragen mit "lanDeviceInfo" und " lockLandevice" auch alle weg. => Zumindest auf meinem Test-FHEM.

Hier bin ich gerade testhalber mit "set lockLandevice MAC" auch in einen Restart.
Ich check mal gerade und vergleiche TestFHEM gegen mein AktivFHEM - bevor ich hier die Pferde wild mache.

Gruß Ralf


FHEM auf Raspi 2B mit nanoCUL, HM-MOD-RPI-PCB und über LAN MAX!Cube mit a-culFW (Stack 868 + 433)
HM- Fensterkontakte, UP-Schalter, Bewegungsmelder und ein Rauchmelder

JoWiemann

Zitat von: RalfRog am 27 Dezember 2022, 19:17:04
Hallo Jörg
Ja: my $ModulVersion = "FB-Fork 0.2.11b";

Damit waren die Restarts bei den Abfragen mit "lanDeviceInfo" und " lockLandevice" auch alle weg. => Zumindest auf meinem Test-FHEM.

Hier bin ich gerade testhalber mit "set lockLandevice MAC" auch in einen Restart.
Ich check mal gerade und vergleiche TestFHEM gegen mein AktivFHEM - bevor ich hier die Pferde wild mache.

Gruß Ralf

Hallo Ralf,

bei "set lockLandevice MAC" wäre das Log interessant.

Und damit Du auch weiterhin etwas zum Testen hast. Anbei eine FB-Fork 0.2.12 Beta bei der lockLandevice auf nonBlocking umgestellt ist. Das Ergebnis des set wird im Reading lockLandevStat zurück gegeben.

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

RalfRog

Zitat von: RalfRog am 27 Dezember 2022, 19:17:04
Ja: my $ModulVersion = "FB-Fork 0.2.11b";

Damit waren die Restarts bei den Abfragen mit "lanDeviceInfo" und " lockLandevice" auch alle weg. => Zumindest auf meinem Test-FHEM.

Hier bin ich gerade testhalber mit "set lockLandevice MAC" auch in einen Restart.
Ich check mal gerade und vergleiche TestFHEM gegen mein AktivFHEM - bevor ich hier die Pferde wild mache.

Habe das TestFHEM wieder eingeschaltet mit FB-Fork 0.2.11b
Hmmm... "set lockLandevice MAC" ist ordnungsgemäß ausgeführt worden (warum auf dem LiveSystem nicht: zweite Frage).

Aber "get <FritzBoy> luaData xhr 1 lang de page dslOv xhrId all" verursacht auch hier einen Restart.

Logmeldungen vor Restart (verbose5):

2022.12.27 23:40:56.776 4: FRITZBOX [fritzbox: Get.1487] - INFO: get fritzbox luaData [8] xhr 1 lang de page dslOv xhrId all
2022.12.27 23:40:56.778 4: FRITZBOX [fritzbox: Get.1502] - INFO: get fritzbox luaData 'xhr' => '1'
'lang' => 'de'
'page' => 'dslOv'
'xhrId' => 'all'

2022.12.27 23:40:56.784 4: FRITZBOX [fritzbox: Web_OpenCon.5761] - INFO: Open Web connection to aa.bb.cc.dd
2022.12.27 23:40:56.785 4: FRITZBOX [fritzbox: Web_OpenCon.5762] - INFO: getting new SID
2022.12.27 23:40:57.179 4: FRITZBOX [fritzbox: Web_OpenCon.5766] - INFO: Web session opened with sid c75cc1bca7c2bfc1
2022.12.27 23:40:57.180 4: FRITZBOX [fritzbox: Lua_Data.5958] - INFO: Request data via API dataQuery.
2022.12.27 23:40:57.182 4: FRITZBOX [fritzbox: Lua_Data.5962] - INFO: URL: http://aa.bb.cc.dd/data.lua?sid=c75cc1bca7c2bfc1
2022.12.27 23:40:58.490 4: FRITZBOX [fritzbox: Lua_Data.5967] - INFO: Response: 200 OK
{"pid":"dslOv","hide":{"rss":true,"mobile":true,"provServ":true,"liveTv":true,"dectMail":true,"dectRdio":true,"ssoSet":true,"liveImg":true},"time":[],"data":{"connectionData":{"externApValue":"Version 12.3.86","modell":"FRITZ!Box 7590","lineLength":252,"dslamId":"Huawei","externAPHeader":"DSL-Vermittlungsstelle","externApText":"Broadcom","line":[{"state":"ready","timePrefix":"Verbindungsdauer:","trainState":"aktiv","mode":"VDSL2 17a G.Vector (ITU G.993.5)","trainStatePrefix":"DSL-Internet:","time":"6 Stunden und 39 Minuten"}],"version":"1.180.131.76","isDebug":false,"versiontext":"DSL-Version","dsRate":"114,65 Mbit\/s","usRate":"42,46 Mbit\/s","settingsHint":true}},"sid":"c75cc1bca7c2bfc1"}

2022.12.27 23:40:58.492 4: FRITZBOX [fritzbox: Lua_Data.6012] - INFO: Response: {"pid":"dslOv","hide":{"rss":true,"mobile":true,"provServ":true,"liveTv":true,"dectMail":true,"dectRdio":true,"ssoSet":true,"liveImg":true},"time":[],"data":{"connectionData":{"externApValue":"Version 12.3.86","modell":"FRITZ!Box 7590","lineLength":252,"dslamId":"Huawei","externAPHeader":"DSL-Vermittlungsstelle","externApText":"Broadcom","line":[{"state":"ready","timePrefix":"Verbindungsdauer:","trainState":"aktiv","mode":"VDSL2 17a G.Vector (ITU G.993.5)","trainStatePrefix":"DSL-Internet:","time":"6 Stunden und 39 Minuten"}],"version":"1.180.131.76","isDebug":false,"versiontext":"DSL-Version","dsRate":"114,65 Mbit\/s","usRate":"42,46 Mbit\/s","settingsHint":true}},"sid":"c75cc1bca7c2bfc1"}

Can't call method "Dumper" on unblessed reference at ./FHEM/72_FRITZBOX.pm line 6097.

Die Antwort kommt noch (enthält auch die Daten = "DSL-Internet:","time":"6 Stunden und 39 Minuten").
Aber es klemmt vermutlich bei der Aufarbeitung der Antwort.

Den FB-Fork 0.2.12 Beta habe ich jetzt noch nicht benutzt. Vemute aber, dass das Problem dort auch drin ist.
FHEM auf Raspi 2B mit nanoCUL, HM-MOD-RPI-PCB und über LAN MAX!Cube mit a-culFW (Stack 868 + 433)
HM- Fensterkontakte, UP-Schalter, Bewegungsmelder und ein Rauchmelder

JoWiemann

Zitat von: RalfRog am 27 Dezember 2022, 23:56:53
Habe das TestFHEM wieder eingeschaltet mit FB-Fork 0.2.11b

Hallo Ralf,

im ersten Thread hatte ich schon am 27.12.2022 die Version: FB-Fork 0.2.11c veröffentlicht. Dort habe ich schon ein weiteren Punkt mit einer Fehlerbehandlung versehen, der in der Version: FB-Fork 0.2.11b bei der Abfrage noch zu einem Fehler führte.

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

RalfRog

Alles klar. Das hatte ich übersehen.
D. h. 0.2.12 Beta setzt auf 0.2.11c auf.

Ich teste dann also den 0.2.12 Beta auf dem Testsystem.

Im Lifesystem geh ich dann besser auf 0.2.11c, zumal dort ja die neuen Readings (und weitere Änderungen) drin sind.

Gruß Ralf
FHEM auf Raspi 2B mit nanoCUL, HM-MOD-RPI-PCB und über LAN MAX!Cube mit a-culFW (Stack 868 + 433)
HM- Fensterkontakte, UP-Schalter, Bewegungsmelder und ein Rauchmelder