Scalix ActiveSync 1.0 - Release and Installation Notes

Document Version $Rev: 433 $

Release Date: 2009-06-01  

Table of Contents

Introduction

Thank you for downloading Scalix ActiveSync 1.0.

Scalix ActiveSync is a server-side wireless server implementation of the Microsoft Exchange 2003/2007 ActiveSync "Over-the-Air" (EAS) protocol specification licensed from Microsoft. The first release, Scalix ActiveSync 1.0, provides for push email, wireless calendar and contact synchronization. Other EAS functionality, such as device management, will be supported in the future.

No Scalix Software is required on the user's mobile device. Many devices already ship with a built-in ActiveSync client; for others it is available as an additional, no-cost install from the device vendor.

The Scalix ActiveSync solution utilizes a direct data channel between the mobile device and the Scalix ActiveSync-enabled server. No intermediary hosts are required. Scalix ActiveSync works over any data network, including GSM, GPRS, EDGE, UMTS, CDMA as well as LAN or Wireless Ethernet networks. Only a basic data plan is needed from the carrier. Communications employ strong SSL cryptography, so security and data privacy is assured.

Licensing

A per-user license is required to use Scalix ActiveSync. This is an optional add-on to a Scalix Server and Mailbox license key. Any Scalix Server can be activated for a number of named ActiveSync users. Once this is done, mailboxes on this server can be flagged to be ActiveSync-enabled. The ActiveSync server will check for this flag to be set and an available license when establishing the connection. The flag can be removed and the ActiveSync entitlement re-allocated to another user on the same server at any time.

Supported Setups and System Requirements

Scalix ActiveSync supports different deployment models:

Note: For configurations where a single Scalix ActiveSync server provides support for users on multiple Scalix servers, these servers must be connected in a multi-server setup using directory synchronization (DIRSYNC) and Scalix-to-Scalix routing using the "Sendmail Interface". This setup requires a Scalix Enterprise Edition license to be installed on the Scalix servers. A setup, in which a single Scalix ActiveSync server connects to multiple independent Scalix servers running Scalix Small Business edition is not supported.

The following needs to be true for the Scalix environment for running ActiveSync:

Supported OS platforms for Scalix ActiveSync 1.0:
Note: Scalix ActiveSync 1.0 can be installed on Fedora 9 and OpenSuSE 11.0 for testing and evaluation purposes. These platforms are not supported for production use. Red Hat Enterprise Linux 4, CentOS 4 and SuSE Linux Enterprise Server 9 remain supported for the Scalix server, however, Scalix ActiveSync 1.0 cannot be installed on these platforms as it requires Apache 2.2, which is not available for these platforms. If you run Scalix server on one of these setups, you will have to use a separate, dedicated Scalix ActiveSync server running on of the supported OSs.

For a dedicated server, Scalix ActiveSync 1.0 must have
Please note that the ActiveSync protocol uses long-lived http connections to provide push-email services, so any kind of intermediary system using proxy or NAT technology should be avoided, or must be enabled to support this.

Note: It is supported to run Scalix ActiveSync in a virtual machine.

When installing Scalix ActiveSync on a Scalix server or Scalix Web Access (SWA) frontend server, an extra 512 MB of RAM and 5 GB of diskspace should be available for Scalix ActiveSync.

Supported Devices

Scalix ActiveSync 1.0 supports versions 2.5 and 12.0 of the Microsoft Exchange ActiveSync protocol. It has been tested and is certified to work with the following devices:

*) Requires Apple iPhone/iPod Touch Software 2.0 or later

Other devices that support ActiveSync may also work but haven't been tested in full, e.g.:

**) Need to have the Microsoft Feature Pack installed and will not support push email.

Supported Functionality

Scalix ActiveSync 1.0 supports the following aspects of the Exchange Active Sync (EAS) V2.5, V12 and V12.1 protocol versions:

Note: Apple iPhone 2.x and 3.x Beta versions support V2.5 of the EAS protocol. For this reason, HTML mails are not supported with iPhone.

The following EAS features are not supported in Scalix ActiveSync 1.0 and will be part of a later release:

Installation

For the purpose of these installation instructions, a dedicated server setup is used. The example uses the following hostnames:

Install Scalix ActiveSync

Transfer the Scalix ActiveSync binary to the destination machine (activesync.company.com). Login to the ActiveSync system as root and execute the installer:

$ bash ./scalix-activesync-1.0.0-GA-enterprise-linux-intel.bin

When prompted read and accept the license agreement.

The installer will now verify and extract the Archive Content:

Verifying Archive Contents...

Filesize: 58193630 - OK

SHA1 Checksum: 7db37120c9e07782b67b1dea501dd2aa4780e13f - OK

Extracting and unpacking file scalix-activesync-1.0.0-GA-enterprise-linux-intel.tgz

Archive extraction complete. Press <Return> to see the README. -->   
To install ActiveSync, either select to start installation automatically or
start the installation manually by executing the following commands:

   cd scalix-activesync-1.0.0-GA
  ./scalix-installer

After reading the README press <Return> to continue installation.

Do you want to run the package that was unpacked automatically? (yes/no) [yes] 

Scalix Installer - extracting archive, please wait...
Scalix Installer - starting version 11.4.4.2569...
Scalix Installer - using Python 2.4.3 (/usr/bin/python).
Scalix Installer - audit log file is /var/log/scalix-installer-20080710.log

The installer will gather some system information and prompt you to choose from:

Please choose an action from the list:
[1] Install all Scalix components (typical)
[2] Install one or more Scalix components (custom)
-> Please enter your choice [1]:

Choose 1 to perform a typical installation. An overview of packages to install will be displayed. Confirm with yes to continue the installation:

=== Packages Installation ===

Searching for latest Scalix packages...   

Install the following components:
  * Scalix DB
    (version 11.4.4.2237-1)
  * Scalix Apache/Tomcat Connector
    (version 11.4.4.926-1.sles10 [1.sles10])
  * Scalix Tomcat
    (version 5.5.27-940)
  * Scalix Messaging Services
    (version 11.4.4.2281-1)
  * Scalix ActiveSync
    (version 1.0.0.253-1)

-> Do you want to continue installing the packages? (yes/no) [yes]

Please note that the actual version numbers displayed here can be different.

The installer will perform some sanity checks. In case of an error you will get a detailed description of encountered problems. You will need to fix these errors before continuing the installation. In case there where not errors detect you can press <Return> to begin the installation:

Performing system check...

* Environment check... OK
* Filesystem check... OK
* Network check... OK
* Dependency check... OK
* Running services check... OK
* Community license check... OK

-> Press Enter to begin installation:

After the installation finishes a couple of configuration questions must be answered:

Please wait while Scalix components are installed...    
Checking old Tomcat installations...   
Installing packages...   
Installing Scalix DB...   
Installing Scalix Apache/Tomcat Connector...   
Installing Scalix Tomcat...   
Installing Scalix Messaging Services...   
Installing Scalix ActiveSync...   
Done.

=== Java Runtime Configuration ===

JRE version 1.5.0_13-fcs already installed, skipping.

=== PostgreSQL Configuration ===

-> Enter database password:

Choose a password to be used and reenter it when prompted.

-> Confirm password: 
Configuring PostgreSQL...   

Now enter the address of the Scalix backend server that hosts the messagestore and provides SMTP. In this example it is scalix.company.com. If you altered your LDAP setup on the backend machine you will also need to enter the changed port:

=== Messaging Services ===

-> Scalix Server hostname (IMAP) [activesync.company.com]: scalix.company.com

-> SMTP server hostname [activesync.company.com]: scalix.company.com

-> Enter LDAP port number: [389]: 389

After specifying the above parameters the installer will finish the installation and start all needed services:

Configuring Web applications...    
Cleaning up Tomcat......   
Configuring Tomcat...   
Configuring Scalix ActiveSync...   
Configuring Scalix Messaging Services...   
Configuring Tomcat service...   
Cleaning up Apache/Tomcat JK configuration......   
Configuring Apache/Tomcat JK connector...   
Restarting Scalix DB...   
Starting Tomcat...   
Installation finished.
Scalix Installer - cleaning up...
Scalix Installer - done.

Re-/uninstalling Scalix ActiveSync

If for any reason you want to re- or uninstall Scalix ActiveSync simply start the installer again.

Please note, in order to reinstall Scalix ActiveSync you must uninstall and delete the cache.

./scalix-installer --cli

Please choose an action from the list:
[1] Install/Upgrade one or more Scalix components (custom)
[2] Reconfigure Scalix components
[3] Uninstall Scalix components
-> Please enter your choice:

Enter 3

Please choose one or more components to uninstall:
[1] Scalix DB
(version 11.4.3.2237-1)
[2] Scalix Apache/Tomcat Connector
(version 11.99.0.926-1.rhel5 [1.rhel5])
[3] Scalix Tomcat
(version 5.5.27-940)
[4] Scalix Messaging Services
(version 11.4.3.2281-1)
[5] Scalix ActiveSync
(version 1.0.0.252-1)
-> Please enter comma-separated list of numbers:

Enter 1,2,3,4,5

-> Are you sure you want to uninstall the selected components? (yes/no) [no] 

Enter yes

-> After uninstalling Scalix DB do you want to remove the cache data? (yes/no) [no] 

Enter yes

-> Press Enter to begin uninstallation: 
 
Stopping Tomcat...
Please wait while Scalix components are uninstalled...
Discovering instances...
Reconfiguring Web Apps...
Stopping PostgreSQL...
Uninstalling Scalix ActiveSync...
Uninstalling Scalix Messaging Services...
Uninstalling Scalix Tomcat...
Uninstalling Scalix Apache/Tomcat Connector...
Uninstalling Scalix DB...
Removing Web Apps configuration...
Cleaning up Tomcat...
Cleaning up Apache/Tomcat JK connector...
Cleaning up orphaned files...
All selected Scalix components have now been uninstalled.
Uninstallation finished.
Scalix Installer - cleaning up...
Scalix Installer - done.

Checking the License Key

On the Scalix server to which you connect your ActiveSync setup, check whether the license contains ActiveSync entitlements. If you don't find the ActiveSync option in your license key, please contact your Scalix reseller or sales representative to obtain a license key with ActiveSync enabled. Please see your Scalix server documentation for information on how to install a new license key.

Method 1 - Command Line

On the Scalix server command line, run the sxlicense command to check whether an ActiveSync option is availble, e.g.
scalixmail:~ # sxlicense
Scalix License Status

License Type: Permanent
Key Type: Scalix Standard
System Class: Multi-Server
Domain: scalix.com
ID: 42
LVID: 2010-12-31
Premium Users: 1000
Standard Users: 5000
Features: TNEF WIRELESS MIGRATION HIGH_AVAILABILITY MULTI_INSTANCE MULTI_SERVER RECOVERY_FOLDER ARCHIVER
Option: Name=ActiveSync;Expiry=2010-12-31;EnabledUsers=1000
License File: /var/opt/scalix/sl/s/LicenseKeys/permanent.lic
License Fingerprint (MD5): 28:4E:FD:FC:0D:5D:E4:9E:58:14:33:59:EA:33:CE:11
Note the "Option" line for ActiveSync. The "Expiry" will indicate until when the option is valid, the "EnabledUsers" field will contain the maximum number of users that can be enabled for ActiveSync.

You can also check current usage with the sxlicense -u command, e.g.
scalixmail:~ # sxlicense -u
Scalix License Usage

Local Usage

Premium Users: 56
Standard Users: 3
Can ActiveSync: 54

Totals
Premium Users: 381
Standard Users: 67
Can ActiveSync: 54
This indicates the number of users that are already enabled for ActiveSync.

Method 2 - SAC

  1. Login to SAC as a Full administrator
  2. Click on the "Settings" icon in the toolbar
  3. Select your Scalix server from the list of mail servers in the tree view
  4. Click on the "License" tab in the right pane
The "License Details" will show your currently installed license key. This will contain the "Option" line for ActiveSync, similar to the "sxlicense" output referenced above.

Note: In Scalix 11.4.4, SAC does not show the number of currently enabled users. This will be added in a later release.

Note: In a Multi-Server Enterprise Edition environment, the same, ActiveSync-enabled license key must be installed on all servers. Otherwise, SAC functionality for enabling/disabling ActiveSync for users will not work (Bug 20065)

Enabling a User for ActiveSync

A user must be enabled on the Scalix server before he can use ActiveSync. For this to work, a license key with available ActiveSync entitlements must exist on the system.

Method 1 - Command Line

1. To see whether a user is enabled for ActiveSync, use the omshowu command, e.g.
scalixmail:~ # omshowu -n "Joe User"
Authentication ID: joeuser
Globally Unique ID: 19b10000daaa2864-9.0.61.271
User Name : Joe User /CN=Joe User
MailNode : scalix1
Internet Address : "Joe User" <Joe.User@scalix.com>
System Login : 60588
Password : set
Admin Capabilities : NO
Mailbox Admin Capabilities : NO
Language : C
Mail Account: Unlocked
Last Signon : 04.24.09 16:44:19
Receipt of mail : ENABLED
Service level : 0
Excluded from Tidyall : NO
Recovery Folder visible : NO
User Class : Full
ActiveSync : YES
SIS URL : sxidx://scalix1.scalix.com/09b10000daaa2864-9.0.61.271
Note: The "ActiveSync: YES" line will only show up if the user is setup with an ActiveSync entitlement; otherwise, no information about ActiveSync will be shown.


2. To add the ActiveSync entitlement to a user, use the ommodu command, e.g.
scalixmail:~ # ommodu -n "Joe User" --activesync yes
ommodu: The user was modified successfully
Note: You can only add ActiveSync entitlements to the number of users you are licensed for.


3. To remove the ActiveSync entitlement from a user, use the ommodu command, e.g.
scalixmail:~ # ommodu -n "Joe User" --activesync no
ommodu: The user was modified successfully
Note: The ActiveSync entitlement will be returned to the pool and can be reallocated to another user or the user can be reenabled to use ActiveSync at a later time.

Method 2 - SAC

  1. Login to SAC as a Full, Mailnode or User Administrator
  2. Click on the "Users" icon in the toolbar
  3. Select the user from the list of users in the tree view
  4. Click on the "Mobile" tab in the right pane
The checkbox labelled "Enable ActiveSync" will indicate the users current status and can be used to add or remove the ActiveSync entitlement to the user.

Client Setup

The following section contains a Quick Configuration Guide for several Client devices. Please note that only the mandatory settings are mentioned. For a complete documentation of available options please refer to the clients documentation.

All examples are based on the following setup:

Please make sure to use the appropriate values when setting up your device.

Windows Mobile

Please note that Windows Mobile devices need an SSL enabled Scalix ActiveSync server as they refuse to use plain HTTP. If you are using a self signed certificate you will need to install it on your device by downloading the certificate to your computer, transferring it to the device and open it. The procedure can vary slightly based on the Windows Mobile version and device make and model used.

Note: Auto-detection of the server settings would work if DNS and a specific http server are setup to provide this information to the device; please see Microsoft Exchange enterprise deployment documentation for details. This is independent of the actual ActiveSync server type used.

Apple iPhone

Nokia E61i (Symbian)

To use ActiveSync on your Symbian device you will first need to install the Mail for Exchange application. Please note that you can only use one Push Mail provider at any given time, e.g. Blackberry Sync or Mail for Exchange. You can download Mail for Exchange from your device manufacturer's website. For Nokia devices you will find it here:

http://www.businesssoftware.nokia.com/mail_for_exchange_downloads.php

After finishing the installation create a new Mail for Exchange profile:

After creating the profile you will see an status overview similar to this:

Sync mode
Off-peak: Every 30 minutes

Current status
Idle

Last sync
12/08/2008 17:58 Complete

Content synced
E-mail

As you can see above the device is in Off-peak mode and will sync only every 30 minutes. You can force a sync either via Options/Synchronize or by selecting the "Current status" line.

Additionally you can access log data by activating the "Last sync" line.

Choose an Access Point that enables you to reach your Scalix ActiveSync machine. Depending in your setup this may either be a WIFI or 3G/GPRS.

Support

Scalix ActiveSync is covered by commercial Scalix Support Entitlements. Please see http://www.scalix.com/support for details. The page also contains a link to the Support Case request form.

If you make use of the above link to report an issue, please provide us with as much information as possible, e.g.:

Known issues

Please note that not all devices will behave in the same way and some will not support all features. For example, Symbian-based devices will not synchronize a mailbox's subfolders but only emails located in the INBOX, while Windows Mobile 6.1 devices will synchronize. The specific device behavior is controlled by the device vendor. Please refer to the vendor's documentation or technical support to understand limitations of particular devices.

Bug

Issue

Solution/Workaround

19124

Contact notes gets lost on editing the contact on the device

There is no workaround at this time. When changing a contact that has Notes associated with it on the device, the contents of the Notes field can be lost. This will be resolved in the next release of Scalix ActiveSync

19136

iPhone freezes after attempting to move a message to a previously deleted folder

The user should wait until the deletion of the folder has propagated to the device before moving any messages. A future version of Scalix ActiveSync will handle this scenario more gracefully

19309

iPhone: Messages replied or forwarded from device do not show up as such in other clients.

