The admin user should be able to assign the CiviEvent Type when creating the OpenTickets Event. This will be used to set the CiviEvent type when syncing from an OpenTickets Event Dates create/update action. The OpenTickets UI should present a drop-down menu populated with a current list of CiviEvent types for this purpose. An example can be seen in the work done by Giriraj Digital.
When an OpenTickets Event is created, a CiviCampaign should be created with the following information synced:
|CiviCampaign Field||Populate with...|
|Title||Title of OpenTickets Event followed by the Year & Month formatted like "2019-04"|
|Campaign Type||"OpenTickets Event"|
|Description||Description from OpenTickets Event|
|Start/End Date||OpenTickets Event run dates|
Fields which don't need to be synced: Include Groups, Campaign Goals, Revenue Goal, External ID. (Unless we can leverage the External ID field to help match existing CiviCampaigns to OpenTickets Events so we're not creating duplicate CiviCampaigns when an Event is updated?)
The "Is Active" checkbox should be checked if the OpenTickets Event is published, unchecked (i.e. the CiviCampaign is not active) if the OpenTickets Event is in a draft state.
When an OpenTicketsEvent Date is added or updated on an Event, a CiviEvent should be created or updated with the following synced:
|CiviEvent Field||Populate with...|
|Title||Title of OpenTickets Event Date|
|Campaign||The campaign created from the OpenTickets Event|
|Default Role||not necessary to set, as participant roles are actually for participant records. We can safely set this to "Attendee"|
|Event Title||Title of the Event plus the date and time|
|Event Summary||Excerpt from OpenTickets Event (if it exists)|
|Complete Description||Description from OpenTickets Event|
|Start and End Date / Time||Start and end time from the Event Date|
|Max number of Participants||We should be able to get the number of available seats from the Venue and Event Area configured on the Event Date. If this proves difficult, this field might be okay to skip syncing.|
Participant Listing, Include Map to Event Location, Allow sharing through social media? etc… are all unnecessary to be synced.
The "Is Active" checkbox should be checked if the OpenTickets Event Date is published, unchecked (i.e. the CiviEvent is not active) if the OpenTickets Event Date is in a draft state.