Hallo und Frohe Weihnachten,
kann mir jemand eine einfache Möglichkeit (für dummies) sagen, wie ich die Session ID der Fritzbox auslesen kann?
Ich benötige diese, um mit einem http Befehl FritzDect Steckdosen zu schalten.
Hi,
in FHEM gibt es ein Hilfs-Modul "FritzBoxUtils.pm".
Dieses stellt die Funktion FB_doCheckPW($host, $username, $password) bereits. Diese gibt bei erfolgreichem Login eine SID zurück.
Gruß
Markus
Ok danke.
Wie muss ich das denn anwenden?
Was hast du denn genau vor?
Wenn du nur die AVM Steckdosen schalten möchtest, dann gibt es bereits entsprechende Module in FHEM, welche dir das auf einfache weise ermöglichen:
http://fhem.de/commandref.html#FBAHAHTTP
http://fhem.de/commandref_DE.html#FBDECT
Man definiert dazu einmalig eine FBAHAHTTP-Definition, dann werden alle Steckdosen automatisch in FHEM angelegt.
Viele Grüße
Markus
Nein ich brauche die SessionID um den JBMedia Lightmanager mit AVM FritzDect200 zu verbinden. Das geht nur mit einem HTTP Befehl der wiederum setzt die Session ID vorraus
Zeig mal bitte ein konkretes Beispiel wie du vorgehen möchtest, dann kann ich dir eher sagen, wie du an dieser Stelle an die SID rannkommst ;-)
So ohne Fleisch ist raten immer schwierig.
Gruß
Markus
Ich benötige diesen Code
https://fritz.box/webservices/homeautoswitch.lua?
ain=012340000123&switchcmd=setswitchon&sid=9c977765016899f8
An die AIN komme ich ran aber nicht an die Session ID.
Das ist mir klar, dass du diese in der URL brauchst. Was ich konkret meine, wo und in welchem Kontext willst du diese URL aufrufen? In FHEM oder extern?
Falls in FHEM, In einem Notify? eigene Funktion in 99_myUtils.pm?
Die Session-ID ist nur eine termporär gültiger Wert. Sobald man sich eingeloggt hat, weist die FritzBox jedem erfolgreichen Login eine Session-ID zu, welche bei Inaktivität wieder ungültig wird.
Ahh das ist eh nur temporär. Mist. Dann wird das nicht funktionieren.
Der Befehl wird extern verwendet und zwar im JBMEDIA Lightmanager Air -> von dort wird dann die Taste auf die Harmony Fernbedienung gelegt. Dort kann ich dann die Beleuchtung an und ausschalten. Zusätzlich ist die Beleuchtung in einer Harmony Activity integriert welche nur angeschaltet wird wenn es dunkel ist.
Warum nicht die Steckdosen in FHEM integrieren und dann den HTTP-Befehl für FHEM auf die Harmony legen? Der ist immer konstant:
ON: http://...../fhem?cmd=set%20name%20on
OFF: http://...../fhem?cmd=set%20name%20off
TOGGLE: http://...../fhem?cmd=set%20name%20toggle
name - muss durch den Definitionsname der Steckdose ersetzt werden
%20 - steht für ein Leerzeichen bei URL's
Gruß
Markus
Ja das könnte gehen- man mit meiner Erkältung steh ich auf dem Schlauch.
Jetzt noch eine dumme Frage
ON: http://...../fhem?cmd=set%20name%20on
OFF: http://...../fhem?cmd=set%20name%20off
TOGGLE: http://...../fhem?cmd=set%20name%20toggle
Die Punkte stellen was dar?
Die Adresse (IP oder Hostname) + Port von deinem FHEM-Server. Ich kenn ja deine Umgebung nicht ;-)
Ja das habe ich so eingetragen (s. Bild) - allersdings will er sich wohl autorisieren
Dann hast du in deinem FHEM eine HTTP-Authentifizierung konfiguriert. Eventuell mal folgendes Probieren:
http://[USERNAME]:[PASSWORT]@192.168.1.2/fhem?cmd=set%20[NAME]%20on
Und bitte dabei folgendes Ersetzen:
[NAME] - Name der FBDECT-Definition der Steckdose in FHEM
[USERNAME] - Username für HTTP-Authentifizierung in FHEM
[PASSWORT] - Passwort für HTTP-Authentifizierung in FHEM
D A N K E !!!
TOP!!!!!!!!