nextcloud / nextcloud/mail

Add backend provider mechanism (Decouple from just IMAP)

Open
#8,782 6 comments 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

1. to develop enhancement
Dominant language
JavaScript
Stars
1k
Forks
348
Avg merge
12h 28m
Merged PRs (30d)
91

Description

Is your feature request related to a problem? Please describe.

Lack to support for other transport protocols.

Describe the solution you'd like

What I would like to discuses with you is the possibility of, somehow integrating a backend provider mechanism in to the Mail app, where the app and transport are separate. That way one could integrate communication backends like EWS, ActiveSync, Graph, Google, IMAP, Etc.

Describe alternatives you've considered

None available.

Additional context

To give additional context, I recently created a EWS (Exchange Web Services) integration module that connects to Calendar, Contacts, and Tasks. The EWS protocol also supports Mail, but unfortunately the mail app seems to be hard coded for IMAP, so I was not able to also use EWS to also supply mail functionality. So the user has to configure settings multiple times and all the apps use different ways to communicate.

Here is a link to the EWS integration app.

https://github.com/ksainc/integration_ews

A mail provider back end would be very beneficial since I also plan on creating a module for ActiveSync and Graph, since about 80% of the EWS code is transferable to both those protocols.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files or tests are named. Start by reviewing how the Mail app currently couples mail transport to IMAP, then compare the proposed separation with the linked EWS integration module; done would require an agreed provider mechanism that can support EWS, ActiveSync, Graph, Google, and IMAP.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.