Bells is the system the lab uses to implement reminder bells during the day.
Bells was originally written by Evan Danaher, and was a crontab on the local side. The crontab file was modified by Dan Tran to accomodate for more times and JLC, along with putting it on AFS to help with instant updating. At the beginning of the 2006-2007 school year, the crontab and script was modified again by Brandon Vargo. Included in this update are command-line switches to facilitate the playing of different bells, including the normal bell, a warning bell, jingle bells, or happy birthday.
The bell crontab can be found in
/afs/csl/service/belltab. On local workstations,
/etc/cron.d/bell is symlinked to the bell crontab on AFS. When looking at or editing the belltab file, you must note:
- All times are set one minute before the actual bell in order to run the
/afs/csl/service/sound/cronscript, which will sync with the NTP server and play synchronized, using various scripts found in
- Certain blocks of cron lines are commented out to accommodate for special schedules. For example, at this time of writing, JLC has ended for the year, meaning that block has been commented out and the original times have been modified to accomodate Thursday. Please note that when JLC bells are turned back on, you must change the lines to exclude Thursday.
- Please note that the owner of the belltab file MUST be owned by root, otherwise cron will ignore the file and the bells will not play. In addition, system:anyuser needs to be able to read the file, otherwise cron (which does not have AFS tokens) will not be able to access the script, also prohibiting the bells from playing.