Re: Daily email from my remote calendar
On Wed, Mar 30, 2011 at 06:02:54PM -0700, Dr. Ed Morbius wrote:
> on 07:54 Wed 30 Mar, Gregory Seidman (email@example.com) wrote:
> > On Tue, Mar 29, 2011 at 03:42:53PM -0700, Dr. Ed Morbius wrote:
> > > on 08:55 Tue 29 Mar, Gregory Seidman (firstname.lastname@example.org) wrote:
> > > > I'm looking for something that I can run as a nightly cron job to
> > > > email me what's on my calendar for the next day. My calendar is
> > > > stored remotely and is available via CalDAV and WebDAV. Before I
> > > > write something myself, does anyone know of an existing tool to do
> > > > that? Remember, I'm looking for something I can run on my server,
> > > > not a web service somewhere.
> > >
> > > While not directly answering your question, there's the calendar(1)
> > > utility, part of the bsdutils package.
> > That would be perfect if it could work from a set of .ics files. I
> > wonder if there is something similar that does.
> Yeah, no such beast AFAIK, though other tools (KDE's "Kalendar / Kontact
> PIM) do work with .ics files AFAIU.
Actually, I discovered I had written most of what I needed almost three
years back: http://rubyforge.org/projects/calterm/ (specifically
> > > Otherwise: you should be able to mount the remote calendar via FUISE,
> > > grab it via cadaver, or other similar means.
> > Ah, good call on mounting it, I hadn't thought of that. I now have it
> > mounted via davfs2. That solves half the problem.
> What's the other half?
The other half is extracting the events I care about. In this case, there
was a little more to it because I'm mounting CalDAV rather than simple
WebDAV (from Apple's MobileMe), and each calendar is broken up into a whole
bunch of .ics files (the number and path of which can vary). Gathering all
the paths for all the .ics files then reading them all in and parsing them
isn't particularly fast, but since I'm planning on running it as a cron job
in the wee hours on my own machine I'm not too worried about it.
> Dr. Ed Morbius, Chief Scientist / |