如何使用php创建icalendar文件

Scheduling and Calendars
Scheduling and Calendars
This listing mostly covers scheduling programs for the
server end.
I deliberately eschew the revolting
neologism "calendaring", that is often used for this application
category.)
Standards Overview:
2008 update:
Short version of the following exposition is that
the world is converging onto CalDAV, having already converged onto
There is not yet a fully agreed-upon standard for either scheduling-data
transport or scheduling-data storage. One candidate for a dedicated
scheduling transport has been IETF's CAP protocol, but that spec
unfortunately has been stuck in draft since 1998, and is likely a lost
cause. Existing specs are:
RFC 2445 iCAL: Definition of a calendar. Defines what calendar
may exist. (iCAL files often have filename extension ".ics".)
Beware of namespace collision with
Sanjay Ghemawat's unrelated "ical" calendar app at
for *ix, and its (incompatible) data format.
RFC 2446 iTIP: Protocol for accessing a calendar. Defines events
procedures (rules) for marshalling objects in and out
of a recipient's directory.
RFC 2447 iMIP: Using e-mail to access a calendar
RFC xxxx CAP: Using sockets to access a calendar. Calendar
Protocol. Includes the BEEP (Block Extensible Exchange
Protocol) language/library/programming method.
RFC 3080 BEEP: Defines BEEP core.
RFC 3081 BEEP: Defines BEEP over TCP.
Note that the calendar "store" is not defined, and might be LDAP, an
RDBMS, a flat ASCII file, or whatever. Ideally, any such daemon should
be reached via BEEP transport/authentication protocols, but nobody has
yet created a reference daemon, and other parts of the problem have been
partially stalled since then. The RFC 2445 iCAL (aka iCal, aka
iCalendar) data format is already a big success following Apple's
adoption of that file format for the OS X user app "iCal", using
WebDAV however, for lack of BEEP/CAP or
something like it, the data have historically tended to
exist as isolated islands.
Mitch Kapor's Open Source Application Foundation plans to eventually
construct a CAP-compliant server to match its PIM, Chandler.
2008 addendum:
That codebase is now available as Chandler Server
aka Cosmo, which please see.
An XML-based "xCal" format has been proposed to replace
BEEP never became popular one is that
it's easier to send iCAL data over HTTP, sometimes using WebDAV (Apple
iCal, Mozilla Calendar/Sunbird) or HTTP PUT. Another reason is BEEP/CAP's
complexity.
By 2002, the effort was moribund, and the IETF Calendaring
and Scheduling (CalSch) group was disbanded in Sept. 2004.
CalDAV (RFC 4791)is a 2003 implementation of iCAL event transactions
(including free/busy time reports and handling of recurring events)
over HTTP, mediated by WebDAV access control -- extending WebDAV to provide
calendar search / locating, free/busy availability search, workflow
scheduling, etc.
It appears to
be the winner standard, in place of CAP, BEEP, etc.
The "Group Calendar Project",
is a primary
informational clearinghouse for information on this topic.
The "IETF-Calendar" mailing list and related Web documents are
also useful:
Proposed "Group Calendaring Transport Protocol" (GCTP) would
coordinate
multiple iCAL calendars in real time, accessing them via iTIP,
to be implemented in a reference implementation
("OpenFlock").
Pre-alpha OpenFlock code is alleged to be retrievable via CVS or
but login for both is broken. Project has been seemingly defunct
early 2002.
CGTP would have addressed holes in the protocol family such as protocols
to secure/reject or reschedule appointments, or negotiate an open time
slot meeting specified criteria, and supports activity registered by
"proxy" parties on behalf of a schedule event's principal party, e.g.,
by an executive officer's administrative assistant. Events could be
triggered according to ACLs (e.g., by one's supervisor). Any user who
receives "queued" new events would be notified, with an
opportunity to
accept or reject them.
DAVCal would extend WebDAV with calendar-oriented functions,
unclear whether it's usable -- or even yet coded (grad. school
2008 follow-up:
The ideas in DAVCal were implemented
in the 2003 commodity standard for scheduling event transactions, CalDAV.
Server entries detailed below:
Kronolith (note leading implementation of shared calendar
does iTIP, does iCAL over HTTP.
OpenSched (scheduling specifically for projects)
PHP iCalendar: PHP-based iCAL v.2.0 file parser / displayer.
sends/retrieves the files via WebDAV: PHP iCalendar itself is
view-only.
phpGroupWare (formerly "webdistro"): does iCAL, apparently over
PHProjekt (scheduling specifically for projects)
Kolab Server
Sun Java System Calendar Server (non-L proprietary)
Samsung Contact (proprietary)
CyberScheduler
Java iCal Group Scheduler
Favorin Time (proprietary)
Internal Affairs
Nemein.Net
NullLogic Groupware
ScheduleWorld (server piece)
SKYRiX Web Groupware with ZideStore (proprietary)
VisualCalendar (proprietary)
Web Organizer
Cybozu Share360 (proprietary),
WorkSpot Groupware -- rumoured, only:
MRBS (Meeting Room Booking System)
Prospector
WebCalendar
myPHPCalendar
mod_perl Calendar System
ICAP (libmcal project)
Momentum Project
OpenGroupware.org
eGroupWare
UW Calendar
Hula Server
Chandler Server (Cosmo)
Darwin Calendar Server
KOrganizer: iTIP, iCAL and vCalendar support (import or merge, export).
Also professes to do bidirectional data-synchronisation with PalmOS
Datebook, a strong advantage for PalmOS users.
Konsolekalendar:
Command-line calendar editor and
importer/exporter for KDE (e.g.,
KOrganizer) scheduling data.
Designed to be scripting-friendly.
Ximian Evolution: iCAL-based.
There's a strong possibility that
PalmOS users may be able to use
with Evolution to
bidirectionaly data-synchronise their Evolution calendars with PalmOS
2008 update:
Can support CalDAV using the evolution-caldav
Mozilla Calendar: iCAL support over WebDAV
WebDAV to store public calendar information, and it uses .ics
it plays nice with iCal.
(Either Mozilla Calendar or KOrganizer makes
a very serviceable Linux editor for iCAL files.)
The Mozilla Calendar code (a XUL script run by the Mozilla Portable
Runtime, a XUL interpreter) can alternatively be installed into the
Mozilla Thunderbird MUA or Mozilla Firefox browser (because those
likewise are based on the Mozilla runtime), or standalone as "Mozilla
Sunbird (which is basically just a bundle of XUL code plus runtime).
As of 2004-12, the Mozilla Project has launched a development effort
to tightly integrate this scheduling code plus task-management, etc.
into a future Thunderbird release, turning it into a full PIM instead
of just an MUA.
2008 update:
Mozilla Calendar / Sunbird is now also a CalDAV client.
GNOME Personal Information Manager: Has iCAL support. Many old
speak only of local vCalendar support. Syncs to PalmOS Datebook
GNOME Pilot.
Unmaintained since late 2002.
Incorporates iCAL-based GNOME Calendar (gnomecal) and the older
vCard-based GNOME Address Book.
Ical: Formerly at
, and before that at
. tcl-based.
O unmaintained since 1997. By Sanjay Ghemawat. Doesn't
use iCAL data format. Source at
. Used by Ximian Evolution to manage its calendar section?
Star Office Schedule: was dropped from Star Office after v.
Tagesplaner aka plan aka netplan:
Fairly dismal Motif/Lesstif-based client/server scheduler. No iCAL
Handles appointments and also event alarms (the latter only
if running a separate daemon).
Glow (Java):
Project to develop
an iCAL client piece for OpenOffice.org. Actually aspires to be a
broader "groupware" client for e-mail, netnews, IM, Web whiteboard,
other functions.
ScheduleWorld (client piece)
gDeskCal (Python/pygtk/GTK2):
Standalone graphical desk
appointment calendar.
Can view but not edit Evolution calendars.
Perfunctory graphical calendar using Athena widget set.
Chandler (Python/wxPython):
PIM from Mitch Kapor's Open Source
Application Foundation, currently in alpha-testing state.
Calendar module
will deal in iCAL data, support iTIP/iMIP, and be designed to work with
an open-source CAP-protocol scheduling server, yet to be written.
cross-platform for X11, Win32, and MacOS users.
Calcurse (ncurses personal organiser):
Calcurse is a text-based personal organizer which helps keeping track
of events and everyday tasks. It contains a calendar, a 'todo' list, and
puts your appointments in order. The user interface is configurable, and
one can choose between different color schemes and layouts. All of the
commands are documented within an online help system.
Doesn't use iCAL
data format.
Reefknot project, iCAL tools for Perl:
libical, a C implementation (iCAL core, iTIP, iMIP, iRIP, CAP), and
incorporating the former Net::ICal project:
Jetspeed's iCalendar module, a Java implementation:
mcal, defunct?
These are useful for those building both server and client
JetSync, a PalmPilot sync application for Linux:
Mentioned here in order to
clarify that its support of "iCal" doesn't refer to the IETF RFC 2445 iCAL
format but rather
Sanjay Ghemawat's ical app at
Syncal, an application for syncing ical calendars and PalmPilot
datebooks: .
Mentioned here in order to
clarify that its support of "iCal" doesn't refer to the IETF RFC 2445 iCAL
format but rather
Sanjay Ghemawat's ical app at
Pilot-Link, suite of utilities to sync PalmPilot data to *ix,
Mentioned here in order to clarify that its "read-ical" utility
exports PalmOS Datebook data NOT into IETF RFC 2445 iCAL
format but rather
Sanjay Ghemawat's ical app at
Its "ietf2datebook" utility seems to import some long-ago IETF
calendar data, but I'm not certain about that.
ical2ics.pl, a Perl script to convert data already read by the Pilot-Link
suite's "read-ical" utility from a PalmOS machine's Datebook database
and written to Sanjan Ghemawat's non-RFC 2445 "ical" format, over to
genuine RFC 2445 "iCAL" (aka .ics) format:
Author Florian Schaefer
&florian@netego.de& says the script doesn't yet convert all
repeated events correctly.
Note that there is no provision for
converting data to PalmOS Datebook format, only from.
Other Linux Scheduling-Software Surveys:
Server Project Details:
by Guilhem BONNEFILLE - Tuesday, July 24th
OpenSched is used to automatically schedule resources for a
project. For
instance, if 5 programmers cooperate on a software development
and 100 tasks must be done, opensched can capture information
can do what, what tasks depend on which, etc.
Idan Shoham &sched at m dash tech.ab.ca&
PHP iCalendar
Web site has this description:
PHP iCalendar is a php-based iCAL file parser. It's based on v2.0 of the
IETF spec. It displays iCAL files in a nice logical, clean manner with
day, week, month, and year navigation, printer view, RSS-enabled, and
searchable. It supports 12 languages, is fully theme-able, and has
complete timezone support.
/Articles/Jaguar/sharedical.html
"Editable shared iCAL server.... you can get a shared calendar that
iCal can subscribe to and all users can add items to from a Web
interface. This is not a full calendaring solution yet, since you won't
be able to make changes from iCal itself & just view the calendar & but it's
still pretty useful to have in your bag of tricks.
The actual calendar is kept in a MySQL database that dynamically creates
the iCAL data files when queried by clients. This is a pretty slick way
of retrofitting the flat data files into a database. However, anything
involving a database gets a bit more complicated.
Requires installing PHP iCalendar first, and then phpMyCal as a
modification to that.
Packaged for Mac OS X (StuffIt), and instructions
are fairly Mac-centric.
phpGroupWare (formerly webdistro)
Provides a Web-based calendar, todo-list, addressbook, email,
headlines, and a file manager. The calendar supports repeating
The e-mail system supports inline graphics and file
attachments.
The system as a whole supports user preferences, themes,
permissions, multi-language support, an advanced API, and user
(It's a pluggable framework built around a central "phpgwapi"
component.)
Forked version of WebCalendar.
PHProjekt is a modular application for the coordination of
activities and to share informations and document via intranet
Components of PHProjekt: Group calendar, project management,
system, file management, contact manager, mail client and 9
the active software
activist news, events and projects on the web
The active software creates a set of web pages which allow web
to contribute to a shared calendar, groups listing, and
multimedia news
with discussion. It's designed to be easy to use, and easy to
Active is behind most of the indymedia.org network and all
active.org.au. Active has helped identify the concept of open
publishing.
It is free software, and copyleft. It can be run on an
entirely free
software server using PHP, perl and PostgreSQL.
Sun Java System Calendar Server
is a proprietary Java daemon now (2004-03) available only on HP/UX,
Solaris/SPARC, and MS-Windows 2000, but will soon be available for
iCAL (RFC 2445), iTIP (RFC 2446), and iMIP (RFC
2447), multiple calendars per user, optional XML-formatted data
import/export, SMS and IM notification, LDAP integration, custom
user interface modification using XSL/XML, Web access.
Optional MAPI plug-in for MS-Outlook provides access to e-mail,
calendar, address book, tasks, contacts, free/busy info, calendar
sharing and delegation, off-line access, and public/shared folders for
e-mail and calendar data.
Similar access for Ximian Evolution via
Java System Connector for Evolution plug-in.
Product was formerly called Sun ONE (Open Network Environment)
Calendar Server, and before that iPlanet Calendar Server, and before
that Netscape Calendar Server.
(AOL/Netscape formed an "iPlanet"
division in May 1999 to further a "Sun-Netscape Alliance" and further
develop products including Calendar Server.
In March 2002, the
alliance terminated with Sun's acquisition of Netscape's iPlanet
division.)
Kolab Server
Erfrakon, Intevation and Klar鋖vdalens
Datakonsut AB have won a bid to
write a Free software groupware server and client for the
"Bundesamt f黵 Sicherheit in der
Informationstechnik" (Federal Agency
for IT Security, BSI). It aims to work in a heterogenous
environment and
provide email, contacts, appointments and tasks lists.
Kroupware is the current project title for the project named
After finishing the Kroupware project, it will be further
integrated in
the K Desktop Environment and in the KDE-PIM family.
(There's a client piece called Kontact, which is KMail,
KOrganizer,
KAddressBook, and KNotes in a unifying shell.)
Kronolith:
Kronolith is the Horde calendar application. It provides a stable
featureful individual calendar system for every Horde user,
collaboration/scheduling features are starting to take shape. It
extensive use of the Horde Framework to provide integration with
applications.
Right now, Kronolith implements a solid, stand-alone calendar
allowing repeating events, all-day events, custom fields,
keywords, and
managing multiple users through Horde Authentication. The
calendar API
that Kronolith uses is abstracted such that it could work with
backend, but right now we provide SQL (abstracted to support
databases, including MySQL, PostgreSQL, Oracle, and MSSQL via
and MCAL backend libraries.
The latest (not yet released) version, available from CVS
shared calendars, allowing others various levels of access to
calendar, better iCAL support, and generation of
free/busy information.
Samsung Contact:
is a fairly expensive enterprise "groupware"
scheduling server application for Linux equivalent in feature set
Exchange Server.)
"Samsung Contact provides the best email server for all of
great messaging and collaboration functions. This includes
calendaring,
scheduling, resources, public folders, delegation, and offline
CyberScheduler by envi.con KG
CyberScheduler is the ideal groupware solution for workgroups
be deploying a calendaring solution. End users access their
through any familiar desktop browser. CyberScheduler runs on
server and operates in mixed application or mixed framework
environments. CyberScheduler supports server platforms like
Windows NT,
LINUX and COBALT.
The Web based application does not require a proprietary
infrastructure and is easy to use with its browser interface.
Java iCal Group Scheduler:
enables several users to get
together for a
meeting, by using JICAL to translate their iCAL files into
available free/busy time and post it automatically to your Web
This project enables Ximian Evolution desktop users to book
with each other (and Outlook users) via a Web server storing
'Free/Busy' information as specified in RFC 2445.
The "CS" calendar project from the people who maintain the
libical project (iCAL core, iTIP, iMIP, iRIP, CAP) is "currently
limbo" but may be restarted.
Favorin Time:
client / server group calendar for Linux and
other UNIXes
with KDE desktop. Free open source calendar client is available
stand-alone or networked use. Commercial server provides
management and scheduling for teams and organisations.
Stable 1.0 version of client and a 45-trial version of the
available for download.
[Proprietary protocols and implementation, only.]
Internal Affairs:
optimizes the internal communication within
enterprise within minutes. Our groupware system resembles ease of
while maintaining maximum flexibility. High security measures and
ability to use the system from anywhere in the world folds in
with the provided features. Internal Affairs is completely
browser based
and may as such be used across all platforms with a
web-browser
available (Windows, Apple Macintosh, UNIX, Linux).
The Internal Affairs modules:
Group calendaring
Taskmanagement
Out-of-office auto-replies to personal email
Status list across employees
[No support for iCAL, etc.]
MimerDesk:
is a web-based groupware environment designed for a
variety of uses such as personal management,
computer-supported
collaborative learning, carrying out projects, and setting up
communities. Its main strengths include a very customizable group
which allows many groups to work simultaneously on a shared
with tools like Calendar, Tasks, Forums, Links, Chat, Reviews,
Files, Instant Messages, Profiles, and many more.
[No support for iCAL, etc.]
Minkowsky:
is tool to manage appointments, tasks and addresses
groups like companies.
Minkowsky is a client server application. The data are managed on
server. The client display them to the users
Minkowsky is mostly platform independent programmed. Hence it
possible to run it on many different platforms. The server should
all UNIX platforms with little modifications (this includes MacOS
The client should run on all Unix/X11 Platforms. A port to MacOS
Minkowsky is a Tcl/Tk (+Tix) Application with a C/C++
fundament.
[No support for iCAL, etc.]
Nemein.Net:
is a Web-based Professional Services Automation
including project management, time tracking, document management,
force automation, direct marketing, help desk, and a group
calendar. It
runs on the Midgard application server.
[No support for iCAL, etc.]
NullLogic Groupware:
is a multi-user web-based groupware
designed for contact management and event scheduling, which
additional features such as private messaging, public discussion
shared hyperlinks, file bases, a web e-mail client, and a simple
processing system.
The main goal of NullLogic Groupware is to make your data
accessible to you from anywhere at any time without the need for
software to be installed on the client computer.
[No support for iCAL, etc.]
is a PHP/XML application framework for building
groupware Web
portals. It is like Lego bricks for the Web. Each brick (called a
is a software component that may be composed with others to build
Internet application. It has a core allowing users to build pages
templates blocks, with full multilingual support and themes. It
a users/groups/operation module and a calendar supporting
availabilities, calls, meetings, and accountancy entries.
[No support for iCAL, etc.]
ScheduleWorld (proprietary):
is calendar that is based on open standards and
compatible with Microsoft Outlook and Lotus Notes. It provides a
and a server, and supports encrypted calendar components. By
default the
NHL and NBA schedules are included, along with date and time
support for
over 50 languages. It features HTML customization and
simultaneous color-coded calendar views, and works on any system
No vendor lock-in: Your data is stored in RFC 2445 (iCAL)
format and can be exported at any time.
RFC 2446 iTIP calendar-data access
protocol is supported.
RFC 2447 iMIP calendar-data access over e-mail
protocol is supported.
SOAP interface to all data is complete and
functional (used by ScheduleWorld client) but not yet (2/2004) fully
documented.
ScheduleWorld translates XMLTV data into iCAL to
provide TV-listings schedules.
Interoperability: based on the same IETF iCAL
standard used
by Microsoft Outlook, Lotus Notes, Apple's iCal product,
Calendar, Evolution, KDE KOrganizer, and others.
ScheduleWorld also
includes its own server service and e-mail bridge to talk to
MS-Outlook and Lotus Notes applications.
Encrypted s client-server architecture.
stored in RFC 2445 iCAL format. Proprietary, ASP-based.
SKYRiX Web Groupware:
is a set of Web-based applications for
appointment, project, and content management. It is comparable
Exchange and SharePoint portal servers. SKYRiX servers run on
almost any
Linux system, can synchronize with Palm PDAs and are
scriptable using XML-RPC.
[No support for iCAL, etc., though it does sync with PalmOS
iCAL support is in separate product ZideStore.]
SKYRiX ZideStore:
server is the "native client integration
for the SKYRiX groupware. Using ZideStore you can access the
contact, appointment and task database using Outlook, Evolution
almost any iCAL-compatible client (for example Apple iCal
Mozilla Calendar).
TUTOS (The Ultimate Team Organization Software):
is a groupware
ERP/CRM suite that helps small to medium teams manage various
one place. Its features include personal and group calendars, an
book, product and project management, bug tracking,
installation
management, a task list, notes, files, mailboxes, and useful
between all of the above.
[No support for iCAL, etc.]
VisualCalendar:
is a fully-featured Web-based calendar
application that
integrates event scheduling, tasks, journals/diary, bookmarks and
support in one unified platform. [blah, blah.]
[No support for iCAL, etc.]
Web Organizer:
is a Web groupware suite. It features a
configurable
desktop page, a calendar, a personal and shared address book.
functions are organized in modules. [...]
Technologies: Main technologies, protocols and formats used in
project: PHP, XML-RPC, LDAP, HTTP, CSS2, HTML4, Javascript,
WebCalendar:
is a PHP application used to maintain a calendar
for one or
more persons. WebCalendar requires a database: MySQL, Oracle,
PostgreSQL
E-mail notifications/reminders, Export to PalmOS via
pilot-link.
is a Web agenda/calendar for Intranets (even if it can
from anywhere). It can send reminders by email. You can
multi-user events. It is fast and light on resources (the
size/speed can be tweaked by tweaking mod_perl and Apache).
MRBS (Meeting Room Booking System):
is a free, GPL Web
application using
PHP and MySQL/pgsql for booking meeting rooms. It's similar in
to Netscape Calendar Server, but much cheaper.
Forked versions of WebCalendar.
Prospector:
is a online calendaring program that is similar to
found at Netscape and Yahoo. It has been written to run under
and use an SQL database using DBD/DBI. It is currently being
with postgreSQL. It only runs on Linux currently, although it
should run
on any UNIX.
MyPHPCalendar:
(Yet another PHP-based calendar.)
mod_perl Calendar System:</strong
The mod_perl Calendaring System (to be renamed "GTI Calendar")
undergoing a complete rewrite. For your convenience, we'll leave
last stable revision and documentation here. Please check back
the release of the new site and package.
MeetingMaker (proprietary):
Ruffdogs has been working on a Groupware/CRM project for some
based on phprojekt. We are getting close to the point of
uploading to
sourceforge and looking for developers.
Languages used are PHP, Perl, Java, HTML, CSS.
ICAP server:
It has most of the functionality of Netscape Calendar
Server -- it
just needs the SASL wrapper written for it, and it provides a
Momentum Project:
for an open-source iCAL, vCal, and vcard scheduling
server, which will use libical. Will store iCAL, iMIP and iTIP data
and 2447) in a SQL RDBMS. Access protocols will
include XML-RPC, SOAP and WebDAV.
(Unfortunately, as of 2003-10, this mailing list appears to have had
only twelve substantive posts in 2002-01 and 2002-03, and then nothing
but spam thereafter.)
OpenGroupware.org
is an extensible, open-source server suite that initially will manage
scheduling information only, but aims to also manage other
organisational work documents (spreadsheets, word processor documents,
presentation files, etc.) as it's developed. It will not aim to handle
e-mail, instant messaging, or directory services.
Client access is from either iCAL apps (Mozilla Calendar,
Glow, KOrganizer, MacOS X's iCal.app) or from MS-Outlook with the
proprietary ZideLook MAPI storage provider plug-in (maps MAPI calls
to WebDAV for real-time access), or from Ximian Evolution with the
proprietary (update:
open source as of ) Ximian Connector v. 1.2 plug-in (maps MAPI calls to
WebDAV), or from any HTML 4.0-compliant Web browser, or via XML-RPC,
or via PalmOS HotSync.
It's doubtful that the suite supports Outlook/Exchange style
shared calendar & contact information, given dependence on
The OpenGroupware.org server software consists of parts of older,
proprietary Skyrix Groupware Server, formerly Skyrix 3, formerly
LSOffice (from Skyrix Software, formerly MDlink GmbH).
eGroupWare
is a Web-based groupware suite. It is a fork of the
phpGroupWare project. It contains many modules, including Calendar
(personal calendar and group scheduling, notifications and alarms),
e-mail (IMAP and POP3), FeLaMiMail (IMAP only), InfoLog -- to-dos,
notes, and telephone calls linked to contacts (CRM), Contacts (an
address book to store and share contact information), and SiteMgr or JiNN
(content management/wiki).
is an open source project that combines groupware, CRM and ERP into
one system. The server component acts as the master data source,
is written in PHP, and uses a SQL database as the central data storage.
The client component, acting as the GUI, is written in Javascript and
runs in the user's Web browser.
Tine 2.0 wraps a set of APIs around
the software libraries ExtJS and Zend Framework, to model an open
architecture Rapid Application Development.
Date: Sun, 09 Aug :35 +0100
From: Andrew Clarke ()
To: ilug@linux.ie
Subject: [ILUG] Re: webmail clients
I completely agree with you on webmail clients. The selection is a
little light. RoundCube really could fill this gap, but insists on being
ONLY a light webmail client. There is a spin-off, I think it's called
MyRoundCube which adds a plugin functionality for calendars etc, but it
seems to be a project only driven by a few users which would be worrying
in terms of longevity / support.
Have you looked at Tine 2.0? This is an ancestor of eGroupware and
aimed at the groupware sector. It's fairly new but based on a solid
codebase, and looks very good. If sharing information between users is
not one of your concerns, it may be a little over the top, but the
e-mail, calendar and tasks functionality is excellent, and it has a very
online-desktop feel. Applications can be enabled individually to lighten
the interface a little. Also, under the hood, the code is structured
extremely well and very modular. As a result, it's unlikely to suffer
from modificationitis, where one plugin or mod breaks another.
Development is very active, and user interface given just as much
attention as functionality. All in all, one to watch, and, for me,
definitely the forerunner in this space, at the moment.
Also, licensing is handled under AGPL. From www.tine20.org: Fully
Featured Versions. Tine 2.0 is Tine 2.0 is Tine 2.0! There are vendors
who distribute pared-down versions of their closed source software as
bait fishes. In contrast to those offers, Tine 2.0 is not meant to
sniggle customers for a fully featured version. Tine 2.0 itself is the
main product.
Not sure what sniggle means, but AGPL licensing is excellent. In
comparison to something like Zimbra, this is properly open source
Andrew Clarke
is a project whose aim is to create an Open Source Calendar Server,
based on iCAL, CAP, iMIP, and corresponding RFCs. This project is in a
very early stage.
UW Calendar
is building an open-source calendaring system for higher education.
UW Calendar will support personal, public and group events, use existing
open standards, and support web-based and other forms of access,
including uPortal integration.
UW Calendar (from University of Washington) has the following features:
A database for storing general events, with a schema derived
from the iCalendar standard (iCAL). For a detailed description of this
standard, see RFC 2445.
Code to convert UW Calendar events to iCAL (and vice versa).
A Web-based personal calendaring application.
A public events entry system.
A public events display system.
A service to generate a peephole view of a person's calendar,
suitable for display in MyUW, the University of Washington's portal.
(Note that MyUW is not based on uPortal).
UW Calendar is written in Java. The current code download contains
items 1-5.
Bedework is a separate fork of the UW Calendar Java project, rearchitected
and reimplemented to support many new features.
Uses Hibernate to work
with a variety of database back-ends.
Implements CalDAV plus Web
access to calendar data.
Requires a Java 1.5 JVM.
3-clause BSD
Hula Server
http://www.hula-project.org/index.php/Hula_Server
Hula is a calendar and mail server. We are focused on building a
calendar and mail server that people love to use, instead of broadly
trying to build a "groupware server" that managers want to deploy.
Hula is available under the LGPL and MPL.
System Overview
Hula is a standards-based messaging system that provides e-mail,
calendaring, and schedule sharing across the Internet. Users can connect
to the Hula messaging system over the Internet to access their e-mail
messages, view their calendar, schedule appointments, and to send
messages, tasks, or notes. To connect to the messaging system, users
must have an Internet e-mail client. Hula provides three client
interfaces -- Aurora, WebAccess, and Webmail -- that can be accessed
through any Internet-standard browser. However, because Hula supports
Internet-standard messaging and security protocols, users can also
continue to use their current POP3 or IMAP4 e-mail client. In addition
to the client-side services, Hula provides a flexible, easy-to-use
administrative interface -- WebAdmin -- that can be accessed through any
Internet-standard browser.
The Hula messaging system has a
that is, messaging
functions are strategically divided among several different components.
This allows Hula to be very flexible and highly scalable. For example,
you only need to install the components required for your system.
Additionally, you can locate all of your messaging system components on
a single server or distribute them across multiple servers based on
usage, message traffic, fault tolerance requirements, and system
resources. The base component in the Hula messaging system is the
messaging server. A messaging server is any server on the network that
hosts one or more Hula agents. Hula agents are a series of program files
that perform specific product functions. All messaging functions,
including support for the various e-mail clients, are divided between
the various Hula agents. For example:</p
To support POP3 or IMAP4 e-mail clients, you run the POP or IMAP
To send and receive messages over the Internet, you run the SMTP
To allow users to access WebAccess or Webmail, you run the Modular
Web Agent.
To enable WebAdmin, you run the WebAdmin Agent.
To allow users to configure and implement rules, you run the Rules
2008 update:
Hula is now also a CalDAV server.
Chandler Server (Cosmo):
Cosmo is a Java-based content/calendar sharing server with a
built-in rich Web application client. Cosmo is built on top of Tomcat,
Hibernate, the Spring Framework, Acegi Security for Spring, iCal4J,
Dojo, Abdera, Jackrabbit, Woodstox, and other best of breed
technologies. Cosmo is available under the terms of the Apache Software
License, Version 2.0.
Chandler Server is a software bundle from OSAF (Open Source
Application Foundation) of:
Tomcat v.5.5 HTTP Java servlet engine
Derby 1.0.2.1.6 Java embedded database
MySQL Connector/J v. 5.0.4 for access to MySQL databases
Cosmo Web application (Java: requires Java 1.5 JVM)
Supports CalDAV for multi-user schedule access and collaboration.
Primarily designed to be used with the Chandler PIM.
Darwin Calendar Server:
Implements CalDAV for multi-user schedule acce
provides a shared location on the network to store schedules, and allows
users to send each other and manage invitations.
Requires: Python 2.4,
Zope 3.10, Twisted, OpenSSL, pyOpenSSL, pyXML,
python-dateutil, xttr, pysqlite, vObject, PyKerberos, PyOpenDirectory.
http://rscds.sourceforge.net/
DAViCal (formerly Really Simple CalDAV Store) is a lightweight CalDAV
shared-schedule store, coded in PHP,
intended to be run inside Apache httpd and back-ended in PostgreSQL.
does not provide a Web-based view of calendars, though it does furnish
administrative Web pages.
Supports basic delegation of read/write
access among calendar users and multiple users or clients reading and
writing the same calendar entries over time.
Further Info:
Freshmeat category Topic :: Office/Business :: Scheduling :
Freshmeat category Topic :: Office/Business :: Groupware :
Christopher Browne's pages (mostly about project management, not
scheduling):
kellan's list:
Article on CalDAV:
/articles/52035
AJAX Web-based calendar software:
http://chandlerproject.org/Projects/AjaxWebCalendars
Scalix and Zimbra are said to now support CalDAV.

我要回帖

更多关于 icalendar 格式 的文章

 

随机推荐