CalTime is an unfortunately complicated system to enter your hourly log as a UC Berkeley employee. To help alleviate this cognitive annoyance, this script is a way to automate logging in and out. Feel free to contribute and port to your liking. Raise an issue and I'll try to get back to you ask quick as I can!
node.js
phantom.js
cron
(Optional)
-
Open
Terminal.app
or your favorite UNIX shell. -
Navigate to the directory you prefer to have the files in with
cd
. For examplecd ~/Documents/Projects/
. -
Clone this repo with
git clone https://github.com/kcparashar/bessie.git
-
Go into directory with
cd bessie/
.
- (a) Install node packages with
npm install
. - (b) (upon first use) Open the
config.json
with your favorite text editor. For examplenano config.json
. Then replace the<USERNAME>
and<PASSWORD>
with your actual credentials.
- Run the app with
npm start
ornode bessie.js
.
If you prefer to save your self the hassle of running this script, you can choose to automate it with cron
a UNIX utliity that lets you run background task on schedule.
This is best paired with a server, for which I recommend DigitalOcean (referral link with $10 credit).
To use cron
you must first open a crontab. Corenominal provides a useful guide.
Then enter in the options from below or write a custom entry.
00 09,17 * * 1-5 node ~/<PATHTO>/bessie.js
00 09,15 * * 1-5 node ~/<PATHTO>/bessie.js
00 09,13 * * 1-5 node ~/<PATHTO>/bessie.js
00 09,11 * * 1-5 node ~/<PATHTO>/bessie.js
Q. This doesn't seem to be working on my Linux Server! Help?
A. Try this fix.
That’s it! Enjoy your automatic hours entry.
Please feel free to contribute, add an issue, or email me.