Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
Korrektur: die Empfehlung, eib.log nur wöchentlich zu rotieren, führte trotz Begrenzung auf 15M zu Dateien, die >45M groß waren. Das brachte (vermutlich) das ganzes Wiregate in Schwierigkeiten bei der Logrotation.
DAHER NEHME ICH DIESE EMPFEHLUNG ZURÜCK!
Bitte eib.log täglich rotieren.
Neue, dazu Version der Anwesenheitssimulation im SVN.
wollte mal fragen ob nun jemand dieses Plugin in Betrieb hat.
Denn bei mir glaube ich noch einen Fehler drin zu haben.
Es funktioniert ein "AnwSimSkript.pl" automatisch zu erstellen und auch die Simulation zu starten.
Doch ich bekomme es nicht hin das die Werte gesendet werden.
In der AnwSimSkript.pl stehen Uhrzeiten und GA und Wert drin.
jetzt mit deinem Hinweis ist es klar. Doch vorher habe ich diese Zeile nicht gefunden und wo anders nach einem Fehler gesucht.
Werde es haute gleich mal testweise laufen lassen.
ich versuche gerade das Plugin zum Laufen zu bringen (neuste Version aus dem SVN). Dabei habe ich die folgende Fehlermeldung im plugin-Log.
Code:
2013-07-22 21:23:44.667,Anwesenheitssimulation,,0s,syntax error at (eval 111299) line 26, next token ???
Global symbol "@gafilter" requires explicit package name at (eval 111299) line 26.
Global symbol "@gafilter" requires explicit package name at (eval 111299) line 96.
Global symbol "@gafilter" requires explicit package name at (eval 111299) line 96.
Global symbol "@gafilter" requires explicit package name at (eval 111299) line 97.
Ich bin in Sachen perl ein blutiger Anfänger. Was mache ich falsch?
# gafilter ist die Liste der validen GAs (koennen auch Kurz- oder Langnamen sein)
# Beispiel: alle GAs der Haupt- und Mittelgruppe 6/2 und 6/3:
# my @gafilter=grep m!^(6/2/|6/3/)!, keys %eibgaconf;
# 0/1 Licht/Schalten
# 2/0 Jalousie und Rolladen/Fahren
my @gafilter=grep m!^(0/1/|2/0/)!, keys %eibgaconf;
# Ich verwende GA-Kurznamen (das erste Wort der GA-Bezeichnung ist ein eindeutiger Bezeichner der GA) und
# kann daher etwas komfortabler schreiben:
#my @gafilter=grep /^(LI|LD|JA|JS|JP)\S*$/, keys %eibgaconf;
# das bedeutet: alle Lichtschalt- und -dimmaktionen, alle Jalousiebefehle.
Sorry, da kann ich nichts erkennen. Die eine Zeile ist jedenfalls syntaktisch korrekt. Die Kommentare drumherum sind ja syntaktisch einfach nur whitespace, daher bitte nochmal ein paar Codezeilen davor und danach.
Da fehlt vielleicht ein ";" oder Anführungsstriche, oder sowas.
VG, Fry
Kurzer Erfahrungsbericht: während einer einwöchigen Reise lief bei mir daheim die Anwesenheitssimulation, generiert aus der Woche davor:
* Lichter an und aus
* Jalousien hoch und runter
Ergebnis:
* Simulation lief störungsfrei (kann man vom Mietwagen im Urlaub nicht behaupten)
* Stromverbrauch in Abwesenheit kaum geringer als in Anwesenheit (echtes Zeichen für Luxus)
* es wurde nicht eingebrochen (in Analogie zur NSA ist das bereits der Beweis dafür, dass die Technik nützlich ist...)
Have fun,
Fry
PS. Ich habe noch ein paar Verbesserungen ins Plugin eingearbeitet, vor allem um in der Visu die nächste Aktion anzeigen zu können (nette Sache). Poste ich auf Anfrage und sobald ElabNet die wiregated.pl-Änderungen übernommen hat (if->while, %plugin_cache, Vorkompilieren) - apropos, gibts das SVN eigentlich noch?
hast du deine neue Version schon ins SVN gestellt?
Oder kannst du es bitte mal mit deinen Änderungen posten und wie ich die nächste Aktion in der CV anzeigen lassen kann.
Oder ist dies ohne die Änderung der wiregated.pl nicht möglich?
Anbei, Datei bitte in Anwesenheitssimulation.pl umbenennen, Konfiguration ist in den ersten Zeilen zu finden.
Meines Wissens erfordert dieses Plugin keine Patches im wiregated.pl, ich teste aber nicht mit dem Original-wiregated.pl (und supporte ihn auch nicht)!
Daher empfehle ich die von mir angeregten Patches (den if/while-Patch, den "Vorkompilieren"-Patch und den %plugin_cache-Patch) zu machen.
bin gerade dabei, dein Skript zu testen. Leider bekomme ich das nicht zum Laufen. Hast du einen Tipp?
Ist meine erste Plugin-Handlung am wiregate. Wiregate ist aktuell, aktuellstes offizielles Update installiert.
Dein Plugin (letzte Version aus Thread) habe ich im Web-Plugin-Editor des Wiregate mit Copy&Paste abgelegt.
In der ETS habe ich ein paar Gruppenadressen angelegt, u.a. für erzeugen und starten. Diese habe ich auf einen Taster bei mir gelegt.
Das Plugin läuft grundsätzlich -- es wird offenbar nach dem Speichern des Plugin-Code im Editor einmal ausgeführt. Danach aber nicht mehr.
Die Gruppenadresse für $erzeugen taucht im eibd.log auf, ebenso $starten. Wenn ich $starten mache (Taster = Umschalter), kommen die Werte 1 und 0 auf den Bus, das Skript gibt in diesen beiden Fällen "Anwesenheitssimulation gestoppt" aus (sieht man im plugin-log). Ein Skript /etc/wiregate/plugin/AnwSimSkript.pl wird nicht erzeugt. Bei $erzeugen kommt im plugin-log nix an.
Kurz: Offenbar wird dein Skript nicht ausgeführt bei den Gruppenadressen. Ich habe $erzeugen (mit Wert 1) und $starten (mit Werten 1 und 0) gesendet.
Konfiguriert habe ich nur im oberen Teil des Skript, die Gruppenadressen habe ich direkt eingetragen -- denke also eigentlich, dass ich da nix verbockt hab. use_shorts habe ich auf 0 gesetzt, gafilter auch mit der direkten Syntax (wie im Kommentar).
Hallo Stefan,
gerade das Plugin Anwesenheitssimulation ist relativ trickreich. Es erzeugt seinerseits ein Plugin und startet dieses. Vielleicht experimentierst du zuerst mit einfacheren Plugins, bevor du dich an dieses machst.
Konkret: alle benutzten Gruppenadressen müssen in /etc/wiregate/eibga.conf inklusive ihrer DPTSubIds eingepflegt sein.
Zweitens: Wie hast du das Plugin konfiguriert? Kannst du den Codeausschnitt mal hier posten?
Drittens: was zeigt sich im /var/log/wiregate_plugin.log?
Aktuell steht noch ein Update des wiregate-Daemons aus, in dem (hoffentlich) einige von mir vorgeschlagene Patches drin sein werden (%plugin_cache, Vorkompilieren, if/while). Für die Anwesenheitssimulation sind die (vielleicht) nicht so wichtig, ich weise aber grundsätzlich darauf hin, dass ich alle Plugins bei mir zu Hause mittlerweile weiterentwickelt habe und die alten Versionen auf dem alten Daemon nicht mehr testen/supporten kann. Wie gesagt, das wir hier aber nicht so das Problem sein...
Am einfachsten ist es vielleicht, du wartest einfach 1-2 Monate. Bis dann sollten die Daemon-Patches da sein, und ich werde dann die neuesten Versionen aller meiner Plugins ins SVN tun. Dann sollte auch alles klappen.
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Kommentar