OfflineIMAP / offlineimap

Read/sync your IMAP mailboxes (python2) [LEGACY: move to offlineimap3]
http://www.offlineimap.org
Other
1.78k stars 361 forks source link

Office 365: auto-configure folderfilter by default #450

Open mcrosson opened 7 years ago

mcrosson commented 7 years ago

In an attempt not to re-open #62 I'm opening this ticket to alert the author of more Office 365 / Exchange folders beyond "Calendar" that need to be filtered. Note I'm NOT asking for updates to the app to accommodate, merely pointing out more instances that have trouble. They may deserve to be added to the FAQ alongside "Calendar".

Full set of folders requiring filter (for me): folderfilter = lambda folder: folder not in ['Calendar', 'Calendar/Birthdays', 'Calendar/Sub Folder 1', 'Calendar/Sub Folder 2', 'Calendar/United States holidays', 'Contacts', 'Contacts/Sub Folder 1', 'Contacts/Sub Folder 2', 'Contacts/Skype for Business Contacts', 'Deleted Items', 'Drafts', 'Journal', 'Junk Email', 'Notes', 'Outbox', 'Sync Issues', 'Sync Issues/Conflicts', 'Sync Issues/Local Failures', 'Sync Issues/Server Failures', 'Tasks', 'Tasks/Sub Folder 1', 'Tasks/Sub Folder 2']

nicolas33 commented 7 years ago

Thank you very much for this report. Starting a new issue was the good thing to do. ,-) I'll improve the doc.

chris001 commented 7 years ago

It'd be brilliant to auto-detect the type of imap server - Dovecot, Cyrus, Exchange, Yahoo, Gmail, etc. At that point, it'd be simple to auto activate a set of corresponding filters, such as these.

nicolas33 commented 7 years ago

The really problematic servers are Microsoft's products. Actually, auto-detection might be the good thing to do at that point. Not only for filtering. I don't know.

As for any other feature, we would need to see patches to estimate if it's too much addition and if this fits well within the current code base. ,-)

nicolas33 commented 7 years ago

Documentation updated: http://www.offlineimap.org/doc/FAQ.html#exchange-and-office365.

chris001 commented 7 years ago

True, Every commercial IMAP mail server likes to "innovate" on top of the standards, trying to make the experience more customized for their users, and lock them in so they never leave. Gmail, Exchange the most well known ones. This is why it'd be brilliant to dynamically auto-detect the server, and by default, activate relevant filters and use different IMAP conversation behaviors.

Any remote email address ending in @gmail.com should automatically use the gmail behavior, and have its IMAP server, if missing, set to imap.gmail.com, port to 993, SSL on, and login with X-OAUTH2. Any remote email address ending in @hotmail.com or @outlook.com, similarly has widely known defaults.

In fact, using the Mozilla ISPDB python module, for Thunderbird default email settings configuration, would be brilliant help for users: https://github.com/dveeden/ispdb Users would usually only enter their email address for the remote, and most of the time, all other details would be satisfied by the ISPDB defaults, and set by the app. If no defaults available, an error message would prompt them to find and enter them.

chris001 commented 6 years ago

Following up from #507 on the topic of auto-detecting which type of IMAP server we are talking to.

  1. Visit http://autoconfig.example.com/mail/config-v1.1.xml?emailaddress=info@example.com (where info@example.com is a valid email address delivered to a single local mailbox). You should see an XML file in which you recognize the settings you've provided. If you get an empty response, check the error log of your web server.
  2. Visit https://autoconfig.example.com/mail/config-v1.1.xml?emailaddress=info@example.com to test your SSL setup. You should see the same file. If this does not work, check your SSL setup. If everything appears to work, test by adding the mail account to Thunderbird and Outlook itself.

EDIT Opening new issue instead...