Hallo mal wieder,
Hier mein neustes, ausbaufähiges, Werk zur Kontrolle und Änderung der Homematic Geräte Parameter im WebFront.
Zu Installation den inhalt des Archivs in den ordner /webfront/user/ kopieren das sieht dann letztendlich so aus /webfront/user/HMTools/… dateien.
Installation:
<?
include (IPS_GetKernelDir().'/webfront/user/HMTools/IPS.install.php');
?>
Zum deinstallieren:
<?
include (IPS_GetKernelDir().'/webfront/user/HMTools/IPS.uninstall.php');
?>
Zum Tool selbst. Währen der kleinen Installation werden für alle in IPS eingerichteten HomeMatic Instanzen/Geräte zwei neue Variablen hinzugefügt und als kleine Hilfe unter der Spalte info die Geräte ID.
Sieht dann so aus:
und so
Ich denke es liegt an den PHP Einstellungen. Die Datei befindet sich direkt im IPS Programmverzeichniss und nennt sich php.ini
Wenn die Datei nicht vorhanden ist kannst du sie erstellen.
Hier der Inhalt meiner php.ini zum vergleich.
Die Fehlermeldung ist weg, aber es wird nur eine leere Textbox geöffnet, in der dann „Zeitüberschreitung…“ nach einiger Zeit kommt.
Die Variable sagt:
"<iframe height="300px" width="100%" id="LEQ1220xxx_1" name="LEQ1220xxx_1" src="http://192.168.1.xx:82/user/HMTools/HMPropEdit.php?id=LEQ1220xxx:1&full">
Der Browser unterstützt keine Inlineframes oder ist aktuell so konfiguriert, dass Inlineframes nicht angezeigt werden.
</iframe>
Habs auch mal mit Crome versucht, mit dem gleichen Ergebnis.
Ich habe mal die Dateien im User-Ordner mit den neuen ausgetauscht. Deinstalliert und neu installiert.
Dann wieder aufgerufen.
Es kommt eine leere Textbox bzw beim Direktlink eine weisse Seite und nach langer Zeit in beiden die Buttons Speichern, Zurücksetzen, Standartwerte laden.
Anklicken bringt nichts.
Gibt es jemand anders, bei dem es geht, oder bin ich der einzige?
Installation lief problemlos und die HM-Geräte haben jetzt zusätzliche Variablen
Im Webfront sehe ich zwar die Konfig-Schalter, aber bei Aktivierung kommt ein schwarzes bzw. weißes Fenster - je nach Browser, mit Chrome bzw. IE getestet. Am Ende kommt dann auch die beschriebene Box mit den drei Schaltflächen.
Stehe für weitere Tests, Infos oder Logs zur Verfügung!
Ist denn die Verschlüsselung zur CCU aktiv?
Ich habe hier nur eine CCU2 und ein LAN-Gateway zum testen, und da läuft alles wunderbar. Verschlüsselung ist auf meiner CCU deaktiviert.
Ich habe mal ein kleines Test Script für euch gebastelt.
<?
include_once(IPS_GetKernelDir().'/webfront/user/HMTools/HMClass.php');
$ccu='http://192.168.112.15:2001'; // <= Hier deine CCU eintragen
$api = new client_xmlrpc(array('url'=>$ccu));
$devices=$api->listDevices();
print_r($devices);
?>
Wo wird denn $CCUHost definiert? Ich meine nirgendwo, und daher kommt Dein Defaultwert 192.168.112.15 ins Spiel, und dass ist NICHT die Adresse MEINER CCU.
Wenn ich die IP dort ändere funktioniert es.
Du hast aber noch in der HMVariables.inc jede Menge Deiner DeviceIDs definiert.
Jaaaa… stimmt, du hast Recht das ist der Fehler… DANKE!!!. Wenn jeder hier seine CCU einträgt sollte es klappen,
…
zu den $FrameHeigth einträgen, die sind in der tat im Moment vollkommen überflüssig. Ich wolle diese benutzen um die Frame höhe in Frontend zu setzten, aber das ist im Moment überholt.
ich bin im moment dabei das einbinden von form-templaten für zb. Temperatur Profile. Im Moment ergeben diese devices noch rießig lange Formulare . ist eben alles noch Beta und jeder darf was machen.
habe meinen aktuellen stand nochmal als file angefügt.
Allerdings habe ich noch keine Beschreibung der HMVariables.inc erstellt, die die deffinition erklärt.
cu
Xaver.
Übrigens ist immer noch
in der erste Zeile aus HMPropEdit.php folgendes anzupassen!!
if(!isSet($CCUHost)) $CCUHost = 'http://192.168.112.15:2001'; // <= hier die ip deiner CCU ect. eintragen
Ja, die css Datei ist im Moment noch leer das ist ok.
Was noch funktinieren könnte. Einen Editor wie der Notepad++ ist Freeware, damit die Dateien laden, dann unter Kodierung => Konvertiere zu … ausprobieren mit UTF und ISO
Falls man das Ganze schlanker haben, und nur die entsprechende Homematic Geräte ID in der Info des Gerätes stehen haben will, dann kann man folgendes Skript erstellen und laufen lassen: