Calendar Integration Discussion

A community and collaboration tool needs calendar features. Time may be relative, but it is also relevant. A collaboration tool without a calendar is only half a solution.

From a functionality perspective, a community needs to be able to schedule items on a shared calendar. These items would most commonly be meetings. Meetings would need to "exist" before they occurred as a mechanism to inform the community that a meeting was coming and as a place to publish an agenda; and after they occurred, as a place to publish meeting minutes and other meeting products. A lot of the content that would be relevant to a meeting would also be community content that should be inserted into a Confluence space under topic-organized structures, so, it would need to be possible to link between the topic organization and the temporal organization paradigms.

Calendar entries should be able to be "blocking"; i.e., an item scheduled for a specific date and time blocks any other item from being scheduled at that date and time; or, they can be "non-blocking", in which case multiple items can overlap on a specific date and time. Calendar entries should be schedulable at one date and time or, they could be recurring items, in which case their would exist content items for each scheduled occurence linked to one "parent" item which would have all the attributes common to all the occurences.

Some related links:

Labels

calendars calendars Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.
  1. Sep 24, 2005

    Guy Fraser says:

    Larry, It seems we are on the same wavelength. I really like the idea of "blocki...

    Larry,

    It seems we are on the same wavelength. I really like the idea of "blocking" and "non-blocking" temporal items. Having recently been involved in several discussions with David Peterson and various members of Atlassian and the developer community, I'm now convinced that labels are not the best way to implement such features. Perhaps some form of "page category" or "page type" attribute could be provided to fulfil our desires - this would leave lables to their designated role (categorisation of content, regardless of the type of content) while the page category/type would be used to link in the temporal elements?

  2. Nov 20, 2005

    Benjamin Doherty says:

    It would be helpful to implement these iCalendarrelated standards: RFC2445

    It would be helpful to implement these iCalendar-related standards: RFC2445 and RFC2446.

    I want to do two things with calendars in Confluence:

    1. I'd like to display any iCalendar ICS file for me. It could retrieve the calendar.ics file by URL or from an attachment on the wiki.
    2. I'd also like to be able to publish the contents of a calendar as an ICS file so that it can be read on desktop and mobile devices.

    The iCalendar RFCs describe ways of managing the differences between calendars that are "free/busy" calendars (which I believe you mean by blocking events) and others that can have overlapping events. The Guide to Internet Calendaring looks very useful.

    There's also a third party java package called ical4j that can do much of the heavy lifting with respect to the standards. It's still alpha quality, but there appears to be a well-thought-out release plan and recent and consistent commits to the CVS. (I'm in no way affiliated with that project.)

    1. Nov 20, 2005

      Guy Fraser says:

      Does the CONFEXT:Cal Macro not allow this?

      Does the [CONFEXT:Cal Macro] not allow this?

      1. Nov 20, 2005

        Benjamin Doherty says:

        It wasn't clear to me that Cal Macro supported icalendar .ics files. Your commen...

        It wasn't clear to me that Cal Macro supported icalendar .ics files. Your comment though is now compelled me to download the plug in and investigate it. I did overlook the dependency on ical4j, so maybe it's just not explicit.

        Thanks!

        1. Nov 20, 2005

          Jens Schumacher says:

          The Cal macro is, like it's dependency ical4j, still in an alpha stage. It curre...

          The Cal macro is, like it's dependency ical4j, still in an alpha stage. It currently does not support reading or writing external ICal files. However, the macro saves it's data in ICal format and therefore it will be easy to integrate reading and writing to external resources later in the development process.

          Cheers,
          Jens

  3. Jun 21, 2006

    James Mortimer says:

    I see calendar usage a little differently, perhaps, so I've added some thoughts ...

    I see calendar usage a little differently, perhaps, so I've added some thoughts here for you all to consider when developing calendar functionality.

    Other than meetings described above, another use for calendars would be to provide support for 'history' type uses of confluence as a collaborative documentation system (e.g. a family tree/history or a regional or institutional history). For example, in one of my projects I'm constantly defining pages in a 'date' space for every year / month / day combo that exists for up to a year in the future and sometimes 100 or more years in the past. I link any dates in the text from any other space using [May 1, 2006], which is combersome to use but required to ensure confluence indexes the link. Using {incoming-links} on any date page, I can ask 'what happened on a given date' or more specifically, 'what pages refer to this date'. I manually create 'month' and 'year' views that summarize what pages exist and what data exists in certain {metadata} tags on those pages. I haven't yet figured out how, but I would also like to create a 'timeline' graphical view that shows 'excerpts' or certain {metadata} tags for a set of pages on a linear or at least sequential evenly spaced timeline.

    Ideally, every space should have a few features to support 'date' pages in every space. This is different than the calendar plugin that I tried, as the calendar items don't exist as pages (e.g. [May 1, 2005]) but only in the database. Some features:

    if 'dates' are enabled by the space admin,

    by default there exists a 'virtual page' for every possible date in history or future, which becomes a page as soon as it is referenced in another page. by default this page at least contains an {incoming links}, aswell as links to the next day / previous day / and month or year that the date is contained in

    by default, there exists an 'annual date' page for every date in a leap year

    likewise, 'virtual' pages for every month / year and every year, and every 'annual month'

    macros to get things like 'day of week' and 'day of year' for a given page named "May 1, 2005" or a target page

    macros to generate a 'month view' that quickly summarizes all the existing an potential pages for a given month/year, or a given annual month

    macros to generate a 'year' view that quickly summarize same as above. Right now, to resolve and render 365 statically declared links to 'date' pages can take about 4-5 seconds on my server because it has to check for the existance of each page.

    macros to generate a 'week' view, as above

    macros to export the current 'date' 'month' or 'year' pages in iCalendar format. Also for 'annual event' pages, for recurring annual events.

    On a given 'date' page, macros for next_day, previous_day, next_month, etc.

    Other than these and other macros I haven't though up yet, a 'date' page would function much like a regular confluence wiki page in many respects.

    1. Jun 21, 2006

      Larry Talley says:

      I haven't really thought it all through yet but it sure seems like you have some...

      I haven't really thought it all through yet but it sure seems like you have something here.  It seems like a nice meld of wiki functionality and calendar functionality.  I bet I could come up with some interesting use cases....