NAME
CalDAV::Simple - a simple interface to calendar services via a subset of CalDAV
SYNOPSIS
use CalDAV::Simple;
my $cal = CalDAV::Simple->new(
username => $username,
password => $password,
calendar => $url,
);
my @tasks = $cal->tasks;
foreach my $task (@tasks) {
printf "task '%s' is due '%s'\n", $task->summary, $task->due;
}
DESCRIPTION
This is a ALPHA quality module for talking to a CalDAV server. Currently it just provides an interface for getting tasks and deleting individual tasks.
This distribution is currently a lash-up: I hacked together something to solve a problem. It does things the quick dirty way, and the interface is likely to change from release to release. So far I've only tested it against fruux.com's CalDAV server: I've no idea if it will work with other servers yet. Please let me know either way.
METHODS
new
This expects three attributes: username, password, and calendar. The latter is the URL for your calendar.
tasks
Returns a list of all tasks in the calendar. Each entry in the list is an instance of CalDAV::Simple::Task. Look at the document for that module to see what attributes are provided.
delete_task
Takes a task (instance of CalDAV::Simple::Task) and deletes it from the calendar.
LIMITATIONS
This is very much alpha quality and has only been tested against one CalDAV server. The XML returned by the server is currently handled with regular expressions, and I haven't read any specs to find out what range of results I can expect.
In short: your mileage may vary :-)
SEE ALSO
CalDAV::Simple::Task - instances of this are returned by the tasks()
method, and expected as the argument to the delete_task()
method.
Building a CalDAV client - documentation about CalDAV, which I've been using as a guide when hacking this up.
Wikipedia page - about CalDAV.
REPOSITORY
https://github.com/neilbowers/CalDAV-Simple
AUTHOR
Neil Bowers <neilb@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2015 by Neil Bowers <neilb@cpan.org>.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.