[Modul] Homematic Extended (Systemvariablen, Programme, Powermeter, u.v.m.)

Seit dem neuesten CCU2 Update kommt immer das:

19.04.2017 21:53:50*| ScriptEngine*| Ergebnis für Ereignis 41881
<br />
<b>Notice</b>: CCU unreachable:417 in <b>/var/lib/symcon/modules/IPSHomematicExtended/Systemvariablen/module.php</b> on line <b>525</b><br />

Was ist hier zu tun?:confused:

Kontrollieren bitte mal die Firewall Einstellungen auf der CCU.
Michael

HomeMatic XML-RPC API: Vollzugriff

Remote HomeMatic-Script API: Eingeschränkt:confused:

192.168.0.1;
192.168.0.0/16

Wenn dein IPS in diese Range passt, sollte es funktionieren.
Allerdings habe ich nicht die letzte Version auf meiner CCU zum gegentesten.
Michael

Hi Nallchan,

mach dies bitte:

Allerdings habe ich nicht die letzte Version auf meiner CCU zum gegentesten.

Bestimmt nicht remote :wink:
Und die Wochenenden sind leider auch schon verplant.
Sonst hätte ich das bestimmt schon gemacht.
Michael

Habe es nun doch mal gewagt… VPN sein dank.
Alles ok.
Keine Probleme.
Modul läuft problemlos auch mit der 2.27.8

Michael

Update online.

CURL versendet u.U. automatisch einen Header welchen die CCU nicht unterstützt.

Der Fehler tritt nur bei CCU 2.27.8 und IPS 4.1 / 4.2 auf.
Andere Versionen scheinen aktuell zu funktionieren.

Michael

Hallo ,
bei mir verliert die Instanz von HMScript nach einem Neustart von IPS den Parent.

So sieht es aus, wenn es noch geht. Als Wert wird die IP anzgezeigt.
HMScript.JPG

Nach einem Neustart von IPS wird die IP nicht mehr angezeigt, obwohl mein „Homematic Socket“ immer noch als
übergeordnete Instanz eingetragen ist.

Will ich HMScript benutzen bekomme ich folgende Fehlermeldung

Notice:  Instance has no active Parent Instance! in C:\IP-Symcon\modules\IPSHomematicExtended\HomeMaticScript\module.php on line 134

Ich nutze die aktuelle Version von IPS (4.20 vom 20.04.2017)

Um den Fehler zu beheben muss ich immer eine neue Instanz vom HMScript anlegen.

Gruß
Schuggi

Danke für die Info.
Fix ist online.
Michael

Hallo,

in regelmäßigen Abständen erhalte ich im Logging folgende (oder ähnliche) Fehlermeldungen:

In der betreffenden Zeile ist folgender (oder ein ähnlicher) Befehl:

HM_WriteValueFloat(31324 /*[Geräte\Jalousien\Jalousie K T]*/, "LEVEL", 1.0);

Was hat die Meldung zu bedeuten? Einen Fehler kann ich nicht feststellen.

Viele Grüße…

Das hat nichts mit diesem Modul zu tun!
Es handelt sich um die ganze normale Fehlermeldung der CCU wenn ein Aktor den Befehl nicht quittiert.
Einfach mal im Unterbereich Homematic suchen, Themen wie Reichweite, Signalstärke oder andere Fehler sind dort zu hauf behandelt.
Michael

Alles klar, vielen Dank Michael…

Hallo,
würde gerne Daten an mein neues Display senden.
Bspw. eine Temperatur Variable.
Wie kann ich die „$temperatur“ in Zeile 2 schreiben?
Danke für eure Hilfe.



$temperatur = GetValueFloat(37341 /*[Haus\Garten Vorne\Garten\Außentemperatur\Außentemperatur]*/);
if ($_IPS["SENDER"] <> "HMDisWM55")
{
    echo "Dieses Skript wird automatisch über die Homematic Dis-WM55 Instanz ausgeführt";
    return;
}
include IPS_GetScriptFile(26715 /*[nicht angezeigte Geräte\DisplayHaustür\HomeMatic Dis-WM55 Eingang\HM_OLED.inc.php]*/); // Konstanten für die Icons und Farben

