Docusignapi 模板匹配不一致

Docusignapi 模板匹配不一致,docusignapi,Docusignapi,我正在使用SOAP API的CreateEnvelope()方法以草稿状态将文档上载到DocuSign。当我这样做,然后请求发送者令牌启动嵌入式发送会话时,当出现DocuSign接口时,会立即提示我应用匹配的模板 但是,如果我没有启动嵌入式发送会话,而用户登录到DocuSign控制台并打开草稿信封,则不会自动提示他们应用匹配的模板。他们必须手动按下“在所有文档上尝试自动模板匹配”按钮,此时会找到嵌入发送会话中自动找到的相同模板。这种差异有什么原因吗 bool retVal = true; Do

我正在使用SOAP API的CreateEnvelope()方法以草稿状态将文档上载到DocuSign。当我这样做,然后请求发送者令牌启动嵌入式发送会话时,当出现DocuSign接口时,会立即提示我应用匹配的模板

但是,如果我没有启动嵌入式发送会话,而用户登录到DocuSign控制台并打开草稿信封,则不会自动提示他们应用匹配的模板。他们必须手动按下“在所有文档上尝试自动模板匹配”按钮,此时会找到嵌入发送会话中自动找到的相同模板。这种差异有什么原因吗

bool retVal = true;

DocuSignService.DocuSignWS.Envelope envelope = new DocuSignService.DocuSignWS.Envelope();

if (credentials == null)
{
    error = ErrorCode.NO_CREDENTIALS;
    errorMessage = Strings.GetString("STR_DS_NOCREDS");
    return false;
}
envelope.Documents = new DocuSignService.DocuSignWS.Document[itemList.Count];
if (credentials != null)
{
    int index = 0;
    foreach (Document document in itemList)
    {
        DocuSignService.DocuSignWS.Document doc = new DocuSignService.DocuSignWS.Document();
        doc.ID = document.ID.ToString();
        doc.Name = document.Name;
        //get document bytes            
        doc.PDFBytes = document.data;
        envelope.Documents[index] = doc;
        index++;
    }

    Tab[] tabs = new DocuSignService.DocuSignWS.Tab[0];
    envelope.Tabs = tabs;
    envelope.Recipients = new Recipient[0];

    //send?
    envelope.AccountId = credentials.dsaccountid;    
    envelope.Subject = "Documents are ready for your signature";
    envelope.EmailBlurb = "Documents are awaiting your signature.";
    envelope.EnableWetSign = false;

    DocuSignService.DocuSignWS.EnvelopeStatus envStatus = new DocuSignService.DocuSignWS.EnvelopeStatus();

    using (ServiceWrapper client = new ServiceWrapper())
    {
        client.UserName = credentials.loginemail;
        client.Password = credentials.loginpassword;
        client.IntegratorKey = "xxx-xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx";

        try
        {
            envStatus = client.CreateEnvelope(envelope);
        }
        catch (Exception e)
        {
            ErrorViewerWriter.Write(e);
            error = ErrorCode.UPLOADFAILED;
            errorMessage = e.Message;
            return false;
        }
    }
}
return retVal;

信封创建代码是什么样子的?您是否正在为收件人设置CaptiveInfo(
clientUserId
)以使其嵌入?我没有设置CaptiveInfo,事实上在某些情况下,我可能会创建完全没有收件人的信封(它们将在嵌入的发送会话中指定)。我们现在没有实现嵌入式签名,只是嵌入式发送。奇怪的是,我在测试中没有遇到这种情况。不过,如前所述,更多信息可能会有所帮助。如果您想发布,您的信封创建代码可能会产生一些结果。@Ergin我创建了一个简化的信封创建函数,该函数显示了与集成代码相同的问题,并将其编辑到我的原始帖子中。运行此代码,然后获取所创建信封的发件人令牌,将提示用户在嵌入的发送会话期间应用匹配的模板。但是,如果我取消了嵌入式发送,然后在我的应用程序之外登录到devcenter,当我打开完全相同的草稿信封时,不会提示我应用模板(尽管单击模板匹配选项会找到正确的模板).我想答案可能是提示应该在嵌入式发送期间发生,但现在是在打开信封草稿时,但我只是想说清楚。