Resolution

Event Type

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.

Fields to Syncronize

Event -> CiviCampaign

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.

Event Date -> CiviEvent

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.