====== How it works ====== ===== What does it do ===== The Apsis Integration will perform the following tasks on a regular basis: NOTE! The standard Apsis Integration can only be mapped to ONE Apsis account. ==== Campaign/mailing list synchronization ==== E-mail campaigns created in Lime CRM but not found in Apsis will be created in Apsis and updated campaigns (e.g. name, sender address) in Pro will be updated in Apsis. If a campaign is removed in Lime CRM it will //not// be deleted on the Apsis side. Note that it is possible to filter out which campaigns to synchronize with Apsis by setting an option field, see below. If a mailing list that is synchronized with Lime CRM is deleted using the Apsis web interface the campaign name in Lime CRM will receive ''[DELETED]'' suffix. ==== Subscriber synchronization ==== List subscribers (campaign participants) present in Lime CRM but not found in Apsis will be added to the mailing list in Apsis, given that they have valid e-mail addresses. List subscribers not present in Lime CRM but found in the list on the Apsis side //will be removed in the Apsis list//. This means that the integration will do everything it can to make sure that what is seen in Lime CRM is matched on the Apsis side. ==== Statistics ==== Mailing and recipient data is downloaded but only for newsletters sent to a mailing list that exists in Lime CRM as a campaign. Data is only downloaded if the sending was done less than or equal to 30 days ago. This is is a one-way download from Apsis to Lime CRM. ==== Opt-out handling ==== Subscribers that have opted out from a specific mailing list are removed as subscribers from that list in Lime CRM. When this happens a history note will also be logged for the related person that says that the person has opted out from the list. All Lime CRM persons also have a field indicating their global opt out status. The flag is set on all persons present in Lime CRM that are also present in the global opt out list in Apsis, with the e-mail address used as the key. The global opt out flag cannot be set or cleared using Lime CRM and exists for viewing purposes only. ==== Bounce data ==== All Lime CRM persons have an "email bounce" option list field which indicates whether or not Apsis has succeeded in sending email to the person using the specified address. This field may be set to the following values: ; None : No bounce information found in Apsis for this address. ; Soft : Temporary problem sending email to the address. ; Hard : Permanent problem sending email to the address, probably due to an incorrect address. ; Other : Unknown or technical problem sending email to the address. ===== Lime CRM layout ===== ==== Campaign ==== Lime CRM campaign records are used for storing mailing lists and therefore a table having the //Campaign// label must exist. If there are other types of campaigns apart from mailing lists (which there probably are) that should not be synchronized with Apsis, an option field having the //Category// field label must be present and contain an option having the key ''email'' must be present. In a base solution both campaignstatus and type has the field label //Category//. Add the option key ''email'' to the field ''type'' and change the label for campaignstatus to //None//. The Apsis Integration will then only synchronize those campaigns having this option selected. The following campaign fields are used: ^ Typical local name ^ Field name ^ Field label ^ Required ((as in required for synchronization)) ^ Description ^ | Name | N/A| Name | Yes | Used as the name of the mailing list. | | Sender name | mailinglistsendername | N/A | No | The name to use as the sender of mailings for this list. | | Sender address | mailinglistsenderaddress | N/A | Yes | The e-mail address to use as the sender of mailings for this list. | | Type | N/A | Category | No | See above. | | Mailing list ID | mailinglistid | N/A | N/A | Hidden field, used to associate a list in LIME with a list in Apsis. | | Last synchronized | mailinglistlastsyncdate | N/A | N/A | Hidden field (visible in lists per default) that shows when the campaign was last synchronized with Apsis. | ==== Person ==== Identified by the table having the //Person// table label. The Apsis Integration will use either a field having the //Name// field label as the name of the subscriber, or a combination of two fields having the //FirstName// and //LastName// labels. ^ Typical local name ^ Field name ^ Field label ^ Required ^ Description ^ | Name | N/A| Name | Yes | Subscriber name. | | First name | N/A| FirstName | Yes | Subscriber first name. | | Last name | N/A| LastName | Yes | Subscriber last name. | | Email | N/A| PrimaryEmail | Yes | Subscriber email address. | | Global opt out | globaloptout| N/A | Yes | Specifies whether or not this person has the global opt-out flag set in Apsis. Read-only, for display purposes only. | ===== Technical ===== The Apsis Integration is a .NET 4.0 based application implemented as a Windows service. The service performs a number of different tasks that are scheduled to execute at configurable intervals.