ReGa Warnung mit RaspiMatic 2.31.25.20180120

alternative Weboberfläche für die HomeMatic-Zentrale (CCU)

Moderator: Co-Administratoren

Antworten
Benutzeravatar
stan23
Beiträge: 2030
Registriert: 13.12.2016, 21:14
System: Alternative CCU (auf Basis OCCU)
Wohnort: Altmühltal
Hat sich bedankt: 576 Mal
Danksagung erhalten: 335 Mal
Kontaktdaten:

ReGa Warnung mit RaspiMatic 2.31.25.20180120

Beitrag von stan23 » 15.02.2018, 07:25

Hallo,

mir ist gerade aufgefallen dass das Auslesen der Servicemeldungen der WebMatic eine Warnung der ReGa triggert:

Code: Alles auswählen

Feb 15 07:16:30 homematic-raspi local0.err ReGaHss: Error: IseESP::ExecDP: WARNING: incorrect use of Device() (use Channel()): 
        WriteLine ('{ "entries":[');
        string id;
        string strDP;
        string strListEnum;
        string strDate;
        object obj;
        object objDP;
        object objObject;
        boolean isFirst;
        obj = dom.GetObject(ID_DEVICES);
        isFirst = true;
        foreach (id, obj.EnumUsedIDs()){
            objObject = dom.GetObject (id);
            strListEnum = "";
            foreach (strDP, 'CONFIG_PENDING\tLOWBAT\tSTICKY_UNREACH\tUNREACH'){
                objDP = dom.GetObject ("AL-" # objObject.Address().StrValueByIndex (":", 0) # ":0." # strDP);
                if (objDP){
                    strListEnum = strListEnum # objDP.ID() # '\t';
                }
            }
            foreach (strDP, objObject.Channels().EnumUsedIDs()) {
                strListEnum = strListEnum # dom.GetObject(strDP).DPs().EnumUsedIDs() # '\t';
            }
            foreach
Das ausgeführte Skript ist wohl dieses hier:
https://github.com/ldittmar81/webmatic/ ... ervice.cgi

Ich bin leider nicht fit genug um das selber zu fixen, aber ich kann gerne einen Fix testen :)

ReGa-Version:

Code: Alles auswählen

# /bin/ReGaHss
ReGaHss R1.00.0388.0127 (Jan 14 2018)
Viele Grüße
Marco

RaspberryMatic als VM auf einem NUC mit Proxmox und USB-Funkmodul
~80 Geräte (HM, HmIP, HMW, HBW, AskSin)

alchy
Beiträge: 10752
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 672 Mal

Re: ReGa Warnung mit RaspiMatic 2.31.25.20180120

Beitrag von alchy » 15.02.2018, 08:06

ersetze

Code: Alles auswählen

objInner = dom.GetObject(objDP.Device());
durch

Code: Alles auswählen

objInner = dom.GetObject(objDP.Channel());
allerdings ist das ganze Script sehr "langsam", da es *IMHO* an der falschen Stelle ansetzt.

Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

Benutzeravatar
stan23
Beiträge: 2030
Registriert: 13.12.2016, 21:14
System: Alternative CCU (auf Basis OCCU)
Wohnort: Altmühltal
Hat sich bedankt: 576 Mal
Danksagung erhalten: 335 Mal
Kontaktdaten:

Re: ReGa Warnung mit RaspiMatic 2.31.25.20180120

Beitrag von stan23 » 15.02.2018, 10:03

Danke Alchy. Das führt jetzt leider zu einem Fehler:

Code: Alles auswählen

Feb 15 09:59:31 homematic-raspi local0.err ReGaHss: Error: IseESP::ScriptRuntimeError:
        WriteLine ('{ "entries":[');
        string id;
        string strDP;
        string strListEnum;
        string strDate;
        object obj;
        object objDP;
        object objObject;
        boolean isFirst;
        obj = dom.GetObject(ID_DEVICES);
        isFirst = true;
        foreach (id, obj.EnumUsedIDs()){
             objObject = dom.GetObject (id);
             strListEnum = "";
              foreach (strDP, 'CONFIG_PENDING\tLOWBAT\tSTICKY_UNREACH\tUNREACH'){
                 objDP = dom.GetObject ("AL-" # objObject.Address().StrValueByIndex (":", 0) # ":0." # strDP);
                 if (objDP){
                     strListEnum = strListEnum # objDP.ID() # '\t';
                 }
             }
              foreach (strDP, objObject.Channels().EnumUsedIDs()) {
                 strListEnum = strListEnum # dom.GetObject(strDP).DPs().EnumUsedIDs() # '\t';
             }
              foreach (strDP, strListEnum) {
Ich benutze WebMatic nur selten, die Geschwindigkeit stört mich nicht so besonders.
Aber langfristig sollten Bugs halt gefixt werden ;)
Viele Grüße
Marco

RaspberryMatic als VM auf einem NUC mit Proxmox und USB-Funkmodul
~80 Geräte (HM, HmIP, HMW, HBW, AskSin)

alchy
Beiträge: 10752
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 672 Mal

Re: ReGa Warnung mit RaspiMatic 2.31.25.20180120

Beitrag von alchy » 15.02.2018, 12:53

Ich würde mal sagen, dann hast du irgendetwas anderes gemacht als diese Zeile umzuschreiben.
Allerdings habe ich Webmatic auch nicht in Benutzung, ich habe mir lediglich auf Grund deiner Meldung das verlinkte Script angeschaut, sozusagen theoretisch.

Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

Benutzeravatar
stan23
Beiträge: 2030
Registriert: 13.12.2016, 21:14
System: Alternative CCU (auf Basis OCCU)
Wohnort: Altmühltal
Hat sich bedankt: 576 Mal
Danksagung erhalten: 335 Mal
Kontaktdaten:

Re: ReGa Warnung mit RaspiMatic 2.31.25.20180120

Beitrag von stan23 » 15.02.2018, 13:05

Stimmt, ich hatte mich nicht an dein "ersetze" gehalten, sondern die Zeile dupliziert und die alte Zeile auskommentiert.
Allerdings habe ich ein Kommentarzeichen benutzt das zwar in tcl gilt, aber nicht im eingebetteten ReGa Skript.

Ohne der auskommentierten Zeile gibt es weder Warnungen noch Fehlermeldungen.

Ich schreibe später noch ein Ticket in Github, damit es nicht verloren geht.
Viele Grüße
Marco

RaspberryMatic als VM auf einem NUC mit Proxmox und USB-Funkmodul
~80 Geräte (HM, HmIP, HMW, HBW, AskSin)

alchy
Beiträge: 10752
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 672 Mal

Re: ReGa Warnung mit RaspiMatic 2.31.25.20180120

Beitrag von alchy » 15.02.2018, 13:13

Na also. :wink: Freut mich geholfen zu haben.
Der Entwickler scheint nicht mehr aktiv daran zu arbeiten.

Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

tomi_cc16
Beiträge: 1150
Registriert: 30.11.2013, 16:35
Wohnort: Mordor
Hat sich bedankt: 23 Mal
Danksagung erhalten: 56 Mal

Re: ReGa Warnung mit RaspiMatic 2.31.25.20180120

Beitrag von tomi_cc16 » 03.03.2018, 23:09

ldittmar hat geschrieben:Moin,

seit der Klää auf der Welt ist habe ich echt wenig Zeit. Also... wenn ihr Änderungen habt und diese als Pull request in Github einpflegt, dann schnürre ich euch eine neue Version zusammen. Neue Geräte hinzuzufügen ist echt nicht schwer. Ich habe aber leider keine IP Geräte zur Verfügung. Mit etwas Unterstützung wäre alles möglich.

Grüße,
ldittmar
Vielleicht über PN mal anstubsen ...

Benutzeravatar
stan23
Beiträge: 2030
Registriert: 13.12.2016, 21:14
System: Alternative CCU (auf Basis OCCU)
Wohnort: Altmühltal
Hat sich bedankt: 576 Mal
Danksagung erhalten: 335 Mal
Kontaktdaten:

Re: ReGa Warnung mit RaspiMatic 2.31.25.20180120

Beitrag von stan23 » 04.03.2018, 06:30

Der Pull Request wurde gestern gemergt.
PN verschicke ich gleich...
Viele Grüße
Marco

RaspberryMatic als VM auf einem NUC mit Proxmox und USB-Funkmodul
~80 Geräte (HM, HmIP, HMW, HBW, AskSin)

qwertz
Beiträge: 266
Registriert: 15.02.2012, 19:35
Hat sich bedankt: 6 Mal
Danksagung erhalten: 16 Mal

Re: ReGa Warnung mit RaspiMatic 2.31.25.20180120

Beitrag von qwertz » 23.02.2019, 15:41

Da ich zu dämlich bin die gepatche Installationsdatei von GitHub runterzuladen, habe ich es so gepatcht:

Code: Alles auswählen

ssh root@IPDERCCU

cd /usr/local/etc/config/addons/www/webmatic/cgi
vi service cgi

i für insert mode

Line 56
streiche:  objInner = dom.GetObject(objDP.Device[/b]());
setze  objInner = dom.GetObject(objDP.Channel());


esc um insert mode zu beende
:x zum speichern und beenden

Antworten

Zurück zu „WebMatic“