Sleep Timer / weck funktion

  • Wer kennt das nicht?
    Man muss umbedigt um 05:00 uhr aufstehen um noch schnell vor der schule ein bissl was bei seinem browsergame zu machen aber man überhört IMMER den wecker?
    nun weil es mir so geht ( =) ) hab ich mir auf die schnelle einen wecker gebastelt...
    es funtz wie eine art countdown funktion aber ohne GUI ( bin zu faul)
    man muss im script bei den vars die zeit eintragen die man pennen (oder was weis ich was machen) will und die musik auswählen (unten im script, in meinem beispiel sind es rammstein lieder^^)

    !sicherheits hinweis! achte auf die lautsärke einstellung deiner boxen, sonst beschweren sich nur die nachbarn wer denn um halb 4 morgens so ein scheiß hört =)

    [autoit]

    HotKeySet("{ESC}", "Terminate")
    $sekunden = 20 ;die sekunden der schlaf zeit
    $minuten = 0 ;die minuten der schlaf zeit
    $stunden = 0 ;wer hätts gedacht : die stunden der schlaf zeit
    $abbruch = 0 ;while beende kram, ich nutz es mal ganz geschickt um auch die nächste while schleifeaufzurufen
    While $abbruch = 0
    SoundSetWaveVolume(0) ;lautstärke auf null da das "dingen" der MsgBox NERVT
    $msg = StringFormat("%s:%s:%s", $stunden, $minuten, $sekunden)
    MsgBox(0,"",""&$msg, 1)
    $sekunden = $sekunden-1
    If $sekunden < 0 Then
    $minuten = $minuten-1
    $sekunden = 59
    EndIf
    If $minuten < 0 Then
    $minuten = 59
    $stunden = $stunden-1
    EndIf
    If $stunden = 0 Then
    If $minuten = 0 Then
    If $sekunden = 0 Then
    $abbruch = 1
    EndIf
    EndIf
    EndIf
    WEnd
    While $abbruch = 1
    SoundSetWaveVolume(100) ;lautstärke wieder höher, weil es sonst keinen sinn hat
    SoundPlay("c:\rammstein\Rammstein - Feuer Frei (xXx Soundtrack).mp3", 1) ;hier einfach die lieder eintragen
    SoundPlay("c:\rammstein\Rammstein - Spring.mp3", 1)
    SoundPlay("c:\rammstein\JBO & Rammstein - Ein bisschen Frieden.mp3", 1)
    WEnd
    Func Terminate()
    Exit 0
    EndFunc

    [/autoit]


    EDIT3: Die terminate funktion funtz nicht :-/ kann man sound stoppen?
    bitte kurz nen hinweis :)

    Gruß, Phillip

    3 Mal editiert, zuletzt von Phillipk (5. November 2006 um 23:11)

    • Offizieller Beitrag

    HI,

    schau dir mal _SoundPause() an. Könnte klappen. ;)

    oder noch viel einfacher, aber evtl. nicht gewünscht. Kannst du ja als Option in dein Skript einbauen.

    [autoit]

    HotKeySet("{ESC}", "Terminate")

    [/autoit][autoit][/autoit][autoit]

    $zeit = InputBox("Weck-Uhrzeit", "Wann willst du geweckt werden?", "06:00")

    [/autoit][autoit][/autoit][autoit]

    While 1
    If @HOUR = StringLeft($zeit, 2) And @MIN = StringRight($zeit, 2) Then
    SoundSetWaveVolume(100) ;lautstärke wieder höher, weil es sonst keinen sinn hat
    SoundPlay("c:\rammstein\Rammstein - Feuer Frei (xXx Soundtrack).mp3", 1) ;hier einfach die lieder eintragen
    SoundPlay("c:\rammstein\Rammstein - Spring.mp3", 1)
    SoundPlay("c:\rammstein\JBO & Rammstein - Ein bisschen Frieden.mp3", 1)
    Exit(0)
    Else
    Sleep(1000)
    EndIf
    WEnd

    [/autoit][autoit][/autoit][autoit]

    Func Terminate()
    Exit 0
    EndFunc ;==>Terminate

    [/autoit]

    So long,

    Mega

  • leider bin ich noch nicht sehr geübt in autoit ;)
    ich werde mir in 2stunden etwa den script mal genau anschauen weil ich ihn aussem puren lesen nicht schnalle *g*

    ich hab vor da mehrere modis draus zu machen und ein gui (mein erstes gui ueberhaupt :)) wo man zwischen "countdown" "stopp uhr" und "wecker" wählen kann, die dann je mit ein bis 3 sounds ausgestattet werden können (die vllt auch als ini saven damit man nicht immer neu eintragen muss @ lieder/sounds etc)

    und vllt eineshutdown funktion, die man einsetzen kann wenn man zum beispiel grade was installiert, dh ein countdown der den rechner beendet.
    vllt auch einen hintergrund timer, der nicht per msgbox rumnervt, das man noch am rechner arbeiten kann....

    jaaa also ich werde dann gleich mal testen, weiterarbeiten etc und wenn ich fragen hab poste ich sie hier mal =)

    • Offizieller Beitrag

    Hi,

    na dann mal viel Spaß. Sollte alles möglich sein, was du beschrieben hast.

    Um die MsgBox zu vermeiden, könntest du OnScreen Shrift benutzen, ToolTip oder SplashText.

    Da bin ich ja mal auf deine Erweiterungen gespannt.

    Spannend ist auch die Countdown-Funktion

    1. Countdown z.B. 30 min
    2. Countdown z.B. bis 15:34:54 ist
    3. Countdown z.B. Datum erreicht

    usw.

    Gibt es schon, aber es selbst zu machen ist ne gute Übung. ;)

    So long,

    Mega

  • jaa als übung war schon gedacht :) danke fuer die hinweise, ich mach mich mal an die arbeit
    -----
    soo da meld ich mich mal wieder :)
    kannst du mir den näheren sinn von StringLeft() und ...Right() erklären? ich werde aus der doku nicht schlau :-/

    Einmal editiert, zuletzt von Phillipk (7. November 2006 um 06:47)

  • sprich wenn ich als string "1122" habe, liefert mir Stringleft($blar, 2) "11" zurück... ah gibt sinn :) danke.