public void ConvertAPIToSDK() { apiRole = CreateTypicalAPIRole(); apiSigner1 = apiRole.Signers[0]; sdkSigner1 = new SignerConverter(apiRole).ToSDKSigner(); Assert.IsNotNull(sdkSigner1); Assert.AreEqual(apiSigner1.Email, sdkSigner1.Email); Assert.AreEqual(apiSigner1.FirstName, sdkSigner1.FirstName); Assert.AreEqual(apiSigner1.LastName, sdkSigner1.LastName); Assert.AreEqual(apiSigner1.Company, sdkSigner1.Company); Assert.AreEqual(apiSigner1.Title, sdkSigner1.Title); Assert.AreEqual(apiRole.Id, sdkSigner1.Id); Assert.AreEqual(apiRole.Index, sdkSigner1.SigningOrder); Assert.AreEqual(apiRole.Reassign, sdkSigner1.CanChangeSigner); Assert.AreEqual(apiRole.EmailMessage.Content, sdkSigner1.Message); Assert.AreEqual(apiSigner1.Delivery.Email, sdkSigner1.DeliverSignedDocumentsByEmail); string attachmentName = apiRole.AttachmentRequirements[0].Name; Silanis.ESL.API.AttachmentRequirement apiAttachment = apiRole.AttachmentRequirements[0]; Silanis.ESL.SDK.AttachmentRequirement sdkAttachment = sdkSigner1.GetAttachmentRequirement(attachmentName); Assert.AreEqual(attachmentName, sdkSigner1.GetAttachmentRequirement(attachmentName).Name); Assert.AreEqual(apiAttachment.Description, sdkAttachment.Description); Assert.AreEqual(apiAttachment.Required, sdkAttachment.Required); Assert.AreEqual(apiAttachment.Status.ToString(), sdkAttachment.Status.ToString()); Assert.AreEqual(apiAttachment.Comment, sdkAttachment.SenderComment); }
public void CanAddTwoAttachmentRequirement() { Silanis.ESL.SDK.AttachmentRequirement attachmentRequirement1 = AttachmentRequirementBuilder.NewAttachmentRequirementWithName("Driver's license") .WithDescription("Please upload scanned driver's license.") .IsRequiredAttachment() .Build(); Silanis.ESL.SDK.AttachmentRequirement attachmentRequirement2 = AttachmentRequirementBuilder.NewAttachmentRequirementWithName("Medicare card") .WithDescription("Please upload scanned medicare card.") .IsRequiredAttachment() .Build(); Silanis.ESL.SDK.Signer signer = SignerBuilder.NewSignerWithEmail("*****@*****.**") .WithFirstName("Billy") .WithLastName("Bob") .WithAttachmentRequirement(attachmentRequirement1) .WithAttachmentRequirement(attachmentRequirement2) .Build(); Assert.AreEqual(signer.Attachments.Count, 2); Assert.AreEqual(signer.GetAttachmentRequirement("Driver's license").Name, attachmentRequirement1.Name); Assert.AreEqual(signer.GetAttachmentRequirement("Driver's license").Description, attachmentRequirement1.Description); Assert.AreEqual(signer.GetAttachmentRequirement("Driver's license").Required, attachmentRequirement1.Required); Assert.AreEqual(signer.GetAttachmentRequirement("Driver's license").Status, attachmentRequirement1.Status); Assert.AreEqual(signer.GetAttachmentRequirement("Medicare card").Name, attachmentRequirement2.Name); Assert.AreEqual(signer.GetAttachmentRequirement("Medicare card").Description, attachmentRequirement2.Description); Assert.AreEqual(signer.GetAttachmentRequirement("Medicare card").Required, attachmentRequirement2.Required); Assert.AreEqual(signer.GetAttachmentRequirement("Medicare card").Status.ToString(), attachmentRequirement2.Status.ToString()); }
public void ConvertNullSDKToAPI() { sdkSigner1 = null; converter = new SignerConverter(sdkSigner1); Assert.IsNull(converter.ToAPISigner()); }
public void ConvertSDKSignerWithNullEntriesToAPIRole() { String roleId = System.Guid.NewGuid().ToString().Replace("-", ""); sdkSigner1 = SignerBuilder.NewSignerWithEmail("*****@*****.**") .CanChangeSigner() .DeliverSignedDocumentsByEmail() .SigningOrder(1) .WithCompany("ABC Inc.") .WithFirstName("first name") .WithLastName("last name") .WithTitle("Miss") .Build(); apiRole = new SignerConverter(sdkSigner1).ToAPIRole(roleId); Assert.IsNotNull(apiRole); Assert.AreEqual(apiRole.Signers[0].Email, sdkSigner1.Email); Assert.AreEqual(apiRole.Signers[0].FirstName, sdkSigner1.FirstName); Assert.AreEqual(apiRole.Signers[0].LastName, sdkSigner1.LastName); Assert.AreEqual(apiRole.Signers[0].Company, sdkSigner1.Company); Assert.AreEqual(apiRole.Signers[0].Title, sdkSigner1.Title); Assert.AreEqual(apiRole.Id, roleId); Assert.AreEqual(apiRole.Name, roleId); Assert.IsNull(apiRole.EmailMessage); }
public void AddTo(Signer value) { if (value == null) { throw new ArgumentNullException("Argument cannot be null"); } to.Add(value.Email, value); }
public void AuthenticationDefaultsToEmail() { Silanis.ESL.SDK.Signer signer = SignerBuilder.NewSignerWithEmail("*****@*****.**") .WithFirstName("Billy") .WithLastName("Bob") .Build(); Assert.AreEqual(AuthenticationMethod.EMAIL, signer.AuthenticationMethod); }
public void SetsUpSSOAuthentication() { Silanis.ESL.SDK.Signer signer = SignerBuilder.NewSignerWithEmail("*****@*****.**") .WithFirstName("Billy") .WithLastName("Bob") .WithSSOAuthentication() .Build(); Assert.AreEqual(AuthenticationMethod.SSO, signer.AuthenticationMethod); }
public void CanConfigureSignedDocumentDelivery() { Silanis.ESL.SDK.Signer signer = SignerBuilder.NewSignerWithEmail("*****@*****.**") .WithFirstName("Billy") .WithLastName("Bob") .DeliverSignedDocumentsByEmail() .Build(); Assert.IsTrue(signer.DeliverSignedDocumentsByEmail); }
public void ProvidingSignerCellPhoneNumberSetsUpSMSAuthentication() { Silanis.ESL.SDK.Signer signer = SignerBuilder.NewSignerWithEmail("*****@*****.**") .WithFirstName("Billy") .WithLastName("Bob") .WithSMSSentTo("1112223333") .Build(); Assert.AreEqual(AuthenticationMethod.SMS, signer.AuthenticationMethod); Assert.AreEqual("1112223333", signer.PhoneNumber); }
public void ProvidingQuestionsAndAnswersSetsAuthenticationMethodToChallenge() { Silanis.ESL.SDK.Signer signer = SignerBuilder.NewSignerWithEmail("*****@*****.**") .WithFirstName("Billy") .WithLastName("Bob") .ChallengedWithQuestions(ChallengeBuilder.FirstQuestion("What's your favorite sport?") .Answer("golf")) .Build(); Assert.AreEqual(AuthenticationMethod.CHALLENGE, signer.AuthenticationMethod); }
public void ConvertSDKToAPI() { sdkSigner1 = CreateTypicalSDKSigner(); apiSigner1 = new SignerConverter(sdkSigner1).ToAPISigner(); Assert.IsNotNull(apiSigner1); Assert.AreEqual(apiSigner1.Email, sdkSigner1.Email); Assert.AreEqual(apiSigner1.FirstName, sdkSigner1.FirstName); Assert.AreEqual(apiSigner1.LastName, sdkSigner1.LastName); Assert.AreEqual(apiSigner1.Company, sdkSigner1.Company); Assert.AreEqual(apiSigner1.Title, sdkSigner1.Title); }
public void CanSpecifyTitleAndCompany() { Silanis.ESL.SDK.Signer signer = SignerBuilder.NewSignerWithEmail("*****@*****.**") .WithFirstName("Billy") .WithLastName("Bob") .WithTitle("Managing Director") .WithCompany("Acme Inc") .Build(); Assert.AreEqual("Managing Director", signer.Title); Assert.AreEqual("Acme Inc", signer.Company); }
public void BuildsSignerWithBasicInformation() { Silanis.ESL.SDK.Signer signer = SignerBuilder.NewSignerWithEmail("*****@*****.**") .WithFirstName("Joe") .WithLastName("Smith") .SigningOrder(2) .Build(); Assert.AreEqual("*****@*****.**", signer.Email); Assert.AreEqual("Joe", signer.FirstName); Assert.AreEqual("Smith", signer.LastName); Assert.AreEqual(2, signer.SigningOrder); }
override public void Execute() { // Signer1 with 1 attachment requirement signer1 = SignerBuilder.NewSignerWithEmail(email1) .WithFirstName("John") .WithLastName("Smith") .WithCustomId(SIGNER1ID) .WithAttachmentRequirement(AttachmentRequirementBuilder.NewAttachmentRequirementWithName(NAME1) .WithDescription(DESCRIPTION1) .IsRequiredAttachment() .Build()) .Build(); // Signer2 with 2 attachment requirements Signer signer2 = SignerBuilder.NewSignerWithEmail(email2) .WithFirstName("Patty") .WithLastName("Galant") .WithAttachmentRequirement(AttachmentRequirementBuilder.NewAttachmentRequirementWithName(NAME2) .WithDescription(DESCRIPTION2) .Build()) .WithAttachmentRequirement(AttachmentRequirementBuilder.NewAttachmentRequirementWithName(NAME3) .WithDescription(DESCRIPTION3) .IsRequiredAttachment() .Build()) .Build(); Stream file = File.OpenRead(new FileInfo(Directory.GetCurrentDirectory() + "/src/document.pdf").FullName); DocumentPackage superDuperPackage = PackageBuilder.NewPackageNamed("AttachmentRequirementExample: " + DateTime.Now) .DescribedAs("This is a package created using the e-SignLive SDK") .WithSigner(signer1) .WithSigner(signer2) .WithDocument(DocumentBuilder.NewDocumentNamed("test document") .FromStream(file, DocumentType.PDF) .WithSignature(SignatureBuilder.SignatureFor(email1) .Build()) .Build()) .Build(); packageId = eslClient.CreateAndSendPackage(superDuperPackage); retrievedPackage = eslClient.GetPackage(packageId); attachment1Id = retrievedPackage.Signers[email1].Attachments[NAME1].Id; signer1 = retrievedPackage.Signers[email1]; // Signer1 uploads required attachment // Sender can accept/reject the uploaded attachment }
public void SavesProvidesQuestionsAndAnswers() { Silanis.ESL.SDK.Signer signer = SignerBuilder.NewSignerWithEmail("*****@*****.**") .WithFirstName("Billy") .WithLastName("Bob") .ChallengedWithQuestions(ChallengeBuilder.FirstQuestion("What's your favorite sport?") .Answer("golf") .SecondQuestion("Do you have a pet?") .Answer("yes")) .Build(); Assert.AreEqual(signer.ChallengeQuestion[0], new Challenge("What's your favorite sport?", "golf", Challenge.MaskOptions.None)); Assert.AreEqual(signer.ChallengeQuestion[1], new Challenge("Do you have a pet?", "yes", Challenge.MaskOptions.None)); }
public void CanSetAndGetAttachmentRequirements() { Silanis.ESL.SDK.AttachmentRequirement attachmentRequirement = AttachmentRequirementBuilder.NewAttachmentRequirementWithName("Driver's license") .WithDescription("Please upload scanned driver's license.") .IsRequiredAttachment() .Build(); Silanis.ESL.SDK.Signer signer = SignerBuilder.NewSignerWithEmail("*****@*****.**") .WithFirstName("Billy") .WithLastName("Bob") .WithAttachmentRequirement(attachmentRequirement) .Build(); Assert.AreEqual(signer.Attachments.Count, 1); Assert.AreEqual(signer.GetAttachmentRequirement("Driver's license").Name, attachmentRequirement.Name); Assert.AreEqual(signer.GetAttachmentRequirement("Driver's license").Description, attachmentRequirement.Description); Assert.AreEqual(signer.GetAttachmentRequirement("Driver's license").Required, attachmentRequirement.Required); Assert.AreEqual(signer.GetAttachmentRequirement("Driver's license").Status, attachmentRequirement.Status); }
public void ConvertSDKSignerToAPIRole() { sdkSigner1 = CreateTypicalSDKSigner(); String roleId = System.Guid.NewGuid().ToString().Replace("-", ""); apiRole = new SignerConverter(sdkSigner1).ToAPIRole(roleId); Assert.IsNotNull(apiRole); Assert.AreEqual(apiRole.Signers[0].Email, sdkSigner1.Email); Assert.AreEqual(apiRole.Signers[0].FirstName, sdkSigner1.FirstName); Assert.AreEqual(apiRole.Signers[0].LastName, sdkSigner1.LastName); Assert.AreEqual(apiRole.Signers[0].Company, sdkSigner1.Company); Assert.AreEqual(apiRole.Signers[0].Title, sdkSigner1.Title); Assert.AreEqual(apiRole.Id, sdkSigner1.Id); Assert.AreEqual(apiRole.Name, sdkSigner1.Id); Assert.AreEqual(apiRole.EmailMessage.Content, sdkSigner1.Message); string attachmentName = apiRole.AttachmentRequirements[0].Name; Assert.AreEqual(apiRole.AttachmentRequirements[0].Name, sdkSigner1.Attachments[attachmentName].Name); Assert.AreEqual(apiRole.AttachmentRequirements[0].Description, sdkSigner1.Attachments[attachmentName].Description); Assert.AreEqual(apiRole.AttachmentRequirements[0].Required, sdkSigner1.Attachments[attachmentName].Required); }
private void SetNewSignersIndexIfRoleWorkflowEnabled(PackageId templateId, DocumentPackage documentPackage) { DocumentPackage template = new DocumentPackageConverter(packageService.GetPackage(templateId)).ToSDKPackage(); if (CheckSignerOrdering(template)) { int firstSignerIndex = GetMaxSigningOrder(template, documentPackage) + 1; foreach (Signer signer in documentPackage.Signers) { Signer templatePlaceholder = template.GetPlaceholder(signer.Id); if (templatePlaceholder != null) { signer.SigningOrder = templatePlaceholder.SigningOrder; } if (signer.SigningOrder <= 0) { signer.SigningOrder = firstSignerIndex; firstSignerIndex++; } } } }
public void ConvertSDKSignerToAPIRole() { sdkSigner1 = CreateTypicalSDKSigner(); String roleId = System.Guid.NewGuid().ToString().Replace("-", ""); apiRole = new SignerConverter(sdkSigner1).ToAPIRole(roleId); Assert.IsNotNull(apiRole); Assert.AreEqual(apiRole.Signers[0].Email, sdkSigner1.Email); Assert.AreEqual(apiRole.Signers[0].FirstName, sdkSigner1.FirstName); Assert.AreEqual(apiRole.Signers[0].LastName, sdkSigner1.LastName); Assert.AreEqual(apiRole.Signers[0].Company, sdkSigner1.Company); Assert.AreEqual(apiRole.Signers[0].Title, sdkSigner1.Title); Assert.AreEqual(apiRole.Id, sdkSigner1.Id); Assert.AreEqual(apiRole.Name, sdkSigner1.Id); Assert.AreEqual(apiRole.EmailMessage.Content, sdkSigner1.Message); string attachmentName = apiRole.AttachmentRequirements[0].Name; Assert.AreEqual(apiRole.AttachmentRequirements[0].Name, sdkSigner1.GetAttachmentRequirement(attachmentName).Name); Assert.AreEqual(apiRole.AttachmentRequirements[0].Description, sdkSigner1.GetAttachmentRequirement(attachmentName).Description); Assert.AreEqual(apiRole.AttachmentRequirements[0].Required, sdkSigner1.GetAttachmentRequirement(attachmentName).Required); }
private Silanis.ESL.SDK.Message CreateTypicalSDKMessage() { Silanis.ESL.SDK.Signer fromSigner = SignerBuilder.NewSignerWithEmail("*****@*****.**") .WithFirstName("John") .WithLastName("Smith") .WithCustomId("user1") .Build(); Silanis.ESL.SDK.Message sdkMessage = new Silanis.ESL.SDK.Message(Silanis.ESL.SDK.MessageStatus.NEW, "decline reason", fromSigner); sdkMessage.Created = DateTime.Now; IDictionary <string, Silanis.ESL.SDK.Signer> toSigners = new Dictionary <string, Silanis.ESL.SDK.Signer>(); Silanis.ESL.SDK.Signer toSigner = SignerBuilder.NewSignerWithEmail("*****@*****.**") .WithFirstName("Patty") .WithLastName("Galant") .WithCustomId("user2") .Build(); toSigners.Add(toSigner.Email, toSigner); sdkMessage.AddTo(toSigner); return(sdkMessage); }
/// <summary> /// Sender downloads the attachment. /// </summary> /// <returns>The attachment.</returns> /// <param name="packageId">Package identifier.</param> /// <param name="attachmentId">Attachment identifier.</param> public byte[] DownloadAllAttachmentsForSignerInPackage(DocumentPackage sdkPackage, Signer signer) { return(apiClient.DownloadAllAttachmentsForSignerInPackage(sdkPackage, signer)); }
public Message(MessageStatus status, string content, Signer from) { Status = status; Content = content; From = from; }
public SignerConverter(Signer signer) { this.sdkSigner = signer; }
public DownloadedFile DownloadAllAttachmentFilesForSignerInPackage(DocumentPackage sdkPackage, Signer signer) { Package apiPackage = new DocumentPackageConverter(sdkPackage).ToAPIPackage(); string roleId = ""; foreach (Role role in apiPackage.Roles) { foreach (Silanis.ESL.API.Signer apiSigner in role.Signers) { if (signer.Email.Equals(apiSigner.Email)) { roleId = role.Id; } } } return(DownloadAllAttachmentsForSignerInPackage(sdkPackage.Id.Id, roleId)); }
public SignerConverter(Placeholder placeholder) { this.sdkSigner = new Signer(placeholder.Id); }
public void ConvertSDKSignerWithNullEntriesToAPIRole() { String roleId = System.Guid.NewGuid().ToString().Replace("-", ""); sdkSigner1 = SignerBuilder.NewSignerWithEmail("*****@*****.**") .CanChangeSigner() .DeliverSignedDocumentsByEmail() .Lock() .SigningOrder(1) .WithCompany("ABC Inc.") .WithFirstName("first name") .WithLastName("last name") .WithTitle("Miss") .Build(); apiRole = new SignerConverter(sdkSigner1).ToAPIRole(roleId); Assert.IsNotNull(apiRole); Assert.AreEqual(apiRole.Signers[0].Email, sdkSigner1.Email); Assert.AreEqual(apiRole.Signers[0].FirstName, sdkSigner1.FirstName); Assert.AreEqual(apiRole.Signers[0].LastName, sdkSigner1.LastName); Assert.AreEqual(apiRole.Signers[0].Company, sdkSigner1.Company); Assert.AreEqual(apiRole.Signers[0].Title, sdkSigner1.Title); Assert.AreEqual(apiRole.Id, roleId); Assert.AreEqual(apiRole.Name, roleId); Assert.IsNull(apiRole.EmailMessage); }
/// <summary> /// Sender downloads all attachment files for the signer in the package. /// </summary> /// <returns>The attachment files with file name.</returns> /// <param name="packageId">Package identifier.</param> /// <param name="signer">Signer.</param> public DownloadedFile DownloadAllAttachmentFilesForSignerInPackage(DocumentPackage sdkPackage, Signer signer) { return(apiClient.DownloadAllAttachmentFilesForSignerInPackage(sdkPackage, signer)); }
public byte[] DownloadAllAttachmentsForSignerInPackage(DocumentPackage sdkPackage, Signer signer) { return(DownloadAllAttachmentFilesForSignerInPackage(sdkPackage, signer).Contents); }
public void ConvertAPIToSDK() { apiRole = CreateTypicalAPIRole(); apiSigner1 = apiRole.Signers[0]; sdkSigner1 = new SignerConverter(apiRole).ToSDKSigner(); Assert.IsNotNull(sdkSigner1); Assert.AreEqual(apiSigner1.Email, sdkSigner1.Email); Assert.AreEqual(apiSigner1.FirstName, sdkSigner1.FirstName); Assert.AreEqual(apiSigner1.LastName, sdkSigner1.LastName); Assert.AreEqual(apiSigner1.Company, sdkSigner1.Company); Assert.AreEqual(apiSigner1.Title, sdkSigner1.Title); Assert.AreEqual(apiRole.Id, sdkSigner1.Id); Assert.AreEqual(apiRole.Index, sdkSigner1.SigningOrder); Assert.AreEqual(apiRole.Reassign, sdkSigner1.CanChangeSigner); Assert.AreEqual(apiRole.EmailMessage.Content, sdkSigner1.Message); Assert.AreEqual(apiSigner1.Delivery.Email, sdkSigner1.DeliverSignedDocumentsByEmail); string attachmentName = apiRole.AttachmentRequirements[0].Name; Silanis.ESL.API.AttachmentRequirement apiAttachment = apiRole.AttachmentRequirements[0]; Silanis.ESL.SDK.AttachmentRequirement sdkAttachment = sdkSigner1.Attachments[attachmentName]; Assert.AreEqual(attachmentName, sdkSigner1.Attachments[attachmentName].Name); Assert.AreEqual(apiAttachment.Description, sdkAttachment.Description); Assert.AreEqual(apiAttachment.Required, sdkAttachment.Required); Assert.AreEqual(apiAttachment.Status.ToString(), sdkAttachment.Status.ToString()); Assert.AreEqual(apiAttachment.Comment, sdkAttachment.SenderComment); }
public SignerConverter( Signer signer ) { this.sdkSigner = signer; }