Skip to content

Overview

Chapter 11-1
Overview

Introduction

The use of Calendar and Scheduling has grown considerably in the last decade. Enterprise and inter-enterprise business has become dependent on rapid scheduling of events and actions using this information technology.

You can schedule meetings, appointments, all day events, anniversaries, reminders, or event announcements on your Notes calendar. Some of the differences between these types of entries.

TypeDescription
Calendar entry types
MeetingSchedule a meeting with others and send email invitations they can respond to (for example, accept, decline, or propose changes).
Event AnnouncementSchedule a meeting with others and send broadcast email invitations they can add to their calendars without having to respond to you.
AppointmentSchedule time within a day in your calendar.
All Day EventSchedule an entire day or block of days (such as vacation time) in your calendar.
AnniversaryAdd annual events such as birthdays to your calendar. Anniversary entries repeat on the same date for 10 consecutive years beginning on the date you specify (unless you click Repeat in an anniversary entry and change its duration).
ReminderRemind yourself of something at a particular time.

Calendar and Scheduling API

The Notes/Domino 12.0 C API Toolkit offers advanced Calendar and Scheduling capabilities. These capabilities include the ability to create, read, update, and delete all kinds of calendar entries. They also allow explicit scheduling actions to be performed on both calendar entries on your calendar and on workflow notices associated with calendar entries, such as accept, counter-propose, cancel, etc. All of these capabilities automatically send out appropriate workflow notices to other users on a meeting.
The specific methods that are implemented are outlined in calapi.h. This document aims to provide a written description of the API capabilities.

When creating, updating, or reading calendar entries or notices, the data format accepted by the APIs is the industry standard iCalendar representation, as described in RFC 5545 (../images/Overview1.gif). There are existing open source applications that aid in the creation, modification, or interpretation of iCalendar data. To identify specific calendar entries, the iCalendar UID property is used by the API methods (see RFC 5545 section 3.8.4.7). Some API functionality also accepts NOTEID and/or UNID as an alternate identifier. To identify a particular instance of a recurring event, the iCalendar RECURRENCE-ID property is used by the API methods (see RFC 5545 section 3.8.4.4).

The APIs work within the context of a Notes database (*.nsf) file that is assumed to have basic calendar design elements required to perform the actions, namely views that are found in the existing mail template. There are additions to the 9.0.1 mail template which enhance the API functionality but the APIs also work against previous 8.5.x mail template versions.

The Calendar and Scheduling API consists of a subset of the functions in the HCL C API for Notes/Domino. This subset helps you create, read, update, and delete all kinds of calendar entries. Each of the Calendar and Scheduling API functions starts with the prefix "Cal" (for example, CalCreateEntry).

Capabilities of the Calendar and Scheduling API

The Calendar and Scheduling API provides a complete set of functions for manipulating Calendar and Scheduling messages and are particularly useful in the context of a HCL Domino Server add-in task. Calendar and Scheduling API enable:

  • Creating calendar entries
  • Reading calendar entries
  • Updating calendar entries
  • Deleting calendar entries
  • Performing scheduling actions on calendar entries
  • Reading calendar notices
  • Performing scheduling actions on calendar notices


Advantages of the Capabilities of the Calendar and Scheduling API

The Calendar and Scheduling API is optimized to manipulate Calendar and Scheduling messages.

Limitations of the Calendar and Scheduling API
  • API does not allow you to modify more than one occurrence at a time of an existing recurring entry
  • API does not aid in the creation, manipulation, or interpretation of iCalendar data
  • API does not implement tasks/todos
  • API does not read or modify data from a non-mailfile (such as a room and reservation database)
  • API only works on databases that you have access to. It does not, for example, return public busytime info.

For More About the Calendar and Scheduling API

Subsequent documents in this guide discuss Calendar and Scheduling and the Calendar and Scheduling API. Also see the Reference and the sample programs entryCRUD. ---