Initial commit: Complete CalDAV calendar synchronizer
- Rust-based CLI tool for Zoho to Nextcloud calendar sync - Selective calendar import from Zoho to single Nextcloud calendar - Timezone-aware event handling for next-week synchronization - Comprehensive configuration system with TOML support - CLI interface with debug, list, and sync operations - Complete documentation and example configurations
This commit is contained in:
commit
8362ebe44b
16 changed files with 6192 additions and 0 deletions
54
config/default.toml
Normal file
54
config/default.toml
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
# Default CalDAV Sync Configuration
|
||||
# This file provides default values for the Zoho to Nextcloud calendar sync
|
||||
|
||||
# Zoho Configuration (Source)
|
||||
[zoho]
|
||||
server_url = "https://caldav.zoho.com/caldav"
|
||||
username = ""
|
||||
password = ""
|
||||
selected_calendars = []
|
||||
|
||||
# Nextcloud Configuration (Target)
|
||||
[nextcloud]
|
||||
server_url = ""
|
||||
username = ""
|
||||
password = ""
|
||||
target_calendar = "Imported-Zoho-Events"
|
||||
create_if_missing = true
|
||||
|
||||
[server]
|
||||
# Request timeout in seconds
|
||||
timeout = 30
|
||||
|
||||
[calendar]
|
||||
# Calendar color in hex format
|
||||
color = "#3174ad"
|
||||
# Default timezone for processing
|
||||
timezone = "UTC"
|
||||
|
||||
[sync]
|
||||
# Synchronization interval in seconds (300 = 5 minutes)
|
||||
interval = 300
|
||||
# Whether to perform synchronization on startup
|
||||
sync_on_startup = true
|
||||
# Number of weeks ahead to sync
|
||||
weeks_ahead = 1
|
||||
# Whether to run in dry-run mode (preview changes only)
|
||||
dry_run = false
|
||||
|
||||
# Performance settings
|
||||
max_retries = 3
|
||||
retry_delay = 5
|
||||
|
||||
# Optional filtering configuration
|
||||
# [filters]
|
||||
# # Event types to include (leave empty for all)
|
||||
# event_types = ["meeting", "appointment"]
|
||||
# # Keywords to filter events by
|
||||
# keywords = ["work", "meeting", "project"]
|
||||
# # Keywords to exclude
|
||||
# exclude_keywords = ["personal", "holiday", "cancelled"]
|
||||
# # Minimum event duration in minutes
|
||||
# min_duration_minutes = 5
|
||||
# # Maximum event duration in hours
|
||||
# max_duration_hours = 24
|
||||
Loading…
Add table
Add a link
Reference in a new issue