Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Outlook Published Calendar Adapter #228

Open
wants to merge 9 commits into
base: main
Choose a base branch
from

Conversation

bartier
Copy link

@bartier bartier commented Jan 24, 2025

Add Outlook Published Calendar Adapter

Overview

As my first contribution to CalendarSync, I'm excited to propose a new adapter that enables synchronization with publicly shared Outlook calendars. This adapter provides a simpler alternative when OAuth access isn't needed or available.

I have been using for the last few weeks and I can say it is pretty much reliable.

Why This Adapter?

Many organizations use publicly shared Outlook calendars for events and schedules. This adapter fills a gap by allowing CalendarSync to integrate with these calendars without requiring complex OAuth setup or API permissions.

Features

  • Read-only synchronization with published Outlook calendars
  • Simple configuration using published calendar URL
  • No OAuth or API credentials required
  • Automatic time range handling
  • Compatible with existing sync mechanisms

Implementation Details

  • New adapter package: outlook_published
  • Implements the sync.Source interface
  • Uses standard Go HTTP client
  • Handles Outlook's published calendar format
  • Preserves event metadata

Documentation

Added comprehensive setup guide in docs/adapters.md :

  • Step-by-step configuration instructions
  • Visual guide for obtaining required values
  • Clear examples and limitations

Example Configuration

source:
  adapter:
    type: "outlook_published"
    config:
      url: "https://outlook.office365.com/.../service.svc"
      postData: "<url-post-data>"

Limitations

  • Read-only access (cannot modify calendar events)
  • Requires calendar to be publicly accessible
  • Some event details might be limited compared to OAuth-based adapter

I'm excited about this contribution and look forward to any feedback or suggestions for improvement. Happy to make adjustments as needed to align with the project's standards and goals.

@bartier
Copy link
Author

bartier commented Jan 24, 2025

I might have messed up with go.mod and go.sum files, if maintainers are interested on this PR implementation I can work to validate it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant