How can we help?




Follow

atmail suite - 8.5.0 / atmail dav server - 8.5.0 / atmail mail server - 8.5.0

Stewart -

Release overview

Release Date: 11 March 2019
Release Versions: atmail suite - 8.5.0 / atmail dav server - 8.5.0 / atmail mail server - 8.5.0

Breaking Changes

OAuth

OAuth Configuration file format has been changed to support multiple 3rd party accounts. Refer to 3rd party accounts section for more details.

Database Schema

Database Schema has been updated.

New Features

Product Component Title Summary Dependencies Other

atmail suite

atmail suite Calendars Shared Calendars
  • Introducing shared calendars
  • Able to share your events with others
atmail DAV

 

atmail suite Mail 3rd Party Accounts
  • Able to add 3rd party accounts such as Yahoo!, Outlook & Other IMAP
atmail API  
atmail suite My Files 3rd Party Storage
  • Able to attach from 3rd party storage providers
  • Able to save to 3rd party storage
    • Dropbox
    • OneDrive
    • Google Drive

atmail API

DropBox, OneDrive, Google Drive API applications must be registered

 
atmail suite Mail

Advanced Search

  • Able to provide advanced search criteria for finding things in your mailboxes

atmail API

IMAP server MUST support UID SEARCH
atmail suite Mail Printing
  • Printing messages now contain the attachments
atmail API  

atmail mail server

mail server administration General
  • Admin User Lockout - Disable Lockout
  • Support Integration
  • Added migrateStatus to track potential migration statuses for users
   

Product Improvements

Product
Component
Title
Summary
atmail suite Mail / API / DAV Performance issues
  • Improved SQL performance for large installations
  • Improved My Files UI performance
  • Improved resource usage
    • Redis pool
atmail suite Mail Update translation
  • Improved translations
atmail suite Mail Empty Trash
  • added empty trash button
atmail suite Mail Translation
  • New language: Swedish(Svenska)
atmail suite API Support for external storage
  • Update service account modal and add ability to add storage accounts
  • Add configurable file store back ends
atmail suite API Thread management
  • Enable single mail delete in thread
atmail suite API Administration
  • apiadmin add ability to provision dav only
atmail suite Mail Calendars
  • Shared calendars
    • Show a warning confirmation dialog when sharing default calendar
    • User can set a default save calendar on settings page
  • Attention spent addressing multiple issues around calendaring functions
atmail suite Settings Sieve
  • Improved advanced sieve support
atmail suite Mail Email Groups
  • Improved support for emailing groups
atmail suite API Mime headers
  • Improved mime processing support for headers with encoded newlines
  • Corrected invalid headers set when sending a previously saved draft
atmail suite Mail/API Combined Quota
  • Improved combined quota error resilence
atmail suite Mail Composer
  • In responsive mode composer options now available
mail server Branding  
  • Clean up confusing brand settings
  • Improved branding UX flow of webmail integration plugin for atmail mail server
  • New theme settings for atmail suite integrations (edit form)
  • RBAC improvement allowing administrators to access the themes created by sub-administrator roles

Bug Fixes

