Реализация опции подписи документа без отправки уведомления по электронной почте подписывающему лицу - PullRequest
0 голосов
/ 08 января 2020

Я пытаюсь реализовать опцию подписи документа в моем приложении.

enter image description here

Он работает отлично, но в процессе он отправляет электронное письмо подписывающему лицу для проверки документа (что не происходит при создании через DocuSign UI). Как я могу остановить отправку подписчику этого электронного документа для проверки.

Вот что я делаю в своем коде

  1. Создание конверта

        try
        {
            EnvelopeDefinition envDef = new EnvelopeDefinition();
            envDef.EmailSubject = selectedFileList[0].subject;
            envDef.Documents = new List<Document>();
            foreach (var file in selectedFileList)
            {
                envDef.Documents.Add(getDocument(file.localPath, file.fullFileName, file.extension, file.number.ToString(), file.version.ToString(), file.databaseName));
            }
    
            Signer signer = new Signer();
            signer.Email = signerEmail;
            signer.Name = signerName;
            signer.RecipientId = "1";
            envDef.Recipients = new Recipients();
            envDef.Recipients.Signers = new List<Signer>();
            envDef.Recipients.Signers.Add(signer);
            envDef.Status = "sent";
    
            EnvelopesApi envelopesApi = new EnvelopesApi(config);
            var response = await Task.Run(() => { return envelopesApi.CreateEnvelopeWithHttpInfo(accountId, envDef); });
    
            EnvelopeSummary envelopeSummary = response.Data;
            responseHeaders = response.Headers;
    
        }
        catch (Exception ex)
        {
            throw ex;
        }
    
  2. Создание представления квитанции

            EnvelopesApi envelopesApi = new EnvelopesApi(apiConfig);
    
            RecipientViewRequest viewRequest = new RecipientViewRequest();
            viewRequest.UserName = signerName;
            viewRequest.Email = signerEmail;
            viewRequest.RecipientId = "1";
            viewRequest.AuthenticationMethod = "email";
            viewRequest.ReturnUrl = returnUrl;
            //viewRequest.ClientUserId = apiConfig;
    
            var view = envelopesApi.CreateRecipientView(accountId, envelopeId, viewRequest);
            var url = view.Url;
    

Ответы [ 2 ]

1 голос
/ 08 января 2020

Попробуйте добавить этот код в ваше приложение:

var textCustomFields = new List<TextCustomField>();
var textCustomField = new TextCustomField { Name = "AppName", Value = "DocuSignIt" };
textCustomFields.Add(textCustomField);
envDef.CustomFields.TextCustomFields = textCustomFields;

Это должно указывать DocuSign не отправлять электронное письмо.

0 голосов
/ 09 января 2020

Установка значения атрибута ClientUserId для получателя также помечает получателя, чтобы он не получил приглашение по электронной почте подписать.

Установка ClientUserId является рекомендуемым подходом для встроенной подписи.

Значение атрибута ClientUserId также действует как связь между аутентификацией, выполненной вашим приложением, и церемонией подписания, которая позволяет человеку подписать документы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...