CarbonCopy到gmail地址似乎不起作用

时间:2016-06-07 01:22:30

标签: java sdk docusignapi

我使用DocuSign Java SDK并需要CarbonCopy的功能,因为我需要将每个文档发送给我们公司内的人而不是签名者。

因此,当我为签名者使用gmail地址时,会发送电子邮件。但是,当我使用垃圾邮件收件人的电子邮件地址时,电子邮件永远不会发送,我也不会收到错误。返回信封ID,好像一切都很顺利。

我有什么遗失的吗?有可能做到这一点吗?

     // login call available off the AuthenticationApi
     AuthenticationApi authApi = new AuthenticationApi();

     // login has some optional parameters we can set
     AuthenticationApi.LoginOptions loginOps = authApi.new LoginOptions();
     loginOps.setApiPassword("true");
     loginOps.setIncludeAccountIdGuid("true");
     LoginInformation loginInfo = authApi.login(loginOps);

     // note that a given user may be a member of multiple accounts
     List<LoginAccount> loginAccounts = loginInfo.getLoginAccounts();

     String accountId = loginAccounts.get(0).getAccountId();

     Path path = Paths.get(sFilePath);
     byte[] PDFContents = Files.readAllBytes(path);

     // Create an envelope that will store the document(s), field(s), and recipient(s)
     EnvelopeDefinition envDef = new EnvelopeDefinition();
     envDef.setEmailSubject("Please sign this document sent from Java SDK)");

     // Add a document to the envelope
     Document doc = new Document();  
     String base64Doc = DatatypeConverter.printBase64Binary(PDFContents);
     doc.setDocumentBase64(base64Doc);
     doc.setName("MaterialRequisition.pdf");    // can be different from actual file name
     doc.setDocumentId("1");

     List<Document> docs = new ArrayList<Document>();
     docs.add(doc);
     envDef.setDocuments(docs);

     // add a recipient to sign the document, identified by name and email we used above
     Signer signer = new Signer();
     signer.setEmail(sApproverEmail);
     signer.setName(sApproverName);
     signer.setRecipientId("1");

     CarbonCopy cc = new CarbonCopy();
     cc.setEmail(sCCEmail);
     cc.setName(sCCName);
     cc.setRecipientId("2");

     // create a signHere tab somewhere on the document for the signer to sign
     // default unit of measurement is pixels, can be mms, cms, inches also
     SignHere signHere = new SignHere();
     signHere.setDocumentId("1");
     signHere.setPageNumber("1");
     signHere.setRecipientId("1");
     signHere.setXPosition("100");
     signHere.setYPosition("710");

     // Can have multiple tabs, so need to add to envelope as a single element list
     List<SignHere> signHereTabs = new ArrayList<SignHere>();      
     signHereTabs.add(signHere);
     Tabs tabs = new Tabs();
     tabs.setSignHereTabs(signHereTabs);
     signer.setTabs(tabs);

     // add recipients (in this case a single signer) to the envelope
     envDef.setRecipients(new Recipients());
     envDef.getRecipients().setSigners(new ArrayList<Signer>());
     envDef.getRecipients().getSigners().add(signer);
     envDef.getRecipients().getCarbonCopies().add(cc);

     // send the envelope by setting |status| to "sent". To save as a draft set to "created"
     envDef.setStatus("sent");

     // instantiate a new EnvelopesApi object
     EnvelopesApi envelopesApi = new EnvelopesApi();

     // call the createEnvelope() API to send the signature request!
     EnvelopeSummary envelopeSummary = envelopesApi.createEnvelope(accountId, envDef);
     logger.debug("Envelope Id "+ envelopeSummary.getEnvelopeId());

     // Delete the PDF file that Logi generated
     Files.delete(path);

1 个答案:

答案 0 :(得分:2)

只有当所有参与方根据收件人的订单完成信封时,CarbonCopy收件人才会收到电子邮件。请查看此link中的Carbon Copies收件人说明。

调试代码并确保在访问createEnvelope之前是否在envDef.getRecipients()。getCarbonCopies()内添加了CarbonCopy值,并且当签名者完成完整的信封过程之后,副本将被发送到碳复制收件人邮件地址,以确保登录到CarbonCopy收件人电子邮件地址,必须收到一封电子邮件以及您只能查看该文件的已完成文件。