in lambda/Message_Archiver/archiver/lib/pinpoint.js [77:122]
getCampaignContent(applicationId, campaignId, treatmentId) {
return this.pinpoint.getCampaign({
ApplicationId: applicationId,
CampaignId: campaignId
}).promise()
.then((response) => {
this.options.logger.log({
level: 'info',
message: JSON.stringify(response.CampaignResponse)
});
return response.CampaignResponse;
})
// Get Treatment
.then((campaign) => {
const additionalTreatments = campaign.AdditionalTreatments;
delete campaign.AdditionalTreatments;
return treatmentId === '0'
? campaign
: additionalTreatments.find(x => x.Id);
})
.then((treatment) => {
return Promise.all([
this.getCampaignTemplateContent(treatment),
this.getInlineCampaignContent(treatment)
])
.then((results) => {
return results.flat();
})
})
.then((content) => {
this.options.logger.log({
level: 'info',
message: JSON.stringify(content)
});
return content;
})
.catch((error) => {
this.options.logger.log({
level: 'error',
message: JSON.stringify(error.message)
});
return [];
});
}