Brauche Hilfe bei der Umstellung von FBAHA auf FBAHAHTTP

Begonnen von Tom111, 30 August 2017, 04:39:57

Vorheriges Thema - Nächstes Thema

Tom111

Hallo,
ich habe insgesamt 6 Dect200 Steckdosen und dazu noch 2 DECT 546e Powerlineadapter.
Da ich ja jetzt irgendwann meine Fritzbox updaten muss, möchte ich vorab alles auf FBAHHTTP umstellen.

Was muss ich an folgendem Beispiel ändern, damit es funktioniert? (unwichtige Attribute habe ich weggelassen!)

define fb1 FBAHA 192.168.178.1:2002
#
# Gruppe 1
define DECT_Group_CAM FBDECT 900 switch
attr DECT_Group_CAM IODev fb1
#
# Steckdose 1
define DECT_RasPiNETZ FBDECT 16 switch
attr DECT_RasPiNETZ IODev fb1
#
# Powerline 546e 1
define DECT_546e_Keller FBDECT 20000 switch
attr DECT_546e_Keller IODev fb1


Mit dieser Beschreibung komme ich irgendwie nicht zurecht:
https://forum.fhem.de/index.php?topic=53147.0

Danke!
FHEM 5.9 auf Raspberry Pi - 3B+ - Stretch-5.10.88+ | CUL868 CC1101 - USB - Lite module - V3 FW 1.67
Fritz!Box 7490 OS 07.29 / Fritz!Dect200 / Fritz!Powerline 546E
FS20ST-4/ FS20 DI-5/ FS20LS/ FS20 PIRI-2-KU/ FS20 TFK/ FS20S4A/FS20 SU-3/FS20 S20-3
HMS100TF/FHT80TF-2/ASH2200/S300TH/MiLight-Bridge V

peter.kramer

Hallo,

ich stehe vor demselben Problem. Habe meinen 546E aus "versehen" upgedatet, jetzt kann ich die Steckdose nicht mehr schalten. Und mit dem  define fbahahttp FBAHAHTTP fritz.box komme ich nicht klar.

Grüße
Peter

Lichti

Nachdem FBAHA mit der neuen FritzBox FW nicht mehr zu gehen scheint, wollte ich auch auf FBAHAHTTP umsteigen:

define FBdect FBAHAHTTP fritz.box
attr FBdect fritzbox-user fhem
set FBdect password 1234

Bekomme aber nur folgenden Fehler;
FBdect error: cannot get SID, check connection/hostname/fritzbox-user/password

Was ist falsch ?

rudolfkoenig

Entweder kann der Benutzer fhem mit 1234 sich nicht anmelden, oder er hat keine Berechtigung auf dem fritz.box die Smart Home Daten zuzugreifen. Oder das Konto ist nicht aktiv.
Vlt. sieht man mehr mit "attr global verbose 5" im FHEM-Log.

Lichti

#4
Hab jetzt extra mal einen neuen User fhem mit pass fhem1234 und Smart-Home Berechtigung auf der FritzBox eingetragen. Benutzer ist auch aktiv.

Def:
define FBdect FBAHAHTTP fritz.box
attr FBdect fritzbox-user fhem
set FBdect password fhem1234

Im Log steht:
2017.09.06 18:58:32 4: HttpUtils url=http://fritz.box/login_sid.lua
2017.09.06 18:58:32 5: HttpUtils request header:
GET /login_sid.lua HTTP/1.0
Host: fritz.box
User-Agent: fhem

2017.09.06 18:58:32 4: http://fritz.box/login_sid.lua: HTTP response code 200
2017.09.06 18:58:32 4: HttpUtils http://fritz.box/login_sid.lua: Got data, length: 166
2017.09.06 18:58:32 5: HttpUtils response header:
HTTP/1.0 200 OK
Connection: close
Content-Type: text/xml
2017.09.06 18:58:32 4: HttpUtils url=http://fritz.box/login_sid.lua?username=fhem
2017.09.06 18:58:32 5: HttpUtils request header:
POST /login_sid.lua?username=fhem HTTP/1.0
Host: fritz.box
User-Agent: fhem
Content-Length: 78
Content-Type: application/x-www-form-urlencoded