atmail suite

  • Calendar more menu icons do not align with gear icon
  • Hide 'Shared Calendars' menu header when no shared calendars
  • Save to user specified default calendar when create new calendar events
  • MS displays atmail logo with old tag line
  • My Files not loading console error states quotaTotal
  • UI Issues with sieve
  • Can't mail to some groups
  • Calendar display as object object issue
  • Email not rendered when switch back to previous email
  • Updating calendar reminder removes forwarding setting
  • Infinite loads on renamed folder
  • Publish config failed after upgrading to v841
  • Unable to rename shared calendar by user with read/write permission
  • Shared calendar - unable to click OK to close the shared pop up box for no updates done
  • Shared Calendar - Update Contact email but contact saved in shared was not updated
  • Shared Calendar - Event Email - Open in Calendar Button does not go to updated event
  • Shared Calendar - Event Email Invitation Reply is Blank when the event is declined
  • Shared Calendar - unable to add additional user for calendar with read/write permission
  • Calendar sharing needs better placeholders
  • Shared Calendar - Texts overflow on the calendar app
  • Shared Calendar - Tick boxes gets unticked when 3dots (more menu) are selected
  • Shared Calendar - unable to delete own calendar with user's read/write permission
  • Shared Calendar - Default Calendar can be deleted which causes a problem in creating an event
  • Shared Calendar - issues with tick/untick checkboxes in selecting calendars
  • Shared Calendar - Adding User in Shared Box,empties (or changes) the calendar option in Add Event
  • Shared Calendar - Similar calendar names in shared and user's calendar shows only one name in calendar field add event
  • Can't load Settings >Calendar
  • unsupportedSort errors
  • Failed account cached
  • Redis pool value causing many TIME_WAIT
  • Shared Calendar - Unable to update to a new user or owned calendar. Calendar dropdown is disabled after update
  • Shared Calendar - untick visible option in calendar settings does not apply
  • Can add same address to readonly and write address field in calendar
  • Can add self to shared calendar
  • Can't select calendar on edit
  • Shared Calendar - all untick boxes automatically ticked when calendar is set to default in settings
  • Mime headers with encoded newlines are not processed correctly
  • Single delete email in thread and then reply has no reply inline and doesn't reply to the expected email
  • Drafts sent with bad headers
  • Simply Better. Business class email. Needs to be removed
  • Multiple Drafts Saving in Thread
  • Unable to decline invitation to event, originating from Microsoft Exchange
  • Edit & send of an old draft email has not sent the edit, but instead the original draft. Renders incorrectly.
  • Combined Quota: New accounts have 0 bytes in MyFiles until you go to settings > Mail
  • Calendar - Rename allows similar calendar names
  • Calendar Name - Blank Name Accepted when using space bar to input
  • Long calendar name tooltip shouldn't show on small names
  • Calendar - About - long calendar name overflows the box
  • Calendar - No selected calendar makes the add event screen go blank
  • Event created in ical with reminder shows blank reminder in the calendar app
  • Getting Errors from apiserver about UIDs 
  • iCal can switch shared calendar to default calendar with attendee
  • Renaming of a shared calendar doesn't change the name
  • Webmail deletes the event when attendee declines but ical still shows the event
  • Moving event opens edit pane causes bad UX
  • Multiple events on one data don't clear when pulled from popover
  • Events with attendee but uncheck send invitation email causes UPSERT_EVENT_ERROR and not saved
  • Events with unchecked send invitation email is saved checked
  • No event deleted notification when event is in edit mode after deletion
  • 30+ more events in one day needs a scroll bar for month view
  • When sending an email as a reply to self from broken thread, the email is also sent to myself
  • Calendar broken when refresh page
  • Clearing all fields in autoreply complains of no subject
  • My Files: Preview zip(or file) > refresh = infinite load
  • My Files: share URL isn't generated
  • When printing mail, no attachments are reported
  • Fix all race conditions reported by the golang race detector
  • In responsive mode composer options are hidden
  • Unable to send/receive email using Outlook/Yahoo
  • Unable to delete folder/subfolders using outlook account
  • Can't add yahoo accounts, GET_SERVICE_ACCOUNTS_ERROR on console
  • Can't add folders using yahoo account
  • Adding IMAP account results to unmounting of SETTINGS (failed to load)
  • Global settings cache is not cleared when admin uploads a new theme
  • IMAP accounts receives email in archive not in inbox
  • Shared Calendars has renaming inconsistencies/issues
  • Tidy up console.logs
  • Correctly set theme background color in theme selection
  • Modified muiappbar does not allow menu icon

atmail mail server

  • MS displays atmail logo with old tag line
  • Download Result button generates webpage instead of data

atmail DAV server 

  • Cannot disable DAV Cache

Known Issues Outstanding

  • atmail suite

    • API call getContacts → blank {} properties is treated as NULL
    • atmail suite → When receiving a thread update, the avatar is not updated to latest replied user
    • Some mail is not reported due to virtual folder dovecot bug when using file based indexes (clear virtual indexes as a workaround)
    • RPM script doesn't output the right configure command as shown in help centre
    • Transient password accounts will not work if the domain is switch back to normal logins and visa versa
    • Combined quota will only update on login if SSE is disabled or in error.
    • Mini calendar isn't formatted correctly for 12h time. AM and PM are placed on new lines and the text is too small.
    • Calendar entries that are not parsed correctly by the DAV server will not be displayed
    • SSE not idling on selected mailbox
    • Advanced search's "has attachment" option is wrapped on some screens with high resolutions.
    • Repetitive error when attempting to decline an event invitation that originates in Outlook.
  • atmail mail server

    • On first installation, if a domain is created before services are published the domain will be unavailable to the API.
  • atmail DAV server

    • quota allocated for storage cannot be changed via UI, DB only.
    • Shared calendar renaming only updates name itself, not all shared calendar renamed.

Guides & Documentation

Upgrading to 8.5.0 from 8.4.x

Configuration Changes

The JMAP apiserver will require the below configuration changes to allow uploads to storage providers as well as provision users with 3rd party storage access. These entries should edited/added to your /etc/atmail/api/api.conf.

SHARE_URL=https://yourdomain.com/api/download?blobId={blobId}&name={name}&accountId={accountId}&accessToken={accessToken}

###
### Settings
###

PROVISION=15

When upgrading from 8.5.0 to 8.4.x please ensure you run the schema upgrade tools:

/usr/bin/apiserver -c /etc/atmail/api/api.conf -console -V --updatedb
cd /usr/share/atmail/dav/; php ./scripts/update.php
cd /usr/share/atmail/mailserver/webui; php ./utilities/db.php

Then restart required services:

systemctl restart apiserver nginx php-fpm

Please be aware of the following schema changes:

Database for apiserver:

alter table AccountSettings change Settings Settings MEDIUMTEXT;
ALTER TABLE GlobalSettings ADD GoogleDrivePickerConfig TEXT NOT NULL;
ALTER TABLE GlobalSettings ADD DropboxPickerConfig TEXT NOT NULL;
ALTER TABLE GlobalSettings ADD OnedrivePickerConfig TEXT NOT NULL;

To keep dashboard logs visible please ensure the following is set in atmail mail server:

replace into Config enable_dashboard_log (section, keyName, keyValue, keyType) values ('global''enable_dashboard_log''1''Bool');

Ensure correct RBAC permissions are set (dashboard_logs_webmaillog_view) on the administration users you wish to provide dashboard logs for.

SkipPasswordValidation has been removed from the API. This functionality has been replaced by IMAPMasterPassword.

StrictContentTypeScanning has been added to the API. This configuration allows very strict content scanning if enabled. Setting this will not allow your users to upload password protected items.

Feature Guides

DAV Authentication to IMAP

DAV can be configured to authenticate against your IMAP service. This enables the combined quota feature. To enable this feature please configure the following in the mail server API:

Services → Dav service : (As seen below)

Screenshot_from_2019-03-11_13-09-23.png

Once configured, a publishconfig is required to apply the changes.

Combined Quota

Requires DAV Authentication to IMAP

Combined quota can be enabled to share storage quota calculations between My Files and IMAP storage. To enable this feature please configure the following in the mail server API:

Services → Dav service : Enable combined quota → ON

Then configure the mailserver settings for database access.

Screenshot_from_2019-03-11_11-33-48.png

After publishing the combined quota mode will be enabled.

My Files - S3

My files can now be stored on an AWS S3 bucket.

Requirements:

To configure this feature modify the DAV Config file in /etc/atmail/dav/config.php and append the below entries to end of the file. This avoids conflicts with any publishes from the WebAdmin console.

define('ENABLE_STORAGE', true);
define('STORAGE_ENGINE', 'S3');
define('STORAGE_S3_CONFIG', '/etc/atmail/dav/aws.s3.json');
define('STORAGE_S3_BUCKET', '<your s3 bucket>');

Once saved, create your aws.s3.json file that will hold the access credentials in /etc/atmail/dav/aws.s3.json.

{
    "includes": ["_aws"],
    "services": {
        "default_settings": {
            "params": {
                "credentials": {
                    "key": "<s3 key>",
                    "secret": "<s3 secret>"
                },
                "region": "us-east-1"
            }
        }
    }
}

Once saved, restart php-fpm for the configurations to take effect

systemctl restart php-fpm

3rd Party Storage

When downloading attachments the user has the option to download to their preferred 3rd party storage provider.

Please see below for provisioning of each provider.

OneDrive Applciation Setup

  1. go to https://apps.dev.microsoft.com
  2. Add an app
  3. Enter name
  4. Click on Generate New Password
  5. Add Web Platform
  6. Enter redirect url https://yourdomain.com/onedrivepicker.html (must be https and a valid SSL certificate)
  7. Save
  8. You now have an application ID to use in the feature guide

Dropbox Application Setup

  1. Create an app using the developer console for Dropbox https://www.dropbox.com/developers/apps
  2. Apply for a Dropbox API
  3. Full dropbox access
  4. Name your application
  5. Create App
  6. Modify the Chooser/Saver domains to include your webmail hostname
  7. You now have an application ID to use in the feature guide

