public static ICrateStorage GetEnvelopePayload() { var curDocuSignEnvelopeInfo = DocuSignEventParser.GetEnvelopeInformation(EnvelopePayload); var content = DocuSignEventParser.ParseXMLintoCM(curDocuSignEnvelopeInfo); return(new CrateStorage(Crate.FromContent("DocuSign Connect Event", content))); }
private async Task PushEnvelopesToTerminalEndpoint(IEnumerable <DocuSignEnvelopeCM_v2> envelopesToNotify) { foreach (var envelope in envelopesToNotify) { var eventReportContent = new EventReportCM { EventNames = DocuSignEventParser.GetEventNames(envelope), EventPayload = new CrateStorage(Crate.FromContent("DocuSign Connect Event", envelope)), Manufacturer = "DocuSign", ExternalAccountId = envelope.ExternalAccountId }; await _reporter.Broadcast(Crate.FromContent("Standard Event Report", eventReportContent)); } }
private Crate ProcessConnectEvent(string curExternalEventPayload) { // Connect events come only for a single envelope var curDocuSignEnvelopeInfo = DocuSignEventParser.GetEnvelopeInformation(curExternalEventPayload); // transform XML structure into DocuSignEnvelopeCM_v2 var curDocuSingEnvelopCM = DocuSignEventParser.ParseXMLintoCM(curDocuSignEnvelopeInfo); var eventReportContent = new EventReportCM { EventNames = DocuSignEventParser.GetEventNames(curDocuSignEnvelopeInfo), EventPayload = new CrateStorage(Crate.FromContent("DocuSign Connect Event", curDocuSingEnvelopCM)), Manufacturer = "DocuSign", ExternalAccountId = curDocuSignEnvelopeInfo.EnvelopeStatus.Email }; ////prepare the event report var curEventReport = Crate.FromContent("Standard Event Report", eventReportContent); return(curEventReport); }
public DocuSignEnvelopeCM_v2 GetEnvelope(DocuSignApiConfiguration config, string envelopeId) { DocuSignEnvelopeCM_v2 envelope; EnvelopesApi api = new EnvelopesApi(config.Configuration); //Templates var templates = api.ListTemplates(config.AccountId, envelopeId); var recipients = api.ListRecipients(config.AccountId, envelopeId); var filled_envelope = DocuSignEventParser.ParseAPIresponsesIntoCM(out envelope, templates, recipients); var envelopestatus = api.GetEnvelope(config.AccountId, envelopeId); filled_envelope.CreateDate = DateTime.Parse(envelopestatus.CreatedDateTime); filled_envelope.SentDate = DateTime.Parse(envelopestatus.SentDateTime); filled_envelope.StatusChangedDateTime = DateTime.Parse(envelopestatus.StatusChangedDateTime); envelope.Subject = envelopestatus.EmailSubject; envelope.EnvelopeId = envelopestatus.EnvelopeId; envelope.Status = envelopestatus.Status; return(filled_envelope); }