2017.09.06 18:58:32 4: http://fritz.box/login_sid.lua?username=fhem: HTTP response code 200
2017.09.06 18:58:32 4: HttpUtils http://fritz.box/login_sid.lua?username=fhem: Got data, length: 166
2017.09.06 18:58:32 5: HttpUtils response header:
HTTP/1.0 200 OK
Connection: close
Content-Type: text/xml
2017.09.06 18:58:32 2: FBdect error: cannot get SID, check connection/hostname/fritzbox-user/password

Ah ja, ich habe heute die FB7580 auf Version 06.90 upgedatet. Evtl. hängt's damit zusammen.
Ob es vorher gegangen wäre, kann ich nicht sagen.
FBAHA ging jedenfalls nicht mehr.

rudolfkoenig

Kannst du bitte ein Verbindungsaufbau mit dem angehaengten FritzBoxUtils.pm versuchen, und die FHEM-Log Ausgaben hier posten?

Lichti

Hier die Ausgabe:

2017.09.07 09:42:02 5: HttpUtils request header:
GET /login_sid.lua HTTP/1.0
Host: fritz.box
User-Agent: fhem

2017.09.07 09:42:02 4: http://fritz.box/login_sid.lua: HTTP response code 200
2017.09.07 09:42:02 4: HttpUtils http://fritz.box/login_sid.lua: Got data, length: 165
2017.09.07 09:42:02 5: HttpUtils response header:
HTTP/1.0 200 OK
Connection: close
Content-Type: text/xml
2017.09.07 09:42:02 1: FB_doCheckPW1: <?xml version="1.0" encoding="utf-8"?><SessionInfo><SID>0000000000000000</SID><Challenge>e3ed03f2</Challenge><BlockTime>0</BlockTime><Rights></Rights></SessionInfo>

2017.09.07 09:42:02 4: HttpUtils url=http://fritz.box/login_sid.lua?username=fhem
2017.09.07 09:42:02 5: HttpUtils request header:
POST /login_sid.lua?username=fhem HTTP/1.0
Host: fritz.box
User-Agent: fhem
Content-Length: 78
Content-Type: application/x-www-form-urlencoded

2017.09.07 09:42:03 4: http://fritz.box/login_sid.lua?username=fhem: HTTP response code 200
2017.09.07 09:42:03 4: HttpUtils http://fritz.box/login_sid.lua?username=fhem: Got data, length: 166
2017.09.07 09:42:03 5: HttpUtils response header:
HTTP/1.0 200 OK
Connection: close
Content-Type: text/xml
2017.09.07 09:42:03 1: FB_doCheckPW3: <?xml version="1.0" encoding="utf-8"?><SessionInfo><SID>0000000000000000</SID><Challenge>ae06b41c</Challenge><BlockTime>16</BlockTime><Rights></Rights></SessionInfo>

2017.09.07 09:42:03 2: FBdect error: cannot get SID, check connection/hostname/fritzbox-user/password
2017.09.07 09:42:03 5: Starting notify loop for FBdect, 1 event(s), first is password fhem1234
2017.09.07 09:42:03 5: Temperatur: not on any display, ignoring notify
2017.09.07 09:42:03 5: End notify loop for FBdect
2017.09.07 09:42:03 4: WEB_192.168.178.11_4854 GET /fhem?fw_id=578; BUFLEN:0
2017.09.07 09:42:03 4: WEB: /fhem?fw_id=578 / RL:3787 / text/html; charset=UTF-8 / Content-Encoding: gzip

