You can use the Linked Calendars feature to sync with external calendars, or to do a one-time data transfer by adding the feed, then deleting it, but choosing to keep all events. See “Integrations” for step-by-step guides to finding the appropriate ICAL links for many popular services.
Adding a Linked Calendar
Once you have an ICAL or RSS link from your external service, here’s how you plug it into LiveWhale Calendar to begin syncing. (We suggest avoiding RSS feeds, as they often don’t match up event data perfectly. If RSS is all you have, some custom code might help match it up better with the LiveWhale event fields.)
- Access Linked Calendars from your Toolbox or the Events manager.
- Click the Add a new calendar feed button.
- To add events in a feed, enter the feed url in the text field labeled Paste an iCAL link here
- Click the Test this feed button to make sure your feed is valid and sending information. A message will be display stating if your feed is valid with a number of items returned.
- You can set defaults for all imported events by editing fields on the Linked Calendar itself. So, you can easily add an image or event type to all events from a feed. Or, you can override the description for all imported events, if what’s coming in from the feed isn’t useful.
- Once you Save your Linked Calendar, events will appear in your event list and re-sync every hour.
- You can add details to your imported events individually, such as a summary, images, contact information, related content, plot the location to a map, and rsvp. Certain information from the feed cannot be overwritten, like the title and date.
- Note: Imported Calendars are automatically refreshed hourly.
- When deleting a linked calendar, a pop-up box will appear asking if you want to Delete all events or Keep all events. Imported events from a linked calendar are stored in the LiveWhale database. To remove them from the calendar database choose, Delete all events. Else, if you want to keep the events that were previously imported click on the Keep all events button.
Supported iCal fields
If you are creating your own .ics feed to import into LiveWhale, here are the basic and custom fields you can use for richer event data.
Basic iCal fields
In addition to all the normal date, time, and repeat/recurrence arguments from the iCal specifications, you can use the following attributes:
Field | Imported as | Format |
---|---|---|
SUMMARY | Title | Text |
X-LIVEWHALE-SUMMARY | Summary | Text |
DESCRIPTION | Description | Text |
X-ALT-DESC;FMTTYPE=text/html | Description (with HTML tags) | HTML |
URL | URL | URL |
LOCATION | Location Name (and, if it matches a saved location in LiveWhale, that will be used) | Text |
GEO | Used to associate a map with your location | latitude;longitude |
ORGANIZER CONTACT |
Contact Info | Email address |
X-LIVEWHALE-CONTACT-INFO | Contact Info (if not already set from ORGANIZER or CONTACT) | HTML |
CATEGORIES | Event Types (if they match saved event types in LiveWhale) | |-separated or comma-separated list |
ATTACH | External image, if it’s a valid imaged URL | URL |
X-LIVEWHALE-IMAGE-CAPTION | Caption to use for image from ATTACH | Text |
X-LIVEWHALE-TAGS | Tags | |-separated list |
X-LIVEWHALE-COST | Event Cost | Text |
STATUS | If status is “CANCELLED,” event is marked as cancelled | Text |
X-LIVEWHALE-HIDDEN | If present, import event as hidden | Text |
X-LIVEWHALE-VISIBILITY | If present, visibility will be set when item is created (LiveWhale 1.7.1+) |
1 = Everyone 2 = This group only 3 = Any logged-in user 4 = Only with link |
X-LIVEWHALE-SKIP-SYNC | If present, item will be skipped | Text |
X-LIVEWHALE-CUSTOM-MY-VARIABLE | Value saved to event as a custom field called “my_variable” — note hyphens converted to underscores in the variable name (LiveWhale 1.7+) | Text |
Online iCal Fields
These fields can be used to import and export online events via iCal in LiveWhale 1.7.1+.
Field | Imported as | Format |
---|---|---|
X-LIVEWHALE-IS-ONLINE | When value is 1, event is online | 1 |
X-LIVEWHALE-ONLINE-TYPE | 1=Online only, 2=Hybrid | 1 or 2 |
X-LIVEWHALE-ONLINE-URL | The URL to join the event | URL |
X-LIVEWHALE-ONLINE-BUTTON-LABEL | The button text to join the event | Text |
X-LIVEWHALE-ONLINE-INSTRUCTIONS | Special instructions? | Text (supports bold, italics, underlines, links) |
Note: these fields will only be read into LiveWhale when an event is first created/imported, so if you want to add them to an existing Linked Calendar event, you’ll need to delete and re-import that event (or add them manually by logging in and using the LiveWhale “Edit Event” page).
Example:
X-LIVEWHALE-IS-ONLINE:1
X-LIVEWHALE-ONLINE-TYPE:1
X-LIVEWHALE-ONLINE-URL:https://www.mymeeting.com/1234
X-LIVEWHALE-ONLINE-BUTTON-LABEL:Join Meeting
X-LIVEWHALE-ONLINE-INSTRUCTIONS:Sign up for an <a href="#">account</a> and join the meeting.
CampusGroups iCal fields
If you’re importing a feed from CampusGroups, the following CampusGroups-specific feed variables are supported in LiveWhale 2.10.3+.
Field | Automatically maps to | Imported as |
---|---|---|
CATEGORIES;X-CG-CATEGORY=event_type | CATEGORIES | Event Types (if they match saved event types in LiveWhale) |
CATEGORIES;X-CG-CATEGORY=event_tags | X-LIVEWHALE-TAGS | Tags |
CATEGORIES;X-CG-CATEGORY=club_acronym | X-LIVEWHALE-CAMPUSGROUPS-CLUB | Not automatically imported to any event field, could be tracked or manipulated via a custom module if desired. |
Example iCal event
BEGIN:VEVENT
DTSTART;VALUE=DATE:20211003
DTEND;VALUE=DATE:20211004
UID:1234567890-some-unique-identifier
SUMMARY:My Event
DESCRIPTION:This is our event!
X-ALT-DESC;FMTTYPE=text/html:<p>This is our <strong>event!</strong></p>
LOCATION:My Event Location
GEO:40.6892;74.0445
URL:http://my.website.edu/event-url
X-LIVEWHALE-CONTACT-INFO:My Contact Info
CATEGORIES:Student Life|Athletics|Arts & Performance
ATTACH:http://my.website.edu/my-image.jpg
X-LIVEWHALE-IMAGE-CAPTION:My Image Caption
X-LIVEWHALE-TAGS:Alumni Reunion|Homecoming
X-LIVEWHALE-COST:Suggested Donation
X-LIVEWHALE-HIDDEN:1
X-LIVEWHALE-VISIBILITY:3
X-LIVEWHALE-CUSTOM-REGISTRATION-LINK:http://my.website.edu/register/
END:VEVENT
To see an example of these fields in action, check out a sample iCal export from your own site at calendar.myschool.edu/live/ical/events.
Advanced: if you have your own custom fields attached to LiveWhale events, you can import iCal data into those custom fields using the X-LIVEWHALE-CUSTOM-
prefix or with a custom module using the onAfterSync handler.