# Meetings (cf.cplace.meeting)

## Overview

The Meetings app enables creating appointments as pages and keeping minutes. Users can create structured meetings with organizer, attendees, date/time, location, and capture meeting summaries and minutes. Appointments can be exported as .ics files to send invitations or save to personal calendars.

**Icon:** `fa-calendar`

## Dependencies

- `cf.cplace.platform` (cplace Basis) - always pre-installed

No additional apps are auto-installed with this app.

## Types Provided

### cf.appointment (Appointment / Meeting)

A type for managing meetings and appointments with support for organizing attendees, scheduling, and recording minutes.

**Name Generation Pattern:** `<cf.appointmentDtstart> <cf.appointmentSubject>`

| Attribute | Internal Name | Type | Required | Multiple | Description |
|-----------|--------------|------|----------|----------|-------------|
| Subject | `cf.appointmentSubject` | String | Yes | No | The meeting subject/title |
| Organizer | `cf.appointmentOrganizer` | Reference (Person) | Yes | No | Person organizing the meeting |
| Required Attendees | `cf.appointmentReqAttendees` | Reference (Person) | No | Yes | People who must attend |
| Optional Attendees | `cf.appointmentOptAttendees` | Reference (Person) | No | Yes | People who may optionally attend |
| Start | `cf.appointmentDtstart` | Date | Yes | No | Meeting start date |
| Start time | `cf.appointmentDtstartTime` | String (HH:MM pattern) | Yes | No | Meeting start time |
| End | `cf.appointmentFinish` | Date | Yes | No | Meeting end date |
| End time | `cf.appointmentEndTime` | String (HH:MM pattern) | Yes | No | Meeting end time |
| Location | `cf.appointmentLocation` | String | No | No | Meeting location/room |
| Summary | `cf.appointmentSummary` | Rich String | No | No | Agenda or meeting summary |
| Minutes | `cf.appointmentMinutes` | Rich String | No | No | Meeting minutes/notes |

**Notes:**
- Time fields use a string pattern `([01]?[0-9]|2[0-3]):[0-5][0-9]` for 24-hour format (e.g., "09:00", "14:30")
- Person references target `default.user` and allow cross-workspace selection
- The type supports divergent layouts and is searchable via global search

## Widgets Provided

| Widget | Internal Name | Description |
|--------|---------------|-------------|
| Meeting Details | `cf.cplace.meeting.pageHeader` | Displays meeting details including time, location, participants, and agenda. Provides quick actions for editing attendees and exporting to calendar (.ics) format. |

## Usage Notes

### When to Use This App

- **Meeting Management:** Track team meetings, project reviews, or recurring appointments
- **Minutes Recording:** Capture discussion notes, decisions, and action items
- **Calendar Integration:** Export meetings to external calendar applications via .ics

### Common Patterns

1. **Meeting Series Container:** Create a parent page to hold related meetings (e.g., "Weekly Team Standups")
2. **Agenda-driven Meetings:** Use the Summary field for pre-meeting agenda items
3. **Meeting Minutes:** Record outcomes in the Minutes rich text field
4. **Attendee Tracking:** Distinguish between required and optional participants

### Integration with Other Apps

- Works well with **Item List** (`cf.cplace.itemList`) for tracking action items from meetings
- Can be combined with **cplace Calendar** (`cf.cplace.simpleCalendar`) for calendar-based visualization
- Use **Board** (`cf.cplace.cboard.main`) to visualize meetings by status or type

## Investigation Details

- **Investigation Date:** 2026-02-02
- **Workspace ID:** 02pvpp9mqn5cqmozgrxq7v8eg
- **Workspace Name:** [App Investigation] cf.cplace.meeting