Hab noch etwas getestet:
Wenn ich als User BoxAdmin und das Passwort der FritzBox eintrage, bekomme ich:
STATE  connected
Allesrdings lassen sich die DECT-Schalter nicht schalten.

rudolfkoenig

Ich kann z.Zt. nur mit FW 6.83 testen, aber ich bekomme diese Meldung (die Zeile mit FB_doCheckPW3 ist relevant) nur, wenn ich Benutzername oder Passwort falsch setze. Mit richtigen Benutzername/Passwort kommt sowas wie:
<?xml version="1.0" encoding="utf-8"?>
<SessionInfo>
  <SID>7b5472cb5fa40aa5</SID>
  <Challenge>52db217b</Challenge>
  <BlockTime>0</BlockTime>
  <Rights>
    <Name>Dial</Name><Access>2</Access>
    <Name>App</Name><Access>2</Access>
    <Name>HomeAuto</Name><Access>2</Access>
    <Name>BoxAdmin</Name><Access>2</Access>
    <Name>Phone</Name><Access>2</Access>
    <Name>NAS</Name><Access>2</Access>
  </Rights>
</SessionInfo>

(etwas formatiert, damit es lesbar wird).

Zu beachten: in der FritzBox Oberflaeche (System, FRITZ!Box-Benutzer, Anmeldung im Heimnetz) muss "Anmeldung mit FRITZ!Box-Benutzernamen und Kennwort" aktiviert sein. Falls "Anmeldung mit dem FRITZ!Box-Kennwort" aktiviert ist, dann ist der in FHEM gespeicherte Benutzername irrelevant, aber das Passwort muss stimmen.

Bei der Anmeldung mit BoxAdmin gehe ich davon aus, dass dieser Benutzer keine "HomeAuto" Rechte hat.

Lichti

So, Anmeldung klappt jetzt.
Bei mir ist "Anmeldung mit dem FRITZ!Box-Kennwort" eingestellt.
Ich hatte ja das Kennwort vom Benutzer fhem eingetragen, aber hier muss ja nach deinem Hinweis das FritzBox-Kennwort rein.
Hatte ich zwar auch schon mal probiert, aber da war wohl noch was anderes daneben.

Nach mehreren Restarts lassen sich jetzt auch die Steckdosen schalten.

Danke für die Unterstützung !!



Scorpio90

Bei mir klappt das leider nicht so reibungslos mit der Umstellung auf FBAHAHTTP.

Nach dem aufspielen der neuen Firmware 6.9 auf meine Fritz Box 7580 gingen alle Dect200 nicht mehr.
Also den hier geposteten Anweisungen gefolgt und folgendes eingegeben :

define FBdect FBAHAHTTP fritz.box
attr FBdect fritzbox-user fhem
set FBdect password fhem1344

Zuvor natürlich entsprechenden User angelegt und Zugriff auf Smart Home gegeben.

Darauf hin steht zwar bei FBDect connectet und es wurden 4 Devices angelegt, leider werden aber keine Schaltfunktionen ausgeführt.
Wenn ich mit dem Telefon manuell die Dosen schalte und danach unter FBDECT refreshstate auslöse - ja dann wird eine Veränderung des Status einmal angezeigt. Aber nur dann und nur einmal....

Eine Verbindung zur Fritzbox mit dem entsprechenden User ist also vorhanden und es werden unter gewissen Umständen auch Daten übertragen. Aber eine direkte steuerung ist nicht möglich.

Hat da jemand eine Idee? Mich nervt es sehr das ich nun nicht mehr mit Alexa meine Mediazentrale einschalten kann.

Lichti

Hast du die Hinweise von rudolfkoenig bzgl. der Anmeldung beachtet?
Meldest du dich an der Fritzbox mit Benutzername und Kennwort oder nur mit Kennwort an?
Wird eine Fehlermeldung angezeigt?

Scorpio90

