Even in the web 2.0 world, geeks like me still tend to do lots of tasks on the UNIX shell. Recently Best Pracital released their command line tool todo.pl for their awesome task management service Hiveminder. Jesse gave me a preview release for it a couple of weeks before the public announcement and I've been finding it practically useful.
So I created a similar command line tool for my favorite calendar service 30boxes. There you go, 30boxes.pl. The usage of the command is quite similar to todo.pl (or the original todo.sh):
30boxes.pl list
List all events in your calendar starting from today to 3 months later
30boxes.pl --from "2 weeks ago" -to today
List all events in your calendar starting from 2 weeks ago to today
30boxes.pl --month "October 2006"
List all events in your calendar scheduled on October 2006
30boxes.pl --date tomorrow
List all events scheduled tomorrow.
30boxes.pl add meeting with Brad tomorrow 3pm
Add new event title "meeting with Brad" on 3pm tomorrow, using 30boxes One box input.
30boxes.pl del 100
Delete the event with id 100.
That's it. Pretty simple and usable. You need some Perl modules installed from CPAN, and most of them are quite popular and easy to install.
I like to add 'update' command to this shell, to add the ability to change title or starting date from command line also, but looks like 30boxes events.Update API is kind of borked, or just unfriendly to use. When you call method=events.Update&summary=foo, it'll clear out all the fields other than summary, which to me is very intuitive.
I'll update the code to retrieve the original data and send back if there're popular demands for it. But for now you can just use web interface to update.
Enjoy!
This is great, thanks for the cool script; I had been having a hard time deciding between using 30boxes and the todo.sh script by Gina at Lifehacker. Now, I do not have to choose.
Although most command liners are pretty savvy, I ran into a couple snags while getting it to work, so I quickly outlined my process in some really terse instructions. Hopefully they will help someone else make use of this script.
I use blogger, so trackbacks don't really work. Here's the URL:
http://astroturfgarden.com/2006/11/instructions-for-30boxes-from-command.html
Posted by: Kevin Neely | 2006.11.19 at 13:44
Has there been any update on this script?
I have a lot of repeating events, and 30boxes.pl only gives me their one original date, which isn't very helpful...
Posted by: Kevin | 2007.04.27 at 05:10
I remember I got this working some time ago, but the link above doesn't work any longer; anyone got a copy of it? I get
dyld: lazy symbol binding failed: Symbol not found: _Perl_Gthr_key_ptr
Referenced from: /System/Library/Perl/Extras/5.8.8/darwin-thread-multi-2level//auto/Mac/Files/Files.bundle
Expected in: flat namespace
dyld: Symbol not found: _Perl_Gthr_key_ptr
Referenced from: /System/Library/Perl/Extras/5.8.8/darwin-thread-multi-2level//auto/Mac/Files/Files.bundle
Expected in: flat namespace
(I'm not used to Perl and all these packages... )
Posted by: k | 2009.02.09 at 11:12