Hey,
Currently the Autodiscover is "kinda" half baked in Cloudron. It only offers "/.well-known/autoconfig/mail/config-v1.1.xml", which is a good start, but only works for "well made" E-Mail Clients like Thunderbird and it kinds. Normal clients don't check it.
For Outlook and Apple Mail
- Add the following syntax to /Autodiscover/Autodiscover.xml
<?xml version="1.0" encoding="utf-8" ?>
<Autodiscover xmlns="http://schemas.microsoft.com/exchange/autodiscover/responseschema/2006">
<Response xmlns="{{schema}}">
<User>
<DisplayName>{{email}}</DisplayName>
</User>
<Account>
<AccountType>email</AccountType>
<Action>settings</Action>
<Protocol>
<Type>IMAP</Type>
<TTL>1</TTL>
<Server>{{imap.host}}</Server>
<Port>{{imap.port}}</Port>
<LoginName>{{email}}</LoginName>
<DomainRequired>on</DomainRequired>
<DomainName>{{domain}}</DomainName>
<SPA>off</SPA>
<SSL>on</SSL>
<AuthRequired>on</AuthRequired>
</Protocol>
</Account>
<Account>
<AccountType>email</AccountType>
<Action>settings</Action>
<Protocol>
<Type>SMTP</Type>
<TTL>1</TTL>
<Server>{{smtp.host}}</Server>
<Port>{{smtp.port}}</Port>
<LoginName>{{email}}</LoginName>
<DomainRequired>on</DomainRequired>
<DomainName>{{domain}}</DomainName>
<SPA>off</SPA>
<SSL>on</SSL>
<AuthRequired>on</AuthRequired>
</Protocol>
</Account>
</Response>
</Autodiscover>
- Add the SRV Record to the DNS Setup
- service: _autodiscover
- Protocol: _tcp
- Value: [example.example]
- Port: 443
- Priority: 5
- Weight: 0
- TTL: 3600 (or whatever you like)
For iOS (kinda workaround, harder to realize then the above)
iOS is kinda shitty in it. Here is the best. You should add a button for every accessible mailbox to the cp for the users which redirects to the following part. This way, user can easily add the Mail with just one click.
/email.mobileconfig?email=EMAIL_ADDRESS
This file should have the following syntax
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>HasRemovalPasscode</key>
<false/>
<key>PayloadContent</key>
<array>
<dict>
<key>EmailAccountDescription</key>
<string>{{email}}</string>
<key>EmailAccountName</key>
<string>{{email}}</string>
<key>EmailAccountType</key>
<string>EmailTypeIMAP</string>
<key>EmailAddress</key>
<string>{{email}}</string>
<key>IncomingMailServerAuthentication</key>
<string>EmailAuthPassword</string>
<key>IncomingMailServerHostName</key>
<string>{{imap.host}}</string>
<key>IncomingMailServerPortNumber</key>
<integer>{{imap.port}}</integer>
<key>IncomingMailServerUseSSL</key>
<true/>
<key>IncomingMailServerUsername</key>
<string>{{email}}</string>
<key>OutgoingMailServerAuthentication</key>
<string>EmailAuthPassword</string>
<key>OutgoingMailServerHostName</key>
<string>{{smtp.host}}</string>
<key>OutgoingMailServerPortNumber</key>
<integer>{{smtp.port}}</integer>
<key>OutgoingMailServerUseSSL</key>
<true/>
<key>OutgoingMailServerUsername</key>
<string>{{email}}</string>
<key>OutgoingPasswordSameAsIncomingPassword</key>
<true/>
<key>PayloadDescription</key>
<string>Configure Email Settings</string>
<key>PayloadDisplayName</key>
<string>{{email}}</string>
<key>PayloadIdentifier</key>
<string>com.tiliq.autodiscover.com.apple.mail.managed.7A981A9E-D5D0-4EF8-87FE-39FD6A506FAC</string>
<key>PayloadType</key>
<string>com.apple.mail.managed</string>
<key>PayloadUUID</key>
<string>7A981A9E-D5D0-4EF8-87FE-39FD6A506FAC</string>
<key>PayloadVersion</key>
<real>1</real>
<key>SMIMEEnablePerMessageSwitch</key>
<false/>
<key>SMIMEEnabled</key>
<false/>
<key>disableMailRecentsSyncing</key>
<false/>
</dict>
</array>
<key>PayloadDescription</key>
<string>Configure Email Settings</string>
<key>PayloadDisplayName</key>
<string>{{email}}</string>
<key>PayloadIdentifier</key>
<string>com.tiliq.autodiscover</string>
<key>PayloadOrganization</key>
<string>{{domain}}</string>
<key>PayloadRemovalDisallowed</key>
<false/>
<key>PayloadType</key>
<string>Configuration</string>
<key>PayloadUUID</key>
<string>48C88203-4DB9-49E8-B593-4831903605A0</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</plist>
For the current implantation
The well known path is good. But you should also add the following CNAME Record to the domain.
- Name: autoconfig
- Value: [example.example]
- TTL: 3600 (or whatever)
I hope I could at least give some help.