public CampaignMonitorRequest getRequestData(CampaignDocument campaign, List <CampaignSettingDocument> settings) { CampaignMonitorRequest request = FillSendinBlueRequestFromCosmos(settings); request.Name = campaign.Name; request.Text = campaign.Text; return(request); }
public string SendCampaign(CampaignMonitorRequest request) { string Id = string.Empty; try { AuthenticationDetails auth = new ApiKeyAuthenticationDetails(request.ApiKey); List <string> listIDs = new List <string> { request.ListId }; List <string> segmentIDs = new List <string> { request.SegmentIDs }; TemplateContent templateContent = new TemplateContent(); string campaignID = createsend_dotnet.Campaign.CreateFromTemplate( auth, request.ClientID, request.Subject, request.Name, request.FromName + "-" + DateTime.Now.ToString("MMddyyyyhhmm"), request.FromEmail, request.FromEmail, listIDs, segmentIDs, CreateTemplateFromCosmosDocument(auth, request.ClientID, request.campaign), templateContent); createsend_dotnet.Campaign campaignMonitorCampaign = new createsend_dotnet.Campaign(auth, campaignID); campaignMonitorCampaign.Send(request.FromEmail); Id = campaignID; } catch (Exception e) { var messageException = telemetria.MakeMessageException(e, System.Reflection.MethodBase.GetCurrentMethod().Name); telemetria.Critical(messageException); } return(Id); }
public CampaignMonitorRequest FillSendinBlueRequestFromCosmos(List <CampaignSettingDocument> campaignSettings) { CampaignMonitorRequest request = new CampaignMonitorRequest(); //todo try { // from products if (this.settings.Count > 0) { foreach (var item in settings) { switch (item.Name) { case "campaignMonitorApiToken": { request.ApiKey = item.Name.Equals("campaignMonitorApiToken") ? item.Value : string.Empty; } break; case "campaignMonitorList": { request.ListId = item.Name.Equals("campaignMonitorList") ? item.Value : string.Empty; } break; case "campaignMonitorClient": { request.ClientID = item.Name.Equals("campaignMonitorClient") ? item.Value : string.Empty; } break; case "campaignMonitorSegment": { request.SegmentIDs = item.Name.Equals("campaignMonitorSegment") ? item.Value : string.Empty; } break; } } } // from campaigns if (campaignSettings.Count > 0) { foreach (var setting in campaignSettings) { switch (setting.Name) { case "campaignMonitorSubject": { request.Subject = setting.Name.Equals("campaignMonitorSubject") ? setting.Value : string.Empty; } break; case "campaignMonitorFromName": { request.Subject = setting.Name.Equals("campaignMonitorFromName") ? setting.Value : string.Empty; } break; case "campaignMonitorFromEmail": { request.Subject = setting.Name.Equals("campaignMonitorFromEmail") ? setting.Value : string.Empty; } break; } } } } catch (Exception e) { string exceptionMessage = telemetria.MakeMessageException(e, System.Reflection.MethodBase.GetCurrentMethod().Name); telemetria.Critical(exceptionMessage); } return(request); }