FM_AlarmClock (Wecker)

Version 2.21

Die Version ist ok, lese bitte mal den ganzen Thread, da ist das schon mehrmals beschrieben. Wenn Du dann nicht weiterkommst poste bitte was Du hast und ich helfe gern weiter. Besser ist natürlich wenn Du auf IPS 2.5 updatest, hier geht alles automatisch.:wink:

Alles klar hab ich gemacht, jetzt funktioniert alles bestens.

Danke

Markus

ist ja irre, welche Heileffekte „selberlesen“ manchmal haben kann - fast schon wie Handauflegen :smiley:

Alles klar hab ich gemacht, jetzt funktioniert alles bestens.

Na dann viel Spaß mit dem Wecker.:wink:

ist ja irre, welche Heileffekte „selberlesen“ manchmal haben kann - fast schon wie Handauflegen

Ich werde dann demnächst verschiedene Formumszauber einführen.:smiley:

Hallo Leute!

Seit einiger Zeit bekomme ich Fehlermeldungen a la „Hauptthread war mehrere Sekunden blockiert…“. Ich bin erst heute dazu gekommen mal in die Logs zu sehen und dabei ist mir folgendes aufgefallen.

12.02.2012 01:48:24.574 0 WARNING Kernel Hauptthread war länger als 5 Sekunden blockiert. Dauer: 60081ms
12.02.2012 01:48:24.663 57138 DEBUG ExecuteThreadID Skriptausführung: 863wecker.ips.php ~ Absender: Ereignis #16549, Zeit Ereignis
12.02.2012 01:48:26.243 57138 DEBUG ExecuteThreadID Ausgeführt, Resultat: 1, Erfolgreich: True, Zeit: 28 ms

Nach jeder Fehlermeldung kommt unmittelbar die Skriptausführung vom Weckerskipt.

Hat jemand eine Idee, woran das liegen kann?

LG
Hugo

Ich kann mir nicht vorstellen das der Wecker der Verursacher ist, zumal ja die Fehlermeldung vorher kommt.

Ähnliche Fehler sind im Forum häufiger zu finden:

Ich glaube wir sollten das ganze mal beobachten, es könnte auch ein IPS internes Problem sein. Zumal ich sporadisch solche Einträge auch ab und zu im Log finde.

Ich beobachte es weiter. Wie gesagt ist schon auffällig, dass nach jeder Fehlermeldung, die Meldung vom Weckerskript kommt, aber vielleicht handelt es sich um einen Zufall. Ich schaue mal, ob mir noch weitere Muster auffallen, die auf die Ursache schliessen lassen.

LG
Hugo

Hallo Ferengi-Master,

ich bin jetzt auch mal dazu gekommen, dein Wecker zu installieren.

Hat soweit auch alles prima funktioniert, nachdem ich statt der externen IPSInstaller-Lib im Script einfach das entsprechende Modul aus der IPSLibrary geladen habe.

Danach hab ich ein bisserl mit dem Wecker rumgespielt… und bin noch auf ein kleines Problem gestoßen:

Wenn man einen Wecker löschen möchte, dessen Aktionsscripte (aus welchem Grund auch immer) nicht existieren, dann gibt es eine Fehlermeldung und der Wecker wird NICHT gelöscht. Mir ist das so mit dem Testwecker ergangen - der Eintrag in der Datenhaltung war vorhanden, die Aktionsscripte aber nicht.

Ich hab mir deshalb mal kurz deinen Code angeguckt und in der Funktion „Wecker löschen“ die folgenden 2 kleinen Anpassungen vorgenommen, welche das Problem beseitigt haben:

Ab Zeile 887 findet sich in der wecker.ips.php folgender Code:


            $id_script = @IPS_GetScriptIDByName($wecker_name, $id_kat);
                IPS_DeleteScript($id_script, true);

            $id_script = @IPS_GetScriptIDByName($wecker_name."_Schlummermodus", $id_kat);
                IPS_DeleteScript($id_script, true);

Bei den beiden Funktionsaufrufen hast du ja schon eine Fehlermeldungsunterdrückung eingefügt - aber leider rufst du die anschließende Löschfunktion ohne Prüfung des Ergebniswerts auf. Ich hab das wie folgt angepasst:



            if (false !== ($id_script = @IPS_GetScriptIDByName($wecker_name, $id_kat))) {
                IPS_DeleteScript($id_script, true);
            }

            if (false !== ($id_script = @IPS_GetScriptIDByName($wecker_name."_Schlummermodus", $id_kat))) {
                IPS_DeleteScript($id_script, true);
            }


Durch die beiden IF-Abfragen werden jetzt die Aktionsskripte nur noch gelöscht wenn sie auch gefunden wurden.

Hallo Thorsten,

danke für Dein Feedback, werde ich in der nächsten Version einbauen.
Neue Projekte von mir wird es aber in Zukunft nur noch auf Basis der IPS Library geben. Dazu benötige ich allerdings Zeit die ich gerade nicht habe. :wink:

Hi Ferengi-Master, mal eine Frage im Zusammenhang mit Deinem Wecker: Kann man eigentlich bei einem IPS Ereignis angeben, dass es nur an den Wochentagen, also Mo bis Fr aktiv ist… Oder wie hast Du das realisiert?

Das Ereignis kann das Script je triggern, im Code des Scriptes fragst Du einfach den Tag ab und entscheidest dann ob dieser ausgeführt wird.


$tag = (date("w")); //Tag ermitteln
$tag_arr = array("Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag");
$tag = $tag_arr[$tag]; //Tag in Bustabenform wandeln

Ist es eigentlich bei Euch auch so, dass im Kalendernamen keine Leerzeichen, Sonderzeichen und Unterstriche erlaubt sind? Könnte man das evtl. noch ändern?
Ansonst funktioniert der Wecker super :smiley:

Grüße, Jürgen

Ich habe mittlerweile das Problem, dass wenn ich bei meinem Wecker etwas ändern möchte bspw.: Wecken um 7:30 statt 8:00 lädt er nach 3 Eingabe extrem lange, bestimmt 10 Sekunden. Danach kann ich wieder 3 Eingaben machen und muss dann wieder warten. 30 Minuten Wecker nach hinten verstellen wird hier zum Großereignis. Ich habe jetzt alles deinstalliert und die aktuelle Version installiert, leider hier immer noch das gleiche Problem. :confused: Jemand eine Idee was meinen Wecker so ausbremst?

Kann ich nicht nachvollziehen.
Evtl. mal anderen Browser probiert?

Chrome und Firefox auf 2 unterschiedlichen Systemen das gleiche Phänomen. Es ist auch egal was ich ändere. Sobald ich 3 Eingaben hintereinander mache und sei es nur den Wochentag zu wechseln lädt es 10 Sekunden

Gesendet von meinem Nexus 4 mit Tapatalk 2

Was zeigt dabei die Info der PHP Threads an? Wie ist die Scriptlaufzeit?

Meinst du das hier? Ich habe durchgehend die Minuten versucht zu verändern. Nach 6-Mal sieht man hier das 19 Sekunden vergehen bis ich wieder Eingaben machen konnte.

Weils so schönist noch ein Screenshot

Nein, in der Konsole --> Ansicht hinzufügen --> PHP Information

Gruß
Bruno