Configuring listener accounts for emails and appointments
With Pega Sales Automation, you can push emails and appointments from Microsoft Outlook (or another default mail client) to the Pega Platform. When an email or appointment is received, an email listener account identifies the recipients and maps the email or appointment to the appropriate operator.
You can associate incoming emails and appointments with contacts, organizations, and accounts in the application, and you can use Microsoft Outlook's vCard functionality to create a Pega Sales Automation contact from an Outlook contact.
Follow these steps to configure listener accounts for emails and appointments:
Creating the access group, operator, and email accounts
To set up your listener account, you must create an access group and an operator ID, and configure email accounts to accept incoming emails and send bounce-back notifications.
In Dev Studio, create an access group. The default access group is PegaCRM-SFA:ServicesPegaSAFS:Services with the following attributes:
If you do not use the default access group, you must change the Service access group on the FWEmailCollector service class. For more information, see Access groups & Users tab.
- PegaRULES:User4 role
- Open, modify, search, and execute activity access to PegaCRM-Document-EmailPegaSAFS-Document-Email
Create an operator role with the newly created access group. Enter this operator in the Requestor Login section for the email listener. For information, see Operators.
Configure the SyncEmailCalendar email account.This is the account that the email listener uses to import emails and appointments. You can link this account to any email address. For more information, see Exploring email configurations.For Exchange integration, enter your Exchange server information when you configure the SyncEmailCalendar email account.
Configure the SyncEmailCalendar email listener.
Create or modify the default email account with the type Notify. Pega Sales Automation uses this account to send a bounce-back email if the incoming message cannot be associated with any object in the application. Configure the Notify email account to look like it is an official communication coming from the application.
Creating new email and appointment classes in the implementation layer
You must create new email and appointment classes in your implementation layer for the integration to work properly.
In Dev Studio, create new classes for emails and appointments:
- Set the direct inheritance for the email class to PegaCRM-Document-EmailPegaSAFS-Document-Email.
- Set the direct inheritance for the appointment class to PegaCRM-Work-Appointment.
Update the PegaCRM-Document-Email.getAppointmentClass decision table to default to your new appointment class.
Create a new service package using the FWEmailCollector service as a guide.
Update the service email rule to set the page class to your new email class.
Configuring associations with other application objects
You can associate emails and appointments with other objects in the application, such as organizations, accounts, and contacts. Because your implementation uses classes inheriting from Pega Sales Automation classes, you need to be sure that the email integration is associating emails and appointments with implementation layer objects.
For Emails, this association is configured through activities called from PegaCRM-Embed-Recipient.lookupRecipient. For appointments, this association is configured through activities called from PegaCRM-Embed-Recipient.DoRecipientAssociations.
To update contact associations, in Dev Studio, perform the following steps:
Replace references to the PegaCRM-Entity-Contact class in the obj-browse calls, pages, and classes to refer to your contact implementation class.
To update organization associations, perform the following steps:
Create an implementation class for PegaCRM-Index-OrgDomains.
Update the class references in @baseclass.crmFindOrgByDomain.
Updating the user interface
Emails and appointments appear in several places in the Pega Sales Automation user interface. You must update application rules to change class references to your implementation classes.
In Dev Studio, update the following rules for appointments:
- Data-Portal.SFAPortal_MyCalendar - Modify the configuration of the pxCalendar control to update the class reference on the Appointments tab.
- @baseclass.crmPopulateAppointmentEvents - Modify step 1 to update the report class.
- crmRelatedAppointments - Override this rule in your implementation class to update the class reference to the report definition. Update both the repeating grid and the Open Report icon. There are versions in PegaCRM-Entity-Contact and PegaCRM-Entity-Org.
Copy the following report definitions from PegaCRM-Work-Appointment to your implementation class:
Update the following rules for emails:
- crmRelatedEmails - Override this rule in your implementation classes to update the class reference to the report definition. Update both the repeating grid and the Open Report icon. There are versions in PegaCRM-, PegaCRM-Entity-Contact, and PegaCRM-Entity-Org.
Copy the following report definitions from PegaCRM-Document-Email to your implementation class: