AppSuite:OX Mail: Difference between revisions

From Open-Xchange
No edit summary
No edit summary
Line 153: Line 153:
  $ zypper ref
  $ zypper ref
  $ zypper in open-xchange-mail open-xchange-mobile-push-restricted
  $ zypper in open-xchange-mail open-xchange-mobile-push-restricted
= Setup Description for Mobile Push =
== Setup of the Open-Xchange Node==
The existing push framework of the Open-Xchange Middleware has been extended by the capability to spawn "permanent" listeners for incoming new message deliveries. Up to that point the life cycle for a listener was bound to at least one active session, which is associated with a client that is allowed to receive push notifications.
With introduction of the previously mentioned capability, listeners can be started without the need for an existent session right on the start of an Open-Xchange Middleware node. In addition those permanent listeners are spread approximately even over capable cluster members as - dependent on the underlying implementation - a listener representation may open/hold resources (socket connections) in order to receive notifications about new message deliveries.
To prepare a certain Open-Xchange Middleware node to spawn permanent push listeners the following properties need to be configured in file '/opt/open-xchange/etc/mail-push.properties':
* com.openexchange.push.allowPermanentPush
This is the general switch to enable/disable support for permanent listeners on a node. Thus needs to be set to "true"
* com.openexchange.push.allowedClient
Specify the comma-separated list of clients which are allowed to receive notifications about new mails, “open-xchange-mailapp” should be added here if you plan to use it in combination with the new mobile-push feature.
* com.openexchange.push.credstorage.enabled
As permanent listeners are required to run without an active session, the credential storage can be used to store user credentials in installations that do not support a master authentication to the mail storage Hence, if the property "com.openexchange.mail.passwordSource" (mail.properties) is not set to "global" this property is required to be set to "true"
* com.openexchange.push.credstorage.passcrypt
This property is required if "com.openexchange.push.credstorage.enabled" is set to "true". It does specify the passphrase to use to symmetrically encrypt the stored credentials. The passphrase is required to be equal on each cluster member.
* com.openexchange.push.credstorage.rdb
Once the credential storage is enabled, Open-Xchange offers two ways of storing the user-associated login/password combination. In cluster memory (default) or persisted to database. While the first way ensures that no user credentials are persisted nowhere in the Open-Xchange installation, it has the big disadvantage the stored credentials are gone once the last cluster members gets shut-down. Therefore there is also the possibility to store the credentials inside the database. Of course, no matter where the credentials are stored, they are encrypted using the value from com.openexchange.push.credstorage.passcrypt" property
With setting the properties above the configuration on the Open-Xchange Middleware node is prepared to spawn permanent listeners.
Now an appropriate push bundle/package needs to be installed that supports spawning permanent listeners. Currently Open-Xchange ships with three implementations:
* open-xchange-push-dovecot
* open-xchange-push-imapidle (Not recommended, therefore disabled for IMAP-IDLE by default.
com.openexchange.push.imapidle.supportsPermanentListeners=false)
* open-xchange-push-mailnotify
Putting all together the following execution flow is taken to decide whether permanent listeners are spawned or not:

Revision as of 14:00, 25 August 2015

Pre-Information - OX Mail

OX Mail is a native mobile phone app built specifically for smartphone users who already have a valid OX App Suite account. The app is designed to let users access their OX App Suite email environment directly from a smartphone native client.

OX Mail enables users to synchronize mails between a variety of smartphone devices and OX App Suite. OX Mail consists of two elements: The OX Mail component that is built into OX App Suite and the native OX Mail app.

The OX Mail app has been designed specifically for ease-of-use and is available for both iOS and Android.

Please Note: The OX Mail app will be available in September. With this app Open-Xchange has also created a new branding concept for the customers and partners. More information can be found in the chapter Integrated Branding/Customization Concept for Partners and Customers

Requirements

Server-side Installation and Configuration

With OX Mail, OX App Suite supports server based PUSH functionality. One of the main requirements for push functionality is the use of the Dovecot mail backend. In addition the following conditions should be met:

  • Dovecot Customers with less than 100,000 users: Customers can use the special PUSH plugin without any additional costs. The plugin will be provided via the Open-Xchange software repository for customers with a valid Open-Xchange App Suite license.
  • Dovecot Pro Customers with more than a 100,000 users: PUSH plugin use is covered under this license without incurring additional costs.
  • If you are not using the Dovecot Push Plugin your mail backend has to actively notify the Open-Xchange middleware servers of new emails. This might require the creation of an additional OX middleware plugin to receive those notifications.

For further details please contact your assigned pre-sales / prof. services contact.

Requirement System / Platform / User Interface / Server Capability
   
OX App Suite OX App Suite v7.6.2 (latest patch version 2569 W27) and push certificates from restricted mail repository.
OX Mail (App) for iOS Apple iOS 7, Apple iOS 8 (tablet support in a later version)
OX Mail (App) for Android Smartphone on Android 4.2 or later (tablet support in a later version)
Server Capability Ensure that all user who should get access to the Mail App have the capability com.openexchange.capability.mobile_mail_app

Key Benefits

  • Supports email PUSH notification – emails show up immediately on the device
  • Quick and easy to set up with the start-up wizard
  • Intuitive, simple to use, design
  • Familiar smartphone experience
  • Available for both iOS and Android – download app from App Store for free
  • Low support requirements

A more detailed overview of OX Mail, can be found at: http://software.open-xchange.com/products/mail/doc/OX_Mail_Product_Guide.pdf

Integrated Branding/Customization Concept for Partners and Customers

With OX Mail it is also possible for customers and partners to add branding elements to the app. During the installation of the app a user is presented with a list of preconfigured providers. When a provider is selected the app is automatically setup and branded for that provider.

For both design reasons, as well as app store restrictions, branding in this context means:

  • The app design is “Super Flat”. This means there are not many elements that can be, or need to be, styled in order to match a particular brand.
  • The app does not contain or use any logos of any sort.
  • At install time the app uses a startup wizard in combination with a hosted configuration service. The wizard gives the end user the option to select a provider from a list. When this is done the app will retrieve the branding information from the configuration service and changes its theme accordingly.

If you would like to try out the OX Mail app or participate in our launch partner program please contact your Open-Xchange Sales rep.

In order to participate you will need to provide specific information such as:

  • Confirmation that you are running OX App Suite 7.6.2 including the latest patch.
  • A full URL where your OX App Suite service can be reached by a web client.
  • Two test accounts on your OX App Suite service, where we can verify that the OX App Suite system works as expected.
  • A “logo” and “name” of your service. This information will be used in the app itself.
  • Optional: A preferred color (CI color) that Open-Xchange will use for the app if a user chooses their service from the provider list.

Pricing & Availability

OX Mail will be available in August 2015.

This email app is available for both iOS and Android and can be downloaded for free from the corresponding App Stores. Availability will be confirmed by Open-Xchange via the usual communication channels.

Please note: The exact date when the clients become available depends on the approval process of the respective app stores.

The Open-Xchange Middleware components can be downloaded from the respective download repositories as normal.

Please contact Open-Xchange Sales for further information and pricing details.

Enabling OX Mail for Users

OX Mail is enabled for all users that have the capability com.openexchange.capability.mobile_mail_app

More details about capabilities can be found at AppSuite:Capabilities. Furthermore, this capability can be defined in a more granular way using the Config Cascade as described at ConfigCascade.

IMPORTANT: By default, the capability for the OX Mail app is set to false for all users. It can be changed by editing the corresponding capability in the "permissions.properties" config file, or if you need a more fine grained selection of enabled users, you can use the well known provisioning tools / config cascade.

Installation of the Clients

The OX Mail will be available via the different App Stores for iOS and Android by August 2015

OX Mail Server-side Installation and Configuration

This chapter describes how the backend components of OX Mail are installed and configured on the server.

Available packages

OX Mail is available with the following backend packages:

  • open-xchange-mail - The main server components for OX Mail
  • open-xchange-mobile-push-restricted - Restricted components, including prerequisites for cloud-based push notifications

Installation on the server varies depending on the underlying distribution, details are available in the following chapters.

Redhat Enterprise Linux 6 or CentOS 6