A future version of Scalix ActiveSync and/or iPhone software will resolve the issue

19324

iPhone: Cannot delete message from mailbox that are deleted from server.


19560

Contact and Calendar body elements indicate they are truncated even when they are not

With Notes in calendar or contact entries, the device can sometimes indicate that there is more data available while the note is already displayed in full. The error can be safely ignored

19562

Changing message sync date range does not take effect until new information is found

Changes to the date range only take effect when the content of the mailbox changes, i.e. when a new item arrives or one is removed. It works fine then. Future versions of Scalix ActiveSync will eventually propagate the results of the configuration change forcefully

19658

Symbian: Server should create a Meeting Response if the device fails to do so.

There is no workaround. Symbian devices do not actively send meeting invite responses when accepting the meeting, unlike other ActiveSync-enabled devices. A future release of Scalix ActiveSync will handle this on the server-side

19665

iPhone: User gets duplicate Calendars items when accepting a meeting request

The iPhone's ActiveSync software sometimes sends multiple copies of the Acceptance. Scalix ActiveSync 1.0 does not try to remove those duplicates. The reason for the iPhone's behavior is unknown. A future version of Scalix ActiveSync will provide a workaround

19701

Fetching from Sent Items folder can take a very long time with certain data elements and time out

In certain situations where Sent Items has a large number of messages with RTF content, such as those messages created by Outlook, it may take a long time to generate the MIME version of the messages as required by Scalix ActiveSync. Wait for the operation to finish or retry if it times out, it will eventually succeed. Future versions of Scalix Server will try to optimize for this situation

19724

iPhone fetches and shows 'all' recent messages instead of limited number as setup on the device.

iPhone ignores the setting that controls the maximum number of messages to be downloaded to the device. This is a bug in iPhone software, tracked as Apple Bug 6861032. Scalix does not have any control over how iPhone implements this setting

19729

Windows Mobile: Inline images sent from Thunderbird won't display

The handling of inline images will be improved in a future release of Scalix ActiveSync

19731

iPhone: On accepting a meeting request, the organizer receives 2 copies of response.

In some situations, iPhone will send two copies of the acceptance message. The server will de-duplicate those responses in a future release

19796

Windows Mobile: Device displays wrong "when" when organizer cancels meeting

The user should ignore the time provided in the cancellation message and refer to the original meeting instead. This will be fixed in a future release of Scalix ActiveSync

19833

Meeting accepted on device is not labelled as such in SWA

Sometimes meeting acceptances cannot be correlated with the meeting. This behavior will be improved in a future release of Scalix ActiveSync

19883

"SocketException: Broken pipe Warn messages" in the logs

This is an indication of common timeouts between Tomcat and Apache. The message can safely be ignored and is not indicative of any specific issue. A future version of Scalix ActiveSync will behave differently and the messages will stop occurring

19891

Windows Mobile: Appointments in device do not show 'optional' attendees

This will be fixed in a future release of Scalix ActiveSync

19894

duplicate appointment when organizer invites himself as attendee

One should not invite oneself to a meeting as an attendee

19945

Windows Mobile/iPhone: Information persists even though fields in contact have been removed

A future version of the Scalix ActiveSync protocol will support additional ActiveSync protocol features that allow the device to actually indicate that a field has been removed

19962

iPhone: Creating contact with phone number only causes errors

Please make sure that all contacts have the name fields filled in. Nameless contacts on the iPhone will trigger this error

19974

The invitation email remained in Inbox after rejecting

The user needs to manually remove the invite from the inbox after declining

19982

When user is not enabled for ActiveSync, get unclear error message in the logs

The user should be enabled for ActiveSync use in SAC or using the ommodu command. A license entitlement must be present for this to work. A future version of Scalix ActiveSync will provide the administrator with a more specific error message

19988

Windows Mobile 6: Cannot remove single attendee from appointment

This will be fixed in a future release of ActiveSync

20001

iPhone: Email with only a text/html body part cannot be displayed.

The message will show up as empty and/or the device will indicate that the message could not be downloaded from the server. This behavior will be improved in a future version of Scalix ActiveSync

20018

iphone updating/creating Contact with empty notes field for contact creates improper RTF body content

This may display RTF formatting commands, e.g. "par" or similar in the "Notes" field, however that content does not impact or overwrite any real content and only shows up in an otherwise empty field, so it can safely be ignored. The issue will be fixed in a future release of Scalix ActiveSync