User 7t3chguy asked me to show the roadmap of iRedMail-1.0, so i create this topic for further discussion. please don't hesitate to share your suggestions.
I listed some tasks in bitbucket page below, but it's not complete:
https://bitbucket.org/zhb/iredmail/issu … tatus=open
Below are some major features i want to implement, i will update this topic to add further ideas/tasks.
*) Better ActiveSync support through SOGo
Need some more time to learn SOGo, make sure it works with Microsoft Outlook, Apple Mail.app, iOS devices.
Quote from SOGo mailing list:
There are three kinds of protocols:
* MAPI - This is native Microsoft Exchange protocol provided by Samba/Openchange package and it’s needed when using Outlook 2007,2010 (optionally 2013 too)
* RPC encapsulated in HTTP - This is native Microsoft Exchange protocol used for “Outlook Anywhere” provided by (currently missing) openchange-rpcproxy package and it’s needed when using Outlook 2007 or 2010 (optionally 2013 too) from remote location over WAN
* EAS (exchange active sync) - This is a Microsoft proprietary protocol used for mobile devices (iOS, Android) to access MS Exchange services provided by sogo-activesync package. It is needed when using iPhone or Android devices. EAS support has been added to Outlook 2013 as well.
Outlook 2013 can use either MAPI, RPC or EAS it’s up to you. Due to complexity of samba/openchange most users will likely go for EAS if using Outlook 2013. This option is not available for older Outlook versions so openchange is the only way.
So i will try EAS protocol first.
*) Drop support for Apache, use Nginx only
I know some users need Apache to support some special applications, but there's no reason to support two web service in iRedMail for mail services. I will leave Apache installation/configuration jobs to these customers, and i believe they're quite good at this.
*) Integrate mlmmj for full-featured mailing list management
Mlmmj is a simple and slim mailing list manager, easy to configure, and supports multiple virtual mail domains.
I will write a small daemon program (like iRedAPD) as API server, so that we can manage mlmmj through socket communication or RESTful APIs, separate privileges (we don't need to execute scripts/commands to update mlmmj configurations through web applications like iRedAdmin-Pro).
If you're a experienced Python programmer and interested in this small project, please don't hesitate to contact me, i will share all i know to help you write this program. And your help will speed up iRedMail development.
I don't want to wait for Mailman-3, although it allow you to manage mailing lists with RESTful APIs, but itself is too heavy, and don't have SQL/LDAP support at all. I don't know why they don't implement SQL/LDAP support, maybe no one asked, or they're not interested. It's a great project, and it sucks too.
By the way, i already finished draft mlmmj integration tutorial.
*) postscreen support in Postfix
Needless to say, postscreen is a must have for anti-spam. it was inspired by OpenBSD spamd(8), great idea and great implementation.
*) Switch to slapd.d to configure OpenLDAP
The older style slapd.conf(5) file is still supported, but its use is deprecated and support for it will be withdrawn in a future OpenLDAP release.
Hope we can get extra benefits from this, for example, show admin real-time info of OpenLDAP server in iRedAdmin-Pro, maybe more.
*) Improve SQL structure of "vmail" database. This is for MySQL/MariaDB and PostgreSQL backends.
Merge some SQL tables for easier/better maintenance, avoid duplicate records/data. for example, sender_bcc_domains, sender_bcc_users, recipient_bcc_domains, recipient_bcc_users, they should be merged into 'domain' and 'mailbox' tables. table 'alias_domain' should be merged into 'domain' too.
Note: this is a draft plan, need more deep testing.
SQL structure change impacts iRedAdmin-Pro, so iRedAdmin-Pro will be updated at the same time.