Und wo genau hast du das gefunden oder ist das nur eine Vermutung? Die wäre allerdings doch sehr wage IMHO.BadenPower hat geschrieben:70% aller zur Verfügung stehenden Funktionen und Methoden sind nicht dokumentiert.jmaus hat geschrieben:Und wo genau ist das Bitte dokumentiert?
Die Sysntax für solche Sachen ist:
"search CCU" && ("try and fail" || "try and success")
Fehler im Script aber Script testen geht ? ! ? ! ?
Moderator: Co-Administratoren
- jmaus
- Beiträge: 9864
- Registriert: 17.02.2015, 14:45
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Dresden
- Hat sich bedankt: 464 Mal
- Danksagung erhalten: 1882 Mal
- Kontaktdaten:
Re: Fehler im Script aber Script testen geht ? ! ? ! ?
RaspberryMatic 3.75.7.20240420 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal /
Re: Fehler im Script aber Script testen geht ? ! ? ! ?
Probier einfach einmal im Skript-Testen-Bereich folgenden Zeile aus:jmaus hat geschrieben: Und wo genau hast du das gefunden oder ist das nur eine Vermutung? Die wäre allerdings doch sehr wage IMHO.
system.CacheInfo();
und schau was bei Dir dann dort im Bereich "Cache info (IseESP::sm_cc; XY entries)" steht.
Ich vermute, dass das die Anzahl (also anstelle von XY) der momentan verwendeten (im Cache vorhandenen) Variablen ist.
.
- jmaus
- Beiträge: 9864
- Registriert: 17.02.2015, 14:45
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Dresden
- Hat sich bedankt: 464 Mal
- Danksagung erhalten: 1882 Mal
- Kontaktdaten:
Re: Fehler im Script aber Script testen geht ? ! ? ! ?
Danke. Das sieht wirklich in der Tat interessant aus. Folgende Skript-AnweisungBadenPower hat geschrieben: Probier einfach einmal im Skript-Testen-Bereich folgenden Zeile aus:
system.CacheInfo();
und schau was bei Dir dann dort im Bereich "Cache info (IseESP::sm_cc; XY entries)" steht.
Ich vermute, dass das die Anzahl (also anstelle von XY) der momentan verwendeten (im Cache vorhandenen) Variablen ist.
Code: Alles auswählen
WriteLine(system.CacheInfo());
Code: Alles auswählen
Cache info (IseESP::sm_cc; 112 entries):
...
RaspberryMatic 3.75.7.20240420 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal /
- jmaus
- Beiträge: 9864
- Registriert: 17.02.2015, 14:45
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Dresden
- Hat sich bedankt: 464 Mal
- Danksagung erhalten: 1882 Mal
- Kontaktdaten:
Re: Fehler im Script aber Script testen geht ? ! ? ! ?
So, hab noch ein bisschen testet und gesucht und folgende Kommandos mit Bezug auf "Cache" scheint es wohl zu geben:jmaus hat geschrieben: Danke. Das sieht wirklich in der Tat interessant aus. Folgende Skript-Anweisung
gibt mir folgenden "sm_cc" Bereich Ausgabe:Code: Alles auswählen
WriteLine(system.CacheInfo());
Code: Alles auswählen
Cache info (IseESP::sm_cc; 112 entries): ...
Code: Alles auswählen
system.CacheInfo()
system.ClearCache()
system.CacheMode()
Code: Alles auswählen
system.CacheMode(0);
Leider also auch damit keine Lösung/Workaround des Problems. Trotzdem vielen Dank für den Hinweis bzgl. der Cache() Kommandos.
RaspberryMatic 3.75.7.20240420 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal /
- papi
- Beiträge: 371
- Registriert: 18.12.2013, 08:40
- Wohnort: Willich, NRW
- Hat sich bedankt: 2 Mal
- Danksagung erhalten: 5 Mal
Re: Fehler im Script aber Script testen geht ? ! ? ! ?
Ich werde verrückt - und ich suche seit mehreren Tagen wie ein Irrer nach der Ursache meiner Probleme...
Gibt es vielleicht eine Möglichkeit, die CCU2 zu einem bestimmten Zeitpunkt automatisch neu zu starten (ohne ihr einfach den Stecker zu ziehen)?
Damit könnte ich wenigstens die Zeit überbrücken, bis die Herrschaften von EQ3 sich der Problematik irgendwann mal angenommen haben, denn nach einem Neustart kommt meine Kiste zunächst erstmal auf 52 benutzte Variablen, die dann wohl langsam anwachsen.
Mal was Anderes: Hat schon einmal jemand versucht, was denn passiert, wenn man die Variablen in allen Skripten mit dem gleichen Namen versieht?
Klar ist das nicht sonderlich elegant und auch nicht sprechend programmiert, könnte aber Variablen sparen, sofern diese nicht jeweils mit einer eigenen SysID - unabhängig ihres Namens - behandelt und gespeichert werden.
Gibt es vielleicht eine Möglichkeit, die CCU2 zu einem bestimmten Zeitpunkt automatisch neu zu starten (ohne ihr einfach den Stecker zu ziehen)?
Damit könnte ich wenigstens die Zeit überbrücken, bis die Herrschaften von EQ3 sich der Problematik irgendwann mal angenommen haben, denn nach einem Neustart kommt meine Kiste zunächst erstmal auf 52 benutzte Variablen, die dann wohl langsam anwachsen.
Mal was Anderes: Hat schon einmal jemand versucht, was denn passiert, wenn man die Variablen in allen Skripten mit dem gleichen Namen versieht?
Klar ist das nicht sonderlich elegant und auch nicht sprechend programmiert, könnte aber Variablen sparen, sofern diese nicht jeweils mit einer eigenen SysID - unabhängig ihres Namens - behandelt und gespeichert werden.
- jmaus
- Beiträge: 9864
- Registriert: 17.02.2015, 14:45
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Dresden
- Hat sich bedankt: 464 Mal
- Danksagung erhalten: 1882 Mal
- Kontaktdaten:
Re: Fehler im Script aber Script testen geht ? ! ? ! ?
Genau das ist das momentan einzig vorübergehende Workaround für das Variablenproblem. Siehe hier:papi hat geschrieben: Mal was Anderes: Hat schon einmal jemand versucht, was denn passiert, wenn man die Variablen in allen Skripten mit dem gleichen Namen versieht?
Klar ist das nicht sonderlich elegant und auch nicht sprechend programmiert, könnte aber Variablen sparen, sofern diese nicht jeweils mit einer eigenen SysID - unabhängig ihres Namens - behandelt und gespeichert werden.
http://homematic-forum.de/forum/viewtop ... 26&t=27907
Dort haben einige auch bereits einige gängige Skripte mit gleichen Variablennamen konvertiert – auch wenn das unschön und unpraktisch ist. In jeden Falle solltest du allerdings das Problem bei eQ3 als offiziellen Bugreport melden damit dort die mögliche Lösung des Problems ganz nach oben auf die Prioritätenliste gesetzt wird. Eine entsprechende Vorlage für solch einen Bugreport findest du im selben Thread wie aufgelistet (http://homematic-forum.de/forum/viewtop ... 20#p256487).
RaspberryMatic 3.75.7.20240420 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal /
- papi
- Beiträge: 371
- Registriert: 18.12.2013, 08:40
- Wohnort: Willich, NRW
- Hat sich bedankt: 2 Mal
- Danksagung erhalten: 5 Mal
Re: Fehler im Script aber Script testen geht ? ! ? ! ?
Ja, ich bin schon ein pfiffiges Kerlchen.
Ok, ich werde mal eine Meckermail absetzen, aber ist das wirklich so sinnvoll, dass Alle aus nur einem Rohr schießen?
Stattdessen formuliere ich lieber eine eigene Variante, damit auch deutlich wird, dass ich mich nicht einfach der Petition anhänge, sondern stinksauer und enttäuscht über die bei ELV/EQ3 vertriebene Qualität bin.
Danke!
Edit:
Ist ja lustig - es wurde ja bereits erwähnt, dass EQ3 und ELV die gleiche Postadresse haben, aber sie verwenden wohl auch den gleichen Mailserver.
Hier die Empfangsbestätigung meiner Mail an EQ3:
Ok, ich werde mal eine Meckermail absetzen, aber ist das wirklich so sinnvoll, dass Alle aus nur einem Rohr schießen?
Stattdessen formuliere ich lieber eine eigene Variante, damit auch deutlich wird, dass ich mich nicht einfach der Petition anhänge, sondern stinksauer und enttäuscht über die bei ELV/EQ3 vertriebene Qualität bin.
Danke!
Edit:
Ist ja lustig - es wurde ja bereits erwähnt, dass EQ3 und ELV die gleiche Postadresse haben, aber sie verwenden wohl auch den gleichen Mailserver.
Hier die Empfangsbestätigung meiner Mail an EQ3:
Code: Alles auswählen
This is the Mail-Delivery-Service.
Your message was sccessfully delivered:
To: support@eq-3.de
Subject: Plötzlich auftretende Überläufe der CCU2
phoenix.elv.de[217.7.137.155] reply 250 2.0.0 u1K8IYRN012065 Message accepted for delivery
Re: Fehler im Script aber Script testen geht ? ! ? ! ?
ich ich bin in diesen Bug reingelaufen. Sehr ärgerlich, aber ist nun mal so.
Damit ich den Erfolg meiner Bemühungen, lokale Variablen zu vermeiden oder zumindest wiederzuverwenden, verfolgen kann, habe ich mir eine kleine Überwachung geschrieben. Jetzt kann ich wenigsten die Variablenverbraucher identifizieren und mich benachrichtigen lassen, wann ich an oder über die 200er Grenze komme.
Damit ich den Erfolg meiner Bemühungen, lokale Variablen zu vermeiden oder zumindest wiederzuverwenden, verfolgen kann, habe ich mir eine kleine Überwachung geschrieben. Jetzt kann ich wenigsten die Variablenverbraucher identifizieren und mich benachrichtigen lassen, wann ich an oder über die 200er Grenze komme.
Code: Alles auswählen
! Einfach eine Systemvariable mit dem Namen "VARIABLES" als Typ Zahl mit dem Wertebereich 0 bis 1000 (oder höher) anlegen
!verständliche Variante mit lokalen Variablen
!var temp = system.CacheInfo();
!var i = temp.Find("Cache info (IseESP::sm_cc; "); !Suchstring ist 27 Zeichen lang
!var j = temp.Find("entries):");
!dom.GetObject("VARIABLES").State(temp.Substr(i+27,j-(i+27)));
!unverständliche Variante ohne lokale Variablen
dom.GetObject("VARIABLES").State(system.CacheInfo().Substr(system.CacheInfo().Find("Cache info (IseESP::sm_cc; ")+27,system.CacheInfo().Find("entries):")-(system.CacheInfo().Find("Cache info (IseESP::sm_cc; ")+27)));
- papi
- Beiträge: 371
- Registriert: 18.12.2013, 08:40
- Wohnort: Willich, NRW
- Hat sich bedankt: 2 Mal
- Danksagung erhalten: 5 Mal
Re: Fehler im Script aber Script testen geht ? ! ? ! ?
Ich durchschaue Dein Skript zwar nicht, aber kann es sein, dass bei dieser Vorgehensweise gleichnamige Variablen mehrfach gezählt werden?
Ich komme mit Deinem Skript nämlich auf 329 Variablen, obwohl ich nur ca. 70 verwende und da bin ich mir sehr sicher.
Ich komme mit Deinem Skript nämlich auf 329 Variablen, obwohl ich nur ca. 70 verwende und da bin ich mir sehr sicher.
- koppenho
- Beiträge: 227
- Registriert: 27.12.2013, 09:12
- Wohnort: Bad Neustadt, Deutschland
- Hat sich bedankt: 2 Mal
- Danksagung erhalten: 2 Mal
Re: Fehler im Script aber Script testen geht ? ! ? ! ?
Klasse! Danke für den Code. Hab's sofort ausprobiert.nash1970 hat geschrieben:Damit ich den Erfolg meiner Bemühungen, lokale Variablen zu vermeiden oder zumindest wiederzuverwenden, verfolgen kann, habe ich mir eine kleine Überwachung geschrieben. Jetzt kann ich wenigsten die Variablenverbraucher identifizieren und mich benachrichtigen lassen, wann ich an oder über die 200er Grenze komme.
Mein Wert: 176.
Das Ergebnis dürfte bei mir stimmen.
--
Andreas
--------------------------------------------
Hauptwohnung: RaspberryMatic mit 320 Kanäle in 110 Geräten und 140 CUxD-Kanäle in 33 CUxD-Geräten
Zweitwohnung: CCU2 mit 18 Kanäle in 8 Geräten und 14 CUxD-Kanäle in 4 CUxD-Geräten
--------------------------------------------
Andreas
--------------------------------------------
Hauptwohnung: RaspberryMatic mit 320 Kanäle in 110 Geräten und 140 CUxD-Kanäle in 33 CUxD-Geräten
Zweitwohnung: CCU2 mit 18 Kanäle in 8 Geräten und 14 CUxD-Kanäle in 4 CUxD-Geräten
--------------------------------------------