I've got just the opposite, I let my mp3s play when I go to bed and then have a script Perl script kill the process in a half an hour or an hour. | [reply] [Watch: Dir/Any] |
I have something similar setup, albeit a mite more complex.
I, too, have X-10 setup but I also got a freebie motion detector.
I figured I might as well put it to some use, so I decided to
make an alarm clock (no, more alarm SYSTEM) that used it. The way
it is configured now, I have the motion detector near my computer
where it cannot see the bed (very well (I need to block its range a bit more)).
the alarm system is just a big ol'e perl script that gets activated
by a cron job and turns on a bunch of noisy/bright x-10 devices.
the catch is that it checks the motion detector until it actually
detects movment (as in I actually got up). the system also,
just to top things off, checks a list of holidays to see if it should
actually bother waking me up and best yet: checks for school closings (snow days).
now all i need to do is have it tilt up my bed, drop me through the floor
and into some nice, mechanical trousers. oh, wait, that's already been done ;-) | [reply] [Watch: Dir/Any] |
Any source code for that? It sounds great. I'm a bit far off but have this so far works fine, although incomplete....
#!/usr/bin/perl
$servertime = localtime (time);
$x = 0;
$Day = "Wed";
$Month = "Dec";
$Date = "5";
$Time = "10:15:30";
$Year = "2007";
$AudioFileName = "04 - Dido - Marys In India - EMG - www.elitemusic.e
+s.vg.mp3";
$Player = "xmms";
print ("\r\n \r\n \r\n");
print ("--------------------------------------------------------------
+--------------- \r\n");
print ("Welcome To Dans Perl Alarm Clock For Linux\r\n");
print ("Created by Dan Gibas - http://www.hygen.net\r\n");
print ("--------------------------------------------------------------
+--------------- \r\n");
print ("\r\n \r\n \r\n");
print ("Hit ENTER to continue setup...\r\n");
$Begin = <STDIN>;
print ("\r\n \r\n \r\n");
print ("Enter Alarm Day:\r\n\r\n");
print ("(Choose a number from 1 to 7)\r\n");
print ("1 = Mon\r\n");
print ("2 = Tue\r\n");
print ("3 = Wed\r\n");
print ("4 = Thu\r\n");
print ("5 = Fri\r\n");
print ("6 = Sat\r\n");
print ("7 = Sun\r\n");
$Day = <STDIN>;
print ("Enter Alarm Month:\r\n\r\n");
print ("(Choose a number from 1 to 12)\r\n");
print ("1 = Jan\r\n");
print ("2 = Feb\r\n");
print ("3 = Mar\r\n");
print ("4 = Apr\r\n");
print ("5 = May\r\n");
print ("6 = Jun\r\n");
print ("7 = Jul\r\n");
print ("8 = Aug\r\n");
print ("9 = Sep\r\n");
print ("10 = Oct\r\n");
print ("11 = Nov\r\n");
print ("12 = Dec\r\n");
$Month = <STDIN>;
if ($Day == 1){
$Day = "Mon";
}
if ($Day == 2){
$Day = "Tue";
}
if ($Day == 3){
$Day = "Wed";
}
if ($Day == 4){
$Day = "Thu";
}
if ($Day == 5){
$Day = "Fri";
}
if ($Day == 6){
$Day = "Sat";
}
if ($Day == 7){
$Day = "Sun";
}
if ($Month == 1){
$Month = "Jan";
}
if ($Month == 2){
$Month = "Feb";
}
if ($Month == 3){
$Month = "Mar";
}
if ($Month == 4){
$Month = "Apr";
}
if ($Month == 5){
$Month = "May";
}
if ($Month == 6){
$Month = "Jun";
}
if ($Month == 7){
$Month = "Jul";
}
if ($Month == 8){
$Month = "Aug";
}
if ($Month == 9){
$Month = "Sep";
}
if ($Month == 10){
$Month = "Oct";
}
if ($Month == 11){
$Month = "Nov";
}
if ($Month == 12){
$Month = "Dec";
}
print ("\r\n \r\n \r\n");
print ("--------------------------------------------------------------
+--------------- \r\n");
print ("Alarm activated! \r\n");
print ("Alarm will go off at: $Day $Month $Date $Time $Year \r\n");
print ("Alarm will play: $AudioFileName \r\n");
print ("[^c to quit] \r\n");
print ("--------------------------------------------------------------
+--------------- \r\n");
while ($x < 10) {
$servertime = localtime (time);
if ($servertime eq "$Day $Month $Date $Time $Year"){
$x = 100;
exec ("$Player \"$AudioFileName\"");
}
}
It uses a bit too much CPU but works...
more info here - http://www.hygen.net/blog/
Edit: g0n - code tags | [reply] [Watch: Dir/Any] [d/l] |
Is it Perl language code? I don't beleive!
| [reply] [Watch: Dir/Any] |
Source code, man! What good is it to talk about cool uses for Perl if you don't give code?
| [reply] [Watch: Dir/Any] |
Source code?
Once, when away on a trip I was horrified to find that:
- I'd left my alarm clock at home and
- the one in my room looked, well, really ill.
So wrote a snippet which fired up the CD in the laptop.
It was a simple loop which calculated the time-delta, slept
for half of it and fired up the CD if the delta was less
than 1 minute. Leave the volume up and something suitabley
LOUD in the disk.
| [reply] [Watch: Dir/Any] |
That was me - I was particularily paranoid about seeing a heart beat. The current version calculates the delay, reformats it as hours and minutes(for idiot proofing) and pops up a TK/TCL window to grab my attention (in case the volume is down)
| [reply] [Watch: Dir/Any] |