Welches Modul kann das?

Begonnen von Michi240281, 01 Juli 2014, 16:20:53

Vorheriges Thema - Nächstes Thema

der-Lolo

ich vermute in der ersten zeile solltest du

my $counter = 0

einsetzen...


Michi240281

Zitat von: Puschel74 am 02 Juli 2014, 21:40:36
P.S.: Ich bin der "pöse", das weiß ich

Einsicht ist der erste Weg zue Besserung!  ;)

Ich habe hier niemanden genötigt oder gar gezwungen, mir zu helfen! Meine Fhem-Installation ist inzwischen recht umfangreich und ich komme mit allem bislang sehr gut klar! Das Programmieren in der 99_myUtils ist aber wie gesagt ganz neu für mich und ehrlich gesagt finde ich es unlogisch und unnötig, wenn ich jetzt 20 Stunden investiere um zu einer Lösung zu kommen, wenn jmd anderes die Lösung kennt und 5 Minuten seiner Zeit opfert und mir diese mitteilt! Denn ich bin der Meinung, dass ein Forum dafür da ist, andere zu unterstützen, denn wir wollen ja im Grunde alle das gleiche!

Denk mal drüber nach! In den 10 Minuten, in denen du mir jetzt eine Predigt gehalten hast von wegen EInsteiger.pdf, Suche, google etc. hättest du auch 2 Minuten dafür nutzen können mir entweder zu schreiben wie ich das umstellen muss oder dass du es eben nicht weißt und die anderen 8 Minuten hättest mit deiner Freundin verbracht!

Und das alles ist eben meine Meinung!

Ich bin mal gespannt und freu mich über die nächste Antwort von Elektrolurch, dem ich schonmal sehr dankbar für seine Antworten bin! Parallel schaue ich mir das sequence modul nochmal genauer an und werde damit etwas experimentieren. Auch wenn Fhem ein Hobby ist, habe ich auch noch andere Sachen zu tun und werde jetzt kein Perlstudium dafür betreiben!

In dem Sinne, gute Nacht!
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

Michi240281

Zitat von: der-Lolo am 02 Juli 2014, 21:45:17
ich vermute in der ersten zeile solltest du

my $counter = 0

einsetzen...

Ok, besten Dank!!!!!!!!  :)

Werde ich heute Abend testen!
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

Elektrolurch

Hallo Michi,

die Zeile
my $counter = 0;

steht ja vor der eigentlichen subroutine.
Perl liest beim reload - Befehl des Moduls den ganzen Code einmal ein und führt jene TTeile auch direkt aus, die nicht in einer sub-Routine stehen.
Damit wird der counter auf 0 gesetzt und somit ein definierter Zustand für Dein Garagentor definiert.
Man könnte auch theorethisch die Zuweisung von 0 weglassen, da perl immer neu deklarierte Variablen mit 0 oder undef initialisiert.

So ist es aber sauberer.

Wenn Du die 99_myUtils editiert hast, musst Du nach dem Abspeichern das Modul mit

reload 99_myUtils.pm

von fhem aus neu laden lassen, falls beim Abspeichern keine perl-Fehler entdeckt wurden (:-@)

Gruß

Elektrolurch
configDB und Windows befreite Zone!

Elektrolurch

Hallo Michi,

hatte gerade noch mal zurückgeblättert.
Stimmt schon, dass man auch ein bisserl mitdenken sollte:

in der sub-Routine wird $counter verwendet,
dann muss in der Deklaration davor auch my $counter = 0;
stehen und nicht my $counter0;
weil das sind ja zwei verschiedne Variablen und perl hat Dir ja genau dies in der Fehlermeldung geschrieben:
dass $counter nicht deklariert ist.
Ich habe zwar vor vielen Jahren div. Assembler, Fortran, Pascal, C, C++ usw. gelernt und erfolgreich programmmiert, aber perl war für mich vor einem Jahr auch neu.
Vielleicht solltest Du hier mal den Kurs durcharbeiten:
http://www.perlboard.de/perlguide/Inhalt.html
Der ist ganz brauchbar und leicht verständlich.


Gruß

Elektrolurch
configDB und Windows befreite Zone!

Michi240281

Ok vielen vielen Dank!

Werde es heute Abend mal ausprobieren! Mir ist zwar noch nicht ganz klar, wo da in dem Code dann das Garagentor vorkommt/geprüft wird, aber ich teste es mal!
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

Michi240281

Also es tut sich auf jeden Fall was! Aber 100% richtig ist es wohl noch nicht! Der Counter zeigt manchmal mehrfach hintereinander 0 an obwohl ich innerhalb der Zeit die Garage auf und zu mache (habe das Zeitintervall auf 6-22 Uhr aufgeweitet). Und er setzt auch Abwesend auf ja obwohl der Counter nur 1 anzeigt!

Also beim ersten schließen der Garage zeigt der Counter 0! Beim 2. Schließen dann Counter=1 und Abwesend geht auf ja! Sollte doch an sich erst wenn Counter>=2? Und manchmal bleibt der Counter mehrfach bei 0!

Ne Idee?
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

Michi240281

@ Elektrolurch:

Komme gerade heim und sehe, dass heute 2-3x Abwesend von ja auf nein und zurück gewechselt hat. Hab keine Erklärung dafür. Ursache ist auf jeden Fall das neue sub. Was ich gesehen habe, dass genau zu den Zeitpunkten ein addLog ausgeführt wurde. Der Counter zeigte jedoch 0 an! Dennoch wechselte dann immer der Abwesenheitsstatus! Also irgendwo ist in dem Sub noch der Wurm drin!

Kannste mir da evtl helfen? Wo müsste ich schauen?

Besten Dank!!
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

Tobias

alles nur raterei... (hab auch nicht alle Posts gelesen)
Sauber ist es wenn du an der Garagendecke über den Autos jeweils einen Abstandssensor (zb. einen SRF02 mittels ATTINY-DS2423 Platine) einbindest. Dann weißt du 100% welches Auto JETZT in der Garage steht.
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

Elektrolurch

Zitat:
Komme gerade heim und sehe, dass heute 2-3x Abwesend von ja auf nein und zurück gewechselt hat. Hab keine Erklärung dafür. Ursache ist auf jeden Fall das neue sub. Was ich gesehen habe, dass genau zu den Zeitpunkten ein addLog ausgeführt wurde. Der Counter zeigte jedoch 0 an! Dennoch wechselte dann immer der Abwesenheitsstatus! Also irgendwo ist in dem Sub noch der Wurm drin!

Kannste mir da evtl helfen? Wo müsste ich schauen?

Leider nicht, da ich weder über hellseherische Fähigkeiten verfüge, noch ist es mir bislang gelungen, die installierte Web-Cam zu hacken um zu erfahren, was Dein Nachbar so tagsüber in Deiner Garage treibt....
configDB und Windows befreite Zone!