Anmeldung ist so eingestellt wie beschrieben, mit Benutzernamen und Kennwort. Device meldet ja auch connectet.
Es wird keine Fehlermeldung ausgegeben, On und Off Symbole anklicken geht auch.
Leider ändern sich nur die Icons, eine Funktion wird nicht ausgelöst.

Scorpio90

So, nun geht es. Warum genau ist mir jedoch nicht so ganz klar.

Ich hatte zuerst folgendes eingegeben :

define FBdect FBAHAHTTP fritz.box
attr FBdect fritzbox-user fhem
set FBdect password fhem 1344

Da es nicht funktionierte, habe ich FBdect und die neu entstandenen Devices einfach gelöscht.

Danach dann das eingegeben :

define Fritzbox FBAHAHTTP fritz.box
attr Fritzbox fritzbox-user fhem
set Fritzbox password fhem 1344

Und schon läuft es genau wie früher, es sind auch keine neuen Devices entstanden.
Ich kam darauf es mal so zu versuchen, weil der Begriff "Fritzbox" irgendwo in den alten Devices zu lesen war.

Egal, Hauptsache es läuft wieder  ;)

hinrich2001

Hi,

da der Thread noch relativ neu ist, möchte ich mich dranhängen und eine Frage stellen.

Ich hatte bis vor kurzem das Moldul FBAHA benutzt um die beiden 546e zu schalten. Nach dem FW Update der 546e auf FritzOS 06.90 funktionierte das nicht mehr.
Heute nach der Lösung des Problems gesucht und brav nach Rudolfs Anleitung "Neues Modul FBAHAHTTP" das Folgende angelegt.

define fbahahttp FBAHAHTTP fritz.box
attr fbahahttp fritzbox-user fhem
set fbahahttp password fhem123

attr fbahahttp verbose 5


(auch "Anmeldung mit FRITZ!Box-Benutzernamen und Kennwort" habe ich gemacht und für den neuen Benutzer "fhem" auf der FB das Häkchen bei
"Smart Home - Die an der FRITZ!Box angemeldeten FRITZ!-Aktoren können über den MyFRITZ!-Zugang an- und abgeschaltet werden." gesetzt)

Schwups erscheinen anschließend auch die beiden 546e Adapter in der fhem.cfg.

define FBDECT_fbahahttp_34_31_C4_D9_33_19 FBDECT fbahahttp:34_31_C4_D9_33_19 powerMeter,switch
attr FBDECT_fbahahttp_34_31_C4_D9_33_19 IODev fbahahttp
attr FBDECT_fbahahttp_34_31_C4_D9_33_19 event-min-interval power:120
attr FBDECT_fbahahttp_34_31_C4_D9_33_19 room FBDECT
define FileLog_FBDECT_fbahahttp_34_31_C4_D9_33_19 FileLog ./log/FBDECT_fbahahttp_34_31_C4_D9_33_19-%Y-%m.log FBDECT_fbahahttp_34_31_C4_D9_33_19:power\x3a.*
attr FileLog_FBDECT_fbahahttp_34_31_C4_D9_33_19 logtype power4:Power,text
attr FileLog_FBDECT_fbahahttp_34_31_C4_D9_33_19 room FBDECT
define SVG_FBDECT_fbahahttp_34_31_C4_D9_33_19 SVG FileLog_FBDECT_fbahahttp_34_31_C4_D9_33_19:SVG_FBDECT_fbahahttp_34_31_C4_D9_33_19:CURRENT
attr SVG_FBDECT_fbahahttp_34_31_C4_D9_33_19 label "FBDECT_fbahahttp_34_31_C4_D9_33_19 Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_FBDECT_fbahahttp_34_31_C4_D9_33_19 room Plots
define FBDECT_fbahahttp_08_96_D7_F7_7F_A4 FBDECT fbahahttp:08_96_D7_F7_7F_A4 powerMeter,switch
attr FBDECT_fbahahttp_08_96_D7_F7_7F_A4 IODev fbahahttp
attr FBDECT_fbahahttp_08_96_D7_F7_7F_A4 event-min-interval power:120
attr FBDECT_fbahahttp_08_96_D7_F7_7F_A4 room FBDECT
define FileLog_FBDECT_fbahahttp_08_96_D7_F7_7F_A4 FileLog ./log/FBDECT_fbahahttp_08_96_D7_F7_7F_A4-%Y-%m.log FBDECT_fbahahttp_08_96_D7_F7_7F_A4:power\x3a.*
attr FileLog_FBDECT_fbahahttp_08_96_D7_F7_7F_A4 logtype power4:Power,text
attr FileLog_FBDECT_fbahahttp_08_96_D7_F7_7F_A4 room FBDECT
define SVG_FBDECT_fbahahttp_08_96_D7_F7_7F_A4 SVG FileLog_FBDECT_fbahahttp_08_96_D7_F7_7F_A4:SVG_FBDECT_fbahahttp_08_96_D7_F7_7F_A4:CURRENT
attr SVG_FBDECT_fbahahttp_08_96_D7_F7_7F_A4 label "FBDECT_fbahahttp_08_96_D7_F7_7F_A4 Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_FBDECT_fbahahttp_08_96_D7_F7_7F_A4 room Plots


