Dieses Script unterstützt bei der Ersteinrichtung oder Erweiterung von Homematic-Geräten in IPS.
Vorraussetzungen:
[li]min. IPS Pro (es werden jede Menge Variablen angelegt)
[/li][li]CCU1 oder CCU2
[/li][li]Die Geräte müssen in der CCU nach Räumen geordnet sein.
[/li] Diese Strucktur wird in IPS nachgebildet.
Es wird jedoch nur ein Raum pro Gerät unterstützt.
[li]Die Geräte sollten in der CCU nach Gewerken sortiert sein.
[/li] Diese Strucktur wird in IPS mit Links nachgebildet.
[li]Firewall in der CCU muss so konfiguriert sein, das IPS Zugriff
[/li] auf die ReGa HSS Logikschicht hat.
[li]Je CCU muss auf dem IPS System eine eventuelle Firewall so eingerichtet werden,
[/li] dass die CCU IPS auf den Port 5544 (fortlaufend für jede CCU ein Port) erreichen kann.
[li] Alle Bezeichnungen in der CCU dürfen keines der folgenden Zeichen enthalten: <, >, ', ", &, $, [, ], {, } und
[/li] Dies ist aber schon Vorgabe von der CCU ! Wer es dennoch schafft solche Zeichen einzugeben,
muss mit Fehlern (auch auf der CCU!) rechnen.
Verwendung:
[li]Inhalt von der Datei Script.php in ein neues leeres Script von IPS einfügen. Script ist jetzt HIER verfügbar
[/li][li]Es muss wenigstens im Abschnitt Konfiguration eine CCU eingetragen werden.
[/li][li]Zusätzliche Einstellungen sind jeweils seperat beschrieben.
[/li][li]Das Script ausführen.
[/li] Sollte das Script mit einem Fehler beendet werden; einfach noch mal
ausführen. Bereits angelegte Geräte werden übersprungen!
Getestet mit ein recht umfangreichen Installation. Es waren am Ende über
2000 neue Variablen entstanden.
Habe ich auch gemerkt. Da ist noch ein Bug in IPS 4.0
Es betrifft nur feste Texte im Script, z.B. im Mapping oder die Kategorie ‚Räume‘.
Alles was aus der CCU kommt, wird sauber verarbeitet.
Ein Bugfix für den Rest kann ich z.Z. nicht liefern, sonst kommt unter Windows Müll raus
Das brauchst du nicht
Ich muss nur bessere Anleitungen schreiben
Wenn sonst noch jemand Fehler/Fragen hat außer den Umlauten immer her damit.
Achtet bitte mal auf die Profile.
Stimmen die ? Fehlt etwas ?
Und kann man das Mapping mit den Namen für Räume und Gewerke verstehen/verwenden ?
Bei mir heißen die Geräte in der CCU eh immer ‚RAUM GERÄT‘ darum habe ich da nicht viel ausprobiert. Hier hat ja jeder eine etwas andere Philosophie.
Michael
Vielleicht ist es jemanden aufgefallen… die ganzen PARTY_* Variablen fehlen beim einrichten und werden desswegen nicht von meinem Script versteckt.
Dafür ein BugFix.
Außerdem gibt es jetzt Zusätzliche Funktionen für Jalousie-Aktoren und die neuen Wand & Heizkörperthermostaten.
Da schon vorhandene Geräte übersprungen werden; müssen diese gelöscht werden.
Neu:
Mehr Profile (Neue Wand & Heizkörperthermostaten, BLIND-Geräte)
Zuätzliche Variablen und Aktions-Scripte für die einfache Bedienung von bestimmen Geräten implementiert:
BugFix:
Die neuen Wand & Heizkörperthermostaten senden einige Statusvariablen erst nach einiger Zeit oder wenn der Modus umgeschaltet wurde.
Ein neues Feld ‚forceDP‘ im Mapping-Array erzwingt jetzt das Anlegen von Statusvariablen und fragt anschließend den Wert aus der CCU ab.
Nein ersetzen kann er ihn nicht.
Da es keine tabellarische Übersicht gibt. Er löscht auch keine Geräte. Das wäre bei Logging von Variablen ja fatal.
Aber er kann die Logische Raum-Struktur aus der CCU in IPS nachbauen. Und über nimmt die Namen.
Außerdem gibt noch ein paar Extras.
Unnütze Variablen gleich verstecken, Profile ergänzen oder zusätzliche Aktions-Scripte anlegen und mit Variablen verbinden.
Dafür muss ich aber, wenn ein neuer Kanaltyp in der CCU-Firmware auftaucht, den im Script nachpflegen.
Michael
Neu:
Zuätzliche Variablen und Aktions-Scripte für die einfache Bedienung von bestimmen Geräten implementiert:
[ul]
[li]DIMMER[/li][li]VIRTUAL_DIMMER[/li][/ul]
BugFix:
Alle veralteten IPS_* PHP-Funktionen entfernt.
Kleiner Anpassungen, damit das Script auf IPS 4.x besser läuft.
In 1.5 kommt dann wohl der PARTY Modus… und noch wird beim setzen der Helligkeit vom Dimmer über den Schieberegler, die Geschwindigkeit nicht berücksichtigt.
Könntest du ein Script schreiben das IPS nach Instanzen durchsucht und die Instanzid und die StatusID(die Angelegte) in ein Script so reinschreibt:
$Instanzname_ID=InstanzID;
$Instanzname_Status_ID=Instanz-Status-ID;
z.B.
$Wohnzimmer_Licht_1_ID=12345;
$Wohnzimmer_Licht_1_Status_ID=67890;
Das wäre super Dann hätte man gleich alle Instanzen in einem Script und kann das Autoincluden und man nicht jede blöde ID sich raussuchen und hat so Global
Ich sehe nur das Problem woraus du den Namen abbilden willst. Direkt als Variable ist aufgrund von Leer und Sonderzeichen eher schlecht.
Aber vielleicht als Index eines Array. Ich werde mir mal Gedanken machen; wenn es die Temperatur zulässt
Hat eigentlich jemand das Script mal mit einer CCU1 getestet ?
Hier fehlt mir die Testmöglichkeit.
Michael