If not already done, add the following repositories to your Open-Xchange yum configuration:

 [open-xchange-backend]
name=Open-Xchange-backend
baseurl=https://software.open-xchange.com/products/appsuite/stable/backend/RHEL6/
gpgkey=https://software.open-xchange.com/oxbuildkey.pub
enabled=1
gpgcheck=1
metadata_expire=0m

and run

$ yum update
$ yum install open-xchange-mail open-xchange-mobile-push-restricted

Debian GNU/Linux 6.0

If not already done, add the following repositories to your Open-Xchange apt configuration:

deb https://software.open-xchange.com/products/appsuite/stable/backend/DebianSqueeze /
}

and run

$ apt-get update
$ apt-get install open-xchange-mail open-xchange-mobile-push-restricted

Debian GNU/Linux 7.0

If not already done, add the following repositories to your Open-Xchange apt configuration:

deb https://software.open-xchange.com/products/appsuite/stable/backend/DebianWheezy /

and run

$ apt-get update
$ apt-get install open-xchange-mail open-xchange-mobile-push-restricted

SUSE Linux Enterprise Server 11

Add the package repository using zypper if not already present:

$ zypper ar https://software.open-xchange.com/products/appsuite/stable/backend/SLES11 backend

and run

$ zypper ref
$ zypper in open-xchange-mail open-xchange-mobile-push-restricted


Setup Description for Mobile Push

Setup of the Open-Xchange Node

The existing push framework of the Open-Xchange Middleware has been extended by the capability to spawn "permanent" listeners for incoming new message deliveries. Up to that point the life cycle for a listener was bound to at least one active session, which is associated with a client that is allowed to receive push notifications.

With introduction of the previously mentioned capability, listeners can be started without the need for an existent session right on the start of an Open-Xchange Middleware node. In addition those permanent listeners are spread approximately even over capable cluster members as - dependent on the underlying implementation - a listener representation may open/hold resources (socket connections) in order to receive notifications about new message deliveries.

To prepare a certain Open-Xchange Middleware node to spawn permanent push listeners the following properties need to be configured in file '/opt/open-xchange/etc/mail-push.properties':

  • com.openexchange.push.allowPermanentPush

This is the general switch to enable/disable support for permanent listeners on a node. Thus needs to be set to "true"

  • com.openexchange.push.allowedClient

Specify the comma-separated list of clients which are allowed to receive notifications about new mails, “open-xchange-mailapp” should be added here if you plan to use it in combination with the new mobile-push feature.

  • com.openexchange.push.credstorage.enabled

As permanent listeners are required to run without an active session, the credential storage can be used to store user credentials in installations that do not support a master authentication to the mail storage Hence, if the property "com.openexchange.mail.passwordSource" (mail.properties) is not set to "global" this property is required to be set to "true"

  • com.openexchange.push.credstorage.passcrypt

This property is required if "com.openexchange.push.credstorage.enabled" is set to "true". It does specify the passphrase to use to symmetrically encrypt the stored credentials. The passphrase is required to be equal on each cluster member.

  • com.openexchange.push.credstorage.rdb

Once the credential storage is enabled, Open-Xchange offers two ways of storing the user-associated login/password combination. In cluster memory (default) or persisted to database. While the first way ensures that no user credentials are persisted nowhere in the Open-Xchange installation, it has the big disadvantage the stored credentials are gone once the last cluster members gets shut-down. Therefore there is also the possibility to store the credentials inside the database. Of course, no matter where the credentials are stored, they are encrypted using the value from com.openexchange.push.credstorage.passcrypt" property

With setting the properties above the configuration on the Open-Xchange Middleware node is prepared to spawn permanent listeners.

Now an appropriate push bundle/package needs to be installed that supports spawning permanent listeners. Currently Open-Xchange ships with three implementations:

  • open-xchange-push-dovecot
  • open-xchange-push-imapidle (Not recommended, therefore disabled for IMAP-IDLE by default.

com.openexchange.push.imapidle.supportsPermanentListeners=false)

  • open-xchange-push-mailnotify

Putting all together the following execution flow is taken to decide whether permanent listeners are spawned or not: