2017-04-20 1 views
0

토큰을 다시 가져 와서 IFrame을 통해 문서를로드하고 사용자가 서명 할 수 있도록 Soap API를 작동시키고 있습니다. 그러나 서명을 위해없는 다른 사람들에게 문서를 보낼 수 있도록해야합니다. 필자가 일을 이해함에 따라 워크 플로를 사용하여 문서를 일련의 전자 메일 주소로 보내 특정 순서로 서명하는 방법이 있어야합니다. 그러나, 나는 이것을 보여주는 문서에서 아직 아무것도 찾을 필요가 없다. 나는 이것을 위해서도 구글을 수색했다. Docusign 영업 그룹은 지원 시간을 사거나 Stackoverflow를 사용하여 여기에 있습니다.비누 API 및 워크 플로

나는 현재 Docusign 시스템에서 문서를 생성하는 코드를 가지고 있으며 "다른 사람들을 기다리는 중"섹션에서 문서가 있고 고객을 기다리고 있음을 알 수 있습니다. 그러나, 나는 결코 어떤 주소든지에 전자 우편을 얻지 않는다. 아래는 내가 서비스를 호출하는 데 사용하는 코드입니다.

나는 모든 이메일 계정을 확인했으며 차단 된 문서 공유 주소가 없으며 스팸 폴더에 아무것도 없다.

public void CreateDocs(string emailSubject, List<FileToSign> files, IEnumerable<Recipient> recipents, IEnumerable<Tab> tabs) 
{ 
var envelope = new Envelope 
{ 
    Subject = emailSubject, 
    EmailBlurb = emailSubject, 
    AccountId = _apiAccountId, 
    Recipients = recipents.ToArray(), 
    Documents = files.Select((t, i) => new Document 
    { 
     PDFBytes = File.ReadAllBytes(t.PathToFile), 
     Name = t.DocumentName, 
     ID = (i + 1).ToString(), 
     FileExtension = t.Extension 
    }).ToArray(), 
    Tabs = tabs.ToArray() 
}; 

using (var client = new DSAPIServiceSoapClient("DSAPIServiceSoap")) 
{ 
    EnvelopeStatus status; 
    using (new OperationContextScope(client.InnerChannel)) 
    { 
     var httpRequestProperty = new HttpRequestMessageProperty(); 
     httpRequestProperty.Headers.Add("X-DocuSign-Authentication", _auth); 
     OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name] = httpRequestProperty; 
     status = client.CreateAndSendEnvelope(envelope); 
    } 
    if (!status.SentSpecified) return; 
    EnvelopeStatus = status; 
} 
} 

편집 : 추가 샘플받는 사람 :

  Recipients.Add(new Recipient 
     { 
      UserName = row["FirstSigner"].ToString(), 
      Email = row["SignerEmail"].ToString(), 
      ID = "1", 
      Type = RecipientTypeCode.Signer, 
      CaptiveInfo = new RecipientCaptiveInfo { ClientUserId = "1" }, 
      RoleName = "Signer1", 
      RoutingOrder = 1 
     }); 
+0

'IEnumerable recipents'에서 설정 한 속성을 전체 코드를 보지 않고 표시 할 수 있습니까? –

+0

DocuSign SOAP API를 사용해야하는 이유가 궁금합니다. DocuSign [REST API] (https://docs.docusign.com/esign/)에는 풍부한 기능이 있으며 [C# SDK] (https://github.com/docusign/docusign-csharp-client)를 쉽게 사용할 수 있습니다. –

답변

2

당신은 당신의 Embedded recipients (일명 포로받는 사람) 등의 서명자

임베디드 서명 지정하는 - 또는받는 사람보기 워크 플로우 - 사용자 수 앱이나 웹 사이트를 통해 직접 로그인 할 수 있습니다. DocuSign 플랫폼에 수신자를 포함 시키면 앱에서 서명 URL을 생성하고 수신자를 인증하며 서명 요청을 제시하고 트랜잭션이 완료되면 리디렉션합니다. 당신은 또한 포함 된받는 사람에게 이메일을 보내려면

당신이 answer를 참조 clientUserId 에 추가하여 embeddedRecipientStartURL을 설정해야합니다.

는 코드를 수정하고 약 EmbeddedRecipientStartURLhere

EmbeddedRecipientStartURL가 포함 된받는 사람을 리디렉션에 대한 유효한 URL 문자열을 제공 송신자 인 EmbeddedRecipientStartURL

Recipients.Add(new Recipient 
    { 
     UserName = row["FirstSigner"].ToString(), 
     Email = row["SignerEmail"].ToString(), 
     ID = "1", 
     Type = RecipientTypeCode.Signer, 
     CaptiveInfo = new RecipientCaptiveInfo 
     { 
      ClientUserId = "1", 
      EmbeddedRecipientStartURL = "<Url to your App>" 
     }, 
     RoleName = "Signer1", 
     RoutingOrder = 1 
    }); 

더 자세한 정보를 참조하십시오 추가합니다. 이 옵션을 사용하면 내장 된 수신자는 원격 수신자와 마찬가지로 DocuSign에서 전자 메일을 수신하지만 전자 메일의 문서 링크를 클릭하면받는 사람이 DocuSign을 통해이 URL로 리디렉션되어 해당 작업을 완료합니다. URL로 라우팅 할 때 보내는 사람의 시스템 (URL에 응답하는 서버)이 서명 토큰을 요청하여 서명 세션을 시작하도록 요청합니다.