Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Failure to sync contacts with Zoho carddav #534

Closed
am4c130d opened this Issue Jan 11, 2017 · 10 comments

Comments

Projects
None yet
2 participants
@am4c130d
Copy link

commented Jan 11, 2017

vdirsyncer is not syncing with zoho.com for contacts - calendar works perfectly. This is new on Zoho, but allegedly fully compatible with a Mac, and it works perfectly with my Android phone.

I changed the config (shown below), to dispense with the https:// and that yielded a different error - their documentation (https://www.zoho.com/contacts/help.html) for Mac doesn't require the https://.

Thanks

Alan

vdirsyncer version: 0.14.0
contacts server: zoho.com
Python version: 3.5.2+
Operating system: Debian Stretch (+ some Sid)

Config file (just relevant section and fully anonymized)

[pair zoho_contacts]
a = "zoho_server_card"
b = "zoho_local_card"
collections = ["from a", "from b"]
conflict_resolution = "a wins"

[storage zoho_local_card]
type = "singlefile"
path = "~/davfolders/zoho_card/%s.vcf"

[storage zoho_server_card]
type = "carddav"
url = "https://contacts.zoho.com"
username = "XXX@YYY.ZZZ"
password = "PASSWORD"

vdirsyncer -vdebug output

debug: Using 1 maximal workers.
Discovering collections for pair zoho_contacts
debug: PROPFIND https://contacts.zoho.com/
debug: {'Content-Type': 'application/xml; charset=UTF-8', 'Depth': '1', 'User-Agent': 'vdirsyncer'}
debug: 
debug:     <d:propfind xmlns:d="DAV:">
debug:         <d:prop>
debug:             <d:resourcetype />
debug:         </d:prop>
debug:     </d:propfind>
debug:     
debug: Sending request...
debug: 200
debug: {'Strict-Transport-Security': 'max-age=15768000', 'X-Content-Type-Options': 'nosniff', 'Vary': 'Accept-Encoding', 'Cache-Control': 'no-cache', 'Content-Encoding': 'gzip', 'Set-Cookie': 'JSESSIONID=671CB5ACC21676754FCE7C210B78D7D1; Path=/; HttpOnly', 'X-Frame-Options': 'SAMEORIGIN', 'Transfer-Encoding': 'chunked', 'Date': 'Wed, 11 Jan 2017 14:42:59 GMT', 'Server': 'ZGS', 'Content-Type': 'text/html;charset=UTF-8', 'Connection': 'keep-alive', 'X-XSS-Protection': '1'}
debug: 
debug: 
debug: 
debug: 
debug: <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
debug: <html xmlns="http://www.w3.org/1999/xhtml">
debug:     <head>
debug:         <title>Zoho Contacts</title> 
debug:         <style type="text/css">
debug:             body { font-family: Verdana,arial,Helvetica,sans-serif; padding:0; margin:0; }
debug:             a, a:visited { color: #0000EE; margin: 0px 7px; text-decoration: none; }
debug:             a:hover { text-decoration: underline; }
debug:             .logo {	
debug:                 background: transparent url('https://img.zohostatic.com/contacts/140/images/contacts-logo.png') no-repeat;  width: 222px;height: 45px; display: block;
debug:             }
debug:             .tbl { font-family: Verdana,arial,Helvetica,sans-serif; font-size: 11px; }
debug:             .otherProBg { border: 1px solid #E4E4E4;background-color: #F0F0F0;padding: 2px; }
debug:             .otherProBg b { font-size: 12px; }
debug:             .titleMsg .d2 { font-size: 24px; background: transparent url('https://img.zohostatic.com/contacts/140/images/top-middle-login-bg.gif') repeat-x; text-align: center; color: #fff; } 
debug:             /*********** CURVE STARTS **************/
debug:             .crv1, .crv2, .crv3, .crv4 {
debug:                 background: transparent url('https://img.zohostatic.com/contacts/140/images/login_sprite.gif') no-repeat -215px -58px; 
debug:                 height: 11px; width: 9px;
debug:             }
debug:             .crv2 { background-position: -227px -58px; }
debug:             .crv3 { background-position: -215px -70px; }
debug:             .crv4 { background-position: -227px -70px; }
debug:             .crvM { background-color: #F6FAFF; }
debug:             .crvM.t { border-top: 2px solid #f1f5f8; font-size: 1px; }
debug:             .crvM.l { border-left: 2px solid #f1f5f8; }
debug:             .crvM.r { border-right: 2px solid #f1f5f8; }
debug:             .crvM.b { border-bottom: 2px solid #f1f5f8; font-size: 1px; }
debug:             .crvM .dont { color: #5281b4; font-size: 12px; font-weight: bold; margin-bottom: 5px;}
debug:             /*********** CURVE ENDS ****************/
debug:             .signupbg {
debug:                 background: transparent url('https://img.zohostatic.com/contacts/140/images/login_sprite.gif') no-repeat -3px -48px; 
debug:                 color: #FFFFFF; line-height:42px;
debug:                 width: 195px; height: 46px;
debug:                 font-size: 17px; font-weight:bold; font-family: arial;
debug:             }
debug:             .zaddressico, .importico, .orgico, .exportico, .groupico, .chatico {
debug:                 background: transparent url('https://img.zohostatic.com/contacts/140/images/login_sprite.gif') no-repeat -3px -99px; 
debug:                 width: 18px; height: 18px; float: left;
debug:                 margin-right: 7px;
debug:             }
debug:             .importico { background-position: -28px -99px; }
debug:             .orgico { background-position: -58px -98px; }
debug:             .exportico { background-position: -86px -98px; }
debug:             .groupico { background-position: -115px -98px; }
debug:             .chatico { background-position: -141px -99px; }
debug:             .lefttd td {
debug:                 font-size: 12px; color: #006dac; font-weight: bold;
debug:                 height: 100px; vertical-align: top; width: 50%;
debug:             }
debug:             .lefttd td div {
debug:                 font-size: 11px; color: #000; font-weight: normal;
debug:                 padding: 2px 23px; text-align: justify;
debug:             }
debug:         </style>
debug:     </head>
debug:     <body>
debug:         <table align="center" border="0" cellpadding="0" cellspacing="0" width="950" class="tbl">
debug:             <tr><td height="52" width="50%">
debug:                     <span title='Zoho Contacts' class="logo"></span> 
debug:                 </td>
debug:                 <td align="right">
debug:                     <a href='http://www.zoho.com'>Home</a> 
debug:                     <a href='http://forums.zoho.com/'>Forums</a> 
debug:                     <a href='http://blogs.zoho.com/'>Blogs</a> 
debug:                     <a href='http://www.zoho.com/zoho_faq.html'>FAQ</a> 
debug:                     
debug:                     <a href='http://www.zoho.com/contact.html'>Contact Us</a> 
debug:                     
debug:                 </td>
debug:             </tr>
debug:             <tr valign="top">
debug:                 <td colspan="2">
debug:                     <br>
debug:                         <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%">
debug:                             <tr valign="top">
debug:                                 <td colspan="2" class="titleMsg" align="center" height="70">
debug:                                     <table width="100%" border="0" cellpadding="0" cellspacing="0">
debug:                                         <tr>
debug:                                             <td width="8"><img src="https://img.zohostatic.com/contacts/140/images/top-left-login-bg.gif" /></td> 
debug:                                             <td class="d2">A Centralized Contacts Manager</td> 
debug:                                             <td width="8"><img src="https://img.zohostatic.com/contacts/140/images/top-right-login-bg.gif" /></td> 
debug:                                         </tr>
debug:                                     </table>
debug:                                 </td>
debug:                             </tr>
debug:                             <tr>
debug:                                 <td valign="top" style="padding-left: 5px;">
debug:                                     <table border="0" cellpadding="0" cellspacing="0" width="100%" class="lefttd">
debug:                                         <tr>
debug:                                             <td>
debug:                                                 <span class="zaddressico"></span> 
debug:                                                 Zoho Address Book 
debug:                                                 <div>
debug:                                                     Enables storage and access to centralized contacts address book across Zoho services. "Category" support for grouping the contacts. 
debug:                                                 </div>
debug:                                             </td>
debug:                                             <td>
debug:                                                 <span class="importico"></span>
debug:                                                 Import Contacts 
debug:                                                 <div>
debug:                                                     Contacts can be directly imported from web mail services like GMail, Yahoo, Live and also from various local file formats (.csv, .ldif, .vcf). 
debug:                                                 </div>
debug:                                             </td>
debug:                                         </tr>
debug:                                         <tr>
debug:                                             <td> 
debug:                                                 <span class="orgico"></span>Organization Contacts 
debug:                                                 <div>
debug:                                                     Organization user can access the user details of other members in the Organization. 
debug:                                                 </div>
debug:                                             </td>
debug:                                             <td>
debug:                                                 <span class="exportico"></span>Export Contacts 
debug:                                                 <div>
debug:                                                     Supports various file format contacts export like .html, .csv, .vcf, .ldif and outlook csv. 
debug:                                                 </div>
debug:                                             </td>
debug:                                         </tr>
debug:                                         <tr>
debug:                                             <td>
debug:                                                 <span class="groupico"></span>Group Contacts 
debug:                                                 <div>
debug:                                                     Contacts support for the organization/personal groups, which will be accessible to all the members of the group. 
debug:                                                 </div>
debug:                                             </td>
debug:                                             <td>
debug:                                                 <span class="chatico"></span>Integration with Zoho Services 
debug:                                                 <div>
debug:                                                     Send instant messages (Zoho Chat) based on the contacts online status and Send a mail (Zoho mail) to any contacts right from Zoho Contacts.  
debug:                                                 </div>
debug:                                             </td>
debug:                                         </tr>
debug:                                     </table>
debug:                                 </td>
debug:                                 <td valign="top" width="300" style="padding-right: 5px;">
debug:                                     <table border="0" cellpadding="0" cellspacing="0" width="100%">
debug:                                         <tr>
debug:                                             <td width="250">
debug:                                                 <table cellpadding="0" cellspacing="0">
debug:                                                     <tr>
debug:                                                         <td class="crv1"></td><td class="crvM t">&nbsp;</td><td class="crv2"></td>
debug:                                                     </tr>
debug:                                                     <tr>
debug:                                                         <td class="crvM l">&nbsp;</td>
debug:                                                         <td>
debug:                                                             
debug:                                                             <iframe width="280px" height="245px" frameborder="0" scrolling="no" src="https&#x3a;&#x2f;&#x2f;accounts.zoho.com&#x2f;login&#x3f;servicename&#x3d;ZohoContacts&amp;serviceurl&#x3d;https&#x25;3A&#x25;2F&#x25;2Fcontacts.zoho.com&#x25;2Fhome.zc&amp;hidesignup&#x3d;true" style="background-color:#F6FAFF;" allowtransparency="true"></iframe>
debug:                                                         </td>
debug:                                                         <td class="crvM r">&nbsp;</td>
debug:                                                     </tr>
debug:                                                     <tr>
debug:                                                         <td class="crv3"></td><td class="crvM b">&nbsp;</td><td class="crv4"></td>
debug:                                                     </tr>
debug:                                                 </table>
debug:                                             </td>
debug:                                         </tr>
debug:                                         <tr>
debug:                                             <td style="padding: 10px 0px;" width="250">
debug:                                                 <table cellpadding="0" cellspacing="0">
debug:                                                     <tr>
debug:                                                         <td class="crv1"></td><td class="crvM t">&nbsp;</td><td class="crv2"></td>
debug:                                                     </tr>
debug:                                                     <tr>
debug:                                                         <td class="crvM l">&nbsp;</td>
debug:                                                         <td class="crvM" align="center">
debug:                                                             <div style="width: 280px;">
debug:                                                                 <div class="dont">Don&#39;t have a Zoho Account?</div> 
debug:                                                                 <a href="https&#x3a;&#x2f;&#x2f;accounts.zoho.com&#x2f;accounts&#x2f;register&#x3f;servicename&#x3d;ZohoContacts&amp;serviceurl&#x3d;https&#x25;3A&#x25;2F&#x25;2Fcontacts.zoho.com&#x25;2Fhome.zc" style="text-decoration: none;"><div class="signupbg">Sign up For FREE</div> </a>
debug:                                                             </div>
debug:                                                         </td>
debug:                                                         <td class="crvM r">&nbsp;</td>
debug:                                                     </tr>
debug:                                                     <tr>
debug:                                                         <td class="crv3"></td><td class="crvM b">&nbsp;</td><td class="crv4"></td>
debug:                                                     </tr>
debug:                                                 </table>
debug:                                             </td>
debug:                                         </tr>
debug:                                     </table>
debug:                                 </td>
debug:                             </tr>
debug:                             <tr>
debug:                                 <td colspan="2" class="otherProBg" align="center"> 
debug:                                     <b>Other Zoho Products &nbsp;: </b> 
debug:                                     <a href='http://chat.zoho.com/'>Zoho Chat</a> 
debug:                                     <a href='http://writer.zoho.com/'>Zoho Writer</a> 
debug:                                     <a href='http://sheet.zoho.com/'>Zoho Sheet</a> 
debug:                                     <a href='http://show.zoho.com/'>Zoho Show</a> 
debug:                                     <a href='http://docs.zoho.com/'>Zoho Docs</a> 
debug:                                     and 
debug:                                     <a href='http://www.zoho.com'>More ...</a> 
debug:                                 </td>
debug:                             </tr>
debug:                             <tr>
debug:                                 <td colspan="2" align="center">
debug:                                     <div class="footer" style="padding: 10px;">
debug:                                         <a href='http://www.zoho.com'>Home</a> 
debug:                                         
debug:                                         <a href='http://forums.zoho.com/'>Forums</a> 
debug:                                         <a href='http://blogs.zoho.com/'>Blogs</a> 
debug:                                         
debug:                                         <a href='http://www.zoho.com/privacy.html'>Privacy Policy</a> 
debug:                                         <a href='http://www.zoho.com/terms.html'>Terms of Use</a> 
debug:                                         <a href='http://www.zoho.com/contact.html'>Contact Us</a> 
debug:                                         <a href='http://www.zoho.com/company.html'>About Us</a> 
debug:                                     </div>
debug:                                     &copy; 2017 ZOHO Corp. All rights reserved.  
debug:                                 </td>
debug:                             </tr>
debug:                         </table>
debug:                 </td>
debug:             </tr>
debug:         </table>
debug:     </body>
debug: </html>
debug: Given URL is not a homeset URL
debug: GET https://contacts.zoho.com/.well-known/carddav
debug: {'Content-Type': 'application/xml; charset=UTF-8', 'User-Agent': 'vdirsyncer'}
debug: None
debug: Sending request...
debug: 405
debug: {'Date': 'Wed, 11 Jan 2017 14:43:00 GMT', 'Last-Modified': 'Wed, 11 Jan 2017 06:43:00 PST', 'Set-Cookie': 'ce15ee054b=a4e447503a07f90638d5d9c5c847ec65; Path=/', 'Server': 'ZGS', 'Content-Type': 'text/html; charset=UTF-8', 'Transfer-Encoding': 'chunked', 'Connection': 'keep-alive'}

debug: Server does not support well-known URIs.
debug: PROPFIND https://contacts.zoho.com/
debug: {'Content-Type': 'application/xml; charset=UTF-8', 'Depth': '0', 'User-Agent': 'vdirsyncer'}
debug: 
debug:         <d:propfind xmlns:d="DAV:">
debug:             <d:prop>
debug:                 <d:current-user-principal />
debug:             </d:prop>
debug:         </d:propfind>
debug:         
debug: Sending request...
debug: 200
debug: {'Strict-Transport-Security': 'max-age=15768000', 'X-Content-Type-Options': 'nosniff', 'Vary': 'Accept-Encoding', 'Cache-Control': 'no-cache', 'Content-Encoding': 'gzip', 'X-Frame-Options': 'SAMEORIGIN', 'Transfer-Encoding': 'chunked', 'Date': 'Wed, 11 Jan 2017 14:43:00 GMT', 'Server': 'ZGS', 'Content-Type': 'text/html;charset=UTF-8', 'Connection': 'keep-alive', 'X-XSS-Protection': '1'}
debug: 
debug: 
debug: 
debug: 
debug: <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
debug: <html xmlns="http://www.w3.org/1999/xhtml">
debug:     <head>
debug:         <title>Zoho Contacts</title> 
debug:         <style type="text/css">
debug:             body { font-family: Verdana,arial,Helvetica,sans-serif; padding:0; margin:0; }
debug:             a, a:visited { color: #0000EE; margin: 0px 7px; text-decoration: none; }
debug:             a:hover { text-decoration: underline; }
debug:             .logo {	
debug:                 background: transparent url('https://img.zohostatic.com/contacts/140/images/contacts-logo.png') no-repeat;  width: 222px;height: 45px; display: block;
debug:             }
debug:             .tbl { font-family: Verdana,arial,Helvetica,sans-serif; font-size: 11px; }
debug:             .otherProBg { border: 1px solid #E4E4E4;background-color: #F0F0F0;padding: 2px; }
debug:             .otherProBg b { font-size: 12px; }
debug:             .titleMsg .d2 { font-size: 24px; background: transparent url('https://img.zohostatic.com/contacts/140/images/top-middle-login-bg.gif') repeat-x; text-align: center; color: #fff; } 
debug:             /*********** CURVE STARTS **************/
debug:             .crv1, .crv2, .crv3, .crv4 {
debug:                 background: transparent url('https://img.zohostatic.com/contacts/140/images/login_sprite.gif') no-repeat -215px -58px; 
debug:                 height: 11px; width: 9px;
debug:             }
debug:             .crv2 { background-position: -227px -58px; }
debug:             .crv3 { background-position: -215px -70px; }
debug:             .crv4 { background-position: -227px -70px; }
debug:             .crvM { background-color: #F6FAFF; }
debug:             .crvM.t { border-top: 2px solid #f1f5f8; font-size: 1px; }
debug:             .crvM.l { border-left: 2px solid #f1f5f8; }
debug:             .crvM.r { border-right: 2px solid #f1f5f8; }
debug:             .crvM.b { border-bottom: 2px solid #f1f5f8; font-size: 1px; }
debug:             .crvM .dont { color: #5281b4; font-size: 12px; font-weight: bold; margin-bottom: 5px;}
debug:             /*********** CURVE ENDS ****************/
debug:             .signupbg {
debug:                 background: transparent url('https://img.zohostatic.com/contacts/140/images/login_sprite.gif') no-repeat -3px -48px; 
debug:                 color: #FFFFFF; line-height:42px;
debug:                 width: 195px; height: 46px;
debug:                 font-size: 17px; font-weight:bold; font-family: arial;
debug:             }
debug:             .zaddressico, .importico, .orgico, .exportico, .groupico, .chatico {
debug:                 background: transparent url('https://img.zohostatic.com/contacts/140/images/login_sprite.gif') no-repeat -3px -99px; 
debug:                 width: 18px; height: 18px; float: left;
debug:                 margin-right: 7px;
debug:             }
debug:             .importico { background-position: -28px -99px; }
debug:             .orgico { background-position: -58px -98px; }
debug:             .exportico { background-position: -86px -98px; }
debug:             .groupico { background-position: -115px -98px; }
debug:             .chatico { background-position: -141px -99px; }
debug:             .lefttd td {
debug:                 font-size: 12px; color: #006dac; font-weight: bold;
debug:                 height: 100px; vertical-align: top; width: 50%;
debug:             }
debug:             .lefttd td div {
debug:                 font-size: 11px; color: #000; font-weight: normal;
debug:                 padding: 2px 23px; text-align: justify;
debug:             }
debug:         </style>
debug:     </head>
debug:     <body>
debug:         <table align="center" border="0" cellpadding="0" cellspacing="0" width="950" class="tbl">
debug:             <tr><td height="52" width="50%">
debug:                     <span title='Zoho Contacts' class="logo"></span> 
debug:                 </td>
debug:                 <td align="right">
debug:                     <a href='http://www.zoho.com'>Home</a> 
debug:                     <a href='http://forums.zoho.com/'>Forums</a> 
debug:                     <a href='http://blogs.zoho.com/'>Blogs</a> 
debug:                     <a href='http://www.zoho.com/zoho_faq.html'>FAQ</a> 
debug:                     
debug:                     <a href='http://www.zoho.com/contact.html'>Contact Us</a> 
debug:                     
debug:                 </td>
debug:             </tr>
debug:             <tr valign="top">
debug:                 <td colspan="2">
debug:                     <br>
debug:                         <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%">
debug:                             <tr valign="top">
debug:                                 <td colspan="2" class="titleMsg" align="center" height="70">
debug:                                     <table width="100%" border="0" cellpadding="0" cellspacing="0">
debug:                                         <tr>
debug:                                             <td width="8"><img src="https://img.zohostatic.com/contacts/140/images/top-left-login-bg.gif" /></td> 
debug:                                             <td class="d2">A Centralized Contacts Manager</td> 
debug:                                             <td width="8"><img src="https://img.zohostatic.com/contacts/140/images/top-right-login-bg.gif" /></td> 
debug:                                         </tr>
debug:                                     </table>
debug:                                 </td>
debug:                             </tr>
debug:                             <tr>
debug:                                 <td valign="top" style="padding-left: 5px;">
debug:                                     <table border="0" cellpadding="0" cellspacing="0" width="100%" class="lefttd">
debug:                                         <tr>
debug:                                             <td>
debug:                                                 <span class="zaddressico"></span> 
debug:                                                 Zoho Address Book 
debug:                                                 <div>
debug:                                                     Enables storage and access to centralized contacts address book across Zoho services. "Category" support for grouping the contacts. 
debug:                                                 </div>
debug:                                             </td>
debug:                                             <td>
debug:                                                 <span class="importico"></span>
debug:                                                 Import Contacts 
debug:                                                 <div>
debug:                                                     Contacts can be directly imported from web mail services like GMail, Yahoo, Live and also from various local file formats (.csv, .ldif, .vcf). 
debug:                                                 </div>
debug:                                             </td>
debug:                                         </tr>
debug:                                         <tr>
debug:                                             <td> 
debug:                                                 <span class="orgico"></span>Organization Contacts 
debug:                                                 <div>
debug:                                                     Organization user can access the user details of other members in the Organization. 
debug:                                                 </div>
debug:                                             </td>
debug:                                             <td>
debug:                                                 <span class="exportico"></span>Export Contacts 
debug:                                                 <div>
debug:                                                     Supports various file format contacts export like .html, .csv, .vcf, .ldif and outlook csv. 
debug:                                                 </div>
debug:                                             </td>
debug:                                         </tr>
debug:                                         <tr>
debug:                                             <td>
debug:                                                 <span class="groupico"></span>Group Contacts 
debug:                                                 <div>
debug:                                                     Contacts support for the organization/personal groups, which will be accessible to all the members of the group. 
debug:                                                 </div>
debug:                                             </td>
debug:                                             <td>
debug:                                                 <span class="chatico"></span>Integration with Zoho Services 
debug:                                                 <div>
debug:                                                     Send instant messages (Zoho Chat) based on the contacts online status and Send a mail (Zoho mail) to any contacts right from Zoho Contacts.  
debug:                                                 </div>
debug:                                             </td>
debug:                                         </tr>
debug:                                     </table>
debug:                                 </td>
debug:                                 <td valign="top" width="300" style="padding-right: 5px;">
debug:                                     <table border="0" cellpadding="0" cellspacing="0" width="100%">
debug:                                         <tr>
debug:                                             <td width="250">
debug:                                                 <table cellpadding="0" cellspacing="0">
debug:                                                     <tr>
debug:                                                         <td class="crv1"></td><td class="crvM t">&nbsp;</td><td class="crv2"></td>
debug:                                                     </tr>
debug:                                                     <tr>
debug:                                                         <td class="crvM l">&nbsp;</td>
debug:                                                         <td>
debug:                                                             
debug:                                                             <iframe width="280px" height="245px" frameborder="0" scrolling="no" src="https&#x3a;&#x2f;&#x2f;accounts.zoho.com&#x2f;login&#x3f;servicename&#x3d;ZohoContacts&amp;serviceurl&#x3d;https&#x25;3A&#x25;2F&#x25;2Fcontacts.zoho.com&#x25;2Fhome.zc&amp;hidesignup&#x3d;true" style="background-color:#F6FAFF;" allowtransparency="true"></iframe>
debug:                                                         </td>
debug:                                                         <td class="crvM r">&nbsp;</td>
debug:                                                     </tr>
debug:                                                     <tr>
debug:                                                         <td class="crv3"></td><td class="crvM b">&nbsp;</td><td class="crv4"></td>
debug:                                                     </tr>
debug:                                                 </table>
debug:                                             </td>
debug:                                         </tr>
debug:                                         <tr>
debug:                                             <td style="padding: 10px 0px;" width="250">
debug:                                                 <table cellpadding="0" cellspacing="0">
debug:                                                     <tr>
debug:                                                         <td class="crv1"></td><td class="crvM t">&nbsp;</td><td class="crv2"></td>
debug:                                                     </tr>
debug:                                                     <tr>
debug:                                                         <td class="crvM l">&nbsp;</td>
debug:                                                         <td class="crvM" align="center">
debug:                                                             <div style="width: 280px;">
debug:                                                                 <div class="dont">Don&#39;t have a Zoho Account?</div> 
debug:                                                                 <a href="https&#x3a;&#x2f;&#x2f;accounts.zoho.com&#x2f;accounts&#x2f;register&#x3f;servicename&#x3d;ZohoContacts&amp;serviceurl&#x3d;https&#x25;3A&#x25;2F&#x25;2Fcontacts.zoho.com&#x25;2Fhome.zc" style="text-decoration: none;"><div class="signupbg">Sign up For FREE</div> </a>
debug:                                                             </div>
debug:                                                         </td>
debug:                                                         <td class="crvM r">&nbsp;</td>
debug:                                                     </tr>
debug:                                                     <tr>
debug:                                                         <td class="crv3"></td><td class="crvM b">&nbsp;</td><td class="crv4"></td>
debug:                                                     </tr>
debug:                                                 </table>
debug:                                             </td>
debug:                                         </tr>
debug:                                     </table>
debug:                                 </td>
debug:                             </tr>
debug:                             <tr>
debug:                                 <td colspan="2" class="otherProBg" align="center"> 
debug:                                     <b>Other Zoho Products &nbsp;: </b> 
debug:                                     <a href='http://chat.zoho.com/'>Zoho Chat</a> 
debug:                                     <a href='http://writer.zoho.com/'>Zoho Writer</a> 
debug:                                     <a href='http://sheet.zoho.com/'>Zoho Sheet</a> 
debug:                                     <a href='http://show.zoho.com/'>Zoho Show</a> 
debug:                                     <a href='http://docs.zoho.com/'>Zoho Docs</a> 
debug:                                     and 
debug:                                     <a href='http://www.zoho.com'>More ...</a> 
debug:                                 </td>
debug:                             </tr>
debug:                             <tr>
debug:                                 <td colspan="2" align="center">
debug:                                     <div class="footer" style="padding: 10px;">
debug:                                         <a href='http://www.zoho.com'>Home</a> 
debug:                                         
debug:                                         <a href='http://forums.zoho.com/'>Forums</a> 
debug:                                         <a href='http://blogs.zoho.com/'>Blogs</a> 
debug:                                         
debug:                                         <a href='http://www.zoho.com/privacy.html'>Privacy Policy</a> 
debug:                                         <a href='http://www.zoho.com/terms.html'>Terms of Use</a> 
debug:                                         <a href='http://www.zoho.com/contact.html'>Contact Us</a> 
debug:                                         <a href='http://www.zoho.com/company.html'>About Us</a> 
debug:                                     </div>
debug:                                     &copy; 2017 ZOHO Corp. All rights reserved.  
debug:                                 </td>
debug:                             </tr>
debug:                         </table>
debug:                 </td>
debug:             </tr>
debug:         </table>
debug:     </body>
debug: </html>
error: The server returned something vdirsyncer doesn't understand. Error message: InvalidXMLResponse('Invalid XML encountered: undefined entity &nbsp;: line 146, column 97\nDouble-check the URLs in your config.',)
error: While this is most likely a serverside problem, the vdirsyncer devs are generally interested in such bugs. Please report it in the issue tracker at https://github.com/pimutils/vdirsyncer/issues
error: 1 out of 1 tasks failed.
@untitaker

This comment has been minimized.

Copy link
Member

commented Jan 11, 2017

This appears to be a bug on Zoho's side. However, if other clients work please provide a debug log of their traffic such that I can imitate their behavior.

In any case I would report this to Zoho.

@untitaker

This comment has been minimized.

Copy link
Member

commented Jan 11, 2017

https:// isn't required in Mac's case because they appear to autodetect that, we don't.

@am4c130d

This comment has been minimized.

Copy link
Author

commented Jan 11, 2017

Thanks - is the Zoho issue that they don't respond to the well known URI request, so vdirsyncer cannot find the addressbooks? I don't have access to a Mac, but will try and get a log from my phone.

Thanks

Alan

@untitaker

This comment has been minimized.

Copy link
Member

commented Jan 11, 2017

Ah, try https://contacts.zoho.com/.well-known/carddav as URL in your config. If that works they still have a bug.

@am4c130d

This comment has been minimized.

Copy link
Author

commented Jan 11, 2017

Failed - but different error message (hopefully I marked it down correctly this time)

debug: Using 1 maximal workers.
Discovering collections for pair zoho_contacts
debug: PROPFIND https://contacts.zoho.com/.well-known/carddav/
debug: {'Depth': '1', 'User-Agent': 'vdirsyncer', 'Content-Type': 'application/xml; charset=UTF-8'}
debug: 
debug:     
debug:         
debug:             
debug:         
debug:     
debug:     
debug: Sending request...
debug: 404
debug: {'Transfer-Encoding': 'chunked', 'Set-Cookie': 'ce15ee054b=5da8287b5ff28f2f2655f121794a7b3e; Path=/', 'Date': 'Wed, 11 Jan 2017 15:16:42 GMT', 'Server': 'ZGS', 'Connection': 'keep-alive'}

debug: Given URL is not a homeset URL
debug: GET https://contacts.zoho.com/.well-known/carddav
debug: {'User-Agent': 'vdirsyncer', 'Content-Type': 'application/xml; charset=UTF-8'}
debug: None
debug: Sending request...
debug: 405
debug: {'Last-Modified': 'Wed, 11 Jan 2017 07:16:43 PST', 'Server': 'ZGS', 'Transfer-Encoding': 'chunked', 'Date': 'Wed, 11 Jan 2017 15:16:43 GMT', 'Content-Type': 'text/html; charset=UTF-8', 'Connection': 'keep-alive'}

debug: Server does not support well-known URIs.
debug: PROPFIND https://contacts.zoho.com/.well-known/carddav/
debug: {'Depth': '0', 'User-Agent': 'vdirsyncer', 'Content-Type': 'application/xml; charset=UTF-8'}
debug: 
debug:         
debug:             
debug:                 
debug:             
debug:         
debug:         
debug: Sending request...
debug: 404
debug: {'Transfer-Encoding': 'chunked', 'Date': 'Wed, 11 Jan 2017 15:16:43 GMT', 'Server': 'ZGS', 'Connection': 'keep-alive'}

error: Unknown error occured: Not Found
error: Use `-vdebug` to see the full traceback.
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/cli/utils.py", line 518, in _worker
debug:     func(wq=self)
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/cli/tasks.py", line 88, in discover_collections
debug:     rv = collections_for_pair(pair=pair, **kwargs)
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/cli/utils.py", line 220, in collections_for_pair
debug:     list_collections=list_collections))
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/cli/utils.py", line 332, in _collections_for_pair_impl
debug:     a_discovered = _discover_from_config(pair.config_a)
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/cli/utils.py", line 268, in _discover_from_config
debug:     return handle_storage_init_error(cls, config)
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/cli/utils.py", line 264, in _discover_from_config
debug:     discovered.extend(cls.discover(**config))
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/storage/dav.py", line 223, in discover
debug:     for c in self.find_collections():
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/storage/dav.py", line 199, in find_collections
debug:     return self._find_collections_impl(self.find_home())
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/storage/dav.py", line 175, in find_home
debug:     url = self.find_principal()
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/storage/dav.py", line 160, in find_principal
debug:     data=body)
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/storage/dav.py", line 346, in request
debug:     return utils.http.request(method, url, session=self._session, **more)
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/utils/http.py", line 75, in request
debug:     raise exceptions.NotFoundError(r.reason)
error: 1 out of 1 tasks failed.
@untitaker

This comment has been minimized.

Copy link
Member

commented Jan 11, 2017

You need <pre> instead of <code> for multiline code.

@untitaker

This comment has been minimized.

Copy link
Member

commented Jan 11, 2017

That doesn't look too good then. I'd contact Zoho.

@am4c130d

This comment has been minimized.

Copy link
Author

commented Jan 11, 2017

Thanks for your help and pointers

I've made some progress. changing the server address to

https://contacts.zoho.com/carddav/XXX@YYY.ZZZ/default/contacts  

correctly discovers the account, but syncing fails.

The debug shows lots of (the individual vcf file names change)
debug: Already normalized: '/carddav/XXX@YYY.ZZZ/default/contacts/1096755000000012579.vcf'

then

debug: REPORT https://contacts.zoho.com/carddav/XXX@YYY.ZZZ/default/contacts/
debug: {'Content-Type': 'application/xml; charset=UTF-8', 'User-Agent': 'vdirsyncer'}
debug: 
debug:             
debug:                 
debug:                     
debug:                     
debug:                 

and then lots of

debug: <D:href>/carddav/XXX@YYY.ZZZ/default/contacts/1096755000000012772.vcf</D:href>

for the same vcf files before finally

debug:             
debug: Sending request...
debug: 500
debug: {'Transfer-Encoding': 'chunked', 'Server': 'ZGS', 'Date': 'Wed, 11 Jan 2017 15:33:53 GMT', 'Connection': 'keep-alive'}

error: Unknown error occured for zoho_contacts/contacts: 500 Server Error: Internal Server Error for url: https://contacts.zoho.com/carddav/XXX@YYY.ZZZ/default/contacts/
error: Use `-vdebug` to see the full traceback.
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/cli/tasks.py", line 72, in sync_collection
debug:     partial_sync=pair.partial_sync
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/sync.py", line 241, in sync
debug:     a_info.prepare_new_status()
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/sync.py", line 134, in prepare_new_status
debug:     if prefetch else ()):
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/storage/dav.py", line 441, in get_multi
debug:     headers=self.session.get_default_headers()
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/storage/dav.py", line 346, in request
debug:     return utils.http.request(method, url, session=self._session, **more)
debug:   File "/home/alan/.local/lib/python3.5/site-packages/vdirsyncer/utils/http.py", line 77, in request
debug:     r.raise_for_status()
debug:   File "/home/alan/.local/lib/python3.5/site-packages/requests/models.py", line 893, in raise_for_status
debug:     raise HTTPError(http_error_msg, response=self)
error: 1 out of 2 tasks failed.

"Lots of" is hundreds (I have about 700 contacts - its not all 700).

If this remains an issue with Zoho, please confirm, and I'll work with them - thanks again for your help.

@untitaker

This comment has been minimized.

Copy link
Member

commented Jan 11, 2017

The line debug: 500 indicates that the server reports Internal Server Error, at this point there's certainly a bug in the server.

I have no idea how the other clients can work under those conditions.

@am4c130d

This comment has been minimized.

Copy link
Author

commented Jan 11, 2017

Tks - I've closed the issue and will push Zoho to look at it.

@am4c130d am4c130d closed this Jan 11, 2017

@untitaker untitaker removed the type: bug label Mar 7, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.