if (($_IPS["ACTION"] == "UP") or ( $_IPS["ACTION"] == "DOWN"))
{
    switch ($_IPS["PAGE"])
    {
        case 1:  // Seite 1

            $display_line[1] = array("Text" => "Temp. Aussen",
                
                "Color" => Color_red);

            $display_line[2] = array("Text" => "Zeile2",
                "Icon" => Icon_no,
                "Color" => Color_red);

            $display_line[3] = array("Text" => "Temp. Teich",
               
                "Color" => Color_orange);

Mach aus GetValueFloat ein GetValueFormated und dann:
$display_line[2] = array(„Text“ => $temperatur,
„Icon“ => Icon_no,
„Color“ => Color_red);

Danke für deine schnelle Hilfe.

Leider bekomme ich

„Fatal error: Call to undefined function GetValueFormated() in C:\ips\scripts\54680.ips.php on line 72
Abort Processing during Fatal-Error: Call to undefined function GetValueFormated()
Error in Script C:\ips\scripts\54680.ips.php on Line 72“


$temperatur = GetValueFormated(37341 /*[Haus\Garten Vorne\Garten\Außentemperatur\Außentemperatur]*/);
if ($_IPS["SENDER"] <> "HMDisWM55")
{
    echo "Dieses Skript wird automatisch über die Homematic Dis-WM55 Instanz ausgeführt";
    return;
}
include IPS_GetScriptFile(26715 /*[nicht angezeigte Geräte\DisplayHaustür\HomeMatic Dis-WM55 Eingang\HM_OLED.inc.php]*/); // Konstanten für die Icons und Farben

if (($_IPS["ACTION"] == "UP") or ( $_IPS["ACTION"] == "DOWN"))
{
    switch ($_IPS["PAGE"])
    {
        case 1:  // Seite 1

            $display_line[1] = array("Text" => "Temp. Aussen",
                "Icon" => Icon_no,
                "Color" => Color_red);

            $display_line[2] = array("Text" => $temperatur,
				"Icon" => Icon_no,
				"Color" => Color_red); 

Autokorrektur :wink:
GetValueFormatted — IP-Symcon :: Automatisierungssoftware
Doppelt t

perfekt. Vielen lieben Dank.

Nun habe ich auch noch eine 2. Float hinzugefügt.



$temperatur = GetValueFormatted(37341 /*[Haus\Garten Vorne\Garten\Außentemperatur\Außentemperatur]*/);

$teich = GetValueFormatted(43844 /*[Haus\Garten Hinten\Teich\WEATHER\Teich Temperatur]*/ /*[Haus\Garten Vorne\Garten\Außentemperatur\Außentemperatur]*/);

if ($_IPS["SENDER"] <> "HMDisWM55")
{
    echo "Dieses Skript wird automatisch über die Homematic Dis-WM55 Instanz ausgeführt";
    return;
}
include IPS_GetScriptFile(26715 /*[nicht angezeigte Geräte\DisplayHaustür\HomeMatic Dis-WM55 Eingang\HM_OLED.inc.php]*/); // Konstanten für die Icons und Farben

if (($_IPS["ACTION"] == "UP") or ( $_IPS["ACTION"] == "DOWN"))
{
    switch ($_IPS["PAGE"])
    {
        case 1:  // Seite 1

            $display_line[1] = array("Text" => "Temp. Aussen",
                "Icon" => Icon_no,
                "Color" => Color_red);

            $display_line[2] = array("Text" => $temperatur,
				"Icon" => Icon_no,
				"Color" => Color_red); 

            $display_line[3] = array("Text" => "Temp. Teich",
               "Icon" => Icon_no,
              "Color" => Color_orange);

            $display_line[4] = array("Text" => $teich,
                "Icon" => Icon_no,
               "Color" => Color_orange);

            $display_line[5] = array("Text" => "Zeile5",
                 "Icon" => Icon_no,
               "Color" => Color_green);

            $display_line[6] = array("Text" => "Zeile6",
                "Icon" => Icon_no,
                "Color" => Color_green);


Leider zeigt es mir in Zeile 4 bei der Float immer nur „TextBlock 11“ an obwohl das Skript keinen Error bringt.

Mhhh… kann ich gerade nicht nachvollziehen.
Funktioniert es wenn du anstatt $teich einen festen Text einträgst?
Michael

Hey Nall-chan,

mir ist es doch tatsächlich gelungen, meine symcon Installation so abzuschießen, dass sie irreparabel weg war. Settings.json korrupt ohne die Möglichkeit, sie wieder herzustellen. Ironischerweise passierte das bei meiner Arbeit an einem Skript für ein symcon Backup auf GitHub. :wink:

So, und dann mach mal 200 Homematic Geräte mit symcon Bordmitteln wieder rein. Konfigurator ohne Mehrfachauswahl beim Hinzufügen, keine Gerätenamen, keine Raumzuordnung, alles liegt im root hinterher. Das will man nicht. :banghead:

Mit nem Homematic-Skriptchen von 10 Zeilen, das den ganzen Kram zurückliefert, und deiner schönen Script-Schnittstelle ist die Sache in ein paar Minuten erledigt. :cool:

Tausend Dank dafür! :slight_smile:

Frank