Das Schalten klappt jedoch nicht, sprich, es wird im GUI on/off usw. angeboten, aber es tut sich nichts.

Hier der Logauszug (verbose 5).


2017.09.11 21:32:19 5: fbahahttp: dispatch <device identifier="34:31:C4:D9:33:19" id="20000" functionbitmask="640" fwversion="06.50" manufacturer="AVM" productname="FRITZ!Powerline 546E"><present>0</present><name>FRITZ!Powerline 546E</name><switch><state></state><mode></mode><lock></lock><devicelock></devicelock></switch><powermeter><power></power><energy></energy></powermeter></device>
2017.09.11 21:32:19 5: fbahahttp: dispatch <device identifier="08:96:D7:F7:7F:A4" id="20001" functionbitmask="640" fwversion="06.50" manufacturer="AVM" productname="FRITZ!Powerline 546E"><present>0</present><name>FRITZ!Powerline 546E</name><switch><state></state><mode></mode><lock></lock><devicelock></devicelock></switch><powermeter><power></power><energy></energy></powermeter></device>
2017.09.11 21:32:39 4: FBAHAHTTP_connect fbahahttp: got SID a08b26f275223fc5
2017.09.11 21:32:40 5: fbahahttp: dispatch <device identifier="34:31:C4:D9:33:19" id="20000" functionbitmask="640" fwversion="06.50" manufacturer="AVM" productname="FRITZ!Powerline 546E"><present>0</present><name>FRITZ!Powerline 546E</name><switch><state></state><mode></mode><lock></lock><devicelock></devicelock></switch><powermeter><power></power><energy></energy></powermeter></device>
2017.09.11 21:32:40 5: fbahahttp: dispatch <device identifier="08:96:D7:F7:7F:A4" id="20001" functionbitmask="640" fwversion="06.50" manufacturer="AVM" productname="FRITZ!Powerline 546E"><present>0</present><name>FRITZ!Powerline 546E</name><switch><state></state><mode></mode><lock></lock><devicelock></devicelock></switch><powermeter><power></power><energy></energy></powermeter></device>
2017.09.11 21:33:00 3: FBDECT set FBDECT_fbahahttp_08_96_D7_F7_7F_A4 on
2017.09.11 21:33:01 5: FBAHAHTTP_Write reply for fbahahttp: 1

2017.09.11 21:34:54 3: FBDECT set FBDECT_fbahahttp_08_96_D7_F7_7F_A4 off
2017.09.11 21:34:54 5: FBAHAHTTP_Write reply for fbahahttp: 0