Google Drive Application Setup

  1. Create an a new project configuration in the developer console for Google https://console.developers.google.com/projectcreate
  2. Using https://console.developers.google.com/apis/dashboard click "enable APIs and Services"
  3. Ensure both Google Drive API and Google Picker API are enabled
  4. Return to https://console.developers.google.com/apis/dashboard and click credentials
  5. Create credentials
    1. API Key
      1. Give the key a name
      2. Select HTTP Referrers (web site) as the application restriction
      3. Add your webmail hostname to Accept requests from these HTTP referrers
      4. In the API restrictions tab, ensure there are no restrictions applied
      5. Save
      6. This key is your devKey
    2. OAuth client ID
      1. Name your oauth
      2. Add your webmail hstname to authorized javascript origins
      3. Add your oauth callback to the authorized redirect URIs (i.e. http://webmail/api/oauthcb)
      4. The client ID is your appId

This feature can be turned on via the Webmail Administration plugin in the atmail mail server, or via the apiadmin utility.

By following the setup guides below, you must get an application ID per storage provider. Once you have your desired storage provider application ID apply the key as below.

The following properties should be set to true for your domain using the Admin > Services > Webmail Settings tab:

Dropbox Config →

{"appId""YOUR_APPID"}

Google Drive Config →

{"appId""YOUR_APPID""devKey""YOUR_APPLICATION_ID"}

OneDrive Config →

{"appId""YOUR_APPID""redirectUrl""https://yourdomain.com/onedrivepicker.html"}

Here yourdomain.com is the webmail domain.

Or via apiadmin:

apiadmin setting set DropboxPickerConfig '{"appId": "YOUR_APPID"}'--hostname [YOUR_WEBMAIL_HOSTNAME]
apiadmin setting set GoogleDrivePickerConfig '{"clientId": "YOUR_APPID", "developerKey": "YOUR_DEVELOPER_KEY"}'--hostname [YOUR_WEBMAIL_HOSTNAME]
apiadmin setting set OnedrivePickerConfig '{"appId": "YOUR_APPID", "redirectUrl": "https://yourdomain.com/onedrivepicker.html"}'--hostname [YOUR_WEBMAIL_HOSTNAME]

After the apiserver has been restarted this feature will be available to webmail users.

A user can then use this feature via the composer attachment to attach from an external storage provider.

3rd Party Mail Accounts

3rd party mail accounts such as external IMAP, Outlook, Yahoo, Gmail can be added to your mail interface.

To enable this feature for outlook and gmail, you need to populate an oauth file (eg. /etc/atmail/api/oauth.json) in the following format and set OAUTH_CREDENTIAL_FILE in /etc/atmail/api/api.conf.

OAUTH_CREDENTIAL_FILE=/etc/atmail/api/oauth.json
{
    "outlook": {
        "clientId""[CLIENT_ID]",
        "authUrl""https://login.live.com/oauth20_authorize.srf",
        "tokenUrl""https://login.live.com/oauth20_token.srf",
        "clientSecret""[CLIENT_SECRET]",
        "redirectUrl""http://[YOUR_JMAP_DOMAIN/oauthcb",
        "scopes": [
            "openid",
            "offline_access",
            "wl.imap"
        ]
    },
    "gmail": {
        "clientId""[CLIENT_ID]",
        "authUrl""https://accounts.google.com/o/oauth2/auth",
        "tokenUrl""https://accounts.google.com/o/oauth2/token",
        "clientSecret""[CLIENT_SECRET]",
        "redirectUrl""http://[YOUR_JMAP_DOMAIN/oauthcb",
        "scopes": [
            "https://mail.google.com/",
        ]
    }
}

To turn this feature on via the webmail administration plugin in the atmail mail server, please set the following properties to On in Admin > Services > Webmail Settings tab:

Allow Gmail accounts → On
Allow Outlook accounts → On
Allow Yahoo accounts → On

Alternatively, using the apiadmin utility:

apiadmin setting set AllowIMAPAccounts true--hostname [YOUR_WEBMAIL_HOSTNAME]
apiadmin setting set AllowMultipleAccounts true--hostname [YOUR_WEBMAIL_HOSTNAME]
apiadmin setting set AllowOutlookAccounts true--hostname [YOUR_WEBMAIL_HOSTNAME]
apiadmin setting set AllowYahooAccounts true--hostname [YOUR_WEBMAIL_HOSTNAME]
apiadmin setting set AllowGoogleAccounts true--hostname [YOUR_WEBMAIL_HOSTNAME]

After restarting the apiserver, the feature is now enabled for the webmail hostname.
Webmail users can then access the feature by using Settings > Account > Add account and selecting the desired external account to add. After successfully adding an account the user can use the account picker drop down to select the desired account.

In transient password mode, the user will be prompted for a password to access the account each login.

Advanced Search

To access the advanced search feature, click the drop down icon on the right of the search box. Once clicked an advanced search panel is presented that allows specific search criteria. Clicking the search icon in the drop down dialog will then execute an advanced search on the current mailbox.

Shared Calendars

Shared calendars are available for all users on the system. This can be accessed using the 'gear' icon next to the calendar you wish to share with a user. Currently only users within the system can be shared with. You can set read or read/write permission on each calendar.

Have more questions? Submit a request

Comments


Contact our support team


+61 (7) 5357 6605       support@atmail.com