Initial backup 2026-02-17
This commit is contained in:
44
skills/calendar/cal.sh
Normal file
44
skills/calendar/cal.sh
Normal file
@@ -0,0 +1,44 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash
|
||||
# CalDAV Calendar Tool - Supports Google, iCloud, and Work Calendars
|
||||
cd "$(dirname "$0")"
|
||||
|
||||
# Get Apple ID and iCloud password from environment
|
||||
# Note: Use original iCloud email (anthonym_au@icloud.com), not the alias
|
||||
APPLE_ID="${CALENDAR_ICLOUD_ID:-anthonym_au@icloud.com}"
|
||||
APPLE_PASS="${CALENDAR_ICLOUD_PASS:-mvas-vwsk-ktiv-anex}"
|
||||
|
||||
# Get work calendar credentials from environment
|
||||
WORK_EMAIL="${CALENDAR_WORK_EMAIL:-Anthony.martin@pacificenergy.com.au}"
|
||||
WORK_PASS="${CALENDAR_WORK_PASS:-RecOvery2026!}"
|
||||
WORK_URL="${CALENDAR_WORK_URL:-https://outlook.office365.com/EWS/Exchange.asmx}"
|
||||
|
||||
# Choose which calendar to use
|
||||
CALENDAR_TYPE="${1:-google}" # Default to Google
|
||||
CALENDAR_URL=""
|
||||
|
||||
if [ "$CALENDAR_TYPE" = "icloud" ]; then
|
||||
if [ -z "$APPLE_ID" ] || [ -z "$APPLE_PASS" ]; then
|
||||
echo "Error: CALENDAR_ICLOUD_ID and CALENDAR_ICLOUD_PASS must be set for iCloud" >&2
|
||||
echo "Run: export CALENDAR_ICLOUD_ID='your@email.com' CALENDAR_ICLOUD_PASS='password'" >&2
|
||||
exit 1
|
||||
fi
|
||||
CALENDAR_URL="https://caldav.icloud.com/${APPLE_ID}/calendars/"
|
||||
elif [ "$CALENDAR_TYPE" = "work" ]; then
|
||||
if [ -z "$WORK_EMAIL" ] || [ -z "$WORK_URL" ]; then
|
||||
echo "Error: CALENDAR_WORK_EMAIL and CALENDAR_WORK_URL must be set for work calendar" >&2
|
||||
exit 1
|
||||
fi
|
||||
CALENDAR_URL="$WORK_URL"
|
||||
else
|
||||
# Google Calendar (default)
|
||||
CALENDAR_URL="https://calendar.google.com/calendar/dav/"
|
||||
fi
|
||||
|
||||
echo "📅 Using $CALENDAR_TYPE calendar" >&2
|
||||
|
||||
# Add calendar type to env for Python script
|
||||
export CALENDAR_TYPE
|
||||
export CALENDAR_URL
|
||||
|
||||
/home/openclaw/.local/bin/uv run --with caldav --with icalendar --with pytz cal.py "$@"
|
||||
Reference in New Issue
Block a user