2017.09.11 21:37:40 5: fbahahttp: dispatch <device identifier="34:31:C4:D9:33:19" id="20000" functionbitmask="640" fwversion="06.50" manufacturer="AVM" productname="FRITZ!Powerline 546E"><present>0</present><name>FRITZ!Powerline 546E</name><switch><state></state><mode></mode><lock></lock><devicelock></devicelock></switch><powermeter><power></power><energy></energy></powermeter></device>
2017.09.11 21:37:40 5: fbahahttp: dispatch <device identifier="08:96:D7:F7:7F:A4" id="20001" functionbitmask="640" fwversion="06.50" manufacturer="AVM" productname="FRITZ!Powerline 546E"><present>0</present><name>FRITZ!Powerline 546E</name><switch><state></state><mode></mode><lock></lock><devicelock></devicelock></switch><powermeter><power></power><energy></energy></powermeter></device>
2017.09.11 21:42:40 5: fbahahttp: dispatch <device identifier="34:31:C4:D9:33:19" id="20000" functionbitmask="640" fwversion="06.50" manufacturer="AVM" productname="FRITZ!Powerline 546E"><present>0</present><name>FRITZ!Powerline 546E</name><switch><state></state><mode></mode><lock></lock><devicelock></devicelock></switch><powermeter><power></power><energy></energy></powermeter></device>
2017.09.11 21:42:40 5: fbahahttp: dispatch <device identifier="08:96:D7:F7:7F:A4" id="20001" functionbitmask="640" fwversion="06.50" manufacturer="AVM" productname="FRITZ!Powerline 546E"><present>0</present><name>FRITZ!Powerline 546E</name><switch><state></state><mode></mode><lock></lock><devicelock></devicelock></switch><powermeter><power></power><energy></energy></powermeter></device>


Was mir noch "komisch" vorkommt:

Auf der FB Oberfläche unter Heimnetz / Smart Home sehe ich beide Adapter, schalten geht aber auch hier nicht. Der visualisierte Schalter geht nach Anklicken kurz auf grün (also an) und flutscht nach 3 Sekunden automatisch wieder zurück (also aus).
Unter My!Fritz / Smart Home werden die 546e auch angezeigt, der Schalter lässt sich jedoch nicht betätigen.

Auf der Web-Oberfläche der 546e ist alles prima. Hier kann man schalten, die Werte wie Spannung und aktuelle Leistung etc. sehen.

Fritzbox 7390 OS: 6.83

546e OS: 6.90

In der AVM Wissensdatenbank habe ich folgendes gefunden: "FRITZ!Powerline wird nicht als Smart-Home-Gerät in der Benutzeroberfläche der FRITZ!Box angezeigt".

https://avm.de/service/fritzpowerline/fritzpowerline-546e/wissensdatenbank/publication/show/1310_FRITZ-Powerline-wird-nicht-als-Smart-Home-Geraet-in-der-Benutzeroberflaeche-der-FRITZ-Box-angezeigt/


Hat das ganze was mit der "Unverträglichkeit" der momentan installierten Versionen auf FB und 546e zu tun oder mache ich sonst noch einen Fehler?

Für hilfreiche Hinweise wäre ich sehr dankbar  ;)

rudolfkoenig

ZitatAuf der FB Oberfläche unter Heimnetz / Smart Home sehe ich beide Adapter, schalten geht aber auch hier nicht.
Dann ist es kein Wunder, dass FHEM/FBAHAHTTP das auch nicht kann, FHEM verwendet die gleiche Schnittstelle.
Laut dem o.g. Link ist das Verhalten normal, und man muss entweder die 546e downgraden auf 6.50 oder die FRITZ!Box upgraden auf 6.90.

Falls fuer Dich keiner der beiden Alternativen praktikabel ist, dann koenntest du versuchen, eine der 546e als FBAHAHTTP Instanz zu definieren (statt der FRITZ!Box). Mit OS 6.50 sehe ich darueber auch alle FBDECT Geraete, und schalten kann ich auch.